| | |
| | | } |
| | | } |
| | | |
| | | //生成盘点记录 |
| | | //生成盘点记录 |
| | | Db.Insertable(logList).ExecuteCommand(); |
| | | } |
| | | // 储位号 |
| | |
| | | try |
| | | { |
| | | var time1 = DateTime.Now;//发送时间 .ToString("yyyy-MM-dd HH:mm:ss") |
| | | //response = HttpHelper.DoPost(url, jsonData, "下发给WCS出库命令", "WCS"); //正式版本放开 |
| | | response = HttpHelper.DoPost(url, jsonData, "下发给WCS出库命令", "WCS"); //正式版本放开 |
| | | var time2 = DateTime.Now;//返回时间 .ToString("yyyy-MM-dd HH:mm:ss") |
| | | |
| | | ////解析返回数据 |
| | | //var wcsModel = JsonConvert.DeserializeObject<WcsModel>(response); |
| | | //if (wcsModel.StatusCode == 0) |
| | | //{ |
| | | // //更改任务的发送返回时间// |
| | | // new TaskServer().EditTaskIssueOk(list2, time1, time2); |
| | | //str += "下发成功"; |
| | | //} |
| | | //if (wcsModel.StatusCode == -1) |
| | | //{ |
| | | // new TaskServer().EditTaskIssueNo(list2, time1, time2, wcsModel.Msg); |
| | | // throw new Exception(wcsModel.Msg); |
| | | //} |
| | | //解析返回数据 |
| | | var wcsModel = JsonConvert.DeserializeObject<WcsModel>(response); |
| | | if (wcsModel.StatusCode == 0) |
| | | { |
| | | //更改任务的发送返回时间// |
| | | new TaskServer().EditTaskIssueOk(list2, time1, time2); |
| | | str += "下发成功"; |
| | | } |
| | | if (wcsModel.StatusCode == -1) |
| | | { |
| | | new TaskServer().EditTaskIssueNo(list2, time1, time2, wcsModel.Msg); |
| | | throw new Exception(wcsModel.Msg); |
| | | } |
| | | } |
| | | catch (Exception ex) |
| | | { |
| | |
| | | { |
| | | try |
| | | { |
| | | //出库任务号更改,如果由PLC出库,则PLC回传任务号为:任务号+实际出库口 |
| | | var TtaskNo = taskNo; |
| | | var outLine = ""; |
| | | if (taskNo.Length == 18) |
| | | { |
| | | TtaskNo = taskNo.Substring(0, taskNo.Length - 3); |
| | | outLine = taskNo.Substring(taskNo.Length - 3, 3); |
| | | } |
| | | //当前任务信息 |
| | | var task = Db.Queryable<LogTask>().First(m => m.TaskNo == taskNo && m.IsDel == "0"); |
| | | var task = Db.Queryable<LogTask>().First(m => m.TaskNo == TtaskNo && m.IsDel == "0"); |
| | | if (task == null) |
| | | { |
| | | throw new Exception($"未查询到任务号为:‘{taskNo}’的任务信息"); |
| | | throw new Exception($"未查询到任务号为:‘{TtaskNo}’的任务信息"); |
| | | } |
| | | if (task.Status == "2") |
| | | { |
| | |
| | | Db.Updateable(item).ExecuteCommand(); |
| | | } |
| | | //盘点明细(更改状态) |
| | | var checkDetails = Db.Queryable<BllStockCheckDetail>().Where(m => m.IsDel == "0" && (m.TaskNo == taskNo || (m.Status == 1 && m.PalletNo == task.PalletNo))).ToList(); |
| | | var checkDetails = Db.Queryable<BllStockCheckDetail>().Where(m => m.IsDel == "0" && (m.TaskNo == TtaskNo || (m.Status == 1 && m.PalletNo == task.PalletNo))).ToList(); |
| | | |
| | | foreach (var item in checkDetails) |
| | | { |
| | |
| | | if (userId != 0) |
| | | { |
| | | //添加操作日志记录 |
| | | var k = new OperationCrServer().AddLogOperationCr("库内作业", "库内日志", taskNo, "完成", $"点击完成按钮、完成任务号为:{taskNo}的任务", userId); |
| | | var k = new OperationCrServer().AddLogOperationCr("库内作业", "库内日志", TtaskNo, "完成", $"点击完成按钮、完成任务号为:{TtaskNo}的任务", userId); |
| | | } |
| | | Db.CommitTran(); |
| | | |
| | |
| | | throw new Exception("当前托盘不是拼托出库托盘"); |
| | | } |
| | | //记录托盘上信息给MES |
| | | |
| | | data.Add(new RequertBeiliaoInfoModel() |
| | | { |
| | | materiel_no = item.SkuNo, |
| | | materiel_name = item.SkuName, |
| | | qty = item.Qty, |
| | | batch = item.LotNo, |
| | | producttime = item.ProductionTime, |
| | | expiry = item.ExpirationTime |
| | | |
| | | }); |
| | | //库存箱码明细删除 |
| | | var boxInfo = Db.Queryable<DataBoxInfo>().Where(m => m.IsDel == "0" && m.StockDetailId == item.Id).ToList(); |
| | | if (boxInfo.Count == 0) |
| | | { |
| | | throw new Exception("托盘上物料箱码信息不存在,请检查!"); |
| | | } |
| | | foreach (var item2 in boxInfo) |
| | | { |
| | | data.Add(new RequertBeiliaoInfoModel() |
| | | { |
| | | no = item2.BoxNo, |
| | | materiel_no = item.SkuNo, |
| | | materiel_name = item.SkuName, |
| | | qty = item.Qty, |
| | | batch = item.LotNo, |
| | | producttime = item2.ProductionTime.ToString().Substring(1, 8), |
| | | expiry = item2.ExpirationTime.ToString().Substring(1, 8) |
| | | |
| | | }); |
| | | } |
| | | //库存箱码明细删除 |
| | | Db.Deleteable(boxInfo).ExecuteCommand(); |
| | | //删除库存托盘信息 |
| | | Db.Deleteable(item).ExecuteCommand(); |
| | |
| | | Db.Updateable(endLocate).ExecuteCommand(); |
| | | |
| | | } |
| | | if (endLocate!= null && endLocate.AreaNo == "B12") |
| | | //正式运行程序放开 |
| | | if (endLocate != null && endLocate.AreaNo == "B12") |
| | | { |
| | | //获取令牌 |
| | | var token = new Token().GetMesToken(mesTokenUrl); |
| | |
| | | PalletNo = task.PalletNo,//托盘号 |
| | | StartLocate = locateNo, // 起始位置 |
| | | StartRoadway = locate.RoadwayNo, |
| | | EndLocate = "", // 目标位置 |
| | | EndLocate = task.EndLocat, // 目标位置 |
| | | TaskNo = task.TaskNo, // 任务号 |
| | | TaskType = "1",// 任务类型 (出库) |
| | | OutMode = "", //目标地址 |