public ActionResult GetModelProfessionState(int modelVersionId, int professionId) { var modelVersion = new FileVersionService().Get(e => e.Id == modelVersionId); if (modelVersion == null) { throw new ArgumentNullException(nameof(modelVersion)); } if (!new PermissionService().CanUserVisitProject(CurrentCustomer, modelVersion.EngineeringFile.Engineering.ProjectId)) { return(NoAuthorityJson()); } var modelProfession = new ModelProfessionService().Get(e => e.ModelVersionId == modelVersionId && e.ProfessionId == professionId); var customerRoles = CurrentCustomer.CustomerRoles.Where(e => e.ProjectId == modelVersion.EngineeringFile.Engineering.ProjectId && e.FinishTime == null); string roleDes = CurrentCustomer.GetCurrentRoleDes(professionId, modelVersion.EngineeringFile.Engineering); ModelProfessionOperateModel operateModel = null; if (professionId != 0 && modelProfession != null) { var roles = CurrentCustomer.GetCurrentRoles(professionId, modelProfession.EngineerFile.Engineering); operateModel = PrepareOperateModel(modelProfession, roles); } return(Json(new { result = true, roleDes = roleDes, htmlStr = base.RenderPartialViewToString("_ModelProfessionOperate", operateModel) }, JsonRequestBehavior.AllowGet)); }
public ActionResult CommentModelPageData(int pageIndex, int pageSize, CommentListModel commentsModel) { var model = new EngineeringFileService().Get(e => e.Id == commentsModel.ModelId); if (model == null) { throw new ArgumentNullException(nameof(model)); } if (!new PermissionService().CanUserVisitProject(CurrentCustomer, model.Engineering.ProjectId)) { return(NoAuthorityJson()); } var lamda = PrepareCommentListLamda(commentsModel, model); PagedList <Comment> comments = GetVersionComments(pageIndex, pageSize, lamda, model, commentsModel.SelectedVersionId, commentsModel.SelectedProfessionId); var commentModels = PrepareCommentModelPageData(comments, model); var roleDes = CurrentCustomer.GetCurrentRoleDes(commentsModel.SelectedProfessionId, model.Engineering); return(Json(new { result = true, listHtml = this.RenderPartialViewToString("_Comment", commentModels), total = comments.TotalCount, roleDes = roleDes, statusDescription = model.FileVersions.FirstOrDefault(e => e.Id == commentsModel.SelectedVersionId)?.Status.GetDescription() }, JsonRequestBehavior.AllowGet)); }