protected override void OnNavigatedTo(System.Windows.Navigation.NavigationEventArgs e) { string worktaskIDParam = ""; if (NavigationContext.QueryString.TryGetValue("worktaskIDParam", out worktaskIDParam)) { String projectID = ""; String dayDate = ""; String timecardID = ""; bool result; result = NavigationContext.QueryString.TryGetValue("projectID", out projectID); result = NavigationContext.QueryString.TryGetValue("timecardID", out timecardID); result = NavigationContext.QueryString.TryGetValue("dayDate", out dayDate); DateTime dayDateTime; bool dateConvertResult = DateTime.TryParse(dayDate, out dayDateTime); workTaskViewModel = App.AppViewModel.GetWorkTaskViewModel(worktaskIDParam, projectID, timecardID, dayDateTime); appBarDeleteButton.IsEnabled = workTaskViewModel.WorktaskPageEnabled; appBarSaveButton.IsEnabled = workTaskViewModel.WorktaskPageEnabled; } this.DataContext = workTaskViewModel; // Call the base method, to execute the rest of the navigation event base.OnNavigatedTo(e); }
public ActionResult Edit(WorktaskViewModel worktask) { int currentUID = AccountHelper.GetCurrentUser(User.Identity.Name).UID; if (ModelState.IsValid) { //Compare data of new and old object for saving to history var oldObject = repository.Worktasks.Where(x => x.WorktaskID == worktask.WorktaskID).FirstOrDefault(); oldObject = repository.Detail(oldObject.WorktaskID); if (oldObject != null) { oldObject.loadMetaInfo(repository, accRepository); worktask = (WorktaskViewModel)WorktaskService.GetInstance().loadMetaInfoFromRequest(worktask, Request); worktask.loadMetaInfo(repository, accRepository); List <DiffInfo> diffInfos = worktask.Compare(oldObject); var diff = CompareObjExtensions.GenerateDiff("Cập nhật", diffInfos, currentUID, oldObject.WorktaskID); if (repository.SaveWorktask(worktask)) { if (repository.SaveHistory(diff)) { TempData["message"] = string.Format("Thông tin công việc {0} lưu thành công!", worktask.Identify); return(Json(new { taskId = worktask.WorktaskID, success = true, message = TempData["message"], redirectUrl = Url.Action("Detail", new { taskcode = worktask.Identify }) }, JsonRequestBehavior.AllowGet)); } } } TempData["message"] = string.Format("Lưu không thành công"); return(Json(new { taskId = 0, success = false, message = TempData["message"] }, JsonRequestBehavior.AllowGet)); } else { TempData["message"] = string.Format(GetModelErrorMessages(ModelState)); return(Json(new { taskId = 0, success = false, message = TempData["message"] }, JsonRequestBehavior.AllowGet)); } }