public void UpdateFileDiscrepancies(List <WCF_FileDiscrepancy> fileDiscrepancies, string username) { Inventory_Adjustment invAdjustmentSup = new Inventory_Adjustment(); invAdjustmentSup.deleted = "N"; invAdjustmentSup.clerk_user = username; invAdjustmentSup.status = "Pending"; invAdjustmentSup.date = DateTime.Today; invAdjustmentSup.status_date = DateTime.Today; Inventory_Adjustment invAdjustmentMan = new Inventory_Adjustment(); invAdjustmentMan.deleted = "N"; invAdjustmentMan.clerk_user = username; invAdjustmentMan.status = "Pending"; invAdjustmentMan.date = DateTime.Today; invAdjustmentMan.status_date = DateTime.Today; foreach (WCF_FileDiscrepancy i in fileDiscrepancies) { int adjusted = int.Parse(i.adjustedQty); Stock_Inventory inventory = context.Stock_Inventory.Where(x => x.item_code == i.itemCode).ToList().First(); inventory.current_qty += adjusted; MonthlyCheckModel itemModel = new MonthlyCheckModel(inventory); double cost = Math.Abs(adjusted) * itemModel.AveragePrice; Adjustment_Details adjDetails = new Adjustment_Details(); adjDetails.deleted = "N"; adjDetails.item_code = inventory.item_code; adjDetails.quantity_adjusted = adjusted; adjDetails.reason = i.reason; if (cost < 250) { invAdjustmentSup.Adjustment_Details.Add(adjDetails); } if (cost >= 250) { invAdjustmentMan.Adjustment_Details.Add(adjDetails); } context.Adjustment_Details.Add(adjDetails); } if (invAdjustmentSup.Adjustment_Details.Count != 0) { context.Inventory_Adjustment.Add(invAdjustmentSup); context.SaveChanges(); } if (invAdjustmentMan.Adjustment_Details.Count != 0) { context.Inventory_Adjustment.Add(invAdjustmentMan); context.SaveChanges(); } }
public AdjustmentModel(Adjustment_Details detail) { this.voucherDetailID = detail.voucher_detail_id; this.inventory = GetItemModel(detail.item_code); this.quantity = detail.quantity_adjusted; this.quantityAdjusted = GetQuantityString(); this.reason = detail.reason; this.inventoryAdjustment = detail.Inventory_Adjustment; this.cost = GetPrice(); this.costAdjusted = string.Format("{0:C}", cost); this.catName = inventory.CatName; }
public bool UpdateMonthlyCheck(List <WCF_MonthlyCheck> monthlyChecks, string username) { Inventory_Adjustment invAdjustmentSup = new Inventory_Adjustment(); invAdjustmentSup.deleted = "N"; invAdjustmentSup.clerk_user = username; invAdjustmentSup.status = "Pending"; invAdjustmentSup.date = DateTime.Today; invAdjustmentSup.status_date = DateTime.Today; Inventory_Adjustment invAdjustmentMan = new Inventory_Adjustment(); invAdjustmentMan.deleted = "N"; invAdjustmentMan.clerk_user = username; invAdjustmentMan.status = "Pending"; invAdjustmentMan.date = DateTime.Today; invAdjustmentMan.status_date = DateTime.Today; foreach (WCF_MonthlyCheck i in monthlyChecks) { int actual = int.Parse(i.actualQuantity); int current = int.Parse(i.CurrentQuantity); int adjusted = current - actual; if (adjusted == 0) { continue; } Stock_Inventory inventory = context.Stock_Inventory.Where(x => x.item_code == i.ItemCode).ToList().First(); inventory.current_qty = actual; MonthlyCheckModel itemModel = new MonthlyCheckModel(inventory); double cost = Math.Abs(adjusted) * itemModel.AveragePrice; Adjustment_Details adjDetails = new Adjustment_Details(); adjDetails.deleted = "N"; adjDetails.item_code = i.ItemCode; adjDetails.quantity_adjusted = adjusted; adjDetails.reason = i.Reason; if (cost < 250) { invAdjustmentSup.Adjustment_Details.Add(adjDetails); } if (cost >= 250) { invAdjustmentMan.Adjustment_Details.Add(adjDetails); } context.Adjustment_Details.Add(adjDetails); } if (invAdjustmentSup.Adjustment_Details.Count != 0) { context.Inventory_Adjustment.Add(invAdjustmentSup); context.SaveChanges(); } if (invAdjustmentMan.Adjustment_Details.Count != 0) { context.Inventory_Adjustment.Add(invAdjustmentMan); context.SaveChanges(); } if (invAdjustmentSup.Adjustment_Details.Count != 0 || invAdjustmentMan.Adjustment_Details.Count != 0) { return(true); } else { return(false); } }