待办中心开发-待办列表接口修改。
This commit is contained in:
@@ -1218,3 +1218,7 @@ CREATE TABLE `laws_weilai`.`process_info_detail` (
|
|||||||
`flow_type` varchar(32) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT NULL COMMENT '流程类型',
|
`flow_type` varchar(32) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT NULL COMMENT '流程类型',
|
||||||
PRIMARY KEY (`id`) USING BTREE
|
PRIMARY KEY (`id`) USING BTREE
|
||||||
) ENGINE = InnoDB CHARACTER SET = utf8mb4 COLLATE = utf8mb4_general_ci COMMENT = '流程信息明细表' ROW_FORMAT = Dynamic;
|
) ENGINE = InnoDB CHARACTER SET = utf8mb4 COLLATE = utf8mb4_general_ci COMMENT = '流程信息明细表' ROW_FORMAT = Dynamic;
|
||||||
|
|
||||||
|
-- 待办中心 流程信息明细表 增加字段 2022-10-18 未同步生产环境
|
||||||
|
ALTER TABLE `laws_weilai`.`process_info_detail`
|
||||||
|
ADD COLUMN `end_time` datetime NULL COMMENT '截止时间' AFTER `flow_type`;
|
||||||
|
|||||||
+16
-15
@@ -1393,6 +1393,12 @@ public class ProjectLawsInventoryEOServiceImpl extends ServiceImpl<ProjectLawsIn
|
|||||||
SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd");
|
SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd");
|
||||||
//清单确认截止时间
|
//清单确认截止时间
|
||||||
String inventoryAffirmDueDate = json.getString("inventoryAffirmDueDate");
|
String inventoryAffirmDueDate = json.getString("inventoryAffirmDueDate");
|
||||||
|
Date endTime = new Date();
|
||||||
|
try {
|
||||||
|
endTime = sdf.parse(inventoryAffirmDueDate);
|
||||||
|
} catch (ParseException e) {
|
||||||
|
e.printStackTrace();
|
||||||
|
}
|
||||||
|
|
||||||
QueryWrapper<ProjectLawsInventoryEO> queryWrapper = new QueryWrapper<>();
|
QueryWrapper<ProjectLawsInventoryEO> queryWrapper = new QueryWrapper<>();
|
||||||
if(StringUtils.isNotEmpty(ids)){
|
if(StringUtils.isNotEmpty(ids)){
|
||||||
@@ -1404,9 +1410,7 @@ public class ProjectLawsInventoryEOServiceImpl extends ServiceImpl<ProjectLawsIn
|
|||||||
List<String> userIdList = new ArrayList<>();
|
List<String> userIdList = new ArrayList<>();
|
||||||
List<ProcessInfoDetailEO> processInfoDetailEOList = new ArrayList<>();
|
List<ProcessInfoDetailEO> processInfoDetailEOList = new ArrayList<>();
|
||||||
for (ProjectLawsInventoryEO projectLawsInventoryEO : projectLawsInventoryEOS) {
|
for (ProjectLawsInventoryEO projectLawsInventoryEO : projectLawsInventoryEOS) {
|
||||||
List<String> tempUserIdList = new ArrayList<>();
|
//未发起或拒绝 可以发起清单确认
|
||||||
|
|
||||||
//tempUserIdList 未发起或拒绝 可以发起清单确认
|
|
||||||
boolean checkStatus = (StringUtils.equals(projectLawsInventoryEO.getInventoryAffirmStatus(),InventoryAffirmStatusEnum.NOT_STARTED.getValue())
|
boolean checkStatus = (StringUtils.equals(projectLawsInventoryEO.getInventoryAffirmStatus(),InventoryAffirmStatusEnum.NOT_STARTED.getValue())
|
||||||
||StringUtils.equals(projectLawsInventoryEO.getInventoryAffirmStatus(),InventoryAffirmStatusEnum.REJECTED.getValue()));
|
||StringUtils.equals(projectLawsInventoryEO.getInventoryAffirmStatus(),InventoryAffirmStatusEnum.REJECTED.getValue()));
|
||||||
//如果该数据的法规工程师、认证工程师都不为空
|
//如果该数据的法规工程师、认证工程师都不为空
|
||||||
@@ -1436,6 +1440,7 @@ public class ProjectLawsInventoryEOServiceImpl extends ServiceImpl<ProjectLawsIn
|
|||||||
processInfoDetailEO.setProjectLawsInventoryId(projectLawsInventoryEO.getId());
|
processInfoDetailEO.setProjectLawsInventoryId(projectLawsInventoryEO.getId());
|
||||||
processInfoDetailEO.setUserId(projectLawsInventoryEO.getHomologationEngineerId());
|
processInfoDetailEO.setUserId(projectLawsInventoryEO.getHomologationEngineerId());
|
||||||
processInfoDetailEO.setTaskDefinitionKey(InventoryAffirmNodeEnum.HOMOLOGATION_ENGINEER_AUDIT.getKey());
|
processInfoDetailEO.setTaskDefinitionKey(InventoryAffirmNodeEnum.HOMOLOGATION_ENGINEER_AUDIT.getKey());
|
||||||
|
processInfoDetailEO.setEndTime(endTime);
|
||||||
processInfoDetailEOList.add(processInfoDetailEO);
|
processInfoDetailEOList.add(processInfoDetailEO);
|
||||||
}
|
}
|
||||||
if(regulationOwnerFlag){
|
if(regulationOwnerFlag){
|
||||||
@@ -1446,6 +1451,7 @@ public class ProjectLawsInventoryEOServiceImpl extends ServiceImpl<ProjectLawsIn
|
|||||||
processInfoDetailEO.setProjectLawsInventoryId(projectLawsInventoryEO.getId());
|
processInfoDetailEO.setProjectLawsInventoryId(projectLawsInventoryEO.getId());
|
||||||
processInfoDetailEO.setUserId(projectLawsInventoryEO.getRegulationOwnerId());
|
processInfoDetailEO.setUserId(projectLawsInventoryEO.getRegulationOwnerId());
|
||||||
processInfoDetailEO.setTaskDefinitionKey(InventoryAffirmNodeEnum.REGULATION_OWNER_AUDIT.getKey());
|
processInfoDetailEO.setTaskDefinitionKey(InventoryAffirmNodeEnum.REGULATION_OWNER_AUDIT.getKey());
|
||||||
|
processInfoDetailEO.setEndTime(endTime);
|
||||||
processInfoDetailEOList.add(processInfoDetailEO);
|
processInfoDetailEOList.add(processInfoDetailEO);
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -1497,8 +1503,8 @@ public class ProjectLawsInventoryEOServiceImpl extends ServiceImpl<ProjectLawsIn
|
|||||||
|
|
||||||
//往待办中心添加数据。
|
//往待办中心添加数据。
|
||||||
ProcessInfoEO processInfoEO = new ProcessInfoEO();
|
ProcessInfoEO processInfoEO = new ProcessInfoEO();
|
||||||
this.addProcessInfo(processInfoEO,projectLibraryId,inventoryAffirmDueDate);
|
this.addProcessInfo(processInfoEO,projectLibraryId,endTime);
|
||||||
this.addProcessInfoDetail(processInfoEO.getId(),processInfoDetailEOList);
|
this.addProcessInfoDetail(processInfoEO.getId(),processInfoDetailEOList,endTime);
|
||||||
}
|
}
|
||||||
|
|
||||||
result = "发起清单确认";
|
result = "发起清单确认";
|
||||||
@@ -8623,9 +8629,9 @@ public class ProjectLawsInventoryEOServiceImpl extends ServiceImpl<ProjectLawsIn
|
|||||||
* 添加流程信息
|
* 添加流程信息
|
||||||
* @param processInfoEO
|
* @param processInfoEO
|
||||||
* @param projectLibraryId
|
* @param projectLibraryId
|
||||||
* @param inventoryAffirmDueDate
|
* @param endTime
|
||||||
*/
|
*/
|
||||||
public void addProcessInfo(ProcessInfoEO processInfoEO,String projectLibraryId,String inventoryAffirmDueDate){
|
public void addProcessInfo(ProcessInfoEO processInfoEO,String projectLibraryId,Date endTime){
|
||||||
String id = null;
|
String id = null;
|
||||||
//查询当前项目之前有没有启动过清单确认
|
//查询当前项目之前有没有启动过清单确认
|
||||||
QueryWrapper<ProcessInfoEO> processInfoQueryWrap = new QueryWrapper<>();
|
QueryWrapper<ProcessInfoEO> processInfoQueryWrap = new QueryWrapper<>();
|
||||||
@@ -8643,13 +8649,6 @@ public class ProjectLawsInventoryEOServiceImpl extends ServiceImpl<ProjectLawsIn
|
|||||||
processInfoEO.setId(id);
|
processInfoEO.setId(id);
|
||||||
processInfoEO.setProjectLibraryId(projectLibraryId);
|
processInfoEO.setProjectLibraryId(projectLibraryId);
|
||||||
|
|
||||||
SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd");
|
|
||||||
Date endTime = new Date();
|
|
||||||
try {
|
|
||||||
endTime = sdf.parse(inventoryAffirmDueDate);
|
|
||||||
} catch (ParseException e) {
|
|
||||||
e.printStackTrace();
|
|
||||||
}
|
|
||||||
processInfoEO.setEndTime(endTime);
|
processInfoEO.setEndTime(endTime);
|
||||||
processInfoEO.setStatus(TodoCenterStatusEnum.LIST_TO_CONFIRM.getValue());
|
processInfoEO.setStatus(TodoCenterStatusEnum.LIST_TO_CONFIRM.getValue());
|
||||||
processInfoEO.setFlowType(FlowTypeEnum.QDQR.getValue());
|
processInfoEO.setFlowType(FlowTypeEnum.QDQR.getValue());
|
||||||
@@ -8663,8 +8662,9 @@ public class ProjectLawsInventoryEOServiceImpl extends ServiceImpl<ProjectLawsIn
|
|||||||
* 添加流程信息,用户的待办、已办信息。
|
* 添加流程信息,用户的待办、已办信息。
|
||||||
* @param processInfoId
|
* @param processInfoId
|
||||||
* @param processInfoDetailEOList
|
* @param processInfoDetailEOList
|
||||||
|
* @param endTime
|
||||||
*/
|
*/
|
||||||
public void addProcessInfoDetail(String processInfoId,List<ProcessInfoDetailEO> processInfoDetailEOList){
|
public void addProcessInfoDetail(String processInfoId,List<ProcessInfoDetailEO> processInfoDetailEOList,Date endTime){
|
||||||
LoginUser currentUser = (LoginUser) SecurityUtils.getSubject().getPrincipal();
|
LoginUser currentUser = (LoginUser) SecurityUtils.getSubject().getPrincipal();
|
||||||
|
|
||||||
processInfoDetailEOList.forEach(detail -> {
|
processInfoDetailEOList.forEach(detail -> {
|
||||||
@@ -8691,6 +8691,7 @@ public class ProjectLawsInventoryEOServiceImpl extends ServiceImpl<ProjectLawsIn
|
|||||||
processInfoDetailEO.setCreateTime(new Date());
|
processInfoDetailEO.setCreateTime(new Date());
|
||||||
processInfoDetailEO.setUpdateTime(new Date());
|
processInfoDetailEO.setUpdateTime(new Date());
|
||||||
processInfoDetailEO.setCreateBy(currentUser.getId());
|
processInfoDetailEO.setCreateBy(currentUser.getId());
|
||||||
|
processInfoDetailEO.setEndTime(endTime);
|
||||||
processInfoDetailEOList.add(processInfoDetailEO);
|
processInfoDetailEOList.add(processInfoDetailEO);
|
||||||
|
|
||||||
//删除studio在这个项目的清单确认已办任务。
|
//删除studio在这个项目的清单确认已办任务。
|
||||||
|
|||||||
+6
@@ -113,4 +113,10 @@ public class ProcessInfoDetailEO implements Serializable {
|
|||||||
@ApiModelProperty(value = "流程类型")
|
@ApiModelProperty(value = "流程类型")
|
||||||
private java.lang.String flowType;
|
private java.lang.String flowType;
|
||||||
|
|
||||||
|
/**截止时间*/
|
||||||
|
@Excel(name = "截止时间", width = 15, format = "yyyy-MM-dd")
|
||||||
|
@JsonFormat(timezone = "GMT+8",pattern = "yyyy-MM-dd")
|
||||||
|
@DateTimeFormat(pattern="yyyy-MM-dd")
|
||||||
|
@ApiModelProperty(value = "截止时间")
|
||||||
|
private java.util.Date endTime;
|
||||||
}
|
}
|
||||||
|
|||||||
+6
@@ -126,4 +126,10 @@ public class ProcessInfoEO implements Serializable {
|
|||||||
/**年份*/
|
/**年份*/
|
||||||
@TableField(exist = false)
|
@TableField(exist = false)
|
||||||
private String yearName;
|
private String yearName;
|
||||||
|
/**待办id*/
|
||||||
|
@TableField(exist = false)
|
||||||
|
private String taskId;
|
||||||
|
/**任务节点定义key*/
|
||||||
|
@TableField(exist = false)
|
||||||
|
private String taskDefinitionKey;
|
||||||
}
|
}
|
||||||
|
|||||||
+2
-2
@@ -1,10 +1,8 @@
|
|||||||
package com.jero.modules.todoCenter.mapper;
|
package com.jero.modules.todoCenter.mapper;
|
||||||
|
|
||||||
import java.util.List;
|
|
||||||
import java.util.Map;
|
import java.util.Map;
|
||||||
|
|
||||||
import com.baomidou.mybatisplus.core.metadata.IPage;
|
import com.baomidou.mybatisplus.core.metadata.IPage;
|
||||||
import org.apache.ibatis.annotations.Param;
|
|
||||||
import com.jero.modules.todoCenter.entity.ProcessInfoEO;
|
import com.jero.modules.todoCenter.entity.ProcessInfoEO;
|
||||||
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
|
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
|
||||||
|
|
||||||
@@ -17,4 +15,6 @@ import com.baomidou.mybatisplus.core.mapper.BaseMapper;
|
|||||||
public interface ProcessInfoEOMapper extends BaseMapper<ProcessInfoEO> {
|
public interface ProcessInfoEOMapper extends BaseMapper<ProcessInfoEO> {
|
||||||
|
|
||||||
IPage<ProcessInfoEO> queryPageList(IPage page,Map<String, Object> params);
|
IPage<ProcessInfoEO> queryPageList(IPage page,Map<String, Object> params);
|
||||||
|
|
||||||
|
IPage<ProcessInfoEO> queryProjectProcessTodoTaskListList(IPage page,Map<String, Object> params);
|
||||||
}
|
}
|
||||||
|
|||||||
+102
@@ -85,5 +85,107 @@
|
|||||||
left join project_laws_inventory pli on pi.project_laws_inventory_id = pli.id
|
left join project_laws_inventory pli on pi.project_laws_inventory_id = pli.id
|
||||||
LEFT JOIN sys_user createBy on createBy.id = pi.create_by
|
LEFT JOIN sys_user createBy on createBy.id = pi.create_by
|
||||||
<include refid="BaseQuerySql"/>
|
<include refid="BaseQuerySql"/>
|
||||||
|
order by pi.create_time desc
|
||||||
|
</select>
|
||||||
|
<select id="queryProjectProcessTodoTaskListList" resultType="com.jero.modules.todoCenter.entity.ProcessInfoEO">
|
||||||
|
select temp.* from (
|
||||||
|
SELECT
|
||||||
|
pi.id,
|
||||||
|
pi.project_library_id,
|
||||||
|
pi.project_laws_inventory_id,
|
||||||
|
pi.buss_document_library_id,
|
||||||
|
pi.acti_proc_inst_id,
|
||||||
|
pni.project_name,
|
||||||
|
pyni.year_name,
|
||||||
|
pli.serial_number,
|
||||||
|
pli.title,
|
||||||
|
pi.flow_type,
|
||||||
|
createBy.username AS "create_by",
|
||||||
|
pi.end_time,
|
||||||
|
(select detail.task_id from process_info_detail detail where detail.process_info_id = pi.id and detail.user_id = #{params.currentUserId} and detail.`status` = 'NotDone' limit 1) as task_id,
|
||||||
|
(select detail.task_definition_key from process_info_detail detail where detail.process_info_id = pi.id and detail.user_id = #{params.currentUserId} and detail.`status` = 'NotDone' limit 1) as task_definition_key,
|
||||||
|
pi.STATUS
|
||||||
|
FROM
|
||||||
|
process_info pi
|
||||||
|
LEFT JOIN project_library_base plb ON plb.id = pi.project_library_id
|
||||||
|
LEFT JOIN project_name_info pni ON pni.id = plb.project_name_id
|
||||||
|
LEFT JOIN project_year_name_info pyni ON pyni.id = plb.year_name_id
|
||||||
|
LEFT JOIN project_laws_inventory pli ON pi.project_laws_inventory_id = pli.id
|
||||||
|
LEFT JOIN sys_user createBy ON createBy.id = pi.create_by
|
||||||
|
where
|
||||||
|
(
|
||||||
|
pi.id IN (
|
||||||
|
SELECT
|
||||||
|
pid.process_info_id
|
||||||
|
FROM
|
||||||
|
process_info_detail pid
|
||||||
|
where
|
||||||
|
pid.user_id = #{params.currentUserId} and pid.status = #{params.taskStatus}
|
||||||
|
)
|
||||||
|
)
|
||||||
|
AND pi.flow_type IN
|
||||||
|
<foreach collection="params.flowTypeList" index="index" item="item" open="(" separator="," close=")">
|
||||||
|
#{item}
|
||||||
|
</foreach>
|
||||||
|
union
|
||||||
|
SELECT
|
||||||
|
pi.id,
|
||||||
|
pi.project_library_id,
|
||||||
|
pi.project_laws_inventory_id,
|
||||||
|
pi.buss_document_library_id,
|
||||||
|
pi.acti_proc_inst_id,
|
||||||
|
pni.project_name,
|
||||||
|
pyni.year_name,
|
||||||
|
pli.serial_number,
|
||||||
|
pli.title,
|
||||||
|
pi.flow_type,
|
||||||
|
createBy.username AS "create_by",
|
||||||
|
(select pid.end_time from process_info_detail pid where pid.process_info_id = pi.id and pid.STATUS = 'NotDone' order by pid.end_time asc limit 1) as end_time,
|
||||||
|
'' as task_id,
|
||||||
|
'' as task_definition_key,
|
||||||
|
pi.STATUS
|
||||||
|
FROM
|
||||||
|
process_info pi
|
||||||
|
LEFT JOIN project_library_base plb ON plb.id = pi.project_library_id
|
||||||
|
LEFT JOIN project_name_info pni ON pni.id = plb.project_name_id
|
||||||
|
LEFT JOIN project_year_name_info pyni ON pyni.id = plb.year_name_id
|
||||||
|
LEFT JOIN project_laws_inventory pli ON pi.project_laws_inventory_id = pli.id
|
||||||
|
LEFT JOIN sys_user createBy ON createBy.id = pi.create_by
|
||||||
|
WHERE
|
||||||
|
(
|
||||||
|
pi.id IN (
|
||||||
|
SELECT
|
||||||
|
pid.process_info_id
|
||||||
|
FROM
|
||||||
|
process_info_detail pid
|
||||||
|
where
|
||||||
|
pid.user_id = #{params.currentUserId} and pid.status = #{params.taskStatus}
|
||||||
|
)
|
||||||
|
)
|
||||||
|
AND pi.flow_type = #{params.qdqrFlowTypeValue}
|
||||||
|
)temp
|
||||||
|
<where>
|
||||||
|
<if test="params.projectName != null and params.projectName !=''">
|
||||||
|
and (
|
||||||
|
temp.project_name like CONCAT(CONCAT('%',#{params.projectName}),'%')
|
||||||
|
or temp.year_name like CONCAT(CONCAT('%',#{params.projectName}),'%')
|
||||||
|
)
|
||||||
|
</if>
|
||||||
|
<if test="params.serialNumber != null and params.serialNumber !=''">
|
||||||
|
and (
|
||||||
|
temp.serial_number like CONCAT(CONCAT('%',#{params.serialNumber}),'%')
|
||||||
|
)
|
||||||
|
</if>
|
||||||
|
<if test="params.flowType != null and params.flowType !=''">
|
||||||
|
and temp.flow_type = #{params.flowType}
|
||||||
|
</if>
|
||||||
|
<if test="params.status != null and params.status !=''">
|
||||||
|
and temp.status = #{params.status}
|
||||||
|
</if>
|
||||||
|
<if test="params.createBy != null and params.createBy != ''">
|
||||||
|
and temp.create_by = #{params.createBy}
|
||||||
|
</if>
|
||||||
|
</where>
|
||||||
|
order by temp.end_time asc
|
||||||
</select>
|
</select>
|
||||||
</mapper>
|
</mapper>
|
||||||
|
|||||||
+6
-2
@@ -150,13 +150,17 @@ public class ProcessInfoEOServiceImpl extends ServiceImpl<ProcessInfoEOMapper, P
|
|||||||
LoginUser currentUser = (LoginUser) SecurityUtils.getSubject().getPrincipal();
|
LoginUser currentUser = (LoginUser) SecurityUtils.getSubject().getPrincipal();
|
||||||
|
|
||||||
List<String> flowTypeList = new ArrayList<>();
|
List<String> flowTypeList = new ArrayList<>();
|
||||||
this.setFlowTypeList(flowTypeList);
|
flowTypeList.add(FlowTypeEnum.RWQRLC.getValue());
|
||||||
|
flowTypeList.add(FlowTypeEnum.SJFHXSHLC.getValue());
|
||||||
|
flowTypeList.add(FlowTypeEnum.YZFHXSCLC.getValue());
|
||||||
|
flowTypeList.add(FlowTypeEnum.PREHOMOQRLC.getValue());
|
||||||
params.put("flowTypeList",flowTypeList);
|
params.put("flowTypeList",flowTypeList);
|
||||||
params.put("taskStatus", TaskStatusEnum.NOT_DONE.getValue());
|
params.put("taskStatus", TaskStatusEnum.NOT_DONE.getValue());
|
||||||
params.put("currentUserId",currentUser.getId());
|
params.put("currentUserId",currentUser.getId());
|
||||||
|
params.put("qdqrFlowTypeValue",FlowTypeEnum.QDQR.getValue());
|
||||||
|
|
||||||
IPage page = new Page(pageNo, pageSize);
|
IPage page = new Page(pageNo, pageSize);
|
||||||
IPage<ProcessInfoEO> result = this.baseMapper.queryPageList(page,params);
|
IPage<ProcessInfoEO> result = this.baseMapper.queryProjectProcessTodoTaskListList(page,params);
|
||||||
this.disposeData(result.getRecords(),cut);
|
this.disposeData(result.getRecords(),cut);
|
||||||
return result;
|
return result;
|
||||||
}
|
}
|
||||||
|
|||||||
Reference in New Issue
Block a user