public async Task <IActionResult> Edit(int projectId, int year) { var project = await _projectService.FindProject(projectId); if (project == null || project.ProjectId <= 0 || year < 2019) { return(NotFound()); } var projectYear = new ProjectYearViewModel(); await projectYear.CalculatePlans(year, new Project[] { project }, _projectService, _planService); var model = projectYear.ProjectRowsDic[project.ProjectId]; for (var month = 1; month < 13; month++) { if (model.MonthDataDic[month] == null) { model.MonthDataDic[month] = new MonthDataViewModel { Month = month, }; } } return(View(model)); }
public async Task <IActionResult> Index(ProjectYearViewModel model) { if (model.Year <= 0) { model.Year = DateTime.Today.Year; } var allowAllOrgs = Helper.AllowAllOrgs(HttpContext, out int?allowedOrgId); if (!allowAllOrgs) { model.SelectedOrgId = allowedOrgId; } //TODO: 帅选满足条件的项目 var projects = await _projectService.SearchProjectsWithoutPager(model.SelectedOrgId, model.SearchName, !model.IncludeInActive); await model.CalculatePerforms(model.Year, projects, _projectService, _performService); foreach (var proj in model.ProjectRowsDic.Values) { if (proj.Balance != null) { proj.Balance.ClearZeroProperties(); } foreach (var m in proj.MonthDataDic.Values) { if (m != null) { m.ClearZeroProperties(); } } } //年度列表 var years = new List <int>(); for (var i = 2020; i < 2030; i++) { years.Add(i); } ViewBag.YearList = new SelectList(years); var orgnizations = allowAllOrgs ? await _systemService.GetOrganizations() : new Organization[] { await _systemService.FindOrganization(allowedOrgId.Value) }; //组织列表 ViewBag.OrgList = new SelectList(orgnizations, nameof(Organization.OrganizationId), nameof(Organization.Name)); return(View(model)); }