分支自 SuZhouGuanHong/TaiYuanTaiZhong

dengjunjie
2024-05-19 429bb4abbaea6fd6be33dcf62735d4ada5070b63
´úÂë¹ÜÀí/WMS/WMS_Server/WIDESEA_WMS/Services/system/Partial/dt_stationinfoService.cs
@@ -23,6 +23,8 @@
using WIDESEA_Core.ManageUser;
using OfficeOpenXml.FormulaParsing.Excel.Functions.Text;
using static System.Collections.Specialized.BitVector32;
using WIDESEA_Core.EFDbContext;
using WIDESEA_WMS.Repositories;
namespace WIDESEA_WMS.Services
{
@@ -59,7 +61,7 @@
            WebResponseContent webResponse = new WebResponseContent();
            try
            {
                var Tel = UserContext.Current.UserInfo.Tel;//缓存架权限
                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();
@@ -95,11 +97,28 @@
            }
            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)
        {
@@ -119,6 +138,7 @@
            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)
@@ -128,17 +148,23 @@
                station.heatNumber = string.Empty;
                station.Number = string.Empty;
            }
            station.tray_status = list.Count == 0 ? "EmptyTray" : "StrogeTray";
            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;
                //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)
@@ -148,5 +174,23 @@
            return webResponse;
        }
        public WebResponseContent dt_stationinfolist()
        {
            WebResponseContent content = new WebResponseContent();
            VOLContext volContext = new VOLContext();
            Idt_stationinfoRepository dsta = new dt_stationinfoRepository(volContext);
            string[] stationCodes = { "A","S", "X", "W", "DD","B", "C", "D01"};
            List<Tuple<List<dt_stationinfo>, int>> responseData = new List<Tuple<List<dt_stationinfo>, int>>();
            foreach (string code in stationCodes)
            {
                var data = dsta.Find(_ => true).Where(a => a.stationCode.Contains(code)).OrderBy(a => a.stationCode).ToList();
                int inst = dsta.Find(_ => true).Where(a => a.stationCode.Contains(code)).GroupBy(a => a.line).Count();
                responseData.Add(Tuple.Create(data, inst));
            }
            content.Data = responseData;
            return content;
        }
    }
}