Exemplo n.º 1
0
        public async Task <Store> AddStore(AddStoreDto userAddStore)
        {
            Random random = new Random();
            var    user   = await _context.SystemUser.Include(x => x.Stores).FirstOrDefaultAsync(x => x.UserName == userAddStore.UserName);

            if (user == null)
            {
                throw new NotFoundException("User Not Found username="******"Category Not Found Id=" + userAddStore.Category);
            }

            var countryCode = await _context.CountryCode.FirstOrDefaultAsync(x => x.Id == userAddStore.CountryCode);

            if (countryCode == null)
            {
                throw new NotFoundException("countryCode Not Found Id=" + userAddStore.CountryCode);
            }


            //// Map to StoreStockDetail
            StoreStockDetail storeStockDetail = new StoreStockDetail()
            {
                // Secreen Values
                BackStore      = userAddStore.BackStore,
                FrontStore     = userAddStore.FrontStore,
                ShoppingWindow = userAddStore.ShoppingWindow,

                Accuracy            = random.GenerateDecimal(),
                MeanAgeInDays       = random.Next() % 100,
                OnFloorAvailability = random.GenerateDecimal(),
            };

            // Map to Store
            Store store = new Store()
            {
                Email            = userAddStore.Email,
                Name             = userAddStore.Name,
                CountryCode      = countryCode,
                User             = user,
                StoreStockDetail = storeStockDetail,
                Category         = category
            };

            user.Stores.Add(store);
            await _context.SaveChangesAsync();

            return(store);
        }
Exemplo n.º 2
0
        public async Task <ActionResult> AddStore([FromBody] AddStoreDto userAddStore)
        {
            await Validate(userAddStore.UserName);

            if (!ModelState.IsValid)
            {
                return(BadRequest(ModelState.Keys.SelectMany(i => ModelState[i].Errors).Select(m => m.ErrorMessage).ToArray()));
            }

            var store = await _storeRepository.AddStore(userAddStore);

            return(Ok(store));
        }