| | |
| | | public bool his_isComplete { get; set; } |
| | | public bool isCutting { get; set; } |
| | | public string ScanAfCut { get; set; } |
| | | public decimal cutQty { get; set; } |
| | | public decimal remainQty { get; set; } |
| | | public double cutQty { get; set; } |
| | | public double remainQty { get; set; } |
| | | public string QrCode { get; set; } |
| | | |
| | | public BIZ_WMS_TRANSFER transferH = null; |
| | |
| | | transferSn = null; |
| | | var isFirstDtl = true; |
| | | remainQty = 0; |
| | | decimal curQty = CurInv.CurPkg.QTY; |
| | | double curQty = CurInv.CurPkg.QTY; |
| | | foreach (var d in dtls) |
| | | { |
| | | var actPrQty = d.PRQTY - d.QTY; |
| | |
| | | var tfdtl = dtls.OrderBy(q => q.BILLLINE.ToDecimal()).Last(); |
| | | tfdtl.QTY += cutQty; |
| | | //调拨 |
| | | transferH = Biz.Db.Queryable<BIZ_WMS_TRANSFER>().Where(x => x.SOURCECODE == req.BILLCODE).First() ?? new() |
| | | transferH = Biz.Db.Queryable<BIZ_WMS_TRANSFER>().Where(x => x.SOURCE_ORDER == req.BILLCODE).First() ?? new() |
| | | { |
| | | BILLCODE = "TF-" + req.BILLCODE, |
| | | BILLDATE = DateTime.Now, |
| | | STATUS = BIZ_WMS_TRANSFER.STATUSs.INIT.GetValue(), |
| | | BIZTYPE = null, |
| | | OUTWAREHOUSECODE = CurInv.Warehouse.WH_CODE, |
| | | INWAREHOUSECODE = CurInv.Warehouse.TRANSFER_WH, |
| | | SOURCETYPE = 0, |
| | | SOURCECODE = req.BILLCODE, |
| | | ORDER_NO = "TF-" + req.BILLCODE, |
| | | ORDER_DATE = DateTime.Now, |
| | | STATUS = BIZ_WMS_TRANSFER.STATUSs.Init.GetValue(), |
| | | OUT_WH_CODE = CurInv.Warehouse.WH_CODE, |
| | | IN_WH_CODE = CurInv.Warehouse.TRANSFER_WH, |
| | | SOURCE_CODE = nameof(req), |
| | | SOURCE_ORDER = req.BILLCODE, |
| | | AUTH_ORG = OrgCode |
| | | }; |
| | | |
| | | transferDtl = Biz.Db.Queryable<BIZ_WMS_TRANSFER_DTL>().Where(x => x.BILLCODE == transferH.BILLCODE && x.BILLLINE == tfdtl.BILLLINE).First() ?? new() |
| | | transferDtl = Biz.Db.Queryable<BIZ_WMS_TRANSFER_DTL>().Where(x => x.ORDER_NO == transferH.ORDER_NO && x.ORDER_LINE == tfdtl.BILLLINE).First() ?? new() |
| | | { |
| | | BILLCODE = transferH.BILLCODE, |
| | | BILLLINE = tfdtl.BILLLINE, |
| | | LINESTATUS = BIZ_WMS_TRANSFER.STATUSs.FINISHED.GetValue(), |
| | | ORDER_NO = transferH.ORDER_NO, |
| | | ORDER_LINE = tfdtl.BILLLINE, |
| | | STATUS = BIZ_WMS_TRANSFER.STATUSs.Finished.GetValue(), |
| | | ITEM_CODE = CurInv.ItemInfo.ITEM_CODE, |
| | | UNITCODE = "", |
| | | PRQTY = remainQty, |
| | | OUTQTY = remainQty, |
| | | INQTY = remainQty, |
| | | OUTWAREHOUSECODE = CurInv.Warehouse.WH_CODE, |
| | | INWAREHOUSECODE = CurInv.Warehouse.TRANSFER_WH, |
| | | SOURCETYPE = transferH.SOURCETYPE, |
| | | SOURCECODE = transferH.SOURCECODE, |
| | | SOURCELINE = tfdtl.BILLLINE, |
| | | UNIT = "", |
| | | QTY_REQ = remainQty, |
| | | QTY_OUT = remainQty, |
| | | QTY_IN = remainQty, |
| | | OUT_WH_CODE = CurInv.Warehouse.WH_CODE, |
| | | IN_WH_CODE = CurInv.Warehouse.TRANSFER_WH, |
| | | SOURCE_CODE = transferH.SOURCE_CODE, |
| | | SOURCE_ORDER = transferH.SOURCE_ORDER, |
| | | SOURCE_LINE = tfdtl.BILLLINE, |
| | | REMARK = "", |
| | | AUTH_ORG = OrgCode |
| | | }; |
| | | Logger.Interface.Info($"生产领料 =>生成调拨明细,单号:[{transferH.BILLCODE}],Qty:{remainQty},状态:{transferDtl.LINESTATUS},项次:[{transferDtl.BILLLINE}]"); |
| | | Logger.Interface.Info($"生产领料 =>生成调拨明细,单号:[{transferH.ORDER_NO}],Qty:{remainQty},状态:{transferDtl.STATUS},项次:[{transferDtl.ORDER_LINE}]"); |
| | | |
| | | transferSn = new() |
| | | { |
| | | BILLCODE = transferH.BILLCODE, |
| | | BILLLINE = tfdtl.BILLLINE, |
| | | ORDER_NO = transferH.ORDER_NO, |
| | | ORDER_LINE = tfdtl.BILLLINE, |
| | | ITEM_CODE = CurInv.ItemInfo.ITEM_CODE, |
| | | SN = CurInv.CurPkg.SN, |
| | | QTY = CurInv.CurPkg.QTY, |
| | |
| | | //detail全部完成了 |
| | | req.STATUS = BIZ_ERP_PROD_OUT.STATUSs.COMPLETE.GetValue(); |
| | | Logger.Interface.Info($"生产领料 =>领料单[{req.BILLCODE}]发料完成,单头状态:{req.STATUS}"); |
| | | transferH = transferH != null ? transferH : Biz.Db.Queryable<BIZ_WMS_TRANSFER>().Where(x => x.SOURCECODE == req.BILLCODE).First(); |
| | | transferH = transferH != null ? transferH : Biz.Db.Queryable<BIZ_WMS_TRANSFER>().Where(x => x.SOURCE_ORDER == req.BILLCODE).First(); |
| | | if (transferH != null) |
| | | { |
| | | transferH.STATUS = BIZ_WMS_TRANSFER.STATUSs.FINISHED.GetValue(); |
| | | Logger.Interface.Info($"生产领料 =>更新调拨单[{transferH.BILLCODE}]状态:{transferH.STATUS}"); |
| | | transferH.STATUS = BIZ_WMS_TRANSFER.STATUSs.Finished.GetValue(); |
| | | Logger.Interface.Info($"生产领料 =>更新调拨单[{transferH.ORDER_NO}]状态:{transferH.STATUS}"); |
| | | } |
| | | } |
| | | else |