public void LoadStores()
        {
            StoreDetails.Clear();
            Stores.Clear();

            string addressRepository = ConfigurationManager.AppSettings["ReferenceFilePath"];

            if (string.IsNullOrWhiteSpace(addressRepository) && File.Exists(addressRepository))
            {
                List <string> rawStoreData = new List <string>();
                rawStoreData = File.ReadAllLines(addressRepository).ToList();
                foreach (string line in rawStoreData)
                {
                    string[]     segments = line.Split(',');
                    StoreAddress store    = new StoreAddress
                    {
                        StoreCode    = segments[0],
                        StoreName    = segments[1],
                        Address1     = segments[2],
                        Address2     = segments[3],
                        City         = segments[4],
                        State        = segments[5],
                        PostCode     = segments[6],
                        Country      = segments[7],
                        Phone        = segments[8],
                        Email        = segments[9],
                        Manager      = segments[10],
                        AreaManager  = segments[11],
                        OpeningHours = segments[12].Split('|').ToList()
                    };
                    StoreDetails.Add(store);
                    Stores.Add(store.StoreName);
                }
            }
        }
Пример #2
0
 private void InternalAdd(TKey key, StoreAddress <TKey> storeAddress)
 {
     MapKeyToStoreAddress = MapKeyToStoreAddress.AddOrUpdate(key, storeAddress, (token, old) =>
     {
         Garbage += 1;
         return(storeAddress);
     });
 }
 public async Task <IActionResult> Update([FromRoute] Guid id, [FromBody] StoreAddress address)
 {
     if (!ModelState.IsValid)
     {
         return(BadRequest(ModelState.BadRequestDueToModelState()));
     }
     if (id != address.Id)
     {
         return(BadRequest(new ErrorResponseModel
         {
             Message = $"Incorrect Address Id: '{id}'",
             Code = 400,
             Exception = "AddressId"
         }));
     }
     _context.Entry(address).State = EntityState.Modified;
     try
     {
         address.UpdatedOn = DateTime.UtcNow;
         await _context.SaveChangesAsync();
     }
     catch (DbUpdateConcurrencyException dbEx)
     {
         if (!IsAddressExist(id))
         {
             return(NotFound(new ErrorResponseModel
             {
                 Message = $"No data found for store id: '{id}'",
                 Code = 404,
                 Exception = "Not Found"
             }));
         }
         return(BadRequest(new ErrorResponseModel
         {
             Message = dbEx.Message,
             Code = 400,
             Exception = dbEx.GetType().Name
         }));
     }
     catch (Exception ex)
     {
         return(BadRequest(new ErrorResponseModel
         {
             Message = ex.Message,
             Code = 400,
             Exception = ex.GetType().Name
         }));
     }
     return(new OkObjectResult(new SuccessResponseModel
     {
         Code = 200,
         Message = "New address added successfully!"
     }));
 }
        public ActionResult <Response> PostAddress(StoreAddress location)
        {
            try
            {
                if (string.IsNullOrEmpty(HttpContext.Session.GetString("is_login")))
                {
                    return(new Response(null, 403, "Please login to create store"));
                }

                var  userId = int.Parse(HttpContext.Session.GetString("userid"));
                User user   = new User();

                user = appDbContext.Users.FirstOrDefault(u => u.Id == userId);

                if (!user.AccountType.Equals(2))
                {
                    return(new Response(null, 403, "Please login as Admin to create store"));
                }


                var storeFromDb = appDbContext.Stores.FirstOrDefault(s => s.Id == location.StoreID);

                if (storeFromDb == null)
                {
                    return(new Response(null, 404, "The given store ID doesn't exist"));
                }
                StoreAddress storeAddress = new StoreAddress
                {
                    Store      = storeFromDb,
                    StoreID    = location.StoreID,
                    Street     = location.Street,
                    Unit       = location.Unit,
                    PostalCode = location.PostalCode
                };
                appDbContext.StoreAddresses.Add(storeAddress);
                appDbContext.SaveChanges();

                return(new Response(storeAddress, 201, "Store Location has been created"));
            }
            catch (Exception ex)
            {
                return(new Response(null, 404, ex.Message));
            }
        }
Пример #5
0
        public ActionResult Create(StoreCreateViewModel model)
        {
            string vendorId = User.Identity.GetUserId();

            if (string.IsNullOrEmpty(vendorId))
            {
                return(View("Error"));
            }
            var user = db.EcomUsers.FirstOrDefault(m => m.ApplicationUserId == vendorId);

            if (user is null)
            {
                return(View("Error"));
            }
            if (ModelState.IsValid)
            {
                var storeAddr = new StoreAddress
                {
                    Line1     = model.Line1,
                    Line2     = model.Line2,
                    Line3     = model.Line3,
                    Zip       = model.Zip,
                    StateId   = model.State,
                    CountryId = model.Country,
                    PlaceId   = model.City,
                    MarketId  = model.Market
                };

                var store = new Store
                {
                    Name                = model.Name,
                    Address             = storeAddr,
                    EcomUserId          = user.Id,
                    DefaultCurrencyType = model.CurrencyType
                };

                db.Stores.Add(store);
                db.SaveChanges();
                return(RedirectToAction("Index"));
            }

            return(RedirectToAction("Create"));
        }
        public async Task <IActionResult> Add([FromBody] StoreAddress storeAddress)
        {
            if (!ModelState.IsValid)
            {
                return(BadRequest(ModelState));
            }
            try
            {
                _context.Addresses.Add(storeAddress);
                await _context.SaveChangesAsync();
            }
            catch (Exception ex)
            {
                return(BadRequest(new ErrorResponseModel
                {
                    Message = ex.Message,
                    Code = 400,
                    Exception = ex.GetType().Name
                }));
            }

            return(CreatedAtAction("GetAddress", new { id = storeAddress.Id }, storeAddress));
        }
Пример #7
0
 public static StoreAddressDto ToDto(this StoreAddress entity)
 {
     Init();
     return(Mapper.Map <StoreAddressDto>(entity));
 }