public async Task <IHttpActionResult> Post([FromBody] CustomerRequest data)
        {
            try
            {
                Customer customer = await _customerRepository.Create(data.GetObject());

                return(new HttpJsonApiResult <CustomerModel>(
                           new CustomerModel(customer), Request, HttpStatusCode.Created));
            }
            catch (Exception)
            {
                return(new HttpJsonApiResult <string>(
                           "Internal Server Error", Request, HttpStatusCode.InternalServerError));
            }
        }
        public async Task <IHttpActionResult> Update(int id, [FromBody] CustomerRequest data)
        {
            try
            {
                Customer customer = await _customerRepository.Update(id, data.GetObject());

                if (customer == null)
                {
                    return(new HttpJsonApiResult <string>("Not Found", Request, HttpStatusCode.NotFound));
                }
                return(new HttpJsonApiResult <CustomerModel>(
                           new CustomerModel(customer), Request, HttpStatusCode.OK));
            }
            catch (Exception)
            {
                return(new HttpJsonApiResult <string>(
                           "Internal Server Error", Request, HttpStatusCode.InternalServerError));
            }
        }