From 3ad8babb3a5929eadc18d3518563b6355a800681 Mon Sep 17 00:00:00 2001 From: 移动系统liao <liaoxujun@qq.com> Date: 星期四, 07 八月 2025 12:59:24 +0800 Subject: [PATCH] no message --- Admin.NET/FZCTB.NET.API.Application/User/CustomerService.cs | 137 ++++++++++++++++++++++++++++++++++++++++----- 1 files changed, 121 insertions(+), 16 deletions(-) diff --git a/Admin.NET/FZCTB.NET.API.Application/User/CustomerService.cs b/Admin.NET/FZCTB.NET.API.Application/User/CustomerService.cs index de4747c..9635626 100644 --- a/Admin.NET/FZCTB.NET.API.Application/User/CustomerService.cs +++ b/Admin.NET/FZCTB.NET.API.Application/User/CustomerService.cs @@ -6,6 +6,7 @@ using Admin.NET.Core; using Admin.NET.Core.Service; +using Dm.util; using Furion; using Furion.DynamicApiController; using Furion.FriendlyException; @@ -39,25 +40,31 @@ private readonly SysCacheService _sysCacheService; private readonly SqlSugarRepository<FBS_ExRole> _fBS_ExRoleRep; - + private readonly SqlSugarRepository<FBS_CoutomerExRole> _fBS_CustomerExRoleRep; private readonly SqlSugarRepository<FBS_EnterpriseType> _fBS_EnterpriseTypeRep; private readonly SqlSugarRepository<FBS_Customer> _fBS_CustomerRep; /// <summary> /// 鐢ㄦ埛鎵╁睍 /// </summary> private readonly SqlSugarRepository<FBS_CusExtend> _fBS_CusExtendRep; + private IMapper _mapper; /// <summary> /// /// </summary> public CustomerService(SysCacheService cacheService, CustomerManagerS managerS,SqlSugarRepository<FBS_Customer> repository - , SqlSugarRepository<FBS_EnterpriseType> fbsenrep,IMapper mapper ) + , SqlSugarRepository<FBS_EnterpriseType> fbsenrep,IMapper mapper,SqlSugarRepository<FBS_ExRole> exroles , + SqlSugarRepository<FBS_CusExtend> cusrep, + SqlSugarRepository<FBS_CoutomerExRole> cexrrep) { _sysCacheService= cacheService; _customerManager = managerS; _fBS_CustomerRep = repository; _fBS_EnterpriseTypeRep = fbsenrep; + _fBS_ExRoleRep = exroles; + _fBS_CusExtendRep = cusrep; _mapper = mapper; + _fBS_CustomerExRoleRep = cexrrep; } /// <summary> @@ -109,15 +116,26 @@ dd.CreateTime = DateTime.Now; dd.CreateUserId = 0; dd.CreateUserName = dd.NickName; - dd.CoutomerExRols = new List<FBS_CoutomerExRole>() + if(dd.CoutomerExRols==null) + { + new List<FBS_CoutomerExRole>() { new FBS_CoutomerExRole { ExRoleId= ExRole?.Id??0 - - + + } }; + } + else + { + dd.CoutomerExRols.add(new FBS_CoutomerExRole + { + ExRoleId = ExRole?.Id ?? 0 + }); + } + @@ -144,7 +162,7 @@ [AllowAnonymous] public async Task<List<EnterpriseTypeVM>> EnterpriseTypes() { - return await _fBS_EnterpriseTypeRep.AsQueryable().Select<EnterpriseTypeVM>().ToTreeAsync(x=>x.Child,x=>x.ParentId,null,x=>x.Id); + return await _fBS_EnterpriseTypeRep.AsQueryable().Select<EnterpriseTypeVM>().ToTreeAsync(x=>x.Child,x=>x.ParentId,0,x=>x.Id); } /// <summary> @@ -166,18 +184,42 @@ { throw Oops.Oh("鐢ㄦ埛涓嶅瓨鍦�"); } + var rols= await _fBS_ExRoleRep.GetFirstAsync(x => x.Code == cusExtend.TransactionCode && x.Status == StatusEnum.Enable); if(rols==null) { throw Oops.Oh("浜ゆ槗涓讳綋涓嶅瓨鍦�"); } - - if(user.CoutomerExRols.Any(x=>x.ExRole.Code==cusExtend.TransactionCode&& x.HasFlsh==true)) + var ExRoles = await _fBS_CustomerExRoleRep.GetListAsync(x => x.CustomerId == id); + if (ExRoles != null) { - throw Oops.Oh("鐢ㄦ埛宸茬粡娉ㄥ唽浜嗚涓讳綋"); + if (ExRoles?.Any(x => x.ExRoleId == rols.Id && x.HasFlsh == true) == true) + { + throw Oops.Oh("鐢ㄦ埛宸茬粡娉ㄥ唽浜嗚涓讳綋"); + } + } - + //澧炲姞鐢ㄦ埛瑙掕壊 + await _fBS_CustomerExRoleRep.InsertAsync(new FBS_CoutomerExRole + { + ExRoleId = rols.Id, + CustomerId = id + }); + + + var usdata = await _fBS_CusExtendRep.GetFirstAsync(x => x.CustomerId == id&&x.TransactionCode==cusExtend.TransactionCode); + + if (usdata!=null) + { + if (usdata.steps == CusExtendStep.Pass) + { + throw Oops.Oh("鐢ㄦ埛宸茬粡娉ㄥ唽浜嗚涓讳綋"); + + } + throw Oops.Oh("鐢ㄦ埛宸茬粡鐢宠浜嗚瑙掕壊锛岃璧颁慨鏀规祦绋�"); + } + var data= cusExtend.Adapt<FBS_CusExtend>(); data.steps = CusExtendStep.UNExamine; @@ -268,7 +310,11 @@ throw Oops.Oh("娌℃湁瀹屾垚淇℃伅褰曞叆"); } - + bool isChangeData = false; + if (tab.steps== CusExtendStep.Change) + { + isChangeData = true; + } @@ -291,20 +337,37 @@ tab.RegisteredCapital = tab.RegisteredCapital; tab.Residence = tab.Residence; tab.MainBusiness = InParam.MainBusiness; - tab.EnterpriseType = InParam.EnterpriseType; + tab.EnterpriseName = InParam.EnterpriseName; tab.BusinessLicense = InParam.BusinessLicense; //閲嶆柊瀹℃牳? tab.steps = CusExtendStep.Change; } - + if (tab.EnterpriseType != InParam.EnterpriseType) + { + tab.EnterpriseType = InParam.EnterpriseType; + tab.steps = CusExtendStep.Change; + } //鑱旂郴鐢佃瘽 tab.EnterprisePhone = InParam.EnterprisePhone; tab.EnterpriseEmail = InParam.EnterpriseEmail; + + if (tab.BankAccount != InParam.BankAccount) + { + //鑱旂郴鐢佃瘽 + tab.BankAccount = InParam.BankAccount; + tab.steps = CusExtendStep.Change; + + } + if (tab.BankName != InParam.BankName) + { + tab.BankName = InParam.BankName; + tab.steps = CusExtendStep.Change; + } //閾惰鏄惁闇�瑕佷慨鏀� - tab.BankAccount = InParam.BankAccount; - tab.BankName = InParam.BankName; + //tab.BankAccount = InParam.BankAccount; + //tab.BankName = InParam.BankName; // 缁忓姙浜� if (tab.OperatorIdCard != InParam.OperatorIdCard) @@ -316,7 +379,49 @@ tab.OperatorPhone = InParam.OperatorPhone; } - return await _fBS_CusExtendRep.UpdateAsync(tab); + + await _fBS_CusExtendRep.AsTenant().BeginTranAsync(); + try + { + if((!isChangeData)&&tab.steps== CusExtendStep.Change) + { + //鏄洿鏀癸紝闇�瑕佸伐鏀筩er鐨勫�� + var exrolerep= await _fBS_CustomerExRoleRep.GetFirstAsync(x=>x.ExRoleId== rols.Id&&x.CustomerId==tab.CustomerId); + if(exrolerep!=null) + { + if (exrolerep.HasFlsh != false) + { + exrolerep.HasFlsh = false; + + //鏀瑰彉鐘舵�� + await _fBS_CustomerExRoleRep.UpdateAsync(exrolerep); + }; + + + } + else + { + await _fBS_CustomerExRoleRep.InsertAsync(new FBS_CoutomerExRole + { + CustomerId = tab.CustomerId, + ExRoleId = rols.Id, + HasFlsh = false + + }); + } + + } + await _fBS_CusExtendRep.UpdateAsync(tab); + await _fBS_CusExtendRep.AsTenant().CommitTranAsync(); + + } + catch (Exception) + { + await _fBS_CusExtendRep.AsTenant().RollbackTranAsync(); + throw; + } + + return true; } -- Gitblit v1.9.1