Browse Source

优化团组信息查询及审核逻辑

在 `PersonnelModuleController.cs` 中,添加了团组信息的异步查询逻辑,以支持出库成功时向团组其他款项添加信息,并移除了不必要的推送通知代码。

在 `FeeAuditRepository.cs` 中,重构了团组成本信息的查询逻辑,添加了币种验证,确保统一为三字码格式,同时简化了撤销审核的查询条件。
LEIYI 1 week ago
parent
commit
3c7c5ca35f

+ 1 - 1
OASystem/OASystem.Api/Controllers/PersonnelModuleController.cs

@@ -2433,6 +2433,7 @@ WHERE
 
             //if (!auditEnums.Contains(receiveInfo.AuditStatus)) return Ok(view);
 
+
             var groupInfo = await _sqlSugar.Queryable<Grp_DelegationInfo>().FirstAsync(x => x.IsDel == 0 && x.Id == receiveInfo.GroupId);
             if (groupInfo == null) return Ok(view);
 
@@ -2544,7 +2545,6 @@ WHERE
 
             #endregion
             #endregion
-
             #endregion
 
             return Ok(view);

+ 15 - 10
OASystem/OASystem.Infrastructure/Repositories/Groups/FeeAuditRepository.cs

@@ -53,14 +53,10 @@ namespace OASystem.Infrastructure.Repositories.Groups
             var stids = new List<int>() { 17, 66, 91 };
             var setData = _sqlSugar.Queryable<Sys_SetData>().Where(x => x.IsDel == 0 && stids.Contains(x.STid)).ToList();
 
-            var groupInfo = _sqlSugar.Queryable<Grp_GroupCostParameter>().Where(x => x.IsDel == 0 && x.DiId == diId).First();
-            if (groupInfo == null) { _view.Msg = $"团组成本信息未填写!"; return _view; }
-            string _teamCurrency = groupInfo.Currency;
-            decimal _teamRate = groupInfo.Rate;
-
-            //币种验证  统一为currencycode三字码
-            if (int.TryParse(_teamCurrency, out int currency)) _teamCurrency = setData.Find(x => x.Id == currency)?.Name ?? "";
-
+            var groupInfo = new Grp_GroupCostParameter();
+            string _teamCurrency = string.Empty;
+            decimal _teamRate = 1.0000M;
+            
             var costContents = new List<GroupCostAuditView>();
             var subFeeTypeIds = new int[] { 
                 4, // 保险 82
@@ -68,6 +64,15 @@ namespace OASystem.Infrastructure.Repositories.Groups
             };
             if (!subFeeTypeIds.Contains(feeType))
             {
+                groupInfo = _sqlSugar.Queryable<Grp_GroupCostParameter>().Where(x => x.IsDel == 0 && x.DiId == diId).First();
+                if (groupInfo == null) { _view.Msg = $"团组成本信息未填写!"; return _view; }
+                _teamCurrency = groupInfo.Currency;
+                _teamRate = groupInfo.Rate;
+
+                //币种验证  统一为currencycode三字码
+                if (int.TryParse(_teamCurrency, out int currency)) _teamCurrency = setData.Find(x => x.Id == currency)?.Name ?? "";
+
+
                 string costContentSql = $"Select * From Grp_GroupCost";
                 costContents = _sqlSugar.SqlQueryable<GroupCostAuditView>(costContentSql).Where(x => x.IsDel == 0 && x.Diid == diId).ToList();
 
@@ -778,8 +783,8 @@ namespace OASystem.Infrastructure.Repositories.Groups
         {
             //撤销该条数据的自动审核 --> 该条数据的审核状态是自动审核  3 --> 0
             var ccpInfo = _sqlSugar.Queryable<Grp_CreditCardPayment>()
-                                   .Where(s => s.DIId == diId && s.CTable == type && s.CId == dataId && s.IsAuditGM == 3)
-                                   .First();
+                .Where(s => s.DIId == diId && s.CTable == type && s.CId == dataId && s.IsAuditGM == 3)
+                .First();
             if (ccpInfo != null)
             {
                 var ccpUpdate = _sqlSugar.Updateable<Grp_CreditCardPayment>()