private RevenueRecognitionViewModel GetContractDetailForExport(Guid id) { var result = new RevenueRecognitionViewModel(); var basicContract = _contractRefactorService.GetBasicContractById(id); var keyPersonnel = _contractRefactorService.GetKeyPersonnelByContractGuid(id); if (basicContract != null) { var entityCode = new EntityCode(); if (basicContract.ORGID != null && basicContract.ORGID != Guid.Empty) { var orgName = _contractRefactorService.GetOrgNameById(basicContract.ORGID); if (orgName != null) { if (orgName.Contains(".")) { var splitedValue = orgName.Split("."); entityCode.CompanyCode = splitedValue[0]; entityCode.OfficeCode = splitedValue[1]; entityCode.RegionCode = splitedValue[2]; var basicInfo = _contractRefactorService.GetCompanyRegionAndOfficeNameByCode(entityCode); basicContract.CompanyName = basicInfo.CompanyName; } } } basicContract.CompanyName = string.IsNullOrEmpty(basicContract.CompanyName) ? "N/A" : basicContract.CompanyName; basicContract.ContractNumber = string.IsNullOrEmpty(basicContract.CompanyName) ? "N/A" : basicContract.ContractNumber; basicContract.ContractTitle = string.IsNullOrEmpty(basicContract.CompanyName) ? "N/A" : basicContract.ContractTitle; basicContract.ProjectNumber = string.IsNullOrEmpty(basicContract.CompanyName) ? "N/A" : basicContract.ProjectNumber; result.BasicContractInfoModel = basicContract; } else { var basicContractData = new BasicContractInfoModel(); basicContractData.CompanyName = "N/A"; basicContractData.ContractNumber = "N/A"; basicContractData.ContractTitle = "N/A"; basicContractData.ProjectNumber = "N/A"; result.BasicContractInfoModel = basicContractData; } if (keyPersonnel != null) { var projectManager = keyPersonnel.FirstOrDefault(x => x.UserRole == ContractUserRole._projectManager); var accountingManager = keyPersonnel.FirstOrDefault(x => x.UserRole == ContractUserRole._accountRepresentative); if (projectManager != null) { var user = _userService.GetUserByUserGuid(projectManager.UserGuid); result.ProjectManagerName = user.DisplayName; } else { result.ProjectManagerName = "N/A"; } if (accountingManager != null) { var user = _userService.GetUserByUserGuid(accountingManager.UserGuid); result.AccountingRepresentativeName = user.DisplayName; } else { result.AccountingRepresentativeName = "N/A"; } } else { result.ProjectManagerName = "N/A"; result.AccountingRepresentativeName = "N/A"; } return(result); }