コード例 #1
0
        public async Task <CashDto> PatchCashAsync(int userId, CashDto cashDto)
        {
            var user = await _dbContext.Users.FirstOrDefaultAsync(x => x.Id == userId);

            var cash = _dbContext.Cashes.FirstOrDefault(x => x.Id == cashDto.Id);

            if (user == null || cash == null || cash.UserId != userId)
            {
                throw new Exception($"Not found user by id {userId} or card {cash.Id} is not found \n Change data");
            }

            var cashMerge = _serviceMapper.Merge(cashDto, cash);
            await _dbContext.SaveChangesAsync();

            var newCashMergeMap = _serviceMapper.Map <Cash, CashDto>(cashMerge);

            return(newCashMergeMap);
        }
コード例 #2
0
        public async Task <CashDto> CreateCashesForUserAsync(int userId, CashDto cashDto)
        {
            var user = await _dbContext.Users
                       .Include(x => x.Cashes)
                       .FirstOrDefaultAsync(x => x.Id == userId);

            if (user == null)
            {
                throw new NullReferenceException($"Not found user by id {userId}");
            }

            var cashEntityAdd = _serviceMapper.Map <CashDto, Cash>(cashDto);

            user.Cashes.Add(cashEntityAdd);
            await _dbContext.SaveChangesAsync();

            return(_serviceMapper.Map <Cash, CashDto>(cashEntityAdd));
        }