public async Task <IActionResult> Register(UserForRegisterDto userForRegisterDto) { //Validate request userForRegisterDto.UserName = userForRegisterDto.UserName.ToLower(); if (await _repo.UserExists(userForRegisterDto.UserName)) { return(BadRequest("User already exists!")); } /* User to save to DB*/ var userToCreate = _mapper.Map <User>(userForRegisterDto); var createdUser = await _repo.Register(userToCreate, userForRegisterDto.Password); /* Adding related entities (Company and Usertpe) to the User (for Automapper to get return CompanyName and UserTypeName*/ var companyCode = createdUser.CompanyId.GetValueOrDefault(); createdUser.Company = _repoAssets.GetCompany(companyCode); var userTypeCode = createdUser.UserTypeId.GetValueOrDefault(); createdUser.UserType = _repoAssets.GetUserType(userTypeCode); /* Rertun the created user in UserToReturnDto format*/ var userToReturn = _mapper.Map <UserToReturnDto>(createdUser); return(CreatedAtRoute("GetUser", new { controller = "Users", id = createdUser.Id }, userToReturn)); }
public async Task <IActionResult> GetConfirmation(int id) { var confirmation = await _repo.GetConfirmation(id); /* Refrences to related entities*/ var companyCode = confirmation.CompanyId.GetValueOrDefault(); confirmation.Company = _repo.GetCompany(companyCode); var userCode = confirmation.UserId.GetValueOrDefault(); confirmation.User = _repo.GetUserSync(userCode); /* Return the confirmation*/ var confirmationToReturn = _mapper.Map <ConfirmationToReturnDto>(confirmation); return(Ok(confirmationToReturn)); }
public async Task <IActionResult> GetFile(int id) { /* Get the file from the asset repo by its id*/ var uploadedFileFromRepo = await _repo.GetUploadedFileAsync(id); /* Refrences to related entities*/ var companyCode = uploadedFileFromRepo.CompanyId.GetValueOrDefault(); uploadedFileFromRepo.Company = _repo.GetCompany(companyCode); var userCode = uploadedFileFromRepo.UserId.GetValueOrDefault(); uploadedFileFromRepo.User = _repo.GetUserSync(userCode); /* Return the file*/ var uploadedFile = _mapper.Map <UploadedFileToReturnDto>(uploadedFileFromRepo); return(Ok(uploadedFile)); }
public async Task <IActionResult> GetProperty(int id) { /* Get the property from the asset repo by its id*/ var propertry = await _repo.GetCompaniesPropertyAsync(id); /* Refrences to related entities*/ var companyCode = propertry.CompanyId.GetValueOrDefault(); propertry.Company = _repo.GetCompany(companyCode); var ownerCode = propertry.OwnerId.GetValueOrDefault(); propertry.Owner = _repo.GetOwner(ownerCode); var beneficiaryCode = propertry.BeneficiaryId.GetValueOrDefault(); propertry.Beneficiary = _repo.GetBeneficiary(beneficiaryCode); var userCode = propertry.UserId.GetValueOrDefault(); propertry.User = _repo.GetUserSync(userCode); var provinceCode = propertry.ProvinceId.GetValueOrDefault(); propertry.Province = _repo.GetProvince(provinceCode); var cityCode = propertry.CityId.GetValueOrDefault(); propertry.City = _repo.GetCity(cityCode); var ownershipDocumentTypeCode = propertry.OwnershipDocumentTypeId.GetValueOrDefault(); propertry.OwnershipDocumentType = _repo.GetOwnershipDocumentType(ownershipDocumentTypeCode); var mapFormatCode = propertry.MapFormatId.GetValueOrDefault(); propertry.MapFormat = _repo.GetMapFormat(mapFormatCode); var mapCoordinatesAccuracyCode = propertry.MapCoordinatesAccuracyId.GetValueOrDefault(); propertry.MapCoordinatesAccuracy = _repo.GetMapCoordinatesAccuracy(mapCoordinatesAccuracyCode); var buildingTypeCode = propertry.BuildingTypeId.GetValueOrDefault(); propertry.BuildingType = _repo.GetBuildingType(buildingTypeCode); /* Return the property*/ var propertyToReturn = _mapper.Map <PropertyToReturnDto>(propertry); return(Ok(propertyToReturn)); }
public async Task <IActionResult> GetUsersByCompany(int id) { var usersByCompany = await _repo.GetUsersByCompanyAsync(id); foreach (var user in usersByCompany) { /* Refrences to related entities*/ var companyCode = user.CompanyId.GetValueOrDefault(); user.Company = _repo.GetCompany(companyCode); var userTypeCode = user.UserTypeId.GetValueOrDefault(); user.UserType = _repo.GetUserType(userTypeCode); } var usersToReturn = _mapper.Map <IEnumerable <UserToReturnDto> >(usersByCompany); return(Ok(usersToReturn)); }