Bläddra i källkod

简化初始化,修复格式问题,新增属性

在 `GroupsController.cs` 中,简化了 `CurrencyInfo` 对象的初始化,去掉了构造函数调用中的类型声明。

在 `Program.cs` 中,修复了 `AddCors` 方法中注释的乱码问题。

在 `InvertedListDto.cs` 中,新增了 `CurrUserId` 属性。

在 `Grp_InvertedList.cs` 中:
  * 修复了类声明和属性声明中的格式问题。
  * 新增了多个与机票和酒店相关的属性。
  * 新增了多个表示每项是否选中的布尔属性。

在 `NewClientDataView.cs` 中:
  * 将 `countPage` 属性重命名为 `CountPage`。
  * 简化了 `NotUpdateDays` 属性的计算逻辑。

在 `InvertedListView.cs` 中:
  * 新增了多个与机票和酒店相关的属性。
  * 新增了多个表示每项是否选中的布尔属性。

在 `NewClientDataRepository.cs` 中:
  * 将 SQL 查询中的 `countPage` 别名改为 `CountPage`。
  * 将变量 `count` 的赋值改为使用 `CountPage` 属性。

在 `InvertedListRepository.cs` 中:
  * 删除了未使用的变量 `ilId`。
  * 合并了 `countryStr` 和 `countryDesc` 的声明。
  * 简化了字符串截取操作。
  * 新增了 `AirTicketDt` 和 `HotelDt` 的初始化。
  * 将 `_InvertedListVisaCountries` 的声明改为使用 `var` 关键字。
LEIYI 2 månader sedan
förälder
incheckning
b5015b0b45

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

@@ -230,11 +230,11 @@ namespace OASystem.API.Controllers
             _opinionaireRep = opinionaireRep;
             _currencyInit = new List<CurrencyInfo>()
                 {
-                    new CurrencyInfo (){ CurrencyCode="USD",CurrencyName = "美元",Rate = 7.5000M },
-                    new CurrencyInfo (){ CurrencyCode="EUR",CurrencyName = "欧元",Rate = 8.0000M },
-                    new CurrencyInfo (){ CurrencyCode="GBP",CurrencyName = "英镑",Rate = 9.5000M },
-                    new CurrencyInfo (){ CurrencyCode="JPY",CurrencyName = "日元",Rate = 0.0500M },
-                    new CurrencyInfo (){ CurrencyCode="HKD",CurrencyName = "港币",Rate = 0.9500M },
+                    new(){ CurrencyCode="USD",CurrencyName = "美元",Rate = 7.5000M },
+                    new(){ CurrencyCode="EUR",CurrencyName = "欧元",Rate = 8.0000M },
+                    new(){ CurrencyCode="GBP",CurrencyName = "英镑",Rate = 9.5000M },
+                    new(){ CurrencyCode="JPY",CurrencyName = "日元",Rate = 0.0500M },
+                    new(){ CurrencyCode="HKD",CurrencyName = "港币",Rate = 0.9500M },
                 };
             _portTypeData = new List<int>() { 2, 3 };
             _tableorRep = tableorRep;

+ 1 - 1
OASystem/OASystem.Api/Program.cs

@@ -67,7 +67,7 @@ builder.Services.AddCors(policy =>
                 var allowedOrigins = new List<string>
                     {
                        "http://132.232.92.186:9002"
-                      
+
                     };
 
                 // 检查请求的来源是否在允许的列表中

+ 2 - 0
OASystem/OASystem.Domain/Dtos/Groups/InvertedListDto.cs

@@ -37,6 +37,8 @@ namespace OASystem.Domain.Dtos.Groups
         /// 请求类型
         /// </summary>
         public int PortType { get; set; }
+
+        public int CurrUserId { get; set; }
     }
 
     /// <summary>

+ 106 - 3
OASystem/OASystem.Domain/Entities/Groups/Grp_InvertedList.cs

@@ -12,12 +12,12 @@ namespace OASystem.Domain.Entities.Groups
     /// A:自然日  B:工作日
     /// </summary>
     [SugarTable("Grp_InvertedList")]
-    public class Grp_InvertedList:EntityBase
+    public class Grp_InvertedList : EntityBase
     {
         /// <summary>
         /// 团组Id
         /// </summary>
-        [SugarColumn(IsNullable = true,ColumnDataType = "int")]
+        [SugarColumn(IsNullable = true, ColumnDataType = "int")]
         public int DiId { get; set; }
 
         /// <summary>
@@ -48,7 +48,7 @@ namespace OASystem.Domain.Entities.Groups
 
         /// <summary>
         /// 报批时间
-        /// 1 预批件 2 正常批件 默认值??-1
+        /// 1 预批件 2 正常批件 默认值??-1
         /// </summary>
         [SugarColumn(IsNullable = true, ColumnDataType = "int")]
         public int ApprovalType { get; set; }
@@ -170,6 +170,47 @@ namespace OASystem.Domain.Entities.Groups
         [SugarColumn(IsNullable = true, ColumnDataType = "varchar(300)")]
         public string IssueVisaRemark { get; set; } = "外办领取签证";
 
+
+        /// <summary>
+        /// 机票 - B
+        /// </summary>
+        [SugarColumn(IsNullable = true, ColumnDataType = "varchar(30)")]
+        public string AirTicketDt { get; set; }
+
+        /// <summary>
+        /// 机票
+        /// 是否完成
+        /// </summary>
+        [SugarColumn(IsNullable = true, ColumnDataType = "int")]
+        public int IsAirTicket { get; set; } = 1;
+
+        /// <summary>
+        /// 机票 
+        /// 备注
+        /// </summary>
+        [SugarColumn(IsNullable = true, ColumnDataType = "varchar(300)")]
+        public string AirTicketRemark { get; set; } = "机票预订、出票、值机";
+
+        /// <summary>
+        /// 酒店 - B
+        /// </summary>
+        [SugarColumn(IsNullable = true, ColumnDataType = "varchar(30)")]
+        public string HotelDt { get; set; }
+
+        /// <summary>
+        /// 酒店
+        /// 是否完成
+        /// </summary>
+        [SugarColumn(IsNullable = true, ColumnDataType = "int")]
+        public int IsHotel { get; set; } = 1;
+
+        /// <summary>
+        /// 酒店 
+        /// 备注
+        /// </summary>
+        [SugarColumn(IsNullable = true, ColumnDataType = "varchar(300)")]
+        public string HotelRemark { get; set; } = "酒店确认、预订、确认号";
+
         /// <summary>
         /// 行前会 - A
         /// </summary>
@@ -210,6 +251,68 @@ namespace OASystem.Domain.Entities.Groups
         [SugarColumn(IsNullable = true, ColumnDataType = "varchar(300)")]
         public string AirportdDropOffRemark { get; set; } = "为出访人员办理登机服务及行李打包等";
 
+        #region 每项是否选中 0 false 1 true
+
+        /// <summary>
+        /// 送机 是否选中
+        /// </summary>
+        [SugarColumn(IsNullable = true, ColumnDataType = "bit")]
+        public bool IsSelectedAirportd { get; set; } = true;
+
+        /// <summary>
+        /// 报批/提供送签资料 是否选中
+        /// </summary>
+        [SugarColumn(IsNullable = true, ColumnDataType = "bit")]
+        public bool IsSelectedApprovalData { get; set; } = true;
+
+        /// <summary>
+        /// 出批件 是否选中
+        /// </summary>
+        [SugarColumn(IsNullable = true, ColumnDataType = "bit")]
+        public bool IsSelectedIssueApproval { get; set; } = true;
+
+        /// <summary>
+        /// 签证资料准备 是否选中
+        /// </summary>
+        [SugarColumn(IsNullable = true, ColumnDataType = "bit")]
+        public bool IsSelectedVisaInfo { get; set; } = true;
+
+        /// <summary>
+        /// 送签签证 是否选中
+        /// </summary>
+        [SugarColumn(IsNullable = true, ColumnDataType = "bit")]
+        public bool IsSelectedSendVisa { get; set; } = true;
+
+        /// <summary>
+        /// 出签 是否选中
+        /// </summary>
+        [SugarColumn(IsNullable = true, ColumnDataType = "bit")]
+        public bool IsSelectedIssueVisa { get; set; } = true;
+
+        /// <summary>
+        /// 机票 是否选中
+        /// </summary>
+        [SugarColumn(IsNullable = true, ColumnDataType = "bit")]
+        public bool IsSelectedAirTicket { get; set; } = true;
+
+        /// <summary>
+        /// 酒店 是否选中
+        /// </summary>
+        [SugarColumn(IsNullable = true, ColumnDataType = "bit")]
+        public bool IsSelectedHotel { get; set; } = true;
+
+        /// <summary>
+        /// 行前会 是否选中
+        /// </summary>
+        [SugarColumn(IsNullable = true, ColumnDataType = "bit")]
+        public bool IsSelectedPreTripMeeting { get; set; } = true;
+
+        /// <summary>
+        /// 送机 是否选中
+        /// </summary>
+        [SugarColumn(IsNullable = true, ColumnDataType = "bit")]
+        public bool IsSelectedAirportdDropOff { get; set; } = true;
+        #endregion
     }
 
     /// <summary>

+ 3 - 5
OASystem/OASystem.Domain/ViewModels/CRM/NewClientDataView.cs

@@ -190,7 +190,7 @@ namespace OASystem.Domain.ViewModels.CRM
         /// <summary>
         /// 总条数
         /// </summary>
-        public int countPage { get; set; }
+        public int CountPage { get; set; }
         /// <summary>
         /// 编号
         /// </summary>
@@ -223,14 +223,12 @@ namespace OASystem.Domain.ViewModels.CRM
         {
             get
             {
-                int days = 0;
                 if (LastUpdateTime == DateTime.MinValue)
                 {
-                    days = DateTime.Now.Subtract(CreateTime).Days;
                     LastUpdateTime = CreateTime;
+                    return DateTime.Now.Subtract(CreateTime).Days;
                 }
-                else days = DateTime.Now.Subtract(LastUpdateTime).Days;
-                return days;
+                else return DateTime.Now.Subtract(LastUpdateTime).Days;
             }
         }
     }

+ 84 - 0
OASystem/OASystem.Domain/ViewModels/Groups/InvertedListView.cs

@@ -163,6 +163,37 @@ namespace OASystem.Domain.ViewModels.Groups
         /// </summary>
         public string IssueVisaRemark { get; set; } = "外办领取签证";
 
+        /// <summary>
+        /// 机票 - B
+        /// </summary>
+        [SugarColumn(IsNullable = true, ColumnDataType = "varchar(30)")]
+        public string AirTicketDt { get; set; }
+
+        /// <summary>
+        /// 机票 是否完成
+        /// </summary>
+        public int IsAirTicket { get; set; } 
+
+        /// <summary>
+        /// 机票  备注
+        /// </summary>
+        public string AirTicketRemark { get; set; } = "机票预订、出票、值机";
+
+        /// <summary>
+        /// 酒店 - B
+        /// </summary>
+        public string HotelDt { get; set; }
+
+        /// <summary>
+        /// 酒店 是否完成
+        /// </summary>
+        public int IsHotel { get; set; } = 1;
+
+        /// <summary>
+        /// 酒店 备注
+        /// </summary>
+        public string HotelRemark { get; set; } = "酒店确认、预订、确认号";
+
         /// <summary>
         /// 行前会 - A
         /// </summary>
@@ -197,6 +228,59 @@ namespace OASystem.Domain.ViewModels.Groups
         /// </summary>
         public string AirportdDropOffRemark { get; set; } = "为出访人员办理登机服务及行李打包等";
 
+        #region 每项是否选中   false   true
+
+        /// <summary>
+        /// 送机 是否选中
+        /// </summary>
+        public bool IsSelectedAirportd { get; set; } = true;
+
+        /// <summary>
+        /// 报批/提供送签资料 是否选中
+        /// </summary>
+        public bool IsSelectedApprovalData { get; set; } = true;
+
+        /// <summary>
+        /// 出批件 是否选中
+        /// </summary>
+        public bool IsSelectedIssueApproval { get; set; } = true;
+
+        /// <summary>
+        /// 签证资料准备 是否选中
+        /// </summary>
+        public bool IsSelectedVisaInfo { get; set; } = true;
+
+        /// <summary>
+        /// 送签签证 是否选中
+        /// </summary>
+        public bool IsSelectedSendVisa { get; set; } = true;
+
+        /// <summary>
+        /// 出签 是否选中
+        /// </summary>
+        public bool IsSelectedIssueVisa { get; set; } = true;
+
+        /// <summary>
+        /// 机票 是否选中
+        /// </summary>
+        public bool IsSelectedAirTicket { get; set; } = true;
+
+        /// <summary>
+        /// 酒店 是否选中
+        /// </summary>
+        public bool IsSelectedHotel { get; set; } = true;
+
+        /// <summary>
+        /// 行前会 是否选中
+        /// </summary>
+        public bool IsSelectedPreTripMeeting { get; set; } = true;
+
+        /// <summary>
+        /// 送机 是否选中
+        /// </summary>
+        public bool IsSelectedAirportdDropOff { get; set; } = true;
+        #endregion
+
     }
     /// <summary>
     /// 签证国家信息

+ 2 - 2
OASystem/OASystem.Infrastructure/Repositories/CRM/NewClientDataRepository.cs

@@ -765,7 +765,7 @@ namespace OASystem.Infrastructure.Repositories.CRM
                 }
                 int pIndex = dto.PageIndex * dto.PageSize - dto.PageSize + 1;
                 int pSize = dto.PageIndex * dto.PageSize;
-                string sqlNew = string.Format(@"select (SELECT  COUNT(1) FROM Crm_NewClientData s left Join Sys_SetData s1  On s.Lvlid=s1.Id {0}) AS countPage,* from (select ROW_NUMBER() 
+                string sqlNew = string.Format(@"select (SELECT  COUNT(1) FROM Crm_NewClientData s left Join Sys_SetData s1  On s.Lvlid=s1.Id {0}) AS CountPage,* from (select ROW_NUMBER() 
                                                     over(order by s.CreateTime desc) RowNumber,s.*,s1.Name as 'LvlName' from Crm_NewClientData s left Join Sys_SetData s1  On s.Lvlid=s1.Id {0}) as co where    
                                                     RowNumber between {1} and {2} ", sqlWhere, pIndex, pSize);
 
@@ -860,7 +860,7 @@ namespace OASystem.Infrastructure.Repositories.CRM
 
                 if (NewClientDataView.Count > 0)
                 {
-                    int count = NewClientDataView[0].countPage;
+                    int count = NewClientDataView[0].CountPage;
                     float totalPage = (float)count / dto.PageSize;//总页数
                     if (totalPage == 0) totalPage = 1;
                     else totalPage = (int)Math.Ceiling((double)totalPage);

+ 6 - 13
OASystem/OASystem.Infrastructure/Repositories/Groups/InvertedListRepository.cs

@@ -150,8 +150,6 @@ namespace OASystem.Infrastructure.Repositories.Groups
                 return _result; 
             }
 
-           
-
             int ilId = info.Id;
 
             string visaSql = string.Format(@$"Select * From Grp_InvertedListVisaCountry Where Isdel={0} And ILId = {ilId}");
@@ -224,8 +222,7 @@ namespace OASystem.Infrastructure.Repositories.Groups
 
             List<VisaCountryInfo> visaCountryInfos = new List<VisaCountryInfo>();
 
-            string countryStr = "";
-            string countryDesc = "";
+            string countryStr = string.Empty,countryDesc = string.Empty;
             foreach (var item in visitCountry)
             {
 
@@ -242,15 +239,9 @@ namespace OASystem.Infrastructure.Repositories.Groups
                 countryDesc += $"{item}签证{visaDays}个工作日,";
             }
 
-            if (countryStr.Length > 0)
-            {
-                countryStr = countryStr.Substring(0, countryStr.Length - 1);
-            }
+            if (countryStr.Length > 0) countryStr = countryStr[..^1];
 
-            if (countryDesc.Length > 0)
-            {
-                countryDesc = countryDesc.Substring(0, countryDesc.Length - 1);
-            }
+            if (countryDesc.Length > 0) countryDesc = countryDesc[..^1];
 
             sqqzRemark = $"申请{countryStr}签证;{countryDesc}\r\n(签证周期仅供参考)";
 
@@ -279,6 +270,8 @@ namespace OASystem.Infrastructure.Repositories.Groups
                 VisaInformationDt = visitDt.AddDays(VisaInformation_advanceDays).ToString("yyyy-MM-dd"),
                 SendVisaDt = visitDt.AddDays(sendVisa_advanceDays).ToString("yyyy-MM-dd"),
                 IssueVisaDt = visitDt.AddDays(issueVisa_advanceDays).ToString("yyyy-MM-dd"),
+                AirTicketDt = visitDt.AddDays(issueVisa_advanceDays).ToString("yyyy-MM-dd"), //机票 应国交部要求默认使用出签时间
+                HotelDt = visitDt.AddDays(issueVisa_advanceDays).ToString("yyyy-MM-dd"),     //酒店 应国交部要求默认使用出签时间
                 PreTripMeetingDt = visitDt.AddDays(preTripMeeting_advanceDays).ToString("yyyy-MM-dd"),
                 AirportdDropOffDt = visitDt.AddDays(airportdDropOff_advanceDays).ToString("yyyy-MM-dd"),
                 CreateUserId = userId,
@@ -296,7 +289,7 @@ namespace OASystem.Infrastructure.Repositories.Groups
                 return _result;
             }
 
-            List<Grp_InvertedListVisaCountry> _InvertedListVisaCountries = new List<Grp_InvertedListVisaCountry>();
+            var _InvertedListVisaCountries = new List<Grp_InvertedListVisaCountry>();
             foreach (var item in visitCountry)
             {
                 int days = Convert.ToInt32(visaFeeDatas.Find(x => x.VisaCountry.Equals(item.Trim()))?.VisaTime ?? "0");