public long SaveCreditor(Creditor creditor, string userId) { var creditorDTO = new DTO.CreditorDTO() { AspNetUserId = creditor.AspNetUserId, Action = creditor.Action, Amount = creditor.Amount, CasualWorkerId = creditor.CasualWorkerId, BranchId = creditor.BranchId, SectorId = creditor.SectorId, CreditorId = creditor.CreditorId, Deleted = creditor.Deleted, CreatedBy = creditor.CreatedBy, CreatedOn = creditor.CreatedOn }; var creditorId = this._dataService.SaveCreditor(creditorDTO, userId); return(creditorId); }
public long SaveAccountTransactionActivity(AccountTransactionActivity accountTransactionActivity, string userId) { long accountTransactionActivityId = 0; double startAmount = 0; double OldBalance = 0; double NewBalance = 0; if (accountTransactionActivity.AspNetUserId != null) { OldBalance = GetBalanceForLastAccountAccountTransactionActivity(accountTransactionActivity.AspNetUserId); startAmount = OldBalance; } else { OldBalance = GetBalanceForLastAccountAccountTransactionActivity(Convert.ToString(accountTransactionActivity.CasualWorkerId)); startAmount = OldBalance; } if (accountTransactionActivity.Action == "-") { NewBalance = OldBalance - accountTransactionActivity.Amount; } else { NewBalance = OldBalance + accountTransactionActivity.Amount; } var accountTransactionActivityDTO = new DTO.AccountTransactionActivityDTO() { AspNetUserId = accountTransactionActivity.AspNetUserId, CasualWorkerId = accountTransactionActivity.CasualWorkerId, Amount = accountTransactionActivity.Amount, StartAmount = startAmount, Balance = NewBalance, Notes = accountTransactionActivity.Notes, AccountTransactionActivityId = accountTransactionActivity.AccountTransactionActivityId, Action = accountTransactionActivity.Action, BranchId = accountTransactionActivity.BranchId, TransactionSubTypeId = accountTransactionActivity.TransactionSubTypeId, SectorId = accountTransactionActivity.SectorId, Deleted = accountTransactionActivity.Deleted, CreatedBy = accountTransactionActivity.CreatedBy, CreatedOn = accountTransactionActivity.CreatedOn }; accountTransactionActivityId = this._dataService.SaveAccountTransactionActivity(accountTransactionActivityDTO, userId); long transactionTypeId = 0; List <string> transactionSubTypeNames = new List <string>(); var transactionSubType = _transactionSubTypeService.GetTransactionSubType(accountTransactionActivity.TransactionSubTypeId); if (transactionSubType != null) { transactionTypeId = transactionSubType.TransactionTypeId; if (transactionSubType.Name == "Credit" || transactionSubType.Name == "Advance" || accountTransactionActivity.PaymentMode == "Credit") { var debtorDTO = new DTO.DebtorDTO() { AspNetUserId = accountTransactionActivity.AspNetUserId, Action = false, Amount = accountTransactionActivity.Amount, CasualWorkerId = accountTransactionActivity.CasualWorkerId, BranchId = Convert.ToInt64(accountTransactionActivity.BranchId), SectorId = accountTransactionActivity.SectorId, Deleted = accountTransactionActivity.Deleted, CreatedBy = accountTransactionActivity.CreatedBy, CreatedOn = accountTransactionActivity.CreatedOn }; var debtorId = _debtorDataService.SaveDebtor(debtorDTO, userId); } else if (transactionSubType.Name == "Deposit" || transactionSubType.Name == "maize purchase" || transactionSubType.Name == "Casual labour") { var creditorDTO = new DTO.CreditorDTO() { AspNetUserId = accountTransactionActivity.AspNetUserId, Action = false, Amount = accountTransactionActivity.Amount, CasualWorkerId = accountTransactionActivity.CasualWorkerId, BranchId = Convert.ToInt64(accountTransactionActivity.BranchId), SectorId = accountTransactionActivity.SectorId, Deleted = accountTransactionActivity.Deleted, CreatedBy = accountTransactionActivity.CreatedBy, CreatedOn = accountTransactionActivity.CreatedOn }; var creditorId = _creditorDataService.SaveCreditor(creditorDTO, userId); } else if (transactionSubType.Name == "OffLoading") { double offloadingAmount = 0; if (accountTransactionActivity.Amount > 0) { offloadingAmount = accountTransactionActivity.Amount * -1; } var creditorDTO = new DTO.CreditorDTO() { AspNetUserId = accountTransactionActivity.AspNetUserId, Action = false, Amount = offloadingAmount, CasualWorkerId = accountTransactionActivity.CasualWorkerId, BranchId = Convert.ToInt64(accountTransactionActivity.BranchId), SectorId = accountTransactionActivity.SectorId, Deleted = accountTransactionActivity.Deleted, CreatedBy = accountTransactionActivity.CreatedBy, CreatedOn = accountTransactionActivity.CreatedOn }; var creditorId = _creditorDataService.SaveCreditor(creditorDTO, userId); } var transaction = new TransactionDTO() { BranchId = Convert.ToInt64(accountTransactionActivity.BranchId), SectorId = accountTransactionActivity.SectorId, Amount = accountTransactionActivity.Amount, TransactionSubTypeId = accountTransactionActivity.TransactionSubTypeId, TransactionTypeId = transactionTypeId, CreatedOn = DateTime.Now, TimeStamp = DateTime.Now, CreatedBy = userId, Deleted = false, }; var transactionId = _transactionDataService.SaveTransaction(transaction, userId); } return(accountTransactionActivityId); }