Example #1
0
        public async Task <APIResultDto> AddOrCancelFavouriteShopAsync(FavoriteEditDto input)
        {
            string coverPhoto = await _shopRepository.GetAll().Where(v => v.Id == input.ShopId).Select(v => v.CoverPhoto).FirstOrDefaultAsync();

            var entity = await _favoriteRepository.GetAll().Where(v => v.ShopId == input.ShopId && v.OpenId == input.OpenId).FirstOrDefaultAsync();

            string userName = await _wechatuserRepository.GetAll().Where(v => v.OpenId == input.OpenId).Select(v => v.NickName).FirstOrDefaultAsync();

            if (entity != null)
            {
                if (entity.IsCancel == false)
                {
                    entity.CancelTime = DateTime.Now;
                }
                entity.NickName   = userName;
                entity.IsCancel   = input.IsCancel;
                entity.CoverPhoto = coverPhoto;
                await _favoriteRepository.UpdateAsync(entity);
            }
            else
            {
                Favorite favorite = new Favorite();
                favorite.OpenId     = input.OpenId;
                favorite.ShopId     = input.ShopId;
                favorite.ShopName   = input.ShopName;
                favorite.NickName   = userName;
                favorite.CoverPhoto = coverPhoto;
                favorite.IsCancel   = false;
                await _favoriteRepository.InsertAsync(favorite);
            }
            return(new APIResultDto()
            {
                Code = 0, Msg = "成功"
            });
        }
Example #2
0
        protected virtual async Task <FavoriteEditDto> CreateFavoriteAsync(FavoriteEditDto input)
        {
            //TODO:新增前的逻辑判断,是否允许新增

            var entity = ObjectMapper.Map <Favorite>(input);

            entity = await _favoriteRepository.InsertAsync(entity);

            return(entity.MapTo <FavoriteEditDto>());
        }
Example #3
0
        protected virtual async Task UpdateFavoriteAsync(FavoriteEditDto input)
        {
            //TODO:更新前的逻辑判断,是否允许更新

            var entity = await _favoriteRepository.GetAsync(input.Id.Value);

            input.MapTo(entity);

            // ObjectMapper.Map(input, entity);
            await _favoriteRepository.UpdateAsync(entity);
        }
Example #4
0
        /// <summary>
        /// MPA版本才会用到的方法
        /// </summary>
        /// <param name="input"></param>
        /// <returns></returns>
        public async Task <GetFavoriteForEditOutput> GetFavoriteForEdit(NullableIdDto <Guid> input)
        {
            var             output = new GetFavoriteForEditOutput();
            FavoriteEditDto favoriteEditDto;

            if (input.Id.HasValue)
            {
                var entity = await _favoriteRepository.GetAsync(input.Id.Value);

                favoriteEditDto = entity.MapTo <FavoriteEditDto>();

                //favoriteEditDto = ObjectMapper.Map<List <favoriteEditDto>>(entity);
            }
            else
            {
                favoriteEditDto = new FavoriteEditDto();
            }

            output.Favorite = favoriteEditDto;
            return(output);
        }