diff --git a/src/main/java/com/biutag/supervision/pojo/dto/complaintCollection/ComplaintCollectionPageDTO.java b/src/main/java/com/biutag/supervision/pojo/dto/complaintCollection/ComplaintCollectionPageDTO.java index 52a57b5..9017ed6 100644 --- a/src/main/java/com/biutag/supervision/pojo/dto/complaintCollection/ComplaintCollectionPageDTO.java +++ b/src/main/java/com/biutag/supervision/pojo/dto/complaintCollection/ComplaintCollectionPageDTO.java @@ -165,6 +165,12 @@ public class ComplaintCollectionPageDTO { @Schema(description = "涉及单位") private String involveDepartName; + @Schema(description = "办理单位二级名称") + private String handleSecondDepartName; + + @Schema(description = "办理单位三级名称") + private String handleThreeDepartName; + @Schema(description = "接访领导姓名") private String receivingLeaderName; diff --git a/src/main/java/com/biutag/supervision/pojo/param/ComplaintCollection/ComplaintCollectionQueryParam.java b/src/main/java/com/biutag/supervision/pojo/param/ComplaintCollection/ComplaintCollectionQueryParam.java index d1163a9..01d443a 100644 --- a/src/main/java/com/biutag/supervision/pojo/param/ComplaintCollection/ComplaintCollectionQueryParam.java +++ b/src/main/java/com/biutag/supervision/pojo/param/ComplaintCollection/ComplaintCollectionQueryParam.java @@ -133,6 +133,9 @@ public class ComplaintCollectionQueryParam extends BasePage { @Schema(description = "阶段2同步标记") private String blameSyncStatus; + @Schema(description = "办理单位ID集合(包含所有子节点)") + private Set handleDepartIds; + // @Schema(description = "部门ID集合") // private Set secondDepartIds; diff --git a/src/main/java/com/biutag/supervision/pojo/request/complaintCollection/ComplaintCollectionPageRequest.java b/src/main/java/com/biutag/supervision/pojo/request/complaintCollection/ComplaintCollectionPageRequest.java index f1e279a..e85746a 100644 --- a/src/main/java/com/biutag/supervision/pojo/request/complaintCollection/ComplaintCollectionPageRequest.java +++ b/src/main/java/com/biutag/supervision/pojo/request/complaintCollection/ComplaintCollectionPageRequest.java @@ -90,6 +90,9 @@ public class ComplaintCollectionPageRequest extends BasePage implements ParamChe @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss") private List createTimeList = new ArrayList<>(); + @Schema(description = "办理单位ID") + private String handleDepartId; + @Override public void check() { diff --git a/src/main/java/com/biutag/supervision/service/complaintCollection/ComplaintCollectionServiceImpl.java b/src/main/java/com/biutag/supervision/service/complaintCollection/ComplaintCollectionServiceImpl.java index eec5774..bcc0f59 100644 --- a/src/main/java/com/biutag/supervision/service/complaintCollection/ComplaintCollectionServiceImpl.java +++ b/src/main/java/com/biutag/supervision/service/complaintCollection/ComplaintCollectionServiceImpl.java @@ -296,6 +296,13 @@ public class ComplaintCollectionServiceImpl implements ComplaintCollectionServic } } } + // 办理单位:获取所有子节点ID + if (StrUtil.isNotBlank(request.getHandleDepartId())) { + List allDepartIds = departService.getAllNodeIds(List.of(request.getHandleDepartId())); + if (CollectionUtil.isNotEmpty(allDepartIds)) { + param.setHandleDepartIds(new HashSet<>(allDepartIds)); + } + } // doto 自办信件的只有市局管理员 12377管理员可以看 Page page = new Page<>(param.getCurrent(), param.getSize()); IPage pageResult = complaintCollectionMapper.selectPageWithNegative(page, param); diff --git a/src/main/resources/mapper/ComplaintCollectionMapper.xml b/src/main/resources/mapper/ComplaintCollectionMapper.xml index 772a325..a43c3dc 100644 --- a/src/main/resources/mapper/ComplaintCollectionMapper.xml +++ b/src/main/resources/mapper/ComplaintCollectionMapper.xml @@ -221,7 +221,11 @@ n.check_status_code AS checkStatusCode, n.checkStatusName AS checkStatusName, n.check_status_desc AS checkStatusDesc, - n.involveDepartName AS involveDepartName + n.involveDepartName AS involveDepartName, + n.handle_second_depart_id AS handleSecondDepartId, + n.handle_second_depart_name AS handleSecondDepartName, + n.handle_three_depart_id AS handleThreeDepartId, + n.handle_three_depart_name AS handleThreeDepartName FROM complaint_collection cc LEFT JOIN negative n ON n.id = cc.negative_id @@ -321,6 +325,18 @@ AND cc.create_time BETWEEN #{param.createTimeList[0]} AND #{param.createTimeList[1]} + + AND ( + n.handle_second_depart_id IN + + #{item} + + OR n.handle_three_depart_id IN + + #{item} + + ) + ORDER BY n.crtTime DESC, cc.id DESC