From f8a801c5e7bcb45c4e81be33a3d7b5c5f61a1582 Mon Sep 17 00:00:00 2001 From: lijiaqi Date: Mon, 7 Nov 2022 16:28:36 +0800 Subject: [PATCH] update --- .../ApiReviewOfficerController.java | 41 ++-- .../modules/rddb/entity/ReviewOfficer.java | 20 +- .../rddb/entity/ReviewOfficerAttachment.java | 3 + .../rddb/entity/dto/ReviewOfficerDto.java | 14 ++ .../state/ReviewOfficerCheckStateRequest.java | 20 +- .../ReviewOfficerInReportStateRequest.java | 38 ++- .../ReviewOfficerOpinionStateRequest.java | 23 +- .../ReviewOfficerResultStateRequest.java | 10 + .../ReviewOfficerReviewSaveStateRequest.java | 32 +++ .../rddb/service/ReviewOfficerService.java | 186 +++++++++++--- .../rddb/wrapper/ReviewOfficerWrapper.java | 231 +++++++++++++++--- 11 files changed, 506 insertions(+), 112 deletions(-) create mode 100644 src/main/java/com/ydool/boot/modules/rddb/entity/request/review_officer/state/ReviewOfficerReviewSaveStateRequest.java diff --git a/src/main/java/com/ydool/boot/api/controller/ApiReviewOfficerController.java b/src/main/java/com/ydool/boot/api/controller/ApiReviewOfficerController.java index f0f927b..33ebb0c 100644 --- a/src/main/java/com/ydool/boot/api/controller/ApiReviewOfficerController.java +++ b/src/main/java/com/ydool/boot/api/controller/ApiReviewOfficerController.java @@ -17,10 +17,7 @@ import com.ydool.boot.modules.rddb.entity.dto.ReviewOfficerDto; import com.ydool.boot.modules.rddb.entity.request.review_officer.ReviewOfficerAuditRequest; import com.ydool.boot.modules.rddb.entity.request.review_officer.ReviewOfficerCheckRequest; import com.ydool.boot.modules.rddb.entity.request.review_officer.ReviewOfficerCommentRequest; -import com.ydool.boot.modules.rddb.entity.request.review_officer.state.ReviewOfficerCheckStateRequest; -import com.ydool.boot.modules.rddb.entity.request.review_officer.state.ReviewOfficerInReportStateRequest; -import com.ydool.boot.modules.rddb.entity.request.review_officer.state.ReviewOfficerOpinionStateRequest; -import com.ydool.boot.modules.rddb.entity.request.review_officer.state.ReviewOfficerResultStateRequest; +import com.ydool.boot.modules.rddb.entity.request.review_officer.state.*; import com.ydool.boot.modules.rddb.service.ReviewOfficerCommentService; import com.ydool.boot.modules.rddb.service.ReviewOfficerService; import com.ydool.boot.modules.rddb.wrapper.ReviewOfficerWrapper; @@ -51,7 +48,7 @@ public class ApiReviewOfficerController extends ApiBaseController { @ApiImplicitParams({ @ApiImplicitParam(name = "page", value = "当前页"), @ApiImplicitParam(name = "size", value = "显示条数"), - @ApiImplicitParam(name = "type", value = "类型 1法官评议 2检查官评议 "), +// @ApiImplicitParam(name = "type", value = "类型 1法官评议 2检查官评议 "), @ApiImplicitParam(name = "reviewSubject", value = "评议主题"), @ApiImplicitParam(name = "platform", value = "当前登录的是哪个端 admin机关办公/ rddb代表/ voter选民 ", required = true) }) @@ -60,10 +57,12 @@ public class ApiReviewOfficerController extends ApiBaseController { }) @ApiOperation("评议列表 (被指定的人与创建人可见)") @GetMapping - public void reviewPage(String type,String reviewSubject,String platform) { + public void reviewPage( +// String type, + String reviewSubject,String platform) { Assert.notNull(platform, "请填入当前端参数"); QueryWrapper qw = new QueryWrapper() - .eq("type", type) +// .eq("type", type) .lt("state", ReviewOfficer.STATE_PUBLIC) .like(StrUtil.isNotBlank(reviewSubject),"review_subject", reviewSubject) // .and(_qw -> _qw @@ -85,7 +84,7 @@ public class ApiReviewOfficerController extends ApiBaseController { @ApiImplicitParams({ @ApiImplicitParam(name = "page", value = "当前页"), @ApiImplicitParam(name = "size", value = "显示条数"), - @ApiImplicitParam(name = "type", value = "类型 1法官评议 2检查官评议 "), +// @ApiImplicitParam(name = "type", value = "类型 1法官评议 2检查官评议 "), @ApiImplicitParam(name = "reviewSubject", value = "评议主题"), @ApiImplicitParam(name = "platform", value = "当前登录的是哪个端 admin机关办公/ rddb代表/ voter选民 ", required = true) }) @@ -94,10 +93,12 @@ public class ApiReviewOfficerController extends ApiBaseController { }) @ApiOperation("公告栏 (所有人可见)") @GetMapping("public") - public void publicPage(String type,String reviewSubject,String platform) { + public void publicPage( +// String type, + String reviewSubject,String platform) { Assert.notNull(platform, "请填入当前端参数"); QueryWrapper qw = new QueryWrapper() - .eq("type", type) +// .eq("type", type) .eq("state", ReviewOfficer.STATE_PUBLIC) .like(StrUtil.isNotBlank(reviewSubject),"review_subject", reviewSubject) .orderByDesc("created_at"); @@ -152,7 +153,7 @@ public class ApiReviewOfficerController extends ApiBaseController { render(Ret.ok().paged(paged)); } - @ApiOperation("内部上报环节") + @ApiOperation("评议启动") @PostMapping("state/in_report") @ResponseBody @DynamicResponseParameters(properties = { @@ -171,7 +172,7 @@ public class ApiReviewOfficerController extends ApiBaseController { render(ret); } - @ApiOperation("上传自查/调查报告环节") + @ApiOperation("评议动员") @PostMapping("state/check") @ResponseBody @DynamicResponseParameters(properties = { @@ -199,7 +200,7 @@ public class ApiReviewOfficerController extends ApiBaseController { render(ret); } - @ApiOperation("上传评议意见环节") + @ApiOperation("调查研究") @PostMapping("state/opinion") @ResponseBody @DynamicResponseParameters(properties = { @@ -210,7 +211,7 @@ public class ApiReviewOfficerController extends ApiBaseController { render(Ret.ok().data(ReviewOfficerWrapper.build().entityVO(review))); } - @ApiOperation("上传整改结果环节") + @ApiOperation("集中评议") @PostMapping("state/result") @ResponseBody @DynamicResponseParameters(properties = { @@ -221,4 +222,16 @@ public class ApiReviewOfficerController extends ApiBaseController { render(Ret.ok().data(ReviewOfficerWrapper.build().entityVO(review))); } + @ApiOperation("整改落实") + @PostMapping("state/review") + @ResponseBody + @DynamicResponseParameters(properties = { + @DynamicParameter(name = "data", value = "评议", dataTypeClass = ReviewOfficerDto.class) + }) + public void stateReviewSave(@Validated ReviewOfficerReviewSaveStateRequest reviewOfficerReviewSaveStateRequest) { + ReviewOfficer review = reviewOfficerService.stateReviewSave(reviewOfficerReviewSaveStateRequest, getApiUser()); + render(Ret.ok().data(ReviewOfficerWrapper.build().entityVO(review))); + } + + } diff --git a/src/main/java/com/ydool/boot/modules/rddb/entity/ReviewOfficer.java b/src/main/java/com/ydool/boot/modules/rddb/entity/ReviewOfficer.java index b0746d9..3327ddd 100644 --- a/src/main/java/com/ydool/boot/modules/rddb/entity/ReviewOfficer.java +++ b/src/main/java/com/ydool/boot/modules/rddb/entity/ReviewOfficer.java @@ -28,13 +28,19 @@ public class ReviewOfficer extends BaseEntity { //当前环节 (内部上报拟评议部门inReport:1 上报评议部门report:2 向社会征求被评议部门意见ask:3 //调查报告check:4 评议意见opinion:5 整改结果result:6 公示public:7) public static Integer STATE_IN_REPORT = 1; - public static Integer STATE_REPORT = 2; - public static Integer STATE_ASK = 3; - public static Integer STATE_CHECK = 4; - public static Integer STATE_OPINION = 5; - public static Integer STATE_RESULT = 6; - public static Integer STATE_PUBLIC = 7; + // public static Integer STATE_REPORT = 2; +// public static Integer STATE_ASK = 3; + public static Integer STATE_CHECK = 2; + public static Integer STATE_OPINION = 3; + public static Integer STATE_RESULT = 4; + public static Integer STATE_REVIEW= 5; + public static Integer STATE_PUBLIC = 6; + @ApiModelProperty(value = "评议时间") + private String reviewTime; + + @ApiModelProperty(value = "整改结果") + private String rectificationResults; /** * 创建者 */ @@ -158,6 +164,6 @@ public class ReviewOfficer extends BaseEntity { public ReviewOfficer() { //默认公开分数 - this.checkScoreState=1; + this.checkScoreState = 1; } } diff --git a/src/main/java/com/ydool/boot/modules/rddb/entity/ReviewOfficerAttachment.java b/src/main/java/com/ydool/boot/modules/rddb/entity/ReviewOfficerAttachment.java index 07ee709..b7b8837 100644 --- a/src/main/java/com/ydool/boot/modules/rddb/entity/ReviewOfficerAttachment.java +++ b/src/main/java/com/ydool/boot/modules/rddb/entity/ReviewOfficerAttachment.java @@ -70,4 +70,7 @@ public class ReviewOfficerAttachment extends BaseEntity { @ApiModelProperty(value = "会议名称") private String conferenceName; + @ApiModelProperty(value = "分类") + private String category; + } diff --git a/src/main/java/com/ydool/boot/modules/rddb/entity/dto/ReviewOfficerDto.java b/src/main/java/com/ydool/boot/modules/rddb/entity/dto/ReviewOfficerDto.java index a1d9d07..f1c9ff8 100644 --- a/src/main/java/com/ydool/boot/modules/rddb/entity/dto/ReviewOfficerDto.java +++ b/src/main/java/com/ydool/boot/modules/rddb/entity/dto/ReviewOfficerDto.java @@ -12,12 +12,26 @@ public class ReviewOfficerDto extends ReviewOfficer { @ApiModelProperty(value = "评议附件") List inReportAttachmentList; + @ApiModelProperty(value = "实施意见") + List implementationOpinionsAttachmentList; @ApiModelProperty(value = "自查/调查报告") List checkAttachmentList; + @ApiModelProperty(value = "会议动员") + List mobilizeAttachmentList; @ApiModelProperty(value = "评议意见附件") List opinionAttachmentList; + @ApiModelProperty(value = "自查报告") + List inspectionReportAttachmentList; + @ApiModelProperty(value = "调查报告") + List surveyReportAttachmentList; @ApiModelProperty(value = "整改结果附件") List resultAttachmentList; + @ApiModelProperty(value = "会议方案") + List meetingPlanAttachmentList; + @ApiModelProperty(value = "整改报告") + List rectificationReportAttachmentList; + @ApiModelProperty(value = "跟踪评议") + List trackReviewAttachmentList; @ApiModelProperty(value = "一级审批人员") List inReportAudit1List; diff --git a/src/main/java/com/ydool/boot/modules/rddb/entity/request/review_officer/state/ReviewOfficerCheckStateRequest.java b/src/main/java/com/ydool/boot/modules/rddb/entity/request/review_officer/state/ReviewOfficerCheckStateRequest.java index fcee2ce..0881105 100644 --- a/src/main/java/com/ydool/boot/modules/rddb/entity/request/review_officer/state/ReviewOfficerCheckStateRequest.java +++ b/src/main/java/com/ydool/boot/modules/rddb/entity/request/review_officer/state/ReviewOfficerCheckStateRequest.java @@ -33,10 +33,7 @@ public class ReviewOfficerCheckStateRequest { private LocalDateTime checkUploadAt; - @ApiModelProperty(value = "附件名 英文逗号间隔") - String checkAttachmentName; - @ApiModelProperty(value = "附件路径 英文逗号间隔") - String checkAttachmentPath; + @ApiModelProperty(value = "打分人员 英文逗号间隔") String checkUserIds; /** @@ -44,8 +41,23 @@ public class ReviewOfficerCheckStateRequest { */ @ApiModelProperty(value = "admin机关办公/ rddb代表/ voter选民 多个用英文逗号间隔") private String obj; + @ApiModelProperty(value = "附件名 英文逗号间隔") + String checkAttachmentName; + @ApiModelProperty(value = "附件路径 英文逗号间隔") + String checkAttachmentPath; @ApiModelProperty(value = "附件关联会议id 英文逗号间隔") String checkAttachmentConferenceId; @ApiModelProperty(value = "附件关联会议名称 英文逗号间隔") String checkAttachmentConferenceName; + + @ApiModelProperty(value = "会议动员附件名 英文逗号间隔") + String mobilizeAttachmentName; + @ApiModelProperty(value = "会议动员附件路径 英文逗号间隔") + String mobilizeAttachmentPath; + @ApiModelProperty(value = "会议动员附件关联会议id 英文逗号间隔") + String mobilizeAttachmentConferenceId; + @ApiModelProperty(value = "会议动员附件关联会议名称 英文逗号间隔") + String mobilizeAttachmentConferenceName; + + } diff --git a/src/main/java/com/ydool/boot/modules/rddb/entity/request/review_officer/state/ReviewOfficerInReportStateRequest.java b/src/main/java/com/ydool/boot/modules/rddb/entity/request/review_officer/state/ReviewOfficerInReportStateRequest.java index 48f61de..3f7e2de 100644 --- a/src/main/java/com/ydool/boot/modules/rddb/entity/request/review_officer/state/ReviewOfficerInReportStateRequest.java +++ b/src/main/java/com/ydool/boot/modules/rddb/entity/request/review_officer/state/ReviewOfficerInReportStateRequest.java @@ -1,6 +1,7 @@ package com.ydool.boot.modules.rddb.entity.request.review_officer.state; import com.fasterxml.jackson.annotation.JsonFormat; +import com.ydool.boot.modules.rddb.entity.Review; import io.swagger.annotations.ApiModelProperty; import lombok.Data; import org.springframework.format.annotation.DateTimeFormat; @@ -14,14 +15,14 @@ public class ReviewOfficerInReportStateRequest { /** * 评议主题 */ - @ApiModelProperty(value = "评议主题(评议部门,评议专题,评议对象)",required = true) + @ApiModelProperty(value = "评议主题(评议部门,评议专题,评议对象)", required = true) private String reviewSubject; - /** - * 分类 - */ - @ApiModelProperty(value = "分类",required = true) - private String type; +// /** +// * 分类 +// */ +// @ApiModelProperty(value = "分类",required = true) +// private String type; /** * 评议描述 @@ -29,6 +30,9 @@ public class ReviewOfficerInReportStateRequest { @ApiModelProperty(value = "评议描述(评议部门描述,评议专题描述,评议对象职位)") private String reviewDesc; + @ApiModelProperty(value = "评议时间") + private String reviewTime; + /** * 提名上传时间 */ @@ -41,18 +45,28 @@ public class ReviewOfficerInReportStateRequest { @ApiModelProperty(value = "提名上传时间") private LocalDateTime reviewUploadAt; + + // @ApiModelProperty(value = "一级审批人 英文逗号间隔") +// String inReportAudit1Ids; +// @ApiModelProperty(value = "二级审批人 英文逗号间隔") +// String inReportAudit2Ids; @ApiModelProperty(value = "附件名 英文逗号间隔") String inReportAttachmentName; @ApiModelProperty(value = "附件路径 英文逗号间隔") String inReportAttachmentPath; - @ApiModelProperty(value = "一级审批人 英文逗号间隔") - String inReportAudit1Ids; - @ApiModelProperty(value = "二级审批人 英文逗号间隔") - String inReportAudit2Ids; @ApiModelProperty(value = "附件关联会议id 英文逗号间隔") - String inReportAttachmentConferenceId; + String inReportAttachmentConferenceId; @ApiModelProperty(value = "附件关联会议名称 英文逗号间隔") - String inReportAttachmentConferenceName; + String inReportAttachmentConferenceName; + + @ApiModelProperty(value = "实施意见附件名 英文逗号间隔") + String implementationOpinionsAttachmentName; + @ApiModelProperty(value = "实施意见附件路径 英文逗号间隔") + String implementationOpinionsAttachmentPath; + @ApiModelProperty(value = "实施意见附件关联会议id 英文逗号间隔") + String implementationOpinionsAttachmentConferenceId; + @ApiModelProperty(value = "实施意见附件关联会议名称 英文逗号间隔") + String implementationOpinionsAttachmentConferenceName; @ApiModelProperty(value = "确认评议") private String reviewOfficer; diff --git a/src/main/java/com/ydool/boot/modules/rddb/entity/request/review_officer/state/ReviewOfficerOpinionStateRequest.java b/src/main/java/com/ydool/boot/modules/rddb/entity/request/review_officer/state/ReviewOfficerOpinionStateRequest.java index 836f95f..03e7502 100644 --- a/src/main/java/com/ydool/boot/modules/rddb/entity/request/review_officer/state/ReviewOfficerOpinionStateRequest.java +++ b/src/main/java/com/ydool/boot/modules/rddb/entity/request/review_officer/state/ReviewOfficerOpinionStateRequest.java @@ -38,8 +38,27 @@ public class ReviewOfficerOpinionStateRequest { String opinionAttachmentPath; @ApiModelProperty(value = "附件关联会议id 英文逗号间隔") - String opinionAttachmentConferenceId; + String opinionAttachmentConferenceId; @ApiModelProperty(value = "附件关联会议名称 英文逗号间隔") - String opinionAttachmentConferenceName; + String opinionAttachmentConferenceName; + + + @ApiModelProperty(value = "自查报告附件名 英文逗号间隔") + String inspectionReportAttachmentName; + @ApiModelProperty(value = "自查报告附件路径 英文逗号间隔") + String inspectionReportAttachmentPath; + @ApiModelProperty(value = "自查报告附件关联会议id 英文逗号间隔") + String inspectionReportAttachmentConferenceId; + @ApiModelProperty(value = "自查报告附件关联会议名称 英文逗号间隔") + String inspectionReportAttachmentConferenceName; + + @ApiModelProperty(value = "调查报告附件名 英文逗号间隔") + String surveyReportAttachmentName; + @ApiModelProperty(value = "调查报告附件路径 英文逗号间隔") + String surveyReportAttachmentPath; + @ApiModelProperty(value = "调查报告附件关联会议id 英文逗号间隔") + String surveyReportAttachmentConferenceId; + @ApiModelProperty(value = "调查报告附件关联会议名称 英文逗号间隔") + String surveyReportAttachmentConferenceName; } diff --git a/src/main/java/com/ydool/boot/modules/rddb/entity/request/review_officer/state/ReviewOfficerResultStateRequest.java b/src/main/java/com/ydool/boot/modules/rddb/entity/request/review_officer/state/ReviewOfficerResultStateRequest.java index 51b98c8..502918e 100644 --- a/src/main/java/com/ydool/boot/modules/rddb/entity/request/review_officer/state/ReviewOfficerResultStateRequest.java +++ b/src/main/java/com/ydool/boot/modules/rddb/entity/request/review_officer/state/ReviewOfficerResultStateRequest.java @@ -42,4 +42,14 @@ public class ReviewOfficerResultStateRequest { @ApiModelProperty(value = "附件关联会议名称 英文逗号间隔") String resultAttachmentConferenceName; + @ApiModelProperty(value = "会议方案附件名 英文逗号间隔") + String meetingPlanAttachmentName; + @ApiModelProperty(value = "会议方案附件路径 英文逗号间隔") + String meetingPlanAttachmentPath; + + @ApiModelProperty(value = "会议方案附件关联会议id 英文逗号间隔") + String meetingPlanAttachmentConferenceId; + @ApiModelProperty(value = "会议方案附件关联会议名称 英文逗号间隔") + String meetingPlanAttachmentConferenceName; + } diff --git a/src/main/java/com/ydool/boot/modules/rddb/entity/request/review_officer/state/ReviewOfficerReviewSaveStateRequest.java b/src/main/java/com/ydool/boot/modules/rddb/entity/request/review_officer/state/ReviewOfficerReviewSaveStateRequest.java new file mode 100644 index 0000000..00eb9b5 --- /dev/null +++ b/src/main/java/com/ydool/boot/modules/rddb/entity/request/review_officer/state/ReviewOfficerReviewSaveStateRequest.java @@ -0,0 +1,32 @@ +package com.ydool.boot.modules.rddb.entity.request.review_officer.state; + +import io.swagger.annotations.ApiModelProperty; +import lombok.Data; + +@Data +public class ReviewOfficerReviewSaveStateRequest { + @ApiModelProperty(value = "评议id", required = true) + private String reviewId; + @ApiModelProperty(value = "整改结果") + private String rectificationResults; + + @ApiModelProperty(value = "整改报告附件名 英文逗号间隔") + String rectificationReportAttachmentName; + @ApiModelProperty(value = "整改报告附件路径 英文逗号间隔") + String rectificationReportAttachmentPath; + + @ApiModelProperty(value = "整改报告附件关联会议id 英文逗号间隔") + String rectificationReportAttachmentConferenceId; + @ApiModelProperty(value = "整改报告附件关联会议名称 英文逗号间隔") + String rectificationReportAttachmentConferenceName; + + @ApiModelProperty(value = "跟踪评议会议方案附件名 英文逗号间隔") + String trackReviewAttachmentName; + @ApiModelProperty(value = "跟踪评议会议方案附件路径 英文逗号间隔") + String trackReviewAttachmentPath; + + @ApiModelProperty(value = "跟踪评议会议方案附件关联会议id 英文逗号间隔") + String trackReviewAttachmentConferenceId; + @ApiModelProperty(value = "跟踪评议会议方案附件关联会议名称 英文逗号间隔") + String trackReviewAttachmentConferenceName; +} diff --git a/src/main/java/com/ydool/boot/modules/rddb/service/ReviewOfficerService.java b/src/main/java/com/ydool/boot/modules/rddb/service/ReviewOfficerService.java index 52da293..613d0d2 100644 --- a/src/main/java/com/ydool/boot/modules/rddb/service/ReviewOfficerService.java +++ b/src/main/java/com/ydool/boot/modules/rddb/service/ReviewOfficerService.java @@ -18,10 +18,7 @@ import com.ydool.boot.modules.rddb.entity.bo.ReviewOfficerBo; import com.ydool.boot.modules.rddb.entity.request.review_officer.ReviewOfficerAuditRequest; import com.ydool.boot.modules.rddb.entity.request.review_officer.ReviewOfficerCheckRequest; import com.ydool.boot.modules.rddb.entity.request.review_officer.ReviewOfficerCommentRequest; -import com.ydool.boot.modules.rddb.entity.request.review_officer.state.ReviewOfficerCheckStateRequest; -import com.ydool.boot.modules.rddb.entity.request.review_officer.state.ReviewOfficerInReportStateRequest; -import com.ydool.boot.modules.rddb.entity.request.review_officer.state.ReviewOfficerOpinionStateRequest; -import com.ydool.boot.modules.rddb.entity.request.review_officer.state.ReviewOfficerResultStateRequest; +import com.ydool.boot.modules.rddb.entity.request.review_officer.state.*; import com.ydool.boot.modules.rddb.mapper.ReviewOfficerMapper; import com.ydool.boot.modules.rddb.wrapper.ReviewOfficerWrapper; import com.ydool.boot.modules.sys.entity.User; @@ -97,10 +94,14 @@ public class ReviewOfficerService extends BaseService() - .eq(ReviewOfficerAudit::getReviewId, reviewOfficerAuditRequest.getReviewId()) - .eq(ReviewOfficerAudit::getLevel, reviewOfficerAuditRequest.getLevel()) - .eq(ReviewOfficerAudit::getUserId, loginUser.getId())); + ReviewOfficerAudit reviewOfficerAudit = + reviewOfficerAuditService.getOne(new LambdaQueryWrapper() + .eq(ReviewOfficerAudit::getReviewId, reviewOfficerAuditRequest.getReviewId()) + .eq(ReviewOfficerAudit::getLevel, reviewOfficerAuditRequest.getLevel()) + .eq(ReviewOfficerAudit::getUserId, loginUser.getId())); if (reviewOfficerAudit == null) return Ret.fail("未找到该记录"); if (reviewOfficerAudit.getStatus() != 0) return Ret.fail("您已审核过"); @@ -183,10 +195,11 @@ public class ReviewOfficerService extends BaseService waitAuditList = reviewOfficerAuditService.list(new LambdaQueryWrapper() - .eq(ReviewOfficerAudit::getReviewId, reviewOfficerAuditRequest.getReviewId()) - .eq(ReviewOfficerAudit::getStatus, 0) - .orderByAsc(ReviewOfficerAudit::getSortNo)); + List waitAuditList = + reviewOfficerAuditService.list(new LambdaQueryWrapper() + .eq(ReviewOfficerAudit::getReviewId, reviewOfficerAuditRequest.getReviewId()) + .eq(ReviewOfficerAudit::getStatus, 0) + .orderByAsc(ReviewOfficerAudit::getSortNo)); if (CollectionUtil.isEmpty(waitAuditList)) { reviewOfficer.setStatus(1); // reviewOfficer.setState(ReviewOfficer.STATE_REPORT); 直接跳过 @@ -207,11 +220,13 @@ public class ReviewOfficerService extends BaseService() .eq(ReviewOfficerAttachment::getReviewId, reviewId) .eq(ReviewOfficerAttachment::getType, state)); if (StrUtil.isNotBlank(reviewAttachmentArrStr)) { JSONArray objects = JSONUtil.parseArray(reviewAttachmentArrStr); - List reviewAttachmentList = JSONUtil.toList(objects, ReviewOfficerAttachment.class); + List reviewAttachmentList = JSONUtil.toList(objects, + ReviewOfficerAttachment.class); reviewAttachmentList.forEach(item -> { item.setReviewId(reviewId); item.setType(state); item.setCreatedId(loginUser.getId()); item.setCreatedAt(LocalDateTime.now()); if (StrUtil.isNotBlank(item.getConferenceId())) { - conferenceAttachmentService.associationMeeting(item.getConferenceId(), item.getAttachment(), item.getTitle(), "两官评议附件", loginUser.getId()); + conferenceAttachmentService.associationMeeting(item.getConferenceId(), item.getAttachment(), + item.getTitle(), "两官评议附件", loginUser.getId()); } }); reviewOfficerAttachmentService.saveBatch(reviewAttachmentList); @@ -426,14 +494,16 @@ public class ReviewOfficerService extends BaseService() .eq(ReviewOfficerAttachment::getReviewId, reviewId) .eq(ReviewOfficerAttachment::getType, state)); if (StrUtil.isNotBlank(attachmentName)) { String[] nameArr = attachmentName.split(","); String[] pathArr = attachmentPath.split(","); - if(StrUtil.isNotBlank(conferenceId)){ + if (StrUtil.isNotBlank(conferenceId)) { String[] conferenceIdArr = conferenceId.split(","); String[] conferenceNameArr = conferenceName.split(","); for (int i = 0; i < nameArr.length; i++) { @@ -446,11 +516,12 @@ public class ReviewOfficerService extends BaseService() + .eq(ReviewOfficerAttachment::getReviewId, reviewId) + .eq(ReviewOfficerAttachment::getType, state)); + if (StrUtil.isNotBlank(attachmentName)) { + String[] nameArr = attachmentName.split(","); + String[] pathArr = attachmentPath.split(","); + if (StrUtil.isNotBlank(conferenceId)) { + String[] conferenceIdArr = conferenceId.split(","); + String[] conferenceNameArr = conferenceName.split(","); + for (int i = 0; i < nameArr.length; i++) { + ReviewOfficerAttachment reviewAttachment = new ReviewOfficerAttachment(); + reviewAttachment.setType(state).setCategory(category) + .setReviewId(reviewId).setConferenceId(conferenceIdArr[i]) + .setConferenceName(conferenceNameArr[i]) + .setTitle(nameArr[i]) + .setAttachment(pathArr[i]) + .setCreatedId(loginUser.getId()) + .setCreatedAt(LocalDateTime.now()); + if (StrUtil.isNotBlank(conferenceIdArr[i])) { + conferenceAttachmentService.associationMeeting(conferenceIdArr[i], pathArr[i], nameArr[i], + "两官评议附件", loginUser.getId()); + } + reviewOfficerAttachmentService.save(reviewAttachment); + } + } else { + for (int i = 0; i < nameArr.length; i++) { + ReviewOfficerAttachment reviewAttachment = new ReviewOfficerAttachment(); + reviewAttachment.setType(state).setCategory(category) + .setReviewId(reviewId) + .setTitle(nameArr[i]) + .setAttachment(pathArr[i]) + .setCreatedId(loginUser.getId()) + .setCreatedAt(LocalDateTime.now()); + reviewOfficerAttachmentService.save(reviewAttachment); + } + } + + } + } + } diff --git a/src/main/java/com/ydool/boot/modules/rddb/wrapper/ReviewOfficerWrapper.java b/src/main/java/com/ydool/boot/modules/rddb/wrapper/ReviewOfficerWrapper.java index 11b1fad..78366f1 100644 --- a/src/main/java/com/ydool/boot/modules/rddb/wrapper/ReviewOfficerWrapper.java +++ b/src/main/java/com/ydool/boot/modules/rddb/wrapper/ReviewOfficerWrapper.java @@ -37,15 +37,18 @@ public class ReviewOfficerWrapper extends BaseWrapper inReportAttachmentList = reviewOfficerAttachmentService.list(new LambdaQueryWrapper() - .eq(ReviewOfficerAttachment::getReviewId, reviewOfficer.getId()) - .eq(ReviewOfficerAttachment::getType, ReviewOfficer.STATE_IN_REPORT) - .orderByDesc(ReviewOfficerAttachment::getCreatedAt)); + List inReportAttachmentList = + reviewOfficerAttachmentService.list(new LambdaQueryWrapper() + .eq(ReviewOfficerAttachment::getReviewId, reviewOfficer.getId()) + .eq(ReviewOfficerAttachment::getType, ReviewOfficer.STATE_IN_REPORT) + .eq(ReviewOfficerAttachment::getCategory, "1") + .orderByDesc(ReviewOfficerAttachment::getCreatedAt)); //获取关联会议名称 if (CollectionUtil.isNotEmpty(inReportAttachmentList)) { inReportAttachmentList.stream().forEach(i -> { @@ -59,10 +62,33 @@ public class ReviewOfficerWrapper extends BaseWrapper checkAttachmentList = reviewOfficerAttachmentService.list(new LambdaQueryWrapper() - .eq(ReviewOfficerAttachment::getReviewId, reviewOfficer.getId()) - .eq(ReviewOfficerAttachment::getType, ReviewOfficer.STATE_CHECK) - .orderByDesc(ReviewOfficerAttachment::getCreatedAt)); + + List implementationOpinionsAttachmentList = + reviewOfficerAttachmentService.list(new LambdaQueryWrapper() + .eq(ReviewOfficerAttachment::getReviewId, reviewOfficer.getId()) + .eq(ReviewOfficerAttachment::getType, ReviewOfficer.STATE_IN_REPORT) + .eq(ReviewOfficerAttachment::getCategory, "2") + .orderByDesc(ReviewOfficerAttachment::getCreatedAt)); + //获取关联会议名称 + if (CollectionUtil.isNotEmpty(implementationOpinionsAttachmentList)) { + implementationOpinionsAttachmentList.stream().forEach(i -> { + if (StrUtil.isNotBlank(i.getConferenceId())) { + Conference conference = conferenceMapper.selectById(i.getConferenceId()); + String conferenceName = ""; + if (conference != null) { + conferenceName = conference.getTitle(); + } + i.setConferenceName(conferenceName); + } + }); + } + + List checkAttachmentList = + reviewOfficerAttachmentService.list(new LambdaQueryWrapper() + .eq(ReviewOfficerAttachment::getReviewId, reviewOfficer.getId()) + .eq(ReviewOfficerAttachment::getType, ReviewOfficer.STATE_CHECK) + .eq(ReviewOfficerAttachment::getCategory, "1") + .orderByDesc(ReviewOfficerAttachment::getCreatedAt)); //获取关联会议名称 if (CollectionUtil.isNotEmpty(checkAttachmentList)) { checkAttachmentList.stream().forEach(i -> { @@ -76,10 +102,31 @@ public class ReviewOfficerWrapper extends BaseWrapper opinionAttachmentList = reviewOfficerAttachmentService.list(new LambdaQueryWrapper() - .eq(ReviewOfficerAttachment::getReviewId, reviewOfficer.getId()) - .eq(ReviewOfficerAttachment::getType, ReviewOfficer.STATE_OPINION) - .orderByDesc(ReviewOfficerAttachment::getCreatedAt)); + List mobilizeAttachmentList = + reviewOfficerAttachmentService.list(new LambdaQueryWrapper() + .eq(ReviewOfficerAttachment::getReviewId, reviewOfficer.getId()) + .eq(ReviewOfficerAttachment::getType, ReviewOfficer.STATE_CHECK) + .eq(ReviewOfficerAttachment::getCategory, "2") + .orderByDesc(ReviewOfficerAttachment::getCreatedAt)); + //获取关联会议名称 + if (CollectionUtil.isNotEmpty(mobilizeAttachmentList)) { + mobilizeAttachmentList.stream().forEach(i -> { + if (StrUtil.isNotBlank(i.getConferenceId())) { + Conference conference = conferenceMapper.selectById(i.getConferenceId()); + String conferenceName = ""; + if (conference != null) { + conferenceName = conference.getTitle(); + } + i.setConferenceName(conferenceName); + } + }); + } + List opinionAttachmentList = + reviewOfficerAttachmentService.list(new LambdaQueryWrapper() + .eq(ReviewOfficerAttachment::getReviewId, reviewOfficer.getId()) + .eq(ReviewOfficerAttachment::getType, ReviewOfficer.STATE_OPINION) + .eq(ReviewOfficerAttachment::getCategory, "1") + .orderByDesc(ReviewOfficerAttachment::getCreatedAt)); //获取关联会议名称 if (CollectionUtil.isNotEmpty(opinionAttachmentList)) { opinionAttachmentList.stream().forEach(i -> { @@ -93,10 +140,50 @@ public class ReviewOfficerWrapper extends BaseWrapper resultAttachmentList = reviewOfficerAttachmentService.list(new LambdaQueryWrapper() - .eq(ReviewOfficerAttachment::getReviewId, reviewOfficer.getId()) - .eq(ReviewOfficerAttachment::getType, ReviewOfficer.STATE_RESULT) - .orderByDesc(ReviewOfficerAttachment::getCreatedAt)); + List inspectionReportAttachmentList = + reviewOfficerAttachmentService.list(new LambdaQueryWrapper() + .eq(ReviewOfficerAttachment::getReviewId, reviewOfficer.getId()) + .eq(ReviewOfficerAttachment::getType, ReviewOfficer.STATE_OPINION) + .eq(ReviewOfficerAttachment::getCategory, "2") + .orderByDesc(ReviewOfficerAttachment::getCreatedAt)); + //获取关联会议名称 + if (CollectionUtil.isNotEmpty(inspectionReportAttachmentList)) { + inspectionReportAttachmentList.stream().forEach(i -> { + if (StrUtil.isNotBlank(i.getConferenceId())) { + Conference conference = conferenceMapper.selectById(i.getConferenceId()); + String conferenceName = ""; + if (conference != null) { + conferenceName = conference.getTitle(); + } + i.setConferenceName(conferenceName); + } + }); + } + List surveyReportAttachmentList = + reviewOfficerAttachmentService.list(new LambdaQueryWrapper() + .eq(ReviewOfficerAttachment::getReviewId, reviewOfficer.getId()) + .eq(ReviewOfficerAttachment::getType, ReviewOfficer.STATE_OPINION) + .eq(ReviewOfficerAttachment::getCategory, "3") + .orderByDesc(ReviewOfficerAttachment::getCreatedAt)); + //获取关联会议名称 + if (CollectionUtil.isNotEmpty(surveyReportAttachmentList)) { + surveyReportAttachmentList.stream().forEach(i -> { + if (StrUtil.isNotBlank(i.getConferenceId())) { + Conference conference = conferenceMapper.selectById(i.getConferenceId()); + String conferenceName = ""; + if (conference != null) { + conferenceName = conference.getTitle(); + } + i.setConferenceName(conferenceName); + } + }); + } + List resultAttachmentList = + reviewOfficerAttachmentService.list(new LambdaQueryWrapper() + .eq(ReviewOfficerAttachment::getReviewId, reviewOfficer.getId()) + .eq(ReviewOfficerAttachment::getType, ReviewOfficer.STATE_RESULT) + .eq(ReviewOfficerAttachment::getCategory, "1") + .orderByDesc(ReviewOfficerAttachment::getCreatedAt)); //获取关联会议名称 if (CollectionUtil.isNotEmpty(resultAttachmentList)) { resultAttachmentList.stream().forEach(i -> { @@ -110,24 +197,91 @@ public class ReviewOfficerWrapper extends BaseWrapper meetingPlanAttachmentList = + reviewOfficerAttachmentService.list(new LambdaQueryWrapper() + .eq(ReviewOfficerAttachment::getReviewId, reviewOfficer.getId()) + .eq(ReviewOfficerAttachment::getType, ReviewOfficer.STATE_RESULT) + .eq(ReviewOfficerAttachment::getCategory, "2") + .orderByDesc(ReviewOfficerAttachment::getCreatedAt)); + //获取关联会议名称 + if (CollectionUtil.isNotEmpty(meetingPlanAttachmentList)) { + meetingPlanAttachmentList.stream().forEach(i -> { + if (StrUtil.isNotBlank(i.getConferenceId())) { + Conference conference = conferenceMapper.selectById(i.getConferenceId()); + String conferenceName = ""; + if (conference != null) { + conferenceName = conference.getTitle(); + } + i.setConferenceName(conferenceName); + } + }); + } + List rectificationReportAttachmentList = + reviewOfficerAttachmentService.list(new LambdaQueryWrapper() + .eq(ReviewOfficerAttachment::getReviewId, reviewOfficer.getId()) + .eq(ReviewOfficerAttachment::getType, ReviewOfficer.STATE_REVIEW) + .eq(ReviewOfficerAttachment::getCategory, "1") + .orderByDesc(ReviewOfficerAttachment::getCreatedAt)); + //获取关联会议名称 + if (CollectionUtil.isNotEmpty(rectificationReportAttachmentList)) { + rectificationReportAttachmentList.stream().forEach(i -> { + if (StrUtil.isNotBlank(i.getConferenceId())) { + Conference conference = conferenceMapper.selectById(i.getConferenceId()); + String conferenceName = ""; + if (conference != null) { + conferenceName = conference.getTitle(); + } + i.setConferenceName(conferenceName); + } + }); + } + List trackReviewAttachmentList = + reviewOfficerAttachmentService.list(new LambdaQueryWrapper() + .eq(ReviewOfficerAttachment::getReviewId, reviewOfficer.getId()) + .eq(ReviewOfficerAttachment::getType, ReviewOfficer.STATE_REVIEW) + .eq(ReviewOfficerAttachment::getCategory, "2") + .orderByDesc(ReviewOfficerAttachment::getCreatedAt)); + //获取关联会议名称 + if (CollectionUtil.isNotEmpty(trackReviewAttachmentList)) { + trackReviewAttachmentList.stream().forEach(i -> { + if (StrUtil.isNotBlank(i.getConferenceId())) { + Conference conference = conferenceMapper.selectById(i.getConferenceId()); + String conferenceName = ""; + if (conference != null) { + conferenceName = conference.getTitle(); + } + i.setConferenceName(conferenceName); + } + }); + } - List inReportAudit1List = reviewOfficerAuditService.list(new LambdaQueryWrapper() - .eq(ReviewOfficerAudit::getReviewId, reviewOfficer.getId()) - .eq(ReviewOfficerAudit::getLevel, 1) - .orderByAsc(ReviewOfficerAudit::getSortNo)); - List inReportAudit2List = reviewOfficerAuditService.list(new LambdaQueryWrapper() - .eq(ReviewOfficerAudit::getReviewId, reviewOfficer.getId()) - .eq(ReviewOfficerAudit::getLevel, 2) - .orderByAsc(ReviewOfficerAudit::getSortNo)); + List inReportAudit1List = + reviewOfficerAuditService.list(new LambdaQueryWrapper() + .eq(ReviewOfficerAudit::getReviewId, reviewOfficer.getId()) + .eq(ReviewOfficerAudit::getLevel, 1) + .orderByAsc(ReviewOfficerAudit::getSortNo)); + List inReportAudit2List = + reviewOfficerAuditService.list(new LambdaQueryWrapper() + .eq(ReviewOfficerAudit::getReviewId, reviewOfficer.getId()) + .eq(ReviewOfficerAudit::getLevel, 2) + .orderByAsc(ReviewOfficerAudit::getSortNo)); - List checkUserList = reviewOfficerUserService.list(new LambdaQueryWrapper() - .eq(ReviewOfficerUser::getReviewId, reviewOfficer.getId()) - .orderByAsc(ReviewOfficerUser::getSortNo)); + List checkUserList = + reviewOfficerUserService.list(new LambdaQueryWrapper() + .eq(ReviewOfficerUser::getReviewId, reviewOfficer.getId()) + .orderByAsc(ReviewOfficerUser::getSortNo)); ReviewOfficerDto.setInReportAttachmentList(inReportAttachmentList); + ReviewOfficerDto.setImplementationOpinionsAttachmentList(implementationOpinionsAttachmentList); ReviewOfficerDto.setCheckAttachmentList(checkAttachmentList); + ReviewOfficerDto.setMobilizeAttachmentList(mobilizeAttachmentList); ReviewOfficerDto.setOpinionAttachmentList(opinionAttachmentList); + ReviewOfficerDto.setInspectionReportAttachmentList(inspectionReportAttachmentList); + ReviewOfficerDto.setSurveyReportAttachmentList(surveyReportAttachmentList); ReviewOfficerDto.setResultAttachmentList(resultAttachmentList); + ReviewOfficerDto.setMeetingPlanAttachmentList(meetingPlanAttachmentList); + ReviewOfficerDto.setRectificationReportAttachmentList(rectificationReportAttachmentList); + ReviewOfficerDto.setTrackReviewAttachmentList(trackReviewAttachmentList); ReviewOfficerDto.setInReportAudit1List(inReportAudit1List); ReviewOfficerDto.setInReportAudit2List(inReportAudit2List); @@ -136,7 +290,8 @@ public class ReviewOfficerWrapper extends BaseWrapper scoredReviewUserList = checkUserList.stream().filter(item -> item.getScore() != null).collect(Collectors.toList()); + List scoredReviewUserList = + checkUserList.stream().filter(item -> item.getScore() != null).collect(Collectors.toList()); if (CollectionUtil.isNotEmpty(scoredReviewUserList)) { BigDecimal averageScore = scoredReviewUserList.stream().map(item -> item.getScore()) .reduce(BigDecimal.ZERO, BigDecimal::add) @@ -160,14 +315,16 @@ public class ReviewOfficerWrapper extends BaseWrapper() - .eq(ReviewOfficerAudit::getReviewId, reviewOfficer.getId()) - .eq(ReviewOfficerAudit::getLevel, 1) - .eq(ReviewOfficerAudit::getUserId, userInfo.getId())); - ReviewOfficerAudit myReviewAudit2 = reviewOfficerAuditService.getOne(new LambdaQueryWrapper() - .eq(ReviewOfficerAudit::getReviewId, reviewOfficer.getId()) - .eq(ReviewOfficerAudit::getLevel, 2) - .eq(ReviewOfficerAudit::getUserId, userInfo.getId())); + ReviewOfficerAudit myReviewAudit1 = + reviewOfficerAuditService.getOne(new LambdaQueryWrapper() + .eq(ReviewOfficerAudit::getReviewId, reviewOfficer.getId()) + .eq(ReviewOfficerAudit::getLevel, 1) + .eq(ReviewOfficerAudit::getUserId, userInfo.getId())); + ReviewOfficerAudit myReviewAudit2 = + reviewOfficerAuditService.getOne(new LambdaQueryWrapper() + .eq(ReviewOfficerAudit::getReviewId, reviewOfficer.getId()) + .eq(ReviewOfficerAudit::getLevel, 2) + .eq(ReviewOfficerAudit::getUserId, userInfo.getId())); if (myReviewAudit1 != null) { //是否轮到我审批