From 18d2f40bbf40469b033de6f07ca8a8e3bc191132 Mon Sep 17 00:00:00 2001
From: dengjunjie <dengjunjie@hnkhzn.com>
Date: 星期六, 26 四月 2025 19:21:40 +0800
Subject: [PATCH] 优化代码

---
 项目代码/WMS/WIDESEA_WMSServer/WIDESEA_BasicService/Base/LocationInfoService.cs |   76 +++++++++++++++++++++++++++++++++++++-
 1 files changed, 74 insertions(+), 2 deletions(-)

diff --git "a/\351\241\271\347\233\256\344\273\243\347\240\201/WMS/WIDESEA_WMSServer/WIDESEA_BasicService/Base/LocationInfoService.cs" "b/\351\241\271\347\233\256\344\273\243\347\240\201/WMS/WIDESEA_WMSServer/WIDESEA_BasicService/Base/LocationInfoService.cs"
index ce79bea..f5e9bda 100644
--- "a/\351\241\271\347\233\256\344\273\243\347\240\201/WMS/WIDESEA_WMSServer/WIDESEA_BasicService/Base/LocationInfoService.cs"
+++ "b/\351\241\271\347\233\256\344\273\243\347\240\201/WMS/WIDESEA_WMSServer/WIDESEA_BasicService/Base/LocationInfoService.cs"
@@ -2,9 +2,12 @@
 using System;
 using System.Collections.Generic;
 using System.Linq;
+using System.Reflection.Metadata;
 using System.Text;
 using System.Threading.Tasks;
+using WIDESEA_Common;
 using WIDESEA_Core;
+using WIDESEA_Core.BaseRepository;
 using WIDESEA_Core.BaseServices;
 using WIDESEA_Core.Enums;
 using WIDESEA_Core.Helper;
@@ -41,7 +44,38 @@
         {
             return base.DeleteData(keys);
         }
+        public override PageGridData<Dt_LocationInfo> GetPageData(PageDataOptions options)
+        {
+            return base.GetPageData(options);
+        }
+        /// <summary>
+        /// 淇敼璐т綅鐨勭鐢ㄧ姸鎬�
+        /// </summary>
+        /// <param name="saveModel"></param>
+        /// <returns></returns>
+        public WebResponseContent UpdateEnableStatus(SaveModel saveModel)
+        {
+            WebResponseContent content = new WebResponseContent();
+            try
+            {
+                List<Dt_LocationInfo> locationInfos = Repository.QueryData(x => saveModel.DelKeys.Contains(x.Id));
+                var values = Enum.GetValues(typeof(EnableStatusEnum));
+                var Index = saveModel.Extra.ObjToInt();
+                var EnableStatus = (EnableStatusEnum)values.GetValue(Index);
+                locationInfos.ForEach(x =>
+                {
+                    x.EnableStatus = EnableStatus.ObjToInt();
+                });
+                Repository.UpdateData(locationInfos);
+                content.OK();
+            }
+            catch (Exception ex)
+            {
+                content.Error(ex.Message);
+            }
 
+            return content;
+        }
         public WebResponseContent LocationEnableStatus(int[] keys)
         {
             List<Dt_LocationInfo> locationInfos = Repository.QueryData(x => keys.Contains(x.Id));
@@ -76,6 +110,42 @@
             return LocationDisableStatus(new int[] { key });
         }
 
+        public WebResponseContent GetLocationCodes()
+        {
+            WebResponseContent content = new WebResponseContent();
+            try
+            {
+                //content.OK(_basicRepository.MaterielInfoRepository.Getmaterianame(saveModel).Message, Repository.QueryData(x => x.EnableStatus == EnableStatusEnum.Normal.ObjToInt()).Select(x => x.LocationCode).ToList());
+                content.OK(data: Repository.QueryData(x => x.EnableStatus == EnableStatusEnum.Normal.ObjToInt()).Select(x => x.LocationCode).ToList());
+            }
+            catch (Exception ex)
+            {
+                content.Error(ex.Message);
+            }
+            return content;
+        }
+        public object GetLocationLayer()
+        {
+            List<object> list = new List<object>();
+            var data = Db.Ado.SqlQuery<LocationArea>(@"SELECT areaName,areaCode,roadwayNo,layer from Dt_AreaInfo as t1
+                    INNER JOIN
+                    (
+                    select DISTINCT  AreaId,RoadwayNo,Layer from Dt_LocationInfo 
+                    ) as t2
+                    on t1.Id=t2.AreaId");
+            foreach (var item in data.GroupBy(t => t.areaName))
+            {
+                var obj = new
+                {
+                    areaName = item.Key,
+                    areaCode = item.Max(x => x.areaCode),
+                    tunnel = item.Select(t => t.roadwayNo).OrderBy(t => t).Distinct().ToList(),
+                    Layers = item.Select(t => t.layer).OrderBy(t => t).ToList(),
+                };
+                list.Add(obj);
+            }
+            return list;
+        }
         public WebResponseContent InitializationLocation(InitializationLocationDTO initializationLocationDTO)
         {
             try
@@ -101,13 +171,15 @@
                                 LocationType = LocationTypeEnum.Cube.ObjToInt(),
                                 RoadwayNo = initializationLocationDTO.Roadway,
                                 Row = i + 1,
+                                MaxQty = 12,
+                                CurrentQty = 0,
                             };
 
                             if (initializationLocationDTO.IsSingleDepth)
                             {
                                 locationInfo.Depth = 1;
-                                locationInfo.LocationCode = $"R{initializationLocationDTO.Roadway.ToString().PadLeft(2, '0')}-{locationInfo.Row.ToString().PadLeft(3, '0')}-{locationInfo.Column.ToString().PadLeft(3, '0')}-{locationInfo.Layer.ToString().PadLeft(3, '0')}-{locationInfo.Depth.ToString().PadLeft(2, '0')}";
-                                locationInfo.LocationName = $"R{initializationLocationDTO.Roadway.ToString().PadLeft(2, '0')}宸烽亾{locationInfo.Row.ToString().PadLeft(3, '0')}琛寋locationInfo.Column.ToString().PadLeft(3, '0')}鍒梴locationInfo.Layer.ToString().PadLeft(3, '0')}灞倇locationInfo.Depth.ToString().PadLeft(2, '0')}娣�";
+                                locationInfo.LocationCode = $"{locationInfo.Row.ToString().PadLeft(3, '0')}-{locationInfo.Column.ToString().PadLeft(3, '0')}-{locationInfo.Layer.ToString().PadLeft(3, '0')}";
+                                locationInfo.LocationName = $"{locationInfo.Row.ToString().PadLeft(3, '0')}琛寋locationInfo.Column.ToString().PadLeft(3, '0')}鍒梴locationInfo.Layer.ToString().PadLeft(3, '0')}灞�";
                             }
                             else
                             {

--
Gitblit v1.9.3