| | |
| | | } |
| | | else if (l.CheckResult == 2)//盘盈 |
| | | { |
| | | var sku = Db.Queryable<SysMaterials>().First(a => a.IsDel == "0" && a.SkuNo == l.SkuNo); |
| | | var stockDetailInfo = stockDetail.First(m => m.PalletNo == d.PalletNo && m.SkuNo == d.SkuNo && m.LotNo == d.LotNo);//库存明细 |
| | | |
| | | if (sku.Type != "4") |
| | | { |
| | | var stockBoxInfo = stockBox.First(m => m.StockDetailId == stockDetailInfo.Id);//库存箱支明细 |
| | | var boxInfo = boxQtyList.First(m => m.boxNo == l.BoxNo);//找到对应箱子是否零箱 |
| | | //添加库存箱支信息 |
| | |
| | | Db.Insertable<DataBoxInfo>(databox).ExecuteCommand(); |
| | | //库存明细增加数量 |
| | | stockDetailInfo.Qty += (int)l.RealQty; |
| | | } |
| | | else |
| | | { |
| | | //库存明细增加数量 |
| | | stockDetailInfo.Qty = (int)l.RealQty; |
| | | } |
| | | stockDetailInfo.Status = "0"; |
| | | |
| | | Db.Updateable(stockDetailInfo).ExecuteCommand(); |
| | | //库存增加数量 |
| | | var de = stock.First(m => m.SkuNo == l.SkuNo && m.LotNo == l.LotNo); |
| | |
| | | { |
| | | throw new Exception($"未查询到{l.BoxNo}箱中{l.BoxNo3}库存的信息"); |
| | | } |
| | | if (sku.Type != "4") |
| | | { |
| | | de.Qty += (int)l.RealQty; |
| | | } |
| | | else |
| | | { |
| | | de.Qty += (int)(l.RealQty - l.Qty); |
| | | } |
| | | |
| | | Db.Updateable(de).ExecuteCommand(); |
| | | } |
| | | } |
| | |
| | | //要出库的明细集合 |
| | | var outStockDetail = Db.Queryable<DataStockDetail>().Where(m => m.IsDel == "0" && outLpnList.Contains(m.PalletNo)).ToList(); |
| | | var outStockBox = Db.Queryable<DataBoxInfo>().Where(m => m.IsDel == "0" && outLpnList.Contains(m.PalletNo)).ToList(); |
| | | //获取物料信息 |
| | | var skuNo = Db.Queryable<SysMaterials>().Where(a => a.IsDel == "0" && a.Type == "4").Select(a => a.SkuNo).ToList(); |
| | | var time = DateTime.Now; |
| | | Db.BeginTran(); |
| | | try |
| | |
| | | { |
| | | if (item.Status == 0) |
| | | { |
| | | var logList = new List<BllStockCheckLog>(); |
| | | //判断是否为无码物料 |
| | | if (skuNo.Contains(item.SkuNo)) |
| | | { |
| | | var de = outStockDetail.First(m => m.IsDel == "0" && |
| | | m.SkuNo == item.SkuNo && m.LotNo == item.LotNo && m.PalletNo == item.PalletNo); |
| | | |
| | | var checkLog = new BllStockCheckLog() |
| | | { |
| | | CRNo = item.CRNo, |
| | | PalletNo = item.PalletNo, |
| | | BoxNo = "", |
| | | BoxNo2 = "", |
| | | BoxNo3 = "", |
| | | Qty = (int?)de.Qty, |
| | | SkuNo = de.SkuNo, |
| | | SkuName = de.SkuName, |
| | | Standard = de.Standard, |
| | | LotNo = de.LotNo, |
| | | LotText = de.LotText, |
| | | SupplierLot = de.SupplierLot, |
| | | |
| | | CreateUser = userId, |
| | | CreateTime = time |
| | | }; |
| | | logList.Add(checkLog); |
| | | |
| | | } |
| | | else |
| | | { |
| | | var de = outStockDetail.Where(m => |
| | | m.SkuNo == item.SkuNo && m.LotNo == item.LotNo && m.PalletNo == item.PalletNo).Select(m => m.Id).ToList(); |
| | | var bo = outStockBox.Where(m => de.Contains(m.StockDetailId)).ToList(); |
| | | var logList = new List<BllStockCheckLog>(); |
| | | foreach (var b in bo) |
| | | { |
| | | var checkLog = new BllStockCheckLog() |
| | |
| | | }; |
| | | logList.Add(checkLog); |
| | | } |
| | | } |
| | | |
| | | //生成盘点记录 |
| | | 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) |
| | | { |
| | | //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); |
| | | } |
| | | // 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) |
| | | { |