Exemple #1
0
        public ActionResult SelectAddress()
        {
            var currentUser = _authenticationService.GetAuthenticatedUser();

            if (currentUser == null)
            {
                throw new OrchardSecurityException(T("Login required"));
            }

            var customer = currentUser.ContentItem.As <CustomerPart>();

            if (customer == null)
            {
                //throw new Exception("Logged on user is NOT a customer.");
                return(RedirectToAction("SignupOrLogin"));
            }

            var invoiceAddress  = _customerService.GetInvoiceAddress(customer.Id);
            var shippingAddress = _customerService.GetLastShippingAddress(customer.Id);

            var addressesViewModel = new AddressesViewModel
            {
                InvoiceAddress  = MapAddress(invoiceAddress, customer),
                ShippingAddress = MapAddress(shippingAddress, customer)
            };

            var shape = _services.New.Checkout_SelectAddress(Addresses: addressesViewModel, ContinueShoppingUrl: _webshopSettings.GetContinueShoppingUrl());

            if (string.IsNullOrWhiteSpace(addressesViewModel.InvoiceAddress.Name))
            {
                addressesViewModel.InvoiceAddress.Name = string.Format("{0} {1} {2}", customer.Title, customer.FirstName, customer.LastName);
            }
            return(new ShapeResult(this, shape));
        }
Exemple #2
0
        public static AddressesViewModel MemberUserToAddressesViewModel(this MemberUser memberUser)
        {
            var addresses = new AddressesViewModel
            {
                MailingAddressApartment     = memberUser.MailingAddressApartment ?? string.Empty,
                MailingAddressStreetNumber  = memberUser.MailingAddressStreetNumber ?? string.Empty,
                MailingAddressStreetName    = memberUser.MailingAddressStreetName ?? string.Empty,
                MailingAddressCity          = memberUser.MailingAddressCity ?? string.Empty,
                MailingAddressProvince      = memberUser.MailingAddressProvince ?? string.Empty,
                MailingAddressPostalCode    = memberUser.MailingAddressPostalCode ?? string.Empty,
                ShippingAddressApartment    = memberUser.ShippingAddressApartment ?? string.Empty,
                ShippingAddressStreetNumber = memberUser.ShippingAddressStreetNumber ?? string.Empty,
                ShippingAddressStreetName   = memberUser.ShippingAddressStreetName ?? string.Empty,
                ShippingAddressCity         = memberUser.ShippingAddressCity ?? string.Empty,
                ShippingAddressProvince     = memberUser.ShippingAddressProvince ?? string.Empty,
                ShippingAddressPostalCode   = memberUser.ShippingAddressPostalCode ?? string.Empty,
                ShippingAddressSame         = memberUser.MailingAddressApartment == memberUser.ShippingAddressApartment &&
                                              memberUser.MailingAddressStreetNumber == memberUser.ShippingAddressStreetNumber &&
                                              memberUser.MailingAddressStreetName == memberUser.ShippingAddressStreetName &&
                                              memberUser.MailingAddressCity == memberUser.ShippingAddressCity &&
                                              memberUser.MailingAddressProvince == memberUser.ShippingAddressProvince ? true : false
            };

            return(addresses);
        }
Exemple #3
0
        public IActionResult GetAddresses(string name)
        {
            var model = new AddressesViewModel();

            model.Addresses = _AddressData.GetAddresses(name);
            return(View(model));
        }
Exemple #4
0
        public async Task <ActionResult> Create()
        {
            var tracker = (Guid)Session["@Tracker"];

            var main = await _context.Addresses.FirstOrDefaultAsync(it => it.Applicant.Tracker == tracker && !it.IsMailing);

            if (main == null)
            {
                return(View());
            }

            var mailing = await _context.Addresses.FirstOrDefaultAsync(it => it.Applicant.Tracker == tracker && it.IsMailing);

            if (mailing == null)
            {
                return(View());
            }

            var viewModel = new AddressesViewModel
            {
                Main    = _mapper.Map <AddressViewModel>(main),
                Mailing = _mapper.Map <AddressViewModel>(mailing)
            };

            return(View(viewModel));
        }
Exemple #5
0
        public ActionResult SelectAddress()
        {
            var currentUser = _authenticationService.GetAuthenticatedUser();

            if (currentUser == null)
            {
                throw new OrchardSecurityException(T("Login required"));
            }

            var customer        = currentUser.ContentItem.As <CustomerPart>();
            var invoiceAddress  = _customerService.GetAddress(customer.Id, "InvoiceAddress");
            var shippingAddress = _customerService.GetAddress(customer.Id, "ShippingAddress");

            var addressesViewModel = new AddressesViewModel
            {
                InvoiceAddress  = MapAddress(invoiceAddress),
                ShippingAddress = MapAddress(shippingAddress)
            };

            var shape = _services.New.Checkout_SelectAddress(AddressesViewModel: addressesViewModel);

            if (string.IsNullOrWhiteSpace(addressesViewModel.InvoiceAddress.Name))
            {
                addressesViewModel.InvoiceAddress.Name = string.Format("{0} {1} {2}", customer.Title, customer.FirstName, customer.LastName);
            }

            return(new ShapeResult(this, shape));
        }
        public async Task <IActionResult> Addresses()
        {
            var model = new AddressesViewModel()
            {
                Title = "Addresses"
            };

            return(View(model));
        }
Exemple #7
0
        public IActionResult Addresses()
        {
            AddressesViewModel vm = new AddressesViewModel();
            var userId            = _userManager.GetUserId(HttpContext.User);
            var user    = _db.Users.FirstOrDefault(u => u.Id == userId);
            var profile = _db.UserProfiles.FirstOrDefault(p => p.ApplicationUserId == user.Id);

            vm.Addresses = profile.GetAddresses();
            return(View(vm));
        }
        public async Task <IActionResult> AddressesList(string searchString)
        {
            var addresses = await _addressService.Search(searchString);

            var model = new AddressesViewModel()
            {
                Addresses = addresses
            };

            return(View(model));
        }
        // GET: Addresses
        public async Task <IActionResult> Index(Guid itemId)
        {
            var addresses = await(from c in _context.Addresses
                                  where _context.AddressAssignments.Any(p => (p.AddressID == c.ID) && (p.ItemID == itemId))
                                  orderby c.City
                                  select c).ToListAsync();

            AddressesViewModel viewModel = new AddressesViewModel
            {
                ItemID    = itemId,
                Addresses = addresses
            };

            return(View(viewModel));
        }
        public AddressesPage(AddressesViewModel addressesViewModel)
        {
            InitializeComponent();
            BindingContext = addressesViewModel;

            string selectedColorName = "ListViewSelectedBackgroundColor";

            if (Application.Current.RequestedTheme == OSAppTheme.Dark)
            {
                selectedColorName = "ListViewSelectedBackgroundColorDark";
            }

            Application.Current.Resources.TryGetValue(selectedColorName, out var selectedColor);
            selectedTxBackgroundColor = (Color)selectedColor;
        }
        public async Task <IActionResult> Addresses()
        {
            var userId    = _userManager.GetUserId(User);
            var addresses = await _userService.GetUserAddressesAsync(new Guid(userId));

            var shippingAddresses = addresses.Where(p => p.AddressType == AddressType.Shipping).Select(p => p.Address);
            var billingAddresses  = addresses.Where(p => p.AddressType == AddressType.Billing).Select(p => p.Address);

            var vm = new AddressesViewModel
            {
                ShippingAddresses = Mapper.Map(shippingAddresses).ToANew <IEnumerable <AddressesViewModel.AddressDTO> >(),
                BillingAddresses  = Mapper.Map(billingAddresses).ToANew <IEnumerable <AddressesViewModel.AddressDTO> >()
            };

            return(View(vm));
        }
Exemple #12
0
        public async Task <IViewComponentResult> InvokeAsync(Guid id, string containername)
        {
            var addresses = await _context.Addresses
                            .Where(a => (a.AddressAssignments.Any(s => s.AddressID == a.ID && s.ItemID == id)))
                            .AsNoTracking()
                            .ToListAsync();

            AddressesViewModel viewModel = new AddressesViewModel
            {
                ItemID        = id,
                ContainerName = containername,
                Addresses     = addresses
            };

            return(View(viewModel));
        }
        public HttpResponseMessage GetAddress(int agentId)
        {
            var viewModel = new AddressesViewModel();

            try
            {
                viewModel.Addresses      = _AddressService.FindByBuidAndAgentId(agentId);
                viewModel.BusinessStatus = 1;
            }
            catch (Exception)
            {
                viewModel.BusinessStatus = -10002;
                viewModel.StatusMessage  = "查询地址失败";
            }

            return(viewModel.ResponseToJson());
        }
Exemple #14
0
        public async Task <ActionResult> Create(AddressesViewModel viewModel)
        {
            if (!ModelState.IsValid)
            {
                return(View(viewModel));
            }

            var tracker = (Guid)Session["@Tracker"];

            var applicant = await _context.Applicant.FirstOrDefaultAsync(it => it.Tracker == tracker);

            var existingMain = await _context.Addresses.FirstOrDefaultAsync(it => it.Applicant.Tracker == tracker && !it.IsMailing);

            if (existingMain != null)
            {
                _mapper.Map(viewModel.Main, existingMain);
                _context.Entry(existingMain).State = EntityState.Modified;
            }
            else
            {
                var main = _mapper.Map <Address>(viewModel.Main);
                main.Applicant = applicant;
                main.IsMailing = false;
                _context.Addresses.Add(main);
            }

            var existingMailing = await _context.Addresses.FirstOrDefaultAsync(it => it.Applicant.Tracker == tracker && it.IsMailing);

            if (existingMailing != null)
            {
                _mapper.Map(viewModel.Mailing, existingMailing);
                _context.Entry(existingMailing).State = EntityState.Modified;
            }
            else
            {
                var mailing = _mapper.Map <Address>(viewModel.Mailing);
                mailing.Applicant = applicant;
                mailing.IsMailing = true;
                _context.Addresses.Add(mailing);
            }

            await _context.SaveChangesAsync();

            return(RedirectToAction("Create", "Employment"));
        }
Exemple #15
0
        public ActionResult SelectAddress(AddressesViewModel addresses)
        {
            var currentUser = _authenticationService.GetAuthenticatedUser();

            if (currentUser == null)
            {
                throw new OrchardSecurityException(T("Login required"));
            }

            if (!ModelState.IsValid)
            {
                return(new ShapeResult(this, _services.New.Checkout_SelectAddress(Addresses: addresses)));
            }

            var customer = currentUser.ContentItem.As <CustomerPart>();

            MapAddress(addresses.BillingAddress, customer);

            return(RedirectToAction("Summary"));
        }
Exemple #16
0
        public ActionResult SelectAddress(AddressesViewModel addresses)
        {
            var currentUser = _authenticationService.GetAuthenticatedUser();

            if (currentUser == null)
            {
                throw new OrchardSecurityException(T("Login required"));
            }

            if (!addresses.InvoiceAddress.IsValidAddress())
            {
                ModelState.AddModelError("InvalidInvoiceAddress", "Please correct the Invoice Address and try again.");
            }

            if (addresses.ShippingAddressSupplied && !addresses.ShippingAddress.IsValidAddress())
            {
                ModelState.AddModelError("InvalidShippingAddress", "Please correct the Shipping Address and try again.");
            }

            if (!ModelState.IsValid)
            {
                addresses.InvoiceAddress.CountryCodes  = CountryCode.SelectList;
                addresses.ShippingAddress.CountryCodes = CountryCode.SelectList;

                return(new ShapeResult(this, _services.New.Checkout_SelectAddress(Addresses: addresses, ContinueShoppingUrl: _webshopSettings.GetContinueShoppingUrl())));
            }

            var customer = currentUser.ContentItem.As <CustomerPart>();

            MapAddress(addresses.InvoiceAddress, "InvoiceAddress", customer);

            if (addresses.ShippingAddressSupplied)
            {
                MapAddress(addresses.ShippingAddress, "ShippingAddress", customer);
            }

            return(RedirectToAction("Summary"));
        }
        //Address

        public async Task <IActionResult> AddressesList(bool activ)
        {
            if (activ)
            {
                var addresses = await _addressService.GetIncompleteAddressAsync();

                var model = new AddressesViewModel()
                {
                    Addresses = addresses
                };
                return(View(model));
            }
            else
            {
                var addresses = await _addressService.GetIncompleteDesactivateAddressAsync();

                var model = new AddressesViewModel()
                {
                    Addresses = addresses
                };
                return(View(model));
            }
        }
        public ActionResult GetAddressForEachUser()
        {
            var userAddresses = new List <AddressesViewModel>();
            var context       = new ApplicationDbContext();
            var userStore     = new UserStore <ApplicationUser>(context);
            var userManager   = new UserManager <ApplicationUser>(userStore);

            foreach (var user in userStore.Users)
            {
                List <string> Address = new List <string>();
                //foreach(var customerInfo in user.Id.CustomerID)
                //{

                //}
                var a = new AddressesViewModel
                {
                    Name = user.UserName//,
                           //Street = Address[0],
                };
                userAddresses.Add(a);
            }
            return(View(userAddresses));
        }
Exemple #19
0
        public AddressCreatePage(AddressesViewModel viewModel)
        {
            InitializeComponent();

            BindingContext = viewModel;
        }
Exemple #20
0
        public AddressesPage(BaseViewModel viewModelContext)
        {
            InitializeComponent();

            BindingContext = new AddressesViewModel(Navigation, this, AddressesItemsListView, viewModelContext);
        }
 public Addresses()
 {
     BindingContext = viewModel = new AddressesViewModel();
     viewModel.LoadAddresses.Execute(null);
     InitializeComponent();
 }
        public async Task <ActionResult> ChangeAddressDetails(AddressesViewModel model)
        {
            CVGSAppEntities db = new CVGSAppEntities();

            // if only some parts of mailing address are entered
            if ((!string.IsNullOrEmpty(model.MailingAddressApartment) || !string.IsNullOrEmpty(model.MailingAddressStreetNumber) || !string.IsNullOrEmpty(model.MailingAddressStreetName) ||
                 !string.IsNullOrEmpty(model.MailingAddressCity) || !string.IsNullOrEmpty(model.MailingAddressProvince)) &&
                (string.IsNullOrEmpty(model.MailingAddressStreetNumber) || string.IsNullOrEmpty(model.MailingAddressStreetName) ||
                 string.IsNullOrEmpty(model.MailingAddressCity) || string.IsNullOrEmpty(model.MailingAddressProvince)))
            {
                ModelState.AddModelError("", "Please provide a full mailing address or clear all mailing address fields.");
            }
            // if only some parts of shipping address are entered
            if ((!string.IsNullOrEmpty(model.ShippingAddressApartment) || !string.IsNullOrEmpty(model.ShippingAddressStreetNumber) || !string.IsNullOrEmpty(model.ShippingAddressStreetName) ||
                 !string.IsNullOrEmpty(model.ShippingAddressCity) || !string.IsNullOrEmpty(model.ShippingAddressProvince)) &&
                (string.IsNullOrEmpty(model.ShippingAddressStreetNumber) || string.IsNullOrEmpty(model.ShippingAddressStreetName) ||
                 string.IsNullOrEmpty(model.ShippingAddressCity) || string.IsNullOrEmpty(model.ShippingAddressProvince)))
            {
                ModelState.AddModelError("", "Please provide a full shipping address or clear all shipping address fields.");
            }
            if (!ModelState.IsValid)
            {
                List <SelectListItem> provinces = db.Provinces
                                                  .OrderBy(p => p.Name)
                                                  .Select(p =>
                                                          new SelectListItem
                {
                    Value = p.Code,
                    Text  = p.Name
                }).ToList();

                provinces.Insert(0, new SelectListItem {
                    Text = "", Value = ""
                });
                ViewData["ProvinceList"] = provinces;
                return(View(model));
            }


            // get member user object
            var userId     = User.Identity.GetUserId();
            var memberUser = await db.MemberUsers.FindAsync(userId);

            // format the postal codes
            if (!string.IsNullOrEmpty(model.MailingAddressPostalCode))
            {
                int startingIndexSecondPart = model.MailingAddressPostalCode.Length == 6 ? 3 : 4;
                memberUser.MailingAddressPostalCode = formatPostalCode(model.MailingAddressPostalCode, startingIndexSecondPart);
            }
            else
            {
                memberUser.MailingAddressPostalCode = null;
            }
            if (model.ShippingAddressSame)
            {
                memberUser.ShippingAddressPostalCode = memberUser.MailingAddressPostalCode;
            }
            else if (!string.IsNullOrEmpty(model.ShippingAddressPostalCode))
            {
                int startingIndexSecondPart = model.ShippingAddressPostalCode.Length == 6 ? 3 : 4;
                memberUser.ShippingAddressPostalCode = formatPostalCode(model.ShippingAddressPostalCode, startingIndexSecondPart);
            }
            else
            {
                memberUser.ShippingAddressPostalCode = null;
            }

            // update and save member user record
            memberUser.MailingAddressApartment    = !string.IsNullOrEmpty(model.MailingAddressApartment) ? model.MailingAddressApartment.Trim() : string.Empty;
            memberUser.MailingAddressStreetNumber = !string.IsNullOrEmpty(model.MailingAddressStreetNumber) ? model.MailingAddressStreetNumber.Trim() : string.Empty;
            memberUser.MailingAddressStreetName   = !string.IsNullOrEmpty(model.MailingAddressStreetName) ? model.MailingAddressStreetName.Trim() : string.Empty;
            memberUser.MailingAddressCity         = !string.IsNullOrEmpty(model.MailingAddressCity) ? model.MailingAddressCity.Trim() : string.Empty;
            memberUser.MailingAddressProvince     = !string.IsNullOrEmpty(model.MailingAddressProvince) ? model.MailingAddressProvince.Trim() : string.Empty;
            if (model.ShippingAddressSame)
            {
                memberUser.ShippingAddressApartment    = !string.IsNullOrEmpty(model.MailingAddressApartment) ? model.MailingAddressApartment.Trim() : string.Empty;
                memberUser.ShippingAddressStreetNumber = !string.IsNullOrEmpty(model.MailingAddressStreetNumber) ? model.MailingAddressStreetNumber.Trim() : string.Empty;
                memberUser.ShippingAddressStreetName   = !string.IsNullOrEmpty(model.MailingAddressStreetName) ? model.MailingAddressStreetName.Trim() : string.Empty;
                memberUser.ShippingAddressCity         = !string.IsNullOrEmpty(model.MailingAddressCity) ? model.MailingAddressCity.Trim() : string.Empty;
                memberUser.ShippingAddressProvince     = !string.IsNullOrEmpty(model.MailingAddressProvince) ? model.MailingAddressProvince.Trim() : string.Empty;
            }
            else
            {
                memberUser.ShippingAddressApartment    = !string.IsNullOrEmpty(model.ShippingAddressApartment) ? model.ShippingAddressApartment.Trim() : string.Empty;
                memberUser.ShippingAddressStreetNumber = !string.IsNullOrEmpty(model.ShippingAddressStreetNumber) ? model.ShippingAddressStreetNumber.Trim() : string.Empty;
                memberUser.ShippingAddressStreetName   = !string.IsNullOrEmpty(model.ShippingAddressStreetName) ? model.ShippingAddressStreetName.Trim() : string.Empty;
                memberUser.ShippingAddressCity         = !string.IsNullOrEmpty(model.ShippingAddressCity) ? model.ShippingAddressCity.Trim() : string.Empty;
                memberUser.ShippingAddressProvince     = !string.IsNullOrEmpty(model.ShippingAddressProvince) ? model.ShippingAddressProvince.Trim() : string.Empty;
            }
            try
            {
                await db.SaveChangesAsync();

                return(RedirectToAction("Index"));
            }
            catch (Exception ex)
            {
                return(RedirectToAction("Index"));
            }
        }
 public AddressInfoPage(AddressesViewModel addressesViewModel)
 {
     InitializeComponent();
     BindingContext = addressesViewModel;
 }
 public AddressesPage()
 {
     InitializeComponent();
     BindingContext = new AddressesViewModel();
 }