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>