22 changed files with 615 additions and 8 deletions
@ -0,0 +1,26 @@ |
|||
package com.qs.serve.modules.bpm.controller; |
|||
|
|||
import lombok.AllArgsConstructor; |
|||
import lombok.extern.slf4j.Slf4j; |
|||
import org.springframework.web.bind.annotation.RequestMapping; |
|||
import org.springframework.web.bind.annotation.RestController; |
|||
|
|||
/** |
|||
* 流程定义 |
|||
* @author YenHex |
|||
* @since 2022/8/18 |
|||
*/ |
|||
@Slf4j |
|||
@AllArgsConstructor |
|||
@RestController |
|||
@RequestMapping("bpm/definition") |
|||
public class BpmFlowDefinitionController { |
|||
|
|||
//流程定义列表
|
|||
//保存流程
|
|||
//获取流程
|
|||
//删除流程
|
|||
//启动流程实例
|
|||
//激活或挂起流程定义
|
|||
|
|||
} |
@ -0,0 +1,103 @@ |
|||
package com.qs.serve.modules.bpm.controller; |
|||
|
|||
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; |
|||
import com.qs.serve.common.model.annotation.SysLog; |
|||
import com.qs.serve.common.model.dto.PageVo; |
|||
import com.qs.serve.common.model.dto.R; |
|||
import com.qs.serve.common.model.enums.BizType; |
|||
import com.qs.serve.common.model.enums.SystemModule; |
|||
import com.qs.serve.common.util.PageUtil; |
|||
import lombok.AllArgsConstructor; |
|||
import lombok.extern.slf4j.Slf4j; |
|||
import org.springframework.security.access.prepost.PreAuthorize; |
|||
import org.springframework.web.bind.annotation.*; |
|||
|
|||
import com.qs.serve.modules.bpm.entity.BpmForm; |
|||
import com.qs.serve.modules.bpm.service.BpmFormService; |
|||
|
|||
import javax.validation.Valid; |
|||
import java.util.List; |
|||
|
|||
/** |
|||
* 流程表单 |
|||
* @author YenHex |
|||
* @since 2022-08-18 |
|||
*/ |
|||
@Slf4j |
|||
@AllArgsConstructor |
|||
@RestController |
|||
@RequestMapping("bpm/form") |
|||
public class BpmFormController { |
|||
|
|||
private BpmFormService bpmFormService; |
|||
|
|||
/** |
|||
* 翻页查询 |
|||
* @param param |
|||
* @return |
|||
*/ |
|||
@GetMapping("/page") |
|||
@PreAuthorize("hasRole('bpm:form:query')") |
|||
public R<PageVo<BpmForm>> getPage(BpmForm param){ |
|||
PageUtil.startPage(); |
|||
LambdaQueryWrapper<BpmForm> formWrapper = new LambdaQueryWrapper<>(param); |
|||
List<BpmForm> list = bpmFormService.list(formWrapper); |
|||
return R.byPageHelperList(list); |
|||
} |
|||
|
|||
/** |
|||
* 根据ID查询 |
|||
* @param id |
|||
* @return |
|||
*/ |
|||
@GetMapping("/getById/{id}") |
|||
@SysLog(module = SystemModule.BPM, title = "流程表单", biz = BizType.QUERY) |
|||
@PreAuthorize("hasRole('bpm:form:query')") |
|||
public R<BpmForm> getById(@PathVariable("id") String id){ |
|||
BpmForm bpmForm = bpmFormService.getById(id); |
|||
return R.ok(bpmForm); |
|||
} |
|||
|
|||
|
|||
|
|||
/** |
|||
* 根据ID更新 |
|||
* @param param |
|||
* @return |
|||
*/ |
|||
@PostMapping("/updateById") |
|||
@SysLog(module = SystemModule.BPM, title = "流程表单", biz = BizType.UPDATE) |
|||
@PreAuthorize("hasRole('bpm:form:update')") |
|||
public R<?> updateById(@RequestBody @Valid BpmForm param){ |
|||
boolean result = bpmFormService.updateById(param); |
|||
return R.isTrue(result); |
|||
} |
|||
|
|||
/** |
|||
* 新增流程表单 |
|||
* @param param |
|||
* @return |
|||
*/ |
|||
@PostMapping("/save") |
|||
@SysLog(module = SystemModule.BPM, title = "流程表单", biz = BizType.INSERT) |
|||
@PreAuthorize("hasRole('bpm:form:insert')") |
|||
public R<?> save(@RequestBody @Valid BpmForm param){ |
|||
boolean result = bpmFormService.save(param); |
|||
return R.isTrue(result); |
|||
} |
|||
|
|||
/** |
|||
* 删除流程表单 |
|||
* @param id |
|||
* @return |
|||
*/ |
|||
@DeleteMapping("/deleteById/{id}") |
|||
@SysLog(module = SystemModule.BPM, title = "流程表单", biz = BizType.DELETE) |
|||
@PreAuthorize("hasRole('bpm:form:delete')") |
|||
public R<?> deleteById(@PathVariable("id") String id){ |
|||
boolean result = bpmFormService.removeById(id); |
|||
return R.isTrue(result); |
|||
} |
|||
|
|||
} |
|||
|
@ -0,0 +1,103 @@ |
|||
package com.qs.serve.modules.bpm.controller; |
|||
|
|||
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; |
|||
import com.qs.serve.common.model.annotation.SysLog; |
|||
import com.qs.serve.common.model.dto.PageVo; |
|||
import com.qs.serve.common.model.dto.R; |
|||
import com.qs.serve.common.model.enums.BizType; |
|||
import com.qs.serve.common.model.enums.SystemModule; |
|||
import com.qs.serve.common.util.PageUtil; |
|||
import lombok.AllArgsConstructor; |
|||
import lombok.extern.slf4j.Slf4j; |
|||
import org.springframework.security.access.prepost.PreAuthorize; |
|||
import org.springframework.web.bind.annotation.*; |
|||
|
|||
import com.qs.serve.modules.bpm.entity.BpmTaskForm; |
|||
import com.qs.serve.modules.bpm.service.BpmTaskFormService; |
|||
|
|||
import javax.validation.Valid; |
|||
import java.util.List; |
|||
|
|||
/** |
|||
* 流程表单与任务关联 |
|||
* @author YenHex |
|||
* @since 2022-08-18 |
|||
*/ |
|||
@Slf4j |
|||
@AllArgsConstructor |
|||
@RestController |
|||
@RequestMapping("bpm/taskForm") |
|||
public class BpmTaskFormController { |
|||
|
|||
private BpmTaskFormService bpmTaskFormService; |
|||
|
|||
/** |
|||
* 翻页查询 |
|||
* @param param |
|||
* @return |
|||
*/ |
|||
@GetMapping("/page") |
|||
@PreAuthorize("hasRole('bpm:taskForm:query')") |
|||
public R<PageVo<BpmTaskForm>> getPage(BpmTaskForm param){ |
|||
PageUtil.startPage(); |
|||
LambdaQueryWrapper<BpmTaskForm> taskFormWrapper = new LambdaQueryWrapper<>(param); |
|||
List<BpmTaskForm> list = bpmTaskFormService.list(taskFormWrapper); |
|||
return R.byPageHelperList(list); |
|||
} |
|||
|
|||
/** |
|||
* 根据ID查询 |
|||
* @param id |
|||
* @return |
|||
*/ |
|||
@GetMapping("/getById/{id}") |
|||
@SysLog(module = SystemModule.BPM, title = "流程表单与任务关联", biz = BizType.QUERY) |
|||
@PreAuthorize("hasRole('bpm:taskForm:query')") |
|||
public R<BpmTaskForm> getById(@PathVariable("id") String id){ |
|||
BpmTaskForm bpmTaskForm = bpmTaskFormService.getById(id); |
|||
return R.ok(bpmTaskForm); |
|||
} |
|||
|
|||
|
|||
|
|||
/** |
|||
* 根据ID更新 |
|||
* @param param |
|||
* @return |
|||
*/ |
|||
@PostMapping("/updateById") |
|||
@SysLog(module = SystemModule.BPM, title = "流程表单与任务关联", biz = BizType.UPDATE) |
|||
@PreAuthorize("hasRole('bpm:taskForm:update')") |
|||
public R<?> updateById(@RequestBody @Valid BpmTaskForm param){ |
|||
boolean result = bpmTaskFormService.updateById(param); |
|||
return R.isTrue(result); |
|||
} |
|||
|
|||
/** |
|||
* 新增流程表单与任务关联 |
|||
* @param param |
|||
* @return |
|||
*/ |
|||
@PostMapping("/save") |
|||
@SysLog(module = SystemModule.BPM, title = "流程表单与任务关联", biz = BizType.INSERT) |
|||
@PreAuthorize("hasRole('bpm:taskForm:insert')") |
|||
public R<?> save(@RequestBody @Valid BpmTaskForm param){ |
|||
boolean result = bpmTaskFormService.save(param); |
|||
return R.isTrue(result); |
|||
} |
|||
|
|||
/** |
|||
* 删除流程表单与任务关联 |
|||
* @param id |
|||
* @return |
|||
*/ |
|||
@DeleteMapping("/deleteById/{id}") |
|||
@SysLog(module = SystemModule.BPM, title = "流程表单与任务关联", biz = BizType.DELETE) |
|||
@PreAuthorize("hasRole('bpm:taskForm:delete')") |
|||
public R<?> deleteById(@PathVariable("id") String id){ |
|||
boolean result = bpmTaskFormService.removeById(id); |
|||
return R.isTrue(result); |
|||
} |
|||
|
|||
} |
|||
|
@ -0,0 +1,76 @@ |
|||
package com.qs.serve.modules.bpm.entity; |
|||
|
|||
import java.time.LocalDateTime; |
|||
import java.io.Serializable; |
|||
|
|||
import com.baomidou.mybatisplus.annotation.*; |
|||
import com.fasterxml.jackson.annotation.JsonFormat; |
|||
import com.fasterxml.jackson.annotation.JsonIgnore; |
|||
import com.fasterxml.jackson.annotation.JsonProperty; |
|||
import lombok.Data; |
|||
import org.hibernate.validator.constraints.Length; |
|||
import org.springframework.format.annotation.DateTimeFormat; |
|||
|
|||
import javax.validation.constraints.NotNull; |
|||
|
|||
/** |
|||
* 流程表单 实体类 |
|||
* @author YenHex |
|||
* @since 2022-08-18 |
|||
*/ |
|||
@Data |
|||
@TableName("bpm_form") |
|||
public class BpmForm implements Serializable { |
|||
|
|||
private static final long serialVersionUID = 1L; |
|||
|
|||
/** id */ |
|||
@TableId(type = IdType.AUTO) |
|||
private Long id; |
|||
|
|||
/** 表单名称 */ |
|||
@TableField(condition = SqlCondition.LIKE) |
|||
@NotNull(message = "表单名称不能为空") |
|||
@Length(max = 30,message = "表单名称长度不能超过30字") |
|||
private String formName; |
|||
|
|||
/** 表单内容(json) */ |
|||
@NotNull(message = "表单内容不能为空") |
|||
private String formContext; |
|||
|
|||
/** 备注 */ |
|||
@Length(max = 255,message = "备注长度不能超过255字") |
|||
private String remark; |
|||
|
|||
/** 创建时间 */ |
|||
@DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss") |
|||
@JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss",timezone = "GMT+8") |
|||
@TableField(fill = FieldFill.INSERT) |
|||
private LocalDateTime createTime; |
|||
|
|||
/** 创建人 */ |
|||
@TableField(fill = FieldFill.INSERT) |
|||
private String createBy; |
|||
|
|||
/** 更新时间 */ |
|||
@DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss") |
|||
@JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss",timezone = "GMT+8") |
|||
@TableField(fill = FieldFill.UPDATE) |
|||
private LocalDateTime updateTime; |
|||
|
|||
/** 更新人 */ |
|||
@TableField(fill = FieldFill.UPDATE) |
|||
private String updateBy; |
|||
|
|||
/** 租户id */ |
|||
@JsonIgnore |
|||
@JsonProperty |
|||
private String tenantId; |
|||
|
|||
/** 删除标识 */ |
|||
@JsonIgnore |
|||
@JsonProperty |
|||
private Boolean delFlag; |
|||
|
|||
} |
|||
|
@ -0,0 +1,76 @@ |
|||
package com.qs.serve.modules.bpm.entity; |
|||
|
|||
import java.time.LocalDateTime; |
|||
import java.io.Serializable; |
|||
|
|||
import com.baomidou.mybatisplus.annotation.*; |
|||
import com.fasterxml.jackson.annotation.JsonFormat; |
|||
import com.fasterxml.jackson.annotation.JsonIgnore; |
|||
import com.fasterxml.jackson.annotation.JsonProperty; |
|||
import lombok.Data; |
|||
import org.hibernate.validator.constraints.Length; |
|||
import org.springframework.format.annotation.DateTimeFormat; |
|||
|
|||
import javax.validation.constraints.NotNull; |
|||
import javax.validation.constraints.NotBlank; |
|||
|
|||
/** |
|||
* 流程表单与任务关联 实体类 |
|||
* @author YenHex |
|||
* @since 2022-08-18 |
|||
*/ |
|||
@Data |
|||
@TableName("bpm_task_form") |
|||
public class BpmTaskForm implements Serializable { |
|||
|
|||
private static final long serialVersionUID = 1L; |
|||
|
|||
/** id */ |
|||
@TableId(type = IdType.AUTO) |
|||
private Long id; |
|||
|
|||
/** 表单id */ |
|||
@NotNull(message = "表单id不能为空") |
|||
private Long formId; |
|||
|
|||
/** 任务id */ |
|||
@NotBlank(message = "任务id不能为空") |
|||
@Length(max = 32,message = "任务id长度不能超过32字") |
|||
private String taskId; |
|||
|
|||
/** 备注 */ |
|||
@Length(max = 255,message = "备注长度不能超过255字") |
|||
private String remark; |
|||
|
|||
/** 创建时间 */ |
|||
@DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss") |
|||
@JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss",timezone = "GMT+8") |
|||
@TableField(fill = FieldFill.INSERT) |
|||
private LocalDateTime createTime; |
|||
|
|||
/** 创建人 */ |
|||
@TableField(fill = FieldFill.INSERT) |
|||
private String createBy; |
|||
|
|||
/** 更新时间 */ |
|||
@DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss") |
|||
@JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss",timezone = "GMT+8") |
|||
@TableField(fill = FieldFill.UPDATE) |
|||
private LocalDateTime updateTime; |
|||
|
|||
/** 更新人 */ |
|||
@TableField(fill = FieldFill.UPDATE) |
|||
private String updateBy; |
|||
|
|||
/** 租户id */ |
|||
@JsonIgnore |
|||
@JsonProperty |
|||
private String tenantId; |
|||
|
|||
/** 删除标识 */ |
|||
@JsonIgnore |
|||
@JsonProperty |
|||
private Boolean delFlag; |
|||
|
|||
} |
|||
|
@ -1,4 +1,4 @@ |
|||
package com.qs.serve.modules.bpm.domian.dto; |
|||
package com.qs.serve.modules.bpm.entity.dto; |
|||
|
|||
import lombok.Data; |
|||
|
@ -1,4 +1,4 @@ |
|||
package com.qs.serve.modules.bpm.domian.dto; |
|||
package com.qs.serve.modules.bpm.entity.dto; |
|||
|
|||
import lombok.Builder; |
|||
import lombok.Data; |
@ -1,4 +1,4 @@ |
|||
package com.qs.serve.modules.bpm.domian.dto; |
|||
package com.qs.serve.modules.bpm.entity.dto; |
|||
|
|||
import lombok.Data; |
|||
|
@ -1,4 +1,4 @@ |
|||
package com.qs.serve.modules.bpm.domian.dto; |
|||
package com.qs.serve.modules.bpm.entity.dto; |
|||
|
|||
import com.qs.serve.modules.sys.entity.SysRole; |
|||
import com.qs.serve.modules.sys.entity.SysUser; |
@ -0,0 +1,71 @@ |
|||
package com.qs.serve.modules.bpm.entity.dto; |
|||
|
|||
import com.fasterxml.jackson.annotation.JsonFormat; |
|||
import lombok.AllArgsConstructor; |
|||
import lombok.Data; |
|||
import lombok.NoArgsConstructor; |
|||
|
|||
import java.util.Date; |
|||
|
|||
/** |
|||
* 流程定义 |
|||
* @author YenHex |
|||
* @since 2022/8/18 |
|||
*/ |
|||
@Data |
|||
@AllArgsConstructor |
|||
@NoArgsConstructor |
|||
public class FlowProcDefDto { |
|||
|
|||
/** |
|||
* 流程id |
|||
*/ |
|||
private String id; |
|||
|
|||
/** |
|||
* 流程名称 |
|||
*/ |
|||
private String name; |
|||
|
|||
/** |
|||
* 流程key |
|||
*/ |
|||
private String flowKey; |
|||
|
|||
/** |
|||
* 流程分类 |
|||
*/ |
|||
private String category; |
|||
|
|||
/** |
|||
* 配置表单名称 |
|||
*/ |
|||
private String formName; |
|||
|
|||
/** |
|||
* 配置表单id |
|||
*/ |
|||
private Long formId; |
|||
|
|||
/** |
|||
* 版本 |
|||
*/ |
|||
private int version; |
|||
|
|||
/** |
|||
* 部署ID |
|||
*/ |
|||
private String deploymentId; |
|||
|
|||
/** |
|||
* 流程定义状态: 1:激活 , 2:中止 |
|||
*/ |
|||
private int suspensionState; |
|||
|
|||
/** |
|||
* 部署时间 |
|||
*/ |
|||
@JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss") |
|||
private Date deploymentTime; |
|||
|
|||
} |
@ -1,4 +1,4 @@ |
|||
package com.qs.serve.modules.bpm.domian.dto; |
|||
package com.qs.serve.modules.bpm.entity.dto; |
|||
|
|||
import com.fasterxml.jackson.annotation.JsonFormat; |
|||
import lombok.Data; |
@ -1,4 +1,4 @@ |
|||
package com.qs.serve.modules.bpm.domian.dto; |
|||
package com.qs.serve.modules.bpm.entity.dto; |
|||
|
|||
import lombok.Data; |
|||
|
@ -1,4 +1,4 @@ |
|||
package com.qs.serve.modules.bpm.domian.vo; |
|||
package com.qs.serve.modules.bpm.entity.vo; |
|||
|
|||
import lombok.Data; |
|||
|
@ -0,0 +1,14 @@ |
|||
package com.qs.serve.modules.bpm.mapper; |
|||
|
|||
import com.baomidou.mybatisplus.core.mapper.BaseMapper; |
|||
import com.qs.serve.modules.bpm.entity.BpmForm; |
|||
|
|||
/** |
|||
* 流程表单 Mapper |
|||
* @author YenHex |
|||
* @date 2022-08-18 |
|||
*/ |
|||
public interface BpmFormMapper extends BaseMapper<BpmForm> { |
|||
|
|||
} |
|||
|
@ -0,0 +1,14 @@ |
|||
package com.qs.serve.modules.bpm.mapper; |
|||
|
|||
import com.baomidou.mybatisplus.core.mapper.BaseMapper; |
|||
import com.qs.serve.modules.bpm.entity.BpmTaskForm; |
|||
|
|||
/** |
|||
* 流程表单与任务关联 Mapper |
|||
* @author YenHex |
|||
* @date 2022-08-18 |
|||
*/ |
|||
public interface BpmTaskFormMapper extends BaseMapper<BpmTaskForm> { |
|||
|
|||
} |
|||
|
@ -0,0 +1,20 @@ |
|||
package com.qs.serve.modules.bpm.mapper; |
|||
|
|||
import com.qs.serve.modules.bpm.entity.dto.FlowProcDefDto; |
|||
|
|||
import java.util.List; |
|||
|
|||
/** |
|||
* @author YenHex |
|||
* @since 2022/8/18 |
|||
*/ |
|||
public interface FlowDeployMapper { |
|||
|
|||
/** |
|||
* 流程定义列表 |
|||
* @param name |
|||
* @return |
|||
*/ |
|||
List<FlowProcDefDto> selectDeployList(String name); |
|||
|
|||
} |
@ -0,0 +1,14 @@ |
|||
package com.qs.serve.modules.bpm.service; |
|||
|
|||
import com.baomidou.mybatisplus.extension.service.IService; |
|||
import com.qs.serve.modules.bpm.entity.BpmForm; |
|||
|
|||
/** |
|||
* 流程表单 服务接口 |
|||
* @author YenHex |
|||
* @date 2022-08-18 |
|||
*/ |
|||
public interface BpmFormService extends IService<BpmForm> { |
|||
|
|||
} |
|||
|
@ -0,0 +1,14 @@ |
|||
package com.qs.serve.modules.bpm.service; |
|||
|
|||
import com.baomidou.mybatisplus.extension.service.IService; |
|||
import com.qs.serve.modules.bpm.entity.BpmTaskForm; |
|||
|
|||
/** |
|||
* 流程表单与任务关联 服务接口 |
|||
* @author YenHex |
|||
* @date 2022-08-18 |
|||
*/ |
|||
public interface BpmTaskFormService extends IService<BpmTaskForm> { |
|||
|
|||
} |
|||
|
@ -0,0 +1,22 @@ |
|||
package com.qs.serve.modules.bpm.service.impl; |
|||
|
|||
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; |
|||
import lombok.AllArgsConstructor; |
|||
import lombok.extern.slf4j.Slf4j; |
|||
import org.springframework.stereotype.Service; |
|||
import com.qs.serve.modules.bpm.entity.BpmForm; |
|||
import com.qs.serve.modules.bpm.service.BpmFormService; |
|||
import com.qs.serve.modules.bpm.mapper.BpmFormMapper; |
|||
|
|||
/** |
|||
* 流程表单 服务实现类 |
|||
* @author YenHex |
|||
* @since 2022-08-18 |
|||
*/ |
|||
@Slf4j |
|||
@Service |
|||
@AllArgsConstructor |
|||
public class BpmFormServiceImpl extends ServiceImpl<BpmFormMapper,BpmForm> implements BpmFormService { |
|||
|
|||
} |
|||
|
@ -0,0 +1,22 @@ |
|||
package com.qs.serve.modules.bpm.service.impl; |
|||
|
|||
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; |
|||
import lombok.AllArgsConstructor; |
|||
import lombok.extern.slf4j.Slf4j; |
|||
import org.springframework.stereotype.Service; |
|||
import com.qs.serve.modules.bpm.entity.BpmTaskForm; |
|||
import com.qs.serve.modules.bpm.service.BpmTaskFormService; |
|||
import com.qs.serve.modules.bpm.mapper.BpmTaskFormMapper; |
|||
|
|||
/** |
|||
* 流程表单与任务关联 服务实现类 |
|||
* @author YenHex |
|||
* @since 2022-08-18 |
|||
*/ |
|||
@Slf4j |
|||
@Service |
|||
@AllArgsConstructor |
|||
public class BpmTaskFormServiceImpl extends ServiceImpl<BpmTaskFormMapper,BpmTaskForm> implements BpmTaskFormService { |
|||
|
|||
} |
|||
|
@ -0,0 +1,31 @@ |
|||
<?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.qs.serve.modules.bpm.mapper.FlowDeployMapper"> |
|||
|
|||
|
|||
<select id="selectDeployList" resultType="com.qs.serve.modules.bpm.entity.dto.FlowProcDefDto"> |
|||
|
|||
SELECT |
|||
rp.id_ as id, |
|||
rd.id_ as deploymentId, |
|||
rd.name_ as name, |
|||
rd.category_ as category, |
|||
rp.key_ as flowKey, |
|||
rp.version_ as version, |
|||
rp.suspension_state_ as suspensionState, |
|||
rd.deploy_time_ as deploymentTime |
|||
FROM |
|||
ACT_RE_PROCDEF rp |
|||
LEFT JOIN ACT_RE_DEPLOYMENT rd ON rp.deployment_id_ = rd.id_ |
|||
<where> |
|||
<if test="name != null and name != ''"> |
|||
and rd.name_ like concat('%', #{name}, '%') |
|||
</if> |
|||
</where> |
|||
order by rd.deploy_time_ desc |
|||
</select> |
|||
|
|||
|
|||
</mapper> |
Loading…
Reference in new issue