public List <LedgerAccountAC> GetAllLedgerAccountListByCompanyId(int companyId) { try { var ledgerAccountCollection = new List <LedgerAccountAC>(); foreach (var ledgerse in _accountLedgerContext.Fetch(x => x.ParentLedgerId == null && x.CompanyId == companyId).ToList()) { var ledgerAccountAc = new LedgerAccountAC(); ledgerAccountAc = ApplicationClassHelper.ConvertType <Ledgers, LedgerAccountAC>(ledgerse); ledgerAccountAc.LedgerId = ledgerse.Id; ledgerAccountAc.LableName = ledgerse.Name; ledgerAccountAc.SubLedgerAccountCollection = GetSubLedgerList(ledgerse.Id, companyId); if (ledgerAccountAc.SubLedgerAccountCollection.Count() != 0) { ledgerAccountAc.IsChild = true; } ledgerAccountCollection.Add(ledgerAccountAc); } return(ledgerAccountCollection); } catch (Exception ex) { _errorLog.LogException(ex); throw; } }
public IHttpActionResult SaveLedger(LedgerAccountAC ledger) { try { bool isValidGroup = true; if (ledger.isSubAccountChecked) { Ledgers ledgres = _ledgerAccountRepository.GetLedgersByLedgersId(ledger.ParentLedgerId); if (ledgres != null && ledgres.Group.Id != ledger.GroupId) { isValidGroup = false; } } if (isValidGroup) { Ledgers newLedgers = new Ledgers(); newLedgers.CreatedDateTime = DateTime.UtcNow; newLedgers.CompanyId = CurrentCompanyId; newLedgers.GroupId = ledger.GroupId; newLedgers.GroupTypId = ledger.GroupTypeId; newLedgers.LedgerName = ledger.LedgerName; newLedgers.LedgersDate = ledger.ledgersDate != null?Convert.ToDateTime(ledger.ledgersDate).ToLocalTime() : ledger.ledgersDate; newLedgers.Name = newLedgers.LedgerName; newLedgers.Balance = ledger.Balance; newLedgers.IsEditable = true; if (ledger.ParentLedgerId != 0) { newLedgers.ParentLedgerId = ledger.ParentLedgerId; } newLedgers.Description = ledger.Description; int id = _ledgerAccountRepository.SaveLedgers(newLedgers); if (id != 0) { return(Ok(new { _isResult = id })); } else { return(Ok(new { _isResult = "NotValidLedgerName" })); } } return(Ok(new { _isResult = "NotValidGroup" })); } catch (Exception ex) { _errorLog.LogException(ex); throw; } }
/// <summary> /// This method used for get ledger account ac list /// </summary> /// <param name="listOfLedgers">pass ledgers list</param> /// <returns></returns> private List <LedgerAccountAC> GetLedgerAccountAC(List <Ledgers> listOfLedgers) { var ledgerCollection = new List <LedgerAccountAC>(); var ledgerAc = new LedgerAccountAC(); foreach (var ledger in listOfLedgers) { //it will convert model class to appliation class based on naming conversions. ledgerAc = ApplicationClassHelper.ConvertType <Ledgers, LedgerAccountAC>(ledger); ledgerAc.LedgerId = ledger.Id; ledgerAc.LedgerName = ledger.LedgerName; ledgerAc.Address = ledger.Address; ledgerAc.State = ledger.State; ledgerAc.GroupName = ledger.Group.GroupName; ledgerCollection.Add((ledgerAc)); } return(ledgerCollection); }
public IHttpActionResult GetLedgerList() { try { var ledgerList = _ledgerAccountRepository.GetLedgerListByCompanyId(CurrentCompanyId); var ledgerCollection = new List <LedgerAccountAC>(); var ledgerAc = new LedgerAccountAC(); foreach (var ledger in ledgerList) { //it will convert model class to appliation class based on naming conversions. ledgerAc = ApplicationClassHelper.ConvertType <Ledgers, LedgerAccountAC>(ledger); ledgerAc.LedgerId = ledger.Id; ledgerAc.IsEditable = ledger.IsEditable; if (!ledger.IsEditable) { ledgerAc.BranchName = ledger.BranchDetail != null ? ledger.BranchDetail.Name : ""; } else { ledgerAc.BranchName = ""; } ledgerAc.LedgerName = ledger.LedgerName; ledgerAc.Address = ledger.Address; ledgerAc.State = ledger.State; ledgerAc.GroupTypeId = ledger.GroupTypId != null?Convert.ToInt32(ledger.GroupTypId) : 0; ledgerAc.GroupTypeName = ledger.GroupType != null ? ledger.GroupType.Name : ""; ledgerAc.ParentLedgerId = ledger.ParentLedgerId != null?Convert.ToInt32(ledger.ParentLedgerId) : 0; ledgerAc.Balance = ledger.Balance; ledgerAc.GroupName = ledger.Group.GroupName; ledgerCollection.Add((ledgerAc)); } return(Ok(ledgerCollection)); } catch (Exception ex) { _errorLog.LogException(ex); throw; } }
private List <LedgerAccountAC> GetSubLedgerList(int id, int companyId) { try { var ledgerAccountCollection = new List <LedgerAccountAC>(); foreach (var ledgerse in _accountLedgerContext.Fetch(x => x.ParentLedgerId == id && x.CompanyId == companyId)) { var ledgerAccountAc = new LedgerAccountAC(); ledgerAccountAc = ApplicationClassHelper.ConvertType <Ledgers, LedgerAccountAC>(ledgerse); ledgerAccountAc.LedgerId = ledgerse.Id; ledgerAccountAc.LableName = "Sub account of " + ledgerse.ParentLedger.Name; ledgerAccountCollection.Add(ledgerAccountAc); } return(ledgerAccountCollection); } catch (Exception ex) { _errorLog.LogException(ex); throw; } }
public IHttpActionResult UpdateLedgers(LedgerAccountAC ledgerAccountAc) { try { Ledgers ledgers = _ledgerAccountRepository.GetLedgersByLedgersId(ledgerAccountAc.LedgerId); if (ledgers != null) { ledgers.LedgerName = ledgerAccountAc.LedgerName; ledgers.Name = ledgerAccountAc.LedgerName; int id = _ledgerAccountRepository.UpdateLedgers(ledgers); if (id == 0) { return(Ok(new { _isResult = "NotValidLedgerName" })); } } return(Ok(new { _isResult = true })); } catch (Exception ex) { _errorLog.LogException(ex); throw; } }
public IHttpActionResult GetReceiptPaymentAccount() { try { var ledgerList = _ledgerAccountRepository.GetReceiptPaymentLeadgers(CurrentCompanyId); var ledgerCollection = new List <LedgerAccountAC>(); var ledgerAc = new LedgerAccountAC(); foreach (var ledger in ledgerList) { //it will convert model class to appliation class based on naming conversions. ledgerAc = ApplicationClassHelper.ConvertType <Ledgers, LedgerAccountAC>(ledger); ledgerAc.LedgerId = ledger.Id; ledgerAc.LedgerName = ledger.LedgerName; ledgerAc.GroupName = ledger.Group.GroupName; ledgerCollection.Add((ledgerAc)); } return(Ok(ledgerCollection)); } catch (Exception ex) { _errorLog.LogException(ex); throw; } }