소스 검색

优化省份ID处理及相关注释

在 `EnterExitCostView.cs` 中添加了 `ProvinceId` 属性的中文注释并保留其定义。
在 `DelegationInfoRepository.cs` 中移除不必要的 `Console.WriteLine` 调用,简化 `parentId` 查找逻辑,并新增异步方法 `EnterExitCostGroupNameInfoAsync`,处理 `ProvinceId` 的默认值。
在 `EnterExitCostRepository.cs` 中修改构造函数以注入 `DelegationInfoRepository`,并在处理 `enterExitCostInfoView` 时调用新方法以确保 `ProvinceId` 的准确性。
LEIYI 1 개월 전
부모
커밋
9b3016cab9

+ 4 - 4
OASystem/OASystem.Domain/ViewModels/Groups/EnterExitCostView.cs

@@ -248,10 +248,10 @@ namespace OASystem.Domain.ViewModels.Groups
         /// </summary>
         /// </summary>
         public int Id { get; set; }
         public int Id { get; set; }
 
 
-        ///// <summary>
-        ///// 归属省份Id
-        ///// </summary>
-        //public int ProvinceId { get; set; }
+        /// <summary>
+        /// 归属省份Id
+        /// </summary>
+        public int ProvinceId { get; set; }
 
 
         /// <summary>
         /// <summary>
         /// 团组Id
         /// 团组Id

+ 59 - 8
OASystem/OASystem.Infrastructure/Repositories/Groups/DelegationInfoRepository.cs

@@ -1352,15 +1352,11 @@ ORDER BY
                     var isDefualtVal = true;
                     var isDefualtVal = true;
                     if (provinceId > 0)
                     if (provinceId > 0)
                     {
                     {
-                        Console.WriteLine(item.Id);
-                        if (item.Id == 2778)
+                        var parentId = FindParentIdByChildId(provCityDatas, provinceId);
+                        if (parentId != null)
                         {
                         {
-                            var parentId = FindParentIdByChildId(provCityDatas, provinceId);
-                            if (parentId != null)
-                            {
-                                isDefualtVal = false;
-                                item.ProvinceId = (int)parentId;
-                            }
+                            isDefualtVal = false;
+                            item.ProvinceId = (int)parentId;
                         }
                         }
                     }
                     }
 
 
@@ -1374,6 +1370,61 @@ ORDER BY
             return groupDatas;
             return groupDatas;
         }
         }
 
 
+        /// <summary>
+        /// 获取单组名称并验证出入境费用明细是否填写
+        /// </summary>
+        /// <param name="dto"></param>
+        /// <returns></returns>
+        public async Task<EnterExitCostGroupNameView> EnterExitCostGroupNameInfoAsync(int groupId)
+        {
+            var groupSql = string.Format(@$"SELECT
+  Id,
+  TeamName GroupName,
+  CityId ProvinceId,
+  CASE
+    WHEN (
+      SELECT
+        COUNT(*)
+      FROM
+        Grp_EnterExitCost
+      WHERE
+        IsDel = 0
+        AND DiId = di.Id
+    ) > 0 THEN 'false'
+    ELSE 'true'
+  END AS [IsNull]
+FROM
+  Grp_DelegationInfo di
+WHERE
+  di.Isdel = 0
+  And Id = {0} ", groupId);
+
+            var groupData = await _sqlSugar.SqlQueryable<EnterExitCostGroupNameView>(groupSql).FirstAsync();
+            var provCityDatas = await ProvinceCityBasicSource();
+            if (provCityDatas.Any() && groupData != null)
+            {
+                var provinceId = groupData.ProvinceId;
+                var isDefualtVal = true;
+                if (provinceId > 0)
+                {
+                    var parentId = FindParentIdByChildId(provCityDatas, provinceId);
+                    if (parentId != null)
+                    {
+                        isDefualtVal = false;
+                        groupData.ProvinceId = (int)parentId;
+                    }
+                }
+
+                if (isDefualtVal)
+                {
+                    groupData.ProvinceId = 122; //默认四川
+                }
+            }
+
+            return groupData;
+        }
+
+
         /// <summary>
         /// <summary>
         /// 递归地遍历树状结构,查找子项的父类 Id。
         /// 递归地遍历树状结构,查找子项的父类 Id。
         /// </summary>
         /// </summary>

+ 13 - 2
OASystem/OASystem.Infrastructure/Repositories/Groups/EnterExitCostRepository.cs

@@ -26,12 +26,14 @@ namespace OASystem.Infrastructure.Repositories.Groups
     {
     {
         private readonly IMapper _mapper;
         private readonly IMapper _mapper;
         private readonly SetDataRepository _setDataRep;
         private readonly SetDataRepository _setDataRep;
+        private readonly DelegationInfoRepository _groupRep;
 
 
-        public EnterExitCostRepository(SqlSugarClient sqlSugar, IMapper mapper, SetDataRepository setDataRep)
+        public EnterExitCostRepository(SqlSugarClient sqlSugar, IMapper mapper, SetDataRepository setDataRep, DelegationInfoRepository groupRep)
             : base(sqlSugar)
             : base(sqlSugar)
         {
         {
             _setDataRep = setDataRep;
             _setDataRep = setDataRep;
-            _mapper = mapper;
+            _mapper = mapper; 
+            _groupRep = groupRep;
         }
         }
 
 
         /// <summary>
         /// <summary>
@@ -295,6 +297,15 @@ namespace OASystem.Infrastructure.Repositories.Groups
                             .ToArrayAsync();
                             .ToArrayAsync();
                     }
                     }
 
 
+                    int provinceId = 122;
+                    var groupNames = await _groupRep.EnterExitCostGroupNameInfoAsync(dto.DiId);
+                    if (groupNames!=null)
+                    {
+                        provinceId = groupNames.ProvinceId;
+                    }
+                    enterExitCostInfoView.ProvinceId = provinceId;
+
+
                     //enterExitCostInfoView.FirstItemRemark = enterExitCostData.Remark;
                     //enterExitCostInfoView.FirstItemRemark = enterExitCostData.Remark;
                     var dayAndCostSql = string.Format(@"Select ntf.Country,ntf.City,ssd.Name CurremcyCode,ssd.Remark CurrencyName,gdac.* From Grp_DayAndCost gdac
                     var dayAndCostSql = string.Format(@"Select ntf.Country,ntf.City,ssd.Name CurremcyCode,ssd.Remark CurrencyName,gdac.* From Grp_DayAndCost gdac
                                                         Left Join Grp_NationalTravelFee ntf On ntf.Id = gdac.NationalTravelFeeId
                                                         Left Join Grp_NationalTravelFee ntf On ntf.Id = gdac.NationalTravelFeeId