| | |
| | | using System.Text; |
| | | using System.Threading.Tasks; |
| | | using HH.WCS.Mobox3.AnGang.Helpers; |
| | | using HH.WCS.Mobox3.AnGang.Consts; |
| | | |
| | | namespace HH.WCS.Mobox3.AnGang.Helper { |
| | | internal class WCSHelper { |
| | |
| | | { |
| | | var fromLoc = LocationHelper.GetLocation(from); |
| | | var endLoc = LocationHelper.GetLocation(to); |
| | | |
| | | var endArea = ""; |
| | | if (endLoc == null) { |
| | | if (taskType == TaskName.产品入库) { |
| | | endArea = "HJQ"; // 货架区 |
| | | } |
| | | else { |
| | | LogHelper.Info("终点货位不存在,且任务类型不是PDA货品入库"); |
| | | } |
| | | } |
| | | else { |
| | | endArea = endLoc.S_AREA_CODE; |
| | | } |
| | | |
| | | TN_Task TN_Task = new TN_Task() |
| | | { |
| | | S_CODE = GenerateTaskNo(), |
| | | S_START_AREA = fromLoc.S_AREA_CODE, |
| | | S_END_AREA = endLoc?.S_AREA_CODE ?? "", // 如果为null返回空字符串 |
| | | S_END_AREA = endArea, |
| | | S_START_LOC = from, |
| | | S_END_LOC = to, |
| | | S_TYPE = taskType, |
| | |
| | | } |
| | | else |
| | | { |
| | | LogHelper.Info($"插入任务失败,{log}"); |
| | | } |
| | | return res; |
| | | } |
| | | |
| | | /// <summary> |
| | | /// 根据终点Area创建搬送任务 |
| | | /// </summary> |
| | | /// <param name="from"></param> |
| | | /// <param name="toArea"></param> |
| | | /// <param name="taskType"></param> |
| | | /// <param name="pri"></param> |
| | | /// <param name="cntrInfo"></param> |
| | | /// <returns></returns> |
| | | internal static bool CreateTaskWithArea(string from, string toArea, string taskType, int pri, string cntrInfo) { |
| | | var fromLoc = LocationHelper.GetLocation(from); |
| | | //var endLoc = LocationHelper.GetLocation(to); |
| | | TN_Task TN_Task = new TN_Task() { |
| | | S_CODE = GenerateTaskNo(), |
| | | S_START_AREA = fromLoc.S_AREA_CODE, |
| | | S_END_AREA = toArea, |
| | | S_START_LOC = from, |
| | | S_END_LOC = "", // 不指定终点货位 |
| | | S_TYPE = taskType, |
| | | N_PRIORITY = pri, |
| | | N_SCHEDULE_TYPE = 3, // 国自 |
| | | N_B_STATE = 0, |
| | | S_CNTR_CODE = cntrInfo, |
| | | }; |
| | | |
| | | var log = JsonConvert.SerializeObject(TN_Task); |
| | | var db = DbHelper.GetDbClient(); |
| | | var res = db.Insertable(TN_Task).ExecuteCommand() > 0; |
| | | if (res) { |
| | | LogHelper.Info($"插入任务成功,{log}"); |
| | | } |
| | | else { |
| | | LogHelper.Info($"插入任务失败,{log}"); |
| | | } |
| | | return res; |