Commit 70a023f7 by guominglei

修改引用代码

parent fbc522fa
package com.byit.controller;
import com.byit.model.vo.JobFlowVo;
import com.byit.service.JobFlowService;
import com.byit.model.vo.FlowVo;
import com.byit.model.vo.NodeVo;
import com.byit.service.FlowService;
import io.swagger.annotations.Api;
import io.swagger.annotations.ApiOperation;
import org.springframework.web.bind.annotation.PostMapping;
......@@ -23,19 +24,19 @@ import java.util.List;
public class FlowController {
@Resource
private JobFlowService flowService;
private FlowService flowService;
@PostMapping("save")
@ApiOperation("保存工作流信息")
public String saveFlow(@RequestBody JobFlowVo jobFlow){
flowService.saveJobFlow(jobFlow);
public String saveFlow(@RequestBody FlowVo flowVo){
flowService.saveJobFlow(flowVo);
return "SUCCESS";
}
@PostMapping("create")
@ApiOperation("创建工作流")
public String createFlow(@RequestBody JobFlowVo jobFlow){
flowService.createFlow(jobFlow);
public String createFlow(@RequestBody FlowVo flowVo){
flowService.createFlow(flowVo);
return "SUCCESS";
}
......@@ -48,13 +49,20 @@ public class FlowController {
@PostMapping("get")
@ApiOperation("查询工作流")
public JobFlowVo getFlow(@RequestBody Integer flowId){
JobFlowVo flow = flowService.getFlowId(flowId);
public NodeVo getFlow(@RequestBody Integer flowId){
NodeVo flow = flowService.getFlowId(flowId);
return null;
}
@PostMapping("start")
@ApiOperation("启动工作流的调度")
public Boolean startFlow(@RequestBody FlowVo flowVo){
Boolean result = flowService.startFlow(flowVo);
return result;
}
@PostMapping("find")
public List<JobFlowVo> findFlow(@RequestBody Integer workSpaceId){
public List<NodeVo> findFlow(@RequestBody Integer workSpaceId){
return null;
}
......
......@@ -145,6 +145,12 @@ public class Flow implements Serializable {
private Integer remainingCount;
/**
* 节点是否跟随任务流,1跟随 2不跟随
*/
@ApiModelProperty("节点是否跟随任务流,1跟随 2不跟随")
private String scheduleFollow;
/**
*/
private static final long serialVersionUID = 1L;
}
\ No newline at end of file
package com.byit.model.vo;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import java.io.Serializable;
import java.util.Date;
import java.util.List;
/**
* @description: 工作流VO类
* @author: gml
* @create: 2019-12-23 15:39
*
*/
public class JobFlowVo implements Serializable {
@ApiModel
@Data
public class FlowVo implements Serializable {
/**
* 当前版本工作流主键
*/
......@@ -24,6 +27,12 @@ public class JobFlowVo implements Serializable {
private String alarmEmail;
/**
* 当前工作流版本的告警的时机(0 不告警, 1 完成时告警, 2 失败时告警, 3 成功时告警)
*/
@ApiModelProperty("当前工作流版本的告警的时机(0 不告警, 1 完成时告警, 2 失败时告警, 3 成功时告警)")
private String alarmlAction;
/**
* 执行类型 周期执行1 手动执行2
*/
@ApiModelProperty("执行类型 周期执行1 手动执行2")
......@@ -48,9 +57,9 @@ public class JobFlowVo implements Serializable {
private String flowName;
/**
* 档期啊版本的工作流的超时时间
* 工作流的超时时间
*/
@ApiModelProperty("工作流的超时时间")
@ApiModelProperty("工作流的超时时间")
private Long flowTimeout;
/**
......@@ -71,17 +80,6 @@ public class JobFlowVo implements Serializable {
@ApiModelProperty("是否是顶级工作流 0 否, 1 是")
private String isTop;
/**
* 当前工作流版本的告警的时机
*/
@ApiModelProperty("当前工作流版本的告警的时机")
private String mailAction;
/**
* 节点是否跟随任务流,1跟随 2不跟随
*/
@ApiModelProperty("节点是否跟随任务流,1跟随 2不跟随")
private String nodeDateIsFollowFlow;
/**
* 设置任务的优先级,1最低 2最高
......@@ -90,10 +88,10 @@ public class JobFlowVo implements Serializable {
private String priority;
/**
* 当前工作流版本额重复次数
* 当前版本的工作流的下次执行时间
*/
@ApiModelProperty("当前工作流版本额重复次数")
private Integer repeatCount;
@ApiModelProperty("当前版本的工作流的下次执行时间")
private Long triggerNextTime;
/**
* 工作空间的id
......@@ -102,13 +100,54 @@ public class JobFlowVo implements Serializable {
private Integer workspaceId;
/**
* 下属节点
* 创建人
*/
@ApiModelProperty("工作空间的id")
private List<JobFlowNodeVo> nodeVoList;
@ApiModelProperty("创建人")
private String author;
/**
* 创建时间
*/
private static final long serialVersionUID = 1L;
@ApiModelProperty("创建时间")
private Date addTime;
/**
* 是否启动 0不启动 1启动
*/
@ApiModelProperty("是否启动 0不启动 1启动")
private String startUp;
/**
* 责任人
*/
@ApiModelProperty("责任人")
private String principal;
}
/**
* 版本名称
*/
@ApiModelProperty("版本名称")
private String versionName;
/**
* 工作流版本额重复次数
*/
@ApiModelProperty("工作流版本额重复次数")
private Integer repeatCount;
/**
* 剩余执行次数
*/
@ApiModelProperty("剩余执行次数")
private Integer remainingCount;
/**
* 在工作流调度中的节点
*/
@ApiModelProperty("在工作流调度中的节点")
private List<NodeVo> nodeVoList;
/**
*/
private static final long serialVersionUID = 1L;
}
\ No newline at end of file
package com.byit.model.vo;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import java.io.Serializable;
import java.util.Date;
/**
*
* @description: 工作流VO类
* @author: gml
* @create: 2019-12-23 15:39
*/
@ApiModel
@Data
public class JobFlowNodeVo implements Serializable {
public class NodeVo implements Serializable {
/**
* 当前版本节点主键
*/
......@@ -20,28 +18,16 @@ public class JobFlowNodeVo implements Serializable {
private Integer nodeId;
/**
* 当前工作流版本的报警邮箱
*/
@ApiModelProperty("当前工作流版本的报警邮箱")
private String alarmEmail;
/**
* 阻塞策略
*/
@ApiModelProperty("阻塞策略")
private String blockStrategy;
/**
* 调度中心端请求插件时的令牌
*/
@ApiModelProperty("调度中心端请求插件时的令牌")
private String callbackToken;
/**
* 该节点的依赖节点
* 插件端网关令牌
*/
@ApiModelProperty("该节点的依赖节点")
private String dependencyNodes;
@ApiModelProperty("插件端网关令牌")
private String pluginToken;
/**
* 当前节点的失败重试次数
......@@ -56,12 +42,6 @@ public class JobFlowNodeVo implements Serializable {
private Integer flowId;
/**
* 是否跟随任务流 1跟随 2不跟随
*/
@ApiModelProperty("是否跟随任务流 1跟随 2不跟随")
private String followTaskFlow;
/**
* 插件端请求调度中心的令牌
*/
@ApiModelProperty("插件端请求调度中心的令牌")
......@@ -77,13 +57,7 @@ public class JobFlowNodeVo implements Serializable {
* 本地节点(插件方) 的节点的名字
*/
@ApiModelProperty("本地节点(插件方) 的节点的名字")
private String localNodeHandlerName;
/**
* 当前工作流版本的告警的时机
*/
@ApiModelProperty("当前工作流版本的告警的时机")
private String mailAction;
private String handlerName;
/**
* 这个在设置节点执行时间跟随任务流的时候,他是没用的,但是设置不跟随的时候,节点的执行按照他自己的时间执行
......@@ -104,10 +78,10 @@ public class JobFlowNodeVo implements Serializable {
private String nodeName;
/**
* nodeOfFlowId
* 映射的工作流id(当节点为虚节点,有意义)
*/
@ApiModelProperty("nodeOfFlowId")
private Integer nodeOfFlowId;
@ApiModelProperty("映射的工作流id(当节点为虚节点,有意义)")
private Integer mapFlowId;
/**
* 节点的超时时间 -1不超时
......@@ -116,10 +90,10 @@ public class JobFlowNodeVo implements Serializable {
private Long nodeTimeout;
/**
* 节点的类型 node flow
* 是否是虚节点(0 是, 1 否),虚节点代表是内嵌工作流
*/
@ApiModelProperty("节点的类型 node flow")
private String nodeType;
@ApiModelProperty("是否是虚节点(0 是, 1 否),虚节点代表是内嵌工作流")
private String isVirtual;
/**
* 插件端的url集合
......@@ -134,16 +108,22 @@ public class JobFlowNodeVo implements Serializable {
private String priority;
/**
* 当前节点总共重复次数
* 节点剩余执行次数
*/
@ApiModelProperty("当前节点总共重复次数")
@ApiModelProperty("节点剩余执行次数")
private Integer remainingCount;
/**
* 节点可执行次数
*/
@ApiModelProperty("节点可执行次数")
private Integer repeatCount;
/**
* 重试的间隔
* 失败重试的间隔(毫秒)
*/
@ApiModelProperty("重试的间隔")
private Long retryInterval;
@ApiModelProperty("失败重试的间隔(毫秒)")
private Long failedRetryInterval;
/**
* 路由策略
......@@ -188,12 +168,44 @@ public class JobFlowNodeVo implements Serializable {
private Long triggerNextTime;
/**
* 创建人
*/
@ApiModelProperty("创建人")
private String author;
/**
* 创建时间
*/
@ApiModelProperty("创建时间")
private Date addTime;
/**
* 版本名称
*/
@ApiModelProperty("版本名称")
private String versionName;
/**
* 在调度上(0,在 1, 不在)
*/
@ApiModelProperty("在调度上(0,在 1, 不在)")
private String onFork;
/**
* 运行命令
*/
@ApiModelProperty("运行命令")
private String runCommand;
/**
* 源码
*/
@ApiModelProperty("源码")
private String runSource;
/**
*/
private static final long serialVersionUID = 1L;
}
\ No newline at end of file
}
package com.byit.service;
import com.byit.model.JobFlow;
import com.byit.model.vo.JobFlowVo;
import java.util.List;
import com.byit.model.Flow;
import com.byit.model.vo.FlowVo;
import com.byit.model.vo.NodeVo;
/**
* @description: 工作流业务逻辑接口
* @author: gml
* @create: 2019-12-23 17:33
*/
public interface JobFlowService {
public interface FlowService {
/**
* 保存工作流信息
* @param flow
* @param flowVo
* @return
*/
JobFlow saveJobFlow(JobFlowVo flow);
Flow saveJobFlow(FlowVo flowVo);
/**
* 创建工作流
* @param jobFlow
* @param flowVo
*/
JobFlow createFlow(JobFlowVo jobFlow);
Flow createFlow(FlowVo flowVo);
/**
* 更改工作流信息
* @param jobFlow
* @param flowVo
*/
void updateFlow(JobFlowVo jobFlow);
void updateFlow(FlowVo flowVo);
/**
* 真实删除当前表工作流信息
......@@ -42,5 +41,12 @@ public interface JobFlowService {
* @param flowId
* @return
*/
JobFlowVo getFlowId(Integer flowId);
NodeVo getFlowId(Integer flowId);
/**
* 启动工作流
* @param flowVo
* @return
*/
Boolean startFlow(FlowVo flowVo);
}
package com.byit.service.impl;
import com.byit.mapper.JobFlowMapper;
import com.byit.model.JobFlow;
import com.byit.model.JobFlowNode;
import com.byit.model.vo.JobFlowVo;
import com.byit.service.JobFlowService;
import com.byit.mapper.FlowMapper;
import com.byit.model.Flow;
import com.byit.model.Node;
import com.byit.model.vo.FlowVo;
import com.byit.model.vo.NodeVo;
import com.byit.service.FlowService;
import org.springframework.beans.BeanUtils;
import org.springframework.stereotype.Service;
......@@ -17,29 +18,29 @@ import javax.annotation.Resource;
*/
@Service
public class JobFlowServiceImpl implements JobFlowService {
public class FlowServiceImpl implements FlowService {
@Resource
private JobFlowMapper jobFlowMapper;
private FlowMapper flowMapper;
@Override
public JobFlow saveJobFlow(JobFlowVo flow) {
public Flow saveJobFlow(FlowVo flowVo) {
return null;
}
@Override
public JobFlow createFlow(JobFlowVo jobFlow) {
JobFlow flow = new JobFlow();
BeanUtils.copyProperties(jobFlow, flow);
public Flow createFlow(FlowVo flowVo) {
Flow flow = new Flow();
BeanUtils.copyProperties(flowVo, flow);
//获取工作流id
int flowId = jobFlowMapper.insertSelective(flow);
int flowId = flowMapper.insertSelective(flow);
//初始化开始和结束节点
JobFlowNode start = new JobFlowNode();
JobFlowNode end = new JobFlowNode();
Node start = new Node();
Node end = new Node();
start.setFlowId(flowId);
end.setFlowId(flowId);
//如果工作流设置的节点不跟随工作流调度,设置开始和结束节点的调度为工作流的调度时间
if ("2".equals(flow.getNodeDateIsFollowFlow())){
if ("2".equals(flow.getScheduleFollow())){
start.setNodeCron(flow.getFlowCron());
end.setNodeCron(flow.getFlowCron());
}
......@@ -47,7 +48,7 @@ public class JobFlowServiceImpl implements JobFlowService {
}
@Override
public void updateFlow(JobFlowVo jobFlow) {
public void updateFlow(FlowVo flowVo) {
}
......@@ -57,7 +58,12 @@ public class JobFlowServiceImpl implements JobFlowService {
}
@Override
public JobFlowVo getFlowId(Integer flowId) {
public NodeVo getFlowId(Integer flowId) {
return null;
}
@Override
public Boolean startFlow(FlowVo flowVo) {
return null;
}
}
......@@ -25,13 +25,14 @@
<result column="version_name" jdbcType="VARCHAR" property="versionName" />
<result column="repeat_count" jdbcType="INTEGER" property="repeatCount" />
<result column="remaining_count" jdbcType="INTEGER" property="remainingCount" />
<result column="schedule_follow" jdbcType="CHAR" property="scheduleFollow" />
</resultMap>
<sql id="Base_Column_List">
<!-- generated @mbg.generated date: 2019-12-25 -->
flow_id, alarm_email, exec_type, flow_cron, flow_desc, flow_name, flow_node_count,
flow_timeout, is_have_depend, is_inner, is_top, alarml_action, priority, trigger_next_time,
workspace_id, author, add_time, start_up, principal, version_name, repeat_count,
remaining_count
remaining_count, schedule_follow
</sql>
<select id="getById" parameterType="java.lang.Integer" resultMap="BaseResultMap">
<!-- generated @mbg.generated date: 2019-12-25 -->
......@@ -45,6 +46,7 @@
delete from flow
where flow_id = #{flowId,jdbcType=INTEGER}
</delete>
<insert id="insertSelective" parameterType="com.byit.model.Flow">
<!-- generated @mbg.generated date: 2019-12-25 -->
insert into flow
......@@ -115,6 +117,9 @@
<if test="remainingCount != null">
remaining_count,
</if>
<if test="scheduleFollow != null">
schedule_follow,
</if>
</trim>
<trim prefix="values (" suffix=")" suffixOverrides=",">
<if test="flowId != null">
......@@ -183,6 +188,9 @@
<if test="remainingCount != null">
#{remainingCount,jdbcType=INTEGER},
</if>
<if test="scheduleFollow != null">
#{scheduleFollow,jdbcType=CHAR},
</if>
</trim>
</insert>
<update id="updateByIdSelective" parameterType="com.byit.model.Flow">
......@@ -252,7 +260,11 @@
<if test="remainingCount != null">
remaining_count = #{remainingCount,jdbcType=INTEGER},
</if>
<if test="scheduleFollow != null">
schedule_follow = #{scheduleFollow,jdbcType=CHAR},
</if>
</set>
where flow_id = #{flowId,jdbcType=INTEGER}
</update>
</mapper>
\ No newline at end of file
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment