Browse Source

op行程单部分完善

yuanrf 10 months ago
parent
commit
9a35f0a180

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

@@ -5241,7 +5241,8 @@ namespace OASystem.API.Controllers
                 return Ok(jw);
             }
 
-            if (groupList.Find(x=>x.Id == diid) == null)
+            group = groupList.Find(x => x.Id == diid);
+            if (group == null)
             {
                 jw.Msg = "请输入正确的团组ID!";
                 return Ok(jw);
@@ -5253,7 +5254,7 @@ namespace OASystem.API.Controllers
             {
                 var black = blackCode.First();
                 black.BlackCode = black.BlackCode == null ? "" : black.BlackCode;
-                var blackSp = Regex.Split(black.BlackCode,"\r\n");
+                var blackSp =  Regex.Split(black.BlackCode, "\\d+\\.", RegexOptions.IgnoreCase).Where(x=>!string.IsNullOrWhiteSpace(x)).ToArray();
                 if (blackSp.Length > 0)
                 {
                     try
@@ -5261,14 +5262,24 @@ namespace OASystem.API.Controllers
                         var cityArrCode = new List<string>(20);
                         foreach (var item in blackSp)
                         {
-                            var itemSp = item.Split('.')[1].Split(' ').Where(x => !string.IsNullOrWhiteSpace(x)).ToList();
+                            var itemSp = item.Split(' ').Where(x => !string.IsNullOrWhiteSpace(x)).ToList();
                             var IndexSelect = itemSp[2];
                             var startCity = IndexSelect.Substring(0, 3);
                             var endCity = IndexSelect.Substring(3, 3);
                             cityArrCode.Add(startCity.ToUpper());
                             cityArrCode.Add(startCity.ToUpper());
                         }
-                        string sql = $"SELECT * FROM Res_ThreeCode rtc WHERE UPPER(rtc.Three) in ({string.Join(",", cityArrCode)}) ";
+
+                        var cityThree = string.Empty;
+                        cityArrCode.ForEach(x => cityThree += "'" + x + "',");
+                        cityThree = cityThree.TrimEnd(',');
+                        if (string.IsNullOrWhiteSpace(cityThree))
+                        {
+                            throw new
+                                 Exception("error");
+                        }
+
+                        string sql = $"SELECT * FROM Res_ThreeCode rtc WHERE UPPER(rtc.Three) in ({cityThree}) ";
                         var cityArr = _sqlSugar.SqlQueryable<Res_ThreeCode>(sql).ToList();
                         foreach (var item in cityArrCode)
                         {
@@ -5301,7 +5312,8 @@ namespace OASystem.API.Controllers
                 Traffic_First = x.Traffic_First,
                 Traffic_Second = x.Traffic_Second,
                 Trip = x.Trip,
-                WeekDay = x.WeekDay
+                WeekDay = x.WeekDay,
+                 Id = x.Id
             }).ToList();
 
             jw.Data = new
@@ -5328,6 +5340,79 @@ namespace OASystem.API.Controllers
             return Ok(jw);
         }
 
+        /// <summary>
+        /// 删除团组行程单
+        /// </summary>
+        /// <returns></returns>
+        [HttpPost]
+        public IActionResult DelTravel(DelOpTravelDto dto)
+        {
+            var jw = JsonView(false);
+            var isTrue = _sqlSugar.Updateable<Grp_TravelList>().Where(x => x.Diid == dto.Diid && x.IsDel == 0)
+                .UpdateColumns(x => new Grp_TravelList
+            {
+                DeleteTime = DateTime.Now.ToString("yyyy-MM-dd"),
+                DeleteUserId = dto.UserId,
+                IsDel = 1,
+            }).ExecuteCommand();
+            jw = JsonView(true);
+            return Ok(jw);
+        }
+
+        /// <summary>
+        /// 行程单保存
+        /// </summary>
+        /// <returns></returns>
+        [HttpPost]
+        public IActionResult TravelSave(TravelSaveDto dto)
+        {
+            var jw = JsonView(false);
+            if(dto.Arr.Count < 1)
+            {
+                try
+                {
+                    _sqlSugar.BeginTran();
+                    foreach (var item in dto.Arr)
+                    {
+                        if (item.Id == 0)
+                        {
+                            throw new Exception("请传入正确的Id");
+                        }
+
+                        _sqlSugar.Updateable<Grp_TravelList>().Where(x => x.Id == item.Id)
+                            .UpdateColumns(x => new Grp_TravelList
+                            {
+                                Trip = item.Trip
+                            }).ExecuteCommand();
+                    }
+                    _sqlSugar.CommitTran();
+                    jw = JsonView(true);
+                }
+                catch (Exception ex)
+                {
+                    _sqlSugar.RollbackTran();
+                    jw.Msg = "程序异常!" + ex.Message;
+                }
+            }
+            else
+            {
+                jw.Msg = "请传入正确的参数!";
+            }
+
+            return Ok(jw);
+        }
+
+
+        /// <summary>
+        /// 导出行程单
+        /// </summary>
+        /// <param name="dto"></param>
+        /// <returns></returns>
+        [HttpPost]
+        public IActionResult ExportTravel(InitOpTravelDto dto)
+        {
+            return Ok();
+        }
 
 
         #endregion

+ 14 - 0
OASystem/OASystem.Domain/Dtos/Groups/CarTouristGuideGroundDto.cs

@@ -197,8 +197,22 @@ namespace OASystem.Domain.Dtos.Groups
         public int Diid { get; set;}
     }
 
+    public class DelOpTravelDto
+    {
+        public int Diid { get; set; }
+
+        public int UserId { get; set; }
+    }
+
+    public class TravelSaveDto
+    {
+       public List<TravelArrView> Arr { get; set; }
+
+    }
+
     public class TravelArrView
     {
+        public int Id { get; set; }
         /// <summary>
         ///  团组ID
         /// </summary>