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

团组成本
各模块成本Tips

leiy 1 год назад
Родитель
Сommit
afb69c81e3

+ 48 - 12
OASystem/OASystem.Api/Controllers/GroupsController.cs

@@ -54,6 +54,10 @@ using OASystem.API.OAMethodLib.Hub.Hubs;
 using System.Collections.Generic;
 using OASystem.API.OAMethodLib.JuHeAPI;
 using static Microsoft.EntityFrameworkCore.DbLoggerCategory;
+using SixLabors.Fonts.Tables.AdvancedTypographic;
+using Microsoft.EntityFrameworkCore;
+using System.Security.Cryptography.Xml;
+using MathNet.Numerics;
 
 namespace OASystem.API.Controllers
 {
@@ -4194,7 +4198,6 @@ namespace OASystem.API.Controllers
             return Ok(jw);
         }
 
-
         /// <summary>
         /// 导游数据
         /// </summary>
@@ -4242,7 +4245,6 @@ namespace OASystem.API.Controllers
             return Ok(JsonView(true, "获取成功!", Data));
         }
 
-
         /// <summary>
         /// 成本通知
         /// </summary>
@@ -5698,9 +5700,9 @@ namespace OASystem.API.Controllers
                 List<int> cTableIds = new List<int>() {
                     76    ,//酒店预订
                     77    ,//行程
-                    79    ,//车 / 导游地接
+                    79    ,//车/导游地接
                     80    ,//签证
-                    81    ,//邀请 / 公务活
+                    81    ,//邀请/公务活
                     82    ,//团组客户保险
                     85    ,//机票预订
                     98    ,//其他款项
@@ -5750,6 +5752,7 @@ namespace OASystem.API.Controllers
                     Rate = _GroupCostParameters[0].Rate
                 };
 
+                decimal _rate = 0.00M;
                 List<GroupCostModulePromptInfo> _ModulePromptInfos = new List<GroupCostModulePromptInfo>();
                 foreach (var item in _GroupCostParameters)
                 {
@@ -5758,9 +5761,12 @@ namespace OASystem.API.Controllers
                         CostType = item.CostType,
                         CostTypeStartTime = Convert.ToDateTime(item.CostTypeStartTime).ToString("yyyy-MM-dd"),
                         CostTypeEndTime = Convert.ToDateTime(item.CostTypeendTime).ToString("yyyy-MM-dd"),
-                        CostTypeNumber = item.CostTypenumber
+                        CostTypeNumber = item.CostTypenumber,
+                        IndividualCost = item.DJCB / item.CostTypenumber,
+                        TotlaCost = item.DJCB
                     };
 
+                    _rate = item.Rate;
                     List<string> costTypes = new List<string>() { "A","B" };
 
                     List<Grp_GroupCost> _GroupCostsTypeData = new List<Grp_GroupCost>();
@@ -5768,6 +5774,7 @@ namespace OASystem.API.Controllers
                     if (_GroupCostsDuplicates.Count() == 1)
                     {
                         _GroupCostsTypeData = _GroupCosts;
+                        
                     }
                     else
                     {
@@ -5808,18 +5815,47 @@ namespace OASystem.API.Controllers
                             );
                             break;
                         case 79: // 车/导游地接
+                            decimal _scale = 0.95M;
+                            #region 总经理 国交部经理 主管 不下调 其他人 下调 5%
+                            var userInfo = _usersRep._sqlSugar.Queryable<Sys_Users>().Where(it => it.IsDel == 0 && it.Id == dto.UserId).First();
+                            if (userInfo != null)
+                            {
+                                if (userInfo.DepId == 1 || userInfo.DepId == 7)
+                                {
+                                    if (userInfo.JobPostId == 1 || userInfo.JobPostId == 22 || userInfo.JobPostId == 32)
+                                    {
+                                        _scale = 1.00M;
+                                    }
+                                }
+                            }
+                            #endregion
+
                             datas.AddRange(
                                 _GroupCostsTypeData.Select(it => new
                                 {
-                                    it.Date,
-                                    it.CarCost,
-                                    it.TGS,
-                                    it.SGR,
-                                    it.TBR,
-                                    it.JS_ES,
-                                    it.Suite
+                                    Date = it.Date,
+                                    CarFee = (it.CarCost + it.CFM + it.CFOF) * _rate * _scale,
+                                    GuideFee = (it.TGS + it.TGOF + it.TGM+ it.TGA + it.TGTF + it.TGEF) * _rate * _scale,
+                                    MealFee = (it.B + it.L + it.D) * _rate * _scale,
+                                    TicketFee = it.EF * _rate * _scale,
+                                    TipFee = (it.TGTips + it.DRVTips) * _rate * _scale,
+                                    AirportTransferFee = 0.00M,
+                                    DrinksSnacksFruitFee = it.B_R_F * _rate * _scale,
+                                    TravelSupplies = it.TE * _rate * _scale,
+                                    LeadersFee = it.TLF * _rate * _scale,
                                 })
                             );
+
+                            break;
+                        case 85: // 机票
+                           
+                            datas.AddRange(
+                                _GroupCostsTypeData.Select(it => new
+                                {
+                                   
+                                })
+                            );
+
                             break;
                         default:
                             break;

+ 1 - 0
OASystem/OASystem.Domain/Dtos/Groups/GroupCostSavaDto.cs

@@ -1309,6 +1309,7 @@ namespace OASystem.Domain.Dtos.Groups
 
     public class GroupCostModulePromptDto
     {
+        public int UserId { get; set; }
         public int DiId { get; set; }
 
         /// <summary>

+ 10 - 0
OASystem/OASystem.Domain/ViewModels/Groups/GroupCostParameterView.cs

@@ -38,6 +38,16 @@ namespace OASystem.Domain.ViewModels.Groups
         public string CostTypeEndTime { get; set; }
         public int CostTypeNumber { get; set; }
 
+        /// <summary>
+        /// 单人成本
+        /// </summary>
+        public decimal IndividualCost { get; set; }
+
+        /// <summary>
+        /// 总成本
+        /// </summary>
+        public decimal TotlaCost { get; set; }
+
         public object Data { get; set; }
     }
 }

+ 11 - 0
OASystem/OASystem.Infrastructure/Repositories/Groups/InvitationOfficialActivitiesRepository.cs

@@ -58,6 +58,16 @@ namespace OASystem.Infrastructure.Repositories.Groups
                         invitation.ConsumptionPatterns = grp_CreditCard.ConsumptionPatterns;
                         invitation.ConsumptionDate = grp_CreditCard.ConsumptionDate;
                         invitation.PayDId = grp_CreditCard.PayDId;
+                        invitation.ConsumptionPatterns = grp_CreditCard.ConsumptionPatterns;
+                        invitation.ConsumptionDate = grp_CreditCard.ConsumptionDate;
+                        invitation.BankNo = grp_CreditCard.BankNo;
+                        invitation.CardholderName = grp_CreditCard.CardholderName;
+                        invitation.CompanyBankNo = grp_CreditCard.CompanyBankNo;
+                        invitation.OtherBankName = grp_CreditCard.OtherBankName;
+                        invitation.OtherSideNo = grp_CreditCard.OtherSideNo;
+                        invitation.OtherSideName = grp_CreditCard.OtherSideName;
+                        invitation.PayMoney = grp_CreditCard.PayMoney;
+                        invitation.PaymentCurrency = grp_CreditCard.PaymentCurrency;
                         invitation.OrbitalPrivateTransfer = grp_CreditCard.OrbitalPrivateTransfer;
                         invitation.Payee = grp_CreditCard.Payee;
                         invitation.Address = res_InvitationOfficialActivityData.Address;
@@ -469,6 +479,7 @@ namespace OASystem.Infrastructure.Repositories.Groups
                                                         {
                                                             ConsumptionPatterns = dto.ConsumptionPatterns,
                                                             ConsumptionDate = dto.ConsumptionDate,
+                                                            PayDId = dto.PayDId,
                                                             CTDId = dto.CTDId,
                                                             BankNo = dto.BankNo,
                                                             CardholderName = dto.CardholderName,