From 0b5ccdca6263cf7a2cee460f30c76ef1efea2811 Mon Sep 17 00:00:00 2001
From: dengjunjie <dengjunjie@hnkhzn.com>
Date: 星期六, 27 四月 2024 17:47:27 +0800
Subject: [PATCH] 人工出库,人工入库,人工移库,PDA扫码确认外协物料已被取走接口

---
 代码管理/WMS/WMS_Server/WIDESEA_WMS/Services/system/Partial/dt_stationinfoService.cs |  130 +++++++++++++++++++++++++++++++++++++++++++
 1 files changed, 130 insertions(+), 0 deletions(-)

diff --git "a/\344\273\243\347\240\201\347\256\241\347\220\206/WMS/WMS_Server/WIDESEA_WMS/Services/system/Partial/dt_stationinfoService.cs" "b/\344\273\243\347\240\201\347\256\241\347\220\206/WMS/WMS_Server/WIDESEA_WMS/Services/system/Partial/dt_stationinfoService.cs"
index 4b4f70c..f807711 100644
--- "a/\344\273\243\347\240\201\347\256\241\347\220\206/WMS/WMS_Server/WIDESEA_WMS/Services/system/Partial/dt_stationinfoService.cs"
+++ "b/\344\273\243\347\240\201\347\256\241\347\220\206/WMS/WMS_Server/WIDESEA_WMS/Services/system/Partial/dt_stationinfoService.cs"
@@ -17,9 +17,20 @@
 using Microsoft.Extensions.DependencyInjection;
 using Microsoft.AspNetCore.Http;
 using WIDESEA_WMS.IRepositories;
+using Newtonsoft.Json;
+using WIDESEA_Comm.LogInfo;
+using WIDESEA_Core.FreeDB;
+using WIDESEA_Core.ManageUser;
+using OfficeOpenXml.FormulaParsing.Excel.Functions.Text;
+using static System.Collections.Specialized.BitVector32;
 
 namespace WIDESEA_WMS.Services
 {
+    public class Parm
+    {
+        public List<string> data { get; set; }
+        public int type { get; set; }
+    }
     public partial class dt_stationinfoService
     {
         private readonly IHttpContextAccessor _httpContextAccessor;
@@ -37,10 +48,129 @@
             //澶氱鎴蜂細鐢ㄥ埌杩檌nit浠g爜锛屽叾浠栨儏鍐靛彲浠ヤ笉鐢�
             //base.Init(dbRepository);
         }
+        FreeDB freeDB = new FreeDB();
+        /// <summary>
+        /// 璁剧疆缂撳瓨鏋剁鐢ㄥ惎鐢�
+        /// </summary>
+        /// <param name="json"></param>
+        /// <returns></returns>
+        public WebResponseContent SetStationEnable(object json)
+        {
+            WebResponseContent webResponse = new WebResponseContent();
+            try
+            {
+                var Tel = UserContext.Current.UserInfo.Tel;
+                var data = JsonConvert.DeserializeObject<Parm>(json.ToString());
+                //var updateList = FreeDB.DB.Select<dt_stationinfo>().Where(t => data.data.Contains(t.id.ToString())).ToList();
+                var updateList = _repository.Find(x => data.data.Contains(x.id.ToString())).ToList();
+                if (!string.IsNullOrEmpty(Tel))
+                {
+                    var types = Tel.Split(',');
+                    foreach (var update in updateList)
+                    {
+                        var OK = false;
+                        foreach (var type in types)
+                        {
+                            if (update.stationCode.Contains(type))
+                                OK = true;
+                        }
+                        if (!OK) throw new Exception("褰撳墠璐﹀彿鏃犵鐢ㄦ潈闄�!");
+                    }
+                }
+
+                var res = freeDB.Update<dt_stationinfo>()
+                     .Set(t => t.enable, data.type == 1)
+                     .Where(t => data.data.Contains(t.id.ToString()))
+                     .ExecuteAffrows();
+
+                var msg = data.type == 1 ? "鍚敤" : "绂佺敤";
+                WriteDBLog.Write($"鎵嬪姩{msg}绔欑偣 ", $"{string.Join('銆�', updateList.Select(t => t.stationCode).ToArray())}", LogState.Sucess, "WMS", UserContext.Current.UserName);
+
+                webResponse.OK();
+            }
+            catch (Exception ex)
+            {
+                WriteDBLog.Write($"鎵嬪姩鍚敤鎴栫鐢ㄧ珯鐐� ", new { 閿欒淇℃伅 = ex.Message, 鏁版嵁 = json }, LogState.Error, "WMS", UserContext.Current.UserName);
+                webResponse.Error(ex.Message);
+            }
+            return webResponse;
+        }
+
+        public WebResponseContent SendAGVTask(object json)
+        {
+            WebResponseContent webResponse = new WebResponseContent();
+            try
+            {
+
+            }
+            catch (Exception ex)
+            {
+
+            }
+            return webResponse;
+        }
+
         public override WebResponseContent Add(SaveModel saveDataModel)
         {
 
             return base.Add(saveDataModel);
         }
+
+
+
+        public override WebResponseContent Update(SaveModel saveModel)
+        {
+            WebResponseContent webResponse = new WebResponseContent();
+            var station = _repository.FindFirst(x => x.id.ToString() == saveModel.MainData["id"].ToString());
+            station.location_state = saveModel.MainData["location_state"].ToString();
+            //station.bindSN = saveModel.MainData["bindSN"].ToString();
+            var SNS = saveModel.MainData["bindSN"].ToString().Split(",");
+            List<string> list = new List<string>();
+            foreach (var SN in SNS)
+            {
+                if (!string.IsNullOrEmpty(SN))
+                    list.Add(SN);
+            }
+            station.bindSN = string.Join(",", list);
+            station.quantity = list.Count;
+            station.stationType = saveModel.MainData["stationType"].ToString();
+            station.heatNumber = saveModel.MainData["heatNumber"].ToString();
+            station.Number = saveModel.MainData["Number"].ToString();
+            station.billetID = saveModel.MainData["billetID"].ToString();
+            station.remark = saveModel.MainData["remark"].ToString();
+            station.tray_type = saveModel.MainData["tray_type"].ToString();
+            if (list.Count == 0)
+            {
+                //station.tray_status = "EmptyTray";
+                station.stationType = string.Empty;
+                station.heatNumber = string.Empty;
+                station.Number = string.Empty;
+            }
+            station.tray_status = string.IsNullOrEmpty(station.stationType) ? "EmptyTray" : "StrogeTray";
+            if (station.location_state == "Empty" && !string.IsNullOrEmpty(station.stationType))
+            {
+                webResponse.Error("鍥惧彿涓嶄负绌�,璐т綅鐘舵�佷笉鑳借缃负绌鸿揣浣嶏紒");
+            }
+            //station.tray_status = list.Count == 0 ? "EmptyTray" : "StrogeTray";
+            if (station.location_state == "Empty")
+            {
+                station.stationType = string.Empty;
+                station.heatNumber = string.Empty;
+                station.Number = string.Empty;
+                station.billetID = string.Empty;
+                station.tray_status = string.Empty;
+                station.bindSN = string.Empty;
+                station.quantity = 0;
+                //if (!station.stationCode.Contains("S") && !station.stationCode.Contains("X") && !station.stationCode.Contains("W01001004") && !station.stationCode.Contains("W01001005"))
+                //    station.tray_type = string.Empty;
+            }
+            var count = _repository.Update(station, true);
+            if (count > 0)
+                webResponse.OK();
+            else
+                webResponse.Error();
+            return webResponse;
+        }
+
     }
 }

--
Gitblit v1.9.3