| | |
| | | { |
| | | Console.WriteLine($"任务mst {JsonConvert.SerializeObject(mst)}"); |
| | | LogHelper.Info($"任务mst {JsonConvert.SerializeObject(mst)}", "任务"); |
| | | var startLoc = LocationHelper.GetLoc(mst.S_START_LOC); |
| | | var endLoc = LocationHelper.GetLoc(mst.S_END_LOC); |
| | | if (startLoc != null && endLoc != null) |
| | | //var startLoc = LocationHelper.GetLoc(mst.S_START_LOC); |
| | | //var endLoc = LocationHelper.GetLoc(mst.S_END_LOC); |
| | | if (mst.S_START_LOC != null && mst.S_END_LOC != null) |
| | | { |
| | | string src = $"\"src\":\"{startLoc.S_AGV_SITE}\","; |
| | | string dst = $"\"dst\":\"{endLoc.S_AGV_SITE}\""; |
| | | string src = $"\"src\":\"{mst.S_START_LOC}\","; |
| | | string dst = $"\"dst\":\"{mst.S_END_LOC}\","; |
| | | string carrier_type_id = $"\"carrier_type_id\":\"-99\""; |
| | | string parmeS = "{"; |
| | | string parmeD = "}"; |
| | |
| | | model.priority = 1; |
| | | model.dead_line = DateTime.Now.ToString(); |
| | | model.ts_name = mst.S_TYPE; |
| | | |
| | | model.parameters = parme; |
| | | //model.parameters = new AntsParasModel { |
| | | // src = mst.S_START_LOC, |
| | | // dst = mst.S_END_LOC, |
| | | // carrier_type_id="-99" |
| | | //}; |
| | | var res = RcsHelper.CreateAntsOrder(model); |
| | | if (res) |
| | | { |
| | |
| | | switch (model.ts_name) |
| | | { |
| | | case "p2p": |
| | | startLoc = db.Queryable<Location>().Where(a => a.S_CODE == model.parameter.src).First(); |
| | | startLoc = db.Queryable<Location>().Where(a => a.S_CODE == model.parameters.src).First(); |
| | | if (startLoc == null || startLoc.N_LOCK_STATE != 0 || startLoc.C_ENABLE != "Y") |
| | | { |
| | | Message = $"{model.parameter.src}库位已被锁定!"; |
| | | Message = $"{model.parameters.src}库位已被锁定!"; |
| | | } |
| | | endLocStr = model.parameter.dst; |
| | | endLocStr = model.parameters.dst; |
| | | |
| | | break; |
| | | case "p2a": |
| | | startLoc = db.Queryable<Location>().Where(a => a.S_CODE == model.parameter.src).First(); |
| | | startLoc = db.Queryable<Location>().Where(a => a.S_CODE == model.parameters.src).First(); |
| | | if (startLoc == null || startLoc.N_LOCK_STATE != 0 || startLoc.C_ENABLE != "Y") |
| | | { |
| | | Message = $"{model.parameter.src}库位已被锁定!"; |
| | | Message = $"{model.parameters.src}库位已被锁定!"; |
| | | } |
| | | var endLoc = InWorkTransport(model.parameter.dst_area); |
| | | var endLoc = InWorkTransport(model.parameters.dst_area); |
| | | if (endLoc==null) |
| | | { |
| | | //如果没找到就等第一条 |
| | | endLocStr = db.Queryable<Location>().Where(a => a.S_AREA_CODE.Trim() == model.parameter.dst).OrderByDescending(a => a.N_ROW).ToList()[0].S_CODE; |
| | | endLocStr = db.Queryable<Location>().Where(a => a.S_AREA_CODE.Trim() == model.parameters.dst).OrderByDescending(a => a.N_ROW).ToList()[0].S_CODE; |
| | | |
| | | } |
| | | break; |
| | | case "a2p": |
| | | startLoc = OutWorkTransport(model.parameter.src_area); |
| | | startLoc = OutWorkTransport(model.parameters.src_area); |
| | | if (startLoc==null) |
| | | { |
| | | Message = $"{model.parameter.dst}库区没有可出货位!"; |
| | | Message = $"{model.parameters.dst}库区没有可出货位!"; |
| | | } |
| | | |
| | | endLocStr = model.parameter.dst; |
| | | endLocStr = model.parameters.dst; |
| | | break; |
| | | case "a2a": |
| | | startLoc = OutWorkTransport(model.parameter.src_area); |
| | | startLoc = OutWorkTransport(model.parameters.src_area); |
| | | if (startLoc == null) |
| | | { |
| | | Message = $"{model.parameter.src}库区没有可出货位!"; |
| | | Message = $"{model.parameters.src}库区没有可出货位!"; |
| | | } |
| | | var endLoc1 = InWorkTransport(model.parameter.dst_area); |
| | | var endLoc1 = InWorkTransport(model.parameters.dst_area); |
| | | if (endLoc1 == null) |
| | | { |
| | | //如果没找到就等第一条 |
| | | endLocStr = db.Queryable<Location>().Where(a => a.S_AREA_CODE.Trim() == model.parameter.dst).OrderByDescending(a => a.N_ROW).ToList()[0].S_CODE; |
| | | endLocStr = db.Queryable<Location>().Where(a => a.S_AREA_CODE.Trim() == model.parameters.dst).OrderByDescending(a => a.N_ROW).ToList()[0].S_CODE; |
| | | |
| | | } |
| | | break; |
| | | case "p2u": |
| | | startLoc = OutWorkTransport(model.parameter.src); |
| | | startLoc = OutWorkTransport(model.parameters.src); |
| | | if (startLoc == null) |
| | | { |
| | | Message = $"{model.parameter.src}库区没有可出货位!"; |
| | | Message = $"{model.parameters.src}库区没有可出货位!"; |
| | | } |
| | | endLocStr = ""; |
| | | break; |
| | | } |
| | | |
| | | LogHelper.Info($"bigMaterial 接收参数{JsonConvert.SerializeObject(model) }"); |
| | | //创建托盘货位绑定关系 |
| | | string trayCode = ContainerHelper.GenerateCntrNo(); |
| | | //绑定起点货位(产线)和物料 |
| | | ContainerHelper.BindLocCntrsXm(startLoc.S_CODE, trayCode, model.parameter.sku, "", model.parameter.BatchNo, model.parameter.issueMode, model.parameter.num); |
| | | ContainerHelper.BindLocCntrsXm(startLoc.S_CODE, trayCode, model.parameters.sku, "", model.parameters.BatchNo, model.parameters.issueMode, model.parameters.num); |
| | | |
| | | var locCntrRel = db.Queryable<LocCntrRel>().Where(a => a.S_LOC_CODE == startLoc.S_CODE).First(); |
| | | //创建任务 |
| | |
| | | } |
| | | |
| | | |
| | | public static TaskResponse autoSmallMaterial(smallMaterial model) { |
| | | public static TaskResponse smallMaterial(smallMaterial model) { |
| | | var db = new SqlHelper<Location>().GetInstance(); |
| | | |
| | | string Message = null; |