コード例 #1
0
        public async Task <ActionResult> Create([Bind(Include = "ExpenseTime, Cost, Comment, CategoryId")] ExpenditureCreateEditViewModel model)
        {
            var id = User.Identity.GetUserId();

            if (ModelState.IsValid)
            {
                var expenditure = new ExpenditureCreateEditDTO
                {
                    ExpenseTime = model.ExpenseTime,
                    Cost        = model.Cost,
                    Comment     = model.Comment,
                    CategoryId  = model.CategoryId,
                    UserId      = id
                };
                var result = await _expenditures.Add(expenditure);

                if (result.Succeeded)
                {
                    return(RedirectToAction("UserInfo", "User", new { id = id }));
                }
                ModelState.AddModelError(result.Property, result.Message);
            }
            await PopulateCategoriesData(model.CategoryId);

            return(View(model));
        }
コード例 #2
0
        public async Task <ActionResult> Edit(int id)
        {
            var item = await _expenditures.GetExpenditureForEdit(id);

            var expenditure = new ExpenditureCreateEditViewModel
            {
                Id          = item.Id,
                ExpenseTime = (DateTime)item.ExpenseTime,
                Comment     = item.Comment,
                Cost        = (decimal)item.Cost,
                CategoryId  = (int)item.CategoryId
            };

            await PopulateCategoriesData(expenditure.CategoryId);

            return(View(expenditure));
        }
コード例 #3
0
        public async Task <ActionResult> Edit(ExpenditureCreateEditViewModel model)
        {
            if (ModelState.IsValid)
            {
                var expenditure = new ExpenditureCreateEditDTO
                {
                    Id          = model.Id,
                    ExpenseTime = model.ExpenseTime,
                    Cost        = model.Cost,
                    Comment     = model.Comment,
                    CategoryId  = model.CategoryId
                };
                var result = await _expenditures.Update(expenditure);

                if (result.Succeeded)
                {
                    return(RedirectToAction("Index"));
                }
                ModelState.AddModelError(result.Property, result.Message);
            }
            await PopulateCategoriesData(model.CategoryId);

            return(View(model));
        }