Browse Source

接团客户名单 --> (CURD)增加是否陪同字段

LEIYI 8 months ago
parent
commit
1ea2d27026

+ 11 - 0
OASystem/OASystem.Domain/Dtos/Groups/TourClientListDto.cs

@@ -57,6 +57,12 @@ namespace OASystem.Domain.Dtos.Groups
         /// </summary>
         public int DiId { get; set; }
 
+        /// <summary>
+        /// 是否陪同
+        /// 1 否 2 是
+        /// </summary>
+        public int IsAccompany { get; set; } = 1;
+
         /// <summary>
         /// 姓
         /// </summary>
@@ -155,6 +161,11 @@ namespace OASystem.Domain.Dtos.Groups
     /// </summary>
     public class TourClientListInfo
     {
+        /// <summary>
+        /// 是否陪同
+        /// 1 否 2 是
+        /// </summary>
+        public int IsAccompany { get; set; } = 1;
         /// <summary>
         /// 姓
         /// </summary>

+ 2 - 1
OASystem/OASystem.Domain/Entities/Groups/Grp_TourClientList.cs

@@ -53,8 +53,9 @@ namespace OASystem.Domain.Entities.Groups
         /// <summary>
         /// 是否陪同
         /// 1 否 2 是
+        /// 默认:1
         /// </summary>
         [SugarColumn(IsNullable = true, ColumnDataType = "int")]
-        public int IsAccompany { get; set; }
+        public int IsAccompany { get; set; } = 1;
     }
 }

+ 12 - 0
OASystem/OASystem.Domain/ViewModels/Groups/TourClientListView.cs

@@ -26,6 +26,12 @@ namespace OASystem.Domain.ViewModels.Groups
     {
         public int Id { get; set; }
 
+        /// <summary>
+        /// 是否陪同
+        /// 1 否 2 是
+        /// </summary>
+        public int IsAccompany { get; set; }
+
         /// <summary>
         /// 姓
         /// </summary>
@@ -80,6 +86,12 @@ namespace OASystem.Domain.ViewModels.Groups
     {
         public int Id { get; set; }
 
+        /// <summary>
+        /// 是否陪同
+        /// 1 否 2 是
+        /// </summary>
+        public int IsAccompany { get; set; }
+
         /// <summary>
         /// 姓
         /// </summary>

+ 51 - 15
OASystem/OASystem.Infrastructure/Repositories/Groups/TourClientListRepository.cs

@@ -76,6 +76,7 @@ namespace OASystem.Infrastructure.Repositories.Groups
 SELECT
   tcl.Id,
   tcl.DiId,
+  tcl.IsAccompany,
   temp.*,
   u.CnName AS Operator,
   tcl.CreateTime AS OperatingTime
@@ -174,20 +175,53 @@ WHERE
         {
             if (portId == 1 || portId == 2 || portId == 3) // 1 web 2 Android 3 ios
             {
-                string sql = string.Format(@"Select tcl.Id,tcl.DiId,temp.*,tcl.ShippingSpaceTypeId,tcl.ShippingSpaceSpecialNeeds,
-                                             tcl.HotelSpecialNeeds,tcl.MealSpecialNeeds,tcl.Remark
-                                             From Grp_TourClientList tcl
-                                             Left Join 
-	                                             (Select dc.Id As DcId,dc.LastName,dc.FirstName,dc.Pinyin,dc.Sex,ccom.CompanyFullName,dc.Job,
-	                                                 cc1.CertNo As IDCardNo,dc.Phone,dc.BirthDay,cc2.PassportType,cc2.CertNo As PassportNo,cc2.Country,
-	                                                 cc2.Area,cc2.IssueDt,cc2.ExpiryDt
-	                                                 From Crm_DeleClient dc
-	                                                 Left Join Crm_CustomerCompany ccom On dc.CrmCompanyId = ccom.Id  And ccom.IsDel = 0
-	                                                 Left Join Crm_CustomerCert cc1 On dc.Id = cc1.DcId And cc1.SdId = 773 And cc1.IsDel = 0
-	                                                 Left Join Crm_CustomerCert cc2 On dc.Id = cc2.DcId And cc2.SdId = 774 And cc2.IsDel = 0
-	                                                 Where dc.IsDel = 0) temp 
-                                             On temp.DcId =tcl.ClientId  
-                                             Where tcl.IsDel = 0 And tcl.Id = {0}", id);
+                string sql = string.Format(@"
+SELECT
+  tcl.Id,
+  tcl.DiId,
+  tcl.IsAccompany,
+  temp.*,
+  tcl.ShippingSpaceTypeId,
+  tcl.ShippingSpaceSpecialNeeds,
+  tcl.HotelSpecialNeeds,
+  tcl.MealSpecialNeeds,
+  tcl.Remark
+FROM
+  Grp_TourClientList tcl
+  LEFT JOIN (
+    SELECT
+      dc.Id AS DcId,
+      dc.LastName,
+      dc.FirstName,
+      dc.Pinyin,
+      dc.Sex,
+      ccom.CompanyFullName,
+      dc.Job,
+      cc1.CertNo AS IDCardNo,
+      dc.Phone,
+      dc.BirthDay,
+      cc2.PassportType,
+      cc2.CertNo AS PassportNo,
+      cc2.Country,
+      cc2.Area,
+      cc2.IssueDt,
+      cc2.ExpiryDt
+    FROM
+      Crm_DeleClient dc
+      LEFT JOIN Crm_CustomerCompany ccom ON dc.CrmCompanyId = ccom.Id
+      AND ccom.IsDel = 0
+      LEFT JOIN Crm_CustomerCert cc1 ON dc.Id = cc1.DcId
+      AND cc1.SdId = 773
+      AND cc1.IsDel = 0
+      LEFT JOIN Crm_CustomerCert cc2 ON dc.Id = cc2.DcId
+      AND cc2.SdId = 774
+      AND cc2.IsDel = 0
+    WHERE
+      dc.IsDel = 0
+  ) temp ON temp.DcId = tcl.ClientId
+WHERE
+  tcl.IsDel = 0
+  AND tcl.Id = {0}", id);
                 var data = await _sqlSugar.SqlQueryable<TourClientListDetailsView>(sql).FirstAsync();
                 if (data != null) 
                 {
@@ -469,6 +503,7 @@ WHERE
                 //团组客户信息名单操作
                 Grp_TourClientList _TourClientList = new Grp_TourClientList()
                 {
+                    IsAccompany = dto.IsAccompany,
                     DiId = dto.DiId,
                     ClientId = clientId,
                     ShippingSpaceTypeId = dto.ShippingSpaceTypeId,
@@ -496,6 +531,7 @@ WHERE
                     var certEdit = await _sqlSugar.Updateable(_TourClientList).UpdateColumns(it =>
                                                                                 new
                                                                                 {
+                                                                                    it.IsAccompany,
                                                                                     it.ClientId,
                                                                                     it.ShippingSpaceTypeId,
                                                                                     it.ShippingSpaceSpecialNeeds,
@@ -694,6 +730,7 @@ WHERE
                 Grp_TourClientList _TourClientList = new Grp_TourClientList()
                 {
                     DiId = _DiId,
+                    IsAccompany = item.IsAccompany,
                     ClientId = clientId,
                     ShippingSpaceTypeId = item.ShippingSpaceTypeId,
                     CreateUserId = _UserId,
@@ -703,7 +740,6 @@ WHERE
                     Remark = item.Remark
                 };
 
-
                 //判断现有团组客户名单是否存在该客户
                 var QuerFirstClient = _sqlSugar.Queryable<Grp_TourClientList>().First(x => x.ClientId == _TourClientList.ClientId && x.DiId == _TourClientList.DiId && x.IsDel == 0);
                 if (QuerFirstClient != null)