14 changed files with 1329 additions and 0 deletions
@ -0,0 +1,13 @@ |
|||||||
|
package com.biutag.supervision.mapper; |
||||||
|
|
||||||
|
import com.biutag.supervision.pojo.entity.ComplaintCollection; |
||||||
|
import com.biutag.supervision.repository.base.HBaseMapper; |
||||||
|
|
||||||
|
import java.util.List; |
||||||
|
|
||||||
|
public interface ComplaintCollectionMapper extends HBaseMapper<ComplaintCollection> { |
||||||
|
|
||||||
|
int insertBatch(List<ComplaintCollection> list); |
||||||
|
|
||||||
|
|
||||||
|
} |
||||||
@ -0,0 +1,83 @@ |
|||||||
|
package com.biutag.supervision.pojo.dto.complaintCollection; |
||||||
|
|
||||||
|
import com.biutag.supervision.pojo.enums.complaintCollection.ComplaintCollectionSourceTableEnum; |
||||||
|
import com.biutag.supervision.pojo.enums.complaintCollection.YesOrNoEnum; |
||||||
|
import io.swagger.v3.oas.annotations.media.Schema; |
||||||
|
import lombok.Getter; |
||||||
|
import lombok.Setter; |
||||||
|
|
||||||
|
import java.time.LocalDateTime; |
||||||
|
|
||||||
|
/** |
||||||
|
* @ClassName ComplaintCollectionPageDTO |
||||||
|
* @Description 涉访涉诉PageDto |
||||||
|
* @Author shihao |
||||||
|
* @Date 2025/12/25 15:35 |
||||||
|
*/ |
||||||
|
@Getter |
||||||
|
@Setter |
||||||
|
@Schema(description = "涉访涉诉PageDto") |
||||||
|
public class ComplaintCollectionPageDTO { |
||||||
|
|
||||||
|
@Schema(description = "id") |
||||||
|
private String id; |
||||||
|
|
||||||
|
/** |
||||||
|
* @see ComplaintCollectionSourceTableEnum |
||||||
|
*/ |
||||||
|
@Schema(description = "来源表类型") |
||||||
|
private String sourceTable; |
||||||
|
|
||||||
|
@Schema(description = "案件编号") |
||||||
|
private String originId; |
||||||
|
|
||||||
|
@Schema(description = "发现时间 / 受理时间") |
||||||
|
private LocalDateTime discoveryTime; |
||||||
|
|
||||||
|
@Schema(description = "反映人姓名") |
||||||
|
private String responderName; |
||||||
|
|
||||||
|
@Schema(description = "投诉人身份证") |
||||||
|
private String responderIdCode; |
||||||
|
|
||||||
|
@Schema(description = "联系电话") |
||||||
|
private String responderPhone; |
||||||
|
|
||||||
|
@Schema(description = "办理二级单位名称") |
||||||
|
private String secondDepartName; |
||||||
|
|
||||||
|
|
||||||
|
@Schema(description = "办理二级单位id") |
||||||
|
private String secondDepartId; |
||||||
|
|
||||||
|
@Schema(description = "内容/正文") |
||||||
|
private String thingDesc; |
||||||
|
|
||||||
|
@Schema(description = "涉嫌问题") |
||||||
|
private String involveProblem; |
||||||
|
|
||||||
|
@Schema(description = "涉嫌问题字符串") |
||||||
|
private String involveProblemStr; |
||||||
|
|
||||||
|
/** |
||||||
|
* @see YesOrNoEnum |
||||||
|
*/ |
||||||
|
@Schema(description = "是否重复件") |
||||||
|
private String repeatt; |
||||||
|
|
||||||
|
/** |
||||||
|
* @see YesOrNoEnum |
||||||
|
*/ |
||||||
|
@Schema(description = "是否领导审批") |
||||||
|
private String leadApproval; |
||||||
|
|
||||||
|
|
||||||
|
@Schema(description = "标签id") |
||||||
|
private String tag; |
||||||
|
|
||||||
|
@Schema(description = "办理方式") |
||||||
|
private String handleMethod; |
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
} |
||||||
@ -0,0 +1,397 @@ |
|||||||
|
package com.biutag.supervision.pojo.entity; |
||||||
|
|
||||||
|
import com.baomidou.mybatisplus.annotation.*; |
||||||
|
import com.biutag.supervision.pojo.enums.complaintCollection.ComplaintCollectionHandleMethodEnum; |
||||||
|
import com.biutag.supervision.pojo.enums.complaintCollection.ComplaintCollectionSourceTableEnum; |
||||||
|
import com.biutag.supervision.pojo.enums.complaintCollection.YesOrNoEnum; |
||||||
|
import io.swagger.v3.oas.annotations.media.Schema; |
||||||
|
import lombok.Getter; |
||||||
|
import lombok.Setter; |
||||||
|
|
||||||
|
import java.time.LocalDateTime; |
||||||
|
|
||||||
|
|
||||||
|
/** |
||||||
|
* @ClassName ComplaintCollection |
||||||
|
* @Description 涉访涉诉表 |
||||||
|
* @Author shihao |
||||||
|
* @Date 2025/12/23 15:52 |
||||||
|
*/ |
||||||
|
@Getter |
||||||
|
@Setter |
||||||
|
@Schema(description = "涉访涉诉归集表(投诉/核查/信箱归集)") |
||||||
|
@TableName("complaint_collection") |
||||||
|
public class ComplaintCollection { |
||||||
|
|
||||||
|
/* ========================= |
||||||
|
* 0) 归集表基础字段(溯源/去重) |
||||||
|
* ========================= */ |
||||||
|
@Schema(description = "新表主键ID") |
||||||
|
@TableId(value = "id",type = IdType.AUTO) |
||||||
|
private String id; |
||||||
|
|
||||||
|
/** |
||||||
|
* @see ComplaintCollectionSourceTableEnum |
||||||
|
*/ |
||||||
|
@Schema(description = "来源表类型:PETITION/CASE_VERIF/MAILBOX") |
||||||
|
@TableField("source_table") |
||||||
|
private String sourceTable; |
||||||
|
|
||||||
|
/* ========================= |
||||||
|
* 1) 三表合并字段(3表都有/语义相同 -> 合并为1个) |
||||||
|
* ========================= */ |
||||||
|
|
||||||
|
@Schema(description = "信件编号(PETITION.origin_id;CASE_VERIF.originId;MAILBOX.origin_id)") |
||||||
|
@TableField("origin_id") |
||||||
|
private String originId; |
||||||
|
|
||||||
|
@Schema(description = "发现时间(PETITION.discovery_time;CASE_VERIF.discovery_time;MAILBOX.discoveryTime)") |
||||||
|
@TableField("discovery_time") |
||||||
|
private LocalDateTime discoveryTime; |
||||||
|
|
||||||
|
@Schema(description = "反映人姓名(PETITION.responder_name;CASE_VERIF.responder_name;MAILBOX.responderName)") |
||||||
|
@TableField("responder_name") |
||||||
|
private String responderName; |
||||||
|
|
||||||
|
@Schema(description = "联系电话(PETITION.responder_phone;CASE_VERIF.responder_phone;MAILBOX.contactPhone)") |
||||||
|
@TableField("responder_phone") |
||||||
|
private String responderPhone; |
||||||
|
|
||||||
|
@Schema(description = "业务类型名称(PETITION.business_type_name;CASE_VERIF.business_type_name;MAILBOX.businessTypeName)") |
||||||
|
@TableField("business_type_name") |
||||||
|
private String businessTypeName; |
||||||
|
|
||||||
|
@Schema(description = "内容/正文(PETITION.thing_desc;CASE_VERIF.thing_desc;MAILBOX.thingDesc)") |
||||||
|
@TableField("thing_desc") |
||||||
|
private String thingDesc; |
||||||
|
|
||||||
|
@Schema(description = "涉企涉冻(PETITION.involved_issue;MAILBOX.involved_issue;CASE_VERIF.involved_issue 若存在也迁移写入)") |
||||||
|
@TableField("involved_issue") |
||||||
|
private String involvedIssue; |
||||||
|
|
||||||
|
@Schema(description = "涉及单位名称/办理二级单位(PETITION.second_depart_name;CASE_VERIF.second_depart_name;MAILBOX.handleSecondDepartName 语义相同迁移写入)") |
||||||
|
@TableField("second_depart_name") |
||||||
|
private String secondDepartName; |
||||||
|
|
||||||
|
@Schema(description = "涉及科所队名称/办理三级单位(PETITION.third_depart_name;CASE_VERIF.third_depart_name;MAILBOX.handleThreeDepartName 语义相同迁移写入)") |
||||||
|
@TableField("third_depart_name") |
||||||
|
private String thirdDepartName; |
||||||
|
|
||||||
|
/* ========================= |
||||||
|
* 2) 两表合并字段(2表共有/语义相同 -> 合并为1个) |
||||||
|
* ========================= */ |
||||||
|
@Schema(description = "涉嫌问题(PETITION.involve_problem;CASE_VERIF.involve_problem)") |
||||||
|
@TableField("involve_problem") |
||||||
|
private String involveProblem; |
||||||
|
|
||||||
|
@Schema(description = "分发状态(PETITION.distribution_state;CASE_VERIF.distribution_state)") |
||||||
|
@TableField("distribution_state") |
||||||
|
private String distributionState; |
||||||
|
|
||||||
|
@Schema(description = "涉及单位ID(PETITION.second_depart_id;CASE_VERIF.second_depart_id)") |
||||||
|
@TableField("second_depart_id") |
||||||
|
private String secondDepartId; |
||||||
|
|
||||||
|
@Schema(description = "涉及科所队ID(PETITION.third_depart_id;CASE_VERIF.third_depart_id)") |
||||||
|
@TableField("third_depart_id") |
||||||
|
private String thirdDepartId; |
||||||
|
|
||||||
|
@Schema(description = "问题来源code(PETITION.problem_sources_code;MAILBOX.problemSourcesCode)") |
||||||
|
@TableField("problem_sources_code") |
||||||
|
private String problemSourcesCode; |
||||||
|
|
||||||
|
@Schema(description = "问题来源名称(CASE_VERIF.problem_sources;MAILBOX.problemSources)") |
||||||
|
@TableField("problem_sources") |
||||||
|
private String problemSources; |
||||||
|
|
||||||
|
@Schema(description = "涉及警种名称(PETITION.police_type_name;CASE_VERIF.police_type_name)") |
||||||
|
@TableField("police_type_name") |
||||||
|
private String policeTypeName; |
||||||
|
|
||||||
|
/* ========================= |
||||||
|
* 3) 单表独有字段(仅单表有 -> 单独字段) |
||||||
|
* ========================= */ |
||||||
|
|
||||||
|
/* ---- PETITION 独有(data_petition_complaint) ---- */ |
||||||
|
|
||||||
|
@Schema(description = "投诉渠道(PETITION.channel_for_filing_complaints)") |
||||||
|
@TableField("channel_for_filing_complaints") |
||||||
|
private String channelForFilingComplaints; |
||||||
|
|
||||||
|
@Schema(description = "受理层级(PETITION.acceptance_level)") |
||||||
|
@TableField("acceptance_level") |
||||||
|
private String acceptanceLevel; |
||||||
|
|
||||||
|
@Schema(description = "初重信访(PETITION.initial_petition)") |
||||||
|
@TableField("initial_petition") |
||||||
|
private String initialPetition; |
||||||
|
|
||||||
|
@Schema(description = "缠访闹访(PETITION.entanglement_visits)") |
||||||
|
@TableField("entanglement_visits") |
||||||
|
private String entanglementVisits; |
||||||
|
|
||||||
|
@Schema(description = "群众集访(PETITION.mass_visits)") |
||||||
|
@TableField("mass_visits") |
||||||
|
private String massVisits; |
||||||
|
|
||||||
|
@Schema(description = "涉及警种(PETITION.police_type)") |
||||||
|
@TableField("police_type") |
||||||
|
private String policeType; |
||||||
|
|
||||||
|
@Schema(description = "投诉人身份证(PETITION.responder_id_code)") |
||||||
|
@TableField("responder_id_code") |
||||||
|
private String responderIdCode; |
||||||
|
|
||||||
|
@Schema(description = "信访人数(PETITION.people_number)") |
||||||
|
@TableField("people_number") |
||||||
|
private Integer peopleNumber; |
||||||
|
|
||||||
|
@Schema(description = "信访诉求(PETITION.appeal)") |
||||||
|
@TableField("appeal") |
||||||
|
private String appeal; |
||||||
|
|
||||||
|
@Schema(description = "公安业务分类(PETITION.business_class)") |
||||||
|
@TableField("business_class") |
||||||
|
private String businessClass; |
||||||
|
|
||||||
|
@Schema(description = "登记单位(PETITION.register_depart_name)") |
||||||
|
@TableField("register_depart_name") |
||||||
|
private String registerDepartName; |
||||||
|
|
||||||
|
@Schema(description = "转往处(PETITION.transfer_depart)") |
||||||
|
@TableField("transfer_depart") |
||||||
|
private String transferDepart; |
||||||
|
|
||||||
|
/** |
||||||
|
* @see ComplaintCollectionHandleMethodEnum |
||||||
|
*/ |
||||||
|
@Schema(description = "办理方式(PETITION.handle_method) 原表中没用 现改为3表通用") |
||||||
|
@TableField("handle_method") |
||||||
|
private String handleMethod; |
||||||
|
|
||||||
|
@Schema(description = "具体承办单位(PETITION.handle_depart_name)") |
||||||
|
@TableField("handle_depart_name") |
||||||
|
private String handleDepartName; |
||||||
|
|
||||||
|
@Schema(description = "办结时间(PETITION.completed_time)") |
||||||
|
@TableField("completed_time") |
||||||
|
private LocalDateTime completedTime; |
||||||
|
|
||||||
|
@Schema(description = "责任单位(PETITION.involve_depart_name)") |
||||||
|
@TableField("involve_depart_name") |
||||||
|
private String involveDepartName; |
||||||
|
|
||||||
|
@Schema(description = "接访领导姓名(PETITION.receiving_leader_name)") |
||||||
|
@TableField("receiving_leader_name") |
||||||
|
private String receivingLeaderName; |
||||||
|
|
||||||
|
@Schema(description = "是否主要责任(PETITION.is_mian_responsib)") |
||||||
|
@TableField("is_mian_responsib") |
||||||
|
private String isMianResponsib; |
||||||
|
|
||||||
|
@Schema(description = "领导接访单位(PETITION.receiving_depart_name)") |
||||||
|
@TableField("receiving_depart_name") |
||||||
|
private String receivingDepartName; |
||||||
|
|
||||||
|
@Schema(description = "关联负面清单id(PETITION.negative_id)") |
||||||
|
@TableField("negative_id") |
||||||
|
private String negativeId; |
||||||
|
|
||||||
|
@Schema(description = "信访类型(PETITION.petition_type)") |
||||||
|
@TableField("petition_type") |
||||||
|
private String petitionType; |
||||||
|
|
||||||
|
@Schema(description = "信访办理情况(PETITION.petition_processing_status)") |
||||||
|
@TableField("petition_processing_status") |
||||||
|
private String petitionProcessingStatus; |
||||||
|
|
||||||
|
/* ---- CASE_VERIF 独有(data_case_verif) ---- */ |
||||||
|
|
||||||
|
@Schema(description = "问题发生时间(CASE_VERIF.happen_time)") |
||||||
|
@TableField("happen_time") |
||||||
|
private LocalDateTime happenTime; |
||||||
|
|
||||||
|
@Schema(description = "是否属实(1属实 2部分属实 3不属实)(CASE_VERIF.is_real)") |
||||||
|
@TableField("is_real") |
||||||
|
private Integer isReal; |
||||||
|
|
||||||
|
@Schema(description = "线索来源(CASE_VERIF.source)") |
||||||
|
@TableField("source") |
||||||
|
private String source; |
||||||
|
|
||||||
|
@Schema(description = "创建人(业务字段)(CASE_VERIF.creator)") |
||||||
|
@TableField("creator") |
||||||
|
private String creator; |
||||||
|
|
||||||
|
@Schema(description = "来源涉及单位名称(CASE_VERIF.source_involve_depart_name)") |
||||||
|
@TableField("source_involve_depart_name") |
||||||
|
private String sourceInvolveDepartName; |
||||||
|
|
||||||
|
@Schema(description = "外部id(CASE_VERIF.outer_id)") |
||||||
|
@TableField("outer_id") |
||||||
|
private String outerId; |
||||||
|
|
||||||
|
@Schema(description = "状态(CASE_VERIF.crx_state)") |
||||||
|
@TableField("crx_state") |
||||||
|
private String crxState; |
||||||
|
|
||||||
|
/* ---- MAILBOX 独有(data_mailbox) ---- */ |
||||||
|
|
||||||
|
@Schema(description = "业务类型code(MAILBOX.businessTypeCode)") |
||||||
|
@TableField("business_type_code") |
||||||
|
private String businessTypeCode; |
||||||
|
|
||||||
|
@Schema(description = "核查情况(MAILBOX.checkStatus)") |
||||||
|
@TableField("check_status") |
||||||
|
private String checkStatus; |
||||||
|
|
||||||
|
@Schema(description = "核查情况名称(MAILBOX.checkStatusName)") |
||||||
|
@TableField("check_status_name") |
||||||
|
private String checkStatusName; |
||||||
|
|
||||||
|
@Schema(description = "核查情况内容(MAILBOX.checkStatusDesc)") |
||||||
|
@TableField("check_status_desc") |
||||||
|
private String checkStatusDesc; |
||||||
|
|
||||||
|
@Schema(description = "办理状态(MAILBOX.processingStatus)") |
||||||
|
@TableField("processing_status") |
||||||
|
private String processingStatus; |
||||||
|
|
||||||
|
@Schema(description = "转责对象(MAILBOX.accountabilityTarget)") |
||||||
|
@TableField("accountability_target") |
||||||
|
private String accountabilityTarget; |
||||||
|
|
||||||
|
@Schema(description = "来源表创建时间(业务字段)(MAILBOX.crtTime)") |
||||||
|
@TableField("crt_time") |
||||||
|
private LocalDateTime crtTime; |
||||||
|
|
||||||
|
/* ========================= |
||||||
|
* 4) 新加字段 |
||||||
|
* ========================= */ |
||||||
|
|
||||||
|
/** |
||||||
|
* @see YesOrNoEnum |
||||||
|
*/ |
||||||
|
@Schema(description = "是否重复件") |
||||||
|
@TableField("repeatt") |
||||||
|
private String repeatt; |
||||||
|
|
||||||
|
/** |
||||||
|
* @see YesOrNoEnum |
||||||
|
*/ |
||||||
|
@Schema(description = "是否领导审批") |
||||||
|
@TableField("lead_approval") |
||||||
|
private String leadApproval; |
||||||
|
|
||||||
|
|
||||||
|
@Schema(description = "标签id") |
||||||
|
@TableField("tag") |
||||||
|
private String tag; |
||||||
|
|
||||||
|
|
||||||
|
/* ========================= |
||||||
|
* 4) 扩展字段(最后) |
||||||
|
* ========================= */ |
||||||
|
|
||||||
|
@Schema(description = "自定义1") |
||||||
|
@TableField("gwf1") |
||||||
|
private String gwf1; |
||||||
|
|
||||||
|
@Schema(description = "自定义2") |
||||||
|
@TableField("gwf2") |
||||||
|
private String gwf2; |
||||||
|
|
||||||
|
@Schema(description = "自定义3") |
||||||
|
@TableField("gwf3") |
||||||
|
private String gwf3; |
||||||
|
|
||||||
|
@Schema(description = "自定义4") |
||||||
|
@TableField("gwf4") |
||||||
|
private String gwf4; |
||||||
|
|
||||||
|
@Schema(description = "自定义5") |
||||||
|
@TableField("gwf5") |
||||||
|
private String gwf5; |
||||||
|
|
||||||
|
@Schema(description = "自定义6") |
||||||
|
@TableField("gwf6") |
||||||
|
private String gwf6; |
||||||
|
|
||||||
|
@Schema(description = "自定义7") |
||||||
|
@TableField("gwf7") |
||||||
|
private String gwf7; |
||||||
|
|
||||||
|
@Schema(description = "自定义8") |
||||||
|
@TableField("gwf8") |
||||||
|
private String gwf8; |
||||||
|
|
||||||
|
@Schema(description = "自定义9") |
||||||
|
@TableField("gwf9") |
||||||
|
private String gwf9; |
||||||
|
|
||||||
|
@Schema(description = "自定义10") |
||||||
|
@TableField("gwf10") |
||||||
|
private String gwf10; |
||||||
|
|
||||||
|
@Schema(description = "自定义11") |
||||||
|
@TableField("gwf11") |
||||||
|
private String gwf11; |
||||||
|
|
||||||
|
@Schema(description = "自定义12") |
||||||
|
@TableField("gwf12") |
||||||
|
private String gwf12; |
||||||
|
|
||||||
|
@Schema(description = "自定义13") |
||||||
|
@TableField("gwf13") |
||||||
|
private String gwf13; |
||||||
|
|
||||||
|
@Schema(description = "自定义14") |
||||||
|
@TableField("gwf14") |
||||||
|
private String gwf14; |
||||||
|
|
||||||
|
@Schema(description = "自定义15") |
||||||
|
@TableField("gwf15") |
||||||
|
private String gwf15; |
||||||
|
|
||||||
|
@Schema(description = "自定义16") |
||||||
|
@TableField("gwf16") |
||||||
|
private String gwf16; |
||||||
|
|
||||||
|
@Schema(description = "自定义17") |
||||||
|
@TableField("gwf17") |
||||||
|
private String gwf17; |
||||||
|
|
||||||
|
@Schema(description = "自定义18") |
||||||
|
@TableField("gwf18") |
||||||
|
private String gwf18; |
||||||
|
|
||||||
|
@Schema(description = "自定义19") |
||||||
|
@TableField("gwf19") |
||||||
|
private String gwf19; |
||||||
|
|
||||||
|
@Schema(description = "自定义20") |
||||||
|
@TableField("gwf20") |
||||||
|
private String gwf20; |
||||||
|
|
||||||
|
|
||||||
|
@Schema(description = "创建人(新表字段)") |
||||||
|
@TableField("create_by") |
||||||
|
private String createBy; |
||||||
|
|
||||||
|
@Schema(description = "创建时间(新表字段)") |
||||||
|
@TableField("create_time") |
||||||
|
private LocalDateTime createTime; |
||||||
|
|
||||||
|
@Schema(description = "更新人(新表字段)") |
||||||
|
@TableField("update_by") |
||||||
|
private String updateBy; |
||||||
|
|
||||||
|
@Schema(description = "更新时间(新表字段)") |
||||||
|
@TableField("update_time") |
||||||
|
private LocalDateTime updateTime; |
||||||
|
|
||||||
|
// @Schema(description = "逻辑删除标记(0未删 1已删)")
|
||||||
|
// @TableField("delete_flag")
|
||||||
|
// @TableLogic(value = "0", delval = "1")
|
||||||
|
// private Integer deleteFlag;
|
||||||
|
} |
||||||
@ -0,0 +1,30 @@ |
|||||||
|
package com.biutag.supervision.pojo.param.ComplaintCollection; |
||||||
|
|
||||||
|
import com.biutag.supervision.pojo.enums.complaintCollection.ComplaintCollectionSourceTableEnum; |
||||||
|
import io.swagger.v3.oas.annotations.media.Schema; |
||||||
|
import lombok.Getter; |
||||||
|
import lombok.Setter; |
||||||
|
|
||||||
|
/** |
||||||
|
* @ClassName ComplaintCollectionExistParam |
||||||
|
* @Description ComplaintCollectionExistParam |
||||||
|
* @Author shihao |
||||||
|
* @Date 2025/12/25 19:33 |
||||||
|
*/ |
||||||
|
@Getter |
||||||
|
@Setter |
||||||
|
@Schema(description = "涉访涉诉表校验存在实体") |
||||||
|
public class ComplaintCollectionExistParam { |
||||||
|
|
||||||
|
@Schema(description = "id") |
||||||
|
private String id; |
||||||
|
|
||||||
|
@Schema(description = "信件编号") |
||||||
|
private String originId; |
||||||
|
|
||||||
|
/** |
||||||
|
* @see ComplaintCollectionSourceTableEnum |
||||||
|
*/ |
||||||
|
@Schema(description = "来源表类型:PETITION/CASE_VERIF/MAILBOX") |
||||||
|
private String sourceTable; |
||||||
|
} |
||||||
@ -0,0 +1,80 @@ |
|||||||
|
package com.biutag.supervision.pojo.param.ComplaintCollection; |
||||||
|
|
||||||
|
import com.biutag.supervision.pojo.enums.complaintCollection.ComplaintCollectionSourceTableEnum; |
||||||
|
import com.biutag.supervision.pojo.param.BasePage; |
||||||
|
import io.swagger.v3.oas.annotations.media.Schema; |
||||||
|
import lombok.Getter; |
||||||
|
import lombok.Setter; |
||||||
|
|
||||||
|
import java.time.LocalDateTime; |
||||||
|
import java.util.Date; |
||||||
|
import java.util.List; |
||||||
|
import java.util.Set; |
||||||
|
|
||||||
|
/** |
||||||
|
* @ClassName ComplaintCollectionQueryParam |
||||||
|
* @Description 涉访涉诉表查询实体 |
||||||
|
* @Author shihao |
||||||
|
* @Date 2025/12/23 16:57 |
||||||
|
*/ |
||||||
|
@Getter |
||||||
|
@Setter |
||||||
|
@Schema(description = "涉访涉诉表查询实体") |
||||||
|
public class ComplaintCollectionQueryParam extends BasePage { |
||||||
|
|
||||||
|
@Schema(description = "主键ID") |
||||||
|
private String id; |
||||||
|
|
||||||
|
@Schema(description = "主键ID集合") |
||||||
|
private Set<String> ids; |
||||||
|
|
||||||
|
@Schema(description = "信件编号") |
||||||
|
private String originId; |
||||||
|
|
||||||
|
@Schema(description = "信件编号集合") |
||||||
|
private Set<String> originIds; |
||||||
|
|
||||||
|
/** |
||||||
|
* @see ComplaintCollectionSourceTableEnum |
||||||
|
*/ |
||||||
|
@Schema(description = "来源表类型:PETITION/CASE_VERIF/MAILBOX") |
||||||
|
private String sourceTable; |
||||||
|
|
||||||
|
@Schema(description = "信件来源") |
||||||
|
private Set<String> sourceTables; |
||||||
|
|
||||||
|
@Schema(description = "反映人姓名(PETITION.responder_name;CASE_VERIF.responder_name;MAILBOX.responderName)") |
||||||
|
private String responderName; |
||||||
|
|
||||||
|
@Schema(description = "受理时间") |
||||||
|
private List<LocalDateTime> discoveryTimeList; |
||||||
|
|
||||||
|
@Schema(description = "来件人信息") |
||||||
|
private String personInfo; |
||||||
|
|
||||||
|
@Schema(description = "被投诉二级机构Id") |
||||||
|
private String secondDepartId; |
||||||
|
|
||||||
|
@Schema(description = "被投诉二级机构名字") |
||||||
|
private String secondDepartName; |
||||||
|
|
||||||
|
@Schema(description = "办理方式") |
||||||
|
private String handleMethod; |
||||||
|
|
||||||
|
@Schema(description = "来件内容") |
||||||
|
private String thingDesc; |
||||||
|
|
||||||
|
@Schema(description = "是否重复件") |
||||||
|
private String repeatt; |
||||||
|
|
||||||
|
@Schema(description = "是否领导批示") |
||||||
|
private String leadApproval; |
||||||
|
|
||||||
|
@Schema(description = "标签") |
||||||
|
private List<String> tags; |
||||||
|
|
||||||
|
// @Schema(description = "部门ID集合")
|
||||||
|
// private Set<String> secondDepartIds;
|
||||||
|
|
||||||
|
|
||||||
|
} |
||||||
@ -0,0 +1,86 @@ |
|||||||
|
package com.biutag.supervision.pojo.param.ComplaintCollection; |
||||||
|
|
||||||
|
import com.biutag.supervision.pojo.enums.complaintCollection.ComplaintCollectionHandleMethodEnum; |
||||||
|
import com.biutag.supervision.pojo.enums.complaintCollection.ComplaintCollectionSourceTableEnum; |
||||||
|
import com.biutag.supervision.pojo.enums.complaintCollection.YesOrNoEnum; |
||||||
|
import io.swagger.v3.oas.annotations.media.Schema; |
||||||
|
import lombok.Getter; |
||||||
|
import lombok.Setter; |
||||||
|
|
||||||
|
import java.time.LocalDateTime; |
||||||
|
|
||||||
|
/** |
||||||
|
* @ClassName ComplaintCollectionUpdateRequest |
||||||
|
* @Description ComplaintCollectionUpdateRequest |
||||||
|
* @Author shihao |
||||||
|
* @Date 2025/12/25 19:31 |
||||||
|
*/ |
||||||
|
@Getter |
||||||
|
@Setter |
||||||
|
@Schema(description = "涉访涉诉表更新实体") |
||||||
|
public class ComplaintCollectionUpdateParam { |
||||||
|
|
||||||
|
@Schema(description = "id") |
||||||
|
private String id; |
||||||
|
|
||||||
|
/** |
||||||
|
* @see ComplaintCollectionSourceTableEnum |
||||||
|
*/ |
||||||
|
@Schema(description = "来源表类型") |
||||||
|
private String sourceTable; |
||||||
|
|
||||||
|
@Schema(description = "编号") |
||||||
|
private String originId; |
||||||
|
|
||||||
|
@Schema(description = "受理时间") |
||||||
|
private LocalDateTime discoveryTime; |
||||||
|
|
||||||
|
@Schema(description = "来件人姓名") |
||||||
|
private String responderName; |
||||||
|
|
||||||
|
@Schema(description = "身份证号") |
||||||
|
private String responderIdCode; |
||||||
|
|
||||||
|
@Schema(description = "联系电话") |
||||||
|
private String responderPhone; |
||||||
|
|
||||||
|
@Schema(description = "被投诉二级机构Id") |
||||||
|
private String secondDepartId; |
||||||
|
|
||||||
|
@Schema(description = "被投诉二级机构") |
||||||
|
private String secondDepartName; |
||||||
|
|
||||||
|
@Schema(description = "来信内容") |
||||||
|
private String thingDesc; |
||||||
|
|
||||||
|
@Schema(description = "涉嫌问题") |
||||||
|
private String involveProblem; |
||||||
|
|
||||||
|
/** |
||||||
|
* @see YesOrNoEnum |
||||||
|
*/ |
||||||
|
@Schema(description = "是否重复件") |
||||||
|
private String repeatt; |
||||||
|
|
||||||
|
/** |
||||||
|
* @see YesOrNoEnum |
||||||
|
*/ |
||||||
|
@Schema(description = "是否领导审批") |
||||||
|
private String leadApproval; |
||||||
|
|
||||||
|
@Schema(description = "标签") |
||||||
|
private String tag; |
||||||
|
|
||||||
|
/** |
||||||
|
* @see ComplaintCollectionHandleMethodEnum |
||||||
|
*/ |
||||||
|
@Schema(description = "办理方式") |
||||||
|
private String handleMethod; |
||||||
|
|
||||||
|
@Schema(description = "更新人(新表字段)") |
||||||
|
private String updateBy; |
||||||
|
|
||||||
|
@Schema(description = "更新时间(新表字段)") |
||||||
|
private LocalDateTime updateTime; |
||||||
|
|
||||||
|
} |
||||||
@ -0,0 +1,152 @@ |
|||||||
|
package com.biutag.supervision.pojo.request.complaintCollection; |
||||||
|
|
||||||
|
import cn.hutool.core.collection.CollectionUtil; |
||||||
|
import cn.hutool.core.util.IdcardUtil; |
||||||
|
import cn.hutool.core.util.ObjectUtil; |
||||||
|
import cn.hutool.core.util.StrUtil; |
||||||
|
import com.biutag.supervision.aop.ParamChecked; |
||||||
|
import com.biutag.supervision.pojo.enums.complaintCollection.ComplaintCollectionHandleMethodEnum; |
||||||
|
import com.biutag.supervision.pojo.enums.complaintCollection.ComplaintCollectionSourceTableEnum; |
||||||
|
import com.biutag.supervision.pojo.enums.complaintCollection.YesOrNoEnum; |
||||||
|
import io.swagger.v3.oas.annotations.media.Schema; |
||||||
|
import lombok.Getter; |
||||||
|
import lombok.Setter; |
||||||
|
|
||||||
|
import java.time.LocalDateTime; |
||||||
|
import java.util.List; |
||||||
|
import java.util.stream.Collectors; |
||||||
|
|
||||||
|
/** |
||||||
|
* @ClassName complaintCollectionRequest |
||||||
|
* @Description 涉访涉诉添加请求 |
||||||
|
* @Author shihao |
||||||
|
* @Date 2025/12/23 18:02 |
||||||
|
*/ |
||||||
|
@Setter |
||||||
|
@Getter |
||||||
|
@Schema(description = "涉访涉诉添加请求") |
||||||
|
public class ComplaintCollectionAddRequest implements ParamChecked { |
||||||
|
|
||||||
|
/** |
||||||
|
* @see ComplaintCollectionSourceTableEnum |
||||||
|
*/ |
||||||
|
@Schema(description = "来源表类型") |
||||||
|
private String sourceTable; |
||||||
|
|
||||||
|
@Schema(description = "编号") |
||||||
|
private String originId; |
||||||
|
|
||||||
|
@Schema(description = "受理时间") |
||||||
|
private LocalDateTime discoveryTime; |
||||||
|
|
||||||
|
@Schema(description = "来件人姓名") |
||||||
|
private String responderName; |
||||||
|
|
||||||
|
@Schema(description = "身份证号") |
||||||
|
private String responderIdCode; |
||||||
|
|
||||||
|
@Schema(description = "联系电话") |
||||||
|
private String responderPhone; |
||||||
|
|
||||||
|
@Schema(description = "被投诉二级机构Id") |
||||||
|
private String secondDepartId; |
||||||
|
|
||||||
|
@Schema(description = "被投诉二级机构") |
||||||
|
private String secondDepartName; |
||||||
|
|
||||||
|
@Schema(description = "来信内容") |
||||||
|
private String thingDesc; |
||||||
|
|
||||||
|
@Schema(description = "涉嫌问题") |
||||||
|
private List<String> involveProblemIdList; |
||||||
|
|
||||||
|
@Schema(description = "涉嫌问题") |
||||||
|
private String involveProblemIdStr; |
||||||
|
|
||||||
|
/** |
||||||
|
* @see YesOrNoEnum |
||||||
|
*/ |
||||||
|
@Schema(description = "是否重复件") |
||||||
|
private String repeatt; |
||||||
|
|
||||||
|
/** |
||||||
|
* @see YesOrNoEnum |
||||||
|
*/ |
||||||
|
@Schema(description = "是否领导审批") |
||||||
|
private String leadApproval; |
||||||
|
|
||||||
|
/** |
||||||
|
* |
||||||
|
*/ |
||||||
|
@Schema(description = "标签") |
||||||
|
private String tag; |
||||||
|
|
||||||
|
@Schema(description = "标签集合") |
||||||
|
private List<String> tags; |
||||||
|
|
||||||
|
/** |
||||||
|
* @see ComplaintCollectionHandleMethodEnum |
||||||
|
*/ |
||||||
|
@Schema(description = "办理方式") |
||||||
|
private String handleMethod; |
||||||
|
|
||||||
|
|
||||||
|
@Override |
||||||
|
public void check() { |
||||||
|
if (StrUtil.isBlank(sourceTable)) { |
||||||
|
throw new IllegalArgumentException("来源不能为空"); |
||||||
|
} |
||||||
|
if (ObjectUtil.isNull(discoveryTime)) { |
||||||
|
throw new IllegalArgumentException("受理时间不能为空"); |
||||||
|
} |
||||||
|
if (discoveryTime.isAfter(LocalDateTime.now())) { |
||||||
|
throw new IllegalArgumentException("受理时间不能晚于当前时间"); |
||||||
|
} |
||||||
|
|
||||||
|
if (StrUtil.isNotBlank(responderIdCode) && !IdcardUtil.isValidCard(responderIdCode)){ |
||||||
|
throw new IllegalArgumentException("身份证格式不对!"); |
||||||
|
} |
||||||
|
if (StrUtil.hasBlank(secondDepartId,secondDepartName)) { |
||||||
|
throw new IllegalArgumentException("被投诉二级机构不能为空"); |
||||||
|
} |
||||||
|
|
||||||
|
if (StrUtil.isBlank(thingDesc)) { |
||||||
|
throw new IllegalArgumentException("来信内容不能为空"); |
||||||
|
} |
||||||
|
|
||||||
|
if (ObjectUtil.isNull(involveProblemIdList)) { |
||||||
|
throw new IllegalArgumentException("涉嫌问题不能为空"); |
||||||
|
} |
||||||
|
|
||||||
|
if (StrUtil.isBlank(repeatt)) { |
||||||
|
throw new IllegalArgumentException("是否重复不能为空"); |
||||||
|
} |
||||||
|
|
||||||
|
if (StrUtil.isBlank((leadApproval))) { |
||||||
|
throw new IllegalArgumentException("是否领导审批不能为空"); |
||||||
|
} |
||||||
|
|
||||||
|
if (CollectionUtil.isEmpty(tags)){ |
||||||
|
throw new IllegalArgumentException("标签不能为空"); |
||||||
|
} |
||||||
|
if (StrUtil.isEmpty(handleMethod)){ |
||||||
|
throw new IllegalArgumentException("办理方法不能为空"); |
||||||
|
} |
||||||
|
|
||||||
|
if (CollectionUtil.isNotEmpty(involveProblemIdList)){ |
||||||
|
involveProblemIdStr = involveProblemIdList.stream() |
||||||
|
.filter(StrUtil::isNotBlank) |
||||||
|
.distinct() |
||||||
|
.collect(Collectors.joining(",")); |
||||||
|
} |
||||||
|
|
||||||
|
if (CollectionUtil.isNotEmpty(tags)){ |
||||||
|
tag = tags.stream() |
||||||
|
.filter(StrUtil::isNotBlank) |
||||||
|
.distinct() |
||||||
|
.collect(Collectors.joining(",")); |
||||||
|
} |
||||||
|
|
||||||
|
} |
||||||
|
|
||||||
|
} |
||||||
@ -0,0 +1,31 @@ |
|||||||
|
package com.biutag.supervision.pojo.request.complaintCollection; |
||||||
|
|
||||||
|
import cn.hutool.core.util.StrUtil; |
||||||
|
import com.biutag.supervision.aop.ParamChecked; |
||||||
|
import io.swagger.v3.oas.annotations.media.Schema; |
||||||
|
import lombok.Getter; |
||||||
|
import lombok.Setter; |
||||||
|
|
||||||
|
/** |
||||||
|
* @ClassName complaintCollectionRequest |
||||||
|
* @Description 涉访涉诉添加请求 |
||||||
|
* @Author shihao |
||||||
|
* @Date 2025/12/23 18:02 |
||||||
|
*/ |
||||||
|
@Setter |
||||||
|
@Getter |
||||||
|
@Schema(description = "涉访涉诉删除请求") |
||||||
|
public class ComplaintCollectionDelRequest implements ParamChecked { |
||||||
|
|
||||||
|
|
||||||
|
@Schema(description = "ComplaintCollection自己的Id") |
||||||
|
private String id; |
||||||
|
|
||||||
|
@Override |
||||||
|
public void check() { |
||||||
|
if (StrUtil.isBlank(id)) { |
||||||
|
throw new IllegalArgumentException("编号不能为空"); |
||||||
|
} |
||||||
|
} |
||||||
|
|
||||||
|
} |
||||||
@ -0,0 +1,83 @@ |
|||||||
|
package com.biutag.supervision.pojo.request.complaintCollection; |
||||||
|
|
||||||
|
import cn.hutool.core.collection.CollectionUtil; |
||||||
|
import com.biutag.supervision.aop.ParamChecked; |
||||||
|
import com.biutag.supervision.pojo.enums.complaintCollection.ComplaintCollectionHandleMethodEnum; |
||||||
|
import com.biutag.supervision.pojo.param.BasePage; |
||||||
|
import com.fasterxml.jackson.annotation.JsonFormat; |
||||||
|
import io.swagger.v3.oas.annotations.media.Schema; |
||||||
|
import lombok.Getter; |
||||||
|
import lombok.Setter; |
||||||
|
|
||||||
|
import java.time.LocalDateTime; |
||||||
|
import java.util.List; |
||||||
|
import java.util.Set; |
||||||
|
|
||||||
|
/** |
||||||
|
* @ClassName complaintCollectionRequest |
||||||
|
* @Description 涉访涉诉分页请求 |
||||||
|
* @Author shihao |
||||||
|
* @Date 2025/12/23 18:02 |
||||||
|
*/ |
||||||
|
@Setter |
||||||
|
@Getter |
||||||
|
@Schema(description = "涉访涉诉分页请求") |
||||||
|
public class ComplaintCollectionPageRequest extends BasePage implements ParamChecked { |
||||||
|
|
||||||
|
|
||||||
|
@Schema(description = "信件来源") |
||||||
|
private Set<String> sourceTables; |
||||||
|
|
||||||
|
@Schema(description = "信件编号") |
||||||
|
private String originId; |
||||||
|
|
||||||
|
@Schema(description = "受理时间") |
||||||
|
@JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss") |
||||||
|
private List<LocalDateTime> discoveryTimeList; |
||||||
|
|
||||||
|
@Schema(description = "来件人信息") |
||||||
|
private String personInfo; |
||||||
|
|
||||||
|
@Schema(description = "被投诉二级机构Id") |
||||||
|
private String secondDepartId; |
||||||
|
|
||||||
|
@Schema(description = "被投诉二级机构名字") |
||||||
|
private String secondDepartName; |
||||||
|
|
||||||
|
/** |
||||||
|
* @see ComplaintCollectionHandleMethodEnum |
||||||
|
*/ |
||||||
|
@Schema(description = "办理方式") |
||||||
|
private String handleMethod; |
||||||
|
|
||||||
|
@Schema(description = "来件内容") |
||||||
|
private String thingDesc; |
||||||
|
|
||||||
|
@Schema(description = "是否重复件") |
||||||
|
private String repeatt; |
||||||
|
|
||||||
|
@Schema(description = "是否领导批示") |
||||||
|
private String leadApproval; |
||||||
|
|
||||||
|
@Schema(description = "标签") |
||||||
|
private Set<String> tags; |
||||||
|
|
||||||
|
|
||||||
|
@Override |
||||||
|
public void check() { |
||||||
|
if (CollectionUtil.isNotEmpty(discoveryTimeList)){ |
||||||
|
if (discoveryTimeList.size() != 2) { |
||||||
|
throw new IllegalArgumentException("受理时间区间不合法"); |
||||||
|
} |
||||||
|
LocalDateTime startTime = discoveryTimeList.get(0); |
||||||
|
LocalDateTime endTime = discoveryTimeList.get(1); |
||||||
|
if (startTime == null || endTime == null) { |
||||||
|
throw new IllegalArgumentException("受理时间不能为空"); |
||||||
|
} |
||||||
|
// 结束时间不能早于开始时间
|
||||||
|
if (endTime.isBefore(startTime)) { |
||||||
|
throw new IllegalArgumentException("结束时间不能早于开始时间"); |
||||||
|
} |
||||||
|
} |
||||||
|
} |
||||||
|
} |
||||||
@ -0,0 +1,85 @@ |
|||||||
|
package com.biutag.supervision.pojo.request.complaintCollection; |
||||||
|
|
||||||
|
import cn.hutool.core.collection.CollectionUtil; |
||||||
|
import cn.hutool.core.util.IdcardUtil; |
||||||
|
import cn.hutool.core.util.StrUtil; |
||||||
|
import com.biutag.supervision.aop.ParamChecked; |
||||||
|
import io.swagger.v3.oas.annotations.media.Schema; |
||||||
|
import lombok.Getter; |
||||||
|
import lombok.Setter; |
||||||
|
|
||||||
|
import java.time.LocalDateTime; |
||||||
|
import java.util.List; |
||||||
|
|
||||||
|
@Schema(description = "涉访涉诉修改请求") |
||||||
|
@Getter |
||||||
|
@Setter |
||||||
|
public class ComplaintCollectionUpdateRequest implements ParamChecked { |
||||||
|
|
||||||
|
@Schema(description = "主键ID") |
||||||
|
private String id; |
||||||
|
|
||||||
|
@Schema(description = "受理时间") |
||||||
|
private LocalDateTime discoveryTime; |
||||||
|
|
||||||
|
@Schema(description = "来件人姓名") |
||||||
|
private String responderName; |
||||||
|
|
||||||
|
@Schema(description = "身份证号") |
||||||
|
private String responderIdCode; |
||||||
|
|
||||||
|
@Schema(description = "联系电话") |
||||||
|
private String responderPhone; |
||||||
|
|
||||||
|
@Schema(description = "被投诉二级机构Id") |
||||||
|
private String secondDepartId; |
||||||
|
|
||||||
|
@Schema(description = "被投诉二级机构") |
||||||
|
private String secondDepartName; |
||||||
|
|
||||||
|
@Schema(description = "来信内容") |
||||||
|
private String thingDesc; |
||||||
|
|
||||||
|
@Schema(description = "涉嫌问题(逗号分隔存 involve_problem)") |
||||||
|
private List<String> involveProblemIdList; |
||||||
|
|
||||||
|
@Schema(description = "是否重复件") |
||||||
|
private String repeatt; |
||||||
|
|
||||||
|
@Schema(description = "是否领导审批") |
||||||
|
private String leadApproval; |
||||||
|
|
||||||
|
@Schema(description = "标签集合(逗号分隔存 tag)") |
||||||
|
private List<String> tags; |
||||||
|
|
||||||
|
@Schema(description = "办理方式") |
||||||
|
private String handleMethod; |
||||||
|
|
||||||
|
@Override |
||||||
|
public void check() { |
||||||
|
if (StrUtil.isBlank(id)) { |
||||||
|
throw new IllegalArgumentException("id不能为空"); |
||||||
|
} |
||||||
|
boolean nothingToUpdate = |
||||||
|
discoveryTime == null |
||||||
|
&& StrUtil.isBlank(responderName) |
||||||
|
&& StrUtil.isBlank(responderIdCode) |
||||||
|
&& StrUtil.isBlank(responderPhone) |
||||||
|
&& StrUtil.isBlank(secondDepartId) |
||||||
|
&& StrUtil.isBlank(secondDepartName) |
||||||
|
&& StrUtil.isBlank(thingDesc) |
||||||
|
&& CollectionUtil.isEmpty(involveProblemIdList) |
||||||
|
&& StrUtil.isBlank(repeatt) |
||||||
|
&& StrUtil.isBlank(leadApproval) |
||||||
|
&& CollectionUtil.isEmpty(tags) |
||||||
|
&& StrUtil.isBlank(handleMethod); |
||||||
|
if (nothingToUpdate) { |
||||||
|
throw new IllegalArgumentException("请至少修改一个字段"); |
||||||
|
} |
||||||
|
|
||||||
|
if (StrUtil.isNotBlank(responderIdCode) && !IdcardUtil.isValidCard(responderIdCode)){ |
||||||
|
throw new IllegalArgumentException("身份证格式不对!"); |
||||||
|
} |
||||||
|
|
||||||
|
} |
||||||
|
} |
||||||
@ -0,0 +1,47 @@ |
|||||||
|
package com.biutag.supervision.pojo.transfer; |
||||||
|
|
||||||
|
import com.baomidou.mybatisplus.core.metadata.IPage; |
||||||
|
import com.biutag.supervision.pojo.dto.complaintCollection.ComplaintCollectionPageDTO; |
||||||
|
import com.biutag.supervision.pojo.entity.ComplaintCollection; |
||||||
|
import com.biutag.supervision.pojo.param.ComplaintCollection.ComplaintCollectionQueryParam; |
||||||
|
import com.biutag.supervision.pojo.param.ComplaintCollection.ComplaintCollectionUpdateParam; |
||||||
|
import com.biutag.supervision.pojo.request.complaintCollection.ComplaintCollectionAddRequest; |
||||||
|
import com.biutag.supervision.pojo.request.complaintCollection.ComplaintCollectionPageRequest; |
||||||
|
import com.biutag.supervision.pojo.request.complaintCollection.ComplaintCollectionUpdateRequest; |
||||||
|
import com.biutag.supervision.pojo.vo.ComplaintCollectionPageVo; |
||||||
|
import org.mapstruct.Mapper; |
||||||
|
import org.mapstruct.Mapping; |
||||||
|
import org.mapstruct.factory.Mappers; |
||||||
|
|
||||||
|
import java.util.List; |
||||||
|
|
||||||
|
/** |
||||||
|
* @ClassName ComplaintCollectionTansfer |
||||||
|
* @Description ComplaintCollectionTransfer |
||||||
|
* @Author shihao |
||||||
|
* @Date 2025/12/23 18:10 |
||||||
|
*/ |
||||||
|
@Mapper |
||||||
|
public interface ComplaintCollectionTransfer { |
||||||
|
|
||||||
|
ComplaintCollectionTransfer INSTANCE = Mappers.getMapper(ComplaintCollectionTransfer.class); |
||||||
|
|
||||||
|
List<ComplaintCollectionPageVo> toPageVoList(List<ComplaintCollection> complaintCollections); |
||||||
|
|
||||||
|
@Mapping(source = "total", target = "total") |
||||||
|
@Mapping(source = "pages", target = "pages") |
||||||
|
@Mapping(source = "current", target = "current") |
||||||
|
@Mapping(source = "size", target = "size") |
||||||
|
ComplaintCollectionPageVo toPageVo(IPage<ComplaintCollection> page); |
||||||
|
|
||||||
|
|
||||||
|
List<ComplaintCollectionPageDTO> entityToPageDTOList(List<ComplaintCollection> records); |
||||||
|
|
||||||
|
ComplaintCollectionQueryParam pageRequestToPageParam(ComplaintCollectionPageRequest request); |
||||||
|
|
||||||
|
ComplaintCollection updateRequestToEntity(ComplaintCollectionUpdateRequest request); |
||||||
|
@Mapping(source = "involveProblemIdStr", target = "involveProblem") |
||||||
|
ComplaintCollection addRequestToEntity(ComplaintCollectionAddRequest request); |
||||||
|
|
||||||
|
ComplaintCollectionUpdateParam updateRequestToParam(ComplaintCollectionUpdateRequest request); |
||||||
|
} |
||||||
@ -0,0 +1,39 @@ |
|||||||
|
package com.biutag.supervision.pojo.vo; |
||||||
|
|
||||||
|
import com.biutag.supervision.pojo.dto.complaintCollection.ComplaintCollectionPageDTO; |
||||||
|
import io.swagger.v3.oas.annotations.media.Schema; |
||||||
|
import lombok.Getter; |
||||||
|
import lombok.Setter; |
||||||
|
|
||||||
|
import java.util.List; |
||||||
|
|
||||||
|
/** |
||||||
|
* @ClassName ComplaintCollectionVo |
||||||
|
* @Description 涉访涉诉VO |
||||||
|
* @Author shihao |
||||||
|
* @Date 2025/12/23 17:28 |
||||||
|
*/ |
||||||
|
@Getter |
||||||
|
@Setter |
||||||
|
@Schema(description = "涉访涉诉PageVO") |
||||||
|
public class ComplaintCollectionPageVo { |
||||||
|
|
||||||
|
@Schema(description = "总条数") |
||||||
|
private Long total; |
||||||
|
|
||||||
|
@Schema(description = "总页数") |
||||||
|
private Long pages; |
||||||
|
|
||||||
|
@Schema(description = "当前页") |
||||||
|
private Long current; |
||||||
|
|
||||||
|
@Schema(description = "每页条数") |
||||||
|
private Long size; |
||||||
|
|
||||||
|
|
||||||
|
@Schema(description = "返回DTO") |
||||||
|
private List<ComplaintCollectionPageDTO> complaintCollectionPageDTOS; |
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
} |
||||||
@ -0,0 +1,46 @@ |
|||||||
|
package com.biutag.supervision.util; |
||||||
|
|
||||||
|
import cn.hutool.core.collection.CollectionUtil; |
||||||
|
import cn.hutool.core.util.StrUtil; |
||||||
|
import java.util.Arrays; |
||||||
|
import java.util.List; |
||||||
|
import java.util.Map; |
||||||
|
import java.util.stream.Collectors; |
||||||
|
|
||||||
|
/** |
||||||
|
* @ClassName CodeTranslateUtil |
||||||
|
* @Description CodeTranslateUtil |
||||||
|
* @Author shihao |
||||||
|
* @Date 2025/12/25 21:54 |
||||||
|
*/ |
||||||
|
public final class CodeTranslateUtil { |
||||||
|
private CodeTranslateUtil() { |
||||||
|
} |
||||||
|
|
||||||
|
|
||||||
|
public static String joinDistinct(List<String> items) { |
||||||
|
if (CollectionUtil.isEmpty(items)) { |
||||||
|
return null; |
||||||
|
} |
||||||
|
return items.stream() |
||||||
|
.map(StrUtil::trim) |
||||||
|
.filter(StrUtil::isNotBlank) |
||||||
|
.distinct() |
||||||
|
.collect(Collectors.joining(",")); |
||||||
|
} |
||||||
|
|
||||||
|
|
||||||
|
public static String translateCodesToLabels(String codes, Map<String, String> dictLabelMap) { |
||||||
|
if (StrUtil.isBlank(codes) || CollectionUtil.isEmpty(dictLabelMap)) { |
||||||
|
return ""; |
||||||
|
} |
||||||
|
return Arrays.stream(codes.split(",")) |
||||||
|
.map(String::trim) |
||||||
|
.filter(StrUtil::isNotBlank) |
||||||
|
.distinct() |
||||||
|
.map(dictLabelMap::get) |
||||||
|
.filter(StrUtil::isNotBlank) |
||||||
|
.collect(Collectors.joining(",")); |
||||||
|
} |
||||||
|
|
||||||
|
} |
||||||
@ -0,0 +1,157 @@ |
|||||||
|
<?xml version="1.0" encoding="UTF-8" ?> |
||||||
|
<!DOCTYPE mapper |
||||||
|
PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" |
||||||
|
"http://mybatis.org/dtd/mybatis-3-mapper.dtd"> |
||||||
|
<mapper namespace="com.biutag.supervision.mapper.ComplaintCollectionMapper"> |
||||||
|
|
||||||
|
|
||||||
|
<!-- 批量插入:全字段 --> |
||||||
|
<insert id="insertBatch" parameterType="java.util.List"> |
||||||
|
INSERT INTO complaint_collection ( |
||||||
|
id, |
||||||
|
source_table, |
||||||
|
source_origin_id, |
||||||
|
origin_id, |
||||||
|
discovery_time, |
||||||
|
responder_name, |
||||||
|
responder_phone, |
||||||
|
business_type_name, |
||||||
|
thing_desc, |
||||||
|
involved_issue, |
||||||
|
second_depart_name, |
||||||
|
third_depart_name, |
||||||
|
involve_problem, |
||||||
|
distribution_state, |
||||||
|
second_depart_id, |
||||||
|
third_depart_id, |
||||||
|
problem_sources_code, |
||||||
|
problem_sources, |
||||||
|
police_type_name, |
||||||
|
|
||||||
|
channel_for_filing_complaints, |
||||||
|
acceptance_level, |
||||||
|
initial_petition, |
||||||
|
entanglement_visits, |
||||||
|
mass_visits, |
||||||
|
police_type, |
||||||
|
responder_id_code, |
||||||
|
people_number, |
||||||
|
appeal, |
||||||
|
business_class, |
||||||
|
register_depart_name, |
||||||
|
transfer_depart, |
||||||
|
handle_method, |
||||||
|
handle_depart_name, |
||||||
|
completed_time, |
||||||
|
involve_depart_name, |
||||||
|
receiving_leader_name, |
||||||
|
is_mian_responsib, |
||||||
|
receiving_depart_name, |
||||||
|
negative_id, |
||||||
|
petition_type, |
||||||
|
petition_processing_status, |
||||||
|
|
||||||
|
happen_time, |
||||||
|
is_real, |
||||||
|
source, |
||||||
|
creator, |
||||||
|
source_involve_depart_name, |
||||||
|
outer_id, |
||||||
|
crx_state, |
||||||
|
|
||||||
|
business_type_code, |
||||||
|
check_status, |
||||||
|
check_status_name, |
||||||
|
check_status_desc, |
||||||
|
processing_status, |
||||||
|
accountability_target, |
||||||
|
crt_time, |
||||||
|
|
||||||
|
gwf1, gwf2, gwf3, gwf4, gwf5, |
||||||
|
gwf6, gwf7, gwf8, gwf9, gwf10, |
||||||
|
gwf11, gwf12, gwf13, gwf14, gwf15, |
||||||
|
gwf16, gwf17, gwf18, gwf19, gwf20, |
||||||
|
|
||||||
|
create_by, |
||||||
|
create_time, |
||||||
|
update_by, |
||||||
|
update_time, |
||||||
|
delete_flag |
||||||
|
) |
||||||
|
VALUES |
||||||
|
<foreach collection="list" item="item" separator=","> |
||||||
|
( |
||||||
|
#{item.id}, |
||||||
|
#{item.sourceTable}, |
||||||
|
#{item.sourceOriginId}, |
||||||
|
#{item.originId}, |
||||||
|
#{item.discoveryTime}, |
||||||
|
#{item.responderName}, |
||||||
|
#{item.responderPhone}, |
||||||
|
#{item.businessTypeName}, |
||||||
|
#{item.thingDesc}, |
||||||
|
#{item.involvedIssue}, |
||||||
|
#{item.secondDepartName}, |
||||||
|
#{item.thirdDepartName}, |
||||||
|
#{item.involveProblem}, |
||||||
|
#{item.distributionState}, |
||||||
|
#{item.secondDepartId}, |
||||||
|
#{item.thirdDepartId}, |
||||||
|
#{item.problemSourcesCode}, |
||||||
|
#{item.problemSources}, |
||||||
|
#{item.policeTypeName}, |
||||||
|
|
||||||
|
#{item.channelForFilingComplaints}, |
||||||
|
#{item.acceptanceLevel}, |
||||||
|
#{item.initialPetition}, |
||||||
|
#{item.entanglementVisits}, |
||||||
|
#{item.massVisits}, |
||||||
|
#{item.policeType}, |
||||||
|
#{item.responderIdCode}, |
||||||
|
#{item.peopleNumber}, |
||||||
|
#{item.appeal}, |
||||||
|
#{item.businessClass}, |
||||||
|
#{item.registerDepartName}, |
||||||
|
#{item.transferDepart}, |
||||||
|
#{item.handleMethod}, |
||||||
|
#{item.handleDepartName}, |
||||||
|
#{item.completedTime}, |
||||||
|
#{item.involveDepartName}, |
||||||
|
#{item.receivingLeaderName}, |
||||||
|
#{item.isMianResponsib}, |
||||||
|
#{item.receivingDepartName}, |
||||||
|
#{item.negativeId}, |
||||||
|
#{item.petitionType}, |
||||||
|
#{item.petitionProcessingStatus}, |
||||||
|
|
||||||
|
#{item.happenTime}, |
||||||
|
#{item.isReal}, |
||||||
|
#{item.source}, |
||||||
|
#{item.creator}, |
||||||
|
#{item.sourceInvolveDepartName}, |
||||||
|
#{item.outerId}, |
||||||
|
#{item.crxState}, |
||||||
|
|
||||||
|
#{item.businessTypeCode}, |
||||||
|
#{item.checkStatus}, |
||||||
|
#{item.checkStatusName}, |
||||||
|
#{item.checkStatusDesc}, |
||||||
|
#{item.processingStatus}, |
||||||
|
#{item.accountabilityTarget}, |
||||||
|
#{item.crtTime}, |
||||||
|
|
||||||
|
#{item.gwf1}, #{item.gwf2}, #{item.gwf3}, #{item.gwf4}, #{item.gwf5}, |
||||||
|
#{item.gwf6}, #{item.gwf7}, #{item.gwf8}, #{item.gwf9}, #{item.gwf10}, |
||||||
|
#{item.gwf11}, #{item.gwf12}, #{item.gwf13}, #{item.gwf14}, #{item.gwf15}, |
||||||
|
#{item.gwf16}, #{item.gwf17}, #{item.gwf18}, #{item.gwf19}, #{item.gwf20}, |
||||||
|
|
||||||
|
#{item.createBy}, |
||||||
|
#{item.createTime}, |
||||||
|
#{item.updateBy}, |
||||||
|
#{item.updateTime}, |
||||||
|
#{item.deleteFlag} |
||||||
|
) |
||||||
|
</foreach> |
||||||
|
</insert> |
||||||
|
|
||||||
|
</mapper> |
||||||
Loading…
Reference in new issue