Guest User

Untitled

a guest
Nov 27th, 2018
140
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 4.43 KB | None | 0 0
  1. public async Task<ActionResult> Edit(Guid id)
  2. {
  3. if (id.IsValidGuid())
  4. {
  5. // Get User Details
  6. var userTask = ApiGatewayService.GetUserDetail(id, AuthService.BearerToken);
  7. var nationalitiesTask = ApiGatewayService.GetNationalityList(new FilterParameters(), AuthService.BearerToken);
  8. var countriesTask = ApiGatewayService.GetCountryList(new FilterParameters(), AuthService.BearerToken);
  9. await Task.WhenAll(userTask, nationalitiesTask, countriesTask);
  10. var user = userTask.Result;
  11. var nationalities = nationalitiesTask.Result;
  12. var countries = countriesTask.Result;
  13. if (user is null)
  14. return NotFound();
  15. var userAddress = user.PrimaryAddress;
  16. var userHomePhone = user.Phones.FirstOrDefault(x => x.Type == PhoneType.LandLine);
  17. var userMobilePhone = user.Phones.FirstOrDefault(x => x.Type == PhoneType.Mobile);
  18. // View Model
  19. var viewModel = new EditUserViewModel
  20. {
  21. User = user,
  22. Id = user.Id,
  23. FirstName = user.FirstName,
  24. LastName = user.LastName,
  25. BirthDay = user.Detail?.BirthDay,
  26. Email = user.Email,
  27. Nationality = user.Detail?.Nationality?.Id,
  28. Title = user.Detail != null ? user.Detail.Title : TitleType.Mr,
  29. ProfilePhotoName = user.Detail?.ProfilePhotoName,
  30. MarketingOptin = user.Detail != null ? user.Detail.MarketingOptin : false,
  31. ChangePassword = false,
  32. Password = null,
  33. Address_City = userAddress?.City,
  34. Address_Country = userAddress?.Country.Id,
  35. Address_HouseName = userAddress?.HouseName,
  36. Address_HouseNumber = userAddress?.HouseNumber,
  37. Address_Line = userAddress?.AddressLine,
  38. Address_PostCode = userAddress?.PostCode,
  39. Address_StreetName = userAddress?.StreetName,
  40. Home_CountryCode = userHomePhone?.CountryCode?.ToString(),
  41. Home_PhoneNumber = userHomePhone?.PhoneNumber,
  42. Mobile_CountryCode = userMobilePhone?.CountryCode?.ToString(),
  43. Mobile_PhoneNumber = userMobilePhone?.PhoneNumber,
  44. CountriesList = countries.List,
  45. NationalitiesList = nationalities.List
  46. };
  47. return View(viewModel);
  48. }
  49. else
  50. return RedirectToAction("Index");
  51. }
  52.  
  53. public CompanyDetailModel GetCompanyDetails(Guid accountHolderId)
  54. {
  55. CompanyDetailModel companyDetailModel = new CompanyDetailModel();
  56.  
  57. var accountHolder = _dbContext.AccountHolders.FirstOrDefault(x => x.Id == accountHolderId);
  58.  
  59. var companyId = accountHolder.ObjectId;
  60. var company = _dbContext.Companies.FirstOrDefault(x => x.Id == companyId);
  61.  
  62. companyDetailModel.CompanyId = company.Id;
  63. companyDetailModel.Description = company.Description;
  64. companyDetailModel.Name = company.Name;
  65. companyDetailModel.RegistrationNumber = company.RegistrationNumber;
  66. companyDetailModel.VATNumber = company.VATNumber;
  67.  
  68.  
  69. var users = from ah in _dbContext.AccountHolders
  70. join uc in _dbContext.UserCompanies on ah.ObjectId equals uc.CompanyId
  71. join u in _dbContext.Users on uc.UserId equals u.Id
  72. where ah.Id == accountHolderId
  73. select new CompanyUserModel
  74. {
  75. UserId = u.Id,
  76. CompanyId = (Guid)uc.CompanyId,
  77. FullName = u.FirstName + " " + u.LastName,
  78. Email = u.Email,
  79. PhoneNumber = u.PhoneNumber,
  80. UserCompanyRoleType = uc.Role
  81. };
  82.  
  83. var invites = from ci in _dbContext.UserCompanyInvites
  84. select new CompanyUserInviteModel
  85. {
  86. Id = ci.Id,
  87. CompanyId = ci.CompanyId,
  88. IsAccepted = ci.IsAccepted,
  89. UserEmail = ci.UserEmail,
  90. RoleType = ci.RoleType
  91. };
  92.  
  93. companyDetailModel.CompanyUsers = users.ToList();
  94. companyDetailModel.CompanyUserInvites = invites.ToList();
  95.  
  96. return companyDetailModel;
  97. }
Add Comment
Please, Sign In to add comment