Example #1
0
        public ActionResult DrawingSeriesPageData(int pageIndex, int pageSize, int projectId, int searchEngineerId, int searchProfessionId = 0, string selectedState = "")
        {
            if (!new PermissionService().CanUserVisitProject(CurrentCustomer, projectId))
            {
                return(NoAuthorityJson());
            }

            var lamda = PrepareDrawingSeriesModelPageLamda(searchEngineerId, searchProfessionId, selectedState);

            var drawings = new EngineeringFileService().GetPageDataDes(pageIndex, pageSize, lamda, e => e.UpLoadTime);

            var drawingSeriesListModel = PrepareDrawingSeriesListModel(drawings, projectId, searchEngineerId, searchProfessionId, selectedState);

            return(Json(new { result = true, listHtml = this.RenderPartialViewToString("_DrawingSeriesList", drawingSeriesListModel), total = drawings.TotalCount }, JsonRequestBehavior.AllowGet));
        }
Example #2
0
        protected PagedList <FileVersion> GetAllModelVersion(int pageIndex, int pageSize, Expression <Func <FileVersion, bool> > lamda, int engineeringId)
        {
            var model = new EngineeringFileService().Get(e => e.EngineeringId == engineeringId && e.FileType == FileType.Model);

            if (model == null)
            {
                return(new PagedList <FileVersion>());
            }

            var customerRoles = CurrentCustomer.GetCurrentRoles(0, model.Engineering);

            var query = new FileVersionService().GetListByRoleAndEngineeingId(customerRoles.OrderBy(e => (int)e).FirstOrDefault(), model.Id);

            query = query.Where(lamda).OrderByDescending(e => e.UpLoadeTime);

            return(new PagedList <FileVersion>(query, pageIndex, pageSize));
        }
Example #3
0
        public ActionResult DrawingList(int drawingSeriesId)
        {
            var drawingSeries = new EngineeringFileService().Get(e => e.Id == drawingSeriesId);

            if (drawingSeries == null)
            {
                throw new ArgumentNullException(nameof(drawingSeries));
            }

            if (!new PermissionService().CanUserVisitProject(CurrentCustomer, drawingSeries.Engineering.ProjectId))
            {
                return(new HttpUnauthorizedResult());
            }

            return(View(new DrawingListModel {
                DrawingSeriesId = drawingSeriesId, ProjectName = drawingSeries.Engineering.Project.ProjectName
            }));
        }
Example #4
0
        public ActionResult DrawingListPageData(int pageIndex, int pageSize, int drawingSeriesId)
        {
            var drawingSeries = new EngineeringFileService().Get(e => e.Id == drawingSeriesId);

            if (drawingSeries == null)
            {
                throw new ArgumentNullException(nameof(drawingSeries));
            }

            if (!new PermissionService().CanUserVisitProject(CurrentCustomer, drawingSeries.Engineering.ProjectId))
            {
                return(NoAuthorityJson());
            }

            var drawings = new FileVersionService().GetPagedData(pageIndex, pageSize, e => e.EngineeringFileId == drawingSeriesId && e.FileType == FileType.Drawing, e => e.UpLoadeTime);

            var drawingListModel = PrepareDrawingListModel(drawings, drawingSeries.Engineering.ProjectId);

            return(Json(new { result = true, listHtml = this.RenderPartialViewToString("_Drawing", drawingListModel), total = drawings.TotalCount }, JsonRequestBehavior.AllowGet));
        }
Example #5
0
        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));
        }
Example #6
0
        protected ModelListModel PrepareModelListModel(PagedList <FileVersion> models, int projectId, int engineeringId, string selectedState = "")
        {
            ModelListModel model = new ModelListModel();

            var project = new ProjectService().Get(e => e.Id == projectId);

            if (project == null)
            {
                throw new ArgumentNullException(nameof(project));
            }

            model.ProjectIsFiled = project.IsProjectFiled();
            model.ProjectId      = project.Id;
            model.Roles          = CurrentCustomer.GetCurrentRoles(projectId);

            //检查是否能上传模型
            var engineeringFile =
                new EngineeringFileService().Get(
                    ef => ef.EngineeringId == engineeringId && ef.FileType == FileType.Model);

            if (engineeringFile == null ||
                engineeringFile.Status == FlowCode.Pre_DesignCompany_AwaitUpload ||
                engineeringFile.Status == FlowCode.Pre_DesignCompany_DeletedCurrent ||
                engineeringFile.Status == FlowCode.Pre_BuildCompany_Reject_DesignCompany ||
                engineeringFile.Status == FlowCode.Pre_AuditCompany_Reject_DesignCompany ||
                engineeringFile.Status == FlowCode.DesignCompany_DeletedCurrent ||
                engineeringFile.Status == FlowCode.BuildCompany_Reject_DesignCompany ||
                engineeringFile.Status == FlowCode.AuditCompany_ProjectManager_Confrim_CurrentProcess_End)
            {
                model.CanUploadModel = true;
            }

            foreach (var node in models)
            {
                model.ModelList.Add(new ModelListModel.ModelModel()
                {
                    UploadDescription = node.UploadDescription,
                    RejectDescription = node.RejectDescription,
                    ModelVersionId    = node.Id,
                    ModelStatus       = node.Status,
                    ModelVersionNo    = node.VersionNo,
                    UpdateTime        = node.UpdateStateTime.ToString("yyyy-MM-dd HH:mm:ss"),
                });
            }

            model.SelectedStatus = selectedState;
            model.AvaliableStatus.Add(new SelectListItem()
            {
                Text = "全部", Value = "", Selected = string.IsNullOrWhiteSpace(selectedState)
            });

            WorkFlow.GetAllModelStatus().ForEach(e =>
            {
                model.AvaliableStatus.Add(new SelectListItem()
                {
                    Text     = e,
                    Value    = e,
                    Selected = e == selectedState,
                });
            });

            return(model);
        }
Example #7
0
 public BlobFileController()
 {
     _fileVersionService     = new FileVersionService();
     _engineeringFileService = new EngineeringFileService();
 }