Exemplo n.º 1
0
        public async Task <ActionResult <GetWageOutputDto> > UpdateWageAsync([FromBody] UpdateWageInputDto request)
        {
            try
            {
                var wage = await _wageService.GetWageInfoByIdAsync(request.Id);

                if (wage == null)
                {
                    return(BadRequest(new ApiResponse(400, "Wage info not existing.")));
                }

                var validationResponse = await _wageService.ValidateUpdateInput(request);

                if (!validationResponse.IsSuccess)
                {
                    return(BadRequest(new ApiResponse(validationResponse.StatusCode, validationResponse.Message)));
                }

                wage.SdrType      = request.SdrType;
                wage.CampaignType = request.CampaignType;
                wage.BasePay      = request.BasePay;
                wage.IncentivePay = request.IncentivePay;

                await _wageService.UpdateWage(wage);

                return(Ok(new ApiResponse(200, "Success")));
            }
            catch
            {
                return(BadRequest(new ApiResponse(400, "Something went wrong.")));
            }
        }
Exemplo n.º 2
0
        public async Task <ValidationOutputDto> ValidateUpdateInput(UpdateWageInputDto request)
        {
            if (string.IsNullOrEmpty(request.SdrType))
            {
                return new ValidationOutputDto
                       {
                           IsSuccess  = false,
                           Message    = "Sdr Type is a required field.",
                           StatusCode = 400
                       }
            }
            ;

            if (string.IsNullOrEmpty(request.CampaignType))
            {
                return new ValidationOutputDto
                       {
                           IsSuccess  = false,
                           Message    = "Campaign type is a required field.",
                           StatusCode = 400
                       }
            }
            ;

            if (request.BasePay == 0)
            {
                return new ValidationOutputDto
                       {
                           IsSuccess  = false,
                           Message    = "Base pay must be greater than 0.",
                           StatusCode = 400
                       }
            }
            ;

            return(new ValidationOutputDto
            {
                IsSuccess = true,
                Message = string.Empty,
                StatusCode = 200
            });
        }
    }
}