liujie
2025-04-30 08a1554047834a8a883652dd338054f559db5b34
问题驳回管理
2个文件已修改
8个文件已添加
325 ■■■■■ 已修改文件
springcloud_k8s_panzhihuazhihuishequ/service_sangeshenbian/src/main/java/com/panzhihua/sangeshenbian/api/ComplaintRejectController.java 41 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
springcloud_k8s_panzhihuazhihuishequ/service_sangeshenbian/src/main/java/com/panzhihua/sangeshenbian/dao/ComplaintRejectMapper.java 26 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
springcloud_k8s_panzhihuazhihuishequ/service_sangeshenbian/src/main/java/com/panzhihua/sangeshenbian/model/entity/ComplaintAuditRecord.java 21 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
springcloud_k8s_panzhihuazhihuishequ/service_sangeshenbian/src/main/java/com/panzhihua/sangeshenbian/model/entity/ComplaintReject.java 60 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
springcloud_k8s_panzhihuazhihuishequ/service_sangeshenbian/src/main/java/com/panzhihua/sangeshenbian/model/query/ComplaintRejectQuery.java 28 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
springcloud_k8s_panzhihuazhihuishequ/service_sangeshenbian/src/main/java/com/panzhihua/sangeshenbian/model/vo/ComplaintRejectVo.java 31 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
springcloud_k8s_panzhihuazhihuishequ/service_sangeshenbian/src/main/java/com/panzhihua/sangeshenbian/service/IComplaintRejectService.java 26 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
springcloud_k8s_panzhihuazhihuishequ/service_sangeshenbian/src/main/java/com/panzhihua/sangeshenbian/service/impl/ComplaintRejectServiceImpl.java 44 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
springcloud_k8s_panzhihuazhihuishequ/service_sangeshenbian/src/main/java/com/panzhihua/sangeshenbian/service/impl/ComplaintServiceImpl.java 3 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
springcloud_k8s_panzhihuazhihuishequ/service_sangeshenbian/src/main/resources/mapper/ComplaintRejectMapper.xml 45 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
springcloud_k8s_panzhihuazhihuishequ/service_sangeshenbian/src/main/java/com/panzhihua/sangeshenbian/api/ComplaintRejectController.java
New file
@@ -0,0 +1,41 @@
package com.panzhihua.sangeshenbian.api;
import com.baomidou.mybatisplus.core.metadata.IPage;
import com.panzhihua.common.model.vos.R;
import com.panzhihua.sangeshenbian.model.query.ComplaintRejectQuery;
import com.panzhihua.sangeshenbian.model.vo.ComplaintRejectVo;
import com.panzhihua.sangeshenbian.service.IComplaintRejectService;
import io.swagger.annotations.Api;
import io.swagger.annotations.ApiOperation;
import org.springframework.web.bind.annotation.GetMapping;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RestController;
import javax.annotation.Resource;
/**
 * <p>
 * 诉求驳回表 前端控制器
 * </p>
 *
 * @author
 * @since 2025-04-30
 */
@RestController
@RequestMapping("/complaint-reject")
@Api
public class ComplaintRejectController {
    @Resource
    private IComplaintRejectService complaintRejectService;
    @GetMapping("/list")
    @ApiOperation(value = "获取问题驳回统计列表", tags = {"三个身边后台-问题驳回统计"})
    public R<IPage<ComplaintRejectVo>> list(ComplaintRejectQuery query){
        IPage<ComplaintRejectVo> list  = complaintRejectService.getComplaintRejectList(query);
        return R.ok(list);
    }
}
springcloud_k8s_panzhihuazhihuishequ/service_sangeshenbian/src/main/java/com/panzhihua/sangeshenbian/dao/ComplaintRejectMapper.java
New file
@@ -0,0 +1,26 @@
package com.panzhihua.sangeshenbian.dao;
import com.baomidou.mybatisplus.core.metadata.IPage;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.panzhihua.sangeshenbian.model.entity.ComplaintReject;
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import com.panzhihua.sangeshenbian.model.query.ComplaintRejectQuery;
import com.panzhihua.sangeshenbian.model.vo.ComplaintRejectVo;
import org.apache.ibatis.annotations.Param;
/**
 * <p>
 * 诉求驳回表 Mapper 接口
 * </p>
 *
 * @author
 * @since 2025-04-30
 */
public interface ComplaintRejectMapper extends BaseMapper<ComplaintReject> {
    IPage<ComplaintRejectVo> getComplaintRejectList(@Param("page") Page<ComplaintRejectVo> page, @Param("applyStartTime") String applyStartTime, @Param("applyEndTime") String applyEndTime, @Param("examineStartTime") String examineStartTime, @Param("examineEndTime") String examineEndTime, @Param("query") ComplaintRejectQuery query);
}
springcloud_k8s_panzhihuazhihuishequ/service_sangeshenbian/src/main/java/com/panzhihua/sangeshenbian/model/entity/ComplaintAuditRecord.java
@@ -1,19 +1,18 @@
package com.panzhihua.sangeshenbian.model.entity;
import com.baomidou.mybatisplus.annotation.TableField;
import com.baomidou.mybatisplus.annotation.TableName;
import com.baomidou.mybatisplus.annotation.IdType;
import java.time.LocalDateTime;
import com.baomidou.mybatisplus.annotation.TableField;
import com.baomidou.mybatisplus.annotation.TableId;
import java.io.Serializable;
import java.util.Date;
import com.baomidou.mybatisplus.annotation.TableName;
import com.fasterxml.jackson.databind.annotation.JsonSerialize;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import lombok.EqualsAndHashCode;
import lombok.experimental.Accessors;
import java.io.Serializable;
import java.util.Date;
/**
 * <p>
@@ -123,4 +122,14 @@
    @ApiModelProperty("审核人联系方式")
    @TableField("auditor_phone")
    private String auditorPhone;
    @ApiModelProperty("申请人id")
    @TableField("apply_id")
    private Long applyId;
    @ApiModelProperty("申请人id名称")
    @TableField("apply_name")
    private String applyName;
}
springcloud_k8s_panzhihuazhihuishequ/service_sangeshenbian/src/main/java/com/panzhihua/sangeshenbian/model/entity/ComplaintReject.java
New file
@@ -0,0 +1,60 @@
package com.panzhihua.sangeshenbian.model.entity;
import com.baomidou.mybatisplus.annotation.IdType;
import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableName;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import lombok.EqualsAndHashCode;
import lombok.experimental.Accessors;
import java.io.Serializable;
import java.time.LocalDateTime;
/**
 * <p>
 * 诉求驳回表
 * </p>
 *
 * @author
 * @since 2025-04-30
 */
@Data
@EqualsAndHashCode(callSuper = false)
@Accessors(chain = true)
@TableName("sgsb_complaint_reject")
@ApiModel(value="ComplaintReject对象", description="诉求驳回表")
public class ComplaintReject implements Serializable {
    private static final long serialVersionUID = 1L;
    @ApiModelProperty(value = "主键ID")
    @TableId(value = "id", type = IdType.AUTO)
    private Long id;
    @ApiModelProperty(value = "诉求id")
    private Long complaintId;
    @ApiModelProperty(value = "1上级 2党员")
    private Integer userType;
    @ApiModelProperty(value = "审批人id")
    private Long userId;
    @ApiModelProperty(value = "驳回理由")
    private String remark;
    @ApiModelProperty(value = "流转类型 0-上报 1-下派")
    private Boolean type;
    @ApiModelProperty(value = "创建时间")
    private LocalDateTime createTime;
    @ApiModelProperty(value = "1上报驳回 2延期驳回")
    private Boolean complaintType;
    @ApiModelProperty(value = "申请驳回记录id ")
    private Long complaintAuditId;
}
springcloud_k8s_panzhihuazhihuishequ/service_sangeshenbian/src/main/java/com/panzhihua/sangeshenbian/model/query/ComplaintRejectQuery.java
New file
@@ -0,0 +1,28 @@
package com.panzhihua.sangeshenbian.model.query;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
@Data
@ApiModel("问题驳回统计查询对象")
public class ComplaintRejectQuery extends BasePage{
    @ApiModelProperty("诉求号")
    private String serialNumber;
    @ApiModelProperty("录入人")
    private String reportUserName;
    @ApiModelProperty("录入人联系方式")
    private String reportUserPhone;
    @ApiModelProperty("申请人")
    private String applyUserName;
    @ApiModelProperty("审批人")
    private String examineUserName;
    @ApiModelProperty("申请时间 2022-02-02 - 2022-03-03")
    private String applyTime;
    @ApiModelProperty("审批时间 2022-02-02 - 2022-03-03")
    private String examineTime;
    @ApiModelProperty("诉求状态 0-正在办理 1-延期办理 2-超时办理 3-已办结 4-群众撤销 5-上报待审核 6-上级驳回 7-延期待审核 8-已评价 9-延期驳回")
    private Integer status;
}
springcloud_k8s_panzhihuazhihuishequ/service_sangeshenbian/src/main/java/com/panzhihua/sangeshenbian/model/vo/ComplaintRejectVo.java
New file
@@ -0,0 +1,31 @@
package com.panzhihua.sangeshenbian.model.vo;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
@Data
@ApiModel("问题驳回Vo")
public class ComplaintRejectVo {
    @ApiModelProperty(value = "诉求Id")
    private Long complaintId;
    @ApiModelProperty("诉求号")
    private String serialNumber;
    @ApiModelProperty("录入人")
    private String reportUserName;
    @ApiModelProperty("录入人联系方式")
    private String reportUserPhone;
    @ApiModelProperty("申请人")
    private String applyUserName;
    @ApiModelProperty("审批人")
    private String examineUserName;
    @ApiModelProperty("申请时间 2022-02-02 - 2022-03-03")
    private String applyTime;
    @ApiModelProperty("审批时间 2022-02-02 - 2022-03-03")
    private String examineTime;
    @ApiModelProperty("驳回理由")
    private String remark;
    @ApiModelProperty("诉求状态 0-正在办理 1-延期办理 2-超时办理 3-已办结 4-群众撤销 5-上报待审核 6-上级驳回 7-延期待审核 8-已评价 9-延期驳回")
    private Integer status;
}
springcloud_k8s_panzhihuazhihuishequ/service_sangeshenbian/src/main/java/com/panzhihua/sangeshenbian/service/IComplaintRejectService.java
New file
@@ -0,0 +1,26 @@
package com.panzhihua.sangeshenbian.service;
import com.baomidou.mybatisplus.core.metadata.IPage;
import com.panzhihua.sangeshenbian.model.entity.ComplaintReject;
import com.baomidou.mybatisplus.extension.service.IService;
import com.panzhihua.sangeshenbian.model.query.ComplaintRejectQuery;
import com.panzhihua.sangeshenbian.model.vo.ComplaintRejectVo;
/**
 * <p>
 * 诉求驳回表 服务类
 * </p>
 *
 * @author
 * @since 2025-04-30
 */
public interface IComplaintRejectService extends IService<ComplaintReject> {
    /**
     * 获取诉求驳回统计列表
     * @param query
     * @return
     */
    IPage<ComplaintRejectVo> getComplaintRejectList(ComplaintRejectQuery query);
}
springcloud_k8s_panzhihuazhihuishequ/service_sangeshenbian/src/main/java/com/panzhihua/sangeshenbian/service/impl/ComplaintRejectServiceImpl.java
New file
@@ -0,0 +1,44 @@
package com.panzhihua.sangeshenbian.service.impl;
import com.baomidou.mybatisplus.core.metadata.IPage;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
import com.panzhihua.common.utlis.StringUtils;
import com.panzhihua.sangeshenbian.dao.ComplaintRejectMapper;
import com.panzhihua.sangeshenbian.model.entity.ComplaintReject;
import com.panzhihua.sangeshenbian.model.query.ComplaintRejectQuery;
import com.panzhihua.sangeshenbian.model.vo.ComplaintRejectVo;
import com.panzhihua.sangeshenbian.service.IComplaintRejectService;
import org.springframework.stereotype.Service;
/**
 * <p>
 * 诉求驳回表 服务实现类
 * </p>
 *
 * @author
 * @since 2025-04-30
 */
@Service
public class ComplaintRejectServiceImpl extends ServiceImpl<ComplaintRejectMapper, ComplaintReject> implements IComplaintRejectService {
    @Override
    public IPage<ComplaintRejectVo> getComplaintRejectList(ComplaintRejectQuery query) {
        Page<ComplaintRejectVo> page = new Page<>(query.getPageNum(), query.getPageSize());
        String applyStartTime=null;
        String applyEndTime=null;
        String examineStartTime=null;
        String examineEndTime=null;
        if(StringUtils.isNotEmpty(query.getApplyTime())){
            String[] split = query.getApplyTime().split(" - ");
            applyStartTime=split[0]+" 00:00:00";
            applyEndTime=split[1]+" 23:59:59";
        }
        if(StringUtils.isNotEmpty(query.getExamineTime())){
            String[] split = query.getExamineTime().split(" - ");
            examineStartTime=split[0]+" 00:00:00";
            examineEndTime=split[1]+" 23:59:59";
        }
        return this.baseMapper.getComplaintRejectList(page,applyStartTime,applyEndTime,examineStartTime,examineEndTime,query);
    }
}
springcloud_k8s_panzhihuazhihuishequ/service_sangeshenbian/src/main/java/com/panzhihua/sangeshenbian/service/impl/ComplaintServiceImpl.java
@@ -732,6 +732,7 @@
        complaintAuditRecord.setDepartmentName(departmentName);
        complaintAuditRecord.setReporterLevel(reporterLevel);
        complaintAuditRecord.setReporterId(reporterId);
        complaintAuditRecord.setApplyName(reporter);
        complaintAuditRecordService.save(complaintAuditRecord);
    }
@@ -984,6 +985,8 @@
        record1.setSort(count + 1);
        record1.setComment(dto.getComment());
        record1.setDepartmentName(departmentName);
        // 冗余申请人名称
        record1.setApplyName(reporter);
        complaintAuditRecordService.save(record1);
    }
springcloud_k8s_panzhihuazhihuishequ/service_sangeshenbian/src/main/resources/mapper/ComplaintRejectMapper.xml
New file
@@ -0,0 +1,45 @@
<?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.panzhihua.sangeshenbian.dao.ComplaintRejectMapper">
    <select id="getComplaintRejectList" resultType="com.panzhihua.sangeshenbian.model.vo.ComplaintRejectVo">
        select t1.remark,t1.create_time examineTime,t2.id complaintId,t2.serial_number serialNumber,t2.report_user_name reportUserName,t2.status,
               t2.report_user_phone reportUserPhone,t3.auditor_name examineUserName,t3.create_time applyTime,t3.apply_name applyUserName
        from sgsb_complaint_reject t1
        left join sgsb_complaint t2 on t1.complaint_id = t2.id
        left join sgsb_complaint_audit_record t3 on t1.complaint_audit_id = t3.id
        <where>
            <if test="query.serialNumber != null and query.serialNumber != ''">
                and t2.serial_number = #{query.serialNumber}
            </if>
            <if test="query.reportUserName != null query.reportUserName != ''">
                and t2.report_user_name like concat("%",#{query.reportUserName},"%")
            </if>
            <if test="query.reportUserPhone != null query.reportUserPhone != ''">
                and t2.report_user_phone like concat("%",#{query.reportUserPhone},"%")
            </if>
            <if test="query.applyUserName != null query.applyUserName != ''">
                and t3.apply_name like concat("%",#{query.applyUserName},"%")
            </if>
            <if test="query.examineUserName != null query.examineUserName != ''">
                and t3.auditor_name like concat("%",#{query.examineUserName},"%")
            </if>
            <if test="applyStartTime !=null">
                and t3.create_time between #{applyStartTime} and #{applyEndTime}
            </if>
            <if test="examineStartTime !=null">
                and t1.create_time between #{applyStartTime} and #{applyEndTime}
            </if>
            order by t1.create_time desc
        </where>
    </select>
</mapper>