Esempio n. 1
0
        public async Task <UserListingDto> AddListingCommand(AddListingDto addListingDto, string UserFullName,
                                                             string UserId)
        {
            try
            {
                var listing = new UserListings
                {
                    CountryRefId       = (int)addListingDto.ListingCountry,
                    ProvinceRefId      = (int)addListingDto.ListingProvince,
                    CityRefId          = (int)addListingDto.ListingCity,
                    ListingTypeRefId   = (int)addListingDto.ListingType,
                    CountryName        = EnumHelper.GetCountryEnumString((int)addListingDto.ListingCountry),
                    ProvinceName       = EnumHelper.GetProvinceEnumString((int)addListingDto.ListingProvince),
                    CityName           = EnumHelper.GetCityEnumString((int)addListingDto.ListingCity),
                    ListingName        = EnumHelper.GetListingEnumString((int)addListingDto.ListingType),
                    ListingDescription = addListingDto.ListingDescription,
                    ListingTitle       = addListingDto.ListingTitle,
                    Address            = addListingDto.Address,
                    Email           = addListingDto.Email,
                    PhoneNumber     = addListingDto.PhoneNumber,
                    FullName        = addListingDto.FullName,
                    OwnerId         = UserId,
                    ListingDate     = DateTime.Now,
                    LastUpdatedDate = DateTime.Now
                };

                var addListing = await _listingRepository.AddListing(listing);

                var newListing = new UserListingDto
                {
                    Address            = addListing.Address,
                    City               = EnumHelper.GetCityEnumString((int)addListing.CityRefId),
                    Country            = EnumHelper.GetCountryEnumString((int)addListing.CountryRefId),
                    Province           = EnumHelper.GetProvinceEnumString((int)addListing.ProvinceRefId),
                    Email              = addListing.Email,
                    FullName           = addListing.FullName,
                    PhoneNumber        = addListing.PhoneNumber,
                    LastUpdatedDate    = addListing.LastUpdatedDate,
                    ListingDate        = addListing.ListingDate,
                    ListingDescription = addListing.ListingDescription,
                    ListingTitle       = addListing.ListingTitle,
                    ListingType        = EnumHelper.GetListingEnumString((int)addListing.ListingTypeRefId),
                    UserListingId      = addListing.UserListingId,
                    OwnerId            = addListing.OwnerId,
                    ListingEnabled     = addListing.ListingEnabled
                };

                return(newListing);
            }
            catch (Exception ex)
            {
                throw ex.InnerException;
            }
        }
Esempio n. 2
0
        public async Task <UserListingDto> UpdateListing(UpdateListingRequest updateListingRequest, string userId)
        {
            try
            {
                var listing = new UserListings
                {
                    UserListingId      = updateListingRequest.UserListingId,
                    CountryName        = updateListingRequest.ListingCountry,
                    ProvinceName       = updateListingRequest.ListingProvince,
                    CityName           = updateListingRequest.ListingCity,
                    ListingName        = updateListingRequest.ListingType,
                    ListingDescription = updateListingRequest.ListingDescription,
                    ListingTitle       = updateListingRequest.ListingTitle,
                    Address            = updateListingRequest.Address,
                    Email            = updateListingRequest.Email,
                    PhoneNumber      = updateListingRequest.PhoneNumber,
                    FullName         = updateListingRequest.FullName,
                    OwnerId          = updateListingRequest.OwnerId,
                    LastUpdatedDate  = DateTime.Now,
                    CityRefId        = EnumHelper.GetCityEnumInt(updateListingRequest.ListingCity),
                    CountryRefId     = EnumHelper.GetCountryEnumInt(updateListingRequest.ListingCountry),
                    ProvinceRefId    = EnumHelper.GetProvinceEnumInt(updateListingRequest.ListingProvince),
                    ListingTypeRefId = EnumHelper.GetListingEnumInt(updateListingRequest.ListingType),
                };

                var addListing = await _listingRepository.Update(listing, userId);


                var newListing = new UserListingDto
                {
                    Address            = addListing.Address,
                    City               = EnumHelper.GetCityEnumString((int)addListing.CityRefId),
                    Country            = EnumHelper.GetCountryEnumString((int)addListing.CountryRefId),
                    Province           = EnumHelper.GetProvinceEnumString((int)addListing.ProvinceRefId),
                    Email              = addListing.Email,
                    FullName           = addListing.FullName,
                    LastUpdatedDate    = addListing.LastUpdatedDate,
                    ListingDate        = addListing.ListingDate,
                    ListingDescription = addListing.ListingDescription,
                    ListingTitle       = addListing.ListingTitle,
                    PhoneNumber        = addListing.PhoneNumber,
                    ListingType        = EnumHelper.GetListingEnumString((int)addListing.ListingTypeRefId),
                    UserListingId      = addListing.UserListingId,
                    OwnerId            = addListing.OwnerId
                };

                return(newListing);
            }
            catch (Exception ex)
            {
                throw ex.InnerException;
            }
        }
Esempio n. 3
0
        public async Task <ViewListingResponse> ViewListing(int id, UserManager <UserModel> _userManager)
        {
            try
            {
                var listing = await _listingRepository.GetById(id);

                var listingDto = new UserListingDto
                {
                    Address            = listing.Address,
                    ListingType        = EnumHelper.GetListingEnumString((int)listing.ListingTypeRefId),
                    City               = EnumHelper.GetCityEnumString((int)listing.CityRefId),
                    Country            = EnumHelper.GetCountryEnumString((int)listing.CountryRefId),
                    Province           = EnumHelper.GetProvinceEnumString((int)listing.ProvinceRefId),
                    Email              = listing.Email,
                    FullName           = listing.FullName,
                    PhoneNumber        = listing.PhoneNumber,
                    LastUpdatedDate    = listing.LastUpdatedDate,
                    ListingDate        = listing.ListingDate,
                    ListingDescription = listing.ListingDescription,
                    ListingTitle       = listing.ListingTitle,
                    UserListingId      = listing.UserListingId,
                    OwnerId            = listing.OwnerId,
                    Views              = listing.Views,
                    ListingEnabled     = listing.ListingEnabled
                };

                var user = await _userManager.FindByIdAsync(listing.OwnerId);

                var userProfileDto = new UserProfileDto()
                {
                    AvatarImage = user.AvatarImage,
                    Email       = user.Email,
                    FirstName   = user.FirstName,
                    LastName    = user.LastName,
                    UserId      = user.Id,
                    UserName    = user.UserName,
                    UpVote      = user.UpVote
                };

                var listingResponse = new ViewListingResponse()
                {
                    UserListing    = listingDto,
                    UserProfileDto = userProfileDto
                };

                return(listingResponse);
            }
            catch (Exception e)
            {
                _logger.LogError($"error while getting listing: {e}");
                throw e.GetBaseException();
            }
        }
Esempio n. 4
0
        public async Task <UserListingCollectionDto> GetAllListingsCommand()
        {
            try
            {
                var listings = await _listingRepository.GetAll();

                var allListingDto = new UserListingCollectionDto();
                allListingDto.ListingsCollection = new List <UserListingDto>();

                var lis = new List <UserListingDto>();

                foreach (var listing in listings)
                {
                    var listingDto = new UserListingDto
                    {
                        Address            = listing.Address,
                        ListingType        = EnumHelper.GetListingEnumString((int)listing.ListingTypeRefId),
                        City               = EnumHelper.GetCityEnumString((int)listing.CityRefId),
                        Country            = EnumHelper.GetCountryEnumString((int)listing.CountryRefId),
                        Province           = EnumHelper.GetProvinceEnumString((int)listing.ProvinceRefId),
                        Email              = listing.Email,
                        FullName           = listing.FullName,
                        PhoneNumber        = listing.PhoneNumber,
                        LastUpdatedDate    = listing.LastUpdatedDate,
                        ListingDate        = listing.ListingDate,
                        ListingDescription = listing.ListingDescription,
                        ListingTitle       = listing.ListingTitle,
                        UserListingId      = listing.UserListingId,
                        OwnerId            = listing.OwnerId,
                        ListingEnabled     = listing.ListingEnabled
                    };

                    allListingDto.ListingsCollection.Add(listingDto);
                }
                return(allListingDto);
            }
            catch (Exception ex)
            {
                _logger.LogError($"error while constructing listing list: {ex}");
                throw ex.GetBaseException();
            }
        }