Przeglądaj źródła

机票部分代码调整

yuanrf 1 rok temu
rodzic
commit
44fbaafcd6

+ 22 - 0
OASystem/OASystem.Api/Controllers/GroupsController.cs

@@ -1818,6 +1818,28 @@ namespace OASystem.API.Controllers
             }
         }
 
+        /// <summary>
+        /// 根据团号获取客户信息
+        /// </summary>
+        /// <param name="dto"></param>
+        /// <returns></returns>
+        [HttpPost]
+        [ProducesResponseType(typeof(JsonView), StatusCodes.Status200OK)]
+        public IActionResult QueryClientInfoByDIID(QueryClientInfoByDIIDDto dto)
+        {
+            var jw = JsonView(false);
+            if (dto.DIID < 1)
+            {
+                jw.Msg += "请输入正确的diid";
+                return Ok(jw);
+            }
+            string sql = string.Format("select b.Id,b.Pinyin,b.lastName,b.firstName,b.phone from  Grp_TourClientList a, Crm_DeleClient b where a.clientid = b.id and a.isdel = 0 and a.diid = {0}",dto.DIID);
+            var arr = _sqlSugar.SqlQueryable<SimplClientInfo>(sql).ToList();
+            jw = JsonView(true, "获取成功!", arr);
+
+            return Ok(jw); 
+        }
+
         /// <summary>
         /// 机票费用录入,删除
         /// </summary>

+ 6 - 0
OASystem/OASystem.Domain/Dtos/Groups/AirTicketResDto.cs

@@ -34,6 +34,12 @@ namespace OASystem.Domain.Dtos.Groups
     {
         public int Id { get; set; }
     }
+
+    public class QueryClientInfoByDIIDDto
+    {
+        public int DIID { get; set; }
+    }
+
     public class AirTicketResOpDto
     {
         /// <summary>

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

@@ -186,4 +186,13 @@ namespace OASystem.Domain.ViewModels.Groups
         /// </summary>
         public string? CompanyFullName { get; set; }
     }
+
+    public class SimplClientInfo
+    {
+        public int Id { get; set; }
+        public string Pinyin { get; set; }
+        public string LastName { get; set; }
+        public string FirstName { get; set; }
+        public string Phone { get;set; }
+    }
 }

+ 8 - 4
OASystem/OASystem.Infrastructure/Repositories/Groups/AirTicketResRepository.cs

@@ -232,14 +232,18 @@ namespace OASystem.Infrastructure.Repositories.Groups
                 AirGroupCostParameterView _AirgroupCostParameter = _mapper.Map<AirGroupCostParameterView>(_GroupCostParameter);
                 for (int i = 0; i <_AirTicketReservations.Count; i++)
                 {
-                  string [] ClientArr=  _AirTicketReservations[i].ClientName.Split(',');
+                  string [] ClientArr=  _AirTicketReservations[i].ClientName.Split(',').Where(x=>!string.IsNullOrWhiteSpace(x)).ToArray();
                     
                     foreach (var item in ClientArr)
                     {
-                        Crm_GroupCustomer crm_GroupCustomer = _sqlSugar.Queryable<Crm_GroupCustomer>().Where(a => a.IsDel==0 && a.Id==int.Parse(item)).First();
-                        _AirTicketReservations[i].ClientNameStr+=crm_GroupCustomer.Pinyin+',';
+                        Crm_DeleClient DeleClient = _sqlSugar.Queryable<Crm_DeleClient>().Where(a => a.IsDel==0 && a.Id==int.Parse(item)).First();
+                        _AirTicketReservations[i].ClientNameStr+= DeleClient.Pinyin+',';
                     }
-                    _AirTicketReservations[i].ClientNameStr=_AirTicketReservations[i].ClientNameStr.Substring(0, _AirTicketReservations[i].ClientNameStr.Length-1);
+                    if (_AirTicketReservations[i].ClientNameStr is not null)
+                    {
+                        _AirTicketReservations[i].ClientNameStr = _AirTicketReservations[i].ClientNameStr.Substring(0, _AirTicketReservations[i].ClientNameStr.Length - 1);
+                    }
+                    
                 }
 
                 if (dto.PortType==1)