protected new IActionResult Response(object result = null)
        {
            if (IsValidOperation())
            {
                return(Ok(result));
            }

            return(BadRequest(_notifications.GetNotifications().Select(n => n.Value)));
        }
        public async Task <IActionResult> Post([FromBody] CreateCustomerCommand command)
        {
            if (!ModelState.IsValid)
            {
                return(BadRequest(new ErrorsResponse(ModelState)));
            }

            var customer = _createCustomerHandler.CreateAsync(command);

            if (_notifications.HasNotifications())
            {
                return(BadRequest(new ErrorsResponse(_notifications.GetNotifications().Select(x => x.Value))));
            }

            return(Ok(customer));
        }