コード例 #1
0
        public async Task <Result <RegionDto> > Create(CreateRegionDto createRegionDto)
        {
            var duplicateRegion = await FirstOrDefaultAsyncAsNoTracking(c => c.Name == createRegionDto.Name);

            if (duplicateRegion != null)
            {
                return(Result <RegionDto> .Failed(new BadRequestObjectResult(new ApiMessage
                {
                    Message = ResponseMessage.DuplicateRegionName
                })));
            }

            var city = await Context.Cities.FirstOrDefaultAsync(u => u.Id == createRegionDto.CityId);

            if (city == null)
            {
                return(Result <RegionDto> .Failed(new BadRequestObjectResult(new ApiMessage
                {
                    Message = ResponseMessage.InvalidCityId
                })));
            }

            var region = _mapper.Map(createRegionDto, new Region());

            region.City = city;

            await AddAsync(region);

            await Context.SaveChangesAsync();

            return(Result <RegionDto> .SuccessFull(_mapper.Map <RegionDto>(region)));
        }
コード例 #2
0
        public GetRegionDto Add(CreateRegionDto regionDto)
        {
            var region     = _mapper.Map <Region>(regionDto);
            var regionInDb = _unitOfWork.RegionRepository.Add(region);

            _unitOfWork.SaveChanges();
            return(_mapper.Map <GetRegionDto>(regionInDb));;
        }
コード例 #3
0
        public RegionDto Update(CreateRegionDto input)
        {
            var region = _regionRepository.Get(input.Id);

            ObjectMapper.Map(input, region);
            var result = _regionRepository.Update(region);

            CurrentUnitOfWork.SaveChanges();
            return(ObjectMapper.Map <RegionDto>(result));
        }
コード例 #4
0
        public async Task <IActionResult> Create([FromBody] CreateRegionDto createRegionDto)
        {
            var result = await _unitOfWork.RegionService.Create(createRegionDto);

            if (!result.Success)
            {
                return(result.ApiResult);
            }
            return(Created(Url.Link("GetRegion", new { result.Data.Id }), _mapper.Map <RegionDto>(result.Data)));
        }
コード例 #5
0
        public async Task <IActionResult> Create(CreateRegionDto createRegionDto)
        {
            try
            {
                var result = await _regionCashedService.AddAsync(createRegionDto);

                RemoveRelatedCash();
                return(Ok(result.Data));
            }
            catch (Exception ex)
            {
                _logging.WriteExption(ex);
                return(BadRequest());
            }
        }
コード例 #6
0
        public RegionDto Create(CreateRegionDto input)
        {
            var regionQuery = _regionRepository.GetAll().Where(r => r.RegionName == input.RegionName);

            if ((regionQuery.Any()) && (regionQuery.FirstOrDefault().IsDeleted == true))
            {
                var entity = regionQuery.FirstOrDefault();
                entity.IsDeleted = false;
                var result_old = _regionRepository.Update(entity);
                CurrentUnitOfWork.SaveChanges();
                return(ObjectMapper.Map <RegionDto>(result_old));
            }
            if (regionQuery.Any())
            {
                throw new ApplicationException("threshold 已存在");
            }
            var region = ObjectMapper.Map <Region>(input);
            var result = _regionRepository.Insert(region);

            CurrentUnitOfWork.SaveChanges();
            return(ObjectMapper.Map <RegionDto>(result));
        }
コード例 #7
0
        public IActionResult Create(CreateRegionDto regionDto)
        {
            var region = _regionService.Add(regionDto);

            return(CreatedAtAction(nameof(Get), new { id = region.Id }, region));
        }