| | |
| | | |
| | | cSyQty = itemBarcodeDetails.Quantity.Value; |
| | | |
| | | entity.id = cId.ToString(); |
| | | entity.PageIndex = 1; |
| | | entity.Limit = 1; |
| | | |
| | | itemBarcodeDetails.Hbdy ??= 0; |
| | | if (itemBarcodeDetails.Hbdy == 1) |
| | | { |
| | |
| | | } |
| | | |
| | | var mesItems = db.Queryable<MesItems>() |
| | | .Where(s=>s.Id == itemBarcodeDetails.ItemId).First(); |
| | | .Where(s => s.Id == itemBarcodeDetails.ItemId).First(); |
| | | |
| | | result.Message = |
| | | $"条码数量 {itemBarcodeDetails.Quantity},采购订单 {itemBarcodeDetails.WorkNo} 项次 {itemBarcodeDetails.WorkLine} 物料 {mesItems.ItemNo} 本次入库总数:{totalCDetailsQuantity} 总到 {comeQty} 已入 {invQty} 欠 {diffQty}"; |
| | | |
| | | |
| | | result.ItemNo = mesItems.ItemNo; |
| | | result.SumQuantity = Convert.ToDecimal(totalCDetailsQuantity); |
| | | |
| | | return 1; |
| | | } |
| | | else |
| | |
| | | var diffQty = comeQty - invQty; |
| | | |
| | | var mesItems = db.Queryable<MesItems>() |
| | | .Where(s=>s.Id == itemBarcodeDetails.ItemId).First(); |
| | | .Where(s => s.Id == itemBarcodeDetails.ItemId).First(); |
| | | |
| | | // Step 5: Combine final result |
| | | result.Message = |
| | | $" 条码数量:{itemBarcodeDetails.Quantity},物料 {mesItems.ItemNo} 本次入库总数:{totalCDetailsQuantity} 总到 {comeQty} 已入 {invQty} 欠 {diffQty}"; |
| | | } |
| | | |
| | | |
| | | result.ItemNo = mesItems.ItemNo; |
| | | result.SumQuantity = Convert.ToDecimal(totalCDetailsQuantity); |
| | | } |
| | | |
| | | var mesInvItemInCDetails = |
| | | base.GetSingle(it => it.ItemBarcode == entity.barcode); |
| | | |
| | | if (mesInvItemInCDetails == null) |
| | | throw new Exception("物料入库条码明细不存在"); // 抛出异常以供前台处理 |
| | | // |
| | | // var itemInId = mesInvItemInCDetails.ItemInId; |
| | | // entity.id = itemInId; |
| | | // entity.PageIndex = 1; |
| | | // entity.Limit = 1; |
| | | |
| | | //var inventory = getPurchaseInventory(entity); |
| | | // inventory.ItemNo = parts[0]; |
| | | // inventory.SumQuantity = Convert.ToDecimal(parts[1]); |
| | | //return inventory; |
| | | return 1; |
| | | }); |
| | | |
| | | var purchaseInventory = getPurchaseInventory(entity); |
| | | |
| | | result.ItemIns = purchaseInventory.ItemIns; |
| | | result.ItemInDetails = purchaseInventory.ItemInDetails; |
| | | result.InvItemInCDetails = purchaseInventory.InvItemInCDetails; |
| | | |
| | | return result; |
| | | } |
| | | |
| | | public PurchaseInventory getPurchaseInventory(WarehouseQuery query) |
| | | { |
| | | return new PurchaseInventory |
| | | { |
| | | ItemIns = GetInvItemInsList(query).Items[0], |
| | | ItemInDetails = GetItemInDetails(query.id), |
| | | InvItemInCDetails = GetInvItemInCDetails(query.id) |
| | | }; |
| | | } |
| | | |
| | | public (List<MesInvItemIns> Items, int TotalCount) GetInvItemInsList( |
| | | WarehouseQuery query) |
| | | { |
| | | var parsedGuid = Guid.Empty; |
| | | if (string.IsNullOrEmpty(query.id)) |
| | | { |
| | | return ([], 0); |
| | | } |
| | | |
| | | bool isValid = Guid.TryParse(query.id, out parsedGuid); |
| | | if (!isValid) |
| | | throw new ApplicationException("GUID转换错误"); |
| | | |
| | | var totalCount = 0; |
| | | var result = Db.Queryable<MesInvItemIns, MesDepots, MesSupplier>( |
| | | (a, b, c) => |
| | | new JoinQueryInfos(JoinType.Left, |
| | | a.DepotsCode == b.DepotCode, |
| | | JoinType.Left, a.SuppNo == c.SuppNo)) |
| | | .WhereIF(UtilityHelper.CheckGuid(parsedGuid), |
| | | (a, b, c) => a.Guid == parsedGuid) |
| | | .Select((a, b, c) => new MesInvItemIns |
| | | { |
| | | Guid = a.Guid, |
| | | SuppNo = a.SuppNo, |
| | | InsDate = a.InsDate, |
| | | PaperBillNo = a.PaperBillNo, |
| | | Remark = a.Remark, |
| | | DepotsCode = a.DepotsCode, |
| | | CbillNo = a.CbillNo, |
| | | Status = a.Status, |
| | | BillNo = a.BillNo, |
| | | CreateDate = a.CreateDate, |
| | | CreateBy = a.CreateBy, |
| | | DepotName = b.DepotName, |
| | | SuppName = c.SuppName |
| | | }).ToPageList(query.PageIndex, query.Limit, ref totalCount); |
| | | return (result, totalCount); |
| | | } |
| | | |
| | | public List<MesInvItemInCItems> GetItemInDetails(string? pid) |
| | | { |
| | | //string转guid |
| | | var parsedGuid = Guid.Empty; |
| | | if (string.IsNullOrEmpty(pid)) |
| | | { |
| | | return ( []); |
| | | } |
| | | |
| | | bool isValid = Guid.TryParse(pid, out parsedGuid); |
| | | if (!isValid) |
| | | throw new ApplicationException("GUID转换错误"); |
| | | |
| | | var result = Db.Queryable<MesInvItemInCDetails, MesItems, MesUnit>( |
| | | (g, c,d) => new JoinQueryInfos( |
| | | JoinType.Left,g.ItemId == c.Id, |
| | | JoinType.Inner,d.Id == Convert.ToDecimal(g.Unit) |
| | | ) |
| | | ).WhereIF(UtilityHelper.CheckGuid(parsedGuid), |
| | | (g, c,d) => g.ItemInId == parsedGuid) |
| | | .Select((g, c,d)=> new MesInvItemInCItems |
| | | { |
| | | Guid = g.Guid, |
| | | WorkNo = g.WorkNo, |
| | | ItemNo = c.ItemNo, |
| | | ItemSname = g.ItemSname, |
| | | Quantity = g.Quantity, |
| | | Unit = d.Fname, |
| | | }) |
| | | .ToList(); |
| | | |
| | | return result; |
| | | } |
| | | |
| | | public List<MesInvItemInCDetails> GetInvItemInCDetails(string? pid) |
| | | { |
| | | //string转guid |
| | | var parsedGuid = Guid.Empty; |
| | | if (string.IsNullOrEmpty(pid)) |
| | | { |
| | | return ( []); |
| | | } |
| | | |
| | | bool isValid = Guid.TryParse(pid, out parsedGuid); |
| | | if (!isValid) |
| | | throw new ApplicationException("GUID转换错误"); |
| | | |
| | | var result = Db.Queryable<MesInvItemInCDetails, MesItems, MesUnit>( |
| | | (g, c, d) => new JoinQueryInfos( |
| | | JoinType.Left, |
| | | g.ItemId == c.Id, JoinType.Inner, |
| | | d.Id == Convert.ToDecimal(c.ItemUnit) |
| | | ) |
| | | ).WhereIF(UtilityHelper.CheckGuid(parsedGuid), |
| | | (g, c, d) => g.ItemInId == parsedGuid) |
| | | .Select((g, c, d) => new MesInvItemInCDetails |
| | | { |
| | | Guid = g.Guid, |
| | | ItemName = c.ItemName, |
| | | ItemModel = c.ItemModel, |
| | | ItemUnit = d.Fname, |
| | | DepotSectionCode = g.DepotSectionCode, |
| | | CbillNo = g.CbillNo, |
| | | ItemBarcode = g.ItemBarcode, |
| | | UrgentFlag = g.UrgentFlag, |
| | | ItemNo = c.ItemNo, |
| | | WorkNo = g.WorkNo, |
| | | Quantity = g.Quantity |
| | | }) |
| | | .ToList(); |
| | | |
| | | return result; |
| | | } |
| | | |