// GET: Reports/Edit/5 public ActionResult Edit(int?id) { if (id == null) { return(new HttpStatusCodeResult(HttpStatusCode.BadRequest)); } Report report = db.Reports.Find(id); if (report == null) { return(HttpNotFound()); } //本人の日報でなければ表示しないように、それをEdit.cshtmlにTempDataで伝える if (report.EmployeeId != User.Identity.GetUserId()) { TempData["wrong_person"] = "true"; } ReportEditViewModel editViewModel = new ReportEditViewModel() { Id = report.Id, ReportDate = report.ReportDate, WorkTime = report.WorkTime, LeaveTime = report.LeaveTime, CliantCompany = report.CliantCompany, CliantPIC = report.CliantPIC, CliantStatus = report.CliantStatus, Title = report.Title, Content = report.Content }; return(View(editViewModel)); }
/// <summary> /// /// </summary> /// <param name="viewModel"></param> /// <returns></returns> public async Task EditByViewModelAsync(ReportEditViewModel viewModel) { var report = await FindByIdAsync(viewModel.Id); _mapper.Map(viewModel, report); await _unitOfWork.SaveAllChangesAsync(auditUserId : _httpContextManager.CurrentUserId()); }
public ActionResult Edit([Bind(Include = "Id,ReportDate,WorkTime,LeaveTime,CliantCompany,CliantPIC,CliantStatus,Title,Content")] ReportEditViewModel editViewModel) { if (ModelState.IsValid) { Report report = db.Reports.Find(editViewModel.Id); report.ReportDate = editViewModel.ReportDate; report.WorkTime = new DateTime(report.ReportDate.Value.Year, report.ReportDate.Value.Month, report.ReportDate.Value.Day, editViewModel.WorkTime.Value.Hour, editViewModel.WorkTime.Value.Minute, editViewModel.WorkTime.Value.Second); report.LeaveTime = new DateTime(report.ReportDate.Value.Year, report.ReportDate.Value.Month, report.ReportDate.Value.Day, editViewModel.LeaveTime.Value.Hour, editViewModel.LeaveTime.Value.Minute, editViewModel.LeaveTime.Value.Second); report.Title = editViewModel.Title; report.CliantCompany = editViewModel.CliantCompany; report.CliantPIC = editViewModel.CliantPIC; report.CliantStatus = editViewModel.CliantStatus; report.Content = editViewModel.Content; report.UpdatedAt = DateTime.Now; db.Entry(report).State = EntityState.Modified; db.SaveChanges(); //TempDataにフラッシュメッセージを入れておく TempData["flush"] = "日報を編集しました"; return(RedirectToAction("Index")); } return(View(editViewModel)); }
public virtual async Task <ActionResult> Edit(ReportEditViewModel viewModel) { await _reportService.EditByViewModelAsync(viewModel); return(RedirectToAction(MVC.Report.List())); }
/// <summary> /// /// </summary> /// <param name="id"></param> /// <returns></returns> public virtual async Task <ActionResult> Edit(Guid id) { var viewModel = new ReportEditViewModel(); return(View(MVC.Report.Views.Edit, viewModel)); }