public void SaveStoreMaizeStock(StoreMaizeStock storeMaizeStock, bool inOrOut) { double startStock = 0; double OldMaizeStockBalance = 0; double NewMaizeStockBalance = 0; OldMaizeStockBalance = GetStockMaizeBalanceForLastSupplyTransaction(storeMaizeStock.StoreId); startStock = OldMaizeStockBalance; if (inOrOut == true) { NewMaizeStockBalance = OldMaizeStockBalance + storeMaizeStock.Quantity; } else { NewMaizeStockBalance = OldMaizeStockBalance - storeMaizeStock.Quantity; } var storeMaizeStockDTO = new DTO.StoreMaizeStockDTO() { StoreMaizeStockId = storeMaizeStock.StoreMaizeStockId, StoreId = storeMaizeStock.StoreId, StartStock = startStock, SupplyId = storeMaizeStock.SupplyId, StockBalance = NewMaizeStockBalance, BranchId = storeMaizeStock.BranchId, Quantity = storeMaizeStock.Quantity, SectorId = storeMaizeStock.SectorId, TimeStamp = storeMaizeStock.TimeStamp, }; this._dataService.SaveStoreMaizeStock(storeMaizeStockDTO); }
public long SaveSupply(Supply supply, string userId) { var amount = (supply.Price * supply.Quantity); var supplyDTO = new DTO.SupplyDTO() { Quantity = supply.Quantity, SupplyDate = supply.SupplyDate, SupplyNumber = supply.SupplyNumber, BranchId = supply.BranchId, SupplierId = supply.SupplierId, Amount = amount, TruckNumber = supply.TruckNumber, Used = supply.Used, SupplyId = supply.SupplyId, WeightNoteNumber = supply.WeightNoteNumber, MoistureContent = supply.MoistureContent, NormalBags = supply.NormalBags, BagsOfStones = supply.BagsOfStones, Price = supply.Price, IsPaid = supply.IsPaid, StatusId = supply.StatusId, CreatedOn = supply.CreatedOn, TimeStamp = supply.TimeStamp, CreatedBy = supply.CreatedBy, Deleted = supply.Deleted, StoreId = supply.StoreId, }; var supplyId = this._dataService.SaveSupply(supplyDTO, userId); var storeMaizeStock = new StoreMaizeStock() { SupplyId = supplyId, Quantity = supply.Quantity, StoreId = supply.StoreId, BranchId = supply.BranchId, SectorId = Convert.ToInt64(sectorId), }; SaveStoreMaizeStock(storeMaizeStock, true); var notes = "Maize supply"; var accountActivity = new AccountTransactionActivity() { AspNetUserId = supply.SupplierId, Amount = amount, Notes = notes, Action = "+", BranchId = supply.BranchId, TransactionSubTypeId = Convert.ToInt64(supplyTransactionSubTypeId), SectorId = Convert.ToInt64(sectorId), Deleted = supply.Deleted, CreatedBy = userId, }; var accountActivityId = this._accountTransactionActivityService.SaveAccountTransactionActivity(accountActivity, userId); return(supplyId); }
public StoreMaizeStock GetLatestMaizeStockForAParticularStore(long storeId) { StoreMaizeStock storeMaizeStock = new StoreMaizeStock(); var storeMaizeStocks = this.UnitOfWork.Get <StoreMaizeStock>().AsQueryable().Where(e => e.StoreId == storeId); if (storeMaizeStocks.Any()) { storeMaizeStock = storeMaizeStocks.AsQueryable().OrderByDescending(e => e.TimeStamp).First(); return(storeMaizeStock); } else { return(storeMaizeStock); } }
public void SaveStoreMaizeStock(StoreMaizeStockDTO storeMaizeStockDTO) { var storeMaizeStock = new StoreMaizeStock() { StoreMaizeStockId = storeMaizeStockDTO.StoreMaizeStockId, StockBalance = storeMaizeStockDTO.StockBalance, SupplyId = storeMaizeStockDTO.SupplyId, StoreId = storeMaizeStockDTO.StoreId, BranchId = storeMaizeStockDTO.BranchId, StartStock = storeMaizeStockDTO.StartStock, SectorId = storeMaizeStockDTO.SectorId, Quantity = storeMaizeStockDTO.Quantity, TimeStamp = DateTime.Now }; this.UnitOfWork.Get <StoreMaizeStock>().AddNew(storeMaizeStock); this.UnitOfWork.SaveChanges(); }
/// <summary> /// Maps StoreMaizeStock EF object to StoreMaizeStock Model Object and /// returns the StoreMaizeStock model object. /// </summary> /// <param name="result">EF StoreMaizeStock object to be mapped.</param> /// <returns>StoreMaizeStock Model Object.</returns> public StoreMaizeStock MapEFToModel(EF.Models.StoreMaizeStock data) { var storeMaizeStock = new StoreMaizeStock() { Quantity = data.Quantity, StockBalance = data.StockBalance, StartStock = data.StartStock, SupplyId = data.SupplyId, SupplyNumber = data.Supply != null?Convert.ToString(data.Supply.SupplyNumber) : "", BranchId = data.BranchId, StoreId = data.StoreId, StoreName = data.Store != null ? data.Store.Name : "", TimeStamp = data.TimeStamp, BranchName = data.Branch != null ? data.Branch.Name : "", SectorId = data.SectorId, SectorName = data.Sector != null? data.Sector.Name : "", StoreMaizeStockId = data.StoreMaizeStockId, }; return(storeMaizeStock); }
public long SaveBatch(Batch batch, string userId) { var batchDTO = new DTO.BatchDTO() { BatchId = batch.BatchId, Name = batch.Name, SectorId = batch.SectorId, Quantity = batch.Quantity, BranchId = batch.BranchId, Deleted = batch.Deleted, CreatedBy = batch.CreatedBy, CreatedOn = batch.CreatedOn }; var batchId = this._dataService.SaveBatch(batchDTO, userId); if (batch.Supplies.Any()) { EF.Models.Supply supplyObject = new EF.Models.Supply(); foreach (var batchSupply in batch.Supplies) { var batchSupplyDTO = new BatchSupplyDTO() { BatchId = batchId, SupplyId = batchSupply.SupplyId, Quantity = batchSupply.Quantity, }; this._dataService.PurgeBatchSupply(batchId, batchSupply.SupplyId); this._dataService.SaveBatchSupply(batchSupplyDTO); var storeMaizeStock = new StoreMaizeStock() { SupplyId = batchSupply.SupplyId, Quantity = batchSupply.Quantity, StoreId = batch.StoreId, BranchId = batch.BranchId, SectorId = batch.SectorId, }; _supplyService.SaveStoreMaizeStock(storeMaizeStock, false); supplyObject = this._supplyDataService.GetSupply(batchSupply.SupplyId); var supply = new SupplyDTO() { Quantity = supplyObject.Quantity, SupplyDate = supplyObject.SupplyDate, //SupplyNumber = supplyObject.SupplyNumber, BranchId = supplyObject.BranchId, SupplierId = supplyObject.SupplierId, Amount = supplyObject.Amount, StoreId = supplyObject.StoreId, TruckNumber = supplyObject.TruckNumber, Price = supplyObject.Price, WeightNoteNumber = supplyObject.WeightNoteNumber, BagsOfStones = supplyObject.BagsOfStones, NormalBags = supplyObject.NormalBags, MoistureContent = supplyObject.MoistureContent, Deleted = supplyObject.Deleted, AmountToPay = supplyObject.AmountToPay, DeletedBy = supplyObject.DeletedBy, DeletedOn = supplyObject.DeletedOn, StatusId = Convert.ToInt64(supplyStatusIdInProgress), Used = true, SupplyId = supplyObject.SupplyId }; this._supplyDataService.SaveSupply(supply, userId); } } return(batchId); }
public long SaveSupply(Supply supply, string userId) { double amount = 0, totalBags = 0, offloadingFee = 0, amountToPay = 0; amount = (supply.Price * supply.Quantity); var supplies = GetAllSuppliesForAParticularSupplier(supply.SupplierId); if (supplies.Any()) { foreach (var supplierSupply in supplies) { bool equals = supplierSupply.WeightNoteNumber.Equals(supply.WeightNoteNumber, StringComparison.OrdinalIgnoreCase); if (equals) { return(-1); } } } if (supply.Offloading == "NO") { totalBags = supply.NormalBags + supply.BagsOfStones; offloadingFee = totalBags * (Convert.ToDouble(offloadingRate)); amountToPay = amount - offloadingFee; } else { amountToPay = amount; } var supplyDTO = new DTO.SupplyDTO() { Quantity = supply.Quantity, SupplyDate = supply.SupplyDate, //SupplyNumber = supply.SupplyNumber, BranchId = supply.BranchId, SupplierId = supply.SupplierId, Amount = amount, TruckNumber = supply.TruckNumber, AmountToPay = amountToPay, Used = supply.Used, SupplyId = supply.SupplyId, WeightNoteNumber = supply.WeightNoteNumber, MoistureContent = supply.MoistureContent, NormalBags = supply.NormalBags, BagsOfStones = supply.BagsOfStones, Price = supply.Price, IsPaid = supply.IsPaid, StatusId = supply.StatusId, CreatedOn = supply.CreatedOn, TimeStamp = supply.TimeStamp, CreatedBy = supply.CreatedBy, Deleted = supply.Deleted, StoreId = supply.StoreId, Offloading = supply.Offloading, }; var supplyId = this._dataService.SaveSupply(supplyDTO, userId); var storeMaizeStock = new StoreMaizeStock() { SupplyId = supplyId, Quantity = supply.Quantity, StoreId = supply.StoreId, BranchId = supply.BranchId, SectorId = Convert.ToInt64(sectorId), }; SaveStoreMaizeStock(storeMaizeStock, true); var notes = "Maize supply"; var accountActivity = new AccountTransactionActivity() { AspNetUserId = supply.SupplierId, Amount = amount, Notes = notes, Action = "+", BranchId = supply.BranchId, TransactionSubTypeId = Convert.ToInt64(supplyTransactionSubTypeId), SectorId = Convert.ToInt64(sectorId), Deleted = supply.Deleted, CreatedBy = userId, SupplyId = supplyId, }; var accountActivityId = this._accountTransactionActivityService.SaveAccountTransactionActivity(accountActivity, userId); var offLoadingNotes = "Offloading fee"; var accountActivityOffloading = new AccountTransactionActivity() { AspNetUserId = supply.SupplierId, Amount = offloadingFee, Notes = offLoadingNotes, Action = "-", BranchId = supply.BranchId, TransactionSubTypeId = Convert.ToInt64(offLoadingTransactionSubTypeId), SectorId = Convert.ToInt64(sectorId), Deleted = supply.Deleted, CreatedBy = userId, SupplyId = supplyId, }; var accountActivityOffloadingId = this._accountTransactionActivityService.SaveAccountTransactionActivity(accountActivityOffloading, userId); return(supplyId); }