public ProjectProgressSearchModel PrepareProjectProgressSearchModel(ProjectProgressSearchModel searchModel, Project project) { if (searchModel == null) { throw new ArgumentNullException(nameof(searchModel)); } if (project == null) { throw new ArgumentNullException(nameof(project)); } searchModel.ProjectId = project.Id; //prepare page parameters searchModel.SetGridPageSize(); return(searchModel); }
public ProjectProgressListModel PrepareProjectProgressListModel(ProjectProgressSearchModel searchModel, Project project) { if (searchModel == null) { throw new ArgumentNullException(nameof(searchModel)); } if (project == null) { throw new ArgumentNullException(nameof(project)); } //get researcher educations //chai //var researcherEducations = researcher.ResearcherEducations.OrderByDescending(edu => edu.Degree).ToList(); var projectProgresses = _projectService.GetAllProjectProgresses(project.Id).ToList(); //prepare list model var model = new ProjectProgressListModel { Data = projectProgresses.PaginationByRequestModel(searchModel).Select(x => { //fill in model values from the entity string guid = x.ProjectUploadId != 0 ? _downloadService.GetDownloadById(x.ProjectUploadId.Value).DownloadGuid.ToString() : string.Empty; var projectProfessorModel = new ProjectProgressModel { Id = x.Id, ProjectId = x.ProjectId, Comment = x.Comment, LastUpdateBy = x.LastUpdateBy, ModifiedName = CommonHelper.ConvertToThaiDate(x.Modified), ProgressStartDateName = CommonHelper.ConvertToThaiDate(x.ProgressStartDate), ProgressEndDateName = CommonHelper.ConvertToThaiDate(x.ProgressEndDate), ProgressStatusName = x.ProgressStatus.GetAttributeOfType <EnumMemberAttribute>().Value, DownloadGuid = guid, }; return(projectProfessorModel); }), Total = projectProgresses.Count }; return(model); }
public virtual IActionResult ProjectProgressesSelect(ProjectProgressSearchModel searchModel) { if (!_permissionService.Authorize(StandardPermissionProvider.ManageProjects)) { return(AccessDeniedView()); } //try to get a project with the specified id var project = _projectService.GetProjectById(searchModel.ProjectId); //?? throw new ArgumentException("No project found with the specified id"); //prepare model if (project != null) { var model = _projectModelFactory.PrepareProjectProgressListModel(searchModel, project); return(Json(model)); } else { return(Json(new ProjectProgressListModel())); } }