コード例 #1
0
        public async Task <IActionResult> Edit(int id, [Bind("Id,Date,MoodId,MoodIntensity,Notes")] DailyMood dailyMood)
        {
            if (id != dailyMood.Id)
            {
                return(NotFound());
            }

            if (ModelState.IsValid)
            {
                try
                {
                    _dailyMoodService.UpdateDailyMood(dailyMood);
                    await _dailyMoodService.SaveChangesAsync();
                }
                catch (DbUpdateConcurrencyException)
                {
                    if (!_dailyMoodService.DailyMoodExists(dailyMood.Id))
                    {
                        return(NotFound());
                    }
                    else
                    {
                        throw;
                    }
                }
                return(RedirectToAction(nameof(Index), "YearInMoods"));
            }

            DailyMoodViewModel vm = await GetDailyMoodVM(id);

            return(View(vm));
        }
コード例 #2
0
        // GET: DailyMoods/Create
        public async Task <IActionResult> Create(DateTime?date)
        {
            DateTime defaultDate = date ?? DateTime.Today;

            DailyMoodViewModel dailyMoodVM = await GetDailyMoodVMForCreate(defaultDate.Date);

            return(View(dailyMoodVM));
        }
コード例 #3
0
        public async Task <DailyMoodViewModel> GetDailyMoodVMForCreate(DateTime date)
        {
            DailyMoodViewModel dailyMoodVM = new DailyMoodViewModel
            {
                Date     = date,
                MoodList = await GetMoodSelectList()
            };

            return(dailyMoodVM);
        }
コード例 #4
0
        // GET: DailyMoods/Edit/5
        public async Task <IActionResult> Edit(int?id)
        {
            if (id == null)
            {
                return(NotFound());
            }

            DailyMoodViewModel vm = await GetDailyMoodVM(id.GetValueOrDefault());

            return(View(vm));
        }
コード例 #5
0
        public async Task <DailyMoodViewModel> GetDailyMoodVM(int id)
        {
            var dailyMood = await _dailyMoodService.GetUntrackedDailyMoodWithId(id);

            if (dailyMood == null)
            {
                return(null);
            }

            DailyMoodViewModel dailyMoodVM = new DailyMoodViewModel
            {
                Id            = dailyMood.Id,
                Date          = dailyMood.Date,
                MoodId        = dailyMood.MoodId,
                Notes         = dailyMood.Notes,
                MoodIntensity = dailyMood.MoodIntensity,
                MoodList      = await GetMoodSelectList(dailyMood.MoodId)
            };

            return(dailyMoodVM);
        }
コード例 #6
0
        public async Task <IActionResult> Create([Bind("Id,Date,MoodId,MoodIntensity,Notes")] DailyMoodViewModel vm)
        {
            DailyMood dailyMood = new DailyMood();

            if (ModelState.IsValid)
            {
                dailyMood.Date           = vm.Date;
                dailyMood.MoodId         = vm.MoodId;
                dailyMood.MoodIntensity  = vm.MoodIntensity;
                dailyMood.Notes          = vm.Notes;
                dailyMood.InputTimestamp = DateTime.Now;

                _dailyMoodService.AddDailyMood(dailyMood);
                await _dailyMoodService.SaveChangesAsync();

                return(RedirectToAction(nameof(Index), "YearInMoods"));
            }

            vm.MoodList = new SelectList(await _moodService.GetMoodNameDict());

            return(View(vm));
        }