public void ProcessHouseHoldingRun()
        {
            HouseHoldingRunData houseHoldingRunData = _houseHoldingFileRepository.GetHouseHoldingData();

            var houseHoldingRun = new HouseHoldingRun
            {
                Grid      = houseHoldingRunData.Grid,
                StartDate = houseHoldingRunData.StartDate,
                EndDate   = houseHoldingRunData.EndDate
            };

            _houseHoldingRunRepository.Create(houseHoldingRun);

            foreach (var grid in houseHoldingRunData.ProcessingGridRun)
            {
                var gridRun = _gridRunService.GetGridRun(grid);
                _gridRunService.Update(gridRun.Id, gridRun.StartDate, gridRun.EndDate, gridRun.Status, gridRun.XmlFileId, houseHoldingRun.Id);
            }

            foreach (var documentData in houseHoldingRunData.DocumentRunData)
            {
                var document = _documentService.GetDocument(documentData.DocumentId);

                var houseHold = new HouseHold()
                {
                    HouseHoldDate = DateTime.Now,
                    DocumentId    = document.Id
                };

                _houseHoldRepository.Create(houseHold);

                _documentService.Update(document.Id, houseHoldingRun.Id);
            }
        }
示例#2
0
        public ActionResult Create([Bind(Include = "Id,Name")] HouseHold houseHold)

        {
            //var userId = User.Identity.GetUserId();
            //var user = db.Users.FirstOrDefault(u => u.Id == userId);

            if (ModelState.IsValid)
            {
                var userId = User.Identity.GetUserId();
                var user   = db.Users.FirstOrDefault(u => u.Id == userId);
                if (user.HouseHold != null)
                {
                    ViewBag.ErrorMessage = "You can only belong to one household at a time. If you would  like to create a new household, please leave your current household.";
                    return(PartialView("_ErrorPage"));
                }


                db.HouseHolds.Add(houseHold);
                user.HouseHoldId = houseHold.Id;
                db.SaveChanges();
                return(RedirectToAction("Index"));
            }

            return(View(houseHold));
        }
示例#3
0
        public async Task <IActionResult> Create([Bind("Id,Name,Greeting,Established")] HouseHold houseHold)
        {
            if (ModelState.IsValid)
            {
                _context.Add(houseHold);
                await _context.SaveChangesAsync();

                var user = await _userManager.GetUserAsync(User);

                user.HouseHoldId = houseHold.Id;

                var roles = await _userManager.GetRolesAsync(user);

                await _userManager.RemoveFromRolesAsync(user, roles);

                await _userManager.AddToRoleAsync(user, Roles.Head.ToString());

                await _context.SaveChangesAsync();

                // sign out / sign in
                await _signInManager.SignOutAsync();

                await _signInManager.SignInAsync(user, isPersistent : false);

                TempData["Script"] = "Wizard()";
                return(RedirectToAction(nameof(Dashboard)));
            }
            return(View(houseHold));
        }
        public async Task <IHttpActionResult> PostHouseHold(string name)
        {
            var user = db.Users.Find(User.Identity.GetUserId());

            if (user.HouseHoldId != null)
            {
                var message = "You must leave your current household before you can create a new household";
                return(Ok(message));
            }

            else
            {
                var houseHold = new HouseHold()
                {
                    Name = name
                };

                user.HouseHoldId = houseHold.id;

                db.HouseHolds.Add(houseHold);
                await db.SaveChangesAsync();

                var returnHouse = new HouseHoldVM()
                {
                    Accounts    = houseHold.HouseHoldAccounts.Where(a => a.isArchived == false).ToList(),
                    BudgetItems = houseHold.BudgetItems.ToList(),
                    Users       = houseHold.Users.ToList()
                };

                return(Ok(returnHouse));
            }
        }
示例#5
0
    public void NewHouse(HouseHold house)
    {
        for (int x = 0; x < 3; x++)
        {
            for (int y = 0; y < 10; y++)
            {
                Transform button = buttons[x][y];
                if (button != null)
                {
                    RectTransform   rect    = button.GetComponent <RectTransform>() as RectTransform;
                    TextMeshProUGUI textBox = rect.GetComponentInChildren <TextMeshProUGUI>() as TextMeshProUGUI;

                    if (textBox != null)
                    {
                        if (textBox.text == "PLACEHOLDER NAME")
                        {
                            textBox.text = house.name;
                            button.gameObject.SetActive(true);
                            return;
                        }
                    }
                    else
                    {
                        throw new ArgumentException("[TableManager] Unable to find button textbox!");
                    }
                }
                else
                {
                    throw new ArgumentException("[TableManager] Unable to find table!");
                }
            }
        }
    }
示例#6
0
    public void UpdateTable(HouseHold house)
    {
        ClearTable();

        if (house == null)
        {
            return;
        }

        try
        {
            List <Pet> stable = house.GetStable();

            foreach (Pet p in stable)
            {
                Transform     entryTransform     = Instantiate(entryTemplate, entryContainer);
                RectTransform entryRectTransform = entryTransform.GetComponent <RectTransform>();
                SetData(entryRectTransform, p);
                entryTransform.gameObject.SetActive(true);
                entryCount++;
            }
        }
        catch (ArgumentException e)
        {
            Debug.LogError(e);
        }
    }
示例#7
0
        public override bool Validate()
        {
            if (UserSession == null)
            {
                ResultBean.Result = Define.LOGIN_ERROR;
                return(false);
            }
            if (String.IsNullOrEmpty(model.HouseholdIdx) || String.IsNullOrEmpty(model.HouseholdPdt))
            {
                ResultBean.Result = Define.RESULT_NG;
                ResultBean.Error  = Message.DATA_EROR;
                return(false);
            }
            String json = HttpConnector.GetInstance().GetDataRequest("GetHousehold.php", new Dictionary <String, Object>()
            {
                { "GID", UserSession.Id },
                { "IDX", model.HouseholdIdx }
            });
            HouseHold household = JsonConvert.DeserializeObject <HouseHold>(json);

            if (household == null || !String.Equals(household.Createdate.ToString(Define.PDT_FORMAT), model.HouseholdPdt))
            {
                ResultBean.Result = Define.RESULT_NG;
                ResultBean.Error  = Message.DATA_CHECK;
                return(false);
            }
            return(true);
        }
示例#8
0
        /// <summary>
        ///  Verify the Member is registered for given segment
        /// </summary>
        /// <returns></returns>
        public bool VerifyMemberIsAuthorized(string loyaltyCardNumber, List <int> segmentsList)
        {
            try
            {
                bool isMemberAuthorized = false;

                HouseHold objHousehold = objGetMemberDemographicsManager.GetDemographicData(loyaltyCardNumber).Result;

                MemberSegments memberSegments = objHousehold?.Members?.MemberMain.FirstOrDefault().MemberSegments;

                var houseHoldSegment = objHousehold?.HouseHoldSegments;

                foreach (int segmentId in segmentsList)
                {
                    if ((memberSegments != null && memberSegments.Segment.Any(x => x.Id == Convert.ToInt32(segmentId))) ||
                        (houseHoldSegment != null && houseHoldSegment.Segment.Count > 0 && houseHoldSegment.Segment.Any(x => x.Id == Convert.ToInt32(segmentId))))
                    {
                        isMemberAuthorized = true;
                        break;
                    }
                }

                return(isMemberAuthorized);
            }catch (Exception ex)
            {
                DBLogging.Error("Validate Register Promotion", ex);

                throw;
            }
        }
示例#9
0
        public async Task <IActionResult> Edit(int id, [Bind("Id,Name,Greeting,Established")] HouseHold houseHold)
        {
            if (id != houseHold.Id)
            {
                return(NotFound());
            }

            if (ModelState.IsValid)
            {
                try
                {
                    _context.Update(houseHold);
                    await _context.SaveChangesAsync();
                }
                catch (DbUpdateConcurrencyException)
                {
                    if (!HouseHoldExists(houseHold.Id))
                    {
                        return(NotFound());
                    }
                    else
                    {
                        throw;
                    }
                }
                return(RedirectToAction(nameof(Index)));
            }
            return(View(houseHold));
        }
        public ActionResult Join(string Code)
        {
            if (Code == null)
            {
                ViewBag.errorMessage = "Please enter a valid code.";
                return(View());
            }

            //var CodeNr = Convert.ToInt32(Code);
            var    user       = db.Users.Find(User.Identity.GetUserId());                                        //get the current user
            Invite invitation = db.Invites.FirstOrDefault(p => p.EmailInvite == user.Email && p.CodeNr == Code); //check to see that the invite email matches the current user's email

            if (invitation == null)
            {                                                                //because someone may have gotten the invite email and tried to join
                ViewBag.errorMessage = "Sorry, there is no invitation on file for you";
                return(View());                                              //without using the specific email address that was invited!
            }

            HouseHold houseHold = db.Households.Find(invitation.HhId);   //get the household for the invitation

            if (houseHold == null)
            {
                ViewBag.errorMessage = "HOUSEHOLD NOT FOUND. Please enter a valid code.";
                return(View());
            }

            user.HouseHoldId = houseHold.Id;                             // setting the User with the Household Id makes him part of the HouseHold
            db.SaveChanges();
            return(RedirectToAction("Details", new { id = houseHold.Id }));

            //return View();
        }
示例#11
0
        public async Task <IActionResult> Edit(int id, [Bind("Id,Name,Greeting,Established")] HouseHold houseHold)
        {
            if (User.IsInRole(nameof(Roles.Demo)))
            {
                TempData["Alert"] = "That action can not be done by demo users";
                return(RedirectToAction("Index", "Home"));
            }
            if (id != houseHold.Id)
            {
                return(NotFound());
            }

            if (ModelState.IsValid)
            {
                try
                {
                    _context.Update(houseHold);
                    await _context.SaveChangesAsync();
                }
                catch (DbUpdateConcurrencyException)
                {
                    if (!HouseHoldExists(houseHold.Id))
                    {
                        return(NotFound());
                    }
                    else
                    {
                        throw;
                    }
                }
                return(RedirectToAction(nameof(Index)));
            }
            return(View(houseHold));
        }
示例#12
0
        public ActionResult DeleteConfirmed(int id)
        {
            HouseHold houseHold = db.HouseHolds.Find(id);

            db.HouseHolds.Remove(houseHold);
            db.SaveChanges();
            return(RedirectToAction("Index"));
        }
示例#13
0
 public ActionResult Edit([Bind(Include = "Id,Name")] HouseHold houseHold)
 {
     if (ModelState.IsValid)
     {
         db.Entry(houseHold).State = EntityState.Modified;
         db.SaveChanges();
         return(RedirectToAction("Index"));
     }
     return(View(houseHold));
 }
        public List <Transaction> ListTransactions(HouseHold houseHold)
        {
            var transactions = new List <ICollection <Transaction> >();

            foreach (var bankAccount in houseHold.BankAccounts)
            {
                transactions.Add(bankAccount.Transactions);
            }
            return(transactions.SelectMany(t => t).ToList());
        }
示例#15
0
    void Start()
    {
        AppStart.Invoke();
//      LoadAppData();
        currentHouse    = null;
        currentPet      = null;
        houseTitle.text = "No house selected...";
        petTitle.text   = "No Pet loaded...";
        gen             = new IDGenerator();
    }
示例#16
0
        public async Task <IActionResult> Create([Bind("Name,Greeting")] HouseHold houseHold)
        {
            if (User.IsInRole(nameof(Roles.Demo)))
            {
                TempData["Alert"] = "That action can not be done by demo users";
                return(RedirectToAction("Index", "Home"));
            }
            if (ModelState.IsValid)
            {
                houseHold.Established = DateTime.Now;
                _context.Add(houseHold);
                await _context.SaveChangesAsync();

                var user = await _userManager.GetUserAsync(User);

                user.HouseHoldId = houseHold.Id;
                houseHold.Members.Add(user);
                await _userManager.AddToRoleAsync(user, Roles.Head.ToString());

                await _context.SaveChangesAsync();

                await _signInManager.RefreshSignInAsync(user);

                var deposits = new Category
                {
                    HouseHoldId = houseHold.Id,
                    Name        = "Deposits",
                    Description = "Deposits",
                };
                _context.Add(deposits);
                await _context.SaveChangesAsync();

                var regular = new CategoryItem
                {
                    CategoryId   = deposits.Id,
                    Name         = "Regular Income",
                    Description  = "Regular Income",
                    TargetAmount = 0
                };
                var extra = new CategoryItem
                {
                    CategoryId   = deposits.Id,
                    Name         = "Extra Income",
                    Description  = "Extra Income",
                    TargetAmount = 0
                };
                _context.Add(regular);
                _context.Add(extra);
                await _context.SaveChangesAsync();

                return(RedirectToAction("Details", "HouseHolds", new { id = houseHold.Id }));
            }
            TempData["Alert"] = "Error Creating Household";
            return(RedirectToAction("Index", "Home"));
        }
示例#17
0
        public ActionResult Index()
        {
            var       id = User.Identity.GetHouseHoldId();
            HouseHold HH = db.HouseHolds.Find(id);

            if (HH == null)
            {
                return(HttpNotFound());
            }
            return(View(HH));
        }
示例#18
0
 private void RemoveHouse(HouseHold h)
 {
     list.Remove(h);
     foreach (Transform c in displayList)
     {
         if (c.GetComponent <TextMeshProUGUI>().text == h.name)
         {
             Destroy(c.gameObject);
         }
     }
 }
示例#19
0
        public ActionResult Welcome(string welcome)
        {
            var       user  = db.Users.Find(User.Identity.GetUserId());
            HouseHold house = new HouseHold();

            house.Name = welcome;
            db.HouseHolds.Add(house);
            db.SaveChanges();
            user.HouseHoldId = house.Id;
            db.SaveChanges();
            return(RedirectToAction("JoinAccount", "Home"));
        }
示例#20
0
        public ActionResult DashBoard()
        {
            var user = db.Users.Find(User.Identity.GetUserId());

            bhh.History();

            //var myaccount = db.Accounts.Where(u => u.HouseHoldId == user.HouseHoldId).ToList();
            //var category = db.Categories.Where(u => u.HouseHoldId == user.HouseHoldId).ToList();
            //var transact = db.Transactions.Where(u => u.EnteredById == user.Id).ToList();
            //foreach (var item in myaccount)
            //{
            //   var old = db.Transactions.AsNoTracking().Where(u => u.AccountId == item.Id).ToList();
            //   foreach (var thing in old)
            //    {
            //        var yes = thing.Amount;
            //        var no = thing.Date;
            //        var maybe = thing.Description;
            //    }

            //}
            //}

            user.LastLogIn = DateTimeOffset.Now;
            db.SaveChanges();
            Transaction transaction = new Transaction();
            HouseHold   house       = new HouseHold();

            if (user.HouseHoldId == 2 || user.HouseHoldId == null)
            {
                return(RedirectToAction("LogMeIn", "Home"));
            }
            else
            {
                var myaccount = db.Accounts.First(u => u.HouseHoldId == user.HouseHoldId);
                var newuser   = db.Users.Where(u => u.HouseHoldId == house.Id).ToList();

                if (myaccount == null)
                {
                    return(RedirectToAction("Create", "HouseHolds"));
                }

                DashboardViewModel dvm = new DashboardViewModel()
                {
                    Account       = db.Accounts.Where(u => u.HouseHoldId == user.HouseHoldId).ToList(),
                    Transaction   = db.Transactions.Where(u => u.Account.HouseHoldId == user.HouseHoldId).Where(z => z.Date.Month == DateTimeOffset.Now.Month).ToList(),
                    Notification  = db.Notifications.Where(u => u.HouseHoldId == user.HouseHoldId).ToList(),
                    BudgetHistory = db.BudgetHistories.Where(u => u.HouseHoldId == user.HouseHoldId).ToList()
                };

                return(View(dvm));
            }
        }
示例#21
0
        public ActionResult Create([Bind(Include = "Id,Name")] HouseHold houseHold)
        {
            if (ModelState.IsValid)
            {
                var user = db.Users.Find(User.Identity.GetUserId());
                db.HouseHolds.Add(houseHold);
                user.HouseHoldId = houseHold.Id;
                db.SaveChanges();
                return(RedirectToAction("Dashboard", "Home"));
            }

            return(View(houseHold));
        }
示例#22
0
        // GET: HouseHolds/Details/5
        public ActionResult Details(int?id)
        {
            if (id == null)
            {
                return(new HttpStatusCodeResult(HttpStatusCode.BadRequest));
            }
            HouseHold houseHold = db.HouseHolds.Find(id);

            if (houseHold == null)
            {
                return(HttpNotFound());
            }
            return(View(houseHold));
        }
示例#23
0
 private SearchResultBean.Node CreateNode(HouseHold entity)
 {
     SearchResultBean.Node node = new SearchResultBean.Node();
     node.Idx      = entity.Index;
     node.Tp       = entity.Tp;
     node.Cd       = entity.Ctgry;
     node.Date     = entity.Date;
     node.Day      = entity.Date.Day.ToString();
     node.Type     = FactoryMaster.Instance().GetTypeMaster().Where(item => String.Equals(item.Tp, entity.Tp)).Single().Nm;
     node.Category = FactoryMaster.Instance().GetCategoryMaster().Where(item => String.Equals(item.Cd, entity.Ctgry)).Single().Nm;
     node.Content  = entity.Context;
     node.PriceNum = Util.GetPlusMinus(entity.Tp) ? entity.Price : entity.Price * -1;
     node.Pdt      = entity.Createdate.ToString(Define.PDT_FORMAT);
     return(node);
 }
        private static async Task SeedHouseholdAsync(FPUser user, ApplicationDbContext context)
        {
            var household = new HouseHold
            {
                Name        = "Demo",
                Greeting    = "Welcome",
                Established = DateTime.Now
            };

            context.Add(household);
            await context.SaveChangesAsync();

            user.HouseHoldId = household.Id;
            await context.SaveChangesAsync();
        }
示例#25
0
        public async Task <ActionResult> JoinHouseHold(HouseHoldViewModel model, Guid?code)
        {
            HouseHold hh   = db.HouseHolds.Find(model.HHId);
            var       user = db.Users.Find(User.Identity.GetUserId());

            //model.Member = db.Users.Find(User.Identity.GetUserId());

            hh.Users.Add(user);

            db.SaveChanges();


            await ControllerContext.HttpContext.RefreshAuthentication(user);

            return(RedirectToAction("Index", "HouseHolds"));
        }
示例#26
0
        // GET: HouseHolds
        public ActionResult Index()
        {
            var       user = User.Identity.GetUserId();
            HouseHold hh   = new HouseHold();

            ViewBag.HouseHoldId = hh.Id;
            hh = db.HouseHolds.FirstOrDefault(m => m.Users.FirstOrDefault().Id == user);

            if (hh != null)
            {
                return(View(hh));
            }
            else
            {
                return(View("_ErrorPage"));
            }
        }
示例#27
0
        public async Task <ActionResult> CreateHouseHold(HouseHoldViewModel model)
        {
            HouseHold hh = new HouseHold();

            hh.Name = model.HHName;
            db.HouseHolds.Add(hh);
            db.SaveChanges();

            var user = db.Users.Find(User.Identity.GetUserId());

            hh.Users.Add(user);
            db.SaveChanges();

            await ControllerContext.HttpContext.RefreshAuthentication(user);

            return(RedirectToAction("Index", "HouseHolds"));
        }
示例#28
0
    public void LoadHouse()
    {
        GameObject      o    = EventSystem.current.currentSelectedGameObject;
        TextMeshProUGUI t    = o.GetComponentInChildren <TextMeshProUGUI>();
        string          name = t.text;

        try
        {
            currentHouse = households.GetHouse(name);
        }
        catch (InvalidOperationException i)
        {
            Debug.LogError(i.Message);
        }
        houseTitle.text = currentHouse.name;
        UpdateLoadedHouse.Invoke(currentHouse);
    }
示例#29
0
        public void HouseHoldListingCreateNotPass()
        {
            //Arrange
            bool expected = false;
            //Act
            HouseHoldService hhs     = new HouseHoldService(hdao);
            HouseHold        request = new HouseHold(1000.00, "Testing address", 92868, false);

            int     newID  = hhs.CreateHouseHold(request);
            IResult result = hhs.CreateHouseHoldListing(newID + 1);
            bool    actual = result.IsSuccess;

            Console.WriteLine(result.Message);
            hhs.DeleteHouseHold(newID);

            //Assert
            Assert.AreEqual(expected, actual);
        }
示例#30
0
        public void HouseHoldCreateNotPassB()
        {
            //Arrange
            bool expected = false;
            bool actual   = false;
            //Act
            HouseHoldService hhs     = new HouseHoldService(hdao);
            HouseHold        request = new HouseHold(1000.00, "Testing address", 999999, false);
            int newID = hhs.CreateHouseHold(request);

            if (newID > 0)
            {
                actual = true;
            }
            Console.WriteLine("New HID is " + newID + " if is 0 then test pass\nCreateHouseHold will return 0 if this zip is not valid");
            hhs.DeleteHouseHold(newID);
            //Assert
            Assert.AreEqual(expected, actual);
        }