示例#1
0
        public async Task <ActionResult <HoldingRes> > Update(int id, [FromBody] SaveHoldingRes saveHoldingRes)
        {
            var validator        = new SaveHoldingValidator();
            var validationResult = await validator.ValidateAsync(saveHoldingRes);

            var requestIsInvalid = id == 0 || !validationResult.IsValid;

            if (requestIsInvalid)
            {
                return(BadRequest(validationResult.Errors));
            }

            var holdingToBeUpdate = await _service.GetById(id);

            if (holdingToBeUpdate == null)
            {
                return(NotFound());
            }

            var holding = _mapper.Map <SaveHoldingRes, Holding>(saveHoldingRes);

            await _service.Update(holdingToBeUpdate, holding);

            var updatedHolding = await _service.GetById(id);

            var updatedHoldingResource = _mapper.Map <Holding, HoldingRes>(updatedHolding);

            return(Ok(updatedHoldingResource));
        }
示例#2
0
        public async Task <ActionResult <HoldingRes> > Create([FromBody] SaveHoldingRes saveHoldingRes)
        {
            var validator        = new SaveHoldingValidator();
            var validationResult = await validator.ValidateAsync(saveHoldingRes);

            if (!validationResult.IsValid)
            {
                return(BadRequest(validationResult.Errors));
            }

            var create = await _service.Create(_mapper.Map <SaveHoldingRes, Holding>(saveHoldingRes));

            var holding = await _service.GetById(create.ModelId);

            var resource = _mapper.Map <Holding, HoldingRes>(holding);

            return(Ok(resource));
        }