示例#1
0
        public ActionResult Save(Householder householder)
        {
            try
            {
                if (!ModelState.IsValid)
                {
                    var householderViewModel = new HouseholderViewModel
                    {
                        Householder = householder
                    };

                    return(View("HouseholdersForm", householderViewModel));
                }

                var             store       = new UserStore <ApplicationUser>(new ApplicationDbContext());
                var             userManager = new UserManager <ApplicationUser>(store);
                ApplicationUser user        = userManager.FindByNameAsync(User.Identity.Name).Result;

                var locationService = new GoogleLocationService(ConfigurationManager.AppSettings["GooglePlaceAPIKey"]);
                var point           = locationService.GetLatLongFromAddress(householder.Address + ", " + householder.Neighbourhood + "-" + householder.City);

                householder.Latitude  = point.Latitude;
                householder.Longitude = point.Longitude;

                if (householder.Id == 0)
                {
                    householder.CreationDate   = DateTime.Now;
                    householder.CongregationId = user.CongregationId;
                    _context.Householders.Add(householder);
                }
                else
                {
                    var householderdb = _context.Householders.Single(h => h.Id == householder.Id);

                    householderdb.Name           = householder.Name;
                    householderdb.Neighbourhood  = householder.Neighbourhood;
                    householderdb.Phone          = householder.Phone;
                    householderdb.ZipCode        = householder.ZipCode;
                    householderdb.CongregationId = user.CongregationId;
                    householderdb.Address        = householder.Address;
                    householderdb.City           = householder.City;
                    householderdb.Latitude       = householder.Latitude;
                    householderdb.Longitude      = householder.Longitude;
                    householderdb.Publisher      = householder.Publisher;
                    householderdb.Observations   = householder.Observations;
                    householderdb.Category       = householder.Category;
                }

                _context.SaveChanges();

                return(RedirectToAction("Index", "Householders"));
            }
            catch (Exception e)
            {
                System.Threading.Thread.Sleep(1000);
                return(ViewHouseholderData(householder.Id));
            }
        }
示例#2
0
        public ActionResult Edit(int id)
        {
            var user = GetUser();
            var householderViewModel = new HouseholderViewModel
            {
                Householder = _context.Householders.Include(h => h.Visits).Single(h => h.Id == id),
                Publishers  = _context.Publishers.Where(p => p.CongregationId == user.CongregationId).ToList()
            };

            return(View("HouseholdersForm", householderViewModel));
        }
示例#3
0
        public ActionResult New()
        {
            var user = GetUser();

            var householderViewModel = new HouseholderViewModel
            {
                Householder = new Householder(),
                Publishers  = _context.Publishers.Where(p => p.CongregationId == user.CongregationId)
            };

            return(View("HouseholdersForm", householderViewModel));
        }
示例#4
0
        // GET: Householder
        public ActionResult Index()
        {
            List <HouseholderViewModel> householderViewModels = new List <HouseholderViewModel>();
            var             store       = new UserStore <ApplicationUser>(new ApplicationDbContext());
            var             userManager = new UserManager <ApplicationUser>(store);
            ApplicationUser user        = userManager.FindByNameAsync(User.Identity.Name).Result;

            var householders = _context.Householders.Include(h => h.Visits).Where(h => h.CongregationId == user.CongregationId);

            foreach (var householder in householders)
            {
                var householderViewModel = new HouseholderViewModel
                {
                    Householder = householder
                };

                householderViewModels.Add(householderViewModel);
            }

            return(View("ListHouseholders", householderViewModels));
        }