feat: There is no way the task exec
This commit is contained in:
+21
@@ -0,0 +1,21 @@
|
||||
package com.ydw.bat.wkflow.business_main.datas.controller;
|
||||
|
||||
|
||||
import org.springframework.web.bind.annotation.RequestMapping;
|
||||
|
||||
import org.springframework.web.bind.annotation.RestController;
|
||||
|
||||
/**
|
||||
* <p>
|
||||
* OA 干活任务执行表 前端控制器
|
||||
* </p>
|
||||
*
|
||||
* @author Super_liu
|
||||
* @since 2021-09-24
|
||||
*/
|
||||
@RestController
|
||||
@RequestMapping("/oaTaskExec")
|
||||
public class OaTaskExecController {
|
||||
|
||||
}
|
||||
|
||||
@@ -6,6 +6,8 @@ import com.baomidou.mybatisplus.annotation.TableId;
|
||||
import java.time.LocalDateTime;
|
||||
import com.baomidou.mybatisplus.annotation.TableField;
|
||||
import java.io.Serializable;
|
||||
|
||||
import com.fasterxml.jackson.annotation.JsonFormat;
|
||||
import io.swagger.annotations.ApiModel;
|
||||
import io.swagger.annotations.ApiModelProperty;
|
||||
import lombok.Data;
|
||||
@@ -92,4 +94,17 @@ public class BusProcessNew implements Serializable {
|
||||
@TableField( exist = false)
|
||||
@ApiModelProperty(value = "OA link")
|
||||
private String link;
|
||||
|
||||
@TableField( exist = false)
|
||||
@ApiModelProperty(value = "干活任务截止时间")
|
||||
@JsonFormat(timezone = "GMT+8", pattern = "yyyy-MM-dd")
|
||||
private String endTime;
|
||||
|
||||
@TableField( exist = false)
|
||||
@ApiModelProperty(value = "任务状态 1 审批任务 2 干活任务")
|
||||
private int taskStatus;
|
||||
|
||||
@TableField( exist = false)
|
||||
@ApiModelProperty(value = "维度 1 3天内 2 3天外")
|
||||
private int execType;
|
||||
}
|
||||
|
||||
@@ -0,0 +1,85 @@
|
||||
package com.ydw.bat.wkflow.business_main.datas.entity;
|
||||
|
||||
import com.baomidou.mybatisplus.annotation.TableId;
|
||||
import java.time.LocalDateTime;
|
||||
import com.baomidou.mybatisplus.annotation.TableField;
|
||||
import java.io.Serializable;
|
||||
import java.util.Date;
|
||||
|
||||
import com.fasterxml.jackson.annotation.JsonFormat;
|
||||
import io.swagger.annotations.ApiModel;
|
||||
import io.swagger.annotations.ApiModelProperty;
|
||||
import lombok.Data;
|
||||
import lombok.EqualsAndHashCode;
|
||||
import lombok.experimental.Accessors;
|
||||
|
||||
/**
|
||||
* <p>
|
||||
* OA 干活任务执行表
|
||||
* </p>
|
||||
*
|
||||
* @author Super_liu
|
||||
* @since 2021-09-24
|
||||
*/
|
||||
@Data
|
||||
@EqualsAndHashCode(callSuper = false)
|
||||
@Accessors(chain = true)
|
||||
@ApiModel(value="OaTaskExec对象", description="OA 干活任务执行表")
|
||||
public class OaTaskExec implements Serializable {
|
||||
|
||||
private static final long serialVersionUID=1L;
|
||||
|
||||
@ApiModelProperty(value = "主键")
|
||||
@TableId("ID")
|
||||
private String id;
|
||||
|
||||
@ApiModelProperty(value = "执行维度 1 3天内 2 3天外")
|
||||
@TableField("EXEC_TYPE")
|
||||
private int execType;
|
||||
|
||||
@ApiModelProperty(value = "待办ID")
|
||||
@TableField("TODO_ID")
|
||||
private String todoId;
|
||||
|
||||
@ApiModelProperty(value = "待办用户ID")
|
||||
@TableField("USER_ID")
|
||||
private String userId;
|
||||
|
||||
@ApiModelProperty(value = "待办对象JSON")
|
||||
@TableField("MESG")
|
||||
private String mesg;
|
||||
|
||||
@ApiModelProperty(value = "执行状态 0 未启动 1 已启动 2 已完成")
|
||||
@TableField("EXEC_STATUS")
|
||||
private int execStatus;
|
||||
|
||||
@ApiModelProperty(value = "执行时间")
|
||||
@TableField("EXEC_TIME")
|
||||
@JsonFormat(timezone = "GMT+8", pattern = "yyyy-MM-dd")
|
||||
private String execTime;
|
||||
|
||||
@ApiModelProperty(value = "截止时间")
|
||||
@TableField("END_TIME")
|
||||
@JsonFormat(timezone = "GMT+8", pattern = "yyyy-MM-dd")
|
||||
private String endTime;
|
||||
|
||||
@ApiModelProperty(value = "创建时间")
|
||||
@TableField("CREATE_TIME")
|
||||
@JsonFormat(timezone = "GMT+8", pattern = "yyyy-MM-dd")
|
||||
private String createTime;
|
||||
|
||||
@ApiModelProperty(value = "更新时间")
|
||||
@TableField("UPDATE_TIME")
|
||||
@JsonFormat(timezone = "GMT+8", pattern = "yyyy-MM-dd")
|
||||
private String updateTime;
|
||||
|
||||
@ApiModelProperty(value = "参数1")
|
||||
@TableField("PARAM1")
|
||||
private int param1;
|
||||
|
||||
@ApiModelProperty(value = "参数2")
|
||||
@TableField("PARAM2")
|
||||
private String param2;
|
||||
|
||||
|
||||
}
|
||||
@@ -0,0 +1,16 @@
|
||||
package com.ydw.bat.wkflow.business_main.datas.mapper;
|
||||
|
||||
import com.ydw.bat.wkflow.business_main.datas.entity.OaTaskExec;
|
||||
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
|
||||
|
||||
/**
|
||||
* <p>
|
||||
* OA 干活任务执行表 Mapper 接口
|
||||
* </p>
|
||||
*
|
||||
* @author Super_liu
|
||||
* @since 2021-09-24
|
||||
*/
|
||||
public interface OaTaskExecMapper extends BaseMapper<OaTaskExec> {
|
||||
|
||||
}
|
||||
@@ -0,0 +1,16 @@
|
||||
package com.ydw.bat.wkflow.business_main.datas.service;
|
||||
|
||||
import com.ydw.bat.wkflow.business_main.datas.entity.OaTaskExec;
|
||||
import com.baomidou.mybatisplus.extension.service.IService;
|
||||
|
||||
/**
|
||||
* <p>
|
||||
* OA 干活任务执行表 服务类
|
||||
* </p>
|
||||
*
|
||||
* @author Super_liu
|
||||
* @since 2021-09-24
|
||||
*/
|
||||
public interface IOaTaskExecService extends IService<OaTaskExec> {
|
||||
|
||||
}
|
||||
+20
@@ -0,0 +1,20 @@
|
||||
package com.ydw.bat.wkflow.business_main.datas.service.impl;
|
||||
|
||||
import com.ydw.bat.wkflow.business_main.datas.entity.OaTaskExec;
|
||||
import com.ydw.bat.wkflow.business_main.datas.mapper.OaTaskExecMapper;
|
||||
import com.ydw.bat.wkflow.business_main.datas.service.IOaTaskExecService;
|
||||
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
|
||||
import org.springframework.stereotype.Service;
|
||||
|
||||
/**
|
||||
* <p>
|
||||
* OA 干活任务执行表 服务实现类
|
||||
* </p>
|
||||
*
|
||||
* @author Super_liu
|
||||
* @since 2021-09-24
|
||||
*/
|
||||
@Service
|
||||
public class OaTaskExecServiceImpl extends ServiceImpl<OaTaskExecMapper, OaTaskExec> implements IOaTaskExecService {
|
||||
|
||||
}
|
||||
@@ -3,15 +3,14 @@ package com.ydw.bat.wkflow.business_mq.service;
|
||||
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
|
||||
import com.rabbitmq.client.Channel;
|
||||
import com.ydw.bat.wkflow.business_auth.LawsUserInfoService;
|
||||
import com.ydw.bat.wkflow.business_main.datas.entity.BusProcessNew;
|
||||
import com.ydw.bat.wkflow.business_main.datas.entity.ResponseMessage;
|
||||
import com.ydw.bat.wkflow.business_main.datas.entity.SendTodoLog;
|
||||
import com.ydw.bat.wkflow.business_main.datas.entity.UserVO;
|
||||
import com.ydw.bat.wkflow.business_main.datas.entity.*;
|
||||
import com.ydw.bat.wkflow.business_main.datas.mapper.SendTodoLogMapper;
|
||||
import com.ydw.bat.wkflow.business_main.datas.service.IOaTaskExecService;
|
||||
import com.ydw.bat.wkflow.business_oa.utils.EmailUtils;
|
||||
import com.ydw.bat.wkflow.business_oa.webService.service.WebServiceOAService;
|
||||
import com.ydw.bat.wkflow.business_oa.webService.todoResult.NotifyTodoAppResult;
|
||||
import net.sf.json.JSONObject;
|
||||
import org.apache.commons.lang3.StringUtils;
|
||||
import org.apache.commons.lang3.exception.ExceptionUtils;
|
||||
import org.slf4j.Logger;
|
||||
import org.slf4j.LoggerFactory;
|
||||
@@ -25,6 +24,9 @@ import org.springframework.messaging.Message;
|
||||
import org.springframework.stereotype.Component;
|
||||
|
||||
import java.text.SimpleDateFormat;
|
||||
import java.time.LocalDate;
|
||||
import java.time.format.DateTimeFormatter;
|
||||
import java.time.temporal.ChronoUnit;
|
||||
import java.util.ArrayList;
|
||||
import java.util.Date;
|
||||
import java.util.List;
|
||||
@@ -46,6 +48,9 @@ public class SendMQService {
|
||||
@Autowired
|
||||
private SendTodoLogMapper sendTodoLogMapper;
|
||||
|
||||
@Autowired
|
||||
private IOaTaskExecService oaTaskExecService;
|
||||
|
||||
@Autowired
|
||||
private LawsUserInfoService lawsUserInfoService;
|
||||
|
||||
@@ -57,7 +62,28 @@ public class SendMQService {
|
||||
try{
|
||||
try{
|
||||
Thread.sleep(5000);
|
||||
insertOrUpdateInfo(object);
|
||||
if(object.getTaskStatus() == 2 && object.getEndTime() != null && StringUtils.isNotBlank(object.getEndTime())){
|
||||
DateTimeFormatter fmt = DateTimeFormatter.ofPattern("yyyy-MM-dd");
|
||||
SimpleDateFormat sdf = new SimpleDateFormat("yyy-MM-dd HH:mm:ss");
|
||||
LocalDate startDate = LocalDate.parse(new SimpleDateFormat("yyyy-MM-dd").format(new Date()),fmt);
|
||||
LocalDate endDate = LocalDate.parse(object.getEndTime(),fmt);
|
||||
int days = (int) startDate.until(endDate, ChronoUnit.DAYS);
|
||||
// 3 天 外
|
||||
if(days > 3){
|
||||
// 待
|
||||
OaTaskExec oaTaskExec = new OaTaskExec();
|
||||
oaTaskExec.setExecType(2);
|
||||
oaTaskExec.setCreateTime(sdf.format(new Date()));
|
||||
oaTaskExec.setUpdateTime(sdf.format(new Date()));
|
||||
oaTaskExecService.save(oaTaskExec);
|
||||
}else {
|
||||
// 3 天 内 发送 OA 待办
|
||||
insertOrUpdateInfo(object);
|
||||
}
|
||||
}else {
|
||||
// 正常逻辑发送 OA 待办
|
||||
insertOrUpdateInfo(object);
|
||||
}
|
||||
}catch(InterruptedException e){
|
||||
logger.error(e.toString());
|
||||
Thread.currentThread().interrupt();
|
||||
|
||||
@@ -0,0 +1,5 @@
|
||||
<?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.ydw.bat.wkflow.business_main.datas.mapper.OaTaskExecMapper">
|
||||
|
||||
</mapper>
|
||||
Reference in New Issue
Block a user