public async Task <IActionResult> Post([FromBody] GarmentDraftPackingListItemViewModels viewModel)
        {
            try
            {
                VerifyUser();
                _validateService.Validate(viewModel);

                var result = await _service.Create(viewModel.Items.ToList());

                return(Created("/", new { data = result }));
            }
            catch (ServiceValidationException ex)
            {
                var Result = new
                {
                    error      = ResultFormatter.Fail(ex),
                    apiVersion = "1.0.0",
                    statusCode = HttpStatusCode.BadRequest,
                    message    = "Data does not pass validation"
                };

                return(new BadRequestObjectResult(Result));
            }
            catch (Exception ex)
            {
                return(StatusCode((int)HttpStatusCode.InternalServerError, ex.Message));
            }
        }
Esempio n. 2
0
        public void Validate_DefaultValue()
        {
            GarmentDraftPackingListItemViewModels viewModel = ViewModel;

            var result = viewModel.Validate(null);

            Assert.NotEmpty(result.ToList());
        }
Esempio n. 3
0
        public void Validate_DetailsDefaultValue()
        {
            GarmentDraftPackingListItemViewModels viewModel = ViewModel;

            viewModel.Items = new List <GarmentDraftPackingListItemViewModel>
            {
                new GarmentDraftPackingListItemViewModel
                {
                    Details = new List <GarmentDraftPackingListDetailViewModel>
                    {
                        new GarmentDraftPackingListDetailViewModel()
                    }
                }
            };

            var result = viewModel.Validate(null);

            Assert.NotEmpty(result.ToList());
        }
Esempio n. 4
0
        public void Validate_QuantityDifferent()
        {
            GarmentDraftPackingListItemViewModels viewModel = ViewModel;

            foreach (var item in viewModel.Items)
            {
                foreach (var detail in item.Details)
                {
                    foreach (var size in detail.Sizes)
                    {
                        size.Quantity = 1;
                    }
                    detail.QuantityPCS    = 2;
                    detail.CartonQuantity = 3;
                }
                item.Quantity = 4;
            }

            var result = viewModel.Validate(null);

            Assert.NotEmpty(result.ToList());
        }