//public void SaveStockGrade(StockGradeDTO stockGradeDTO) //{ // var stockGrade = new StockGrade() // { // StockId = stockGradeDTO.StockId, // GradeId = stockGradeDTO.GradeId, // TimeStamp = DateTime.Now // }; // this.UnitOfWork.Get<StockGrade>().AddNew(stockGrade); // this.UnitOfWork.SaveChanges(); //} public void SaveStockGradeSize(StockGradeSizeDTO stockGradeSizeDTO) { var stockGradeSize = new StockGradeSize() { StockId = stockGradeSizeDTO.StockId, GradeId = stockGradeSizeDTO.GradeId, SizeId = stockGradeSizeDTO.SizeId, Quantity = stockGradeSizeDTO.Quantity, TimeStamp = DateTime.Now }; this.UnitOfWork.Get <StockGradeSize>().AddNew(stockGradeSize); this.UnitOfWork.SaveChanges(); }
public long SaveBatchOutPut(BatchOutPut batchOutPut, string userId) { List <StockGradeSize> stockGradeSizeList = new List <StockGradeSize>(); double batchQuantity = BatchQuantity(batchOutPut.BatchId); var batchOutPutDTO = new DTO.BatchOutPutDTO() { BatchId = batchOutPut.BatchId, BrandOutPut = batchOutPut.BrandOutPut, FlourOutPut = batchOutPut.FlourOutPut, BranchId = batchOutPut.BranchId, SectorId = batchOutPut.SectorId, Loss = ComputeBatchLoss(batchOutPut.BrandOutPut, batchOutPut.FlourOutPut, batchQuantity), FlourPercentage = ComputePercentageBatchFlourOutPut(batchOutPut.FlourOutPut, batchQuantity), BrandPercentage = ComputePercentageBatchBrandOutPut(batchOutPut.BrandOutPut, batchQuantity), LossPercentage = ComputePercentageBatchLoss(batchOutPut.BrandOutPut, batchOutPut.FlourOutPut, batchQuantity), Deleted = batchOutPut.Deleted, CreatedBy = batchOutPut.CreatedBy, CreatedOn = batchOutPut.CreatedOn }; var batchOutPutId = this._dataService.SaveBatchOutPut(batchOutPutDTO, userId); if (batchOutPut.Grades != null) { double totalBuveraQuantity = 0; if (batchOutPut.Grades.Any()) { List <BatchGradeSize> batchGradeSizeList = new List <BatchGradeSize>(); foreach (var grade in batchOutPut.Grades) { var gradeId = grade.GradeId; if (grade.Denominations != null) { if (grade.Denominations.Any()) { foreach (var denomination in grade.Denominations) { var batchGradeSize = new BatchGradeSize() { GradeId = gradeId, SizeId = denomination.DenominationId, BatchOutPutId = batchOutPutId, Quantity = denomination.Quantity, TimeStamp = DateTime.Now }; batchGradeSizeList.Add(batchGradeSize); var stockGradeSize = new StockGradeSize() { GradeId = gradeId, SizeId = denomination.DenominationId, Quantity = denomination.Quantity, TimeStamp = DateTime.Now }; stockGradeSizeList.Add(stockGradeSize); var inOrOut = false; //Method that updates buvera into storeBuveraGradeSize table(storeBuvera stock) var storeBuveraGradeSize = new StoreBuveraGradeSizeDTO() { StoreId = batchOutPut.StoreId, GradeId = batchGradeSize.GradeId, SizeId = batchGradeSize.SizeId, Quantity = batchGradeSize.Quantity, }; this._buveraDataService.SaveStoreBuveraGradeSize(storeBuveraGradeSize, inOrOut); totalBuveraQuantity = denomination.Quantity + totalBuveraQuantity; } } } } var buveraDTO = new DTO.BuveraDTO() { TotalQuantity = totalBuveraQuantity, BranchId = batchOutPut.BranchId, FromSupplier = Convert.ToString(batchOutPut.StoreId), ToReceiver = Convert.ToString(batchOutPut.BatchId), StoreId = batchOutPut.StoreId, }; var buveraId = this._buveraDataService.SaveBuvera(buveraDTO, userId); this._dataService.PurgeBatchGradeSize(batchOutPutId); this.SaveBatchGradeSizeList(batchGradeSizeList); } } UpdateBatchSupply(batchOutPut.BatchId, supplyStatusIdComplete, userId); if (batchOutPut.BrandOutPut != 0 && batchOutPut.FlourOutPut != 0) { var stock = new Stock() { SectorId = batchOutPut.SectorId, BranchId = batchOutPut.BranchId, BatchId = batchOutPut.BatchId, InOrOut = true, StoreId = batchOutPut.StoreId, ProductId = brandId, ProductOutPut = batchOutPut.BrandOutPut, }; _stockService.SaveStock(stock, userId); var flourStock = new Stock() { SectorId = batchOutPut.SectorId, BranchId = batchOutPut.BranchId, BatchId = batchOutPut.BatchId, InOrOut = true, StoreId = batchOutPut.StoreId, ProductId = flourId, ProductOutPut = batchOutPut.FlourOutPut, StockGradeSize = stockGradeSizeList }; _stockService.SaveStock(flourStock, userId); } return(batchOutPutId); }
public long SaveStock(Stock stock, string userId) { //saves stock object into stock table var stockDTO = new DTO.StockDTO() { InOrOut = stock.InOrOut, ProductId = stock.ProductId, BatchId = stock.BatchId, BranchId = stock.BranchId, SectorId = stock.SectorId, Deleted = stock.Deleted, StoreId = stock.StoreId, CreatedBy = stock.CreatedBy, CreatedOn = stock.CreatedOn, ProductOutPut = stock.ProductOutPut, }; var stockId = this._dataService.SaveStock(stockDTO, userId); if (stock.StockGradeSize != null) { List <StockGradeSize> stockGradeSizeList = new List <StockGradeSize>(); foreach (var stockGradeSize in stock.StockGradeSize) { var stockGrade_Size = new StockGradeSize() { StockId = stockId, GradeId = stockGradeSize.GradeId, SizeId = stockGradeSize.SizeId, Quantity = stockGradeSize.Quantity, }; stockGradeSizeList.Add(stockGrade_Size); //Method that adds flour output into storeGradeSize table(store flour stock) var storeGradeSize = new StoreGradeSizeDTO() { StoreId = stock.StoreId, GradeId = stockGradeSize.GradeId, SizeId = stockGradeSize.SizeId, Quantity = stockGradeSize.Quantity, }; this._dataService.SaveStoreGradeSize(storeGradeSize); } this._dataService.PurgeStockGradeSize(stockId); this.SaveStockGradeSizeList(stockGradeSizeList); } //save stock and productId into stockproduct table var stockProductDTO = new StockProductDTO() { StockId = stockId, ProductId = stockDTO.ProductId, Quantity = stockDTO.ProductOutPut, }; this._dataService.PurgeStockProduct(stockId); this._dataService.SaveStockProduct(stockProductDTO); var storeStock = new StoreStock() { StoreId = stock.StoreId, ProductId = stock.ProductId, BranchId = stock.BranchId, StockId = stockId, Quantity = stock.ProductOutPut, SectorId = stock.SectorId, }; SaveStoreStock(storeStock, stock.InOrOut); return(stockId); }
public long SaveBatchOutPut(BatchOutPut batchOutPut, string userId) { List <StockGradeSize> stockGradeSizeList = new List <StockGradeSize>(); double batchQuantity = BatchQuantity(batchOutPut.BatchId); var batchOutPutDTO = new DTO.BatchOutPutDTO() { BatchId = batchOutPut.BatchId, BrandOutPut = batchOutPut.BrandOutPut, FlourOutPut = batchOutPut.FlourOutPut, BranchId = batchOutPut.BranchId, SectorId = batchOutPut.SectorId, Loss = ComputeBatchLoss(batchOutPut.BrandOutPut, batchOutPut.FlourOutPut, batchQuantity), FlourPercentage = ComputePercentageBatchFlourOutPut(batchOutPut.FlourOutPut, batchQuantity), BrandPercentage = ComputePercentageBatchBrandOutPut(batchOutPut.BrandOutPut, batchQuantity), LossPercentage = ComputePercentageBatchLoss(batchOutPut.BrandOutPut, batchOutPut.FlourOutPut, batchQuantity), Deleted = batchOutPut.Deleted, CreatedBy = batchOutPut.CreatedBy, CreatedOn = batchOutPut.CreatedOn }; var batchOutPutId = this._dataService.SaveBatchOutPut(batchOutPutDTO, userId); if (batchOutPut.Grades != null) { if (batchOutPut.Grades.Any()) { List <BatchGradeSize> batchGradeSizeList = new List <BatchGradeSize>(); foreach (var grade in batchOutPut.Grades) { var gradeId = grade.GradeId; if (grade.Denominations != null) { if (grade.Denominations.Any()) { foreach (var denomination in grade.Denominations) { var batchGradeSize = new BatchGradeSize() { GradeId = gradeId, SizeId = denomination.DenominationId, BatchOutPutId = batchOutPutId, Quantity = denomination.Quantity, TimeStamp = DateTime.Now }; batchGradeSizeList.Add(batchGradeSize); var stockGradeSize = new StockGradeSize() { GradeId = gradeId, SizeId = denomination.DenominationId, Quantity = denomination.Quantity, TimeStamp = DateTime.Now }; stockGradeSizeList.Add(stockGradeSize); } } } } this._dataService.PurgeBatchGradeSize(batchOutPutId); this.SaveBatchGradeSizeList(batchGradeSizeList); } } UpdateBatchSupply(batchOutPut.BatchId, supplyStatusIdComplete, userId); if (batchOutPut.BrandOutPut != 0 && batchOutPut.FlourOutPut != 0) { var stock = new Stock() { SectorId = batchOutPut.SectorId, BranchId = batchOutPut.BranchId, BatchId = batchOutPut.BatchId, InOrOut = true, StoreId = batchOutPut.StoreId, ProductId = brandId, ProductOutPut = batchOutPut.BrandOutPut, }; _stockService.SaveStock(stock, userId); var flourStock = new Stock() { SectorId = batchOutPut.SectorId, BranchId = batchOutPut.BranchId, BatchId = batchOutPut.BatchId, InOrOut = true, StoreId = batchOutPut.StoreId, ProductId = flourId, ProductOutPut = batchOutPut.FlourOutPut, StockGradeSize = stockGradeSizeList }; _stockService.SaveStock(flourStock, userId); } return(batchOutPutId); }