Ejemplo n.º 1
0
        public async Task <IHttpActionResult> Update(UserVM entity)
        {
            if (!ModelState.IsValid)
            {
                StringBuilder modelErrors = GetModelErrors(ModelState);
                var           result      = new ResponseEntityVM()
                {
                    StatusCode = System.Net.HttpStatusCode.BadRequest, Message = modelErrors.ToString()
                };
                return(Result(result));
            }

            return(Result(await Task.FromResult(_service.Update(entity, RequestContext.Principal.Identity.Name))));
        }
        public async Task <IHttpActionResult> Create(PolicyModel entity)
        {
            if (!ModelState.IsValid)
            {
                StringBuilder modelErrors = GetModelErrors(ModelState);
                var           result      = new ResponseEntityVM()
                {
                    StatusCode = System.Net.HttpStatusCode.BadRequest, Message = modelErrors.ToString()
                };
                return(Result(result));
            }

            return(Result(await Task.FromResult(_service.Create(entity))));
        }
        private ResponseEntityVM ValidateBusinessRule(PolicyModel entity, CodeVM highRiskTypeCode)
        {
            var result = new ResponseEntityVM()
            {
                StatusCode = System.Net.HttpStatusCode.OK
            };

            if (entity.RiskTypeID == highRiskTypeCode.CodeID && entity.CoveragePercentage > RiskTypeEnum.High.GetHashCode())
            {
                result.StatusCode = System.Net.HttpStatusCode.Forbidden;
                result.Message    = $"The coverage percentage cannot be over {RiskTypeEnum.High.GetHashCode()}% for High risk type.";
            }

            return(result);
        }
        protected IHttpActionResult Result(ResponseEntityVM responseEntity)
        {
            switch (responseEntity.StatusCode)
            {
            case (HttpStatusCode.OK):
            case (HttpStatusCode.Created):
                return(Content(responseEntity.StatusCode, JsonConvert.SerializeObject(responseEntity.Result)));

            case (HttpStatusCode.NoContent):
            case (HttpStatusCode.NotFound):
                return(StatusCode(responseEntity.StatusCode));

            case (HttpStatusCode.BadRequest):
            case (HttpStatusCode.Forbidden):
            case (HttpStatusCode.Conflict):
            case (HttpStatusCode.InternalServerError):
                return(Content(responseEntity.StatusCode, responseEntity.Message));

            default:
                return(Ok());
            }
        }