Просмотр исходного кода

1、酒店费用录入 -> “编辑” 去掉"审核、付款"验证。
2、付款申请 -> 新增背景颜色逻辑:其他款项(98)、 团组类型为“会务、赛事”,手动审核的数据显示背景颜色。
3、日付报表 -> 筛选选项新增“各部门基础固定费用明细、团组费用、物资采购”类型。

Lyyyi 1 день назад
Родитель
Сommit
959e6396e8

+ 34 - 15
OASystem/OASystem.Api/Controllers/FinancialController.cs

@@ -3893,13 +3893,13 @@ namespace OASystem.API.Controllers
                             string airPayType = setDatas.Find(it => it.Id == payInfo.PayDId)?.Name ?? "-";
                             priName = $"{flightsCode}【{airPayType}】";
                             break;
-                        case 98:  //  98	其他款项
+                        case 98:  //  98 其他款项
                             priName = $"[费用名称:{otherMoneyDatas.Find(it => payInfo.DIId == it.DiId && payInfo.CId == it.Id)?.PriceName ?? " -"}]";
                             break;
                         case 285:  //  285 收款退还
                             priName = $"[费用名称:{refundPaymentDatas.Find(it => payInfo.DIId == it.DiId && payInfo.CId == it.Id)?.PriceName ?? " -"}]";
                             break;
-                        case 1015:  //  1015	超支费用
+                        case 1015:  //  1015 超支费用
                             priName = $"[费用名称:{ExtraCostDatas.Find(it => payInfo.DIId == it.DiId && payInfo.CId == it.Id)?.PriceName ?? " -"}]";
                             break;
                         default:
@@ -3958,7 +3958,7 @@ namespace OASystem.API.Controllers
                                 PayRate = hotelContent.Rate,
                                 CNYSubTotalAmount = _CNYSubTotalAmount1,
                                 AuditStatus = payInfo.IsAuditGM,
-                                IsBgColorShown = Setting_IsBgColorShown(payInfo.CTable, payInfo.IsAuditGM)
+                                IsBgColorShown = ShouldShowBackgroundColor(payInfo.CTable, payInfo.IsAuditGM,groupInfo.TeamDid)
                             };
                             string remaksDescription1 = $"【{childInfo1.PayType}】【{childInfo1.ModuleName}】{rouNumber}、[申请人:{childInfo1.Applicant}]{subPriceName}[收款方:{childInfo1.Payee}] {childInfo1.PayCurrCode} {_PaymentAmount1:#0.00}、CNY:{childInfo1.CNYSubTotalAmount:#0.00}(团组:{groupInfo.TeamName})";
 
@@ -4006,7 +4006,7 @@ namespace OASystem.API.Controllers
                             PayRate = payInfo.DayRate,
                             CNYSubTotalAmount = _CNYSubTotalAmount,
                             AuditStatus = payInfo.IsAuditGM,
-                            IsBgColorShown = Setting_IsBgColorShown(payInfo.CTable, payInfo.IsAuditGM)
+                            IsBgColorShown = ShouldShowBackgroundColor(payInfo.CTable, payInfo.IsAuditGM,groupInfo.TeamDid)
                         };
 
                         string remaksDescription = $"【{childInfo.PayType}】【{childInfo.ModuleName}】{rouNumber}、[申请人:{childInfo.Applicant}]{priName}[收款方:{childInfo.Payee}] {childInfo.PayCurrCode} {_PaymentAmount:#0.00}、CNY:{childInfo.CNYSubTotalAmount:#0.00}(团组:{groupInfo.TeamName})";
@@ -4034,22 +4034,41 @@ namespace OASystem.API.Controllers
         }
 
         /// <summary>
-        /// 设置背景颜色显示与否
-        /// 费用类型限制:76-酒店预订、79-车/导游地接、85-机票预订
+        /// 判断是否显示背景颜色
+        /// 费用类型限制:76-酒店预订、79-车/导游地接、85-机票预订、98-其他款项(团组类型为会务、高校)
         /// </summary>
-        /// <param name="cType"></param>
-        /// <param name="auditStatus"></param>
-        /// <returns></returns>
-        private static bool Setting_IsBgColorShown(int cType, int auditStatus)
+        /// <param name="costType">费用类型</param>
+        /// <param name="auditStatus">审核状态</param>
+        /// <param name="groupType">团组类型</param>
+        /// <returns>是否显示背景颜色</returns>
+        private static bool ShouldShowBackgroundColor(int costType, int auditStatus, int groupType)
         {
-            //费用类型限制
-            var types = new List<int>() { 76, 79, 85, };
+            // 定义允许的费用类型集合
+            var allowedCostTypes = new HashSet<int> { 76, 79, 85, 98 };
 
-            if (types.Contains(cType) && auditStatus == 1)
+            // 基本条件检查
+            if (!allowedCostTypes.Contains(costType) || auditStatus != 1)
             {
-                return true;
+                return false;
             }
-            return false;
+
+            // 特殊处理:费用类型98需要检查团组类型
+            if (costType == 98)
+            {
+                // 定义允许的团组类型集合
+                var allowedGroupTypes = new HashSet<int>
+                {
+                    302,  // 成都-会务活动
+                    691,  // 四川-会务活动
+                    762,  // 四川-赛事项目收入
+                    1047, // 成都-赛事项目收入
+                };
+
+                return allowedGroupTypes.Contains(groupType);
+            }
+
+            // 其他允许的费用类型直接返回true
+            return true;
         }
 
         /// <summary>

+ 6 - 6
OASystem/OASystem.Api/Controllers/GroupsController.cs

@@ -26436,12 +26436,12 @@ AirHotelPrice
 
             #endregion
 
-            //验证 
-            if (_dto.Id > 0)
-            {
-                (bool valid, string msg) = await GeneralMethod.FeeOpValid(_dto.Id, 76);
-                if (!valid) return Ok(JsonView(false, msg));
-            }
+            ////验证 
+            //if (_dto.Id > 0)
+            //{
+            //    (bool valid, string msg) = await GeneralMethod.FeeOpValid(_dto.Id, 76);
+            //    if (!valid) return Ok(JsonView(false, msg));
+            //}
 
             JsonView _view = await _hotelPriceRep.AddOrEdit(_dto);
             if (_view.Code != 200)