| | |
| | | CreateTime = a.CreateTime, |
| | | UpdateTime = a.UpdateTime |
| | | |
| | | }).OrderByDescending(a => a.CreateTime).OrderBy(a => a.BoxNo).ToOffsetPage(model.Page, model.Limit, ref total); |
| | | }).OrderByDescending(a => a.ASNNo).OrderBy(a => a.BoxNo).ToOffsetPage(model.Page, model.Limit, ref total); |
| | | count = total; |
| | | return data; |
| | | } |
| | |
| | | { |
| | | throw new Exception("未查询到单据明细信息,请核实"); |
| | | } |
| | | var skuInfo = Db.Queryable<SysMaterials>().First(w => w.IsDel == "0" && w.SkuNo == asnDetail.SkuNo); |
| | | if (skuInfo == null) |
| | | { |
| | | throw new Exception("未查询到物料信息,请核实"); |
| | | } |
| | | if (string.IsNullOrEmpty(skuInfo.PackagNo)) |
| | | { |
| | | throw new Exception("未查询到物料的包装信息,请核实"); |
| | | } |
| | | |
| | | var packInfo = Db.Queryable<SysPackag>().First(m => m.IsDel == "0" && m.PackagNo == asnDetail.PackagNo); |
| | | var packInfo = Db.Queryable<SysPackag>().First(m => m.IsDel == "0" && m.PackagNo == skuInfo.PackagNo); |
| | | if (packInfo == null) |
| | | { |
| | | throw new Exception("未查询到单据明细中的物料包装信息"); |
| | |
| | | { |
| | | throw new Exception("单据数量不能小于等于0"); |
| | | } |
| | | if (string.IsNullOrWhiteSpace(asnList.LotNo)) |
| | | //if (string.IsNullOrWhiteSpace(asnList.LotNo)) |
| | | //{ |
| | | // throw new Exception("单据批次号不能为空"); |
| | | //} |
| | | if (string.IsNullOrWhiteSpace(asnList.BoxCodeStr)) |
| | | { |
| | | throw new Exception("单据批次号不能为空"); |
| | | throw new Exception("单据箱码常值不能为空"); |
| | | } |
| | | var asn = Db.Queryable<BllArrivalNotice>().First(m => m.ASNNo == asnList.ASNNo && m.IsDel == "0"); |
| | | if (asn == null) |
| | | { |
| | | throw new Exception("未查询到单据信息"); |
| | | } |
| | | |
| | | var pack = Db.Queryable<SysPackag>().First(m => m.IsDel == "0" && m.PackagNo == asnList.PackagNo); |
| | | //包装编码 |
| | | var packagNo = asnList.PackagNo; |
| | | if (string.IsNullOrEmpty(packagNo)) |
| | | { |
| | | var skuInfo = Db.Queryable<SysMaterials>().First(w => w.IsDel == "0" && w.SkuNo == asnList.SkuNo); |
| | | if (skuInfo == null) |
| | | { |
| | | throw new Exception("未查询到物料信息"); |
| | | } |
| | | packagNo = skuInfo.PackagNo; |
| | | } |
| | | var pack = Db.Queryable<SysPackag>().First(m => m.IsDel == "0" && m.PackagNo == packagNo); |
| | | if (pack == null) |
| | | { |
| | | throw new Exception("未查询到当前单据中物料的包装信息"); |
| | |
| | | |
| | | string maxLotNoStr = ""; //批次号 |
| | | string maxBoxCode = ""; //箱码号 |
| | | |
| | | maxLotNoStr = asnList.LotNo; |
| | | maxBoxCode = label.Where(m => m.LotNo == maxLotNoStr).Max(a => a.BoxNo); |
| | | |
| | | maxLotNoStr = asnList.BoxCodeStr;//asnList.LotNo; |
| | | if (string.IsNullOrEmpty(asnList.LotNo)) |
| | | { |
| | | maxBoxCode = label.Where(m => m.ASNDetailNo == asnList.Id).Max(a => a.BoxNo); |
| | | } |
| | | else |
| | | { |
| | | maxBoxCode = label.Where(m => m.LotNo == maxLotNoStr).Max(a => a.BoxNo); |
| | | } |
| | | #endregion |
| | | |
| | | for (int i = 1; i <= labelNum; i++) |
| | |
| | | maxBoxCode = maxBoxCode.Substring(0, maxBoxCode.Length-6) + (int.Parse(maxBoxCode.Substring(maxBoxCode.Length - 6, 6)) + 1).ToString().PadLeft(6, '0'); |
| | | } |
| | | |
| | | DateTime? storeTime2 = null; |
| | | // 将条码保存到原料条码表 |
| | | var labelModel = new BllBoxInfo() |
| | | { |
| | |
| | | Status = "0", |
| | | SkuNo = asnList.SkuNo, |
| | | SkuName = asnList.SkuName, |
| | | LotNo = maxLotNoStr, |
| | | LotNo = asnList.LotNo,//maxLotNoStr, |
| | | Standard = asnList.Standard, |
| | | PackageStandard = packStr, |
| | | SupplierLot = supplierLot, |
| | |
| | | BitBoxMark = bNum > boxQty ? "1" : "0", |
| | | InspectStatus = "0", |
| | | |
| | | ProductionTime = DateTime.Parse(productionTime), |
| | | StoreTime = string.IsNullOrWhiteSpace(storeTime) ? storeTime2 : DateTime.Parse(storeTime ), |
| | | ExpirationTime = DateTime.Parse(expirationTime), |
| | | ProductionTime = null, |
| | | StoreTime = null, |
| | | ExpirationTime = null, |
| | | |
| | | Origin = "WMS生成", |
| | | CreateUser = userId, |
| | | CreateTime = DateTime.Now, |
| | | }; |
| | | if (!string.IsNullOrEmpty(productionTime)) |
| | | { |
| | | labelModel.ProductionTime = DateTime.Parse(productionTime); |
| | | } |
| | | if (!string.IsNullOrEmpty(storeTime)) |
| | | { |
| | | labelModel.StoreTime = DateTime.Parse(storeTime); |
| | | } |
| | | if (!string.IsNullOrEmpty(expirationTime)) |
| | | { |
| | | labelModel.ExpirationTime = DateTime.Parse(expirationTime); |
| | | } |
| | | |
| | | Db.Insertable(labelModel).ExecuteCommand(); |
| | | modelList.Add(labelModel); |
| | |
| | | BitBoxMark = bNum > boxQty ? "1" : "0", |
| | | InspectStatus = "0", |
| | | |
| | | ProductionTime = DateTime.Parse(productionTime), |
| | | StoreTime = DateTime.Parse(storeTime), |
| | | ExpirationTime = DateTime.Parse(expirationTime), |
| | | ProductionTime = null, |
| | | StoreTime = null, |
| | | ExpirationTime = null, |
| | | |
| | | Origin = "WMS生成", |
| | | CreateUser = userId, |
| | | CreateTime = DateTime.Now, |
| | | }; |
| | | if (!string.IsNullOrEmpty(productionTime)) |
| | | { |
| | | labelModel.ProductionTime = DateTime.Parse(productionTime); |
| | | } |
| | | if (!string.IsNullOrEmpty(storeTime)) |
| | | { |
| | | labelModel.StoreTime = DateTime.Parse(storeTime); |
| | | } |
| | | if (!string.IsNullOrEmpty(expirationTime)) |
| | | { |
| | | labelModel.ExpirationTime = DateTime.Parse(expirationTime); |
| | | } |
| | | |
| | | Db.Insertable(labelModel).ExecuteCommand(); |
| | | modelList.Add(labelModel); |