Преглед изворни кода

Merge branch 'develop' of http://132.232.92.186:3000/XinXiBu/OA2023 into develop

yuanrf пре 1 година
родитељ
комит
5f40782ea3
20 измењених фајлова са 749 додато и 300 уклоњено
  1. 0 1
      OASystem/OASystem.Api/Controllers/AuthController.cs
  2. 93 12
      OASystem/OASystem.Api/Controllers/FinancialController.cs
  3. 219 105
      OASystem/OASystem.Api/Controllers/GroupsController.cs
  4. 6 7
      OASystem/OASystem.Api/Controllers/PersonnelModuleController.cs
  5. 26 20
      OASystem/OASystem.Api/Controllers/SystemController.cs
  6. 118 4
      OASystem/OASystem.Api/OAMethodLib/GeneralMethod.cs
  7. 3 44
      OASystem/OASystem.Api/Program.cs
  8. 137 2
      OASystem/OASystem.Api/appsettings.json
  9. 5 2
      OASystem/OASystem.Domain/Dtos/System/UserDto.cs
  10. 1 1
      OASystem/OASystem.Domain/Entities/Financial/Fin_ForeignReceivables.cs
  11. 1 0
      OASystem/OASystem.Domain/Entities/System/Sys_Users.cs
  12. 1 1
      OASystem/OASystem.Domain/ViewModels/Financial/Fin_DailyFeePaymentView.cs
  13. 1 1
      OASystem/OASystem.Domain/ViewModels/Financial/Fin_ForeignReceivablesView.cs
  14. 36 0
      OASystem/OASystem.Domain/ViewModels/System/DefaultPostAuthView.cs
  15. 1 1
      OASystem/OASystem.Infrastructure/Repositories/Financial/PaymentRefundAndOtherMoneyRepository.cs
  16. 1 1
      OASystem/OASystem.Infrastructure/Repositories/Groups/AirTicketResRepository.cs
  17. 93 96
      OASystem/OASystem.Infrastructure/Repositories/Groups/DecreasePaymentsRepository.cs
  18. 1 0
      OASystem/OASystem.Infrastructure/Repositories/Groups/EnterExitCostRepository.cs
  19. 4 2
      OASystem/OASystem.Infrastructure/Repositories/Login/LoginRepository.cs
  20. 2 0
      OASystem/OASystem.Infrastructure/Repositories/System/SetDataRepository.cs

+ 0 - 1
OASystem/OASystem.Api/Controllers/AuthController.cs

@@ -249,7 +249,6 @@ namespace OASystem.API.Controllers
             //var qiYeWeChatCreateData = await _qiYeWeChatApiServic.CreateAsync(request);
             #endregion
 
-
             var userData = _loginRep.Register(dto);
             if (userData.Result.Code != 0)
             {

+ 93 - 12
OASystem/OASystem.Api/Controllers/FinancialController.cs

@@ -31,6 +31,7 @@ using NPOI.POIFS.Properties;
 using SixLabors.ImageSharp.ColorSpaces;
 using OASystem.Domain.ViewModels.QiYeWeChat;
 using System.Diagnostics;
+using System.Security.Cryptography;
 
 namespace OASystem.API.Controllers
 {
@@ -46,6 +47,7 @@ namespace OASystem.API.Controllers
         private readonly SqlSugarClient _sqlSugar;
         private readonly HttpClient _httpClient;
         private readonly SetDataTypeRepository _setDataTypeRep;
+        private readonly SetDataRepository _setDataRep;
         private readonly DailyFeePaymentRepository _daiRep;    //日付申请仓库
         private readonly TeamRateRepository _teamRateRep;      //团组汇率仓库
         private readonly ForeignReceivablesRepository _ForForeignReceivablesRep;  //对外收款账单仓库
@@ -782,6 +784,26 @@ namespace OASystem.API.Controllers
             }
         }
 
+
+        /// <summary>
+        /// 已收账单 
+        /// File Downloasd
+        /// Init 
+        /// </summary>
+        /// <param name="dto"></param>
+        /// <returns></returns>
+        [HttpPost]
+        [ProducesResponseType(typeof(JsonView), StatusCodes.Status200OK)]
+        public async Task<IActionResult> PostReceivablesFeilDownloadInit()
+        {
+            return Ok(JsonView(true, "操作成功!", new List<dynamic> {
+                new { Id = 1, Name = "生成收款单(四川)" },
+                new { Id = 2, Name = "生成收款单(北京)" },
+                new { Id = 3, Name = "汇款账单" }
+            }
+            ));
+        }
+
         /// <summary>
         /// 已收账单 
         /// File Downloasd
@@ -821,8 +843,6 @@ namespace OASystem.API.Controllers
                     if (dto.FileType == 1) tempName = $"收款账单(四川)模板.docx";
                     else if (dto.FileType == 2) tempName = $"收款账单(北京)模板.docx";
 
-
-
                     string tempPath = AppSettingsHelper.Get("WordBasePath") + $"ForeignReceivables/Temp/{tempName}";
                     //载入模板
                     Document doc = new Document(tempPath);
@@ -1818,6 +1838,7 @@ Where c.CTable = 1015 And c.IsPay = 1 And f.IsDel = 0 And c.IsDel = 0 And f.DiId
         [ProducesResponseType(typeof(JsonView), StatusCodes.Status200OK)]
         public async Task<IActionResult> PostPayRequest_Center(PostPayRequestByDateRangeDto dto)
         {
+            Stopwatch stopwatch = Stopwatch.StartNew();
             #region 验证
             DateTime beginDt, endDt;
             string format = "yyyy-MM-dd";
@@ -1851,7 +1872,8 @@ Where c.CTable = 1015 And c.IsPay = 1 And f.IsDel = 0 And c.IsDel = 0 And f.DiId
                 tree_Fin_DailyFeePaymentResult dailyResult = PayRequest_DailyByDateRange(dto.Status, checkedView.DailyPaymentIds, dto.beginDt, dto.endDt);
                 tree_Group_DailyFeePaymentResult groupResult = PayRequest_GroupPaymentByDateRange(dto.Status, checkedView.GroupIds, dto.beginDt, dto.endDt);
 
-                return Ok(JsonView(true, "获取成功", new { daily = dailyResult, group = groupResult }));
+                stopwatch.Stop();
+                return Ok(JsonView(true, $"查询成功!耗时{stopwatch.ElapsedMilliseconds/1000}s", new { daily = dailyResult, group = groupResult }));
             }
             catch (Exception ex)
             {
@@ -2417,6 +2439,7 @@ Where c.CTable = 1015 And c.IsPay = 1 And f.IsDel = 0 And c.IsDel = 0 And f.DiId
         [ProducesResponseType(typeof(JsonView), StatusCodes.Status200OK)]
         public async Task<IActionResult> PostPayRequestFileDownload(PayRequestFileDownloadDto dto)
         {
+            Stopwatch stopwatch = Stopwatch.StartNew();
 
             #region 参数,权限 验证
             if (dto.PortType < 1)
@@ -2585,7 +2608,9 @@ Where c.CTable = 1015 And c.IsPay = 1 And f.IsDel = 0 And c.IsDel = 0 And f.DiId
                 string fileName = ("PayRequest/付款申请(" + dto.beginDt + "~" + dto.endDt + ").xlsx");
                 designer.Workbook.Save(AppSettingsHelper.Get("ExcelBasePath") + fileName);
                 string rst = AppSettingsHelper.Get("ExcelBaseUrl") + AppSettingsHelper.Get("ExcelFtpPath") + fileName;
-                return Ok(JsonView(true, "操作成功!", new { url = rst }));
+                stopwatch.Stop();
+
+                return Ok(JsonView(true, $"操作成功!{stopwatch.ElapsedMilliseconds/1000}s", new { url = rst }));
 
             }
             catch (Exception ex)
@@ -2692,6 +2717,60 @@ Where c.CTable = 1015 And c.IsPay = 1 And f.IsDel = 0 And c.IsDel = 0 And f.DiId
             return Ok(JsonView(true, "操作成功"));
         }
 
+        private Result PostCurrencyByDiid_Sync(int diId, int CId, int currencyId)
+        {
+            if (diId == 0)
+            {
+                return new Result() { Code = -1, Msg = "请传入团组Id!" };
+            }
+            if (CId == 0)
+            {
+                return new Result() { Code = -1, Msg = "请传入类型Id!" };
+            }
+            if (currencyId == 0)
+            {
+                return new Result() { Code = -1, Msg = "请传入币种Id!" };
+            }
+            Grp_TeamRate _TeamRate = _sqlSugar.Queryable<Grp_TeamRate>().First(a => a.DiId == diId && a.IsDel == 0 && a.CTable == CId);
+            List<CurrencyInfo> currencyInfos = new List<CurrencyInfo>();
+            CurrencyInfo CurrencyRate = new CurrencyInfo();
+            try
+            {
+                if (_TeamRate != null)
+                {
+                    Sys_SetData _SetData = _sqlSugar.Queryable<Sys_SetData>().First(a => a.IsDel == 0 && a.Id == currencyId);
+                    if (_SetData != null)
+                    {
+                        currencyInfos = CommonFun.GetCurrencyChinaToList(_TeamRate.Remark);
+                        CurrencyRate = currencyInfos.FirstOrDefault(a => a.CurrencyCode == _SetData.Name);
+                        if (CurrencyRate != null)
+                        {
+                            return new Result() { Code = 0, Msg = "查询成功!", Data = CurrencyRate };
+                        }
+                        else
+                        {
+                            return new Result() { Code = -1, Msg = "暂无团组汇率,请前往设置!", Data = CurrencyRate };
+                        }
+
+                    }
+                    else
+                    {
+                        return new Result() { Code = -1, Msg = "暂无团组汇率,请前往设置!", Data = CurrencyRate };
+                    }
+
+                }
+                else
+                {
+                    return new Result() { Code = -1, Msg = "暂无团组汇率,请前往设置!", Data = CurrencyRate };
+                }
+            }
+            catch (Exception)
+            {
+                return new Result() { Code = -1, Msg = "查询异常!", Data = CurrencyRate };
+            }
+
+        }
+
         private bool extraCost_editCreditCardPayment(Fin_GroupExtraCostDto_OP costDto)
         {
             //设置团组汇率
@@ -2701,19 +2780,21 @@ Where c.CTable = 1015 And c.IsPay = 1 And f.IsDel = 0 And c.IsDel = 0 And f.DiId
 
             if (costDto.costSign != 3)
             {
-                Grp_TeamRate tr = _daiRep.Query<Grp_TeamRate>(s => s.DiId == costDto.diId && s.CTable == 1015).First();
+                //获取新汇率  int diId,int CId, int currencyId
+                Result rate = this.PostCurrencyByDiid_Sync(costDto.diId, 1015, costDto.currency);
 
-                if (tr != null)
+                if (rate.Code == 0)
                 {
-                    if (costDto.currency == 49)
+                    var rateInfo = (rate.Data as CurrencyInfo);
+                    if (rateInfo is not null)
                     {
-                        dcm_dayrate = tr.RateU;
-                        dcm_rmbPrice = dcm_rmbPrice * tr.RateU;
+
+                        dcm_dayrate = rateInfo.Rate;
+                        dcm_rmbPrice = rateInfo.Rate * dcm_rmbPrice;
                     }
-                    else if (costDto.currency == 51)
+                    else
                     {
-                        dcm_dayrate = tr.RateE;
-                        dcm_rmbPrice = dcm_rmbPrice * tr.RateE;
+                        dcm_dayrate = 1;
                     }
                 }
             }

+ 219 - 105
OASystem/OASystem.Api/Controllers/GroupsController.cs

@@ -61,6 +61,7 @@ using MathNet.Numerics;
 using System.Security.Policy;
 using System.Xml;
 using OASystem.Domain.Dtos.QiYeWeChat;
+using static NPOI.POIFS.Crypt.CryptoFunctions;
 
 namespace OASystem.API.Controllers
 {
@@ -590,7 +591,7 @@ namespace OASystem.API.Controllers
                         var userInfo = _usersRep._sqlSugar.Queryable<Sys_Users>().Where(it => it.IsDel == 0 && it.Id == dto.UserId).First();
                         if (userInfo != null) createGroupUser = userInfo.CnName;
 
-                        string title = $"";
+                        string title = $"系统通知";
                         string content = $"团组[{groupName}(创建人:{createGroupUser})]创建成功,请前往页面进行下一步操作!";
                         await GeneralMethod.MessageIssueAndNotification(MessageTypeEnum.GroupBusinessOperations, title, content, userIds, diId);
                     }
@@ -672,7 +673,7 @@ namespace OASystem.API.Controllers
                         var userInfo = _usersRep._sqlSugar.Queryable<Sys_Users>().Where(it => it.IsDel == 0 && it.Id == dto.UserId).First();
                         if (userInfo != null) createGroupUser = userInfo.CnName;
 
-                        string title = $"";
+                        string title = $"系统通知";
                         string content = $"团组[{groupName}(创建人:{createGroupUser})]创建成功,请前往页面进行下一步操作!";
                         await GeneralMethod.MessageIssueAndNotification(MessageTypeEnum.GroupBusinessOperations, title, content, userIds, diId);
                     }
@@ -1274,7 +1275,6 @@ namespace OASystem.API.Controllers
                                                                      .Query<Grp_CarTouristGuideGroundReservationsContent>(s => s.DiId == _dto.DiId && s.IsDel == 0)
                                                                      .ToListAsync();
 
-
                 /*
                  * 80: //签证
                  */
@@ -1282,8 +1282,6 @@ namespace OASystem.API.Controllers
                                                       .Query<Grp_VisaInfo>(s => s.DIId == _dto.DiId && s.IsDel == 0)
                                                       .ToListAsync();
                 
-
-
                 /*
                  *81: //邀请/公务活动
                  */
@@ -1296,12 +1294,7 @@ namespace OASystem.API.Controllers
                  */
                 List<Grp_Customers> _Customers = await _groupRepository.Query<Grp_Customers>(s => s.DiId == _dto.DiId && s.IsDel == 0).ToListAsync();
 
-                /*
-                 *  Label = 98 其他款项
-                 */
-                List<Grp_DecreasePayments> _DecreasePayments = await _groupRepository
-                                                                    .Query<Grp_DecreasePayments>(s => s.DiId == _dto.DiId && s.IsDel == 0)
-                                                                    .ToListAsync();
+               
                 /*
                  *  Lable = 85 机票预订
                  */
@@ -1310,16 +1303,27 @@ namespace OASystem.API.Controllers
                                                                                 .ToListAsync();
 
                 /*
-                 * 98 机票预定
+                 * 85 机票预定
                  */
                 List<Grp_AirTicketReservations> _AirTicketReservations = await _groupRepository.Query<Grp_AirTicketReservations>(s => s.DIId == _dto.DiId && s.IsDel == 0).ToListAsync();
 
                 /*
-                 *  285://收款退还
+                *  98 其他款项
+                */
+                List<Grp_DecreasePayments> _DecreasePayments = await _groupRepository
+                                                                    .Query<Grp_DecreasePayments>(s => s.DiId == _dto.DiId && s.IsDel == 0)
+                                                                    .ToListAsync();
+
+                /*
+                 *  285:收款退还
                  */
                 List<Fin_PaymentRefundAndOtherMoney> _PaymentRefundAndOtherMoneys = await _groupRepository
                                                                                 .Query<Fin_PaymentRefundAndOtherMoney>(s => s.DiId == _dto.DiId && s.IsDel == 0)
                                                                                 .ToListAsync();
+                /*
+                 * 1015: //超支费用
+                 */
+                List<Fin_GroupExtraCost> _GroupExtraCosts = await _groupRepository.Query<Fin_GroupExtraCost>(s => s.DiId == _dto.DiId && s.IsDel == 0).ToListAsync();
 
 
                 /*
@@ -1340,8 +1344,8 @@ namespace OASystem.API.Controllers
                 var userItems = await _groupRepository.Query<Sys_Users>(s => s.IsDel == 0).ToListAsync();
 
                 /*
-                    * 费用模块
-                    */
+                 * 费用模块
+                 */
                 Sys_SetData sdPriceName = _groupRepository.Query<Sys_SetData>(s => s.Id == _dto.Label).First();
                 string priceModule = string.Empty;
                 if (sdPriceName != null)
@@ -1591,6 +1595,13 @@ namespace OASystem.API.Controllers
                             break;
                         case 751://酒店早餐
 
+                            break;
+                        case 1015://超支费用
+                            Fin_GroupExtraCost groupExtraCost = _GroupExtraCosts.Where(s => s.Id == entity.CId).FirstOrDefault();
+                            if (groupExtraCost != null) {
+                                _detail.PriceNameContent = groupExtraCost.PriceName;
+                                _detail.PriceMsgContent = "备注:" + groupExtraCost.Remark;
+                            }
                             break;
                         default:
                             break;
@@ -2712,7 +2723,7 @@ namespace OASystem.API.Controllers
         }
         #endregion
 
-        #region 团组增减款项
+        #region 团组增减款项/其他款项
         /// <summary>
         /// 团组增减款项下拉框绑定
         /// </summary>
@@ -3688,8 +3699,10 @@ namespace OASystem.API.Controllers
                                                       .ToList();
                 var blackCode = _sqlSugar.Queryable<Air_TicketBlackCode>().Where(it => it.IsDel == 0 && it.DiId == dto.DiId).First();
                 var threeCodes = _sqlSugar.Queryable<Res_ThreeCode>().Where(it => it.IsDel == 0).ToList();
+                var placeData = _sqlSugar.Queryable<Grp_NationalTravelFee>().Where(it => it.IsDel == 0).ToList();
                 var rateDatas = await _EnterExitCosts.CurrencyRemark.SplitExchangeRate();
 
+
                 if (dto.ExportType == 1) //明细表
                 {
                     if (dto.SubTypeId == 1005) //1005(默认明细表)
@@ -3707,16 +3720,59 @@ namespace OASystem.API.Controllers
 
                         decimal stayFeeTotal = _DayAndCosts.Where(it => it.Type == 1).Sum(it => it.SubTotal);  // 住宿费
                         decimal mealsFeeTotal = _DayAndCosts.Where(it => it.Type == 2).Sum(it => it.SubTotal);  // 伙食费费
-                        decimal miscellaneousFeeTotal = _DayAndCosts.Where(it => it.Type == 1).Sum(it => it.SubTotal);  // 公杂费
+                        decimal miscellaneousFeeTotal = _DayAndCosts.Where(it => it.Type == 3).Sum(it => it.SubTotal);  // 公杂费
                         decimal tainFeeTotal = _DayAndCosts.Where(it => it.Type == 4).Sum(it => it.SubTotal);  // 培训费
-                        dic.Add("InsidePay", _EnterExitCosts.InsidePay.ToString("#0.00"));
-                        dic.Add("VisaPay", _EnterExitCosts.Visa.ToString("#0.00"));
-                        dic.Add("VisaRemark", _EnterExitCosts.VisaRemark);
-                        dic.Add("SafePay", _EnterExitCosts.Safe.ToString("#0.00"));
-                        dic.Add("YiMiao", _EnterExitCosts.YiMiao.ToString("#0.00"));
-                        dic.Add("HeSuan", _EnterExitCosts.HeSuan.ToString("#0.00"));
-                        dic.Add("ServiceFee", _EnterExitCosts.Service.ToString("#0.00"));
-                        dic.Add("Ticket", _EnterExitCosts.Ticket.ToString("#0.00"));
+
+                        decimal insidePayTotal = _EnterExitCosts.InsidePay;
+
+                        string row1_1 = "";
+                        if (_EnterExitCosts.Visa > 0)
+                        {
+                            //insidePayTotal += _EnterExitCosts.Visa;
+                            row1_1 = $"签证费: {_EnterExitCosts.Visa.ToString("#0.00")} 人民币/人";
+                            if (!string.IsNullOrEmpty(_EnterExitCosts.VisaRemark))
+                            {
+                                row1_1 += $"\t签证费用描述: : {_EnterExitCosts.VisaRemark} 人民币/人";
+                            }
+                        }
+
+                        string row1_2 = "";
+                        if (_EnterExitCosts.YiMiao > 0)
+                        {
+                            //insidePayTotal += _EnterExitCosts.YiMiao;
+                            row1_2 += $"疫苗费:{_EnterExitCosts.YiMiao.ToString("#0.00")} 人民币/人";
+                        }
+                        if (_EnterExitCosts.HeSuan > 0)
+                        {
+                            //insidePayTotal += _EnterExitCosts.HeSuan;
+                            row1_2 += $"核酸检测费:{_EnterExitCosts.HeSuan.ToString("#0.00")} 人民币/人";
+                        }
+                        if (_EnterExitCosts.Service > 0)
+                        {
+                            //insidePayTotal += _EnterExitCosts.Service;
+                            row1_2 += $"服务费:{_EnterExitCosts.Service.ToString("#0.00")} 人民币/人";
+                        }
+
+                        string row1_3 = "";
+                        if (_EnterExitCosts.Safe > 0)
+                        {
+                            //insidePayTotal += _EnterExitCosts.Safe;
+                            row1_3 += $"保险费:{_EnterExitCosts.Safe.ToString("#0.00")} 人民币/人";
+                        }
+                        if (_EnterExitCosts.Ticket > 0)
+                        {
+                            //insidePayTotal += _EnterExitCosts.Ticket;
+                            row1_3 += $"参展门票:{_EnterExitCosts.Ticket.ToString("#0.00")} 人民币/人";
+                        }
+                        string row1 = "";
+                        if (!string.IsNullOrEmpty(row1_1)) row1 += $"{row1_1}\r\n";
+                        if (!string.IsNullOrEmpty(row1_2)) row1 += $"{row1_2}\r\n";
+                        if (!string.IsNullOrEmpty(row1_3)) row1 += $"{row1_3}";
+
+
+                        dic.Add("InsidePay", insidePayTotal.ToString("#0.00"));
+                        dic.Add("Row1Str", row1);
+
                         dic.Add("OutsideJJ", _EnterExitCosts.OutsideJJPay.ToString("#0.00"));
                         dic.Add("OutsaideGW", _EnterExitCosts.OutsaideGWPay.ToString("#0.00"));
                         dic.Add("AirJJ", _EnterExitCosts.AirJJ.ToString("#0.00"));
@@ -3724,11 +3780,13 @@ namespace OASystem.API.Controllers
                         dic.Add("CityTranffic", _EnterExitCosts.CityTranffic.ToString("#0.00"));
                         dic.Add("SubZS", stayFeeTotal.ToString("#0.00"));
                         dic.Add("SubHS", mealsFeeTotal.ToString("#0.00"));
-                        dic.Add("SubGZF", miscellaneousFeeTotal.ToString("#0.00"));
-                        dic.Add("SubPX", tainFeeTotal.ToString("#0.00"));
 
-                        decimal subJJC = _EnterExitCosts.InsidePay + stayFeeTotal + mealsFeeTotal + miscellaneousFeeTotal + tainFeeTotal + _EnterExitCosts.OutsideJJPay;
-                        decimal subGWC = _EnterExitCosts.InsidePay + stayFeeTotal + mealsFeeTotal + miscellaneousFeeTotal + tainFeeTotal + _EnterExitCosts.OutsaideGWPay;
+                        string miscellaneousFeeTotalStr = miscellaneousFeeTotal.ToString("#0.00");
+                        dic.Add("SubGZF", miscellaneousFeeTotalStr);
+                        //dic.Add("SubPX", tainFeeTotal.ToString("#0.00"));
+
+                        decimal subJJC = insidePayTotal + stayFeeTotal + mealsFeeTotal + miscellaneousFeeTotal + tainFeeTotal + _EnterExitCosts.OutsideJJPay;
+                        decimal subGWC = insidePayTotal + stayFeeTotal + mealsFeeTotal + miscellaneousFeeTotal + tainFeeTotal + _EnterExitCosts.OutsaideGWPay;
                         dic.Add("SubJJC", subJJC.ToString("#0.00"));
                         dic.Add("SubGWC", subGWC.ToString("#0.00"));
 
@@ -3748,108 +3806,118 @@ namespace OASystem.API.Controllers
                         Aspose.Words.Tables.Table table1 = allTables[0] as Aspose.Words.Tables.Table;
                         for (int i = 0; i < dac1.Count; i++)
                         {
-                            builder.MoveToCell(0, i + 1, 0, 0);
-                            builder.Write("第" + dac1[i].Days.ToString() + "晚:");
 
-                            builder.MoveToCell(0, i + 1, 1, 0);
-                            builder.Write(dac1[i].Place == null ? "" : dac1[i].Place);
+                            Grp_DayAndCost dac = dac1[i];
+                            if (dac == null) continue;
 
-                            builder.MoveToCell(0, i + 1, 2, 0);
+                            builder.MoveToCell(0, i, 0, 0);
+                            builder.Write("第" + dac.Days.ToString() + "晚:");
+
+                            builder.MoveToCell(0, i, 1, 0);
+                            builder.Write(placeData.Find(it => it.Id == dac.NationalTravelFeeId)?.Country ?? "Unknown");
+                            builder.Write(dac.Place == null ? "" : dac.Place);
+
+                            builder.MoveToCell(0, i, 2, 0);
                             builder.Write("费用标准:");
 
                             string curr = "";
-                            var currData = _CurrDatas.Where(it => it.Id == dac1[i].Currency).FirstOrDefault();
+                            var currData = _CurrDatas.Where(it => it.Id == dac.Currency).FirstOrDefault();
                             if (currData != null)
                             {
                                 curr = currData.Name;
                             }
-                            builder.MoveToCell(0, i + 1, 3, 0);
-                            builder.Write(dac1[i].Cost.ToString("#0.00") + curr);
+                            builder.MoveToCell(0, i, 3, 0);
+                            builder.Write(dac.Cost.ToString("#0.00") + curr);
 
-                            builder.MoveToCell(0, i + 1, 4, 0);
+                            builder.MoveToCell(0, i, 4, 0);
                             builder.Write("费用小计:");
 
-                            builder.MoveToCell(0, i + 1, 5, 0);
-                            builder.Write(dac1[i].SubTotal.ToString("#0.00") + "CNY");
-
-
+                            builder.MoveToCell(0, i, 5, 0);
+                            builder.Write(dac.SubTotal.ToString("#0.00") + "CNY");
                         }
+
                         //删除多余行
-                        while (table1.Rows.Count > dac1.Count + 1)
+                        while (table1.Rows.Count > dac1.Count)
                         {
-                            table1.Rows.RemoveAt(dac1.Count + 1);
+                            table1.Rows.RemoveAt(dac1.Count);
                         }
 
                         Aspose.Words.Tables.Table table2 = allTables[1] as Aspose.Words.Tables.Table;
                         for (int i = 0; i < dac2.Count; i++)
                         {
 
-                            builder.MoveToCell(1, i + 1, 0, 0);
-                            builder.Write("第" + dac2[i].Days.ToString() + "天:");
+                            Grp_DayAndCost dac = dac2[i];
+                            if (dac == null) continue;
+
+                            builder.MoveToCell(1, i, 0, 0);
+                            builder.Write("第" + dac.Days.ToString() + "天:");
 
-                            builder.MoveToCell(1, i + 1, 1, 0);
-                            builder.Write(dac2[i].Place == null ? "" : dac1[i].Place);
+                            builder.MoveToCell(1, i, 1, 0);
+                            builder.Write(placeData.Find(it => it.Id == dac.NationalTravelFeeId)?.Country ?? "Unknown");
 
-                            builder.MoveToCell(1, i + 1, 2, 0);
+                            builder.MoveToCell(1, i, 2, 0);
                             builder.Write("费用标准:");
 
                             string curr = "";
-                            var currData = _CurrDatas.Where(it => it.Id == dac1[i].Currency).FirstOrDefault();
+                            var currData = _CurrDatas.Where(it => it.Id == dac.Currency).FirstOrDefault();
                             if (currData != null)
                             {
                                 curr = currData.Name;
                             }
-                            builder.MoveToCell(1, i + 1, 3, 0);
-                            builder.Write(dac2[i].Cost.ToString("#0.00") + curr);
+                            builder.MoveToCell(1, i, 3, 0);
+                            builder.Write(dac.Cost.ToString("#0.00") + curr);
 
-                            builder.MoveToCell(1, i + 1, 4, 0);
+                            builder.MoveToCell(1, i, 4, 0);
                             builder.Write("费用小计:");
 
-                            builder.MoveToCell(1, i + 1, 5, 0);
-                            builder.Write(dac2[i].SubTotal.ToString() + "CNY");
+                            builder.MoveToCell(1, i, 5, 0);
+                            builder.Write(dac.SubTotal.ToString("#0.00") + "CNY");
 
                         }
 
                         //删除多余行
-                        while (table2.Rows.Count > dac2.Count + 1)
+                        while (table2.Rows.Count > dac2.Count)
                         {
-                            table2.Rows.RemoveAt(dac2.Count + 1);
+                            table2.Rows.RemoveAt(dac2.Count);
                         }
 
                         Aspose.Words.Tables.Table table3 = allTables[2] as Aspose.Words.Tables.Table;
                         for (int i = 0; i < dac3.Count; i++)
                         {
 
-                            builder.MoveToCell(2, i + 1, 0, 0);
-                            builder.Write("第" + dac3[i].Days.ToString() + "天:");
+                            Grp_DayAndCost dac = dac3[i];
+                            if (dac == null) continue;
+
+                            builder.MoveToCell(2, i, 0, 0);
+                            builder.Write("第" + dac.Days.ToString() + "天:");
 
-                            builder.MoveToCell(2, i + 1, 1, 0);
-                            builder.Write(dac3[i].Place == null ? "" : dac1[i].Place);
+                            builder.MoveToCell(2, i, 1, 0);
+                            builder.Write(placeData.Find(it => it.Id == dac.NationalTravelFeeId)?.Country ?? "Unknown");
 
-                            builder.MoveToCell(2, i + 1, 2, 0);
+                            builder.MoveToCell(2, i, 2, 0);
                             builder.Write("费用标准:");
 
                             string curr = "";
-                            var currData = _CurrDatas.Where(it => it.Id == dac1[i].Currency).FirstOrDefault();
+                            var currData = _CurrDatas.Where(it => it.Id == dac.Currency).FirstOrDefault();
                             if (currData != null)
                             {
                                 curr = currData.Name;
                             }
-                            builder.MoveToCell(2, i + 1, 3, 0);
-                            builder.Write(dac3[i].Cost.ToString("#0.00") + curr);
+                            builder.MoveToCell(2, i, 3, 0);
+                            builder.Write(dac.Cost.ToString("#0.00") + curr);
 
-                            builder.MoveToCell(2, i + 1, 4, 0);
+                            builder.MoveToCell(2, i, 4, 0);
                             builder.Write("费用小计:");
 
-                            builder.MoveToCell(2, i + 1, 5, 0);
-                            builder.Write(dac3[i].SubTotal.ToString("#0.00") + "CNY");
+                            builder.MoveToCell(2, i, 5, 0);
+                            builder.Write(dac.SubTotal.ToString("#0.00") + "CNY");
 
                         }
 
                         //删除多余行
-                        while (table3.Rows.Count > dac3.Count + 1)
+                        while (table3.Rows.Count > dac3.Count)
                         {
-                            table3.Rows.RemoveAt(dac3.Count + 1);
+                            table3.Rows.RemoveAt(dac3.Count);
                         }
 
                         #endregion
@@ -3943,10 +4011,10 @@ namespace OASystem.API.Controllers
                             //builder.MoveToCell(0, accommodationStartIndex, 0, 0);
                             //builder.Write(DeleClientList[i].LastName + DeleClientList[i].Name); 
                             builder.MoveToCell(0, accommodationStartIndex, 1, 0);
-                            builder.Write(dac.Place == null ? "" : dac.Place);//城市
+                            builder.Write(placeData.Find(it => it.Id == dac.NationalTravelFeeId)?.Country ?? "Unknown");//城市
                             builder.MoveToCell(0, accommodationStartIndex, 2, 0);
 
-                            string currency = _CurrDatas.Find(it => it.Id == dac.Currency).Name;
+                            string currency = _CurrDatas.Find(it => it.Id == dac.Currency)?.Name ?? "Unknown";
                             builder.Write(currency);//币种
                             builder.MoveToCell(0, accommodationStartIndex, 3, 0);
                             builder.Write(dac.Cost.ToString("#0.00"));//标准
@@ -3959,7 +4027,7 @@ namespace OASystem.API.Controllers
                             builder.MoveToCell(0, accommodationStartIndex, 7, 0);
 
                             decimal rate = 0.00M;
-                            rate = rateDatas.Find(it => it.CurrencyCode.Equals(currency)).Rate;
+                            rate = rateDatas.Find(it => it.CurrencyCode.Equals(currency))?.Rate ?? 0.00M;
 
                             builder.Write(rate.ToString("#0.0000"));//汇率
                             builder.MoveToCell(0, accommodationStartIndex, 8, 0);
@@ -3967,7 +4035,7 @@ namespace OASystem.API.Controllers
                             decimal rbmPrice = rate * dac.SubTotal;
                             builder.Write(rbmPrice.ToString("#0.00"));//折合人民币
                             accommodationStartIndex++;
-                            dac1totalPrice += rbmPrice;
+                            dac1totalPrice += Convert.ToDecimal(rbmPrice.ToString("#0.00"));
                         }
 
                         dic.Add("dac1totalPrice", dac1totalPrice.ToString("#0.00"));
@@ -3997,9 +4065,9 @@ namespace OASystem.API.Controllers
                             }
 
                             builder.MoveToCell(0, foodandotherStartIndex, 1, 0);
-                            builder.Write(dac.Place == null ? "" : dac.Place);//城市
+                            builder.Write(placeData.Find(it => it.Id == dac.NationalTravelFeeId)?.Country ?? "Unknown");//城市
                             builder.MoveToCell(0, foodandotherStartIndex, 2, 0);
-                            string currency = _CurrDatas.Find(it => it.Id == dac.Currency).Name;
+                            string currency = _CurrDatas.Find(it => it.Id == dac.Currency)?.Name ?? "Unknown" ;
                             builder.Write(currency);//币种
                             builder.MoveToCell(0, foodandotherStartIndex, 3, 0);
                             builder.Write(dac.Cost.ToString("#0.00"));//标准
@@ -4012,18 +4080,18 @@ namespace OASystem.API.Controllers
                             builder.MoveToCell(0, foodandotherStartIndex, 7, 0);
 
                             decimal rate = 0.00M;
-                            rate = rateDatas.Find(it => it.CurrencyCode.Equals(currency)).Rate;
+                            rate = rateDatas.Find(it => it.CurrencyCode.Equals(currency))?.Rate ?? 0.00M;
 
                             builder.Write(rate.ToString("#0.0000"));//汇率
 
                             builder.MoveToCell(0, foodandotherStartIndex, 8, 0);
                             decimal rbmPrice = rate * dac.SubTotal;
-                            builder.Write(rbmPrice.ToString());//折合人民币
+                            builder.Write(rbmPrice.ToString("#0.00"));//折合人民币
                             foodandotherStartIndex++;
-                            dac2totalPrice += rbmPrice;
+                            dac2totalPrice += Convert.ToDecimal(rbmPrice.ToString("#0.00"));
                         }
 
-                        dic.Add("dac2totalPrice", dac2totalPrice.ToString());
+                        dic.Add("dac2totalPrice", dac2totalPrice.ToString("#0.00"));
 
                         for (int i = foodandotherStartIndex + (15 - dac2.Count); i > (dac2.Count == 0 ? 1 : 0) + foodandotherStartIndex; i--)
                         {
@@ -4069,8 +4137,8 @@ namespace OASystem.API.Controllers
                                     var spDotandEmpty = item.Split('.')[1].Split(' ').Where(x => !string.IsNullOrEmpty(x)).ToList();
                                     var depCode = spDotandEmpty[2].Substring(0, 3);
                                     var arrCode = spDotandEmpty[2].Substring(3, 3);
-                                    string depName = threeCodes.Find(it => it.Three.Equals(depCode)).City,
-                                           arrName = threeCodes.Find(it => it.Three.Equals(arrCode)).City;
+                                    string depName = threeCodes.Find(it => it.Three.Equals(depCode))?.City ?? "Unknwon",
+                                           arrName = threeCodes.Find(it => it.Three.Equals(arrCode))?.City ?? "Unknown";
 
                                     list.Add(depName);
                                     list.Add(arrName);
@@ -4152,22 +4220,23 @@ namespace OASystem.API.Controllers
                         decimal dac1totalPrice = 0.00M, dac2totalPrice = 0.00M;
                         foreach (var item in dac1)
                         {
+                            item.Place = placeData.Find(it => it.Id == item.NationalTravelFeeId)?.Country ?? "Unknown";
                             if (place.Contains(item.Place))
                             {
                                 continue;
                             }
-
                             DataRow row = dtdac1.NewRow();
-                            row["city"] = item.Place;
-                            row["curr"] = item.Currency;
-                            row["criterion"] = item.Cost;
-                            row["number"] = 1;
-                            row["day"] = dac1.FindAll(x => x.Place == item.Place).Count;
 
-                            string currency = _CurrDatas.Find(it => it.Id == item.Currency).Name;
-                            decimal rate = rateDatas.Find(it => it.CurrencyCode == currency).Rate;
+                            row["city"] = placeData.Find(it => it.Id == item.NationalTravelFeeId)?.Country ?? "Unknown";
 
+                            string currency = _CurrDatas.Find(it => it.Id == item.Currency)?.Name ?? "Unknwon";
+                            decimal rate = rateDatas.Find(it => it.CurrencyCode == currency)?.Rate ?? 0.00M;
+                            row["curr"] = currency;
                             row["rate"] = rate;
+                            row["criterion"] = item.Cost;
+                            row["number"] = 1;
+                            row["day"] = dac1.FindAll(x => x.NationalTravelFeeId == item.NationalTravelFeeId).Count;
+
                             //row["costRMB"] = rbmPrice;
 
                             dtdac1.Rows.Add(row);
@@ -4177,22 +4246,22 @@ namespace OASystem.API.Controllers
                         place = new List<string>();
                         foreach (var item in dac2)
                         {
+                            item.Place = placeData.Find(it => it.Id == item.NationalTravelFeeId)?.Country ?? "Unknown";
                             if (place.Contains(item.Place))
                             {
                                 continue;
                             }
                             DataRow row = dtdac2.NewRow();
                             row["city"] = item.Place;
-                            row["curr"] = item.Currency;
+                            string currency = _CurrDatas.Find(it => it.Id == item.Currency)?.Name ?? "Unknwon";
+                            decimal rate = rateDatas.Find(it => it.CurrencyCode == currency)?.Rate ?? 0.00M;
+                            row["curr"] = currency;
+                            row["rate"] = rate;
                             row["criterion"] = item.Cost;
                             row["number"] = 1;
                             row["day"] = dac2.FindAll(x => x.Place == item.Place).Count;
                             //row["cost"] = item.SubTotal;
 
-                            string currency = _CurrDatas.Find(it => it.Id == item.Currency).Name;
-                            decimal rate = rateDatas.Find(it => it.CurrencyCode == currency).Rate;
-
-                            row["rate"] = rate;
                             //row["costRMB"] = rbmPrice;
 
                             dtdac2.Rows.Add(row);
@@ -4356,10 +4425,10 @@ namespace OASystem.API.Controllers
                             //builder.MoveToCell(0, accommodationStartIndex, 0, 0);
                             //builder.Write(DeleClientList[i].LastName + DeleClientList[i].Name); 
                             builder.MoveToCell(0, accommodationStartIndex, 1, 0);
-                            builder.Write(dac.Place == null ? "" : dac.Place);//城市
+                            builder.Write(placeData.Find(it => it.Id == dac.NationalTravelFeeId)?.Country ?? "Unknown");//城市
                             builder.MoveToCell(0, accommodationStartIndex, 2, 0);
 
-                            string currency = _CurrDatas.Find(it => it.Id == dac.Currency).Name;
+                            string currency = _CurrDatas.Find(it => it.Id == dac.Currency)?.Name ?? "Unknwon";
                             builder.Write(currency);//币种
                             builder.MoveToCell(0, accommodationStartIndex, 3, 0);
                             builder.Write(dac.Cost.ToString("#0.00"));//标准
@@ -4371,7 +4440,7 @@ namespace OASystem.API.Controllers
                             builder.Write(dac.SubTotal.ToString("#0.00"));//小计
                             builder.MoveToCell(0, accommodationStartIndex, 7, 0);
 
-                            decimal rate = rateDatas.Find(it => it.CurrencyCode == currency).Rate;
+                            decimal rate = rateDatas.Find(it => it.CurrencyCode == currency)?.Rate ?? 0.00M;
                             builder.Write(rate.ToString("#0.0000"));//汇率
                             builder.MoveToCell(0, accommodationStartIndex, 8, 0);
 
@@ -4401,10 +4470,10 @@ namespace OASystem.API.Controllers
                             }
 
                             builder.MoveToCell(0, foodandotherStartIndex, 1, 0);
-                            builder.Write(dac.Place == null ? "" : dac.Place);//城市
+                            builder.Write(placeData.Find(it => it.Id == dac.NationalTravelFeeId)?.Country ?? "Unknown");//城市
                             builder.MoveToCell(0, foodandotherStartIndex, 2, 0);
 
-                            string currency = _CurrDatas.Find(it => it.Id == dac.Currency).Name;
+                            string currency = _CurrDatas.Find(it => it.Id == dac.Currency)?.Name ?? "Unknwon";
                             builder.Write(currency);//币种
                             builder.MoveToCell(0, foodandotherStartIndex, 3, 0);
                             builder.Write(dac.Cost.ToString("#0.00"));//标准
@@ -4416,7 +4485,7 @@ namespace OASystem.API.Controllers
                             builder.Write(dac.SubTotal.ToString("#0.00"));//小计
                             builder.MoveToCell(0, foodandotherStartIndex, 7, 0);
 
-                            decimal rate = rateDatas.Find(it => it.CurrencyCode == currency).Rate;
+                            decimal rate = rateDatas.Find(it => it.CurrencyCode == currency)?.Rate ?? 0.00M;
                             builder.Write(rate.ToString());//汇率
                             builder.MoveToCell(0, foodandotherStartIndex, 8, 0);
 
@@ -4489,7 +4558,6 @@ namespace OASystem.API.Controllers
                             builder.Write(DeleClientList[i].Job);
                         }
 
-
                         //删除多余行
                         while (tableOne.Rows.Count > DeleClientList.Count + 1)
                         {
@@ -7897,7 +7965,6 @@ namespace OASystem.API.Controllers
 
                 #endregion
 
-
                 Grp_HotelReservations hr = await _sqlSugar.Queryable<Grp_HotelReservations>().Where(it => it.IsDel == 0 && it.Id == _dto.Id).FirstAsync();
 
                 //判断数据是否完整
@@ -7984,7 +8051,6 @@ namespace OASystem.API.Controllers
                             {
                                 mark.Text = hr.HotelFax;
                             }
-
                         }
                         //入住时间
                         if (doc.Range.Bookmarks["CIn"] != null)
@@ -8003,8 +8069,56 @@ namespace OASystem.API.Controllers
                         //客户名称
                         if (doc.Range.Bookmarks["GName"] != null)
                         {
+                            string guestName = "";
+                            string[] clients = new string[] { };
+                            if (hr.GuestName.Contains(","))
+                            {
+                                clients = hr.GuestName.Split(",");
+                            }
+                            else
+                            {
+                                clients = new string[] { hr.GuestName };
+                            }
+
+                            List<int> clientIds_int = new List<int>();
+                            if (clients.Length > 0)
+                            {
+                                foreach (var item in clients)
+                                {
+                                    if (item.IsNumeric())
+                                    {
+                                        clientIds_int.Add(int.Parse(item));
+                                    }
+                                }
+                            }
+                            if (clientIds_int.Count > 0)
+                            {
+                                var _clientDatas =  _sqlSugar.Queryable<Crm_DeleClient>().Where(it => it.IsDel == 0 && clientIds_int.Contains(it.Id)).ToList();
+                                foreach (var client in _clientDatas)
+                                {
+                                    //男
+                                    if (client.Sex == 0) guestName += $"Mr.";
+                                    //女
+                                    else if (client.Sex == 1) guestName += $"Ms.";
+
+                                    if (!String.IsNullOrEmpty(client.FirstName+ client.LastName))
+                                    {
+                                        guestName += $"{string.Join("",client.FirstName.GetTotalPingYin()).ToUpper()} {string.Join("", client.LastName.GetTotalPingYin()).ToUpper()},";
+                                    }
+
+                                    //guestName += $"{client.Pinyin},";
+                                }
+                                if (guestName.Length > 0)
+                                {
+                                    guestName = guestName.Substring(0, guestName.Length - 1);
+                                }
+                            }
+                            else
+                            {
+                                guestName = hr.GuestName;
+                            }
                             Bookmark mark = doc.Range.Bookmarks["GName"];
-                            mark.Text = hr.GuestName;
+                            mark.Text = guestName;
                         }
 
                         //房间介绍

+ 6 - 7
OASystem/OASystem.Api/Controllers/PersonnelModuleController.cs

@@ -1085,13 +1085,12 @@ namespace OASystem.API.Controllers
                 {
                     item.TaskerDetails = taskerData.Where(it => it.TAId == item.Id).ToList();
 
-                    //处理任务总状态 And 任务人状态
-
-                    var taskerStatusData = taskerData.Where(it => it.TAId == item.Id && it.TaskCreateUserId != _dto.UserId && it.UserId == _dto.UserId).FirstOrDefault();
-                    if (taskerStatusData != null)
-                    {
-                        item.Status = taskerStatusData.TaskStatus;
-                    }
+                    ////处理任务总状态 And 任务人状态
+                    //var taskerStatusData = taskerData.Where(it => it.TAId == item.Id && it.TaskCreateUserId != _dto.UserId && it.UserId == _dto.UserId).FirstOrDefault();
+                    //if (taskerStatusData != null)
+                    //{
+                    //    item.Status = taskerStatusData.TaskStatus;
+                    //}
                 }
 
 

+ 26 - 20
OASystem/OASystem.Api/Controllers/SystemController.cs

@@ -1147,18 +1147,18 @@ namespace OASystem.API.Controllers
                     JobPostId = dto.JobPostId,
                     Ext = dto.Ext,
                     UsePeriod = dto.UsePeriod,
-                    HrAudit = dto.HrAudit
+                    //HrAudit = dto.HrAudit
                 });
                 if (!res) 
                 {
                     return Ok(JsonView(false, "修改失败!"));
                 }
+
                 return Ok(JsonView(true, "修改成功!"));
             }
             catch (Exception)
             {
                 return Ok(JsonView(false, "程序错误!"));
-                throw;
             }
         }
 
@@ -1269,7 +1269,9 @@ namespace OASystem.API.Controllers
                 return Ok(JsonView(false, "程序错误!"));
             }
         }
+
         /// <summary>
+        /// 员工信息 
         /// 人事审核
         /// </summary>
         /// <param name="dto"></param>
@@ -1278,27 +1280,31 @@ namespace OASystem.API.Controllers
         [ProducesResponseType(typeof(JsonView), StatusCodes.Status200OK)]
         public async Task<IActionResult> PersonnelAudit(PersonnelAuditDto dto)
         {
-            try
-            {
-                if (dto == null)
-                {
-                    return Ok(JsonView(false, "参数不能为空!"));
-                }
-                bool res = await _userRep.UpdateAsync<Sys_Users>(a => a.Id == dto.Id, a => new Sys_Users
-                {
-                    HrAudit=dto.isAudit
-                });
-                if (!res)
-                {
-                    return Ok(JsonView(false, "操作失败!"));
-                }
-                return Ok(JsonView(true, "操作成功!"));
+            if (dto.UserId < 1) return Ok(JsonView(false, "请传入有效的UserId参数!"));
+            if (dto.Id < 1) return Ok(JsonView(false, "请传入有效的Id参数!"));
+            if (dto.IsAudit < 1 || dto.IsAudit > 2) return Ok(JsonView(false, "请传入有效的IsAudit参数!1:通过 2拒绝"));
 
-            }
-            catch (Exception)
+            bool res = await _userRep.UpdateAsync<Sys_Users>(a =>
+                                      a.Id == dto.Id,
+                                      a => new Sys_Users
+                                      {
+                                          HrAudit = dto.IsAudit
+                                      });
+            if (res)
             {
-                return Ok(JsonView(false, "程序错误!"));
+                //审核成功添加员工基础页面权限
+                var userData = _sqlSugar.Queryable<Sys_Users>().Where(it => it.Id == dto.Id).First();
+                int depId = 0, postId = 0;
+                if (userData != null) { depId = userData.DepId; postId = userData.JobPostId; }
+
+                bool s = DefaultPostAuth(depId, postId, dto.Id, dto.UserId);
+                string str = $"基础页面权限添加失败!";
+                if (s) str = $"基础页面权限添加成功!";
+
+                return Ok(JsonView(true, $"操作成功!{str}"));
             }
+            return Ok(JsonView(false, "操作失败!"));
+
         }
         #endregion
 

+ 118 - 4
OASystem/OASystem.Api/OAMethodLib/GeneralMethod.cs

@@ -33,6 +33,95 @@ namespace OASystem.API.OAMethodLib
         private readonly static MessageRepository _messageRep = AutofacIocManager.Instance.GetService<MessageRepository>();
         private readonly static IHubContext<ChatHub, IChatClient> _hubContext = AutofacIocManager.Instance.GetService<IHubContext<ChatHub, IChatClient>>();
 
+        #region 员工注册默认添加基础页面
+
+        /// <summary>
+        /// 默认职位权限
+        /// </summary>
+        public static bool DefaultPostAuth(int depId,int postId, int userId,int createUserId)
+        {
+            if (depId < 1) return false;
+            if (postId < 1) return false;
+            if (userId < 1) return false;
+            if (userId < 1) return false;
+
+            List<DefaultPostPageAuthView> _defaultData = AppSettingsHelper.Get<DefaultPostPageAuthView>("DefaultPostPageData");
+
+            if (_defaultData.Count < 1) return false;
+
+            var postJobDatas = _dirRep._sqlSugar.Queryable<Sys_JobPost>().Where(it => it.IsDel == 0).ToList();
+
+            List<int> pageData = new List<int>();
+            //添加公司公共页面
+            pageData.AddRange(_defaultData.Find(it => it.DepId == -1)?.PostPageAuths[0].PageIds ?? new List<int>());
+            //添加部门页面
+            var depPublicPageData = _defaultData.Find(it => it.DepId == depId);
+            var jobPublicPageData = postJobDatas.Find(it => it.DepId == depId && it.Id == postId);
+            if (depPublicPageData != null) //特殊部门 
+            {
+                //公共页面
+                pageData.AddRange(depPublicPageData.PostPageAuths.Find(it => it.PostId == -1)?.PageIds ?? new List<int>());
+
+
+                if (depId == 7) //国交部特殊处理
+                {
+                    List<string> postNames = new List<string>() { "主管","经理" };
+                    //岗位页面
+                    if (jobPublicPageData != null)
+                    {
+
+                        if (postNames.Contains(jobPublicPageData.JobName))
+                        {
+                            pageData.AddRange(depPublicPageData.PostPageAuths.Find(it => it.PostId == 0)?.PageIds ?? new List<int>());
+                        }
+                        else
+                        {
+                            pageData.AddRange(depPublicPageData.PostPageAuths.Find(it => it.PostId == postId)?.PageIds ?? new List<int>());
+                        }
+                    }
+                }
+            }
+            else //通用部门
+            {
+                pageData.AddRange(_defaultData.Find(it => it.DepId == 0)?.PostPageAuths[0].PageIds ?? new List<int>());
+            }
+
+            if (pageData.Count > 0)
+            {
+                //页面操作权限数据(添加修改等...)
+                var pageFunctionData = _dirRep._sqlSugar.Queryable<Sys_SystemMenuAndFunction>().Where(it => pageData.Contains(it.SmId) && it.IsDel == 0 ).ToList();
+
+                var defaultPageData = pageFunctionData.Select(it => new Sys_UserAuthority() { 
+                    UId = userId,
+                    SmId = it.SmId,
+                    FId = it.FId,
+                    CreateUserId = createUserId, //管理员
+                    CreateTime = DateTime.Now,
+                    IsDel = 0,
+                    IsTemp = 1
+                }).ToList();
+
+
+                if (defaultPageData.Count > 0)
+                {
+
+                    //移除每个页面的审核权限,审核权限需要单独开启
+                    defaultPageData = defaultPageData.Where(it => it.FId != 12).ToList();
+
+                    //添加页面操作权限
+                    var s = _dirRep._sqlSugar.Fastest<Sys_UserAuthority>().PageSize(100000).BulkCopy(defaultPageData);
+                    if (s > 0)
+                    {
+                        return true;
+                    }
+                }
+            }
+            return false;
+        }
+
+
+        #endregion
+
         #region 消息 
         /// <summary>
         /// 消息 发布And 通知
@@ -464,7 +553,7 @@ namespace OASystem.API.OAMethodLib
         }
 
         /// <summary>
-        /// 团组汇率 
+        /// 团组任务分配 
         /// 建团时 默认按照岗位分配权限
         /// </summary>
         /// <param name="userId"></param>
@@ -518,7 +607,8 @@ namespace OASystem.API.OAMethodLib
              * 82  团组客户保险 --> 国交部 经理,主管 岗位
              * 85  机票预订  --> 国交部门 机票 岗位
              * 98  其他款项  --> 总经办部门 总经理 岗位/国交部门(ALL) 岗位/财务部门(ALL) 岗位/策划部门(ALL) 岗位/人事部门 采购 岗位
-             * 1015 超支费用  --> 财务部门(ALL)岗位
+             * 1015 超支费用,69 收款退还  --> 财务部门(ALL)岗位
+             * 1015 超支费用  --> 国交部(ALL)岗位
              */
             List<Grp_GroupsTaskAssignment> _GroupsTaskAssignments = new List<Grp_GroupsTaskAssignment>();
             // 76  酒店预订  --> 国交部门(7) 酒店(25) 岗位 
@@ -629,7 +719,7 @@ namespace OASystem.API.OAMethodLib
                     }).ToList()
             );
 
-            //1015 超支费用  --> 财务部门(3)(ALL)岗位
+            //1015 超支费用,285 收款退还  --> 财务部门(ALL)岗位
             _GroupsTaskAssignments.AddRange(
                 userDatas
                 .Where(it => it.DepId == 3)
@@ -642,6 +732,31 @@ namespace OASystem.API.OAMethodLib
                 }).ToList()
             );
 
+            _GroupsTaskAssignments.AddRange(
+               userDatas
+               .Where(it => it.DepId == 3)
+               .Select(it => new Grp_GroupsTaskAssignment()
+               {
+                   DIId = diId,
+                   CTId = 285,
+                   UId = it.Id,
+                   CreateUserId = userId
+               }).ToList()
+           );
+
+            //1015 超支费用  --> 国交部(ALL)岗位
+            _GroupsTaskAssignments.AddRange(
+              userDatas
+              .Where(it => it.DepId == 7)
+              .Select(it => new Grp_GroupsTaskAssignment()
+              {
+                  DIId = diId,
+                  CTId = 1015,
+                  UId = it.Id,
+                  CreateUserId = userId
+              }).ToList()
+          );
+
             if (_GroupsTaskAssignments.Count > 0)
             {
                 var addId =_teamRateRep._sqlSugar.Insertable(_GroupsTaskAssignments).ExecuteCommand();
@@ -1215,7 +1330,6 @@ namespace OASystem.API.OAMethodLib
 
         #endregion
 
-
         #region 数字验证
         /// <summary>
         /// 验证数字字符串

+ 3 - 44
OASystem/OASystem.Api/Program.cs

@@ -165,51 +165,11 @@ if (AppSettingsHelper.Get("UseSwagger").ToBool())
                 }, Scheme = "oauth2", Name = "Bearer", In = ParameterLocation.Header }, new List<string>()
             }
         });
+
     });
 }
 #endregion
 
-#region 添加swagger注释
-//if (AppSettingsHelper.Get("UseSwagger").ToBool())
-//{
-//    builder.Services.AddSwaggerGen(c =>
-//    {
-//        c.SwaggerDoc("v1", new OpenApiInfo
-//        {
-//            Version = "v1",
-//            Title = "文华商旅支付测试接口",
-//            Description = "请先从Auth鉴权=>login获取token进行认证,输入:token进行认证(Bearer)"
-//        });
-//        c.DocumentFilter<SwaggerApi>();
-//        var xmlPath = Path.Combine(basePath, "OASystem.API.xml");
-//        c.IncludeXmlComments(xmlPath, true);
-//        var xmlDomainPath = Path.Combine(basePath, "OASystem.Domain.xml");
-//        c.IncludeXmlComments(xmlDomainPath, true);
-//        c.AddSecurityDefinition("Bearer", new OpenApiSecurityScheme
-//        {
-//            Description = "Value: Bearer {token}",
-//            Name = "Authorization",
-//            In = ParameterLocation.Header,
-//            Type = SecuritySchemeType.ApiKey,
-//            Scheme = "Bearer"
-//        });
-//        c.AddSecurityRequirement(new OpenApiSecurityRequirement()
-//        {
-//          {
-//            new OpenApiSecurityScheme
-//            {
-//              Reference = new OpenApiReference
-//              {
-//                Type = ReferenceType.SecurityScheme,
-//                Id = "Bearer"
-//              },Scheme = "oauth2",Name = "Bearer",In = ParameterLocation.Header,
-//            },new List<string>()
-//          }
-//        });
-//    });
-//}
-#endregion
-
 #region 添加校验
 
 builder.Services.AddTransient<OASystemAuthentication>();
@@ -372,9 +332,8 @@ if (AppSettingsHelper.Get("UseSwagger").ToBool())
         c.DocExpansion(Swashbuckle.AspNetCore.SwaggerUI.DocExpansion.None);
         c.DefaultModelsExpandDepth(-1);
 
-        // 添加搜索功能
-        c.EnableFilter();
-        c.EnableDeepLinking();
+        //c.EnableFilter();// 添加搜索功能
+        //c.EnableDeepLinking(); // 启用深度链接
     });
 }
 #endregion

+ 137 - 2
OASystem/OASystem.Api/appsettings.json

@@ -189,7 +189,7 @@
     {
       "CTableId": 1015, //CtableId 超支费用
       "PageIdDatas": [ //页面Id
-        174 
+        174
       ]
     }
   ],
@@ -199,7 +199,7 @@
     {
       "TypeId": 1022, //系统公告
       "MsgTypeIds": [
-        1  // 公告消息
+        1 // 公告消息
       ]
     },
     {
@@ -217,5 +217,140 @@
         6 //任务进度更新消息
       ]
     }
+  ],
+
+
+  //职位默认页面权限
+  "DefaultPostPageData": [
+    {
+      "DepId": -1, //部门: 公司公共页面
+      "PostPageAuths": [
+        {
+          "PostId": -1,
+          "PageIds": [
+            42, //Page: 日常费用付款申请
+            //16 //Page: 员工资料列表
+          ]
+        }
+      ]
+    },
+    {
+      "DepId": 0, //部门:人事部,信息部,策划部(部门页面一致归类在一起)
+      "PostPageAuths": [
+        {
+          "PostId": 0, //职位:普通员工(除经理主管外/公共页面)
+          "PageIds": [
+            149 //Page: 主页(员工)
+          ]
+        }
+      ]
+    },
+    {
+      "DepId": 1, //部门: 总经办
+      "PostPageAuths": [
+        {
+          "PostId": 3, //职位: 总经理助理
+          "PageIds": [
+            150 //Page: 主页(总助)
+          ]
+        }
+      ]
+    },
+    {
+      "DepId": 6, //部门:市场部
+      "PostPageAuths": [
+        {
+          "PostId": 21, //职位:普通员工(除经理主管外)
+          "PageIds": [
+            //153, //Page: 主页(市场部)
+            149, //Page: 主页(员工)
+            118, //Page: 出入境费用明细
+            168, //Page: 出入境国家三公费用标准
+            89 //Page: 公司客户资料
+          ]
+        }
+      ]
+    },
+    {
+      "DepId": 3, //部门:财务部
+      "PostPageAuths": [
+        {
+          "PostId": 10, //职位:会计
+          "PageIds": [
+            151 //Page: 主页(财务)
+          ]
+        }
+      ]
+    },
+    {
+      "DepId": 7, //国交部
+      "PostPageAuths": [
+        {
+          "PostId": -1, //职位:部门公共页面
+          "PageIds": [
+            //154, //Page: 主页(国交)
+            40, //Page: 其他款项
+            174 //Page: 超支费用
+          ]
+        },
+        {
+          "PostId": 0, //职位:经理/主管
+          "PageIds": [
+            154, //Page: 主页(国交)
+            27, //Page: 团组操作
+            104, //Page: 接团客户名单
+            118, //Page: 出入境费用明细
+            168 //Page: 出入境国家三公费用标准
+          ]
+        },
+        {
+          "PostId": 26, //职位:签证
+          "PageIds": [
+            149, //Page: 主页(员工)
+            31, //Page: 签证费用录入
+            158, //Page: OCR识别
+            32 //Page: 保险录入
+          ]
+        },
+        {
+          "PostId": 27, //职位:商邀
+          "PageIds": [
+            149, //Page: 主页(员工)
+            25, //Page: 邀请资料
+            29, //Page: 邀请公务费用
+            166, //Page: 公务出访
+            167 //Page:导出邀请函
+          ]
+        },
+        {
+          "PostId": 28, //职位:OP
+          "PageIds": [
+            149, //Page: 主页(员工)
+            24, //Page: 导游地接资料
+            30, //Page: 地接费用录入
+            122, //Page: OP行程单
+            111 //Page: 车公司资料
+          ]
+        },
+        {
+          "PostId": 24, //职位:机票
+          "PageIds": [
+            149, //Page: 主页(员工)
+            114, //Page: 机票行程代码录
+            120, //Page: 三字码资料表
+            160, //Page: 代理出票合作方
+            161 //Page: 机票费用录入
+          ]
+        },
+        {
+          "PostId": 25, //职位:酒店
+          "PageIds": [
+            149, //Page: 主页(员工)
+            23, //Page: 酒店资料 
+            28 //Page: 酒店预订
+          ]
+        }
+      ]
+    }
   ]
 }

+ 5 - 2
OASystem/OASystem.Domain/Dtos/System/UserDto.cs

@@ -62,7 +62,7 @@ namespace OASystem.Domain.Dtos.System
         /// <summary>
         /// 人事审核 0未审核(初始状态) 1 已通过(可用)2已拒绝
         /// </summary>
-        public int HrAudit { get; set; }
+        //public int HrAudit { get; set; }
     }
 
     /// <summary>
@@ -220,13 +220,16 @@ namespace OASystem.Domain.Dtos.System
 
     public class PersonnelAuditDto
     {
+        public int UserId { get; set; }
+
         /// <summary>
         /// 数据Id
         /// </summary>
         public int Id { get; set; }
+
         /// <summary>
         /// 审核是否通过 1:通过 2拒绝
         /// </summary>
-        public int isAudit { get; set; }
+        public int IsAudit { get; set; }
     }
 }

+ 1 - 1
OASystem/OASystem.Domain/Entities/Financial/Fin_ForeignReceivables.cs

@@ -87,7 +87,7 @@ namespace OASystem.Domain.Entities.Financial
 
         /// <summary>
         /// 添加方式   
-        /// 0 - 账单页面添加   1 - 预算成本页面添加
+        /// 0 - 账单模块   1 - 成本预算模块
         /// </summary>
         [SugarColumn(IsNullable = true, ColumnDataType = "int")]
         public int AddingWay { get; set; }

+ 1 - 0
OASystem/OASystem.Domain/Entities/System/Sys_Users.cs

@@ -180,6 +180,7 @@ namespace OASystem.Domain.Entities.System
         /// 岗位名称
         /// </summary>
         public string? JobName { get; set; }
+
     }
     #endregion
 }

+ 1 - 1
OASystem/OASystem.Domain/ViewModels/Financial/Fin_DailyFeePaymentView.cs

@@ -353,7 +353,7 @@ namespace OASystem.Domain.ViewModels.Financial
         public int transferTypeId { get; set; }
         public string transferTypeIdStr { get; set; }
         /// <summary>
-        /// 公转:62,私转:63
+        /// 公转:62,私转:63 --2024年4月9日 16:49:46 0,1
         /// </summary>
         public int transferParentId { get; set; }
         public string transferParentIdStr { get; set; }

+ 1 - 1
OASystem/OASystem.Domain/ViewModels/Financial/Fin_ForeignReceivablesView.cs

@@ -204,7 +204,7 @@ namespace OASystem.Domain.ViewModels.Financial
 
         /// <summary>
         /// 添加方式   
-        /// 0 - 账单页面添加   1 - 预算成本页面添加
+        /// 0 - 账单模块   1 - 预算成本页面添加
         /// </summary>
         public int AddingWay { get; set; }
 

+ 36 - 0
OASystem/OASystem.Domain/ViewModels/System/DefaultPostAuthView.cs

@@ -0,0 +1,36 @@
+using System;
+using System.Collections.Generic;
+using System.Linq;
+using System.Text;
+using System.Threading.Tasks;
+
+namespace OASystem.Domain.ViewModels.System
+{
+    /// <summary>
+    /// 默认职位权限 View
+    /// </summary>
+    public class DefaultPostPageAuthView
+    {
+        /// <summary>
+        /// 部门Id
+        /// </summary>
+        public int DepId { get; set; }
+
+        public List<PostPageAuth> PostPageAuths { get; set; } = new List<PostPageAuth>();
+
+        
+    }
+
+    public class PostPageAuth
+    {
+        /// <summary>
+        /// 职位Id
+        /// </summary>
+        public int PostId { get; set; }
+
+        /// <summary>
+        /// PageId
+        /// </summary>
+        public List<int> PageIds { get; set; } = new List<int>();
+    }
+}

+ 1 - 1
OASystem/OASystem.Infrastructure/Repositories/Financial/PaymentRefundAndOtherMoneyRepository.cs

@@ -271,7 +271,7 @@ namespace OASystem.Infrastructure.Repositories.Financial
                     //Id = dto.CcpId,
                     //CId = dto.CcpId,
                     DIId = dto.DiId,
-                    CTable = 98,// 285 --> 98
+                    CTable = 285,// 285 --> 98
                     PayDId = dto.PayDId,
                     ConsumptionPatterns = dto.ConsumptionPatterns,
                     ConsumptionDate = string.Empty,

+ 1 - 1
OASystem/OASystem.Infrastructure/Repositories/Groups/AirTicketResRepository.cs

@@ -344,7 +344,7 @@ namespace OASystem.Infrastructure.Repositories.Groups
                 {
                     DiId = DiId.Substring(0, DiId.Length - 1);
                 
-                string sql = string.Format(@"select * from Grp_DelegationInfo where Id in({0}) and IsDel={1}", DiId, 0);
+                string sql = string.Format(@"select * from Grp_DelegationInfo where Id in({0}) and IsDel={1} Order By Id Desc", DiId, 0);
                 List<Grp_DelegationInfo> grp_Delegations = _sqlSugar.SqlQueryable<Grp_DelegationInfo>(sql).ToList();
                     
                     if (grp_Delegations.Count == 0)

+ 93 - 96
OASystem/OASystem.Infrastructure/Repositories/Groups/DecreasePaymentsRepository.cs

@@ -126,104 +126,97 @@ namespace OASystem.Infrastructure.Repositories.Groups
                     var DecreasePayments = await _sqlSugar.SqlQueryable<Grp_DecreasePayments>(selectSql).FirstAsync();//查询是否存在
                     if (DecreasePayments != null)
                     {
-                        return result = new Result() { Code = -1, Msg = "该数据已存在,请勿重复添加!" };
+                        return new Result() { Code = -1, Msg = "该数据已存在,请勿重复添加!" };
                     }
                     else//不存在,可添加
                     {
 
                         id = await AddAsyncReturnId(grp_Decrease);
-                        if (id > 0)
+                        if (id < 1)
                         {
-                            result = new Result() { Code = 0, Msg = "添加成功!" };
-                        }
-                        else
-                        {
-                            result = new Result() { Code = 0, Msg = "添加失败!" };
+                            RollbackTran();
+                            return new Result() { Code = -1, Msg = "添加失败!" };
                         }
-                        if (result.Code == 0)
-                        {
-                            //进行C表添加
-                            Grp_CreditCardPayment C = new Grp_CreditCardPayment();
-                            C.PayDId = dto.PayDId;
-                            C.ConsumptionPatterns = "";
-                            C.ConsumptionDate = "";
-                            C.CTDId = 0;
-                            C.BankNo = "";
-                            C.CardholderName = "";
-                            C.PayMoney = grp_Decrease.Price;
-                            C.PaymentCurrency = grp_Decrease.Currency;
-                            //当天汇率
-                            //if (!string.IsNullOrEmpty(hfRate.Value))
-                            //    C.DayRate = hfRate.Value;
-                            //else
-                            //C.DayRate = "";
-                            C.CompanyBankNo = "";
-                            C.OtherBankName = "";
-                            C.OtherSideNo = "";
-                            C.OtherSideName = "";
-                            C.Remark = "";
-                            C.CreateUserId = grp_Decrease.CreateUserId;
-                            C.MFOperator = 0;
-                            C.MFOperatorDate = "";
-                            C.IsAuditDM = 0;
-                            C.AuditDMOperate = 0;
-                            C.AuditDMDate = "";
-                            C.IsAuditMF = 0;
-                            C.AuditMFOperate = 0;
-                            C.AuditMFDate = "";
-                            C.IsAuditGM = 0;
-                            C.AuditGMOperate = 21;
-                            C.AuditGMDate = "";
-                            C.IsPay = 0;
-                            C.DIId = grp_Decrease.DiId;
-                            C.CId = id;
-                            C.CTable = 98;
-                            C.PayPercentage = 100;
-                            C.PayThenMoney = 0;
-                            C.PayPercentageOld = 0;
-                            C.PayThenMoneyOld = 0;
-                            C.UpdateDate = "";
-                            C.Payee = dto.Payee;
-                            C.OrbitalPrivateTransfer = dto.OrbitalPrivateTransfer;
-                            C.ExceedBudget = 0;
-                            //C.RMBPrice = 0.00f;
+                        
+                        //进行C表添加
+                        Grp_CreditCardPayment C = new Grp_CreditCardPayment();
+                        C.PayDId = dto.PayDId;
+                        C.ConsumptionPatterns = "";
+                        C.ConsumptionDate = "";
+                        C.CTDId = 0;
+                        C.BankNo = "";
+                        C.CardholderName = "";
+                        C.PayMoney = grp_Decrease.Price;
+                        C.PaymentCurrency = grp_Decrease.Currency;
+                        //当天汇率
+                        //if (!string.IsNullOrEmpty(hfRate.Value))
+                        //    C.DayRate = hfRate.Value;
+                        //else
+                        //C.DayRate = "";
+                        C.CompanyBankNo = "";
+                        C.OtherBankName = "";
+                        C.OtherSideNo = "";
+                        C.OtherSideName = "";
+                        C.Remark = "";
+                        C.CreateUserId = grp_Decrease.CreateUserId;
+                        C.MFOperator = 0;
+                        C.MFOperatorDate = "";
+                        C.IsAuditDM = 0;
+                        C.AuditDMOperate = 0;
+                        C.AuditDMDate = "";
+                        C.IsAuditMF = 0;
+                        C.AuditMFOperate = 0;
+                        C.AuditMFDate = "";
+                        C.IsAuditGM = 0;
+                        C.AuditGMOperate = 21;
+                        C.AuditGMDate = "";
+                        C.IsPay = 0;
+                        C.DIId = grp_Decrease.DiId;
+                        C.CId = id;
+                        C.CTable = 98;
+                        C.PayPercentage = 100;
+                        C.PayThenMoney = 0;
+                        C.PayPercentageOld = 0;
+                        C.PayThenMoneyOld = 0;
+                        C.UpdateDate = "";
+                        C.Payee = dto.Payee;
+                        C.OrbitalPrivateTransfer = dto.OrbitalPrivateTransfer;
+                        C.ExceedBudget = 0;
+                        //C.RMBPrice = 0.00f;
 
-                            //设置该团组的汇率
-                            TeamRateDescAddCurrencyIdView teamRate = teamRates.Where(it => it.CurrencyCode == grp_Decrease.Currency.ToString()).FirstOrDefault();
-                            //Grp_TeamRate _TeamRate = _sqlSugar.Queryable<Grp_TeamRate>().First(a => a.DiId == grp_Decrease.DiId && a.IsDel == 0 && a.CTable == 98);
-                            if (teamRate != null)
-                            {
-                                if (teamRate.CurrencyCode.Equals("CNY"))
-                                {
-                                    C.DayRate = 1.0000M;
-                                    C.RMBPrice = C.PayMoney;
-                                }
-                                else
-                                {
-                                    C.DayRate = teamRate.Rate;
-                                    C.RMBPrice = C.PayMoney * C.DayRate;
-                                }
-                            }
-                            else
+                        //设置该团组的汇率
+                        TeamRateDescAddCurrencyIdView teamRate = teamRates.Where(it => it.CurrencyCode == grp_Decrease.Currency.ToString()).FirstOrDefault();
+                        //Grp_TeamRate _TeamRate = _sqlSugar.Queryable<Grp_TeamRate>().First(a => a.DiId == grp_Decrease.DiId && a.IsDel == 0 && a.CTable == 98);
+                        if (teamRate != null)
+                        {
+                            if (teamRate.CurrencyCode.Equals("CNY"))
                             {
                                 C.DayRate = 1.0000M;
                                 C.RMBPrice = C.PayMoney;
                             }
-                            int cId = await _sqlSugar.Insertable(C).ExecuteReturnIdentityAsync();
-                            if (cId != 0)
-                            {
-                                result = new Result() { Code = 0, Msg = "添加成功!" };
-                            }
                             else
                             {
-                                RollbackTran();
-                                result = new Result() { Code = -1, Msg = "添加失败!" };
+                                C.DayRate = teamRate.Rate;
+                                C.RMBPrice = C.PayMoney * C.DayRate;
                             }
                         }
                         else
                         {
-                            result = new Result() { Code = -1, Msg = "添加失败!" };
+                            C.DayRate = 1.0000M;
+                            C.RMBPrice = C.PayMoney;
+                        }
+                        int cId = await _sqlSugar.Insertable(C).ExecuteReturnIdentityAsync();
+                        if (cId != 0)
+                        {
+                            CommitTran();
+                            return new Result() { Code = 0, Msg = "添加成功!" };
+                        }
+                        else
+                        {
+                            RollbackTran();
+                            return new Result() { Code = -1, Msg = "添加失败!" };
                         }
+                        
                     }
 
                 }
@@ -265,44 +258,48 @@ namespace OASystem.Infrastructure.Repositories.Groups
                                 grp_CreditCardPayment.DayRate = 1M;
                                 grp_CreditCardPayment.RMBPrice = grp_Decrease.Price;
                             }
-                            int CTable = await _sqlSugar.Updateable<Grp_CreditCardPayment>().Where(a => a.Id == grp_CreditCardPayment.Id).SetColumns(a => new Grp_CreditCardPayment
-                            {
-                                PayDId = dto.PayDId,
-                                PayMoney = grp_Decrease.Price,
-                                PaymentCurrency = grp_Decrease.Currency,
-                                Payee = dto.Payee,
-                                OrbitalPrivateTransfer = dto.OrbitalPrivateTransfer,
-                                DayRate = grp_CreditCardPayment.DayRate,
-                                RMBPrice = grp_CreditCardPayment.RMBPrice,
+                            int CTable = await _sqlSugar.Updateable<Grp_CreditCardPayment>()
+                                                        .Where(a => a.Id == grp_CreditCardPayment.Id)
+                                                        .SetColumns(a => new Grp_CreditCardPayment
+                                                        {
+                                                            PayDId = dto.PayDId,
+                                                            PayMoney = grp_Decrease.Price,
+                                                            PaymentCurrency = grp_Decrease.Currency,
+                                                            Payee = dto.Payee,
+                                                            OrbitalPrivateTransfer = dto.OrbitalPrivateTransfer,
+                                                            DayRate = grp_CreditCardPayment.DayRate,
+                                                            RMBPrice = grp_CreditCardPayment.RMBPrice,
 
-                            }).ExecuteCommandAsync();
-                            if (CTable != 0)
+                                                        }).ExecuteCommandAsync();
+                            if (CTable > 0)
                             {
-                                result = new Result() { Code = 0, Msg = "修改成功!" };
+                                CommitTran();
+                                return new Result() { Code = 0, Msg = "修改成功!" };
                             }
                             else
                             {
-                                result = new Result() { Code = -1, Msg = "修改失败!" };
                                 RollbackTran();
+                                return new Result() { Code = -1, Msg = "修改失败!" };
                             }
                         }
                         else
                         {
                             RollbackTran();
-                            result = new Result() { Code = -1, Msg = "修改失败!" };
+                            return new Result() { Code = -1, Msg = "修改失败!" };
                         }
                     }
                     else
                     {
-                        result = new Result() { Code = -1, Msg = "修改失败!" };
+                        RollbackTran();
+                        return new Result() { Code = -1, Msg = "修改失败!" };
                     }
                 }
-                CommitTran();
+               
             }
             catch (Exception ex)
             {
                 RollbackTran();
-                result = new Result() { Code = -2, Msg = "未知错误" };
+                return new Result() { Code = -2, Msg = ex.Message };
             }
             return result;
         }

+ 1 - 0
OASystem/OASystem.Infrastructure/Repositories/Groups/EnterExitCostRepository.cs

@@ -123,6 +123,7 @@ namespace OASystem.Infrastructure.Repositories.Groups
             Result result = new Result() { Code =-1,Msg="操作失败!" };
 
             var enterExitCost = _mapper.Map<Grp_EnterExitCost>(dto);
+            //enterExitCost.InsidePay = enterExitCost.Visa + enterExitCost.YiMiao + enterExitCost.HeSuan + enterExitCost.Service + enterExitCost.Safe + enterExitCost.Ticket;
             var quarterageData = _mapper.Map<List<Grp_DayAndCost>>(dto.QuarterageData);  //住宿费 1
             quarterageData = quarterageData.Select(it => { it.CreateUserId = dto.UserId; return it; }).ToList();
 

+ 4 - 2
OASystem/OASystem.Infrastructure/Repositories/Login/LoginRepository.cs

@@ -180,7 +180,7 @@ namespace OASystem.Infrastructure.Repositories.Login
         public async Task<string> CreateNumber(int depId) {
             string number = string.Empty;
 
-            string userSql = string.Format("Select * From  Sys_Users Where DepId = {0} And Number != '' Order By Id Desc", depId);
+            string userSql = string.Format("Select * From  Sys_Users Where Number != '' Order By Id Desc", depId);
             var userData = await _sqlSugar.SqlQueryable<Sys_Users>(userSql).ToListAsync();
             //if (userData.Count <= 0) return number;
 
@@ -195,8 +195,10 @@ namespace OASystem.Infrastructure.Repositories.Login
             while (true) 
             {
                 number = numPrefix + numSuffix.ToString();
-                var userData1 = userData.Where(it => it.Number == number).FirstOrDefault();
+
+                var userData1 = userData.Find(it => it.Number == number); //公司验证Number 
                 if (userData1 == null) break;
+
                 numSuffix++;
             }
 

+ 2 - 0
OASystem/OASystem.Infrastructure/Repositories/System/SetDataRepository.cs

@@ -332,5 +332,7 @@ namespace OASystem.Infrastructure.Repositories.System
             }
             
         }
+
+        
     }
 }