Esempio n. 1
0
        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));
        }
Esempio n. 5
0
        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));
        }