Guest User

Untitled

a guest
Mar 21st, 2018
80
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 2.92 KB | None | 0 0
  1. public class ProfileInfo
  2. {
  3. public string FirstName { get; set; }
  4. public string LastName { get; set; }
  5. //....
  6.  
  7. public ProfileAddress Address { get; set; }
  8. public ProfileDriverLicense DriverLicense { get; set; }
  9. public ProfileEmergency Emergency { get; set; }
  10. public ProfileEmployment Employment { get; set; }
  11. public ProfileCompensation Compensation { get; set; }
  12. public ProfileFuel Fuel { get; set; }
  13. public ProfileCompanyInfo CompanyInfo { get; set; }
  14. }
  15.  
  16. public class ProfileAddress
  17. {
  18. public string Address { get; set; }
  19. public string City { get; set; }
  20. public string State { get; set; }
  21. public string Zip { get; set; }
  22. }
  23.  
  24. public class ProfileDriverLicense
  25. {
  26. //....
  27. }
  28.  
  29. public class ProfileEmergency
  30. {
  31. //....
  32. }
  33.  
  34. public class ProfileEmployment
  35. {
  36. //....
  37. }
  38.  
  39. public class ProfileCompensation
  40. {
  41. //....
  42. }
  43.  
  44. public class ProfileFuel
  45. {
  46. //....
  47. }
  48.  
  49. public class ProfileCompanyInfo
  50. {
  51. //....
  52. }
  53.  
  54. public ProfileInfo GetProfile(string username)
  55. {
  56. var profile = _db.Drivers.Where(p => p.AspNetUser.UserName == username).Select(k => new ProfileInfo()
  57. {
  58. FirstName = k.AspNetUser.FirstName,
  59. LastName = k.AspNetUser.LastName,
  60. Username = username,
  61. Address = new ProfileAddress()
  62. {
  63. Address = k.StreetAddress,
  64. City = k.City,
  65. State = k.State,
  66. Zip = k.ZIP
  67. },
  68. AvatarUrl = k.AvatarUrl,
  69. CompanyInfo = new ProfileCompanyInfo()
  70. {
  71. //....
  72. },
  73. Compensation = new ProfileCompensation()
  74. {
  75. //....
  76. },
  77. DateOfBirth = k.DOB,
  78. DriverLicense = new ProfileDriverLicense()
  79. {
  80. //....
  81. },
  82. Email = k.AspNetUser.UserName,
  83. Emergency = new ProfileEmergency()
  84. {
  85. //....
  86. },
  87. Employment = new ProfileEmployment()
  88. {
  89. //....
  90. },
  91. Fuel = new ProfileFuel()
  92. {
  93. //....
  94. },
  95. Phone = k.PhoneNo,
  96. SSN = k.SSN,
  97. Notes = k.Notes,
  98. Truck = (k.Truck != null) ? k.Truck.TruckNo : null,
  99. Trailer = (k.Trailer != null) ? k.Trailer.TrailerNo : null
  100. }).FirstOrDefault();
  101.  
  102. if (profile == null)
  103. throw new Domain.InvalidDriverException(username);
  104.  
  105. return profile;
  106. }
  107.  
  108. [HttpGet]
  109. [Route("MyProfile")]
  110. public HttpResponseMessage GetProfile()
  111. {
  112. string username = GetUsernameFromClaims();
  113. if (String.IsNullOrWhiteSpace(username))
  114. return Request.CreateErrorResponse(HttpStatusCode.NotFound, "User not found");
  115.  
  116. var profile = _serviceDriver.GetProfile(username);
  117. return Request.CreateResponse<Domain.POCO.Profile.ProfileInfo>(profile);
  118. }
Add Comment
Please, Sign In to add comment