diff --git a/Tiobon.Core.Api/Controllers/Ghra_GradeController.cs b/Tiobon.Core.Api/Controllers/Ghra_GradeController.cs index 2293c02b..0f042e3d 100644 --- a/Tiobon.Core.Api/Controllers/Ghra_GradeController.cs +++ b/Tiobon.Core.Api/Controllers/Ghra_GradeController.cs @@ -29,10 +29,10 @@ /// 条件 /// [HttpGet] - public async Task>> Get([FromFilter] QueryFilter filter) + public async Task>> Get([FromFilter] QueryFilter filter) { var response = await _ghra_GradeServices.QueryFilterPage(filter); - return new MessageModel>() { msg = "获取成功", success = true, response = response }; + return new MessageModel>() { msg = "获取成功", success = true, response = response }; } /// diff --git a/Tiobon.Core.Api/Tiobon.Core.Model.xml b/Tiobon.Core.Api/Tiobon.Core.Model.xml index fda06293..3432ff8a 100644 --- a/Tiobon.Core.Api/Tiobon.Core.Model.xml +++ b/Tiobon.Core.Api/Tiobon.Core.Model.xml @@ -104,84 +104,14 @@ 所有 - + Ghra_Grade - - - Reverse6 - - - - - MKey - - - - - Reverse9 - - - - - Reverse3 - - - - - Reverse4 - - - - - ReverseI1 - - - - - DataBelongID - - - + - Reverse7 - - - - - GradeNo - - - - - Reverse1 - - - - - Reverse2 - - - - - Reverse5 - - - - - GradeName - - - - - Reverse8 - - - - - ReverseI2 + Ghra_Grade @@ -430,6 +360,86 @@ 异常 + + + Ghra_Grade + + + + + Reverse6 + + + + + MKey + + + + + Reverse9 + + + + + Reverse3 + + + + + Reverse4 + + + + + ReverseI1 + + + + + DataBelongID + + + + + Reverse7 + + + + + GradeNo + + + + + Reverse1 + + + + + Reverse2 + + + + + Reverse5 + + + + + GradeName + + + + + Reverse8 + + + + + ReverseI2 + + 博客ID @@ -1779,6 +1789,11 @@ 修改时间 + + + Ghra_Grade + + 以下model 来自ids4项目,多库模式,为了调取ids4数据 diff --git a/Tiobon.Core.Common/Seed/FrameSeed.cs b/Tiobon.Core.Common/Seed/FrameSeed.cs index acef9a72..91046aeb 100644 --- a/Tiobon.Core.Common/Seed/FrameSeed.cs +++ b/Tiobon.Core.Common/Seed/FrameSeed.cs @@ -168,10 +168,10 @@ namespace Tiobon.Core.Common.Seed /// 条件 /// [HttpGet] - public async Task>> Get([FromFilter] QueryFilter filter) + public async Task>> Get([FromFilter] QueryFilter filter) { var response = await _{ClassName}Services.QueryFilterPage(filter); - return new MessageModel>() { msg = ""获取成功"", success = true, response = response }; + return new MessageModel>() { msg = ""获取成功"", success = true, response = response }; } /// @@ -340,6 +340,7 @@ namespace " + strNameSpace + @" StringBuilder build = new StringBuilder(); var tableName = lstTableNames[0]; + var groupName = tableName.Split('_')[0]; string sql = @"SELECT A.name AS table_name, B.name AS column_name, D.data_type, @@ -484,12 +485,123 @@ namespace " + strNameSpace + @" #endregion - build.Append("}\r\n"); + build.Append(" }\r\n"); build.Append("}\r\n"); ls[tableName] = build.ToString(); - CreateFilesByClassStringList(ls, strPath, "{0}"); + CreateFilesByClassStringList(ls, strPath + @"\Models\" + groupName, "{0}"); + + + #region Insert + build = new StringBuilder(); + ls = new Dictionary(); + + build.Append("/* 代码由框架生成,任何更改都可能导致被代码生成器覆盖,可自行修改。\r\n"); + build.Append("* " + tableName + ".cs\r\n"); + build.Append("*\r\n"); + build.Append("*功 能: N / A\r\n"); + build.Append("* 类 名: " + tableName + "\r\n"); + build.Append("*\r\n"); + build.Append("* Ver 变更日期 负责人 变更内容\r\n"); + build.Append("* ───────────────────────────────────\r\n"); + build.Append("*V0.01 " + DateTime.Now.ToString() + " SimonHsiao 初版\r\n"); + build.Append("*\r\n"); + build.Append("* Copyright(c) " + DateTime.Now.Year + " Tiobon Corporation. All Rights Reserved.\r\n"); + build.Append("*┌──────────────────────────────────┐\r\n"); + build.Append("*│ 此技术信息为本公司机密信息,未经本公司书面同意禁止向第三方披露. │\r\n"); + build.Append("*│ 作者:SimonHsiao │\r\n"); + build.Append("*└──────────────────────────────────┘\r\n"); + build.Append("*/ \r\n"); + build.Append("\r\n"); + build.Append("namespace Tiobon.Core.Model.Models\r\n"); + build.Append("{\r\n"); + build.Append("\r\n"); + build.Append(" /// \r\n"); + build.Append(" /// " + tableName + "\r\n"); + build.Append(" /// \r\n"); + build.Append(" public class Insert" + tableName + "Input : " + tableName + "\r\n"); + build.Append(" {\r\n"); + + build.Append(" }\r\n"); + build.Append("}\r\n"); + + ls.Add(tableName + ".Dto.InsertInput", build.ToString()); + CreateFilesByClassStringList(ls, strPath + @"\Insert\" + groupName, "{0}"); + #endregion + + #region Edit + build = new StringBuilder(); + ls = new Dictionary(); + + build.Append("/* 代码由框架生成,任何更改都可能导致被代码生成器覆盖,可自行修改。\r\n"); + build.Append("* " + tableName + ".cs\r\n"); + build.Append("*\r\n"); + build.Append("*功 能: N / A\r\n"); + build.Append("* 类 名: " + tableName + "\r\n"); + build.Append("*\r\n"); + build.Append("* Ver 变更日期 负责人 变更内容\r\n"); + build.Append("* ───────────────────────────────────\r\n"); + build.Append("*V0.01 " + DateTime.Now.ToString() + " SimonHsiao 初版\r\n"); + build.Append("*\r\n"); + build.Append("* Copyright(c) " + DateTime.Now.Year + " Tiobon Corporation. All Rights Reserved.\r\n"); + build.Append("*┌──────────────────────────────────┐\r\n"); + build.Append("*│ 此技术信息为本公司机密信息,未经本公司书面同意禁止向第三方披露. │\r\n"); + build.Append("*│ 作者:SimonHsiao │\r\n"); + build.Append("*└──────────────────────────────────┘\r\n"); + build.Append("*/ \r\n"); + build.Append("\r\n"); + build.Append("namespace Tiobon.Core.Model.Models\r\n"); + build.Append("{\r\n"); + build.Append("\r\n"); + build.Append(" /// \r\n"); + build.Append(" /// " + tableName + "\r\n"); + build.Append(" /// \r\n"); + build.Append(" public class Edit" + tableName + "Input : " + tableName + "\r\n"); + build.Append(" {\r\n"); + + build.Append(" }\r\n"); + build.Append("}\r\n"); + + ls.Add(tableName + ".Dto.EditInput", build.ToString()); + CreateFilesByClassStringList(ls, strPath + @"\Edit\" + groupName, "{0}"); + #endregion + + #region View + build = new StringBuilder(); + ls = new Dictionary(); + + build.Append("/* 代码由框架生成,任何更改都可能导致被代码生成器覆盖,可自行修改。\r\n"); + build.Append("* " + tableName + ".cs\r\n"); + build.Append("*\r\n"); + build.Append("*功 能: N / A\r\n"); + build.Append("* 类 名: " + tableName + "\r\n"); + build.Append("*\r\n"); + build.Append("* Ver 变更日期 负责人 变更内容\r\n"); + build.Append("* ───────────────────────────────────\r\n"); + build.Append("*V0.01 " + DateTime.Now.ToString() + " SimonHsiao 初版\r\n"); + build.Append("*\r\n"); + build.Append("* Copyright(c) " + DateTime.Now.Year + " Tiobon Corporation. All Rights Reserved.\r\n"); + build.Append("*┌──────────────────────────────────┐\r\n"); + build.Append("*│ 此技术信息为本公司机密信息,未经本公司书面同意禁止向第三方披露. │\r\n"); + build.Append("*│ 作者:SimonHsiao │\r\n"); + build.Append("*└──────────────────────────────────┘\r\n"); + build.Append("*/ \r\n"); + build.Append("\r\n"); + build.Append("namespace Tiobon.Core.Model.Models\r\n"); + build.Append("{\r\n"); + build.Append("\r\n"); + build.Append(" /// \r\n"); + build.Append(" /// " + tableName + "\r\n"); + build.Append(" /// \r\n"); + build.Append(" public class " + tableName + "Dto : " + tableName + "\r\n"); + build.Append(" {\r\n"); + build.Append(" }\r\n"); + build.Append("}\r\n"); + + ls.Add(tableName + ".Dto.View", build.ToString()); + CreateFilesByClassStringList(ls, strPath + @"\View\" + groupName, "{0}"); + #endregion } #endregion @@ -595,7 +707,7 @@ namespace " + strNameSpace + @" /// /// I{ClassName}Services /// - public interface I{ClassName}Services :IBaseServices<{ClassName}>" + (string.IsNullOrEmpty(strInterface) ? "" : (" , " + strInterface)) + @" + public interface I{ClassName}Services :IBaseServices<{ClassName}, {ClassName}Dto, Insert{ClassName}Input, Edit{ClassName}Input>" + (string.IsNullOrEmpty(strInterface) ? "" : (" , " + strInterface)) + @" { } }") @@ -712,7 +824,7 @@ using Tiobon.Core.IRepository.Base; namespace " + strNameSpace + @" { - public class {ClassName}Services : BaseServices<{ClassName}>, I{ClassName}Services" + (string.IsNullOrEmpty(strInterface) ? "" : (" , " + strInterface)) + @" + public class {ClassName}Services : BaseServices<{ClassName}, {ClassName}Dto, Insert{ClassName}Input, Edit{ClassName}Input>, I{ClassName}Services" + (string.IsNullOrEmpty(strInterface) ? "" : (" , " + strInterface)) + @" { private readonly IBaseRepository<{ClassName}> _dal; public {ClassName}Services(IBaseRepository<{ClassName}> dal) diff --git a/Tiobon.Core.IServices/BASE/IBaseServices1.cs b/Tiobon.Core.IServices/BASE/IBaseServices1.cs new file mode 100644 index 00000000..19036d60 --- /dev/null +++ b/Tiobon.Core.IServices/BASE/IBaseServices1.cs @@ -0,0 +1,79 @@ +using System.Data; +using System.Linq.Expressions; +using SqlSugar; +using Tiobon.Core.Common; +using Tiobon.Core.Model; + +namespace Tiobon.Core.IServices.BASE +{ + /// + /// 增删改查接口 + /// + /// + /// + /// + /// + public interface IBaseServices where TEntity : class + { + ISqlSugarClient Db { get; } + + Task QueryById(object objId); + Task QueryById(object objId, bool blnUseCache = false); + Task> QueryByIDs(object[] lstIds); + + Task Add(TEntity model); + + Task> Add(List listEntity); + + Task DeleteById(object id); + + Task Delete(TEntity model); + + Task DeleteByIds(object[] ids); + + Task Update(TEntity model); + Task Update(List model); + Task Update(TEntity entity, string where); + + Task Update(object operateAnonymousObjects); + + Task Update(TEntity entity, List lstColumns = null, List lstIgnoreColumns = null, string where = ""); + + Task> Query(); + Task> Query(string where); + Task> Query(Expression> whereExpression); + Task> Query(Expression> whereExpression, string orderByFields); + Task> Query(Expression> expression); + Task> Query(Expression> expression, Expression> whereExpression, string orderByFields); + Task> Query(Expression> whereExpression, Expression> orderByExpression, bool isAsc = true); + Task> Query(string where, string orderByFields); + Task> QuerySql(string sql, SugarParameter[] parameters = null); + Task QueryTable(string sql, SugarParameter[] parameters = null); + + Task> Query(Expression> whereExpression, int top, string orderByFields); + Task> Query(string where, int top, string orderByFields); + + Task> Query( + Expression> whereExpression, int pageIndex, int pageSize, string orderByFields); + Task> Query(string where, int pageIndex, int pageSize, string orderByFields); + + + Task> QueryPage(Expression> whereExpression, int pageIndex = 1, int pageSize = 20, string orderByFields = null); + Task> QueryFilterPage([FromFilter] QueryFilter filter); + + Task> QueryMuch( + Expression> joinExpression, + Expression> selectExpression, + Expression> whereLambda = null) where T : class, new(); + Task> QueryPage(PaginationModel pagination); + + #region 分表 + Task QueryByIdSplit(object objId); + Task> AddSplit(TEntity entity); + Task DeleteSplit(TEntity entity, DateTime dateTime); + Task UpdateSplit(TEntity entity, DateTime dateTime); + Task> QueryPageSplit(Expression> whereExpression, DateTime beginTime, DateTime endTime, int pageIndex = 1, int pageSize = 20, string orderByFields = null); + #endregion + } + +} diff --git a/Tiobon.Core.IServices/IGhra_GradeServices.cs b/Tiobon.Core.IServices/IGhra_GradeServices.cs index d317996e..4a2a9fb8 100644 --- a/Tiobon.Core.IServices/IGhra_GradeServices.cs +++ b/Tiobon.Core.IServices/IGhra_GradeServices.cs @@ -6,7 +6,7 @@ namespace Tiobon.Core.IServices /// /// IGhra_GradeServices /// - public interface IGhra_GradeServices :IBaseServices + public interface IGhra_GradeServices :IBaseServices { } } \ No newline at end of file diff --git a/Tiobon.Core.Model/Edit/Ghra/Ghra_Grade.Dto.EditInput.cs b/Tiobon.Core.Model/Edit/Ghra/Ghra_Grade.Dto.EditInput.cs new file mode 100644 index 00000000..a533d5c5 --- /dev/null +++ b/Tiobon.Core.Model/Edit/Ghra/Ghra_Grade.Dto.EditInput.cs @@ -0,0 +1,27 @@ +/* 代码由框架生成,任何更改都可能导致被代码生成器覆盖,可自行修改。 +* Ghra_Grade.cs +* +*功 能: N / A +* 类 名: Ghra_Grade +* +* Ver 变更日期 负责人 变更内容 +* ─────────────────────────────────── +*V0.01 2024/4/12 18:49:06 SimonHsiao 初版 +* +* Copyright(c) 2024 Tiobon Corporation. All Rights Reserved. +*┌──────────────────────────────────┐ +*│ 此技术信息为本公司机密信息,未经本公司书面同意禁止向第三方披露. │ +*│ 作者:SimonHsiao │ +*└──────────────────────────────────┘ +*/ + +namespace Tiobon.Core.Model.Models +{ + + /// + /// Ghra_Grade + /// + public class EditGhra_GradeInput : Ghra_Grade + { + } +} diff --git a/Tiobon.Core.Model/Insert/Ghra/Ghra_Grade.Dto.InsertInput.cs b/Tiobon.Core.Model/Insert/Ghra/Ghra_Grade.Dto.InsertInput.cs new file mode 100644 index 00000000..6e2b86b1 --- /dev/null +++ b/Tiobon.Core.Model/Insert/Ghra/Ghra_Grade.Dto.InsertInput.cs @@ -0,0 +1,27 @@ +/* 代码由框架生成,任何更改都可能导致被代码生成器覆盖,可自行修改。 +* Ghra_Grade.cs +* +*功 能: N / A +* 类 名: Ghra_Grade +* +* Ver 变更日期 负责人 变更内容 +* ─────────────────────────────────── +*V0.01 2024/4/12 18:49:06 SimonHsiao 初版 +* +* Copyright(c) 2024 Tiobon Corporation. All Rights Reserved. +*┌──────────────────────────────────┐ +*│ 此技术信息为本公司机密信息,未经本公司书面同意禁止向第三方披露. │ +*│ 作者:SimonHsiao │ +*└──────────────────────────────────┘ +*/ + +namespace Tiobon.Core.Model.Models +{ + + /// + /// Ghra_Grade + /// + public class InsertGhra_GradeInput : Ghra_Grade + { + } +} diff --git a/Tiobon.Core.Model/Ghra_Grade.cs b/Tiobon.Core.Model/Models/Ghra/Ghra_Grade.cs similarity index 98% rename from Tiobon.Core.Model/Ghra_Grade.cs rename to Tiobon.Core.Model/Models/Ghra/Ghra_Grade.cs index 900592c9..78096628 100644 --- a/Tiobon.Core.Model/Ghra_Grade.cs +++ b/Tiobon.Core.Model/Models/Ghra/Ghra_Grade.cs @@ -6,7 +6,7 @@ * * Ver 变更日期 负责人 变更内容 * ─────────────────────────────────── -*V0.01 2024/4/12 17:02:53 SimonHsiao 初版 +*V0.01 2024/4/12 18:49:06 SimonHsiao 初版 * * Copyright(c) 2024 Tiobon Corporation. All Rights Reserved. *┌──────────────────────────────────┐ @@ -114,5 +114,5 @@ namespace Tiobon.Core.Model.Models /// ReverseI2 /// public int? ReverseI2 { get; set; } -} + } } diff --git a/Tiobon.Core.Model/View/Ghra/Ghra_Grade.Dto.View.cs b/Tiobon.Core.Model/View/Ghra/Ghra_Grade.Dto.View.cs new file mode 100644 index 00000000..7d9cf784 --- /dev/null +++ b/Tiobon.Core.Model/View/Ghra/Ghra_Grade.Dto.View.cs @@ -0,0 +1,27 @@ +/* 代码由框架生成,任何更改都可能导致被代码生成器覆盖,可自行修改。 +* Ghra_Grade.cs +* +*功 能: N / A +* 类 名: Ghra_Grade +* +* Ver 变更日期 负责人 变更内容 +* ─────────────────────────────────── +*V0.01 2024/4/12 18:49:06 SimonHsiao 初版 +* +* Copyright(c) 2024 Tiobon Corporation. All Rights Reserved. +*┌──────────────────────────────────┐ +*│ 此技术信息为本公司机密信息,未经本公司书面同意禁止向第三方披露. │ +*│ 作者:SimonHsiao │ +*└──────────────────────────────────┘ +*/ + +namespace Tiobon.Core.Model.Models +{ + + /// + /// Ghra_Grade + /// + public class Ghra_GradeDto : Ghra_Grade + { + } +} diff --git a/Tiobon.Core.Repository/BASE/IBaseRepository.cs b/Tiobon.Core.Repository/BASE/IBaseRepository.cs index f781ac71..0f672cf0 100644 --- a/Tiobon.Core.Repository/BASE/IBaseRepository.cs +++ b/Tiobon.Core.Repository/BASE/IBaseRepository.cs @@ -1,10 +1,7 @@ using Tiobon.Core.Model; using SqlSugar; -using System; -using System.Collections.Generic; using System.Data; using System.Linq.Expressions; -using System.Threading.Tasks; using Tiobon.Core.Common; namespace Tiobon.Core.IRepository.Base diff --git a/Tiobon.Core.Services/BASE/BaseServices1.cs b/Tiobon.Core.Services/BASE/BaseServices1.cs new file mode 100644 index 00000000..3a5232cf --- /dev/null +++ b/Tiobon.Core.Services/BASE/BaseServices1.cs @@ -0,0 +1,385 @@ +using System.Collections.Generic; +using System.Data; +using System.Linq.Expressions; +using AgileObjects.AgileMapper; +using SqlSugar; +using Tiobon.Core.Common; +using Tiobon.Core.Common.Helper; +using Tiobon.Core.Common.UserManager; +using Tiobon.Core.IRepository.Base; +using Tiobon.Core.IServices.BASE; +using Tiobon.Core.Model; + +namespace Tiobon.Core.Services.BASE +{ + /// + /// 增删改查基础服务 + /// + /// + /// + /// + /// + public class BaseServices : IBaseServices where TEntity : class, new() + { + public BaseServices(IBaseRepository BaseDal = null) + { + this.BaseDal = BaseDal; + } + + //public IBaseRepository baseDal = new BaseRepository(); + public IBaseRepository BaseDal { get; set; } //通过在子类的构造函数中注入,这里是基类,不用构造函数 + + public ISqlSugarClient Db => BaseDal.Db; + + public async Task QueryById(object objId) + { + return await BaseDal.QueryById(objId); + } + + /// + /// 根据ID查询一条数据 + /// + /// id(必须指定主键特性 [SugarColumn(IsPrimaryKey=true)]),如果是联合主键,请使用Where条件 + /// 是否使用缓存 + /// 数据实体 + public async Task QueryById(object objId, bool blnUseCache = false) + { + return await BaseDal.QueryById(objId, blnUseCache); + } + + /// + /// 根据ID查询数据 + /// + /// id列表(必须指定主键特性 [SugarColumn(IsPrimaryKey=true)]),如果是联合主键,请使用Where条件 + /// 数据实体列表 + public async Task> QueryByIDs(object[] lstIds) + { + return await BaseDal.QueryByIDs(lstIds); + } + + /// + /// 写入实体数据 + /// + /// 博文实体类 + /// + public async Task Add(TEntity entity) + { + var userId = UserContext.Current.User_Id; + return await BaseDal.Add(entity); + } + + /// + /// 批量插入实体(速度快) + /// + /// 实体集合 + /// 影响行数 + public async Task> Add(List listEntity) + { + return await BaseDal.Add(listEntity); + } + + /// + /// 更新实体数据 + /// + /// 博文实体类 + /// + public async Task Update(TEntity entity) + { + return await BaseDal.Update(entity); + } + /// + /// 更新实体数据 + /// + /// 博文实体类 + /// + public async Task Update(List entity) + { + return await BaseDal.Update(entity); + } + + public async Task Update(TEntity entity, string where) + { + return await BaseDal.Update(entity, where); + } + + public async Task Update(object operateAnonymousObjects) + { + return await BaseDal.Update(operateAnonymousObjects); + } + + public async Task Update( + TEntity entity, + List lstColumns = null, + List lstIgnoreColumns = null, + string where = "" + ) + { + return await BaseDal.Update(entity, lstColumns, lstIgnoreColumns, where); + } + + + /// + /// 根据实体删除一条数据 + /// + /// 博文实体类 + /// + public async Task Delete(TEntity entity) + { + return await BaseDal.Delete(entity); + } + + /// + /// 删除指定ID的数据 + /// + /// 主键ID + /// + public async Task DeleteById(object id) + { + return await BaseDal.DeleteById(id); + } + + /// + /// 删除指定ID集合的数据(批量删除) + /// + /// 主键ID集合 + /// + public async Task DeleteByIds(object[] ids) + { + return await BaseDal.DeleteByIds(ids); + } + + + /// + /// 查询所有数据 + /// + /// 数据列表 + public async Task> Query() + { + return await BaseDal.Query(); + } + + /// + /// 查询数据列表 + /// + /// 条件 + /// 数据列表 + public async Task> Query(string where) + { + return await BaseDal.Query(where); + } + + /// + /// 查询数据列表 + /// + /// whereExpression + /// 数据列表 + public async Task> Query(Expression> whereExpression) + { + return await BaseDal.Query(whereExpression); + } + + /// + /// 按照特定列查询数据列表 + /// + /// + /// + /// + public async Task> Query(Expression> expression) + { + return await BaseDal.Query(expression); + } + + /// + /// 按照特定列查询数据列表带条件排序 + /// + /// + /// 过滤条件 + /// 查询实体条件 + /// 排序条件 + /// + public async Task> Query(Expression> expression, Expression> whereExpression, string orderByFileds) + { + return await BaseDal.Query(expression, whereExpression, orderByFileds); + } + + /// + /// 查询一个列表 + /// + /// 条件表达式 + /// 排序字段,如name asc,age desc + /// 数据列表 + public async Task> Query(Expression> whereExpression, Expression> orderByExpression, bool isAsc = true) + { + return await BaseDal.Query(whereExpression, orderByExpression, isAsc); + } + + public async Task> Query(Expression> whereExpression, string orderByFileds) + { + return await BaseDal.Query(whereExpression, orderByFileds); + } + + /// + /// 查询一个列表 + /// + /// 条件 + /// 排序字段,如name asc,age desc + /// 数据列表 + public async Task> Query(string where, string orderByFileds) + { + return await BaseDal.Query(where, orderByFileds); + } + + /// + /// 根据sql语句查询 + /// + /// 完整的sql语句 + /// 参数 + /// 泛型集合 + public async Task> QuerySql(string sql, SugarParameter[] parameters = null) + { + return await BaseDal.QuerySql(sql, parameters); + } + + /// + /// 根据sql语句查询 + /// + /// 完整的sql语句 + /// 参数 + /// DataTable + public async Task QueryTable(string sql, SugarParameter[] parameters = null) + { + return await BaseDal.QueryTable(sql, parameters); + } + + /// + /// 查询前N条数据 + /// + /// 条件表达式 + /// 前N条 + /// 排序字段,如name asc,age desc + /// 数据列表 + public async Task> Query(Expression> whereExpression, int top, string orderByFileds) + { + return await BaseDal.Query(whereExpression, top, orderByFileds); + } + + /// + /// 查询前N条数据 + /// + /// 条件 + /// 前N条 + /// 排序字段,如name asc,age desc + /// 数据列表 + public async Task> Query( + string where, + int top, + string orderByFileds) + { + return await BaseDal.Query(where, top, orderByFileds); + } + + /// + /// 分页查询 + /// + /// 条件表达式 + /// 页码(下标0) + /// 页大小 + /// 排序字段,如name asc,age desc + /// 数据列表 + public async Task> Query( + Expression> whereExpression, + int pageIndex, + int pageSize, + string orderByFileds) + { + return await BaseDal.Query( + whereExpression, + pageIndex, + pageSize, + orderByFileds); + } + + /// + /// 分页查询 + /// + /// 条件 + /// 页码(下标0) + /// 页大小 + /// 排序字段,如name asc,age desc + /// 数据列表 + public async Task> Query( + string where, + int pageIndex, + int pageSize, + string orderByFileds) + { + return await BaseDal.Query( + where, + pageIndex, + pageSize, + orderByFileds); + } + + public async Task> QueryPage(Expression> whereExpression, + int pageIndex = 1, int pageSize = 20, string orderByFileds = null) + { + return await BaseDal.QueryPage(whereExpression, + pageIndex, pageSize, orderByFileds); + } + + public async Task> QueryFilterPage([FromFilter] QueryFilter filter) + { + var data = await BaseDal.QueryFilterPage(filter); + + return new PageModel(filter.PageIndex, data.dataCount, filter.PageSize, Mapper.Map(data.data).ToANew>()); + + } + + public async Task> QueryMuch(Expression> joinExpression, Expression> selectExpression, Expression> whereLambda = null) where T : class, new() + { + return await BaseDal.QueryMuch(joinExpression, selectExpression, whereLambda); + } + + public async Task> QueryPage(PaginationModel pagination) + { + var express = DynamicLinqFactory.CreateLambda(pagination.Conditions); + return await QueryPage(express, pagination.PageIndex, pagination.PageSize, pagination.OrderByFileds); + } + + #region 分表 + + public async Task> AddSplit(TEntity entity) + { + return await BaseDal.AddSplit(entity); + } + + public async Task UpdateSplit(TEntity entity, DateTime dateTime) + { + return await BaseDal.UpdateSplit(entity, dateTime); + } + + /// + /// 根据实体删除一条数据 + /// + /// 博文实体类 + /// + public async Task DeleteSplit(TEntity entity, DateTime dateTime) + { + return await BaseDal.DeleteSplit(entity, dateTime); + } + + public async Task QueryByIdSplit(object objId) + { + return await BaseDal.QueryByIdSplit(objId); + } + + public async Task> QueryPageSplit(Expression> whereExpression, DateTime beginTime, DateTime endTime, + int pageIndex = 1, int pageSize = 20, string orderByFields = null) + { + return await BaseDal.QueryPageSplit(whereExpression, beginTime, endTime, + pageIndex, pageSize, orderByFields); + } + + #endregion + } +} \ No newline at end of file diff --git a/Tiobon.Core.Services/Ghra_GradeServices.cs b/Tiobon.Core.Services/Ghra_GradeServices.cs index ce42ea2c..97aafff3 100644 --- a/Tiobon.Core.Services/Ghra_GradeServices.cs +++ b/Tiobon.Core.Services/Ghra_GradeServices.cs @@ -6,7 +6,7 @@ using Tiobon.Core.IRepository.Base; namespace Tiobon.Core.Services { - public class Ghra_GradeServices : BaseServices, IGhra_GradeServices + public class Ghra_GradeServices : BaseServices, IGhra_GradeServices { private readonly IBaseRepository _dal; public Ghra_GradeServices(IBaseRepository dal) diff --git a/Tiobon.Core.Services/Tiobon.Core.Services.csproj b/Tiobon.Core.Services/Tiobon.Core.Services.csproj index 6dfd8f4c..d0210543 100644 --- a/Tiobon.Core.Services/Tiobon.Core.Services.csproj +++ b/Tiobon.Core.Services/Tiobon.Core.Services.csproj @@ -9,6 +9,10 @@ ..\Tiobon.Core\bin\Release\ + + + +