diff --git a/README.md b/README.md index 429c5dd..742c887 100644 --- a/README.md +++ b/README.md @@ -131,6 +131,7 @@ Vue版前端技术栈 :基于vue、vuex、vue-router 、vue-cli 、axios 和 e - 👉Ruoyi.vue:[Ruoyi](http://www.ruoyi.vip/) - 👉SqlSugar:[SqlSugar](https://gitee.com/dotnetchina/SqlSugar) - 👉vue-element-admin:[vue-element-admin](https://github.com/PanJiaChen/vue-element-admin) +- 👉Meiam.System:[Meiam.System](https://github.com/91270/Meiam.System) ## 🎀捐赠 如果这个项目对您有所帮助,请扫下方二维码就当打发要饭的吧。 @@ -143,4 +144,5 @@ Vue版前端技术栈 :基于vue、vuex、vue-router 、vue-cli 、axios 和 e ## 源码地址 - [Gitee](https://gitee.com/izory/ZrAdminNetCore/) -- [Github](https://github.com/izhaorui/ZrAdmin.NET/) \ No newline at end of file +- [Github](https://github.com/izhaorui/ZrAdmin.NET/) +- [NET6版本](https://gitee.com/izory/ZrAdminNetCore/tree/net6.0/) \ No newline at end of file diff --git a/ZR.Admin.WebApi/Controllers/System/SysUserController.cs b/ZR.Admin.WebApi/Controllers/System/SysUserController.cs index 78afc6e..5f8420b 100644 --- a/ZR.Admin.WebApi/Controllers/System/SysUserController.cs +++ b/ZR.Admin.WebApi/Controllers/System/SysUserController.cs @@ -20,26 +20,21 @@ namespace ZR.Admin.WebApi.Controllers.System [Route("system/user")] public class SysUserController : BaseController { - private readonly NLog.Logger logger = NLog.LogManager.GetCurrentClassLogger(); - private readonly ISysUserService UserService; private readonly ISysRoleService RoleService; private readonly ISysPostService PostService; private readonly ISysUserPostService UserPostService; - private IWebHostEnvironment WebHostEnvironment; public SysUserController( ISysUserService userService, ISysRoleService roleService, ISysPostService postService, - ISysUserPostService userPostService, - IWebHostEnvironment HostEnvironment) + ISysUserPostService userPostService) { UserService = userService; RoleService = roleService; PostService = postService; UserPostService = userPostService; - WebHostEnvironment = HostEnvironment; } /// diff --git a/ZR.Admin.WebApi/Extensions/DbExtension.cs b/ZR.Admin.WebApi/Extensions/DbExtension.cs index d54cd59..acf8bbc 100644 --- a/ZR.Admin.WebApi/Extensions/DbExtension.cs +++ b/ZR.Admin.WebApi/Extensions/DbExtension.cs @@ -50,11 +50,11 @@ namespace ZR.Admin.WebApi.Extensions #region db0 db.GetConnection(0).Aop.OnLogExecuting = (sql, pars) => { - var param = DbScoped.SugarScope.Utilities.SerializeObject(pars.ToDictionary(it => it.ParameterName, it => it.Value)); + var param = db.Utilities.SerializeObject(pars.ToDictionary(it => it.ParameterName, it => it.Value)); - FilterData(); + FilterData(db.GetConnection(0)); - logger.Info($"{sql},{param}"); + logger.Info($"【sql语句】{sql},{param}"); }; db.GetConnection(0).Aop.OnError = (e) => @@ -74,7 +74,7 @@ namespace ZR.Admin.WebApi.Extensions { var param = DbScoped.SugarScope.Utilities.SerializeObject(pars.ToDictionary(it => it.ParameterName, it => it.Value)); - logger.Info($"Sql语句:{sql}, {param}"); + logger.Info($"【sql语句】{sql}, {param}"); }; //Db1错误日志 db.GetConnection(1).Aop.OnError = (e) => @@ -88,7 +88,7 @@ namespace ZR.Admin.WebApi.Extensions /// /// 分页获取count 不会追加sql /// - private static void FilterData() + private static void FilterData(ISqlSugarClient sqlSugarClient) { var u = App.User; if (u == null) return; @@ -119,8 +119,7 @@ namespace ZR.Admin.WebApi.Extensions var exp = Expressionable.Create(); exp.Or(it => it.DeptId == user.DeptId); var filter1 = new TableFilterItem(exp.ToExpression()); - DbScoped.SugarScope.GetConnection(0).QueryFilter.Add(filter1); - Console.WriteLine("本部门数据过滤"); + sqlSugarClient.QueryFilter.Add(filter1); } else if (DATA_SCOPE_DEPT_AND_CHILD.Equals(dataScope))//本部门及以下数据 { @@ -128,8 +127,8 @@ namespace ZR.Admin.WebApi.Extensions } else if (DATA_SCOPE_SELF.Equals(dataScope))//仅本人数据 { - var filter1 = new TableFilterItem(it => it.UserId == user.UserId); - DbScoped.SugarScope.GetConnection(0).QueryFilter.Add(filter1); + var filter1 = new TableFilterItem(it => it.UserId == user.UserId, true); + sqlSugarClient.QueryFilter.Add(filter1); } } } diff --git a/ZR.Admin.WebApi/ZR.Admin.WebApi.csproj b/ZR.Admin.WebApi/ZR.Admin.WebApi.csproj index a81c54c..803610d 100644 --- a/ZR.Admin.WebApi/ZR.Admin.WebApi.csproj +++ b/ZR.Admin.WebApi/ZR.Admin.WebApi.csproj @@ -29,7 +29,6 @@ - diff --git a/ZR.Admin.WebApi/wwwroot/CodeGenTemplate/TplService.txt b/ZR.Admin.WebApi/wwwroot/CodeGenTemplate/TplService.txt index 205fb50..b3e2add 100644 --- a/ZR.Admin.WebApi/wwwroot/CodeGenTemplate/TplService.txt +++ b/ZR.Admin.WebApi/wwwroot/CodeGenTemplate/TplService.txt @@ -21,7 +21,7 @@ namespace ${options.ServicesNamespace}.${options.SubNamespace} public class ${replaceDto.ModelTypeName}Service : BaseService<${replaceDto.ModelTypeName}>, I${replaceDto.ModelTypeName}Service { private readonly ${replaceDto.ModelTypeName}Repository _${replaceDto.ModelTypeName}repository; - public ${replaceDto.ModelTypeName}Service(${replaceDto.ModelTypeName}Repository repository) : base(repository) + public ${replaceDto.ModelTypeName}Service(${replaceDto.ModelTypeName}Repository repository) { _${replaceDto.ModelTypeName}repository = repository; } diff --git a/ZR.Admin.WebApi/wwwroot/CodeGenTemplate/TplVueSelect.txt b/ZR.Admin.WebApi/wwwroot/CodeGenTemplate/TplVueSelect.txt index cef957e..91ffb91 100644 --- a/ZR.Admin.WebApi/wwwroot/CodeGenTemplate/TplVueSelect.txt +++ b/ZR.Admin.WebApi/wwwroot/CodeGenTemplate/TplVueSelect.txt @@ -11,11 +11,9 @@ -$if(replaceDto.ShowBtnExport) 导出 -$end @@ -59,9 +57,7 @@ $end import { list${genTable.BusinessName}, get${genTable.BusinessName}, -$if(replaceDto.ShowBtnExport) export${genTable.BusinessName}, -$end } from '@/api/${tool.FirstLowerCase(genTable.ModuleName)}/${tool.FirstLowerCase(genTable.BusinessName)}.js'; export default { diff --git a/ZR.CodeGenerator/ZR.CodeGenerator.csproj b/ZR.CodeGenerator/ZR.CodeGenerator.csproj index 3d03ff0..5f92abe 100644 --- a/ZR.CodeGenerator/ZR.CodeGenerator.csproj +++ b/ZR.CodeGenerator/ZR.CodeGenerator.csproj @@ -12,6 +12,6 @@ - + diff --git a/ZR.Model/ZR.Model.csproj b/ZR.Model/ZR.Model.csproj index 1e6bfe9..24b784b 100644 --- a/ZR.Model/ZR.Model.csproj +++ b/ZR.Model/ZR.Model.csproj @@ -7,7 +7,7 @@ - + diff --git a/ZR.Repository/BaseRepository.cs b/ZR.Repository/BaseRepository.cs index 60134e1..19d59f6 100644 --- a/ZR.Repository/BaseRepository.cs +++ b/ZR.Repository/BaseRepository.cs @@ -15,16 +15,17 @@ namespace ZR.Repository /// /// /// - public class BaseRepository : IBaseRepository where T : class, new() + public class BaseRepository : SimpleClient where T : class, new() { - public ISqlSugarClient Context; - - public BaseRepository(ISqlSugarClient client = null) + public ITenant itenant = null;//多租户事务 + public BaseRepository(ISqlSugarClient client = null) : base(client) { + //通过特性拿到ConfigId var configId = typeof(T).GetCustomAttribute()?.configId; - if(configId != null) + if (configId != null) { Context = DbScoped.SugarScope.GetConnection(configId); + itenant = DbScoped.SugarScope;//设置租户接口 } else { @@ -53,10 +54,10 @@ namespace ZR.Repository { return Context.Insertable(t).ExecuteCommand(); } - public long InsertReturnBigIdentity(T t) - { - return Context.Insertable(t).ExecuteReturnBigIdentity(); - } + //public long InsertReturnBigIdentity(T t) + //{ + // return Context.Insertable(t).ExecuteReturnBigIdentity(); + //} //public int InsertIgnoreNullColumn(List t) //{ @@ -194,14 +195,38 @@ namespace ZR.Repository public DbResult UseTran(Action action) { - var result = Context.Ado.UseTran(() => action()); - return result; + try + { + var result = Context.Ado.UseTran(() => action()); + return result; + } + catch (Exception ex) + { + Context.Ado.RollbackTran(); + Console.WriteLine(ex.Message); + throw; + } } + /// + /// + /// + /// + /// 增删改查方法 + /// public DbResult UseTran(SqlSugarClient client, Action action) { - var result = client.Ado.UseTran(() => action()); - return result; + try + { + var result = client.AsTenant().UseTran(() => action()); + return result; + } + catch (Exception ex) + { + client.AsTenant().RollbackTran(); + Console.WriteLine(ex.Message); + throw; + } } public bool UseTran2(Action action) @@ -216,16 +241,6 @@ namespace ZR.Repository return Context.Deleteable(); } - /// - /// 删除表达式 - /// - /// - /// - public int Delete(Expression> expression) - { - return Context.Deleteable().Where(expression).ExecuteCommand(); - } - /// /// 批量删除 /// @@ -258,32 +273,6 @@ namespace ZR.Repository return Context.Queryable(); } - //public ISugarQueryable Queryable(string tableName, string shortName) - //{ - // return Context.Queryable(tableName, shortName); - //} - - public List GetList(Expression> expression) - { - return Context.Queryable().Where(expression).ToList(); - } - - //public Task> QueryableToListAsync(Expression> expression) - //{ - // return Context.Queryable().Where(expression).ToListAsync(); - //} - - //public string QueryableToJson(string select, Expression> expressionWhere) - //{ - // var query = base.Context.Queryable().Select(select).Where(expressionWhere).ToList(); - // return query.JilToJson(); - //} - - //public List QueryableToList(string tableName) - //{ - // return Context.Queryable(tableName).ToList(); - //} - public (List, int) QueryableToPage(Expression> expression, int pageIndex = 0, int pageSize = 10) { int totalNumber = 0; @@ -318,15 +307,6 @@ namespace ZR.Repository { return Context.Ado.SqlQuery(sql, obj); } - /// - /// 获得一条数据 - /// - /// Expression> - /// - public T GetFirst(Expression> where) - { - return Context.Queryable().Where(where).First(); - } /// /// 根据主值查询单条数据 @@ -371,10 +351,6 @@ namespace ZR.Repository return Context.Queryable().WithCacheIF(useCache, cacheSecond).ToList(); } - public int Count(Expression> where) - { - return Context.Queryable().Count(where); - } #endregion query /// diff --git a/ZR.Repository/IBaseRepository.cs b/ZR.Repository/IBaseRepository.cs index 96d7807..488a4aa 100644 --- a/ZR.Repository/IBaseRepository.cs +++ b/ZR.Repository/IBaseRepository.cs @@ -1,44 +1,20 @@ -using Infrastructure.Model; -using SqlSugar; +using SqlSugar; using System; using System.Collections.Generic; using System.Data; -using System.Dynamic; -using System.Linq; using System.Linq.Expressions; -using System.Text; -using System.Threading.Tasks; using ZR.Model; namespace ZR.Repository { - public interface IBaseRepository where T : class, new() + public interface IBaseRepository : ISimpleClient where T : class, new() { #region add int Add(T t); - //int Insert(SqlSugarClient client, T t); - int Insert(List t); int Insert(T parm, Expression> iClumns = null, bool ignoreNull = true); - //int InsertIgnoreNullColumn(List t); - - //int InsertIgnoreNullColumn(List t, params string[] columns); - - //DbResult InsertTran(T t); - - //DbResult InsertTran(List t); - long InsertReturnBigIdentity(T t); - //T InsertReturnEntity(T t); - - //T InsertReturnEntity(T t, string sqlWith = SqlWith.UpdLock); - - //bool ExecuteCommand(string sql, object parameters); - - //bool ExecuteCommand(string sql, params SugarParameter[] parameters); - - //bool ExecuteCommand(string sql, List parameters); IInsertable Insertable(T t); #endregion add @@ -70,7 +46,6 @@ namespace ZR.Repository #region delete IDeleteable Deleteable(); - int Delete(Expression> expression); int Delete(object[] obj); int Delete(object id); int DeleteTable(); @@ -88,24 +63,12 @@ namespace ZR.Repository PagedInfo GetPages(Expression> where, PagerInfo parm, Expression> order, OrderByType orderEnum = OrderByType.Asc); PagedInfo GetPages(Expression> where, PagerInfo parm, Expression> order, string orderByType); - + bool Any(Expression> expression); ISugarQueryable Queryable(); List GetAll(bool useCache = false, int cacheSecond = 3600); - //ISugarQueryable Queryable(string tableName, string shortName); - - //ISugarQueryable Queryable() where T1 : class where T2 : new(); - - List GetList(Expression> expression); - - //Task> QueryableToListAsync(Expression> expression); - - //string QueryableToJson(string select, Expression> expressionWhere); - - //List QueryableToList(string tableName); - (List, int) QueryableToPage(Expression> expression, int pageIndex = 0, int pageSize = 10); (List, int) QueryableToPage(Expression> expression, string order, int pageIndex = 0, int pageSize = 10); @@ -113,23 +76,9 @@ namespace ZR.Repository (List, int) QueryableToPage(Expression> expression, Expression> orderFiled, string orderBy, int pageIndex = 0, int pageSize = 10); List SqlQueryToList(string sql, object obj = null); - /// - /// 获得一条数据 - /// - /// Expression> - /// - T GetFirst(Expression> where); + T GetId(object pkValue); - /// - /// 获得一条数据 - /// - /// string - /// - //T GetFirst(string parm); - - int Count(Expression> where); - #endregion query #region Procedure diff --git a/ZR.Repository/ZR.Repository.csproj b/ZR.Repository/ZR.Repository.csproj index 89e76a0..7f0fe65 100644 --- a/ZR.Repository/ZR.Repository.csproj +++ b/ZR.Repository/ZR.Repository.csproj @@ -12,8 +12,8 @@ - - + + diff --git a/ZR.Service/BaseService.cs b/ZR.Service/BaseService.cs index 8dd85de..40faca2 100644 --- a/ZR.Service/BaseService.cs +++ b/ZR.Service/BaseService.cs @@ -1,12 +1,4 @@ -using Infrastructure.Model; -using SqlSugar; -using SqlSugar.IOC; -using System; -using System.Collections.Generic; -using System.Data; -using System.Linq.Expressions; -using ZR.Model; -using ZR.Repository; +using ZR.Repository; namespace ZR.Service { @@ -14,393 +6,13 @@ namespace ZR.Service /// 基础服务定义 /// /// - public class BaseService : IBaseService where T : class, new() + public class BaseService : BaseRepository where T : class, new() { - public IBaseRepository baseRepository; + //public IBaseRepository baseRepository; - public BaseService(IBaseRepository repository) - { - this.baseRepository = repository ?? throw new ArgumentNullException(nameof(repository)); - } - #region add - /// - /// 插入指定列使用 - /// - /// - /// - /// - /// - public int Insert(T parm, Expression> iClumns = null, bool ignoreNull = true) - { - return baseRepository.Insert(parm, iClumns, ignoreNull); - } - /// - /// 插入实体 - /// - /// - /// - public int Add(T t) - { - return baseRepository.Add(t); - } - public IInsertable Insertable(T t) - { - return baseRepository.Insertable(t); - } - //public int Insert(SqlSugarClient client, T t) + //public BaseService(IBaseRepository repository) //{ - // return client.Insertable(t).ExecuteCommand(); - //} - - //public long InsertBigIdentity(T t) - //{ - // return base.Context.Insertable(t).ExecuteReturnBigIdentity(); - //} - - public int Insert(List t) - { - return baseRepository.Insert(t); - } - public long InsertReturnBigIdentity(T t) - { - return baseRepository.InsertReturnBigIdentity(t); - } - - //public int InsertIgnoreNullColumn(List t) - //{ - // return base.Context.Insertable(t).IgnoreColumns(true).ExecuteCommand(); - //} - - //public int InsertIgnoreNullColumn(List t, params string[] columns) - //{ - // return base.Context.Insertable(t).IgnoreColumns(columns).ExecuteCommand(); - //} - //public DbResult InsertTran(T t) - //{ - // var result = base.Context.Ado.UseTran(() => - // { - // base.Context.Insertable(t).ExecuteCommand(); - // }); - // return result; - //} - - //public DbResult InsertTran(List t) - //{ - // var result = base.Context.Ado.UseTran(() => - // { - // base.Context.Insertable(t).ExecuteCommand(); - // }); - // return result; - //} - - //public T InsertReturnEntity(T t) - //{ - // return base.Context.Insertable(t).ExecuteReturnEntity(); - //} - - //public T InsertReturnEntity(T t, string sqlWith = SqlWith.UpdLock) - //{ - // return base.Context.Insertable(t).With(sqlWith).ExecuteReturnEntity(); - //} - - //public bool ExecuteCommand(string sql, object parameters) - //{ - // return base.Context.Ado.ExecuteCommand(sql, parameters) > 0; - //} - - //public bool ExecuteCommand(string sql, params SugarParameter[] parameters) - //{ - // return base.Context.Ado.ExecuteCommand(sql, parameters) > 0; - //} - - //public bool ExecuteCommand(string sql, List parameters) - //{ - // return base.Context.Ado.ExecuteCommand(sql, parameters) > 0; - //} - - #endregion add - - #region update - - public int Update(T entity, bool ignoreNullColumns = false) - { - return baseRepository.Update(entity, ignoreNullColumns); - } - - public int Update(T entity, Expression> expression, bool ignoreAllNull = false) - { - return baseRepository.Update(entity, expression, ignoreAllNull); - } - - /// - /// 根据实体类更新 eg:Update(dept, it => new { it.Status }, f => depts.Contains(f.DeptId));只更新Status列,条件是包含 - /// - /// - /// - /// - /// - public int Update(T entity, Expression> expression, Expression> where) - { - return baseRepository.Update(entity, expression, where); - } - - public int Update(SqlSugarClient client, T entity, Expression> expression, Expression> where) - { - return client.Updateable(entity).UpdateColumns(expression).Where(where).ExecuteCommand(); - } - - ///// - ///// - ///// - ///// - ///// - ///// 默认为true - ///// - //public bool Update(T entity, List list = null, bool isNull = true) - //{ - // if (list == null) - // { - // list = new List() - // { - // "Create_By", - // "Create_time" - // }; - // } - // //base.Context.Updateable(entity).IgnoreColumns(c => list.Contains(c)).Where(isNull).ExecuteCommand() - // return baseRepository.Update(entity, list, isNull); - //} - - //public bool Update(List entity) - //{ - // var result = base.Context.Ado.UseTran(() => - // { - // base.Context.Updateable(entity).ExecuteCommand(); - // }); - // return result.IsSuccess; - //} - - /// - /// 更新指定列 eg:Update(w => w.NoticeId == model.NoticeId, it => new SysNotice(){ Update_time = DateTime.Now, Title = "通知标题" }); - /// - /// - /// - /// - public int Update(Expression> where, Expression> columns) - { - return baseRepository.Update(where, columns); - } - #endregion update - - public DbResult UseTran(Action action) - { - var result = baseRepository.UseTran(action); - return result; - } - - public DbResult UseTran(SqlSugarClient client, Action action) - { - var result = client.Ado.UseTran(() => action()); - return result; - } - - public bool UseTran2(Action action) - { - var result = baseRepository.UseTran2(action); - return result; - } - - #region delete - - /// - /// 删除 - /// - /// - public IDeleteable Deleteable() - { - return baseRepository.Deleteable(); - } - /// - /// 删除表达式 - /// - /// - /// - public int Delete(Expression> expression) - { - return baseRepository.Delete(expression); - } - - /// - /// 批量删除 - /// - /// - /// - public int Delete(object[] obj) - { - return baseRepository.Delete(obj); - } - public int Delete(object id) - { - return baseRepository.Delete(id); - } - public int DeleteTable() - { - return baseRepository.DeleteTable(); - } - - #endregion delete - - #region query - - public bool Any(Expression> expression) - { - return baseRepository.Any(expression); - } - - public ISugarQueryable Queryable() - { - return baseRepository.Queryable(); - } - - public List GetList(Expression> expression) - { - return baseRepository.GetList(expression); - } - - //public Task> QueryableToListAsync(Expression> expression) - //{ - // return Context.Queryable().Where(expression).ToListAsync(); - //} - - //public string QueryableToJson(string select, Expression> expressionWhere) - //{ - // var query = base.Context.Queryable().Select(select).Where(expressionWhere).ToList(); - // return query.JilToJson(); - //} - - //public List QueryableToList(string tableName) - //{ - // return Context.Queryable(tableName).ToList(); - //} - - //public (List, int) QueryableToPage(Expression> expression, int pageIndex = 0, int pageSize = 10) - //{ - // int totalNumber = 0; - // var list = Context.Queryable().Where(expression).ToPageList(pageIndex, pageSize, ref totalNumber); - // return (list, totalNumber); - //} - - //public (List, int) QueryableToPage(Expression> expression, string order, int pageIndex = 0, int pageSize = 10) - //{ - // int totalNumber = 0; - // var list = Context.Queryable().Where(expression).OrderBy(order).ToPageList(pageIndex, pageSize, ref totalNumber); - // return (list, totalNumber); - //} - - //public (List, int) QueryableToPage(Expression> expression, Expression> orderFiled, string orderBy, int pageIndex = 0, int pageSize = 10) - //{ - // int totalNumber = 0; - - // if (orderBy.Equals("DESC", StringComparison.OrdinalIgnoreCase)) - // { - // var list = Context.Queryable().Where(expression).OrderBy(orderFiled, OrderByType.Desc).ToPageList(pageIndex, pageSize, ref totalNumber); - // return (list, totalNumber); - // } - // else - // { - // var list = Context.Queryable().Where(expression).OrderBy(orderFiled, OrderByType.Asc).ToPageList(pageIndex, pageSize, ref totalNumber); - // return (list, totalNumber); - // } - //} - - //public List SqlQueryToList(string sql, object obj = null) - //{ - // return Context.Ado.SqlQuery(sql, obj); - //} - /// - /// 获得一条数据 - /// - /// Expression> - /// - public T GetFirst(Expression> where) - { - return baseRepository.GetFirst(where); - } - - /// - /// 根据主值查询单条数据 - /// - /// 主键值 - /// 泛型实体 - public T GetId(object pkValue) - { - return baseRepository.GetId(pkValue); - } - /// - /// 根据条件查询分页数据 - /// - /// - /// - /// - public PagedInfo GetPages(Expression> where, PagerInfo parm) - { - var source = baseRepository.GetPages(where, parm); - - return source; - } - - public PagedInfo GetPages(Expression> where, PagerInfo parm, Expression> order, OrderByType orderEnum = OrderByType.Asc) - { - return baseRepository.GetPages(where, parm, order, orderEnum); - } - public PagedInfo GetPages(Expression> where, PagerInfo parm, Expression> order, string orderByType) - { - return baseRepository.GetPages(where, parm, order, orderByType == "desc" ? OrderByType.Desc : OrderByType.Asc); - } - /// - /// 查询所有数据(无分页,请慎用) - /// - /// - public List GetAll(bool useCache = false, int cacheSecond = 3600) - { - return baseRepository.GetAll(useCache, cacheSecond); - } - - public int Count(Expression> where) - { - return baseRepository.Count(where); - } - #endregion query - - /// - /// 此方法不带output返回值 - /// var list = new List(); - /// list.Add(new SugarParameter(ParaName, ParaValue)); input - /// - /// - /// - /// - public DataTable UseStoredProcedureToDataTable(string procedureName, List parameters) - { - return baseRepository.UseStoredProcedureToDataTable(procedureName, parameters); - } - - /// - /// 带output返回值 - /// var list = new List(); - /// list.Add(new SugarParameter(ParaName, ParaValue, true)); output - /// list.Add(new SugarParameter(ParaName, ParaValue)); input - /// - /// - /// - /// - public (DataTable, List) UseStoredProcedureToTuple(string procedureName, List parameters) - { - return baseRepository.UseStoredProcedureToTuple(procedureName, parameters); - } - - //public string QueryableToJson(string select, Expression> expressionWhere) - //{ - // throw new NotImplementedException(); + // this.baseRepository = repository ?? throw new ArgumentNullException(nameof(repository)); //} } } diff --git a/ZR.Service/IBaseService.cs b/ZR.Service/IBaseService.cs index 81143cd..3bd68d1 100644 --- a/ZR.Service/IBaseService.cs +++ b/ZR.Service/IBaseService.cs @@ -1,10 +1,4 @@ -using Infrastructure.Model; -using SqlSugar; -using System; -using System.Collections.Generic; -using System.Data; -using System.Linq.Expressions; -using ZR.Model; +using ZR.Repository; namespace ZR.Service { @@ -12,145 +6,7 @@ namespace ZR.Service /// 基础服务定义 /// /// - public interface IBaseService where T : class, new() + public interface IBaseService : IBaseRepository where T : class, new() { - #region add - int Add(T t); - - //int Insert(SqlSugarClient client, T t); - - //long InsertBigIdentity(T t); - IInsertable Insertable(T t); - int Insert(List t); - int Insert(T parm, Expression> iClumns = null, bool ignoreNull = true); - - //int InsertIgnoreNullColumn(List t); - - //int InsertIgnoreNullColumn(List t, params string[] columns); - - //DbResult InsertTran(T t); - - //DbResult InsertTran(List t); - long InsertReturnBigIdentity(T t); - //T InsertReturnEntity(T t); - - //T InsertReturnEntity(T t, string sqlWith = SqlWith.UpdLock); - - //bool ExecuteCommand(string sql, object parameters); - - //bool ExecuteCommand(string sql, params SugarParameter[] parameters); - - //bool ExecuteCommand(string sql, List parameters); - - #endregion add - - #region update - - int Update(T entity, bool ignoreNullColumns = false); - - /// - /// 只更新表达式的值 - /// - /// - /// - /// - int Update(T entity, Expression> expression, bool ignoreAllNull = false); - - int Update(T entity, Expression> expression, Expression> where); - - int Update(SqlSugarClient client, T entity, Expression> expression, Expression> where); - - /// - /// - /// - /// T - /// 忽略更新 - /// Null不更新 - /// - //bool Update(T entity, List list = null, bool isNull = true); - - //bool Update(List entity); - int Update(Expression> where, Expression> columns); - - #endregion update - - DbResult UseTran(Action action); - - DbResult UseTran(SqlSugarClient client, Action action); - - bool UseTran2(Action action); - - #region delete - IDeleteable Deleteable(); - int Delete(Expression> expression); - int Delete(object[] obj); - int Delete(object id); - int DeleteTable(); - - #endregion delete - - #region query - /// - /// 根据条件查询分页数据 - /// - /// - /// - /// - PagedInfo GetPages(Expression> where, PagerInfo parm); - - PagedInfo GetPages(Expression> where, PagerInfo parm, Expression> order, OrderByType orderEnum = OrderByType.Asc); - PagedInfo GetPages(Expression> where, PagerInfo parm, Expression> order, string orderType); - bool Any(Expression> expression); - - ISugarQueryable Queryable(); - List GetAll(bool useCache = false, int cacheSecond = 3600); - - //ISugarQueryable Queryable(string tableName, string shortName); - - //ISugarQueryable Queryable() where T1 : class where T2 : new(); - - List GetList(Expression> expression); - - //Task> QueryableToListAsync(Expression> expression); - - //string QueryableToJson(string select, Expression> expressionWhere); - - //List QueryableToList(string tableName); - - //(List, int) QueryableToPage(Expression> expression, int pageIndex = 0, int pageSize = 10); - - //(List, int) QueryableToPage(Expression> expression, string order, int pageIndex = 0, int pageSize = 10); - - //(List, int) QueryableToPage(Expression> expression, Expression> orderFiled, string orderBy, int pageIndex = 0, int pageSize = 10); - - //(List, int) QueryableToPage(Expression> expression, Bootstrap.BootstrapParams bootstrap); - - //List SqlQueryToList(string sql, object obj = null); - /// - /// 获得一条数据 - /// - /// Expression> - /// - T GetFirst(Expression> where); - T GetId(object pkValue); - - /// - /// 获得一条数据 - /// - /// string - /// - //T GetFirst(string parm); - - int Count(Expression> where); - - #endregion query - - #region Procedure - - DataTable UseStoredProcedureToDataTable(string procedureName, List parameters); - - (DataTable, List) UseStoredProcedureToTuple(string procedureName, List parameters); - - #endregion Procedure } } \ No newline at end of file diff --git a/ZR.Service/System/ArticleCategoryService.cs b/ZR.Service/System/ArticleCategoryService.cs index 7bc2a9f..9f9a11d 100644 --- a/ZR.Service/System/ArticleCategoryService.cs +++ b/ZR.Service/System/ArticleCategoryService.cs @@ -15,9 +15,6 @@ namespace ZR.Service.System [AppService(ServiceType = typeof(IArticleCategoryService), ServiceLifetime = LifeTime.Transient)] public class ArticleCategoryService : BaseService, IArticleCategoryService { - public ArticleCategoryService(ArticleCategoryRepository repository) : base(repository) - { - } /// /// 构建前端所需要树结构 /// diff --git a/ZR.Service/System/ArticleService.cs b/ZR.Service/System/ArticleService.cs index 5a74be4..695676a 100644 --- a/ZR.Service/System/ArticleService.cs +++ b/ZR.Service/System/ArticleService.cs @@ -12,8 +12,5 @@ namespace ZR.Service.System [AppService(ServiceType = typeof(IArticleService), ServiceLifetime = LifeTime.Transient)] public class ArticleService : BaseService
, IArticleService { - public ArticleService(ArticleRepository repository) : base(repository) - { - } } } diff --git a/ZR.Service/System/GenTableService.cs b/ZR.Service/System/GenTableService.cs index f9fba35..40b3657 100644 --- a/ZR.Service/System/GenTableService.cs +++ b/ZR.Service/System/GenTableService.cs @@ -21,7 +21,7 @@ namespace ZR.Service.System { private GenTableRepository GenTableRepository; private IGenTableColumnService GenTableColumnService; - public GenTableService(IGenTableColumnService genTableColumnService, GenTableRepository genTableRepository) : base(genTableRepository) + public GenTableService(IGenTableColumnService genTableColumnService, GenTableRepository genTableRepository) { GenTableColumnService = genTableColumnService; GenTableRepository = genTableRepository; @@ -45,7 +45,7 @@ namespace ZR.Service.System /// public int DeleteGenTableByTbName(string tableName) { - return GenTableRepository.Delete(f => f.TableName == tableName); + return GenTableRepository.Delete(f => f.TableName == tableName) ? 1: 0; } /// @@ -180,7 +180,7 @@ namespace ZR.Service.System { private GenTableColumnRepository GetTableColumnRepository; - public GenTableColumnService(GenTableColumnRepository genTableColumnRepository) : base(genTableColumnRepository) + public GenTableColumnService(GenTableColumnRepository genTableColumnRepository) { GetTableColumnRepository = genTableColumnRepository; } diff --git a/ZR.Service/System/IService/IGenTableService.cs b/ZR.Service/System/IService/IGenTableService.cs index 9d118ae..7358ed4 100644 --- a/ZR.Service/System/IService/IGenTableService.cs +++ b/ZR.Service/System/IService/IGenTableService.cs @@ -4,7 +4,7 @@ using ZR.Model.System.Generate; namespace ZR.Service.System.IService { - public interface IGenTableService: IBaseService + public interface IGenTableService : IBaseService { List SelectDbTableListByNamess(string[] tableNames); @@ -19,8 +19,8 @@ namespace ZR.Service.System.IService int UpdateGenTable(GenTable genTable); } - public interface IGenTableColumnService: IBaseService - { + public interface IGenTableColumnService : IBaseService + { int InsertGenTableColumn(List tableColumn); int DeleteGenTableColumn(long tableId); diff --git a/ZR.Service/System/IService/ISysConfigService.cs b/ZR.Service/System/IService/ISysConfigService.cs index d103154..4ed2f69 100644 --- a/ZR.Service/System/IService/ISysConfigService.cs +++ b/ZR.Service/System/IService/ISysConfigService.cs @@ -9,7 +9,7 @@ namespace ZR.Service.System /// @author zhaorui /// @date 2021-09-29 /// - public interface ISysConfigService: IBaseService + public interface ISysConfigService : IBaseService { SysConfig GetSysConfigByKey(string key); } diff --git a/ZR.Service/System/IService/ISysDeptService.cs b/ZR.Service/System/IService/ISysDeptService.cs index 668415f..050429c 100644 --- a/ZR.Service/System/IService/ISysDeptService.cs +++ b/ZR.Service/System/IService/ISysDeptService.cs @@ -19,7 +19,7 @@ namespace ZR.Service.System.IService List SelectRoleDeptByRoleId(long roleId); List SelectRoleDepts(long roleId); - int DeleteRoleDeptByRoleId(long roleId); + bool DeleteRoleDeptByRoleId(long roleId); int InsertRoleDepts(SysRole role); } } diff --git a/ZR.Service/System/IService/ISysPostService.cs b/ZR.Service/System/IService/ISysPostService.cs index e8d0abf..e65092a 100644 --- a/ZR.Service/System/IService/ISysPostService.cs +++ b/ZR.Service/System/IService/ISysPostService.cs @@ -10,5 +10,6 @@ namespace ZR.Service.System.IService { string CheckPostNameUnique(SysPost sysPost); string CheckPostCodeUnique(SysPost sysPost); + List GetAll(); } } diff --git a/ZR.Service/System/IService/ISysUserPostService.cs b/ZR.Service/System/IService/ISysUserPostService.cs index 193dfdd..dc871a2 100644 --- a/ZR.Service/System/IService/ISysUserPostService.cs +++ b/ZR.Service/System/IService/ISysUserPostService.cs @@ -10,6 +10,6 @@ namespace ZR.Service.System.IService public List GetUserPostsByUserId(long userId); public string GetPostsStrByUserId(long userId); - int Delete(long userId); + bool Delete(long userId); } } diff --git a/ZR.Service/System/IService/ISysUserService.cs b/ZR.Service/System/IService/ISysUserService.cs index 8574d53..4c9d888 100644 --- a/ZR.Service/System/IService/ISysUserService.cs +++ b/ZR.Service/System/IService/ISysUserService.cs @@ -5,6 +5,7 @@ using System.Text; using System.Threading.Tasks; using ZR.Model; using ZR.Model.System; +using ZR.Repository; namespace ZR.Service.System.IService { diff --git a/ZR.Service/System/SysConfigService.cs b/ZR.Service/System/SysConfigService.cs index 9b2f8a5..7e651bc 100644 --- a/ZR.Service/System/SysConfigService.cs +++ b/ZR.Service/System/SysConfigService.cs @@ -11,7 +11,7 @@ namespace ZR.Service.System public class SysConfigService : BaseService, ISysConfigService { private readonly SysConfigRepository _SysConfigrepository; - public SysConfigService(SysConfigRepository repository) : base(repository) + public SysConfigService(SysConfigRepository repository) { _SysConfigrepository = repository; } diff --git a/ZR.Service/System/SysDeptService.cs b/ZR.Service/System/SysDeptService.cs index 299bdd8..28a021c 100644 --- a/ZR.Service/System/SysDeptService.cs +++ b/ZR.Service/System/SysDeptService.cs @@ -22,7 +22,7 @@ namespace ZR.Service.System { public SysDeptRepository DeptRepository; public SysRoleDeptRepository RoleDeptRepository; - public SysDeptService(SysDeptRepository deptRepository, SysRoleDeptRepository roleDeptRepository) : base(deptRepository) + public SysDeptService(SysDeptRepository deptRepository, SysRoleDeptRepository roleDeptRepository) { DeptRepository = deptRepository; RoleDeptRepository = roleDeptRepository; @@ -256,7 +256,7 @@ namespace ZR.Service.System /// /// /// - public int DeleteRoleDeptByRoleId(long roleId) + public bool DeleteRoleDeptByRoleId(long roleId) { return RoleDeptRepository.Delete(f => f.RoleId == roleId); } diff --git a/ZR.Service/System/SysDictDataService.cs b/ZR.Service/System/SysDictDataService.cs index 8e2f899..2b44798 100644 --- a/ZR.Service/System/SysDictDataService.cs +++ b/ZR.Service/System/SysDictDataService.cs @@ -19,7 +19,7 @@ namespace ZR.Service.System { private readonly SysDictDataRepository SysDictDataRepository; - public SysDictDataService(SysDictDataRepository sysDictDataRepository) : base(sysDictDataRepository) + public SysDictDataService(SysDictDataRepository sysDictDataRepository) { SysDictDataRepository = sysDictDataRepository; } diff --git a/ZR.Service/System/SysDictService.cs b/ZR.Service/System/SysDictService.cs index f90fcb1..0df06e5 100644 --- a/ZR.Service/System/SysDictService.cs +++ b/ZR.Service/System/SysDictService.cs @@ -18,7 +18,7 @@ namespace ZR.Service.System private SysDictRepository DictRepository; private SysDictDataRepository DictDataRepository; - public SysDictService(SysDictRepository sysDictRepository, SysDictDataRepository dictDataRepository) : base(sysDictRepository) + public SysDictService(SysDictRepository sysDictRepository, SysDictDataRepository dictDataRepository) { this.DictRepository = sysDictRepository; this.DictDataRepository = dictDataRepository; diff --git a/ZR.Service/System/SysFileService.cs b/ZR.Service/System/SysFileService.cs index dd89c2f..bfe104e 100644 --- a/ZR.Service/System/SysFileService.cs +++ b/ZR.Service/System/SysFileService.cs @@ -11,7 +11,6 @@ using System.Net; using ZR.Model.System; using ZR.Repository.System; using Infrastructure.Extensions; -using SqlSugar.DistributedSystem.Snowflake; namespace ZR.Service.System { @@ -24,7 +23,7 @@ namespace ZR.Service.System private string domainUrl = AppSettings.GetConfig("ALIYUN_OSS:domainUrl"); private readonly SysFileRepository SysFileRepository; - public SysFileService(SysFileRepository repository) : base(repository) + public SysFileService(SysFileRepository repository) { SysFileRepository = repository; } diff --git a/ZR.Service/System/SysLoginService.cs b/ZR.Service/System/SysLoginService.cs index 0078c8d..563bb11 100644 --- a/ZR.Service/System/SysLoginService.cs +++ b/ZR.Service/System/SysLoginService.cs @@ -19,7 +19,7 @@ namespace ZR.Service.System { private SysLogininfoRepository SysLogininfoRepository; - public SysLoginService(SysLogininfoRepository sysLogininfo): base(sysLogininfo) + public SysLoginService(SysLogininfoRepository sysLogininfo) { SysLogininfoRepository = sysLogininfo; } diff --git a/ZR.Service/System/SysMenuService.cs b/ZR.Service/System/SysMenuService.cs index ff406f4..7c0c120 100644 --- a/ZR.Service/System/SysMenuService.cs +++ b/ZR.Service/System/SysMenuService.cs @@ -21,7 +21,7 @@ namespace ZR.Service public SysMenuService( SysMenuRepository menuRepository, - ISysRoleService sysRoleService) : base(menuRepository) + ISysRoleService sysRoleService) { MenuRepository = menuRepository; SysRoleService = sysRoleService; diff --git a/ZR.Service/System/SysNoticeService.cs b/ZR.Service/System/SysNoticeService.cs index 195f957..dfd5dfa 100644 --- a/ZR.Service/System/SysNoticeService.cs +++ b/ZR.Service/System/SysNoticeService.cs @@ -20,7 +20,7 @@ namespace ZR.Service.System public class SysNoticeService : BaseService, ISysNoticeService { private readonly SysNoticeRepository _SysNoticerepository; - public SysNoticeService(SysNoticeRepository repository) : base(repository) + public SysNoticeService(SysNoticeRepository repository) { _SysNoticerepository = repository; } diff --git a/ZR.Service/System/SysOperLogService.cs b/ZR.Service/System/SysOperLogService.cs index 63c76ba..c4636a8 100644 --- a/ZR.Service/System/SysOperLogService.cs +++ b/ZR.Service/System/SysOperLogService.cs @@ -1,12 +1,10 @@ -using Infrastructure.Attribute; -using System.Collections.Generic; +using Infrastructure; +using Infrastructure.Attribute; using ZR.Model; -using ZR.Model.System.Dto; using ZR.Model.System; +using ZR.Model.System.Dto; using ZR.Repository.System; using ZR.Service.System.IService; -using Infrastructure; -using Infrastructure.Model; namespace ZR.Service.System { @@ -18,7 +16,7 @@ namespace ZR.Service.System { public SysOperLogRepository sysOperLogRepository; - public SysOperLogService(SysOperLogRepository sysOperLog) : base(sysOperLog) + public SysOperLogService(SysOperLogRepository sysOperLog) { sysOperLogRepository = sysOperLog; } diff --git a/ZR.Service/System/SysPostService.cs b/ZR.Service/System/SysPostService.cs index 0767784..a0abc0e 100644 --- a/ZR.Service/System/SysPostService.cs +++ b/ZR.Service/System/SysPostService.cs @@ -16,7 +16,7 @@ namespace ZR.Service.System public class SysPostService : BaseService, ISysPostService { public SysPostRepository PostRepository; - public SysPostService(SysPostRepository postRepository): base(postRepository) + public SysPostService(SysPostRepository postRepository) { PostRepository = postRepository; } @@ -50,5 +50,10 @@ namespace ZR.Service.System } return UserConstants.UNIQUE; } + + public List GetAll() + { + return PostRepository.GetAll(); + } } } diff --git a/ZR.Service/System/SysRoleService.cs b/ZR.Service/System/SysRoleService.cs index d387db1..74b705c 100644 --- a/ZR.Service/System/SysRoleService.cs +++ b/ZR.Service/System/SysRoleService.cs @@ -26,7 +26,7 @@ namespace ZR.Service public SysRoleService( SysRoleRepository sysRoleRepository, ISysUserRoleService sysUserRoleService, - ISysDeptService deptService) : base(sysRoleRepository) + ISysDeptService deptService) { SysRoleRepository = sysRoleRepository; SysUserRoleService = sysUserRoleService; diff --git a/ZR.Service/System/SysTasksQzService.cs b/ZR.Service/System/SysTasksQzService.cs index 17e6e85..ed72d3c 100644 --- a/ZR.Service/System/SysTasksQzService.cs +++ b/ZR.Service/System/SysTasksQzService.cs @@ -11,7 +11,7 @@ namespace ZR.Service.System [AppService(ServiceType = typeof(ISysTasksQzService), ServiceLifetime = LifeTime.Transient)] public class SysTasksQzService : BaseService, ISysTasksQzService { - public SysTasksQzService(SysTasksQzRepository repository) : base(repository) + public SysTasksQzService(SysTasksQzRepository repository) { } } diff --git a/ZR.Service/System/SysUserPostService.cs b/ZR.Service/System/SysUserPostService.cs index 7476d48..f7c9ac8 100644 --- a/ZR.Service/System/SysUserPostService.cs +++ b/ZR.Service/System/SysUserPostService.cs @@ -59,7 +59,7 @@ namespace ZR.Service.System return string.Join(',', list.Select(x => x.PostName)); } - public int Delete(long userId) + public bool Delete(long userId) { return UserPostRepository.Delete(x => x.UserId == userId); } diff --git a/ZR.Service/System/SysUserService.cs b/ZR.Service/System/SysUserService.cs index fa58abe..eb69b9f 100644 --- a/ZR.Service/System/SysUserService.cs +++ b/ZR.Service/System/SysUserService.cs @@ -25,7 +25,7 @@ namespace ZR.Service SysUserRepository userRepository, ISysRoleService sysRoleService, ISysUserRoleService userRoleService, - ISysUserPostService userPostService) : base(userRepository) + ISysUserPostService userPostService) { UserRepository = userRepository; RoleService = sysRoleService; diff --git a/ZR.Vue/src/views/system/role/index.vue b/ZR.Vue/src/views/system/role/index.vue index 6d3f553..aefbb47 100644 --- a/ZR.Vue/src/views/system/role/index.vue +++ b/ZR.Vue/src/views/system/role/index.vue @@ -65,6 +65,9 @@ + + + {{form.roleKey}} @@ -73,7 +76,7 @@ 全选/全不选 父子联动 + empty-text="加载中,请稍后" :filter-node-method="menuFilterNode" :props="defaultProps">