コード例 #1
0
        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();
            }
        }
コード例 #2
0
 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;
 }
コード例 #3
0
        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);
            }
        }