| | |
| | | using System.Linq; |
| | | using System.Reflection; |
| | | using System.Security.Cryptography; |
| | | using static HH.WCS.Mobox3.YNJT_PT.dispatch.WCSDispatch; |
| | | |
| | | namespace HH.WCS.Mobox3.YNJT_PT.process { |
| | | internal class TaskProcess { |
| | |
| | | var startLoc = LocationHelper.GetLocation(mst.S_START_LOC); |
| | | var endLoc = LocationHelper.GetLocation(mst.S_END_LOC); |
| | | |
| | | if (mst.S_SCHEDULE_TYPE == "NDC") { |
| | | |
| | | } |
| | | else if (mst.S_SCHEDULE_TYPE == "杭奥") { |
| | | //调第三方接口 |
| | | var model = new HanAo.TaskInfoModel |
| | | if (mst.S_SCHEDULE_TYPE == "AGV") |
| | | { |
| | | AddOrderNewModel model = new AddOrderNewModel() |
| | | { |
| | | requestPk = mst.S_CODE, |
| | | frmPos = mst.S_START_LOC, |
| | | toPos = mst.S_END_LOC, |
| | | trkType = mst.S_OP_NAME == "入库" ? "1" : "2", |
| | | contNo = mst.S_CNTR_CODE |
| | | ts_no = 1, |
| | | pri = 1, |
| | | task_no = mst.S_CODE |
| | | }; |
| | | if (HanAo.CreateOrder(model)) { |
| | | List<Param> paramList = new List<Param>(); |
| | | var dic = new Dictionary<string, string>(); |
| | | dic.Add("IKey", mst.S_CODE); |
| | | dic.Add("From", startLoc.S_CODE); |
| | | dic.Add("To", endLoc.S_CODE); |
| | | dic.Add("FUNC", "0"); |
| | | if (mst.S_TYPE.Contains("入库")) |
| | | { |
| | | dic.Add("DATA", "300"); |
| | | } |
| | | else |
| | | { |
| | | dic.Add("DATA", "0"); |
| | | } |
| | | dic.Add("Ctype", "0"); |
| | | foreach (var item in dic) |
| | | { |
| | | Param param = new Param |
| | | { |
| | | name = item.Key, |
| | | value = item.Value, |
| | | }; |
| | | paramList.Add(param); |
| | | } |
| | | model.param = paramList; |
| | | LogHelper.Info($"向AGV下发任务,任务参数:{model}", "WMS"); |
| | | var res = NDCApi.AddOrderNew(model); |
| | | if (res != null && res.err_code == 0 || true) |
| | | { |
| | | //推送成功,修改任务优先级 |
| | | mst.N_B_STATE = 1; |
| | | WCSHelper.UpdateStatus(mst); |
| | | result = true; |
| | | } |
| | | } |
| | | else if (mst.S_SCHEDULE_TYPE == "WCS") |
| | | { |
| | | SendTaskModel sendTask = new SendTaskModel() |
| | | { |
| | | taskNo = mst.S_CODE, |
| | | taskType = mst.S_TYPE.Contains("入库") ? "1" : "2", |
| | | from = mst.S_START_LOC, |
| | | to = mst.S_END_LOC, |
| | | cntrNo = mst.S_CNTR_CODE, |
| | | }; |
| | | LogHelper.Info($"向WCS下发任务,任务参数:{sendTask}", "WMS"); |
| | | var bo = WCSDispatch.sendTask(sendTask); |
| | | if (true || bo) |
| | | { |
| | | //推送成功,修改任务优先级 |
| | | mst.N_B_STATE = 1; |
| | | WCSHelper.UpdateStatus(mst); |
| | | result = true; |
| | | } |
| | | } |
| | | } |