Ejemplo n.º 1
0
        public async Task <PlanView> UpdatePlanAsync(UpdatePlanInput input)
        {
            var entity     = input.ToEntity();
            var result     = _planRepository.Update(entity);
            var planEntity = await result.ProjectToPlanView().FirstOrDefaultAsync();

            var item = planEntity;

            return(item);
        }
Ejemplo n.º 2
0
        public ICommandResult Handle(UpdatePlanInput input)
        {
            var plan = _planRepository.GetById(input.Id);

            plan.Update(input.Name, input.ValueCents);

            var validator = new PlanValidator().Validate(plan);

            if (validator.IsValid)
            {
                _planRepository.Create(plan);
                var body = new UpdatePlan(input.Name, input.Interval, input.IntervalType, Convert.ToInt32(input.ValueCents * 100), input.PayableWith);
                Requests.Put($"plans/{plan.Id}", body, Runtime.IuguApiToken);
            }

            return(new CommandResult("Plano atualizado com sucesso!", validator.Errors));
        }
        public async Task <ActionResult <PlanView> > Add([FromBody] UpdatePlanInput updatePlanInput, int id)
        {
            try
            {
                var validationResult = _updatePlanInputValidator.Validate(updatePlanInput);
                if (validationResult.IsValid)
                {
                    var result = await _planService.UpdatePlanAsync(updatePlanInput);

                    return(result);
                }

                return(BadRequest());
            }
            catch (Exception e)
            {
                return(StatusCode(StatusCodes.Status500InternalServerError, e.Message));
            }
        }
Ejemplo n.º 4
0
        public async Task <IActionResult> Update([FromBody] UpdatePlanInput input)
        {
            var result = _handler.Handle(input);

            return(await ApiResponse(result));
        }