From 18d1f45193e34e00fc1b6f65b8596ddb29c5267d Mon Sep 17 00:00:00 2001 From: dengjunjie <dengjunjie@hnkhzn.com> Date: 星期二, 24 十二月 2024 15:32:43 +0800 Subject: [PATCH] Merge branch 'master' of http://115.159.85.185:8098/r/MeiRuiAn/HuaiAn --- 代码管理/WMS/WIDESEA_WMSServer/WIDESEA_Core/BaseRepository/RepositoryBase.cs | 77 ++++++++++++++++++++------------------ 1 files changed, 41 insertions(+), 36 deletions(-) diff --git "a/\344\273\243\347\240\201\347\256\241\347\220\206/WMS/WIDESEA_WMSServer/WIDESEA_Core/BaseRepository/RepositoryBase.cs" "b/\344\273\243\347\240\201\347\256\241\347\220\206/WMS/WIDESEA_WMSServer/WIDESEA_Core/BaseRepository/RepositoryBase.cs" index e974d51..fed318a 100644 --- "a/\344\273\243\347\240\201\347\256\241\347\220\206/WMS/WIDESEA_WMSServer/WIDESEA_Core/BaseRepository/RepositoryBase.cs" +++ "b/\344\273\243\347\240\201\347\256\241\347\220\206/WMS/WIDESEA_WMSServer/WIDESEA_Core/BaseRepository/RepositoryBase.cs" @@ -36,38 +36,38 @@ ISqlSugarClient db = _dbBase; //澶氱鎴� - var mta = typeof(TEntity).GetCustomAttribute<MultiTenantAttribute>(); - if (mta is { TenantType: TenantTypeEnum.Db }) - { - //鑾峰彇绉熸埛淇℃伅 绉熸埛淇℃伅鍙互鎻愬墠缂撳瓨涓嬫潵 - if (App.User is { TenantId: > 0 }) - { - dynamic tenant = db.Queryable(MainDb.TenantTableName, "x").Where(MainDb.TenantId, "=", App.User.TenantId).First(); - if (tenant != null) - { - var iTenant = db.AsTenant(); - if (!iTenant.IsAnyConnection(tenant.TenantId)) - { - string conStr = tenant.ConnectionString; - ConnectionConfig connectionConfig = new ConnectionConfig() - { - ConfigId = tenant.TenantId, - ConnectionString = conStr.DecryptDES(AppSecret.DB), - DbType = (SqlSugar.DbType)tenant.DbType, - IsAutoCloseConnection = true, - AopEvents = new AopEvents() - { - DataExecuting = SqlSugarAop.DataExecuting, + //var mta = typeof(TEntity).GetCustomAttribute<MultiTenantAttribute>(); + //if (mta is { TenantType: TenantTypeEnum.Db }) + //{ + // //鑾峰彇绉熸埛淇℃伅 绉熸埛淇℃伅鍙互鎻愬墠缂撳瓨涓嬫潵 + // if (App.User is { TenantId: > 0 }) + // { + // dynamic tenant = db.Queryable(MainDb.TenantTableName, "x").Where(MainDb.TenantId, "=", App.User.TenantId).First(); + // if (tenant != null) + // { + // var iTenant = db.AsTenant(); + // if (!iTenant.IsAnyConnection(tenant.TenantId)) + // { + // string conStr = tenant.ConnectionString; + // ConnectionConfig connectionConfig = new ConnectionConfig() + // { + // ConfigId = tenant.TenantId, + // ConnectionString = conStr.DecryptDES(AppSecret.DB), + // DbType = (SqlSugar.DbType)tenant.DbType, + // IsAutoCloseConnection = true, + // AopEvents = new AopEvents() + // { + // DataExecuting = SqlSugarAop.DataExecuting, - } - }; - iTenant.AddConnection(connectionConfig); - } + // } + // }; + // iTenant.AddConnection(connectionConfig); + // } - return iTenant.GetConnection(tenant.TenantId); - } - } - } + // return iTenant.GetConnection(tenant.TenantId); + // } + // } + //} return db; } @@ -122,6 +122,11 @@ { IInsertable<TEntity> insert = _db.Insertable(entity); return insert.ExecuteReturnIdentity(); + } + + public virtual bool AddData<TChild>(TEntity entity, Expression<Func<TEntity, List<TChild>>> expression) where TChild : class, new() + { + return _db.InsertNav(entity).Include(expression).ExecuteCommand(); } /// <summary> @@ -864,7 +869,7 @@ .WhereIF(whereExpression != null, whereExpression).ToListAsync(); } - public bool DeleteAndMoveIntoHty(TEntity entity, OperateType operateType) + public bool DeleteAndMoveIntoHty(TEntity entity, OperateTypeEnum operateType) { Type type = entity.GetType(); Assembly assembly = type.Assembly; @@ -873,8 +878,8 @@ { object? obj = Activator.CreateInstance(htyType); PropertyInfo keyPro = typeof(TEntity).GetKeyProperty(); - PropertyInfo? operateTypePro = htyType.GetProperty(nameof(OperateType)); - PropertyInfo? sourceIdPro = htyType.GetProperty("SourceId"); + PropertyInfo? operateTypePro = htyType.GetProperty(nameof(IBaseHistoryEntity.OperateType)); + PropertyInfo? sourceIdPro = htyType.GetProperty(nameof(IBaseHistoryEntity.SourceId)); if (obj != null && keyPro != null && operateTypePro != null && sourceIdPro != null) { operateTypePro.SetValue(obj, operateType.ToString()); @@ -909,7 +914,7 @@ return DeleteData(entity); } - public bool DeleteAndMoveIntoHty(List<TEntity> entities, OperateType operateType) + public bool DeleteAndMoveIntoHty(List<TEntity> entities, OperateTypeEnum operateType) { Type type = typeof(TEntity); Assembly assembly = type.Assembly; @@ -918,8 +923,8 @@ { object? obj2 = Activator.CreateInstance(htyType); PropertyInfo keyPro = typeof(TEntity).GetKeyProperty(); - PropertyInfo? operateTypePro = htyType.GetProperty(nameof(OperateType)); - PropertyInfo? sourceIdPro = htyType.GetProperty("SourceId"); + PropertyInfo? operateTypePro = htyType.GetProperty(nameof(IBaseHistoryEntity.OperateType)); + PropertyInfo? sourceIdPro = htyType.GetProperty(nameof(IBaseHistoryEntity.SourceId)); if (obj2 != null && keyPro != null && operateTypePro != null && sourceIdPro != null) { List<PropertyInfo> propertyInfos = htyType.GetProperties().Where(x => x.Name != operateTypePro.Name && x.Name != sourceIdPro.Name && x.Name != keyPro.Name).ToList(); -- Gitblit v1.9.3