| | |
| | | daa001 = query.daa001, |
| | | barcodeNum = barcodeNum, |
| | | splitNum = splitNum, |
| | | barcode = query.barcode |
| | | barcode = query.barcode, |
| | | strMsg = _strMsg, |
| | | result = _intSum |
| | | }; |
| | | |
| | | return dto; |
| | |
| | | var wwgd = Db.Queryable<WwGd, MesItems>((a, i) => |
| | | new JoinQueryInfos(JoinType.Left, |
| | | a.Daa003 == i.ItemId)) |
| | | .Where((a, i) => a.Daa001 == query.daa001) |
| | | .Where((a, i) => a.Daa001 == query.daa001 && (a.PcSh ?? 0) == 1) |
| | | .Select((a, i) => new |
| | | { |
| | | a.Daa001, a.RwdGuid |
| | |
| | | JoinType.Left, |
| | | a.Id == b.Pid, |
| | | JoinType.Inner, |
| | | c.Id == |
| | | b.Dab003, |
| | | c.Id == b.Dab003, |
| | | JoinType.Inner, b.Erpid.ToString() == d.ErpId |
| | | )) |
| | | .Where((a, b, c, d) => |
| | |
| | | .Where(a => a.Daa001 == query.billNo) |
| | | .First(); |
| | | |
| | | // 检查工单信息 |
| | | var WWRWD = Db.Queryable<ProductionOrder>() |
| | | .Where(a => a.OrderNo == wwgd.Daa014) |
| | | .First(); |
| | | |
| | | if (wwgd == null) |
| | | throw new Exception($"工单 {query.billNo} 不存在,请确认!"); |
| | | |
| | |
| | | |
| | | if (womdab == null) |
| | | throw new Exception($"备料明细不存在此物料 {stockBarcode.ItemNo} 请确认!"); |
| | | |
| | | |
| | | var depots = Db.Queryable<MesDepots>() |
| | | .Where(t => t.DepotId == stockBarcode.DepotId) |
| | | .First(); |
| | | |
| | | if (stockBarcode.Quantity > quantity) |
| | | { |
| | |
| | | // 开启事务处理 |
| | | var success = UseTransaction(db => |
| | | { |
| | | query.Type = "委外补料"; |
| | | var outNoType = "WWBL(委外补料)"; |
| | | if (query.Type == "生产补料") |
| | | { |
| | | outNoType = "SCBL(生产补料)"; |
| | | } |
| | | else |
| | | { |
| | | outNoType = "SCCL(生产超领)"; |
| | | } |
| | | outNoType = "WWBL(委外补料)"; |
| | | // 获取或创建出库单 |
| | | var outId = Guid.NewGuid(); |
| | | var outNo = BillNo.GetBillNo("BL(工单补料)"); |
| | | var outNo = BillNo.GetBillNo(outNoType); |
| | | |
| | | var existingOut = db.Queryable<MesInvItemOuts>() |
| | | .Where(a => a.BbillNo == query.blNo |
| | | && a.DepotCode == womdab.Dab017 |
| | | .Where(a => a.TaskNo == query.blNo |
| | | && a.DepotId == stockBarcode.DepotId |
| | | && a.OutDate.Value.Date.ToString("yyyy-MM-dd") == |
| | | DateTime.Now.Date.ToString("yyyy-MM-dd") |
| | | && a.BillTypeId == 200 |
| | |
| | | BillTypeId = 200, |
| | | TransactionNo = 209, |
| | | Remark = mesItemBl.Bl007, |
| | | DepotCode = womdab.Dab017, |
| | | OutPart = wwgd.Daa013.ToString(), |
| | | DepotCode = depots.DepotCode, |
| | | OutPart = wwgd.DepartId.ToString(), |
| | | OutType = query.Type, |
| | | FType = 0, |
| | | Factory = stockBarcode.Factory, |
| | | Company = stockBarcode.Company, |
| | | // WorkNo = wwgd.Daa021, |
| | | // BoardItem = wwgd.Daa002, |
| | | WorkNo = WWRWD.ErpProductionOrderNo, |
| | | BoardItem = wwgd.Daa003.ToString(), |
| | | PbillNo = wwgd.Daa001, |
| | | OutDate = DateTime.Now, |
| | | Status = 0, |
| | | BbillNo = query.blNo |
| | | DepotId = stockBarcode.DepotId, |
| | | THORGID = stockBarcode.StockOrgId, |
| | | //BbillNo = query.billNo |
| | | }).IgnoreColumns(true).ExecuteCommand(); |
| | | } |
| | | |
| | | // 检查并更新出库单物料明细 |
| | | var itemCount = db.Queryable<MesInvItemOutItems>() |
| | | .Where(i => |
| | | i.ItemOutId == outId && i.ItemId == stockBarcode.ItemId) |
| | | i.ItemOutId == outId && i.ItemId == stockBarcode.ItemId && i.ItemOutId == outId && i.DepotId == stockBarcode.DepotsId.ToString()) |
| | | .Count(); |
| | | |
| | | if (itemCount > 0) |
| | | // 更新已存在的物料明细数量 |
| | | db.Updateable<MesInvItemOutItems>() |
| | | .SetColumns(i => |
| | | i.Quantity == i.Quantity + stockBarcode.Quantity) |
| | | i.TlQty == i.TlQty + stockBarcode.Quantity) |
| | | .Where(i => |
| | | i.ItemOutId == outId && i.ItemId == stockBarcode.ItemId) |
| | | i.ItemOutId == outId && i.ItemId == stockBarcode.ItemId && i.ItemOutId == outId && i.DepotId == stockBarcode.DepotsId.ToString()) |
| | | .ExecuteCommand(); |
| | | else |
| | | // 插入新的物料明细记录 |
| | |
| | | ItemOutId = outId, |
| | | ItemNo = blDetail.Bld002, |
| | | Quantity = stockBarcode.Quantity, |
| | | TlQty = stockBarcode.Quantity, |
| | | CreateBy = query.userName, |
| | | CreateDate = DateTime.Now, |
| | | LastupdateBy = query.userName, |
| | | LastupdateDate = DateTime.Now, |
| | | Factory = stockBarcode.Factory, |
| | | Company = stockBarcode.Company, |
| | | DepotCode = womdab.Dab017, |
| | | DepotCode = depots.DepotCode, |
| | | TaskNo = query.blNo, |
| | | // WorkNo = wwgd.Daa021, |
| | | WorkNo = WWRWD.ErpProductionOrderNo, |
| | | WorkLine = blDetail.Bld013, |
| | | ErpItemNo = womdab.Dab003.ToString(), |
| | | ErpId = womdab.Eid, |
| | | ErpAutoid = womdab.Erpid, |
| | | PbillNo = query.billNo, |
| | | ItemId = blDetail.Bld012 |
| | | ItemId = blDetail.Bld012, |
| | | DepotId = stockBarcode.DepotsId.ToString(), |
| | | ItemDabid = womdab.Id, |
| | | // Unit = blDetail.Bld009, |
| | | // DepotId = (int)stockBarcode.DepotsId |
| | | }).IgnoreColumns(true).ExecuteCommand(); |
| | |
| | | CreateDate = DateTime.Now, |
| | | LastupdateBy = query.userName, |
| | | LastupdateDate = DateTime.Now, |
| | | DepotCode = stockBarcode.DepotsCode, |
| | | DepotCode = depots.DepotCode, |
| | | DepotSectionCode = stockBarcode.DepotSectionsCode, |
| | | Remark = blDetail.Bld010, |
| | | Factory = stockBarcode.Factory, |
| | |
| | | Guid = Guid.NewGuid(), |
| | | Status = 1, |
| | | BillTypeId = 200, // p_bill_type_id |
| | | TransactionCode = "210", // p_transaction_no |
| | | TransactionCode = "209", // p_transaction_no |
| | | BusinessType = -1, |
| | | ItemBarcode = stockBarcode.ItemBarcode, |
| | | ItemNo = stockBarcode.ItemNo, |
| | |
| | | .Where(it => it.Id == womdab.Id && it.Dab003 == womdab.Dab003) |
| | | .ExecuteCommand(); |
| | | |
| | | |
| | | // 更新补料单明细已补数量 |
| | | db.Updateable<MesItemBlDetail>() |
| | | .SetColumns(it => new MesItemBlDetail |