public async Task <IActionResult> PutNominalAccount(int id, NominalAccount nominalAccount) { if (id != nominalAccount.NominalAccountId) { return(BadRequest()); } _context.Entry(nominalAccount).State = EntityState.Modified; try { await _context.SaveChangesAsync(); } catch (DbUpdateConcurrencyException) { if (!NominalAccountExists(id)) { return(NotFound()); } else { throw; } } return(NoContent()); }
public async Task <ActionResult <NominalAccount> > PostNominalAccount(NominalAccount nominalAccount) { _context.NominalAccount.Add(nominalAccount); await _context.SaveChangesAsync(); return(CreatedAtAction("GetNominalAccount", new { id = nominalAccount.NominalAccountId }, nominalAccount)); }
private NominalAccountModel BuildNominalAccountModelAC(NominalAccount sdentity) { NominalAccountModel strNominalAccountList = new NominalAccountModel(); strNominalAccountList.NominalAccountName = sdentity.NominalAccountName; strNominalAccountList.NominalAccountID = sdentity.NominalAccountID; strNominalAccountList.NominalCode = sdentity.NominalCode; return(strNominalAccountList); }
private async Task <string> GetAccountReferenceForFJDocument( AccountLineType lineType, Company company, FxSettlementDocumentDto fxSettlementDocument) { string nominalAccountForAccountReference = string.Empty; NominalAccount nominalAccount = null; switch (lineType) { case AccountLineType.B: nominalAccount = fxSettlementDocument.FxSettlementDocumentTypeId == FxSettlementDocumentType.FxDeal ? await _masterDataService.GetNominalAccountsById(fxSettlementDocument.NominalAccountId, company.CompanyId) : await _masterDataService.GetNominalAccountsById(fxSettlementDocument.SettlementNominalAccountId, company.CompanyId); nominalAccountForAccountReference = nominalAccount.NominalAccountNumber; break; case AccountLineType.L: var dealthAmount = (await _foreignExchangeRateService.Convert( CommonRules.BaseCurrency, fxSettlementDocument.CurrencyCode, fxSettlementDocument.Amount, fxSettlementDocument.DocumentDate)).ConvertedValue; var settlementAmount = (await _foreignExchangeRateService.Convert( CommonRules.BaseCurrency, fxSettlementDocument.SettlementCurrencyCode, CalculateFxDealAmountForSettlementCurrency( fxSettlementDocument.Amount, fxSettlementDocument.SpotRate, fxSettlementDocument.FwPoints, fxSettlementDocument.SpotRateType), fxSettlementDocument.DocumentDate)).ConvertedValue; switch (fxSettlementDocument.DealDirectionId) { case (int)FxDealDirection.Buy: if (dealthAmount < settlementAmount) { // pick the config for FX settlement Loss nominalAccount = await _masterDataService.GetNominalAccountsById(company.SettlementLossNominalId, company.CompanyId); } else { // pick the config for FX settlement Gain nominalAccount = await _masterDataService.GetNominalAccountsById(company.SettlementGainNominalId, company.CompanyId); } nominalAccountForAccountReference = nominalAccount.NominalAccountNumber; break; case (int)FxDealDirection.Sell: if (dealthAmount > settlementAmount) { // pick the config for FX settlement Loss nominalAccount = await _masterDataService.GetNominalAccountsById(company.SettlementLossNominalId, company.CompanyId); } else { // pick the config for FX settlement Gain nominalAccount = await _masterDataService.GetNominalAccountsById(company.SettlementGainNominalId, company.CompanyId); } nominalAccountForAccountReference = nominalAccount.NominalAccountNumber; break; } break; } return(nominalAccountForAccountReference); }