public async Task <IActionResult> Delete(ProjectViewState model) { try { //check employees if ((await _employeeService.GetEmployeesInProject(model.ProjectId, true))?.Length > 0) { throw new Exception("项目有人员不能删除"); } //check in log if ((await _projectService.GetTransferInLogs(null, model.ProjectId, true))?.Length > 0) { throw new Exception("项目已经存在调入日志"); } //check out log if ((await _projectService.GetTransferOutLogs(null, model.ProjectId, true))?.Length > 0) { throw new Exception("项目已经存在调出记录"); } await _projectService.Delete(model.ProjectId); return(RedirectToAction(nameof(Index))); } catch (Exception ex) { return(RedirectToAction(nameof(Edit), new { id = model.ProjectId, err = ex.Message })); } }
public async Task <IActionResult> Edit(int?id, string err) { ProjectViewState model; if (id.HasValue) { model = await _projectService.GetProjectById(id.Value); } else { model = new ProjectViewState { //ActiveStatus = true, BeginDate = DateTime.Today, EndDate = DateTime.Today.AddYears(1), State = ProjectState.Preparing }; } if (!string.IsNullOrWhiteSpace(err)) { ModelState.AddModelError("", err); } return(View(model)); }
public async Task <IActionResult> Edit(ProjectViewState model) { try { if (ModelState.IsValid) { Entity.Project project; if (model.ProjectId > 0) { project = await _projectService.GetProjectById(model.ProjectId); if (project == null || project.ID <= 0) { throw new Exception("没有找到要保存的项目"); } } else { project = new Entity.Project(); //{ // CreatedBy = UserHelper.GetUserID(HttpContext), // CreatedOn = DateTime.Now, //}; } //project.ActiveStatus = model.ActiveStatus; project.ContractCode = model.ContractCode; project.EndTime = model.EndDate; project.FullName = model.FullName; project.Owner = model.Owner; project.ShortName = model.ShortName; project.SitePlace = model.SitePlace; project.StartTime = model.BeginDate; project.Status = (int)model.State; project.ContractAmount = model.ContractAmount == null ? 0 : model.ContractAmount.Value; await _projectService.SaveProject(project); return(RedirectToAction(nameof(Index))); } } catch (Exception ex) { ModelState.AddModelError("", ex.Message); } return(View(model)); }
public void ShowNewStoryMenu() { ProjectViewState = ProjectViewState.NewStory; NewStoryButtons.SetActive(true); MainMenuButtons.SetActive(false); }