feat(workflow): 完善作业流程管理功能

master
zhaokai 2026-04-28 17:59:50 +08:00
parent 6e726ac4b3
commit 38f093769b
10 changed files with 50 additions and 4 deletions

View File

@ -127,6 +127,7 @@ public class TaskLogAddExe {
existingInfo.setStatus(TaskLogStatus.APPROVED.getCode()); // 主表进行中=1 existingInfo.setStatus(TaskLogStatus.APPROVED.getCode()); // 主表进行中=1
existingInfo.setInfo(processedInfo); // 设置处理后的 info包含 rejectHistory existingInfo.setInfo(processedInfo); // 设置处理后的 info包含 rejectHistory
existingInfo.setCorpinfoId(cmd.getCorpinfoId());
// 处理签字人信息 // 处理签字人信息
handleInfoStep(existingInfo,cmd.getSignLogs()); handleInfoStep(existingInfo,cmd.getSignLogs());

View File

@ -8,6 +8,8 @@ import org.mapstruct.Mapper;
import org.mapstruct.Mapping; import org.mapstruct.Mapping;
import org.mapstruct.Named; import org.mapstruct.Named;
import java.time.LocalDateTime;
import java.time.format.DateTimeFormatter;
import java.util.List; import java.util.List;
@ -24,11 +26,26 @@ public interface EightworkInfoCoConvertor {
* @return * @return
*/ */
@Mapping(source = "info", target = "info", qualifiedByName = "stringToJsonObject") @Mapping(source = "info", target = "info", qualifiedByName = "stringToJsonObject")
@Mapping(target = "createTime", expression = "java(formatDateTime(eightworkInfoDO.getCreateTime()))")
@Mapping(target = "updateTime", expression = "java(formatDateTime(eightworkInfoDO.getUpdateTime()))")
List<EightworkInfoCO> converDOsToCOs(List<EightworkInfoDO> eightworkInfoDOs); List<EightworkInfoCO> converDOsToCOs(List<EightworkInfoDO> eightworkInfoDOs);
@Mapping(source = "info", target = "info", qualifiedByName = "stringToJsonObject") @Mapping(source = "info", target = "info", qualifiedByName = "stringToJsonObject")
@Mapping(target = "createTime", expression = "java(formatDateTime(eightworkInfoDO.getCreateTime()))")
@Mapping(target = "updateTime", expression = "java(formatDateTime(eightworkInfoDO.getUpdateTime()))")
EightworkInfoCO converDOToCO(EightworkInfoDO eightworkInfoDO); EightworkInfoCO converDOToCO(EightworkInfoDO eightworkInfoDO);
/**
*
* @param dateTime
* @return
*/
default String formatDateTime(LocalDateTime dateTime) {
if (dateTime == null) {
return null;
}
return dateTime.format(DateTimeFormatter.ofPattern("yyyy-MM-dd HH:mm:ss"));
}
@Named("stringToJsonObject") @Named("stringToJsonObject")
default JSONObject stringToJsonObject(String value) { default JSONObject stringToJsonObject(String value) {
if (value == null || value.isEmpty()) { if (value == null || value.isEmpty()) {

View File

@ -68,7 +68,17 @@ public class MeasuresLogsQueryExe {
Map<String,Object> params = PageQueryHelper.toHashMap(qry); Map<String,Object> params = PageQueryHelper.toHashMap(qry);
QueryWrapper<MeasuresLogsDO> queryWrapper = new QueryWrapper<>(); QueryWrapper<MeasuresLogsDO> queryWrapper = new QueryWrapper<>();
queryWrapper = PageQueryHelper.createPageQueryWrapper(queryWrapper, params); queryWrapper = PageQueryHelper.createPageQueryWrapper(queryWrapper, params);
return measuresLogsCoConvertor.converDOsToCOs(measuresLogsRepository.list(queryWrapper)); List<MeasuresLogsCO> measuresLogsCOS = measuresLogsCoConvertor.converDOsToCOs(measuresLogsRepository.list(queryWrapper));
if(qry.getEqWorkId() == null){
return measuresLogsCOS;
}
List<TaskLogDO> logs = taskLogRepository.listAllByWorkId(qry.getEqWorkId());
measuresLogsCOS.stream().forEach(measuresLogsCO -> {
logs.stream().filter(taskLogDO -> taskLogDO.getTaskLogId().equals(measuresLogsCO.getTaskLogId())).findFirst().ifPresent(taskLogDO -> {
measuresLogsCO.setStepName(taskLogDO.getStepName());
});
});
return measuresLogsCOS;
} }
} }

View File

@ -8,6 +8,7 @@ import lombok.Data;
import lombok.EqualsAndHashCode; import lombok.EqualsAndHashCode;
import lombok.NoArgsConstructor; import lombok.NoArgsConstructor;
import javax.validation.constraints.NotBlank;
import javax.validation.constraints.NotEmpty; import javax.validation.constraints.NotEmpty;
import javax.validation.constraints.NotNull; import javax.validation.constraints.NotNull;
@ -51,6 +52,7 @@ public class EightworkInfoSaveDraftCmd extends Command {
private String workType; private String workType;
@ApiModelProperty(value = "级别", name = "workLevel", required = true) @ApiModelProperty(value = "级别", name = "workLevel", required = true)
@NotBlank(message = "请选择作业等级")
private String workLevel; private String workLevel;
@ApiModelProperty(value = "详细信息", name = "info", required = true) @ApiModelProperty(value = "详细信息", name = "info", required = true)

View File

@ -26,5 +26,6 @@ public class MeasuresLogsPageQry extends PageQuery {
private String eqWorkType; private String eqWorkType;
private String eqWorkId; private String eqWorkId;
private Long eqUpdateId; private Long eqUpdateId;
private Integer eqType;
} }

View File

@ -29,7 +29,7 @@ public class TaskLogAddCmd extends Command {
@NotBlank @NotBlank
private String workType; private String workType;
@ApiModelProperty(value = "任务级别", name = "workLevel",required = true) @ApiModelProperty(value = "任务级别", name = "workLevel",required = true)
@NotBlank @NotBlank(message = "请选择作业等级")
private String workLevel; private String workLevel;
@ApiModelProperty(value = "企业", name = "corpinfoId", required = true) @ApiModelProperty(value = "企业", name = "corpinfoId", required = true)
private Long corpinfoId; private Long corpinfoId;

View File

@ -2,6 +2,7 @@ package com.zcloud.eightwork.dto.clientobject;
import com.alibaba.cola.dto.ClientObject; import com.alibaba.cola.dto.ClientObject;
import com.alibaba.fastjson.JSONObject; import com.alibaba.fastjson.JSONObject;
import com.fasterxml.jackson.annotation.JsonFormat;
import io.swagger.annotations.ApiModelProperty; import io.swagger.annotations.ApiModelProperty;
import lombok.Data; import lombok.Data;
@ -23,6 +24,8 @@ public class EightworkInfoCO extends ClientObject {
//企业 //企业
@ApiModelProperty(value = "企业") @ApiModelProperty(value = "企业")
private Long corpinfoId; private Long corpinfoId;
@ApiModelProperty(value = "服务单位")
private String corpinfoName;
//是否相关方1是 //是否相关方1是
@ApiModelProperty(value = "是否相关方1是") @ApiModelProperty(value = "是否相关方1是")
private Integer xgfFlag; private Integer xgfFlag;
@ -82,6 +85,7 @@ public class EightworkInfoCO extends ClientObject {
private String version; private String version;
//创建时间 //创建时间
@ApiModelProperty(value = "创建时间") @ApiModelProperty(value = "创建时间")
@JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
private String createTime; private String createTime;
//修改时间 //修改时间
@ApiModelProperty(value = "修改时间") @ApiModelProperty(value = "修改时间")

View File

@ -1,6 +1,7 @@
package com.zcloud.eightwork.persistence.dataobject; package com.zcloud.eightwork.persistence.dataobject;
import com.alibaba.fastjson.JSONObject; import com.alibaba.fastjson.JSONObject;
import com.baomidou.mybatisplus.annotation.TableField;
import com.baomidou.mybatisplus.annotation.TableName; import com.baomidou.mybatisplus.annotation.TableName;
import com.jjb.saas.framework.auth.utils.AuthContext; import com.jjb.saas.framework.auth.utils.AuthContext;
import com.jjb.saas.framework.repository.basedo.BaseDO; import com.jjb.saas.framework.repository.basedo.BaseDO;
@ -69,6 +70,10 @@ public class EightworkInfoDO extends BaseDO {
private Long departmentId; private Long departmentId;
private String departmentName; private String departmentName;
@ApiModelProperty(value = "服务单位")
@TableField(exist = false)
private String corpinfoName;
public EightworkInfoDO(String workId) { public EightworkInfoDO(String workId) {
this.workId = workId; this.workId = workId;
} }

View File

@ -32,7 +32,12 @@ public class ConfinedSpaceRepositoryImpl extends BaseRepositoryImpl<ConfinedSpac
@Override @Override
public PageResponse<ConfinedSpaceDO> listPage(Map<String, Object> params) { public PageResponse<ConfinedSpaceDO> listPage(Map<String, Object> params) {
Page<Map<String,Object>> page = new Page<>(Integer.parseInt(params.get("pageIndex").toString()),Integer.parseInt(params.get("pageSize").toString())); Page<Map<String,Object>> page = new Page<>(Integer.parseInt(params.get("pageIndex").toString()),Integer.parseInt(params.get("pageSize").toString()));
IPage<ConfinedSpaceDO> iPage = confinedSpaceMapper.listPage(page, params,"confinedspacework-ledger-qy-list"); String menuPerms = "";
if (!org.springframework.util.ObjectUtils.isEmpty(params.get("menuPath"))){
menuPerms = MenuEnum.getMenuKeyByPath(params.get("menuPath").toString());
}
// IPage<ConfinedSpaceDO> iPage = confinedSpaceMapper.listPage(page, params,"confinedspacework-ledger-qy-list");
IPage<ConfinedSpaceDO> iPage = confinedSpaceMapper.listPage(page, params,menuPerms);
return PageHelper.pageToResponse(iPage, iPage.getRecords()); return PageHelper.pageToResponse(iPage, iPage.getRecords());
} }
} }

View File

@ -4,8 +4,9 @@
<mapper namespace="com.zcloud.eightwork.persistence.mapper.EightworkInfoMapper"> <mapper namespace="com.zcloud.eightwork.persistence.mapper.EightworkInfoMapper">
<select id="listPage" resultType="com.zcloud.eightwork.persistence.dataobject.EightworkInfoDO"> <select id="listPage" resultType="com.zcloud.eightwork.persistence.dataobject.EightworkInfoDO">
select t.* select t.*,c.corp_name as corpinfoName
from eightwork_info t from eightwork_info t
left join vi_corp_info c on t.corpinfo_id = c.id
where t.delete_enum = 'FALSE' where t.delete_enum = 'FALSE'
and t.status !=0 and t.status !=0
<if test="params.eqWorkType != null and params.eqWorkType != ''"> <if test="params.eqWorkType != null and params.eqWorkType != ''">