yxk-20260529-巡视整改提升台账,任务清单
1、将整改任务列表调整为“问题清单 + 任务清单”的扁平台账。 2、每一行仍代表一条整改任务,补齐展示其所属的问题分类、面上问题、具体问题。 3、相同的问题分类、面上问题、具体问题在表格中使用 rowSpan 合并单元格,形成直观台账。 4、发起流程仍以“整改任务”为粒度,即每条整改措施单独发起流程。
This commit is contained in:
+19
@@ -26,6 +26,7 @@ import org.jeecg.common.system.query.QueryRuleEnum;
|
|||||||
import org.jeecg.common.util.oConvertUtils;
|
import org.jeecg.common.util.oConvertUtils;
|
||||||
import org.jeecg.modules.demo.dqinspecttask.entity.DqInspectProgress;
|
import org.jeecg.modules.demo.dqinspecttask.entity.DqInspectProgress;
|
||||||
import org.jeecg.modules.demo.dqinspecttask.entity.DqInspectTask;
|
import org.jeecg.modules.demo.dqinspecttask.entity.DqInspectTask;
|
||||||
|
import org.jeecg.modules.demo.dqinspecttask.vo.DqInspectTaskLedgerVo;
|
||||||
import org.jeecg.modules.demo.dqinspecttask.vo.DqInspectTaskPage;
|
import org.jeecg.modules.demo.dqinspecttask.vo.DqInspectTaskPage;
|
||||||
import org.jeecg.modules.demo.dqinspecttask.service.IDqInspectTaskService;
|
import org.jeecg.modules.demo.dqinspecttask.service.IDqInspectTaskService;
|
||||||
import org.jeecg.modules.demo.dqinspecttask.service.IDqInspectProgressService;
|
import org.jeecg.modules.demo.dqinspecttask.service.IDqInspectProgressService;
|
||||||
@@ -84,6 +85,24 @@ public class DqInspectTaskController {
|
|||||||
return Result.OK(pageList);
|
return Result.OK(pageList);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 整改任务台账:一行一条整改任务,补齐问题分类、面上问题、具体问题。
|
||||||
|
*
|
||||||
|
* @param dqInspectTask
|
||||||
|
* @param pageNo
|
||||||
|
* @param pageSize
|
||||||
|
* @return
|
||||||
|
*/
|
||||||
|
@Operation(summary="dq_inspect_task-台账分页列表查询")
|
||||||
|
@GetMapping(value = "/ledgerList")
|
||||||
|
public Result<IPage<DqInspectTaskLedgerVo>> queryLedgerList(DqInspectTask dqInspectTask,
|
||||||
|
@RequestParam(name="pageNo", defaultValue="1") Integer pageNo,
|
||||||
|
@RequestParam(name="pageSize", defaultValue="10") Integer pageSize) {
|
||||||
|
Page<DqInspectTaskLedgerVo> page = new Page<DqInspectTaskLedgerVo>(pageNo, pageSize);
|
||||||
|
IPage<DqInspectTaskLedgerVo> pageList = dqInspectTaskService.queryLedgerPage(page, dqInspectTask);
|
||||||
|
return Result.OK(pageList);
|
||||||
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* 添加
|
* 添加
|
||||||
*
|
*
|
||||||
|
|||||||
+12
@@ -2,9 +2,12 @@ package org.jeecg.modules.demo.dqinspecttask.mapper;
|
|||||||
|
|
||||||
import java.util.List;
|
import java.util.List;
|
||||||
|
|
||||||
|
import com.baomidou.mybatisplus.core.metadata.IPage;
|
||||||
|
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
|
||||||
import org.apache.ibatis.annotations.Param;
|
import org.apache.ibatis.annotations.Param;
|
||||||
import org.jeecg.modules.demo.dqinspecttask.entity.DqInspectTask;
|
import org.jeecg.modules.demo.dqinspecttask.entity.DqInspectTask;
|
||||||
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
|
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
|
||||||
|
import org.jeecg.modules.demo.dqinspecttask.vo.DqInspectTaskLedgerVo;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* @Description: dq_inspect_task
|
* @Description: dq_inspect_task
|
||||||
@@ -14,4 +17,13 @@ import com.baomidou.mybatisplus.core.mapper.BaseMapper;
|
|||||||
*/
|
*/
|
||||||
public interface DqInspectTaskMapper extends BaseMapper<DqInspectTask> {
|
public interface DqInspectTaskMapper extends BaseMapper<DqInspectTask> {
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 查询整改任务台账,补齐问题分类、面上问题、具体问题信息。
|
||||||
|
*
|
||||||
|
* @param page 分页参数
|
||||||
|
* @param task 查询条件
|
||||||
|
* @return 台账分页
|
||||||
|
*/
|
||||||
|
IPage<DqInspectTaskLedgerVo> queryLedgerPage(Page<DqInspectTaskLedgerVo> page, @Param("task") DqInspectTask task);
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|||||||
+67
@@ -2,4 +2,71 @@
|
|||||||
<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
|
<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
|
||||||
<mapper namespace="org.jeecg.modules.demo.dqinspecttask.mapper.DqInspectTaskMapper">
|
<mapper namespace="org.jeecg.modules.demo.dqinspecttask.mapper.DqInspectTaskMapper">
|
||||||
|
|
||||||
|
<select id="queryLedgerPage" resultType="org.jeecg.modules.demo.dqinspecttask.vo.DqInspectTaskLedgerVo">
|
||||||
|
select
|
||||||
|
t.id,
|
||||||
|
p_category.id as categoryId,
|
||||||
|
p_category.problem_name as categoryName,
|
||||||
|
p_surface.id as surfaceId,
|
||||||
|
p_surface.problem_name as surfaceName,
|
||||||
|
p_specific.id as specificId,
|
||||||
|
p_specific.problem_name as specificName,
|
||||||
|
t.problem_id as problemId,
|
||||||
|
p_specific.inspect_advice as inspectAdvice,
|
||||||
|
t.secret_level as secretLevel,
|
||||||
|
t.improve_measure as improveMeasure,
|
||||||
|
t.deadline,
|
||||||
|
t.target_node as targetNode,
|
||||||
|
t.measure_res_leader as measureResLeader,
|
||||||
|
t.measure_res_dept as measureResDept,
|
||||||
|
t.rectification_evidence as rectificationEvidence,
|
||||||
|
t.evaluation_criterion as evaluationCriterion,
|
||||||
|
t.is_need_appro as isNeedAppro,
|
||||||
|
t.sup_deptleaderid as supDeptleaderid,
|
||||||
|
t.inspection_status as inspectionStatus,
|
||||||
|
t.supervisory_opinion as supervisoryOpinion,
|
||||||
|
t.measure_count as measureCount,
|
||||||
|
t.bpm_process_id as bpmProcessId,
|
||||||
|
t.bpm_status as bpmStatus,
|
||||||
|
t.task_status as taskStatus,
|
||||||
|
t.supervise_count as superviseCount,
|
||||||
|
t.sort_no as sortNo,
|
||||||
|
t.create_time as createTime
|
||||||
|
from dq_inspect_task t
|
||||||
|
inner join dq_inspect_problem p_specific
|
||||||
|
on t.problem_id = p_specific.id
|
||||||
|
and p_specific.node_type = 'specific'
|
||||||
|
and ifnull(p_specific.del_flag, '0') = '0'
|
||||||
|
left join dq_inspect_problem p_surface
|
||||||
|
on p_specific.pid = p_surface.id
|
||||||
|
and ifnull(p_surface.del_flag, '0') = '0'
|
||||||
|
left join dq_inspect_problem p_category
|
||||||
|
on p_surface.pid = p_category.id
|
||||||
|
and ifnull(p_category.del_flag, '0') = '0'
|
||||||
|
where ifnull(t.del_flag, '0') = '0'
|
||||||
|
<if test="task != null">
|
||||||
|
<if test="task.improveMeasure != null and task.improveMeasure != ''">
|
||||||
|
and t.improve_measure like concat('%', #{task.improveMeasure}, '%')
|
||||||
|
</if>
|
||||||
|
<if test="task.measureResLeader != null and task.measureResLeader != ''">
|
||||||
|
and t.measure_res_leader = #{task.measureResLeader}
|
||||||
|
</if>
|
||||||
|
<if test="task.measureResDept != null and task.measureResDept != ''">
|
||||||
|
and t.measure_res_dept = #{task.measureResDept}
|
||||||
|
</if>
|
||||||
|
<if test="task.problemId != null and task.problemId != ''">
|
||||||
|
and t.problem_id = #{task.problemId}
|
||||||
|
</if>
|
||||||
|
</if>
|
||||||
|
order by
|
||||||
|
p_category.sort_no asc,
|
||||||
|
p_category.create_time asc,
|
||||||
|
p_surface.sort_no asc,
|
||||||
|
p_surface.create_time asc,
|
||||||
|
p_specific.sort_no asc,
|
||||||
|
p_specific.create_time asc,
|
||||||
|
t.sort_no asc,
|
||||||
|
t.create_time asc
|
||||||
|
</select>
|
||||||
|
|
||||||
</mapper>
|
</mapper>
|
||||||
+12
@@ -1,8 +1,11 @@
|
|||||||
package org.jeecg.modules.demo.dqinspecttask.service;
|
package org.jeecg.modules.demo.dqinspecttask.service;
|
||||||
|
|
||||||
|
import com.baomidou.mybatisplus.core.metadata.IPage;
|
||||||
|
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
|
||||||
import org.jeecg.modules.demo.dqinspecttask.entity.DqInspectProgress;
|
import org.jeecg.modules.demo.dqinspecttask.entity.DqInspectProgress;
|
||||||
import org.jeecg.modules.demo.dqinspecttask.entity.DqInspectTask;
|
import org.jeecg.modules.demo.dqinspecttask.entity.DqInspectTask;
|
||||||
import com.baomidou.mybatisplus.extension.service.IService;
|
import com.baomidou.mybatisplus.extension.service.IService;
|
||||||
|
import org.jeecg.modules.demo.dqinspecttask.vo.DqInspectTaskLedgerVo;
|
||||||
import java.io.Serializable;
|
import java.io.Serializable;
|
||||||
import java.util.Collection;
|
import java.util.Collection;
|
||||||
import java.util.List;
|
import java.util.List;
|
||||||
@@ -45,4 +48,13 @@ public interface IDqInspectTaskService extends IService<DqInspectTask> {
|
|||||||
*/
|
*/
|
||||||
public void delBatchMain (Collection<? extends Serializable> idList);
|
public void delBatchMain (Collection<? extends Serializable> idList);
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 查询整改任务台账。
|
||||||
|
*
|
||||||
|
* @param page 分页参数
|
||||||
|
* @param dqInspectTask 查询条件
|
||||||
|
* @return 台账分页
|
||||||
|
*/
|
||||||
|
IPage<DqInspectTaskLedgerVo> queryLedgerPage(Page<DqInspectTaskLedgerVo> page, DqInspectTask dqInspectTask);
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|||||||
+8
@@ -9,7 +9,10 @@ import org.jeecg.modules.demo.dqinspecttask.entity.DqInspectProgress;
|
|||||||
import org.jeecg.modules.demo.dqinspecttask.mapper.DqInspectProgressMapper;
|
import org.jeecg.modules.demo.dqinspecttask.mapper.DqInspectProgressMapper;
|
||||||
import org.jeecg.modules.demo.dqinspecttask.mapper.DqInspectTaskMapper;
|
import org.jeecg.modules.demo.dqinspecttask.mapper.DqInspectTaskMapper;
|
||||||
import org.jeecg.modules.demo.dqinspecttask.service.IDqInspectTaskService;
|
import org.jeecg.modules.demo.dqinspecttask.service.IDqInspectTaskService;
|
||||||
|
import org.jeecg.modules.demo.dqinspecttask.vo.DqInspectTaskLedgerVo;
|
||||||
import org.springframework.stereotype.Service;
|
import org.springframework.stereotype.Service;
|
||||||
|
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.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
|
||||||
import org.springframework.beans.factory.annotation.Autowired;
|
import org.springframework.beans.factory.annotation.Autowired;
|
||||||
import org.springframework.transaction.annotation.Transactional;
|
import org.springframework.transaction.annotation.Transactional;
|
||||||
@@ -82,6 +85,11 @@ public class DqInspectTaskServiceImpl extends ServiceImpl<DqInspectTaskMapper, D
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public IPage<DqInspectTaskLedgerVo> queryLedgerPage(Page<DqInspectTaskLedgerVo> page, DqInspectTask dqInspectTask) {
|
||||||
|
return dqInspectTaskMapper.queryLedgerPage(page, dqInspectTask);
|
||||||
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* 整改任务必须挂在问题清单的“具体问题”节点下,避免接口绕过前端产生非法层级数据。
|
* 整改任务必须挂在问题清单的“具体问题”节点下,避免接口绕过前端产生非法层级数据。
|
||||||
*/
|
*/
|
||||||
|
|||||||
+113
@@ -0,0 +1,113 @@
|
|||||||
|
package org.jeecg.modules.demo.dqinspecttask.vo;
|
||||||
|
|
||||||
|
import com.fasterxml.jackson.annotation.JsonFormat;
|
||||||
|
import io.swagger.v3.oas.annotations.media.Schema;
|
||||||
|
import lombok.Data;
|
||||||
|
import org.jeecg.common.aspect.annotation.Dict;
|
||||||
|
import org.springframework.format.annotation.DateTimeFormat;
|
||||||
|
|
||||||
|
import java.io.Serializable;
|
||||||
|
import java.util.Date;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 整改任务台账行:一行对应一条整改任务,同时带出所属的问题层级信息。
|
||||||
|
*/
|
||||||
|
@Data
|
||||||
|
@Schema(description = "整改任务台账")
|
||||||
|
public class DqInspectTaskLedgerVo implements Serializable {
|
||||||
|
private static final long serialVersionUID = 1L;
|
||||||
|
|
||||||
|
@Schema(description = "任务ID")
|
||||||
|
private String id;
|
||||||
|
|
||||||
|
@Schema(description = "问题分类ID")
|
||||||
|
private String categoryId;
|
||||||
|
|
||||||
|
@Schema(description = "问题分类")
|
||||||
|
private String categoryName;
|
||||||
|
|
||||||
|
@Schema(description = "面上问题ID")
|
||||||
|
private String surfaceId;
|
||||||
|
|
||||||
|
@Schema(description = "面上问题")
|
||||||
|
private String surfaceName;
|
||||||
|
|
||||||
|
@Schema(description = "具体问题ID")
|
||||||
|
private String specificId;
|
||||||
|
|
||||||
|
@Schema(description = "具体问题")
|
||||||
|
private String specificName;
|
||||||
|
|
||||||
|
@Schema(description = "具体问题ID")
|
||||||
|
private String problemId;
|
||||||
|
|
||||||
|
@Schema(description = "巡视建议")
|
||||||
|
private String inspectAdvice;
|
||||||
|
|
||||||
|
@Dict(dicCode = "secret_level")
|
||||||
|
@Schema(description = "密级")
|
||||||
|
private String secretLevel;
|
||||||
|
|
||||||
|
@Schema(description = "整改措施")
|
||||||
|
private String improveMeasure;
|
||||||
|
|
||||||
|
@JsonFormat(timezone = "GMT+8", pattern = "yyyy-MM-dd")
|
||||||
|
@DateTimeFormat(pattern = "yyyy-MM-dd")
|
||||||
|
@Schema(description = "完成时限")
|
||||||
|
private Date deadline;
|
||||||
|
|
||||||
|
@Schema(description = "目标节点")
|
||||||
|
private String targetNode;
|
||||||
|
|
||||||
|
@Dict(dictTable = "sys_user", dicText = "realname", dicCode = "username")
|
||||||
|
@Schema(description = "措施责任领导")
|
||||||
|
private String measureResLeader;
|
||||||
|
|
||||||
|
@Dict(dictTable = "sys_depart", dicText = "depart_name", dicCode = "id")
|
||||||
|
@Schema(description = "措施责任部门")
|
||||||
|
private String measureResDept;
|
||||||
|
|
||||||
|
@Schema(description = "整改交付成果")
|
||||||
|
private String rectificationEvidence;
|
||||||
|
|
||||||
|
@Schema(description = "成效评价标准")
|
||||||
|
private String evaluationCriterion;
|
||||||
|
|
||||||
|
@Dict(dicCode = "yn")
|
||||||
|
@Schema(description = "是否需要党群领导审批")
|
||||||
|
private String isNeedAppro;
|
||||||
|
|
||||||
|
@Dict(dictTable = "sys_user", dicText = "realname", dicCode = "username")
|
||||||
|
@Schema(description = "党群领导")
|
||||||
|
private String supDeptleaderid;
|
||||||
|
|
||||||
|
@Schema(description = "检查情况")
|
||||||
|
private String inspectionStatus;
|
||||||
|
|
||||||
|
@Schema(description = "监督意见")
|
||||||
|
private String supervisoryOpinion;
|
||||||
|
|
||||||
|
@Schema(description = "措施数量")
|
||||||
|
private Integer measureCount;
|
||||||
|
|
||||||
|
@Schema(description = "流程实例ID")
|
||||||
|
private String bpmProcessId;
|
||||||
|
|
||||||
|
@Dict(dicCode = "super_status")
|
||||||
|
@Schema(description = "流程状态")
|
||||||
|
private String bpmStatus;
|
||||||
|
|
||||||
|
@Schema(description = "整改状态")
|
||||||
|
private String taskStatus;
|
||||||
|
|
||||||
|
@Schema(description = "督办次数")
|
||||||
|
private String superviseCount;
|
||||||
|
|
||||||
|
@Schema(description = "排序")
|
||||||
|
private Integer sortNo;
|
||||||
|
|
||||||
|
@JsonFormat(timezone = "GMT+8", pattern = "yyyy-MM-dd HH:mm:ss")
|
||||||
|
@DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss")
|
||||||
|
@Schema(description = "创建时间")
|
||||||
|
private Date createTime;
|
||||||
|
}
|
||||||
Reference in New Issue
Block a user