From 78279bd340545f8c07d1ff08764bd859ba404c83 Mon Sep 17 00:00:00 2001 From: wxw <Administrator@DESKTOP-5BIMHQ3> Date: 星期四, 19 十二月 2024 10:42:23 +0800 Subject: [PATCH] 修改问题 --- Wms/WMS.BLL/BllTransServer/RcsServer.cs | 58 +++++++++++++++++++++++++++++++++++++++++----------------- 1 files changed, 41 insertions(+), 17 deletions(-) diff --git a/Wms/WMS.BLL/BllTransServer/RcsServer.cs b/Wms/WMS.BLL/BllTransServer/RcsServer.cs index 270b6ef..afa76e9 100644 --- a/Wms/WMS.BLL/BllTransServer/RcsServer.cs +++ b/Wms/WMS.BLL/BllTransServer/RcsServer.cs @@ -373,8 +373,9 @@ { case "3"://娓呮礂璁惧鐢宠鍌ㄤ綅锛堝噣妗剁敵璇峰偍浣嶏級 //鏌ユ壘鍒拌杞﹂棿鍑�妗跺尯 - List<string> areaNoList = Db.Queryable<SysStorageArea>().Where(w => w.IsDel == "0" && w.Status == "0" && w.Type == "0" && w.WareHouseNo == houseNo).Select(s => s.AreaNo).ToList(); - loction = storageLocat.Where(w => w.WareHouseNo == houseNo && areaNoList.Contains(w.AreaNo)).OrderByDescending(o => o.CreateTime).First(); + //List<string> areaNoList = Db.Queryable<SysStorageArea>().Where(w => w.IsDel == "0" && w.Status == "0" && w.Type == "0" && w.WareHouseNo == houseNo).Select(s => s.AreaNo).ToList(); + //loction = storageLocat.Where(w => w.WareHouseNo == houseNo && areaNoList.Contains(w.AreaNo) && w.Status == "0" && w.Flag == "0").OrderByDescending(o => o.CreateTime).First(); + loction = GetLocatModel(houseNo, "0"); if (loction == null) { throw new Exception("璇ヨ溅闂村噣妗跺尯鏆傛棤绌轰綑鍌ㄤ綅"); @@ -389,8 +390,9 @@ throw new Exception("鎵规鍙蜂负绌猴紒"); } //鏌ユ壘鍒拌杞﹂棿棰勬贩鍖� - List<string> areaNoList2 = Db.Queryable<SysStorageArea>().Where(w => w.IsDel == "0" && w.Status == "0" && w.Type == "1" && w.WareHouseNo == houseNo).Select(s => s.AreaNo).ToList(); - loction = storageLocat.Where(w => w.WareHouseNo == houseNo && areaNoList2.Contains(w.AreaNo)).OrderByDescending(o => o.CreateTime).First(); + //List<string> areaNoList2 = Db.Queryable<SysStorageArea>().Where(w => w.IsDel == "0" && w.Status == "0" && w.Type == "1" && w.WareHouseNo == houseNo).Select(s => s.AreaNo).ToList(); + //loction = storageLocat.Where(w => w.WareHouseNo == houseNo && areaNoList2.Contains(w.AreaNo) && w.Status == "0" && w.Flag == "0").OrderByDescending(o => o.CreateTime).First(); + loction = GetLocatModel(houseNo, "1"); if (loction == null) { throw new Exception("璇ヨ溅闂撮娣峰尯鏆傛棤绌轰綑鍌ㄤ綅"); @@ -425,8 +427,9 @@ Db.Updateable(notice).ExecuteCommand(); //鏌ユ壘鍒拌杞﹂棿鍗婃垚鍝佸尯 - List<string> areaNoList3 = Db.Queryable<SysStorageArea>().Where(w => w.IsDel == "0" && w.Status == "0" && w.Type == "2" && w.WareHouseNo == houseNo).Select(s => s.AreaNo).ToList(); - loction = storageLocat.Where(w => w.WareHouseNo == houseNo && areaNoList3.Contains(w.AreaNo)).OrderByDescending(o => o.CreateTime).First(); + //List<string> areaNoList3 = Db.Queryable<SysStorageArea>().Where(w => w.IsDel == "0" && w.Status == "0" && w.Type == "2" && w.WareHouseNo == houseNo).Select(s => s.AreaNo).ToList(); + //loction = storageLocat.Where(w => w.WareHouseNo == houseNo && areaNoList3.Contains(w.AreaNo) && w.Status == "0" && w.Flag == "0").OrderByDescending(o => o.CreateTime).First(); + loction = GetLocatModel(houseNo, "2"); if (loction == null) { throw new Exception("璇ヨ溅闂村崐鎴愬搧鍖烘殏鏃犵┖浣欏偍浣�"); @@ -436,8 +439,9 @@ break; case "2"://涓嬫枡璁惧鐢宠鍌ㄤ綅锛堣剰妗剁敵璇峰偍浣嶏級 //鏌ユ壘鍒拌杞﹂棿鑴忔《鍖� - List<string> areaNoList4 = Db.Queryable<SysStorageArea>().Where(w => w.IsDel == "0" && w.Status == "0" && w.Type == "3" && w.WareHouseNo == houseNo).Select(s => s.AreaNo).ToList(); - loction = storageLocat.Where(w => w.WareHouseNo == houseNo && areaNoList4.Contains(w.AreaNo)).OrderByDescending(o => o.CreateTime).First(); + //List<string> areaNoList4 = Db.Queryable<SysStorageArea>().Where(w => w.IsDel == "0" && w.Status == "0" && w.Type == "3" && w.WareHouseNo == houseNo).Select(s => s.AreaNo).ToList(); + //loction = storageLocat.Where(w => w.WareHouseNo == houseNo && areaNoList4.Contains(w.AreaNo) && w.Status == "0" && w.Flag == "0").OrderByDescending(o => o.CreateTime).First(); + loction = GetLocatModel(houseNo, "3"); if (loction == null) { throw new Exception("璇ヨ溅闂磋剰妗跺尯鏆傛棤绌轰綑鍌ㄤ綅"); @@ -508,6 +512,33 @@ { //鍥炴粴浜嬪姟 Db.RollbackTran(); + throw new Exception(ex.Message); + } + } + /// <summary> + /// 鑾峰彇绌哄偍浣� + /// </summary> + /// <param name="houseNo">杞﹂棿缂栧彿</param> + /// <param name="Type">绫诲埆 0:鍑�妗跺尯 1:棰勬贩鍖� 2:鍗婃垚鍝佸尯 3:鑴忔《鍖�</param> + /// <returns></returns> + /// <exception cref="Exception"></exception> + private SysStorageLocat GetLocatModel(string houseNo,string type) + { + try + { + //閫氳繃绫诲埆鏌ユ壘杞﹂棿鍖哄煙 + List<string> areaNoList = Db.Queryable<SysStorageArea>().Where(w => w.IsDel == "0" && w.Status == "0" && w.Type == type && w.WareHouseNo == houseNo).Select(s => s.AreaNo).ToList(); + //鏌ユ壘鍌ㄤ綅 + var loctionModel = Db.Queryable<SysStorageLocat>().Where(w => w.IsDel == "0" && w.Status == "0" && w.Flag == "0" && w.WareHouseNo == houseNo && areaNoList.Contains(w.AreaNo)) + .OrderBy(o => o.Row).OrderByDescending(o => o.Column).First(); + if (loctionModel == null) + { + throw new Exception("璇ヨ溅闂村噣妗跺尯鏆傛棤绌轰綑鍌ㄤ綅"); + } + return loctionModel; + } + catch (Exception ex) + { throw new Exception(ex.Message); } } @@ -943,8 +974,6 @@ bool result = false; #region 鍛煎彨灏忚溅浠g爜 - List<AgvSchedulingTask> agvTaskList = new List<AgvSchedulingTask>(); - List<PositionCodePath> pahtList = new List<PositionCodePath>(); //璧峰浣嶇疆 PositionCodePath path1 = new PositionCodePath(); @@ -977,7 +1006,7 @@ agvTask.reqCode = taskDetial.Taskno;//璇锋眰缂栧彿 agvTask.taskCode = taskDetial.Taskno;//浠诲姟鍙� agvTask.ctnrCode = taskDetial.Pallno;//妗跺彿 - agvTask.ctnrTyp = "1"; + agvTask.ctnrTyp = "1";// 1:妗� 3锛氭墭鐩� agvTask.reqTime = DateTime.Now.ToString("yyyy-MM-dd HH:mm:ss");//璇锋眰鏃堕棿 agvTask.wbCode = ""; agvTask.positionCodePath = pahtList;//灏忚溅璺緞 @@ -991,14 +1020,9 @@ { agvTask.taskTyp = "Z4";//浠诲姟绫诲瀷 绾胯竟鍒版墭鐩樻敹闆嗗櫒 Z1锛� 鎵樼洏鍨涚敵璇峰叆搴� Z2 } - agvTaskList.Add(agvTask); // 姝e紡杩愯绋嬪簭鏀惧紑 - var list2 = agvTaskList.Select(m => m.reqCode).ToList(); - var jsonData = JsonConvert.SerializeObject(agvTaskList); - jsonData = jsonData.Substring(1); - jsonData = jsonData.Substring(0, jsonData.Length - 1); - + var jsonData = JsonConvert.SerializeObject(agvTask); string response = HttpHelper.DoPost(url, jsonData, "涓嬪彂缁橝GV杞繍鍛戒护", "AGV"); //瑙f瀽杩斿洖鏁版嵁 var agvModel = JsonConvert.DeserializeObject<OutCommanAgvDto>(response); -- Gitblit v1.8.0