Пример #1
0
        public CreateShipperResponse CreateShipper(CreateShipperRequest request)
        {
            CreateShipperResponse response = new CreateShipperResponse();
            Shipper shipper = new Shipper();

            shipper.CompanyName = request.CompanyName;
            shipper.Phone       = request.Phone;
            shipper.Orders      = request.Orders.ConvertToOrders();

            if (shipper.GetBrokenRules().Count() > 0)
            {
                response.Errors = shipper.GetBrokenRules().ToList();
            }
            else
            {
                try {
                    _shipperRepository.Add(shipper);
                    _uow.Commit();
                    response.Errors = new List <BusinessRule>();
                } catch (Exception ex)
                {
                    List <BusinessRule> errors = new List <BusinessRule>();
                    do
                    {
                        errors.Add(new BusinessRule("DAL", "DAL_ERROR: " + ex.Message));
                        ex = ex.InnerException;
                    } while (ex != null);

                    response.Errors = errors;
                }
            }

            return(response);
        }
        public JsonResult Create(ShipperDetailView vm)
        {
            CreateShipperRequest request = new CreateShipperRequest();

            request.CompanyName = vm.CompanyName;
            request.Phone       = vm.Phone;
            CreateShipperResponse response = _shipperService.CreateShipper(request);

            return(Json(response));
        }