From f735e389c01eed24d6b9792b35d2f98d15f3ecbb Mon Sep 17 00:00:00 2001 From: hwh <332078369@qq.com> Date: 星期六, 14 九月 2024 08:06:45 +0800 Subject: [PATCH] Merge branch 'master' of http://47.95.120.53:8083/r/WCSNet6 --- Admin.NET/WCS.Application/Service/WcsTask/Dto/WcsTaskOutput.cs | 16 + Admin.NET/WCS.Application/PLC/PLCService.cs | 16 + Admin.NET/WCS.Application/Service/WcsTask/WcsTaskService.cs | 11 + Admin.NET/WCS.Application/Service/WcsTaskMonitor/WcsTaskMonitorService.cs | 17 + Admin.NET/WCS.Application/Util/HttpService.cs | 189 +++------------------- Admin.NET/WCS.Application/Entity/WcsTask.cs | 20 ++ Admin.NET/WCS.Application/Enum/TaskEnum.cs | 17 ++ Admin.NET/WCS.Application/Service/WcsTask/Dto/WcsTaskInput.cs | 14 + Admin.NET/WCS.Application/PLC/PLCCommon.cs | 21 + Admin.NET/WCS.Application/Service/WcsTaskMonitor/Dto/WcsTaskMonitorOutput2.cs | 33 ++++ Admin.NET/WCS.Application/Model/TaskRequest.cs | 54 ++++++ Web/src/views/wcs/wcsTask/index.vue | 44 ++++ 12 files changed, 264 insertions(+), 188 deletions(-) diff --git a/Admin.NET/WCS.Application/Entity/WcsTask.cs b/Admin.NET/WCS.Application/Entity/WcsTask.cs index 4a3b69b..732fa88 100644 --- a/Admin.NET/WCS.Application/Entity/WcsTask.cs +++ b/Admin.NET/WCS.Application/Entity/WcsTask.cs @@ -108,7 +108,25 @@ /// </summary> [SugarColumn(ColumnName = "CompleteQty", ColumnDescription = "鎷嗗灈鏁伴噺")] public int? CompleteQty { get; set; } - + + /// <summary> + /// 鏄惁缁戝畾 + /// </summary> + [SugarColumn(ColumnName = "IsBind", ColumnDescription = "鏄惁缁戝畾")] + public IsBindEnum? IsBind { get; set; } + + /// <summary> + /// 鏁村灈鏁伴噺 + /// </summary> + [SugarColumn(ColumnName = "PalletQty", ColumnDescription = "鏁村灈鏁伴噺")] + public int? PalletQty { get; set; } + + /// <summary> + /// 鎷嗗灈宸ヤ綅鍙� + /// </summary> + [SugarColumn(ColumnName = "StationNum", ColumnDescription = "鎷嗗灈宸ヤ綅鍙�", Length = 10)] + public string? StationNum { get; set; } + /// <summary> /// 鎷h揣鏂瑰紡 /// </summary> diff --git a/Admin.NET/WCS.Application/Enum/TaskEnum.cs b/Admin.NET/WCS.Application/Enum/TaskEnum.cs index c59998b..814b46f 100644 --- a/Admin.NET/WCS.Application/Enum/TaskEnum.cs +++ b/Admin.NET/WCS.Application/Enum/TaskEnum.cs @@ -103,4 +103,21 @@ /// </summary> [Description("浜哄伐鎷h揣鍑�")] Artificial = 1, +} +/// <summary> +/// 鏄惁缁戝畾 +/// </summary> +[Description("鏄惁鎴愬姛鏋氫妇")] +public enum IsBindEnum +{ + /// <summary> + /// 鏈粦瀹� + /// </summary> + [Description("鏈粦瀹�")] + No = 0, + /// <summary> + /// 宸茬粦瀹� + /// </summary> + [Description("宸茬粦瀹�")] + Yes = 1 } \ No newline at end of file diff --git a/Admin.NET/WCS.Application/Model/TaskRequest.cs b/Admin.NET/WCS.Application/Model/TaskRequest.cs index 7587e00..1ae0b35 100644 --- a/Admin.NET/WCS.Application/Model/TaskRequest.cs +++ b/Admin.NET/WCS.Application/Model/TaskRequest.cs @@ -10,12 +10,62 @@ public class ResponseTasks { public string StatusCode { get; set; } - public string Success { get; set; } + public int Success { get; set; } public string Message { get; set; } - public WcsTask TaskList { get; set; } + public ResponseTasksModel TaskList { get; set; } } + +public class ResponseTasksModel +{ + /// <summary> + /// 浠诲姟鍙� + /// </summary> + public string TaskNo { get; set; } + + /// <summary> + /// 浠诲姟绫诲瀷 + /// </summary> + public string TaskType { get; set; } + + /// <summary> + /// 鎵樼洏鍙� + /// </summary> + public string PalletNo { get; set; } + + /// <summary> + /// 璧峰浣嶇疆 + /// </summary> + public string StartLocate { get; set; } + + /// <summary> + /// 璧峰宸烽亾 + /// </summary> + public string StartRoadway { get; set; } + + /// <summary> + /// 缁撴潫浣嶇疆 + /// </summary> + public string EndLocate { get; set; } + + /// <summary> + /// 鐩爣宸烽亾 + /// </summary> + public string EndRoadway { get; set; } + + /// <summary> + /// 鍑哄簱鍙� + /// </summary> + public string OutMode { get; set; } + + /// <summary> + /// 椤哄簭-浼樺厛绾� + /// </summary> + public int Order { get; set; } + +} + /// <summary> /// 鐢宠鍏ュ簱浠诲姟 宸烽亾鎴栧偍浣� /// </summary> diff --git a/Admin.NET/WCS.Application/PLC/PLCCommon.cs b/Admin.NET/WCS.Application/PLC/PLCCommon.cs index 8b64865..7407266 100644 --- a/Admin.NET/WCS.Application/PLC/PLCCommon.cs +++ b/Admin.NET/WCS.Application/PLC/PLCCommon.cs @@ -552,19 +552,28 @@ public static string GetRoadwayByStationNew(string StationNum) { string value = ""; - var conveyList1 = new List<string>() { "147", "145", "139", "137", "129", "127", "121", "119", "111", "109", "103", "101", "093", "091", "085", "083", "075", "073", "067", "065" }; - var conveyList2 = new List<string>() { "252", "254", "260", "262", "272", "270", "278", "280", "288", "290", "294", "301", "307", "309", "315", "317", "325", "327", "331", "337" }; - var conveyList3 = new List<string>() { "401", "402", "405", "406", "409", "410", "413", "414", "417", "418", "421", "422", "425", "426", "429", "430", "433", "434", "437", "438" }; + //var conveyList1 = new List<string>() { "147", "145", "139", "137", "129", "127", "121", "119", "111", "109", "103", "101", "093", "091", "085", "083", "075", "073", "067", "065" }; + //var conveyList2 = new List<string>() { "252", "254", "260", "262", "272", "270", "278", "280", "288", "290", "294", "301", "307", "309", "315", "317", "325", "327", "331", "337" }; + //var conveyList3 = new List<string>() { "401", "402", "405", "406", "409", "410", "413", "414", "417", "418", "421", "422", "425", "426", "429", "430", "433", "434", "437", "438" }; - if (conveyList1.Contains(StationNum)) + var ipInfo = _db.Queryable<WcsPlc>().Where(s => s.Type == PLCTypeEnum.StackingMachine || s.Type == PLCTypeEnum.ConveyorLine || s.Type == PLCTypeEnum.BoxConveyorLine); + var ip1 = ipInfo.First(m=>m.Text == "1灞傛墭鐩樿緭閫佺嚎"); + var ip2 = ipInfo.First(m=>m.Text == "2灞傛墭鐩樿緭閫佺嚎"); + var ip3 = ipInfo.First(m=>m.Text == "3灞傛墭鐩樿緭閫佺嚎"); + + var dev1 = PLCTaskAction.plcDevices.Where(m => m.IsDelete == false && m.PlcId == ip1.Id).Select(m=>m.StationNum).ToList(); + var dev2 = PLCTaskAction.plcDevices.Where(m => m.IsDelete == false && m.PlcId == ip2.Id).Select(m => m.StationNum).ToList(); + var dev3 = PLCTaskAction.plcDevices.Where(m => m.IsDelete == false && m.PlcId == ip3.Id).Select(m => m.StationNum).ToList(); + + if (dev1.Contains(StationNum)) { value = "1"; } - else if (conveyList2.Contains(StationNum)) + else if (dev2.Contains(StationNum)) { value = "2"; } - else if (conveyList3.Contains(StationNum)) + else if (dev3.Contains(StationNum)) { value = "3"; } diff --git a/Admin.NET/WCS.Application/PLC/PLCService.cs b/Admin.NET/WCS.Application/PLC/PLCService.cs index 9a7df32..aefbb9f 100644 --- a/Admin.NET/WCS.Application/PLC/PLCService.cs +++ b/Admin.NET/WCS.Application/PLC/PLCService.cs @@ -735,7 +735,7 @@ } string pallet = palletVal.ToString(); // 鑾峰彇浠诲姟淇℃伅 - var modTask = _db.Queryable<WcsTask>().First(s => s.IsDelete == false && s.PalletNo == pallet && (s.Status == TaskStatusEnum.Wait || s.Status == TaskStatusEnum.Doing) && s.TaskType == TaskTypeEnum.In && s.StartRoadway == modDevice.StationNum); + var modTask = _db.Queryable<WcsTask>().First(s => s.IsDelete == false && s.PalletNo == pallet && (s.Status == TaskStatusEnum.Wait || s.Status == TaskStatusEnum.Doing) && s.TaskType == TaskTypeEnum.In); if (modTask == null) { // 姝ゆ墭鐩樻病鏈夊搴旂殑杞Щ浠诲姟 led鏄剧ず @@ -749,8 +749,9 @@ // 浠诲姟鍙枫�佷换鍔$被鍨嬨�佹墭鐩樺彿 var modPosTask = modDevice.listStation.FirstOrDefault(s => s.Text == "浠诲姟鍙�"); listResult.Add(plcConn.SetPlcDBValue(modPosTask.PosType, modDevice.DbNumber, modPosTask.PlcPos, modTask.TaskNo)); - var modPosTaskType = modDevice.listStation.FirstOrDefault(s => s.Text == "浠诲姟鍙�"); - listResult.Add(plcConn.SetPlcDBValue(modPosTaskType.PosType, modDevice.DbNumber, modPosTaskType.PlcPos, modTask.TaskType.ToString())); + var modPosTaskType = modDevice.listStation.FirstOrDefault(s => s.Text == "浠诲姟绫诲瀷"); + var taskTypeStr = (int)modTask.TaskType; + listResult.Add(plcConn.SetPlcDBValue(modPosTaskType.PosType, modDevice.DbNumber, modPosTaskType.PlcPos, taskTypeStr.ToString())); var modPosPalletNo = modDevice.listStation.FirstOrDefault(s => s.Text == "鎵樼洏鐮�"); listResult.Add(plcConn.SetPlcDBValue(modPosPalletNo.PosType, modDevice.DbNumber, modPosPalletNo.PlcPos, modTask.PalletNo)); // 璧峰宸ヤ綅銆佺洰鐨勫伐浣� @@ -880,7 +881,7 @@ // 鑾峰彇宸ヤ綅鎵樼洏鐮佷俊鎭� var modPosPallet = modDevice.listStation.FirstOrDefault(m => m.Text == "鎵樼洏鐮�"); var (res, palletVal) = plcConn.GetPlcDBValue(PLCDataTypeEnum.String, modDevice.DbNumber, modPosPallet.PlcPos); - // 鑾峰彇宸ヤ綅鎵樼洏鐮佷俊鎭� + // 鑾峰彇宸ヤ綅浠诲姟鍙蜂俊鎭� var modPosTaskNo = modDevice.listStation.FirstOrDefault(m => m.Text == "浠诲姟鍙�"); var (taskRes, taskNoVal) = plcConn.GetPlcDBValue(PLCDataTypeEnum.String, modDevice.DbNumber, modPosTaskNo.PlcPos); if (!res.IsSucceed || !taskRes.IsSucceed ) @@ -941,12 +942,13 @@ var modPosTask = djInfos.FirstOrDefault(s => s.Text == "浠诲姟鍙�"); listResult.Add(plcStackeConn.SetPlcDBValue(modPosTask.PosType, djMod.DbNumber, modPosTask.PlcPos, modTask.TaskNo)); var modPosTaskType = djInfos.FirstOrDefault(s => s.Text == "浠诲姟绫诲瀷"); - listResult.Add(plcStackeConn.SetPlcDBValue(modPosTaskType.PosType, djMod.DbNumber, modPosTaskType.PlcPos, modTask.TaskType.ToString())); + var taskTypeStr = (int)modTask.TaskType; + listResult.Add(plcStackeConn.SetPlcDBValue(modPosTaskType.PosType, djMod.DbNumber, modPosTaskType.PlcPos, taskTypeStr.ToString())); var modPosPalletNo = djInfos.FirstOrDefault(s => s.Text == "鎵樼洏鍙�"); - listResult.Add(plcStackeConn.SetPlcDBValue(modPosPallet.PosType, djMod.DbNumber, modPosPallet.PlcPos, modTask.PalletNo)); + listResult.Add(plcStackeConn.SetPlcDBValue(modPosPalletNo.PosType, djMod.DbNumber, modPosPalletNo.PlcPos, modTask.PalletNo)); //璧峰宸ヤ綅 - var modPosStrStationNum = djInfos.FirstOrDefault(s => s.Text == "鍙栬揣鎺�"); + var modPosStrStationNum = djInfos.FirstOrDefault(s => s.Text == "璧峰宸ヤ綅"); listResult.Add(plcStackeConn.SetPlcDBValue(modPosStrStationNum.PosType, djMod.DbNumber, modPosStrStationNum.PlcPos, modDevice.StationNum)); //鍙栬揣鎺掋�佸垪銆佸眰 diff --git a/Admin.NET/WCS.Application/Service/WcsTask/Dto/WcsTaskInput.cs b/Admin.NET/WCS.Application/Service/WcsTask/Dto/WcsTaskInput.cs index 30ed7df..39dba5f 100644 --- a/Admin.NET/WCS.Application/Service/WcsTask/Dto/WcsTaskInput.cs +++ b/Admin.NET/WCS.Application/Service/WcsTask/Dto/WcsTaskInput.cs @@ -195,8 +195,18 @@ /// 鐘舵�� /// </summary> public TaskStatusEnum? Status { get; set; } - - } + + /// <summary> + /// 鎵樼洏鍙� + /// </summary> + public string? PalletNo { get; set; } + + /// <summary> + /// 鏉ユ簮 + /// </summary> + public string? Origin { get; set; } + +} /// <summary> /// 浠诲姟琛ㄥ鍔犺緭鍏ュ弬鏁� diff --git a/Admin.NET/WCS.Application/Service/WcsTask/Dto/WcsTaskOutput.cs b/Admin.NET/WCS.Application/Service/WcsTask/Dto/WcsTaskOutput.cs index 928a687..42d0771 100644 --- a/Admin.NET/WCS.Application/Service/WcsTask/Dto/WcsTaskOutput.cs +++ b/Admin.NET/WCS.Application/Service/WcsTask/Dto/WcsTaskOutput.cs @@ -100,7 +100,21 @@ /// 鎷嗗灈鏁伴噺 /// </summary> public int? CompleteQty { get; set; } - + + /// <summary> + /// 鏄惁缁戝畾 + /// </summary> + public IsBindEnum? IsBind { get; set; } + + /// <summary> + /// 鏁村灈鏁伴噺 + /// </summary> + public int? PalletQty { get; set; } + + /// <summary> + /// 鎷嗗灈宸ヤ綅鍙� + public string? StationNum { get; set; } + /// <summary> /// 鎷h揣鏂瑰紡 /// </summary> diff --git a/Admin.NET/WCS.Application/Service/WcsTask/WcsTaskService.cs b/Admin.NET/WCS.Application/Service/WcsTask/WcsTaskService.cs index 3f2e706..d0e0afe 100644 --- a/Admin.NET/WCS.Application/Service/WcsTask/WcsTaskService.cs +++ b/Admin.NET/WCS.Application/Service/WcsTask/WcsTaskService.cs @@ -44,6 +44,8 @@ .WhereIF(!string.IsNullOrWhiteSpace(input.TaskNo), u => u.TaskNo.Contains(input.TaskNo.Trim())) .WhereIF(input.TaskType.HasValue, u => u.TaskType == input.TaskType) .WhereIF(input.Status.HasValue, u => u.Status == input.Status) + .WhereIF(!string.IsNullOrWhiteSpace(input.PalletNo), u => u.PalletNo.Contains(input.PalletNo.Trim())) + .WhereIF(!string.IsNullOrWhiteSpace(input.Origin), u => u.Origin.Contains(input.Origin.Trim())) .Select<WcsTaskOutput>(); return await query.OrderBuilder(input).ToPagedListAsync(input.Page, input.PageSize); } @@ -179,12 +181,17 @@ if (modTask.Status > TaskStatusEnum.Doing) throw Oops.Oh("浠诲姟鐘舵�佸紓甯�"); if (input.Status == TaskStatusEnum.Complete) + { modTask.IsSuccess = TaskSuccessEnum.Success; + modTask.FinishDate = DateTime.Now;//瀹屾垚鏃堕棿 + } else + { modTask.IsSuccess = TaskSuccessEnum.Fail; - modTask.FinishDate = DateTime.Now; + modTask.CancelDate = DateTime.Now;//鍙栨秷鏃堕棿 + } modTask.Status = input.Status; - await _wcsTaskRep.Context.Updateable(modTask).UpdateColumns(s => new { s.Status, s.IsSuccess, s.FinishDate, s.UpdateTime,s.UpdateUserId,s.UpdateUserName }).ExecuteCommandAsync(); + await _wcsTaskRep.Context.Updateable(modTask).UpdateColumns(s => new { s.Status, s.IsSuccess, s.FinishDate, s.CancelDate, s.UpdateTime, s.UpdateUserId, s.UpdateUserName }).ExecuteCommandAsync(); //鍐欏叆浠诲姟鏄庣粏琛� WcsTaskMonitor modTaskMonitor = new WcsTaskMonitor() { diff --git a/Admin.NET/WCS.Application/Service/WcsTaskMonitor/Dto/WcsTaskMonitorOutput2.cs b/Admin.NET/WCS.Application/Service/WcsTaskMonitor/Dto/WcsTaskMonitorOutput2.cs new file mode 100644 index 0000000..880a6b4 --- /dev/null +++ b/Admin.NET/WCS.Application/Service/WcsTaskMonitor/Dto/WcsTaskMonitorOutput2.cs @@ -0,0 +1,33 @@ +锘縰sing System; +using System.Collections.Generic; +using System.Linq; +using System.Text; +using System.Threading.Tasks; + +namespace WCS.Application.Service.WcsTaskMonitor.Dto +{ + public class WcsTaskMonitorOutput2 + { + public long Id { get; set; } + /// <summary> + /// 浠诲姟鍙� + /// </summary> + public string? TaskNo { get; set; } + + /// <summary> + /// 浜や簰浣嶇疆 + /// </summary> + public string? PlcName { get; set; } + + /// <summary> + /// 浜や簰淇℃伅 + /// </summary> + public string? InteractiveMsg { get; set; } + + /// <summary> + /// 鍒涘缓鏃堕棿 + /// </summary> + public DateTime? CreateTime { get; set; } + + } +} diff --git a/Admin.NET/WCS.Application/Service/WcsTaskMonitor/WcsTaskMonitorService.cs b/Admin.NET/WCS.Application/Service/WcsTaskMonitor/WcsTaskMonitorService.cs index b85a40c..a536c41 100644 --- a/Admin.NET/WCS.Application/Service/WcsTaskMonitor/WcsTaskMonitorService.cs +++ b/Admin.NET/WCS.Application/Service/WcsTaskMonitor/WcsTaskMonitorService.cs @@ -1,4 +1,6 @@ 锘� +using WCS.Application.Service.WcsTaskMonitor.Dto; + namespace WCS.Application; /// <summary> @@ -21,7 +23,7 @@ [HttpPost] [ApiDescriptionSettings(Name = "Page")] [DisplayName("鍒嗛〉鏌ヨ浠诲姟鏄庣粏鐩戞帶琛�")] - public async Task<SqlSugarPagedList<WcsTaskMonitorOutput>> Page(PageWcsTaskMonitorInput input) + public async Task<SqlSugarPagedList<WcsTaskMonitorOutput2>> Page(PageWcsTaskMonitorInput input) { input.SearchKey = input.SearchKey?.Trim(); var query = _wcsTaskMonitorRep.AsQueryable() @@ -29,8 +31,17 @@ u.TaskNo.Contains(input.SearchKey) ) .WhereIF(!string.IsNullOrWhiteSpace(input.TaskNo), u => u.TaskNo.Contains(input.TaskNo.Trim())) - .Select<WcsTaskMonitorOutput>(); - return await query.OrderBuilder(input).ToPagedListAsync(input.Page, input.PageSize); + .LeftJoin<WcsDevice>((u, plcid) => u.PlcId == plcid.Id) + .Select((u, plcid) => new WcsTaskMonitorOutput2 + { + Id = u.Id, + TaskNo = u.TaskNo, + PlcName = plcid.StationNum + "宸ヤ綅锛�" + plcid.Text, + InteractiveMsg = u.InteractiveMsg, + CreateTime = u.CreateTime + }) + .OrderByDescending(u=>u.CreateTime); + return await query.OrderBuilder(input,"","").ToPagedListAsync(input.Page, input.PageSize); } /// <summary> diff --git a/Admin.NET/WCS.Application/Util/HttpService.cs b/Admin.NET/WCS.Application/Util/HttpService.cs index 9509fb6..1119c0f 100644 --- a/Admin.NET/WCS.Application/Util/HttpService.cs +++ b/Admin.NET/WCS.Application/Util/HttpService.cs @@ -1,4 +1,5 @@ -锘縰sing Furion.Logging; +锘縰sing Elastic.Clients.Elasticsearch; +using Furion.Logging; using Furion.RemoteRequest.Extensions; using Newtonsoft.Json; using System.Text; @@ -46,14 +47,16 @@ string url = Urls.WMSAddress + ":" + Urls.WMSPort; var result = (url + "/api/DownAPi/RequestRoadWay").SetBody(model, "application/json", Encoding.UTF8).PostAsAsync<ResponseTasks>().Result; Log.Information("璋冪敤WMS鎺ュ彛鍙嶉浠诲姟鎺ュ彛" + result.ToJson()); - if (result.StatusCode == "0") + if (result.Success == 0) { var taskAdd = new WcsTask() { TaskType = TaskTypeEnum.In, + Status = TaskStatusEnum.Wait, Origin = "WMS", StartLocate = startLocat, + PalletNo = palletNo, TaskNo = result.TaskList.TaskNo, EndLocate = result.TaskList.EndLocate, EndRoadway = result.TaskList.EndRoadway @@ -80,153 +83,6 @@ endLocat = PLCCommon.RoadwayToStationNum(endLocat, ceng); return returnStr; - // 纭畾鐩爣宸ヤ綅//闇�娣诲姞灞傛暟纭 - //switch (endLocat) - //{ - // case "R01": - // if (ceng == "1") - // { - // endLocat = "145"; - // } - // else if (ceng == "2") - // { - // endLocat = "252"; - // } - // else if (ceng == "3") - // { - // endLocat = "101"; - // } - // break; - // case "R02": - // if (ceng == "1") - // { - // endLocat = "137"; - // } - // else if (ceng == "2") - // { - // endLocat = "260"; - // } - // else if (ceng == "3") - // { - // endLocat = "405"; - // } - // break; - // case "R03": - // if (ceng == "1") - // { - // endLocat = "127"; - // } - // else if (ceng == "2") - // { - // endLocat = "270"; - // } - // else if (ceng == "3") - // { - // endLocat = "409"; - // } - // break; - // case "R04": - // if (ceng == "1") - // { - // endLocat = "119"; - // } - // else if (ceng == "2") - // { - // endLocat = "278"; - // } - // else if (ceng == "3") - // { - // endLocat = "413"; - // } - // break; - // case "R05": - // if (ceng == "1") - // { - // endLocat = "109"; - // } - // else if (ceng == "2") - // { - // endLocat = "288"; - // } - // else if (ceng == "3") - // { - // endLocat = "417"; - // } - // break; - // case "R06": - // if (ceng == "1") - // { - // endLocat = "101"; - // } - // else if (ceng == "2") - // { - // endLocat = "301"; - // } - // else if (ceng == "3") - // { - // endLocat = "421"; - // } - // break; - // case "R07": - // if (ceng == "1") - // { - // endLocat = "091"; - // } - // else if (ceng == "2") - // { - // endLocat = "307"; - // } - // else if (ceng == "3") - // { - // endLocat = "425"; - // } - // break; - // case "R08": - // if (ceng == "1") - // { - // endLocat = "083"; - // } - // else if (ceng == "2") - // { - // endLocat = "315"; - // } - // else if (ceng == "3") - // { - // endLocat = "429"; - // } - // break; - // case "R09": - // if (ceng == "1") - // { - // endLocat = "073"; - // } - // else if (ceng == "2") - // { - // endLocat = "325"; - // } - // else if (ceng == "3") - // { - // endLocat = "433"; - // } - // break; - // case "R10": - // if (ceng == "1") - // { - // endLocat = "065"; - // } - // else if (ceng == "2") - // { - // endLocat = "337"; - // } - // else if (ceng == "3") - // { - // endLocat = "437"; - // } - // break; - //} - - - } /// <summary> @@ -258,20 +114,35 @@ string url = Urls.WMSAddress + ":" + Urls.WMSPort; var result = (url + "/api/DownAPi/RequestLocation").SetBody(model, "application/json", Encoding.UTF8).PostAsAsync<ResponseTasks>().Result; Log.Information("璋冪敤WMS鐢宠鍌ㄤ綅鎺ュ彛鍙嶉浠诲姟鎺ュ彛" + result.ToJson()); - if (result.StatusCode == "0") + if (result.Success == 0) { - var taskAdd = new WcsTask() + + var taskUp = _db.Queryable<WcsTask>().First(m => m.IsDelete == false && m.TaskNo == result.TaskList.TaskNo); + if (taskUp == null) { - TaskType = TaskTypeEnum.In, - Origin = "WMS", - StartLocate = startLocat, - TaskNo = result.TaskList.TaskNo, - EndLocate = result.TaskList.EndLocate, - EndRoadway = result.TaskList.EndRoadway - }; + var taskAdd = new WcsTask() + { + TaskNo = result.TaskList.TaskNo, + TaskType = TaskTypeEnum.In, + Status = TaskStatusEnum.Wait, + //IsSuccess =TaskSuccessEnum.Success, + Origin = "WMS", + StartLocate = startLocat, + PalletNo = palletNo, + EndLocate = result.TaskList.EndLocate, + EndRoadway = result.TaskList.EndRoadway + }; + _db.Insertable(taskAdd).ExecuteCommand(); + } + else + { + taskUp.EndRoadway = result.TaskList.EndRoadway; + taskUp.EndLocate = result.TaskList.EndLocate; + _db.Updateable(taskUp).ExecuteCommand(); + } - _db.Updateable(taskAdd).ExecuteCommand(); + returnStr = result.TaskList.EndLocate; taskNo = result.TaskList.TaskNo; } diff --git a/Web/src/views/wcs/wcsTask/index.vue b/Web/src/views/wcs/wcsTask/index.vue index 38c5808..50b6eaf 100644 --- a/Web/src/views/wcs/wcsTask/index.vue +++ b/Web/src/views/wcs/wcsTask/index.vue @@ -35,6 +35,16 @@ </el-select> </el-form-item> </el-col> + <el-col :xs="24" :sm="12" :md="12" :lg="8" :xl="4" class="mb10" v-if="showAdvanceQueryUI"> + <el-form-item label="鎵樼洏鍙�"> + <el-input v-model="queryParams.palletNo" clearable="" placeholder="璇疯緭鍏ユ墭鐩樺彿" /> + </el-form-item> + </el-col> + <el-col :xs="24" :sm="12" :md="12" :lg="8" :xl="4" class="mb10" v-if="showAdvanceQueryUI"> + <el-form-item label="鏉ユ簮"> + <el-input v-model="queryParams.origin" clearable="" placeholder="璇疯緭鍏ユ潵婧�" /> + </el-form-item> + </el-col> <el-col :xs="24" :sm="12" :md="12" :lg="8" :xl="4" class="mb10"> <el-form-item> <el-button-group style="display: flex; align-items: center;"> @@ -70,16 +80,39 @@ scope.row.status)?.name }}</el-tag> </template> </el-table-column> + <el-table-column prop="origin" label="鏉ユ簮" show-overflow-tooltip="" /> <el-table-column prop="startLocate" label="璧峰浣嶇疆" show-overflow-tooltip="" /> <el-table-column prop="endLocate" label="缁撴潫浣嶇疆" show-overflow-tooltip="" /> <el-table-column prop="palletNo" label="鎵樼洏鍙�" show-overflow-tooltip="" /> + <el-table-column prop="completeQty" label="鎷嗗灈绠辨暟" show-overflow-tooltip="" /> + <el-table-column prop="palletQty" label="鏁磋泛绠辨暟" show-overflow-tooltip="" /> + <el-table-column prop="lotNo" label="鎵规鍙�" show-overflow-tooltip="" /> + <el-table-column prop="skuNo" label="鐗╂枡缂栫爜" show-overflow-tooltip="" /> + <el-table-column prop="skuName" label="鐗╂枡鍚嶇О" show-overflow-tooltip="" /> + <el-table-column prop="unstackingMode" width="100" label="鎷嗗灈鏂瑰紡" show-overflow-tooltip=""> + <template #default="scope"> + <span v-if="scope.row.unstackingMode"> + <el-tag :type="dv('UnstackingModeEnum', scope.row.unstackingMode)?.tagType"> {{ dv('UnstackingModeEnum', + scope.row.unstackingMode)?.name }}</el-tag> + </span> + </template> + </el-table-column> + <el-table-column prop="isBind" width="85" label="鏄惁缁戝畾" show-overflow-tooltip=""> + <template #default="scope"> + <span v-if="scope.row.isBind!=null"> + <el-tag :type="dv('IsBindEnum', scope.row.isBind)?.tagType"> {{ dv('IsBindEnum', + scope.row.isBind)?.name }}</el-tag> + </span> + </template> + </el-table-column> + <el-table-column prop="stationNum" label="鎷嗗灈宸ヤ綅鍙�" show-overflow-tooltip="" /> <el-table-column prop="cancelDate" label="鍙栨秷鏃堕棿" show-overflow-tooltip="" /> <el-table-column prop="finishDate" label="瀹屾垚鏃堕棿" show-overflow-tooltip="" /> - <el-table-column label="淇敼璁板綍" width="80" align="center" show-overflow-tooltip> + <!-- <el-table-column label="淇敼璁板綍" width="80" align="center" show-overflow-tooltip> <template #default="scope"> <ModifyRecord :data="scope.row" /> </template> - </el-table-column> + </el-table-column> --> <el-table-column prop="鎿嶄綔" label="鎿嶄綔" width="130" align="center" fixed="right" show-overflow-tooltip="" v-if="auth('wcsTask:complete') || auth('wcsTask:cancell')"> <template #default="scope"> @@ -126,14 +159,15 @@ border=""> <el-table-column type="index" label="搴忓彿" width="55" align="center" /> <el-table-column prop="taskNo" label="浠诲姟鍙�" show-overflow-tooltip="" /> - <el-table-column prop="plcId" label="浜や簰宸ヤ綅鍙�" show-overflow-tooltip="" /> + <!-- <el-table-column prop="plcId" label="浜や簰宸ヤ綅鍙�" show-overflow-tooltip="" /> --> <el-table-column prop="plcName" label="浜や簰浣嶇疆" show-overflow-tooltip="" /> <el-table-column prop="interactiveMsg" label="浜や簰淇℃伅" show-overflow-tooltip="" /> - <el-table-column label="淇敼璁板綍" width="80" align="center" show-overflow-tooltip> + <el-table-column prop="createTime" label="浜や簰鏃堕棿" show-overflow-tooltip="" /> + <!-- <el-table-column label="淇敼璁板綍" width="80" align="center" show-overflow-tooltip> <template #default="scope"> <ModifyRecord :data="scope.row" /> </template> - </el-table-column> + </el-table-column> --> </el-table> <el-pagination v-model:currentPage="tableParams2.page" v-model:page-size="tableParams2.pageSize" :total="tableParams2.total" :page-sizes="[10, 20, 50, 100, 200, 500]" size="small" background="" -- Gitblit v1.8.0