zxl
2025-04-02 419104df560d427e9cfb610bb6549dcfe695822d
类名统一,查询启用赋码规则代码提到service
7个文件已修改
2个文件已添加
6 文件已重命名
1个文件已删除
308 ■■■■■ 已修改文件
business/src/main/java/com/ycl/domain/entity/ProjectOvertimeTimes.java 2 ●●● 补丁 | 查看 | 原始文档 | blame | 历史
business/src/main/java/com/ycl/domain/form/ProjectOvertimeTimesForm.java 11 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
business/src/main/java/com/ycl/domain/query/ProjectOvertimeTimesQuery.java 4 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
business/src/main/java/com/ycl/domain/vo/ProjectOvertimeTimesVO.java 10 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
business/src/main/java/com/ycl/mapper/ProjectCodingStatusMapper.java 37 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
business/src/main/java/com/ycl/mapper/ProjectOvertimeTimesMapper.java 36 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
business/src/main/java/com/ycl/service/CodingRulerService.java 8 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
business/src/main/java/com/ycl/service/ProjectOvertimeTimesService.java 15 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
business/src/main/java/com/ycl/service/impl/CodingRulerServiceImpl.java 27 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
business/src/main/java/com/ycl/service/impl/ProjectCodingStatusServiceImpl.java 37 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
business/src/main/java/com/ycl/task/CodingTask.java 84 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
business/src/main/resources/mapper/ProjectOvertimeTimesMapper.xml 7 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
flowable/src/main/java/com/ycl/domain/vo/ProcessCodingVO.java 5 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
flowable/src/main/java/com/ycl/domain/vo/ProcessOvertimeTimesVO.java 18 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
flowable/src/main/java/com/ycl/mapper/ProcessCodingMapper.java 3 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
flowable/src/main/resources/mapper/ProcessCodingMapper.xml 4 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
business/src/main/java/com/ycl/domain/entity/ProjectOvertimeTimes.java
File was renamed from business/src/main/java/com/ycl/domain/entity/ProjectCodingStatus.java
@@ -17,7 +17,7 @@
 */
@Data
@TableName("t_project_overtime_times")
public class ProjectCodingStatus extends AbsEntity {
public class ProjectOvertimeTimes extends AbsEntity {
    private static final long serialVersionUID = 1L;
business/src/main/java/com/ycl/domain/form/ProjectOvertimeTimesForm.java
File was renamed from business/src/main/java/com/ycl/domain/form/ProjectCodingStatusForm.java
@@ -2,16 +2,15 @@
import com.ycl.common.group.Update;
import com.ycl.common.group.Add;
import com.ycl.domain.entity.ProjectOvertimeTimes;
import com.ycl.system.domain.base.AbsForm;
import com.ycl.domain.entity.ProjectCodingStatus;
import org.springframework.beans.BeanUtils;
import javax.validation.constraints.NotBlank;
import javax.validation.constraints.NotNull;
import org.springframework.lang.NonNull;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import java.util.Date;
/**
 * 表单
@@ -21,7 +20,7 @@
 */
@Data
@ApiModel(value = "ProjectCodingStatus表单", description = "表单")
public class ProjectCodingStatusForm extends AbsForm {
public class ProjectOvertimeTimesForm extends AbsForm {
    @NotNull(message = "不能为空", groups = {Add.class, Update.class})
    @ApiModelProperty("超时任务数")
@@ -39,9 +38,9 @@
    @ApiModelProperty("项目类型")
    private String projectType;
    public static ProjectCodingStatus getEntityByForm(@NonNull ProjectCodingStatusForm form, ProjectCodingStatus entity) {
    public static ProjectOvertimeTimes getEntityByForm(@NonNull ProjectOvertimeTimesForm form, ProjectOvertimeTimes entity) {
        if(entity == null) {
          entity = new ProjectCodingStatus();
          entity = new ProjectOvertimeTimes();
        }
        BeanUtils.copyProperties(form, entity);
        return entity;
business/src/main/java/com/ycl/domain/query/ProjectOvertimeTimesQuery.java
File was renamed from business/src/main/java/com/ycl/domain/query/ProjectCodingStatusQuery.java
@@ -16,7 +16,7 @@
 * @since 2025-04-01
 */
@Data
@ApiModel(value = "ProjectCodingStatus查询参数", description = "查询参数")
public class ProjectCodingStatusQuery extends AbsQuery {
@ApiModel(value = "ProjectOvertimeTimesQuery查询参数", description = "查询参数")
public class ProjectOvertimeTimesQuery extends AbsQuery {
}
business/src/main/java/com/ycl/domain/vo/ProjectOvertimeTimesVO.java
File was renamed from business/src/main/java/com/ycl/domain/vo/ProjectCodingStatusVO.java
@@ -1,14 +1,12 @@
package com.ycl.domain.vo;
import com.ycl.domain.entity.ProjectOvertimeTimes;
import com.ycl.system.domain.base.AbsVo;
import com.ycl.domain.entity.ProjectCodingStatus;
import java.util.List;
import org.springframework.lang.NonNull;
import org.springframework.beans.BeanUtils;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import java.util.Date;
/**
 * 展示
@@ -18,7 +16,7 @@
 */
@Data
@ApiModel(value = "响应数据", description = "响应数据")
public class ProjectCodingStatusVO extends AbsVo {
public class ProjectOvertimeTimesVO extends AbsVo {
    /**  任务超时数*/
    @ApiModelProperty("任务超时数")
@@ -37,9 +35,9 @@
    private String projectType;
    public static ProjectCodingStatusVO getVoByEntity(@NonNull ProjectCodingStatus entity, ProjectCodingStatusVO vo) {
    public static ProjectOvertimeTimesVO getVoByEntity(@NonNull ProjectOvertimeTimes entity, ProjectOvertimeTimesVO vo) {
        if(vo == null) {
            vo = new ProjectCodingStatusVO();
            vo = new ProjectOvertimeTimesVO();
        }
        BeanUtils.copyProperties(entity, vo);
        return vo;
business/src/main/java/com/ycl/mapper/ProjectCodingStatusMapper.java
File was deleted
business/src/main/java/com/ycl/mapper/ProjectOvertimeTimesMapper.java
New file
@@ -0,0 +1,36 @@
package com.ycl.mapper;
import com.baomidou.mybatisplus.core.metadata.IPage;
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import com.ycl.domain.entity.ProjectOvertimeTimes;
import com.ycl.domain.query.ProjectOvertimeTimesQuery;
import com.ycl.domain.vo.ProjectOvertimeTimesVO;
import org.apache.ibatis.annotations.Mapper;
import org.apache.ibatis.annotations.Param;
/**
 *  Mapper 接口
 *
 * @author zxl
 * @since 2025-04-01
 */
@Mapper
public interface ProjectOvertimeTimesMapper extends BaseMapper<ProjectOvertimeTimes> {
    /**
     * id查找
     * @param id
     * @return
     */
    ProjectOvertimeTimesVO getById(Integer id);
    /**
    *  分页
    */
    IPage getPage(IPage page, @Param("query") ProjectOvertimeTimesQuery query);
    void delAll();
}
business/src/main/java/com/ycl/service/CodingRulerService.java
@@ -8,7 +8,7 @@
import java.util.List;
/**
 *  服务类
 *  赋码规则服务类
 *
 * @author zxl
 * @since 2025-03-18
@@ -68,4 +68,10 @@
     * @return
     */
    Result changeCodingRulerStatus(Integer id);
    /**
     * 获得启动的赋码规则
     * @return 存放的字段 yellowRuler启用的黄码规则,redRuler启用的红码规则
     */
    Result getStartRuler();
}
business/src/main/java/com/ycl/service/ProjectOvertimeTimesService.java
File was renamed from business/src/main/java/com/ycl/service/ProjectCodingStatusService.java
@@ -1,10 +1,11 @@
package com.ycl.service;
import com.ycl.domain.entity.ProjectCodingStatus;
import com.baomidou.mybatisplus.extension.service.IService;
import com.ycl.common.base.Result;
import com.ycl.domain.form.ProjectCodingStatusForm;
import com.ycl.domain.query.ProjectCodingStatusQuery;
import com.ycl.domain.entity.ProjectOvertimeTimes;
import com.ycl.domain.form.ProjectOvertimeTimesForm;
import com.ycl.domain.query.ProjectOvertimeTimesQuery;
import java.util.List;
/**
@@ -13,21 +14,21 @@
 * @author zxl
 * @since 2025-04-01
 */
public interface ProjectCodingStatusService extends IService<ProjectCodingStatus> {
public interface ProjectOvertimeTimesService extends IService<ProjectOvertimeTimes> {
    /**
     * 添加
     * @param form
     * @return
     */
    Result add(ProjectCodingStatusForm form);
    Result add(ProjectOvertimeTimesForm form);
    /**
     * 修改
     * @param form
     * @return
     */
    Result update(ProjectCodingStatusForm form);
    Result update(ProjectOvertimeTimesForm form);
    /**
     * 批量删除
@@ -48,7 +49,7 @@
     * @param query
     * @return
     */
    Result page(ProjectCodingStatusQuery query);
    Result page(ProjectOvertimeTimesQuery query);
    /**
     * 根据id查找
business/src/main/java/com/ycl/service/impl/CodingRulerServiceImpl.java
@@ -17,6 +17,7 @@
import com.ycl.framework.utils.PageUtil;
import org.springframework.beans.BeanUtils;
import org.springframework.util.Assert;
import org.springframework.util.CollectionUtils;
import java.util.List;
import java.util.stream.Collectors;
@@ -150,4 +151,30 @@
        baseMapper.updateById(codingRuler);
        return Result.ok(msg);
    }
    /**
     * 获得启动的赋码规则
     * @return 存放的字段 yellowRuler启用的黄码规则,redRuler启用的红码规则
     */
    @Override
    public Result getStartRuler() {
        Result result = new Result();
        //获得启用的赋码规则
        List<CodingRulerVO> codingRulerVOS = codingRulerMapper.getStartRuler();
        if (CollectionUtils.isEmpty(codingRulerVOS)){
            log.error("未启用赋码规则");
            return result;
        }
        CodingRulerVO yellowRuler = null;
        CodingRulerVO redRuler = null;
        for (CodingRulerVO codingRulerVO : codingRulerVOS){
            if (CodingRulerCodeTypeEnum.YELLOW.getValue().equals(codingRulerVO.getProjectCodeType())){
                yellowRuler = codingRulerVO;
            }else if (CodingRulerCodeTypeEnum.RED.getValue().equals(codingRulerVO.getProjectCodeType())){
                redRuler = codingRulerVO;
            }
        }
        result.put("yellowRuler",yellowRuler);
        result.put("redRuler",redRuler);
        return result;
    }
}
business/src/main/java/com/ycl/service/impl/ProjectCodingStatusServiceImpl.java
@@ -1,14 +1,15 @@
package com.ycl.service.impl;
import com.baomidou.mybatisplus.core.metadata.IPage;
import com.ycl.domain.entity.ProjectCodingStatus;
import com.ycl.mapper.ProjectCodingStatusMapper;
import com.ycl.service.ProjectCodingStatusService;
import com.ycl.domain.entity.ProjectOvertimeTimes;
import com.ycl.domain.query.ProjectOvertimeTimesQuery;
import com.ycl.common.base.Result;
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
import com.ycl.domain.form.ProjectCodingStatusForm;
import com.ycl.domain.vo.ProjectCodingStatusVO;
import com.ycl.domain.query.ProjectCodingStatusQuery;
import com.ycl.domain.form.ProjectOvertimeTimesForm;
import com.ycl.domain.vo.ProjectOvertimeTimesVO;
import com.ycl.mapper.ProjectOvertimeTimesMapper;
import com.ycl.service.ProjectOvertimeTimesService;
import org.springframework.stereotype.Service;
import lombok.RequiredArgsConstructor;
import com.ycl.framework.utils.PageUtil;
@@ -26,9 +27,9 @@
 */
@Service
@RequiredArgsConstructor
public class ProjectCodingStatusServiceImpl extends ServiceImpl<ProjectCodingStatusMapper, ProjectCodingStatus> implements ProjectCodingStatusService {
public class ProjectCodingStatusServiceImpl extends ServiceImpl<ProjectOvertimeTimesMapper, ProjectOvertimeTimes> implements ProjectOvertimeTimesService {
    private final ProjectCodingStatusMapper projectCodingStatusMapper;
    private final ProjectOvertimeTimesMapper projectCodingStatusMapper;
    /**
     * 添加
@@ -36,8 +37,8 @@
     * @return
     */
    @Override
    public Result add(ProjectCodingStatusForm form) {
        ProjectCodingStatus entity = ProjectCodingStatusForm.getEntityByForm(form, null);
    public Result add(ProjectOvertimeTimesForm form) {
        ProjectOvertimeTimes entity = ProjectOvertimeTimesForm.getEntityByForm(form, null);
        baseMapper.insert(entity);
        return Result.ok("添加成功");
    }
@@ -48,8 +49,8 @@
     * @return
     */
    @Override
    public Result update(ProjectCodingStatusForm form) {
        ProjectCodingStatus entity = baseMapper.selectById(form.getId());
    public Result update(ProjectOvertimeTimesForm form) {
        ProjectOvertimeTimes entity = baseMapper.selectById(form.getId());
        // 为空抛IllegalArgumentException,做全局异常处理
        Assert.notNull(entity, "记录不存在");
@@ -86,8 +87,8 @@
     * @return
     */
    @Override
    public Result page(ProjectCodingStatusQuery query) {
        IPage<ProjectCodingStatusVO> page = PageUtil.getPage(query, ProjectCodingStatusVO.class);
    public Result page(ProjectOvertimeTimesQuery query) {
        IPage<ProjectOvertimeTimesVO> page = PageUtil.getPage(query, ProjectOvertimeTimesVO.class);
        baseMapper.getPage(page, query);
        return Result.ok().data(page.getRecords()).total(page.getTotal());
    }
@@ -99,7 +100,7 @@
     */
    @Override
    public Result detail(Integer id) {
        ProjectCodingStatusVO vo = baseMapper.getById(id);
        ProjectOvertimeTimesVO vo = baseMapper.getById(id);
        Assert.notNull(vo, "记录不存在");
        return Result.ok().data(vo);
@@ -111,9 +112,9 @@
     */
    @Override
    public Result all() {
        List<ProjectCodingStatus> entities = baseMapper.selectList(null);
        List<ProjectCodingStatusVO> vos = entities.stream()
                .map(entity -> ProjectCodingStatusVO.getVoByEntity(entity, null))
        List<ProjectOvertimeTimes> entities = baseMapper.selectList(null);
        List<ProjectOvertimeTimesVO> vos = entities.stream()
                .map(entity -> ProjectOvertimeTimesVO.getVoByEntity(entity, null))
                .collect(Collectors.toList());
        return Result.ok().data(vos);
    }
business/src/main/java/com/ycl/task/CodingTask.java
@@ -2,21 +2,19 @@
import com.baomidou.mybatisplus.extension.conditions.query.LambdaQueryChainWrapper;
import com.baomidou.mybatisplus.extension.conditions.update.LambdaUpdateChainWrapper;
import com.ycl.common.enums.business.CodingRulerCodeTypeEnum;
import com.ycl.common.base.Result;
import com.ycl.common.enums.business.CodingRulerIntervalTypeEnum;
import com.ycl.common.enums.business.CodingRulerSymbolTypeEnum;
import com.ycl.common.enums.business.ProjectProcessTypeEnum;
import com.ycl.domain.entity.*;
import com.ycl.domain.vo.CodingRulerVO;
import com.ycl.domain.vo.ProcessCodingVO;
import com.ycl.domain.vo.ProjectCodingStatusVO;
import com.ycl.domain.vo.ProjectProcessVO;
import com.ycl.domain.vo.ProcessOvertimeTimesVO;
import com.ycl.factory.FlowServiceFactory;
import com.ycl.mapper.*;
import com.ycl.service.ProjectCodingStatusService;
import liquibase.pro.packaged.A;
import com.ycl.service.CodingRulerService;
import com.ycl.service.ProjectOvertimeTimesService;
import lombok.RequiredArgsConstructor;
import lombok.extern.slf4j.Slf4j;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Component;
import org.springframework.util.CollectionUtils;
@@ -28,49 +26,41 @@
import java.util.stream.Collectors;
@Slf4j
@RequiredArgsConstructor
@Component("codingTask")
public class CodingTask extends FlowServiceFactory {
    @Autowired
    private ProjectCodingStatusMapper projectCodingStatusMapper;
    @Autowired
    private ProjectCodingStatusService projectCodingStatusService;
    private final ProjectOvertimeTimesMapper projectOvertimeTimesMapper;
    @Autowired
    private ProjectProcessMapper projectProcessMapper;
    @Autowired
    private ProjectInfoMapper projectInfoMapper;
    @Autowired
    private CodingRulerMapper codingRulerMapper;
    private final ProjectOvertimeTimesService projectOvertimeTimesService;
    @Autowired
    private ProcessCodingMapper processCodingMapper;
    private final ProjectProcessMapper projectProcessMapper;
    private final ProjectInfoMapper projectInfoMapper;
    private final CodingRulerService codingRulerService;
    private final ProcessCodingMapper processCodingMapper;
    //计数项目超时任务数并更具赋码规则进行赋码
    public void codingTask(){
        log.info("开始计算项目并且赋码");
        //获得启用的赋码规则
        List<CodingRulerVO> codingRulerVOS = codingRulerMapper.getStartRuler();
        Result result = codingRulerService.getStartRuler();
        CodingRulerVO yellowRuler = (CodingRulerVO) result.get("yellowRuler");
        CodingRulerVO redRuler = (CodingRulerVO) result.get("redRuler");
        //没启用直接结束
        if (CollectionUtils.isEmpty(codingRulerVOS)){
            log.info("未启用赋码规则");
        if (Objects.isNull(yellowRuler) && Objects.isNull(redRuler)) {
            log.error("未启用赋码规则");
            return;
        }
        CodingRulerVO yellowRuler = null;
        CodingRulerVO redRuler = null;
        for (CodingRulerVO codingRulerVO : codingRulerVOS){
            if (CodingRulerCodeTypeEnum.YELLOW.getValue().equals(codingRulerVO.getProjectCodeType())){
                yellowRuler = codingRulerVO;
            }else if (CodingRulerCodeTypeEnum.RED.getValue().equals(codingRulerVO.getProjectCodeType())){
                redRuler = codingRulerVO;
            }
        }
        //获得所有 超时任务数与流程实例id
        List<ProcessCodingVO> processCodingVOS = processCodingMapper.countProjectOverTimeNum();
        if (!CollectionUtils.isEmpty(processCodingVOS)){
        List<ProcessOvertimeTimesVO> processOvertimeTimesVOS = processCodingMapper.countProjectOvertimeTimes();
        if (!CollectionUtils.isEmpty(processOvertimeTimesVOS)){
            //将流程实例id转换为list
            List<String> processIds = processCodingVOS.stream().map(ProcessCodingVO::getProcessInsId).toList();
            List<String> processIds = processOvertimeTimesVOS.stream().map(ProcessOvertimeTimesVO::getProcessInsId).toList();
            //获得所有 更具流程定义id,流程相关项目id, key为流程id
            Map<String, ProjectProcess> projectMap = new LambdaQueryChainWrapper<>(projectProcessMapper)
                    .in(ProjectProcess::getProcessInsId, processIds)
@@ -86,29 +76,29 @@
            //新增的记录集合
            List<ProjectCodingStatus> addList = new ArrayList<>();
            List<ProjectOvertimeTimes> addList = new ArrayList<>();
            for (ProcessCodingVO processCoding : processCodingVOS) {
            for (ProcessOvertimeTimesVO processOvertimeTimesVO : processOvertimeTimesVOS) {
                //判断 项目类型为 ProjectProcessTypeEnum.PROJECT 并且超时任务数大于0
                if (processCoding.getTaskOvertimeNum() != 0 && projectMap.containsKey(processCoding.getProcessInsId())) {
                    ProjectCodingStatus projectCodingStatus = new ProjectCodingStatus();
                    projectCodingStatus.setProjectType(ProjectProcessTypeEnum.PROJECT.getValue());
                    projectCodingStatus.setProjectId(projectMap.get(processCoding.getProcessInsId()).getProjectId());
                    projectCodingStatus.setProcessInsId(processCoding.getProcessInsId());
                    projectCodingStatus.setTaskOvertimeNum(processCoding.getTaskOvertimeNum());
                if (processOvertimeTimesVO.getTaskOvertimeNum() != 0 && projectMap.containsKey(processOvertimeTimesVO.getProcessInsId())) {
                    ProjectOvertimeTimes projectOvertimeTimes = new ProjectOvertimeTimes();
                    projectOvertimeTimes.setProjectType(ProjectProcessTypeEnum.PROJECT.getValue());
                    projectOvertimeTimes.setProjectId(projectMap.get(processOvertimeTimesVO.getProcessInsId()).getProjectId());
                    projectOvertimeTimes.setProcessInsId(processOvertimeTimesVO.getProcessInsId());
                    projectOvertimeTimes.setTaskOvertimeNum(processOvertimeTimesVO.getTaskOvertimeNum());
                    //添加到新增集合内
                    addList.add(projectCodingStatus);
                    addList.add(projectOvertimeTimes);
                    //检验赋码规则
                    checkCodingType(projectCodingStatus.getTaskOvertimeNum(),
                            projectCodingStatus.getProjectId(),
                    checkCodingType(projectOvertimeTimes.getTaskOvertimeNum(),
                            projectOvertimeTimes.getProjectId(),
                            yellowProjectCodingIds,redProjectCodingIds,
                            yellowRuler,redRuler);
                }
            }
            if(!CollectionUtils.isEmpty(addList)){
                projectCodingStatusMapper.delAll();
                projectCodingStatusService.saveBatch(addList);
                projectOvertimeTimesMapper.delAll();
                projectOvertimeTimesService.saveBatch(addList);
            }
            //修改项目赋码
            updateProjectCoding(redProjectCodingIds,"red");
business/src/main/resources/mapper/ProjectOvertimeTimesMapper.xml
File was renamed from business/src/main/resources/mapper/ProjectCodingStatusMapper.xml
@@ -1,17 +1,14 @@
<?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.ycl.mapper.ProjectCodingStatusMapper">
<mapper namespace="com.ycl.mapper.ProjectOvertimeTimesMapper">
    <!-- 通用查询映射结果 -->
    <resultMap id="BaseResultMap" type="com.ycl.domain.vo.ProjectCodingStatusVO">
    <resultMap id="BaseResultMap" type="com.ycl.domain.vo.ProjectOvertimeTimesVO">
        <result column="task_overtime_num" property="taskOvertimeNum" />
        <result column="process_ins_id" property="processInsId" />
        <result column="project_id" property="projectId" />
        <result column="project_type" property="projectType" />
    </resultMap>
    <delete id="delAll">
        DELETE FROM t_project_overtime_times
flowable/src/main/java/com/ycl/domain/vo/ProcessCodingVO.java
@@ -53,11 +53,6 @@
    @ApiModelProperty("任务状态green/red/yellow")
    private String status;
    /** 任务状态0进行中1结束 */
    @ApiModelProperty("超时任务数")
    private Long taskOvertimeNum;
    /** 任务超时状态 */
    @ApiModelProperty("任务超时状态")
    private String overtimeStatus;
flowable/src/main/java/com/ycl/domain/vo/ProcessOvertimeTimesVO.java
New file
@@ -0,0 +1,18 @@
package com.ycl.domain.vo;
import com.ycl.system.domain.base.AbsVo;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
@Data
@ApiModel(value = "响应数据", description = "响应数据")
public class ProcessOvertimeTimesVO extends AbsVo {
    /** 流程实例id */
    @ApiModelProperty("流程实例id")
    private String processInsId;
    /** 超时任务数 */
    @ApiModelProperty("超时任务数")
    private Long taskOvertimeNum;
}
flowable/src/main/java/com/ycl/mapper/ProcessCodingMapper.java
@@ -5,6 +5,7 @@
import com.ycl.domain.entity.ProcessCoding;
import com.ycl.domain.query.ProcessCodingQuery;
import com.ycl.domain.vo.ProcessCodingVO;
import com.ycl.domain.vo.ProcessOvertimeTimesVO;
import org.apache.ibatis.annotations.Mapper;
import org.apache.ibatis.annotations.Param;
@@ -43,5 +44,5 @@
     * 查询出每个流程实例id中超时的任务数,流程实例id
     * @return
     */
    List<ProcessCodingVO> countProjectOverTimeNum();
    List<ProcessOvertimeTimesVO> countProjectOvertimeTimes();
}
flowable/src/main/resources/mapper/ProcessCodingMapper.xml
@@ -14,13 +14,13 @@
        <result column="status" property="status" />
        <result column="overtime_status" property="overtimeStatus" />
    </resultMap>
    <resultMap id="projectProcessTaskOverNum" type="com.ycl.domain.vo.ProcessCodingVO">
    <resultMap id="processOvertimeTimesVO" type="com.ycl.domain.vo.ProcessOvertimeTimesVO">
        <id column="id" property="id"/>
        <result column="task_overtime_num" property="taskOvertimeNum"/>
        <result column="process_ins_id" property="processInsId"/>
    </resultMap>
    <select id="countProjectOverTimeNum" resultMap="projectProcessTaskOverNum">
    <select id="countProjectOvertimeTimes" resultMap="processOvertimeTimesVO">
        select TPC.id,
               TPC.process_ins_id,
               COUNT(TPC.overtime_status) as task_overtime_num