Пример #1
0
        public static void ValidateData(this IHDSContext context, CreateInventoryDto dto)
        {
            var errors = new StringBuilder();

            // Model
            errors.AddIfExists(dto.Model.ValidateRequired(ValidationMessages.ModelRequired));
            errors.AddIfExists(dto.Model.ValidateLength(100, ValidationMessages.ModelLength));
            // Brand
            errors.AddIfExists(dto.Model.ValidateRequired(ValidationMessages.BrandRequired));
            errors.AddIfExists(dto.Model.ValidateLength(100, ValidationMessages.BrandLength));
            // SerialNumber
            errors.AddIfExists(dto.Model.ValidateLength(100, ValidationMessages.SerialNumberLength));
            // ProductDescription
            errors.AddIfExists(dto.Model.ValidateRequired(ValidationMessages.ProductDescriptionRequired));
            errors.AddIfExists(dto.Model.ValidateLength(1000, ValidationMessages.ProductDescriptionLength));
            // Cost
            errors.AddIfExists(dto.Model.ValidateRequired(ValidationMessages.CostRequired));
            // Price
            errors.AddIfExists(dto.Model.ValidateRequired(ValidationMessages.PriceRequired));
            // LocationID
            errors.AddIfExists(dto.Model.ValidateRequired(ValidationMessages.StoreIDRequired));
            errors.AddIfExists(context.KeyExists <Store>(dto.LocationID, ValidationMessages.StoreIDNotFound));

            if (errors.Length > 0)
            {
                throw new ValidationException(errors.ToString());
            }
        }
Пример #2
0
        public InventoryVerboseDto Create(CreateInventoryDto newProduct)
        {
            _dbContext.ValidateData(newProduct);
            var product = newProduct.ToEntity();

            _dbContext.Inventory.Add(product);
            _dbContext.SaveChanges();

            return(product.ToVerboseDto());
        }
Пример #3
0
        public IActionResult Create([Required][FromBody] CreateInventoryDto product)
        {
            try
            {
                var result = _repo.Create(product);

                return(StatusCode((int)HttpStatusCode.Created, result));
            }
            catch (Exception ex)
            {
                _logger.LogError(ex.Message);
                return(BadRequest(ex.Message));
            }
        }
Пример #4
0
 public static Inventory ToEntity(this CreateInventoryDto dto)
 {
     Init();
     return(Mapper.Map <Inventory>(dto));
 }