| | |
| | | case "source_finish": |
| | | //取货完成 |
| | | agv.state = 4; |
| | | |
| | | //var checkWeightTask = Task.Run(() => { |
| | | // ChooseFinalEndLoc(model); |
| | | //}); |
| | | |
| | | break; |
| | | case "dest_finish": |
| | | //卸货完成 |
| | |
| | | return result; |
| | | } |
| | | |
| | | //public static void ChooseFinalEndLoc(orderStatusReportParme model) { |
| | | |
| | | // var db = DbHelper.GetDbClient(); |
| | | |
| | | // var tn_task = db.Queryable<TN_Task>().First(a => a.S_EQ_NO == model.agvIDList && a.S_END_AREA == "" && a.S_END_LOC == "" && a.S_TYPE == "产品入库(PDA)"); |
| | | |
| | | // // 只要任务为产品入库(PDA),就需要重新指定终点(默认endLoc为"") |
| | | // if (tn_task.S_TYPE == "产品入库(PDA)") { |
| | | |
| | | // var endLoc = new TN_Location(); |
| | | |
| | | // // 只当之前指定终点货架后,才尝试计算终点货位,否则交给人工决定 |
| | | // if (tn_task.S_END_AREA != "") { |
| | | // if (tn_task.F_WEIGHT > 1500) { |
| | | // // 重量超过1.5t,需要选择1-3层货架 |
| | | // endLoc = db.Queryable<TN_Location>().First(a => a.S_SHELF_CODE == tn_task.S_END_AREA && LocationHelper.IsFree(a) && a.N_CURRENT_NUM == 0 && a.N_HEIGHT <= 3); |
| | | // } |
| | | // else if (tn_task.F_WEIGHT > 0) { |
| | | // // 重量未超过1.5t,在指定货架随便选择1个 |
| | | // endLoc = db.Queryable<TN_Location>().First(a => a.S_SHELF_CODE == tn_task.S_END_AREA && LocationHelper.IsFree(a) && a.N_CURRENT_NUM == 0); |
| | | // } |
| | | // else { |
| | | // // 没有接收到重量,或重量出错 |
| | | // endLoc = null; |
| | | // LogHelper.Info($"错误的重量信息:{tn_task.F_WEIGHT}"); |
| | | // } |
| | | |
| | | // // 如果没有符合条件的货位,置空,等待PDA重新确定 |
| | | // if (endLoc == null) { |
| | | // tn_task.S_END_AREA = ""; |
| | | // tn_task.S_END_LOC = ""; |
| | | |
| | | // if (db.Updateable<TN_Task>(tn_task).ExecuteCommand() > 0) { |
| | | // //LocationHelper.LockLoc(endLoc.S_CODE, 1);//终点入库锁 |
| | | |
| | | // LogHelper.Info($"重新计算后没有合适货位,任务 {tn_task.S_CODE} 修改成功,修改终点货架和货位为空"); |
| | | // } |
| | | // else { |
| | | // LogHelper.Info($"重新计算后没有合适货位,任务 {tn_task.S_CODE} 修改失败,修改终点货架和货位为空"); |
| | | // } |
| | | // } |
| | | // else { |
| | | // // 找到合适的货位,推送 |
| | | // tn_task.S_END_LOC = endLoc.S_CODE; |
| | | |
| | | // using (var trans = db.Ado.UseTran()) { |
| | | // if (db.Updateable<TN_Task>(tn_task).ExecuteCommand() > 0) { |
| | | // LocationHelper.LockLoc(endLoc.S_CODE, 1);//终点入库锁 |
| | | |
| | | // trans.CommitTran(); |
| | | // LogHelper.Info($"计算货位成功,任务 {tn_task.S_CODE} 修改成功,终点货架为 {endLoc.S_SHELF_CODE},修改终点位置为 {endLoc.S_CODE}"); |
| | | // } |
| | | // else { |
| | | // trans.RollbackTran(); |
| | | |
| | | // LogHelper.Info($"计算货位成功,任务 {tn_task.S_CODE} 修改失败,终点货架为 {endLoc.S_SHELF_CODE},修改终点位置为 {endLoc.S_CODE}"); |
| | | // } |
| | | // } |
| | | |
| | | |
| | | // } |
| | | // } |
| | | // } |
| | | //} |
| | | |
| | | public class CancelGZOrderInfo |
| | | { |
| | | public int order_id { get; set; } |
| | | |
| | | public int order_command_type_id { get; set; } |
| | | |
| | | } |
| | |
| | | } |
| | | |
| | | } |
| | | |
| | | //public class CustomBufInfo { |
| | | // public string app_name { get; set; } |
| | | // public string version { get; set; } |
| | | // public int code { get; set; } |
| | | // public string msg { get; set; } |
| | | // public List<CustomData> data { get; set; } |
| | | //} |
| | | |
| | | public class CustomData { |
| | | public string agv_id { get; set; } |