Browse Source

移动端流程待办列表、验车提交

master
dimengzhe 3 years ago
parent
commit
3fd71c64e4
  1. 3
      anrui-flowable/anrui-flowable-api/src/main/java/com/yxt/anrui/flowable/api/flowtask/FlowTaskFeign.java
  2. 2
      anrui-flowable/anrui-flowable-api/src/main/java/com/yxt/anrui/flowable/api/flowtask/FlowTaskFeignFallBack.java
  3. 4
      anrui-flowable/anrui-flowable-api/src/main/java/com/yxt/anrui/flowable/api/sysprourl/SysProUrlFeign.java
  4. 2
      anrui-flowable/anrui-flowable-api/src/main/java/com/yxt/anrui/flowable/api/sysprourl/SysProUrlFeignFallBack.java
  5. 2
      anrui-flowable/anrui-flowable-biz/src/main/java/com/yxt/anrui/flowable/biz/flowtask/FlowTaskController.java
  6. 2
      anrui-flowable/anrui-flowable-biz/src/main/java/com/yxt/anrui/flowable/biz/sysprourl/SysProUrlController.java
  7. 2
      anrui-flowable/anrui-flowable-biz/src/main/java/com/yxt/anrui/flowable/biz/sysprourl/SysProUrlMapper.java
  8. 13
      anrui-flowable/anrui-flowable-biz/src/main/java/com/yxt/anrui/flowable/biz/sysprourl/SysProUrlMapper.xml
  9. 6
      anrui-flowable/anrui-flowable-biz/src/main/java/com/yxt/anrui/flowable/biz/sysprourl/SysProUrlService.java
  10. 8
      anrui-portal/anrui-portal-api/src/main/java/com/yxt/anrui/portal/api/flow/FlowableFallback.java
  11. 76
      anrui-portal/anrui-portal-api/src/main/java/com/yxt/anrui/portal/api/flow/FlowableFeign.java
  12. 22
      anrui-portal/anrui-portal-api/src/main/java/com/yxt/anrui/portal/api/flow/app/AppVo.java
  13. 22
      anrui-portal/anrui-portal-api/src/main/java/com/yxt/anrui/portal/api/flow/app/FlowTaskDoQuery.java
  14. 36
      anrui-portal/anrui-portal-api/src/main/java/com/yxt/anrui/portal/api/flow/app/FlowTaskDoVo.java
  15. 2
      anrui-portal/anrui-portal-biz/src/main/java/com/yxt/anrui/portal/biz/appsubsetversion/AppSubsetVersionMapper.java
  16. 8
      anrui-portal/anrui-portal-biz/src/main/java/com/yxt/anrui/portal/biz/appsubsetversion/AppSubsetVersionMapper.xml
  17. 4
      anrui-portal/anrui-portal-biz/src/main/java/com/yxt/anrui/portal/biz/appsubsetversion/AppSubsetVersionService.java
  18. 42
      anrui-portal/anrui-portal-biz/src/main/java/com/yxt/anrui/portal/biz/flow/FlowableRest.java
  19. 146
      anrui-portal/anrui-portal-biz/src/main/java/com/yxt/anrui/portal/biz/flow/FlowableService.java
  20. 5
      anrui-scm/anrui-scm-api/src/main/java/com/yxt/anrui/scm/api/scmvehicleinspectimgtemp/ScmVehicleInspectimgtempDto.java
  21. 2
      anrui-scm/anrui-scm-api/src/main/java/com/yxt/anrui/scm/api/scmvehicleinspectitem/ScmVehicleInspectitemDto.java
  22. 5
      anrui-scm/anrui-scm-api/src/main/java/com/yxt/anrui/scm/api/scmvehicleinspectitem/ScmVehicleInspectitemVo.java
  23. 6
      anrui-scm/anrui-scm-biz/src/main/java/com/yxt/anrui/scm/biz/scmvehiclegression/ScmVehicleGressionService.java
  24. 12
      anrui-scm/anrui-scm-biz/src/main/java/com/yxt/anrui/scm/biz/scmvehicleinspectimgtemp/ScmVehicleInspectimgtempService.java
  25. 3
      anrui-scm/anrui-scm-biz/src/main/java/com/yxt/anrui/scm/biz/scmvehicleinspectitem/ScmVehicleInspectitemMapper.xml
  26. 7
      anrui-terminal/anrui-terminal-api/src/main/java/com/yxt/anrui/terminal/api/supplychain/scmvehiclegression/AppGressionDto.java
  27. 6
      anrui-terminal/anrui-terminal-api/src/main/java/com/yxt/anrui/terminal/api/supplychain/scmvehiclegression/AppScmVehicleGressionFeign.java
  28. 6
      anrui-terminal/anrui-terminal-api/src/main/java/com/yxt/anrui/terminal/api/supplychain/scmvehiclegression/AppScmVehicleGressionFeignFallback.java
  29. 22
      anrui-terminal/anrui-terminal-api/src/main/java/com/yxt/anrui/terminal/api/supplychain/scmvehiclegression/flowable/SubmitGressionDto.java
  30. 10
      anrui-terminal/anrui-terminal-biz/src/main/java/com/yxt/anrui/terminal/biz/supplychain/scmvehiclegression/AppScmVehicleGressionRest.java
  31. 21
      anrui-terminal/anrui-terminal-biz/src/main/java/com/yxt/anrui/terminal/biz/supplychain/scmvehiclegression/AppScmVehicleGressionService.java

3
anrui-flowable/anrui-flowable-api/src/main/java/com/yxt/anrui/flowable/api/flowtask/FlowTaskFeign.java

@ -1,5 +1,6 @@
package com.yxt.anrui.flowable.api.flowtask;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.yxt.anrui.flowable.api.utils.RecordQuery;
import com.yxt.anrui.flowable.sqloperationsymbol.BusinessTaskQuery;
import com.yxt.anrui.flowable.sqloperationsymbol.BusinessVariables;
@ -50,7 +51,7 @@ public interface FlowTaskFeign {
@ApiOperation(value = "业务系统查询待办任务列表")
@PostMapping("/businessTodoList/{userSid}")
@ResponseBody
ResultBean businessTodoList(@ApiParam(value = "当前用户sid") @PathVariable(value = "userSid")String userSid,
ResultBean<Page<FlowTaskDto>> businessTodoList(@ApiParam(value = "当前用户sid") @PathVariable(value = "userSid")String userSid,
@RequestBody PagerQuery<BusinessTaskQuery> taskQueryPagerQuery);
@ApiOperation(value = "业务系统查询待办任务列表数量")

2
anrui-flowable/anrui-flowable-api/src/main/java/com/yxt/anrui/flowable/api/flowtask/FlowTaskFeignFallBack.java

@ -37,7 +37,7 @@ public class FlowTaskFeignFallBack implements FlowTaskFeign {
}
@Override
public ResultBean todoList(PagerQuery<FlowTaskQuery> taskQueryPagerQuery) {
public ResultBean<Page<FlowTaskDto>> todoList(PagerQuery<FlowTaskQuery> taskQueryPagerQuery) {
return null;
}

4
anrui-flowable/anrui-flowable-api/src/main/java/com/yxt/anrui/flowable/api/sysprourl/SysProUrlFeign.java

@ -46,7 +46,7 @@ public interface SysProUrlFeign {
* 删除流程业务表单url对象
*/
@DeleteMapping("/{formIds}")
public ResultBean<String> remove(@PathVariable Long[] formIds);
public ResultBean<String> remove(@PathVariable("formIds") Long[] formIds);
@ApiOperation("pc根据流程定义id,节点id,终端及类型查询流程与业务表单url")
@PostMapping("/selectPcUrlByTaskDefKey")
@ -67,7 +67,7 @@ public interface SysProUrlFeign {
*/
@ApiOperation("查询流程与业务表单的url")
@GetMapping("/selectUrlByKey")
ResultBean<String> selectUrlByKey(@ApiParam(value = "流程定义id") @RequestParam(value = "procDefId") String procDefId,
ResultBean<SysProUrlVo> selectUrlByKey(@ApiParam(value = "流程定义id") @RequestParam(value = "procDefId") String procDefId,
@ApiParam(value = "节点id") @RequestParam(value = "taskDefKey") String taskDefKey,
@ApiParam(value = "类型:1办理,2详情") @RequestParam(value = "type") String type);

2
anrui-flowable/anrui-flowable-api/src/main/java/com/yxt/anrui/flowable/api/sysprourl/SysProUrlFeignFallBack.java

@ -49,7 +49,7 @@ public class SysProUrlFeignFallBack implements SysProUrlFeign {
}
@Override
public ResultBean<String> selectUrlByKey(String procDefId, String taskDefKey, String type) {
public ResultBean<SysProUrlVo> selectUrlByKey(String procDefId, String taskDefKey, String type) {
return null;
}
}

2
anrui-flowable/anrui-flowable-biz/src/main/java/com/yxt/anrui/flowable/biz/flowtask/FlowTaskController.java

@ -84,7 +84,7 @@ public class FlowTaskController implements FlowTaskFeign {
}
@Override
public ResultBean businessTodoList(String userSid, PagerQuery<BusinessTaskQuery> businessTaskQuery) {
public ResultBean<Page<FlowTaskDto>> businessTodoList(String userSid, PagerQuery<BusinessTaskQuery> businessTaskQuery) {
int size = Integer.valueOf(businessTaskQuery.getSize() + "");
int current = Integer.valueOf(businessTaskQuery.getCurrent() + "");
List<BusinessTaskParam> fields = businessTaskQuery.getParams().getFields();

2
anrui-flowable/anrui-flowable-biz/src/main/java/com/yxt/anrui/flowable/biz/sysprourl/SysProUrlController.java

@ -109,7 +109,7 @@ public class SysProUrlController implements SysProUrlFeign {
* @return
*/
@Override
public ResultBean<String> selectUrlByKey(String procDefId, String taskDefKey, String type) {
public ResultBean<SysProUrlVo> selectUrlByKey(String procDefId, String taskDefKey, String type) {
return sysProUrlService.selectUrlByKey(procDefId, taskDefKey, type);
}
}

2
anrui-flowable/anrui-flowable-biz/src/main/java/com/yxt/anrui/flowable/biz/sysprourl/SysProUrlMapper.java

@ -88,5 +88,5 @@ public interface SysProUrlMapper extends BaseMapper<SysProUrl> {
* @param type 类型1办理2详情
* @return
*/
String selectUrlByKey(@Param("procDefId") String procDefId, @Param("taskDefKey") String taskDefKey, @Param("type") String type);
SysProUrlVo selectUrlByKey(@Param("procDefId") String procDefId, @Param("taskDefKey") String taskDefKey, @Param("type") String type);
}

13
anrui-flowable/anrui-flowable-biz/src/main/java/com/yxt/anrui/flowable/biz/sysprourl/SysProUrlMapper.xml

@ -106,12 +106,21 @@
AND taskDefKey = #{taskDefKey}
</select>
<select id="selectUrlByKey" resultType="java.lang.String">
<select id="selectUrlByKey" resultType="com.yxt.anrui.flowable.api.sysprourl.SysProUrlVo">
select *
from sys_pro_url
where proc_def_id = #{procDefId}
and type = #{type}
and taskDefKey = #{taskDefKey}
and terminal = 2
</select>
<!--<select id="selectUrlByKey">
select url
from sys_pro_url
where proc_def_id = #{procDefId}
and type = #{type}
and taskDefKey = #{taskDefKey}
and terminal = 1
</select>
</select>-->
</mapper>

6
anrui-flowable/anrui-flowable-biz/src/main/java/com/yxt/anrui/flowable/biz/sysprourl/SysProUrlService.java

@ -158,8 +158,8 @@ public class SysProUrlService extends MybatisBaseService<SysProUrlMapper, SysPro
* @param type 类型1办理2详情
* @return
*/
public ResultBean<String> selectUrlByKey(String procDefId, String taskDefKey, String type) {
ResultBean<String> rb = ResultBean.fireFail();
public ResultBean<SysProUrlVo> selectUrlByKey(String procDefId, String taskDefKey, String type) {
ResultBean<SysProUrlVo> rb = ResultBean.fireFail();
//验证参数
if (StringUtils.isBlank(procDefId)) {
return rb.setMsg("流程定义id不能为空");
@ -170,7 +170,7 @@ public class SysProUrlService extends MybatisBaseService<SysProUrlMapper, SysPro
if (StringUtils.isBlank(type)) {
return rb.setMsg("请指定要操作的类型");
}
String url = baseMapper.selectUrlByKey(procDefId, taskDefKey, type);
SysProUrlVo url = baseMapper.selectUrlByKey(procDefId, taskDefKey, type);
return rb.success().setData(url);
}

8
anrui-portal/anrui-portal-api/src/main/java/com/yxt/anrui/portal/api/flow/FlowableFallback.java

@ -2,8 +2,11 @@ package com.yxt.anrui.portal.api.flow;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.yxt.anrui.flowable.api.flowtask.FlowTaskDto;
import com.yxt.anrui.portal.api.flow.app.FlowTaskDoQuery;
import com.yxt.anrui.portal.api.flow.app.FlowTaskDoVo;
import com.yxt.common.core.query.PagerQuery;
import com.yxt.common.core.result.ResultBean;
import com.yxt.common.core.vo.PagerVo;
import org.springframework.stereotype.Component;
import java.util.Map;
@ -99,5 +102,10 @@ public class FlowableFallback implements FlowableFeign{
return null;
}
@Override
public ResultBean<PagerVo<FlowTaskDoVo>> todoApp(PagerQuery<FlowTaskDoQuery> pagerQuery) {
return null;
}
}

76
anrui-portal/anrui-portal-api/src/main/java/com/yxt/anrui/portal/api/flow/FlowableFeign.java

@ -2,8 +2,11 @@ package com.yxt.anrui.portal.api.flow;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.yxt.anrui.flowable.api.flowtask.FlowTaskDto;
import com.yxt.anrui.portal.api.flow.app.FlowTaskDoQuery;
import com.yxt.anrui.portal.api.flow.app.FlowTaskDoVo;
import com.yxt.common.core.query.PagerQuery;
import com.yxt.common.core.result.ResultBean;
import com.yxt.common.core.vo.PagerVo;
import io.swagger.annotations.Api;
import io.swagger.annotations.ApiOperation;
import io.swagger.annotations.ApiParam;
@ -21,8 +24,9 @@ import java.util.Map;
public interface FlowableFeign {
/**
* 业务系统发起流程申请
*
* @param procDefId 流程定义id
* @param userSid 用户sid
* @param userSid 用户sid
* @param variables form参数
* @return
*/
@ -33,7 +37,8 @@ public interface FlowableFeign {
/**
* 流程定义列表 一般业务中不需要查询该列表
* @param pageNum 页数
*
* @param pageNum 页数
* @param pageSize 容量
* @return
*/
@ -43,7 +48,8 @@ public interface FlowableFeign {
/**
* 我的流程 我发起的流程
* @param userSid 用户sid
*
* @param userSid 用户sid
* @param taskQueryPagerQuery 查询参数
* @return
*/
@ -53,12 +59,13 @@ public interface FlowableFeign {
/**
* 待办列表
*
* @param userSid 用户sid
* @param pQuery 查询参数
* @param pQuery 查询参数
* @return
*/
@PostMapping("/todoTaskList/{userSid}")
public ResultBean todoTaskList(@ApiParam(value = "用户sid") @PathVariable(value = "userSid") String userSid,@ApiParam(value = "变量集合,json对象") @RequestBody PagerQuery<TaskQuery> pQuery);
public ResultBean todoTaskList(@ApiParam(value = "用户sid") @PathVariable(value = "userSid") String userSid, @ApiParam(value = "变量集合,json对象") @RequestBody PagerQuery<TaskQuery> pQuery);
@ApiOperation(value = "读取xml文件")
@GetMapping("/readXml/{deployId}")
@ -71,19 +78,21 @@ public interface FlowableFeign {
*/
@ApiOperation(value = "生成流程图")
@RequestMapping("/flowViewer/{procInsId}")
public ResultBean getFlowViewer(@PathVariable("procInsId") String procInsId) ;
public ResultBean getFlowViewer(@PathVariable("procInsId") String procInsId);
/**
* 已办任务的查询
*
* @param userSid 用户sid
* @param pQuery 查询参数
* @param pQuery 查询参数
* @return
*/
@PostMapping("/doneTaskList/{userSid}")
public ResultBean doneTaskList(@ApiParam(value = "用户sid") @PathVariable(value = "userSid") String userSid,@ApiParam(value = "变量集合,json对象") @RequestBody PagerQuery<TaskQuery> pQuery);
public ResultBean doneTaskList(@ApiParam(value = "用户sid") @PathVariable(value = "userSid") String userSid, @ApiParam(value = "变量集合,json对象") @RequestBody PagerQuery<TaskQuery> pQuery);
/**
* 处理待办任务
*
* @param variables 表单参数
* @return
*/
@ -93,66 +102,73 @@ public interface FlowableFeign {
/**
* 流程撤回
* @param userSid 用户sid
*
* @param userSid 用户sid
* @param flowTaskVo 参数 工作流任务相关--请求参数
* @return
*/
@ApiOperation(value = "撤回流程")
@PostMapping(value = "/revokeProcess/{userSid}/{businessSid}")
public ResultBean revokeProcess(
@ApiParam(value = "用户sid") @PathVariable(value = "userSid")String userSid,
@ApiParam(value = "业务sid") @PathVariable(value = "businessSid")String businessSid,
@ApiParam(value = "工作流任务相关--请求参数") @RequestBody FlowTaskVo flowTaskVo) ;
@ApiParam(value = "用户sid") @PathVariable(value = "userSid") String userSid,
@ApiParam(value = "业务sid") @PathVariable(value = "businessSid") String businessSid,
@ApiParam(value = "工作流任务相关--请求参数") @RequestBody FlowTaskVo flowTaskVo);
/**
* 流程历史流转记录
*
* @param procInsId 流程实例id
* @param deployId 目前没用
* @param deployId 目前没用
* @return
*/
@ApiOperation(value = "流程历史流转记录" )
@ApiOperation(value = "流程历史流转记录")
@GetMapping(value = "/task/flowRecord/{procInsId}/{deployId}")
public ResultBean flowRecord( @ApiParam(value = "流程实例id")@PathVariable(value = "procInsId")String procInsId,
@ApiParam(value = "目前没用")@PathVariable(value = "deployId")String deployId);
public ResultBean flowRecord(@ApiParam(value = "流程实例id") @PathVariable(value = "procInsId") String procInsId,
@ApiParam(value = "目前没用") @PathVariable(value = "deployId") String deployId);
/**
* 驳回任务
*
* @param flowTaskVo
* @return
*/
@ApiOperation(value = "驳回任务")
@PostMapping(value = "/reject/{businessSid}")
public ResultBean taskReject(@ApiParam(value = "业务sid") @PathVariable(value = "businessSid")String businessSid,
@ApiParam(value = "工作流任务相关--请求参数")@RequestBody FlowTaskVo flowTaskVo);
public ResultBean taskReject(@ApiParam(value = "业务sid") @PathVariable(value = "businessSid") String businessSid,
@ApiParam(value = "工作流任务相关--请求参数") @RequestBody FlowTaskVo flowTaskVo);
@ApiOperation(value = "终止任务")
@PostMapping(value = "/breakProcess/{businessSid}")
public ResultBean breakProcess(@ApiParam(value = "业务sid") @PathVariable(value = "businessSid")String businessSid,
public ResultBean breakProcess(@ApiParam(value = "业务sid") @PathVariable(value = "businessSid") String businessSid,
@RequestBody FlowTaskVo flowTaskVo);
/**
* 取消申请
*
* @param flowTaskVo
* @return
*/
@ApiOperation(value = "取消申请")
@PostMapping(value = "/task/stopProcess")
@ResponseBody
ResultBean stopProcess(@ApiParam(value = "工作流任务相关--请求参数")@RequestBody FlowTaskVo flowTaskVo);
ResultBean stopProcess(@ApiParam(value = "工作流任务相关--请求参数") @RequestBody FlowTaskVo flowTaskVo);
/**
* 删除流程实例
*
* @param procInsId 流程实例id
* @return
*/
@ApiOperation(value = "删除流程实例")
@DeleteMapping(value = "/task/deleteProcess/{procInsId}")
@ResponseBody
ResultBean deleteProcess(@ApiParam(value = "流程实例id")@PathVariable(value = "procInsId")String procInsId);
ResultBean deleteProcess(@ApiParam(value = "流程实例id") @PathVariable(value = "procInsId") String procInsId);
/**
* 待办列表
*
* @param userSid 用户sid
* @param pQuery 查询参数
* @param pQuery 查询参数
* @return
*/
@ApiOperation(value = "总待办列表")
@ -161,19 +177,22 @@ public interface FlowableFeign {
@ApiOperation(value = "业务系统查询待办任务列表数量")
@GetMapping("/getTodoNum/{userSid}")
ResultBean<Integer> getTodoNum(@PathVariable(value = "userSid")String userSid);
ResultBean<Integer> getTodoNum(@PathVariable(value = "userSid") String userSid);
/**
* 已办任务的查询
*
* @param userSid 用户sid
* @param pQuery 查询参数
* @param pQuery 查询参数
* @return
*/
@ApiOperation(value = "总已办列表")
@PostMapping("/doneAllTaskList/{userSid}")
public ResultBean<Page<FlowTaskDto>> doneAllTaskList(@ApiParam(value = "用户sid") @PathVariable(value = "userSid") String userSid,@ApiParam(value = "变量集合,json对象") @RequestBody PagerQuery<FlowTaskAllQuery> pQuery);
public ResultBean<Page<FlowTaskDto>> doneAllTaskList(@ApiParam(value = "用户sid") @PathVariable(value = "userSid") String userSid, @ApiParam(value = "变量集合,json对象") @RequestBody PagerQuery<FlowTaskAllQuery> pQuery);
/**
* 查询下一环节
*
* @param taskId 查询参数
* @return
*/
@ -181,6 +200,11 @@ public interface FlowableFeign {
@ApiOperation(value = "查询下一环节")
@PostMapping("/getNextTasks/{taskId}")
@ResponseBody
public ResultBean getNextTasks(@ApiParam(value = "taskId") @PathVariable(value = "taskId") String taskId );
public ResultBean getNextTasks(@ApiParam(value = "taskId") @PathVariable(value = "taskId") String taskId);
@ApiOperation(value = "移动端总待办列表")
@PostMapping("/todoApp")
public ResultBean<PagerVo<FlowTaskDoVo>> todoApp(@RequestBody PagerQuery<FlowTaskDoQuery> pagerQuery);
}

22
anrui-portal/anrui-portal-api/src/main/java/com/yxt/anrui/portal/api/flow/app/AppVo.java

@ -0,0 +1,22 @@
package com.yxt.anrui.portal.api.flow.app;
import com.yxt.common.core.vo.Vo;
import lombok.Data;
/**
* @Author dimengzhe
* @Date 2022/7/20 10:54
* @Description
*/
@Data
public class AppVo implements Vo {
private static final long serialVersionUID = -8153041978260796662L;
private String path;
private String modulePluginName;
private Integer moduleVersion;
private String msgSid;
private String json;
private String type;
private String moduleAction;
}

22
anrui-portal/anrui-portal-api/src/main/java/com/yxt/anrui/portal/api/flow/app/FlowTaskDoQuery.java

@ -0,0 +1,22 @@
package com.yxt.anrui.portal.api.flow.app;
import com.yxt.common.core.query.Query;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import javax.validation.constraints.NotBlank;
/**
* @Author dimengzhe
* @Date 2022/7/20 9:43
* @Description
*/
@Data
public class FlowTaskDoQuery implements Query {
private static final long serialVersionUID = 4327143083035475848L;
@ApiModelProperty("用户sid")
@NotBlank(message = "参数错误:userSid")
private String userSid;
@ApiModelProperty("工作名称")
private String names;
}

36
anrui-portal/anrui-portal-api/src/main/java/com/yxt/anrui/portal/api/flow/app/FlowTaskDoVo.java

@ -0,0 +1,36 @@
package com.yxt.anrui.portal.api.flow.app;
import com.fasterxml.jackson.annotation.JsonIgnore;
import com.fasterxml.jackson.annotation.JsonProperty;
import com.yxt.common.core.vo.Vo;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import java.util.Map;
/**
* @Author dimengzhe
* @Date 2022/7/20 9:45
* @Description
*/
@Data
public class FlowTaskDoVo implements Vo {
private static final long serialVersionUID = 8771689666940266426L;
private String taskName;
private String startDeptName;
private String startUserName;
private String procDefName;
private String processCreateTime;
private String createTime;
@JsonProperty("deployId")
private String procDefId;
private String procInsId;
private String taskId;
@JsonIgnore
@ApiModelProperty("节点id")
private String taskDefKey;
private AppVo appVariables;
@JsonIgnore
private Map<String,Object> processVariables;
}

2
anrui-portal/anrui-portal-biz/src/main/java/com/yxt/anrui/portal/biz/appsubsetversion/AppSubsetVersionMapper.java

@ -34,4 +34,6 @@ public interface AppSubsetVersionMapper extends BaseMapper<AppSubsetVersion> {
@Select("SELECT * FROM app_subset_version WHERE appSid=#{appSid} ORDER BY id DESC LIMIT 1")
AppSubsetVersionVo getLastByAppSid(@Param("appSid") String appSid);
AppSubsetVersionVo selectByAppSidOne(String s);
}

8
anrui-portal/anrui-portal-biz/src/main/java/com/yxt/anrui/portal/biz/appsubsetversion/AppSubsetVersionMapper.xml

@ -32,4 +32,12 @@
ORDER BY createTime DESC
LIMIT 1
</select>
<select id="selectByAppSidOne" resultType="com.yxt.anrui.portal.api.appsubsetversion.AppSubsetVersionVo">
SELECT *
FROM app_subset_version
WHERE appSid = #{appSid}
ORDER BY createTime DESC
LIMIT 1
</select>
</mapper>

4
anrui-portal/anrui-portal-biz/src/main/java/com/yxt/anrui/portal/biz/appsubsetversion/AppSubsetVersionService.java

@ -38,4 +38,8 @@ public class AppSubsetVersionService extends MybatisBaseService<AppSubsetVersion
public AppSubsetVersionVo getLastByAppSid(String appSid) {
return baseMapper.getLastByAppSid(appSid);
}
public AppSubsetVersionVo selectByAppSidOne(String s) {
return baseMapper.selectByAppSidOne(s);
}
}

42
anrui-portal/anrui-portal-biz/src/main/java/com/yxt/anrui/portal/biz/flow/FlowableRest.java

@ -28,12 +28,15 @@ package com.yxt.anrui.portal.biz.flow;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.yxt.anrui.flowable.api.flowtask.FlowTaskDto;
import com.yxt.anrui.portal.api.flow.*;
import com.yxt.anrui.portal.api.flow.app.FlowTaskDoQuery;
import com.yxt.anrui.portal.api.flow.app.FlowTaskDoVo;
import com.yxt.anrui.portal.api.sysstafforg.SysStaffOrgVo;
import com.yxt.anrui.portal.api.sysuser.SysUser;
import com.yxt.anrui.portal.biz.sysstafforg.SysStaffOrgService;
import com.yxt.anrui.portal.biz.sysuser.SysUserService;
import com.yxt.common.core.query.PagerQuery;
import com.yxt.common.core.result.ResultBean;
import com.yxt.common.core.vo.PagerVo;
import io.swagger.annotations.Api;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.web.bind.annotation.RequestMapping;
@ -79,24 +82,24 @@ public class FlowableRest implements FlowableFeign {
@Override
public ResultBean myprocess(String userSid, PagerQuery<FlowTaskQuery> taskQueryPagerQuery) {
return flowableService.myprocess(userSid,taskQueryPagerQuery);
return flowableService.myprocess(userSid, taskQueryPagerQuery);
}
@Override
public ResultBean todoTaskList(String userSid,PagerQuery<TaskQuery> pQuery) {
public ResultBean todoTaskList(String userSid, PagerQuery<TaskQuery> pQuery) {
SysUser sysUser = sysUserService.fetchBySid(userSid);
String staffSid = sysUser.getStaffSid();
List<SysStaffOrgVo> sysStaffOrgListByStaffSid = sysStaffOrgService.getSysStaffOrgListByStaffSid(staffSid);
StringBuilder sb=new StringBuilder();
for(SysStaffOrgVo s:sysStaffOrgListByStaffSid){
StringBuilder sb = new StringBuilder();
for (SysStaffOrgVo s : sysStaffOrgListByStaffSid) {
sb.append(s.getOrgSidPath());
sb.append(",");
}
sb.delete(sb.length()-1,sb.length());
sb.delete(sb.length() - 1, sb.length());
pQuery.getParams().setOrgSid(sb.toString());
return flowableService.todoTaskList(userSid,pQuery);
return flowableService.todoTaskList(userSid, pQuery);
}
@Override
@ -110,21 +113,25 @@ public class FlowableRest implements FlowableFeign {
}
@Override
public ResultBean doneTaskList(String userSid,PagerQuery<TaskQuery> pQuery) {
return flowableService.doneTaskList(userSid,pQuery);
public ResultBean doneTaskList(String userSid, PagerQuery<TaskQuery> pQuery) {
return flowableService.doneTaskList(userSid, pQuery);
}
@Override
public ResultBean complete(Map<String, Object> variables) {
return flowableService.complete(variables);
}
@Override
public ResultBean revokeProcess(String userSid, String businessSid, FlowTaskVo flowTaskVo) {
return flowableService.revokeProcess(userSid, businessSid, flowTaskVo);
}
@Override
public ResultBean flowRecord(String procInsId,String deployId) {
return flowableService.flowRecord(procInsId,deployId);
public ResultBean flowRecord(String procInsId, String deployId) {
return flowableService.flowRecord(procInsId, deployId);
}
@Override
public ResultBean taskReject(String businessSid, FlowTaskVo flowTaskVo) {
return flowableService.taskReject(businessSid, flowTaskVo);
@ -152,16 +159,16 @@ public class FlowableRest implements FlowableFeign {
SysUser sysUser = sysUserService.fetchBySid(userSid);
String staffSid = sysUser.getStaffSid();
List<SysStaffOrgVo> sysStaffOrgListByStaffSid = sysStaffOrgService.getSysStaffOrgListByStaffSid(staffSid);
StringBuilder sb=new StringBuilder();
for(SysStaffOrgVo s:sysStaffOrgListByStaffSid){
StringBuilder sb = new StringBuilder();
for (SysStaffOrgVo s : sysStaffOrgListByStaffSid) {
sb.append(s.getOrgSidPath());
sb.append(",");
}
if (sb.length() > 0) {
sb.delete(sb.length()-1,sb.length());
sb.delete(sb.length() - 1, sb.length());
}
pQuery.getParams().setOrgSid(sb.toString());
return flowableService.todoAllTaskList(userSid,pQuery);
return flowableService.todoAllTaskList(userSid, pQuery);
}
@Override
@ -171,11 +178,16 @@ public class FlowableRest implements FlowableFeign {
@Override
public ResultBean<Page<FlowTaskDto>> doneAllTaskList(String userSid, PagerQuery<FlowTaskAllQuery> pQuery) {//已办列表
return flowableService.doneAllTaskList(userSid,pQuery);
return flowableService.doneAllTaskList(userSid, pQuery);
}
@Override
public ResultBean getNextTasks(String taskId) {
return flowableService.getNextTasks(taskId);
}
@Override
public ResultBean<PagerVo<FlowTaskDoVo>> todoApp(PagerQuery<FlowTaskDoQuery> pagerQuery) {
return flowableService.todoApp(pagerQuery);
}
}

146
anrui-portal/anrui-portal-biz/src/main/java/com/yxt/anrui/portal/biz/flow/FlowableService.java

@ -26,24 +26,35 @@
package com.yxt.anrui.portal.biz.flow;
import cn.hutool.core.bean.BeanUtil;
import com.alibaba.fastjson.JSON;
import com.alibaba.fastjson.JSONObject;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.yxt.anrui.flowable.api.flowdefinition.FlowDefinitionFeign;
import com.yxt.anrui.flowable.api.flowdefinition.FlowDefinitionFeignBusinessStartDTO;
import com.yxt.anrui.flowable.api.flowtask.FlowTaskDto;
import com.yxt.anrui.flowable.api.flowtask.FlowTaskFeign;
import com.yxt.anrui.flowable.api.flowtask.LatestTaskVo;
import com.yxt.anrui.flowable.api.sysformlink.SysFormLinkFlowStateEnum;
import com.yxt.anrui.flowable.api.sysformlink.SysFormLinkFeign;
import com.yxt.anrui.flowable.api.sysformlink.SysFormLinkFlowStateEnum;
import com.yxt.anrui.flowable.api.sysprourl.SysProUrlFeign;
import com.yxt.anrui.flowable.api.sysprourl.SysProUrlVo;
import com.yxt.anrui.flowable.api.utils.ProcessStateEnum;
import com.yxt.anrui.flowable.sqloperationsymbol.BusinessTaskParam;
import com.yxt.anrui.flowable.sqloperationsymbol.BusinessTaskQuery;
import com.yxt.anrui.flowable.sqloperationsymbol.BusinessVariables;
import com.yxt.anrui.flowable.sqloperationsymbol.SQLOperationSymbol;
import com.yxt.anrui.portal.api.appsubsetversion.AppSubsetVersionVo;
import com.yxt.anrui.portal.api.flow.*;
import com.yxt.anrui.portal.api.flow.app.AppVo;
import com.yxt.anrui.portal.api.flow.app.FlowTaskDoQuery;
import com.yxt.anrui.portal.api.flow.app.FlowTaskDoVo;
import com.yxt.anrui.portal.biz.appsubsetversion.AppSubsetVersionService;
import com.yxt.common.base.service.MybatisBaseService;
import com.yxt.common.base.utils.ConstantUtils;
import com.yxt.common.base.utils.StringUtils;
import com.yxt.common.core.query.PagerQuery;
import com.yxt.common.core.result.ResultBean;
import com.yxt.common.core.vo.PagerVo;
import io.swagger.annotations.ApiParam;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
@ -51,6 +62,7 @@ import org.springframework.web.bind.annotation.PathVariable;
import org.springframework.web.bind.annotation.RequestBody;
import java.util.*;
import java.util.stream.Collectors;
/**
* Project: anrui-parent <br/>
@ -73,6 +85,10 @@ public class FlowableService extends MybatisBaseService<FlowableMapper, Flowable
private FlowTaskFeign flowTaskFeign;
@Autowired
private SysFormLinkFeign sysFormLinkFeign;
@Autowired
private SysProUrlFeign sysProUrlFeign;
@Autowired
private AppSubsetVersionService appSubsetVersionService;
public ResultBean businessStart(@ApiParam(value = "流程定义id") @PathVariable(value = "procDefId") String procDefId,
@ApiParam(value = "用户sid") @PathVariable(value = "userSid") String userSid,
@ -82,30 +98,30 @@ public class FlowableService extends MybatisBaseService<FlowableMapper, Flowable
dto.setProcDefId(procDefId);
dto.setUserSid(userSid);
dto.setVariables(variables);
variables.put("procDefId",procDefId);
variables.put("userSid",userSid);
variables.put("procDefId", procDefId);
variables.put("userSid", userSid);
variables.put("businessSid", UUID.randomUUID().toString());
BusinessVariables bv= BusinessVariables.builder().build();
BusinessVariables bv = BusinessVariables.builder().build();
bv.setFormVariables(variables);
ResultBean rb = flowDefinitionFeign.businessStart(bv);
return rb;
}
public ResultBean myprocess(String userSid,PagerQuery<FlowTaskQuery> taskQueryPagerQuery) {
PagerQuery<BusinessTaskQuery> pq=new PagerQuery<>();
public ResultBean myprocess(String userSid, PagerQuery<FlowTaskQuery> taskQueryPagerQuery) {
PagerQuery<BusinessTaskQuery> pq = new PagerQuery<>();
String days = taskQueryPagerQuery.getParams().getDays();
String zd = taskQueryPagerQuery.getParams().getZd();
pq.setCurrent(taskQueryPagerQuery.getCurrent());
pq.setSize(taskQueryPagerQuery.getSize());
BusinessTaskQuery businessTaskQuery = BusinessTaskQuery.create();
if(StringUtils.isNotBlank(zd)){
if (StringUtils.isNotBlank(zd)) {
BusinessTaskParam businessTaskParam = new BusinessTaskParam();
businessTaskParam.setField("zd");
businessTaskParam.setSqlOperationSymbol(SQLOperationSymbol.LIKE);
businessTaskParam.setValue(zd);
businessTaskQuery.add(businessTaskParam);
}
if(StringUtils.isNotBlank(days)){
if (StringUtils.isNotBlank(days)) {
BusinessTaskParam businessTaskParam = new BusinessTaskParam();
businessTaskParam.setField("days");
businessTaskParam.setSqlOperationSymbol(SQLOperationSymbol.EQUAL);
@ -113,14 +129,14 @@ public class FlowableService extends MybatisBaseService<FlowableMapper, Flowable
businessTaskQuery.add(businessTaskParam);
}
pq.setParams(businessTaskQuery);
return flowTaskFeign.businessMyprocess(userSid,pq);
return flowTaskFeign.businessMyprocess(userSid, pq);
}
public ResultBean processPagerList(Integer pageNum, Integer pageSize) {
return flowDefinitionFeign.pagerList(pageNum, pageSize);
}
public ResultBean todoTaskList(String userSid,PagerQuery<TaskQuery> pQuery) {
public ResultBean todoTaskList(String userSid, PagerQuery<TaskQuery> pQuery) {
TaskQuery params = pQuery.getParams();
if (StringUtils.isBlank(userSid)) {
return ResultBean.fireFail().setMsg("用户SID为空");
@ -148,14 +164,14 @@ public class FlowableService extends MybatisBaseService<FlowableMapper, Flowable
taskParam.setSqlOperationSymbol(SQLOperationSymbol.EQUAL);
taskParamList.add(taskParam);
}
if(StringUtils.isNotBlank(processDefinitionId)){
if (StringUtils.isNotBlank(processDefinitionId)) {
BusinessTaskParam taskParam = new BusinessTaskParam();
taskParam.setField("processDefinitionId");
taskParam.setSqlOperationSymbol(SQLOperationSymbol.NONE);
taskParam.setValue(processDefinitionId);
taskParamList.add(taskParam);
}
if(StringUtils.isNotBlank(orgSid)){
if (StringUtils.isNotBlank(orgSid)) {
BusinessTaskParam taskParam = new BusinessTaskParam();
taskParam.setField("orgSid");
taskParam.setSqlOperationSymbol(SQLOperationSymbol.NONE);
@ -167,7 +183,7 @@ public class FlowableService extends MybatisBaseService<FlowableMapper, Flowable
return flowTaskFeign.businessTodoList(userSid, taskQueryPagerQuery);
}
public ResultBean doneTaskList(String userSid,PagerQuery<TaskQuery> pQuery) {
public ResultBean doneTaskList(String userSid, PagerQuery<TaskQuery> pQuery) {
TaskQuery params = pQuery.getParams();
if (StringUtils.isBlank(userSid)) {
return ResultBean.fireFail().setMsg("用户SID为空");
@ -193,7 +209,7 @@ public class FlowableService extends MybatisBaseService<FlowableMapper, Flowable
taskParam.setSqlOperationSymbol(SQLOperationSymbol.EQUAL);
taskParamList.add(taskParam);
}
if(StringUtils.isNotBlank(processDefinitionId)){
if (StringUtils.isNotBlank(processDefinitionId)) {
BusinessTaskParam taskParam = new BusinessTaskParam();
taskParam.setField("processDefinitionId");
taskParam.setSqlOperationSymbol(SQLOperationSymbol.NONE);
@ -207,11 +223,12 @@ public class FlowableService extends MybatisBaseService<FlowableMapper, Flowable
/**
* 办理
*
* @param variables
* @return
*/
public ResultBean complete(Map<String, Object> variables) {
BusinessVariables bv= BusinessVariables.builder().build();
BusinessVariables bv = BusinessVariables.builder().build();
bv.setFormVariables(variables);
ResultBean<com.yxt.anrui.flowable.api.flowtask.FlowTask> resultBean = flowTaskFeign.businessComplete(bv);
if (!resultBean.getSuccess()) {
@ -240,14 +257,15 @@ public class FlowableService extends MybatisBaseService<FlowableMapper, Flowable
/**
* 撤回
*
* @param userSid
* @param businessSid
* @param flowTaskVo
* @return
*/
public ResultBean revokeProcess(String userSid, String businessSid, FlowTaskVo flowTaskVo) {
com.yxt.anrui.flowable.api.flowtask.FlowTaskVo fl=new com.yxt.anrui.flowable.api.flowtask.FlowTaskVo();
BeanUtil.copyProperties(flowTaskVo,fl);
com.yxt.anrui.flowable.api.flowtask.FlowTaskVo fl = new com.yxt.anrui.flowable.api.flowtask.FlowTaskVo();
BeanUtil.copyProperties(flowTaskVo, fl);
fl.setUserSid(userSid);
ResultBean<List<LatestTaskVo>> resultBean = flowTaskFeign.revokeProcess(fl);
if (!resultBean.getSuccess()) {
@ -263,8 +281,8 @@ public class FlowableService extends MybatisBaseService<FlowableMapper, Flowable
map.put("taskDefKey", taskDefKey);
map.put("flowState", SysFormLinkFlowStateEnum.UNCOMMITTED.getCode());
} else {
map.put("nodeState",nodeState );
map.put("taskDefKey",taskDefKey );
map.put("nodeState", nodeState);
map.put("taskDefKey", taskDefKey);
}
sysFormLinkFeign.updateFiled(map);
return new ResultBean().success();
@ -272,23 +290,25 @@ public class FlowableService extends MybatisBaseService<FlowableMapper, Flowable
/**
* 流程历史流转记录
*
* @param procInsId
* @param deployId
* @return
*/
public ResultBean flowRecord(String procInsId, String deployId) {
return flowTaskFeign.businessFlowRecord(procInsId,deployId);
return flowTaskFeign.businessFlowRecord(procInsId, deployId);
}
/**
* 驳回
*
* @param businessSid
* @param flowTaskVo
* @return
*/
public ResultBean taskReject(String businessSid, FlowTaskVo flowTaskVo) {
com.yxt.anrui.flowable.api.flowtask.FlowTaskVo fl=new com.yxt.anrui.flowable.api.flowtask.FlowTaskVo();
BeanUtil.copyProperties(flowTaskVo,fl);
com.yxt.anrui.flowable.api.flowtask.FlowTaskVo fl = new com.yxt.anrui.flowable.api.flowtask.FlowTaskVo();
BeanUtil.copyProperties(flowTaskVo, fl);
ResultBean<List<LatestTaskVo>> resultBean = flowTaskFeign.taskReject(fl);
if (!resultBean.getSuccess()) {
return resultBean;
@ -309,13 +329,14 @@ public class FlowableService extends MybatisBaseService<FlowableMapper, Flowable
/**
* 终止流程
*
* @param businessSid
* @param flowTaskVo
* @return
*/
public ResultBean breakProcess(String businessSid, FlowTaskVo flowTaskVo) {
com.yxt.anrui.flowable.api.flowtask.FlowTaskVo fl=new com.yxt.anrui.flowable.api.flowtask.FlowTaskVo();
BeanUtil.copyProperties(flowTaskVo,fl);
com.yxt.anrui.flowable.api.flowtask.FlowTaskVo fl = new com.yxt.anrui.flowable.api.flowtask.FlowTaskVo();
BeanUtil.copyProperties(flowTaskVo, fl);
ResultBean resultBean = flowTaskFeign.breakProcess(fl);
if (!resultBean.getSuccess()) {
return resultBean;
@ -330,9 +351,9 @@ public class FlowableService extends MybatisBaseService<FlowableMapper, Flowable
}
public void stopProcess(FlowTaskVo flowTaskVo) {
com.yxt.anrui.flowable.api.flowtask.FlowTaskVo fl=new com.yxt.anrui.flowable.api.flowtask.FlowTaskVo();
BeanUtil.copyProperties(flowTaskVo,fl);
flowTaskFeign.stopProcess(flowTaskVo.getUserSid(),fl);
com.yxt.anrui.flowable.api.flowtask.FlowTaskVo fl = new com.yxt.anrui.flowable.api.flowtask.FlowTaskVo();
BeanUtil.copyProperties(flowTaskVo, fl);
flowTaskFeign.stopProcess(flowTaskVo.getUserSid(), fl);
}
public void deleteProcess(String procInsId) {
@ -340,10 +361,8 @@ public class FlowableService extends MybatisBaseService<FlowableMapper, Flowable
}
public ResultBean<Page<FlowTaskDto>> todoAllTaskList(String userSid, PagerQuery<FlowTaskAllQuery> pQuery) {
ResultBean<Page<FlowTaskDto>> rb=new ResultBean<Page<FlowTaskDto>>().fireFail();
ResultBean<Page<FlowTaskDto>> rb = new ResultBean<Page<FlowTaskDto>>().fireFail();
FlowTaskAllQuery params = pQuery.getParams();
if (StringUtils.isBlank(userSid)) {
return rb.setMsg("用户SID为空");
@ -379,7 +398,7 @@ public class FlowableService extends MybatisBaseService<FlowableMapper, Flowable
taskParam.setSqlOperationSymbol(SQLOperationSymbol.LE);
taskParamList.add(taskParam);
}
if(StringUtils.isNotBlank(processDefinitionId)){
if (StringUtils.isNotBlank(processDefinitionId)) {
BusinessTaskParam taskParam = new BusinessTaskParam();
taskParam.setField("processDefinitionId");
taskParam.setSqlOperationSymbol(SQLOperationSymbol.NONE);
@ -396,12 +415,12 @@ public class FlowableService extends MybatisBaseService<FlowableMapper, Flowable
}
public ResultBean getNextTasks(String taskId) {
return flowTaskFeign.getNextTasks(taskId);
return flowTaskFeign.getNextTasks(taskId);
}
public ResultBean<Page<FlowTaskDto>> doneAllTaskList(String userSid,PagerQuery<FlowTaskAllQuery> pQuery) {
ResultBean<Page<FlowTaskDto>> rb=new ResultBean<Page<FlowTaskDto>>().fireFail();
public ResultBean<Page<FlowTaskDto>> doneAllTaskList(String userSid, PagerQuery<FlowTaskAllQuery> pQuery) {
ResultBean<Page<FlowTaskDto>> rb = new ResultBean<Page<FlowTaskDto>>().fireFail();
FlowTaskAllQuery params = pQuery.getParams();
if (StringUtils.isBlank(userSid)) {
return rb.setMsg("用户SID为空");
@ -435,7 +454,7 @@ public class FlowableService extends MybatisBaseService<FlowableMapper, Flowable
taskParam.setSqlOperationSymbol(SQLOperationSymbol.LE);
taskParamList.add(taskParam);
}
if(StringUtils.isNotBlank(processDefinitionId)){
if (StringUtils.isNotBlank(processDefinitionId)) {
BusinessTaskParam taskParam = new BusinessTaskParam();
taskParam.setField("processDefinitionId");
taskParam.setSqlOperationSymbol(SQLOperationSymbol.NONE);
@ -455,4 +474,61 @@ public class FlowableService extends MybatisBaseService<FlowableMapper, Flowable
public ResultBean getFlowViewer(String procInsId) {
return flowTaskFeign.getFlowViewer(procInsId);
}
public ResultBean<PagerVo<FlowTaskDoVo>> todoApp(PagerQuery<FlowTaskDoQuery> pagerQuery) {
ResultBean<PagerVo<FlowTaskDoVo>> rb = ResultBean.fireFail();
PagerQuery<BusinessTaskQuery> taskQueryPagerQuery = new PagerQuery<>();
taskQueryPagerQuery.setCurrent(pagerQuery.getCurrent()).setSize(pagerQuery.getSize());
FlowTaskDoQuery params = pagerQuery.getParams();
String names = params.getNames();
String userSid = params.getUserSid();
BusinessTaskQuery taskQuery = new BusinessTaskQuery();
List<BusinessTaskParam> taskParamList = new ArrayList<>();
if (StringUtils.isNotBlank(names)) {
BusinessTaskParam taskParam = new BusinessTaskParam();
taskParam.setField("proDefName");
taskParam.setValue(names);
taskParam.setSqlOperationSymbol(SQLOperationSymbol.LIKE);
taskParamList.add(taskParam);
}
taskQuery.setFields(taskParamList);
taskQueryPagerQuery.setParams(taskQuery);
ResultBean<Page<FlowTaskDto>> resultBean = flowTaskFeign.businessTodoList(userSid, taskQueryPagerQuery);
PagerVo<FlowTaskDoVo> page = new PagerVo<>();
List<FlowTaskDoVo> voList = Optional.ofNullable(resultBean.getData().getRecords()).orElse(new ArrayList<>()).stream().map(m -> JSON.parseObject(JSON.toJSONString(m), FlowTaskDoVo.class)).collect(Collectors.toList());
voList.removeAll(Collections.singleton(null));
for (FlowTaskDoVo f : voList) {
Map<String, Object> flowMap = f.getProcessVariables();
Map<String, Object> appMap = ConstantUtils.getMap(flowMap, "app");
String json = JSONObject.toJSONString(appMap);
System.out.println(json);
//根据节点id和流程定义id以及类型查询地址以及版本号等
String procDefId = f.getProcDefId();
String taskDefKey = f.getTaskDefKey();
ResultBean<SysProUrlVo> resultBean1 = sysProUrlFeign.selectUrlByKey(procDefId, taskDefKey, "1");
AppVo appVo = new AppVo();
appVo.setJson(json);
appVo.setModuleAction(resultBean1.getData().getUrl());
String appSid = resultBean1.getData().getModulePluginName();
//根据appSid查询最新版本的app插件包:以及类型:2插件,1框架
String type = Arrays.asList(appSid.split("#")).get(1);
if ("1".equals(type)) {
} else if ("2".equals(type)) {
AppSubsetVersionVo appSubsetVersions = appSubsetVersionService.selectByAppSidOne(Arrays.asList(appSid.split("#")).get(0));
if (appSubsetVersions != null) {
appVo.setPath(appSubsetVersions.getUpdateUrl());
appVo.setModuleVersion(appSubsetVersions.getVersionCode());
appVo.setType(type);
appVo.setModulePluginName(appSubsetVersions.getModulePluginName());
}
}
f.setAppVariables(appVo);
}
page.setRecords(voList);
page.setCurrent(resultBean.getData().getCurrent());
page.setSize(resultBean.getData().getSize());
page.setTotal(resultBean.getData().getTotal());
return rb.success().setData(page);
}
}

5
anrui-scm/anrui-scm-api/src/main/java/com/yxt/anrui/scm/api/scmvehicleinspectimgtemp/ScmVehicleInspectimgtempDto.java

@ -27,11 +27,12 @@ package com.yxt.anrui.scm.api.scmvehicleinspectimgtemp;
import com.yxt.common.core.dto.Dto;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import java.util.List;
/**
* Project: anrui-scm(供应链) <br/>
* File: ScmVehicleInspectimgtempDto.java <br/>
@ -53,6 +54,6 @@ public class ScmVehicleInspectimgtempDto implements Dto {
@ApiModelProperty("照片名称")
private String imgTitle;
@ApiModelProperty("照片示例")
private String imgTempUrl;
private List<String> imgTempUrl;
}

2
anrui-scm/anrui-scm-api/src/main/java/com/yxt/anrui/scm/api/scmvehicleinspectitem/ScmVehicleInspectitemDto.java

@ -67,6 +67,8 @@ public class ScmVehicleInspectitemDto implements Dto {
@ApiModelProperty(value = "图标地址")
private String iconUrl;
@ApiModelProperty(value = "照片说明")
private String remarks;
@ApiModelProperty(value = "检查项内容")
private List<ScmVehicleInspectdetailDto> inspectdetail = new ArrayList<>();

5
anrui-scm/anrui-scm-api/src/main/java/com/yxt/anrui/scm/api/scmvehicleinspectitem/ScmVehicleInspectitemVo.java

@ -58,8 +58,11 @@ public class ScmVehicleInspectitemVo implements Vo {
private Integer sortNo;
@ApiModelProperty("是否上传照片:是1,否0")
private Integer isImg;
private String isImg;
@ApiModelProperty(value = "照片说明")
private String remarks;
@ApiModelProperty(value = "检查结果")
private String result;
}

6
anrui-scm/anrui-scm-biz/src/main/java/com/yxt/anrui/scm/biz/scmvehiclegression/ScmVehicleGressionService.java

@ -522,9 +522,13 @@ public class ScmVehicleGressionService extends MybatisBaseService<ScmVehicleGres
//创建BusinessVariables实体对象
BusinessVariables bv = new BusinessVariables();
//流程中的参数赋值
Map<String, Object> variables = BeanUtil.beanToMap(dto);
// Map<String, Object> variables = BeanUtil.beanToMap(dto);
Map<String, Object> variables = new HashMap<>();
Map<String, Object> appMap = new HashMap<>();
appMap.put("sid", businessSid);
//若有网关,则赋值网关中判断的字段。
variables.put("businessSid", businessSid);
variables.put("app", appMap);
//用户的部门全路径sid
bv.setOrgSidPath(orgSidPath);
//业务sid

12
anrui-scm/anrui-scm-biz/src/main/java/com/yxt/anrui/scm/biz/scmvehicleinspectimgtemp/ScmVehicleInspectimgtempService.java

@ -25,7 +25,7 @@
*********************************************************/
package com.yxt.anrui.scm.biz.scmvehicleinspectimgtemp;
import cn.hutool.core.bean.BeanUtil;
import com.google.common.base.Joiner;
import com.yxt.anrui.scm.api.scmvehicleinspectimgtemp.ScmVehicleInspectimgtemp;
import com.yxt.anrui.scm.api.scmvehicleinspectimgtemp.ScmVehicleInspectimgtempDetailsVo;
import com.yxt.anrui.scm.api.scmvehicleinspectimgtemp.ScmVehicleInspectimgtempDto;
@ -62,10 +62,12 @@ public class ScmVehicleInspectimgtempService extends MybatisBaseService<ScmVehic
if (!inspectimgtemp.isEmpty()) {
inspectimgtemp.stream().forEach(item -> {
ScmVehicleInspectimgtemp scmVehicleInspectimgtemp = new ScmVehicleInspectimgtemp();
BeanUtil.copyProperties(item, scmVehicleInspectimgtemp);
if (scmVehicleInspectimgtemp.getImgTempUrl().contains(fileUploadComponent.getUrlPrefix())) {
scmVehicleInspectimgtemp.setImgTempUrl(scmVehicleInspectimgtemp.getImgTempUrl().replace(fileUploadComponent.getUrlPrefix(), ""));
}
item.getImgTempUrl().forEach(i -> {
if (i.contains(fileUploadComponent.getUrlPrefix())) {
i = i.replace(fileUploadComponent.getUrlPrefix(),"");
}
});
scmVehicleInspectimgtemp.setImgTempUrl(Joiner.on(",").join(item.getImgTempUrl()));
scmVehicleInspectimgtemp.setItemSid(sid);
baseMapper.insert(scmVehicleInspectimgtemp);
});

3
anrui-scm/anrui-scm-biz/src/main/java/com/yxt/anrui/scm/biz/scmvehicleinspectitem/ScmVehicleInspectitemMapper.xml

@ -10,7 +10,8 @@
case si.isImg
when 1 then '是'
when 0 then '否' end as isImg,
si.remarks
si.remarks,
si.result
FROM scm_vehicle_inspectitem si
<where>
${ew.sqlSegment}

7
anrui-terminal/anrui-terminal-api/src/main/java/com/yxt/anrui/terminal/api/supplychain/scmvehiclegression/AppGressionDto.java

@ -11,18 +11,17 @@ import java.util.List;
public class AppGressionDto implements Dto {
private static final long serialVersionUID = 6578281182401647801L;
@ApiModelProperty("sid")
@JsonProperty("sid")
private String sid;
@ApiModelProperty("任务id")
/* @ApiModelProperty("任务id")
private String taskId;
@ApiModelProperty("流程实例id")
private String procInsId;
private String procInsId;*/
@ApiModelProperty("用户sid")
@JsonProperty("userSid")
private String userSid;
@ApiModelProperty("申请人编号")

6
anrui-terminal/anrui-terminal-api/src/main/java/com/yxt/anrui/terminal/api/supplychain/scmvehiclegression/AppScmVehicleGressionFeign.java

@ -25,6 +25,7 @@
*********************************************************/
package com.yxt.anrui.terminal.api.supplychain.scmvehiclegression;
import com.yxt.anrui.terminal.api.supplychain.scmvehiclegression.flowable.SubmitGressionDto;
import com.yxt.common.core.query.PagerQuery;
import com.yxt.common.core.result.ResultBean;
import com.yxt.common.core.vo.PagerVo;
@ -83,4 +84,9 @@ public interface AppScmVehicleGressionFeign {
@PostMapping("/saveCarTransferSiteImage")
@ResponseBody
public ResultBean saveCarTransferSiteImage(@RequestBody AppCarTransferSiteImageDto dto);
@ApiOperation("提交流程")
@PostMapping("/submitCarTransferInfo")
@ResponseBody
ResultBean submitCarTransferInfo(@RequestBody SubmitGressionDto dto);
}

6
anrui-terminal/anrui-terminal-api/src/main/java/com/yxt/anrui/terminal/api/supplychain/scmvehiclegression/AppScmVehicleGressionFeignFallback.java

@ -25,6 +25,7 @@
*********************************************************/
package com.yxt.anrui.terminal.api.supplychain.scmvehiclegression;
import com.yxt.anrui.terminal.api.supplychain.scmvehiclegression.flowable.SubmitGressionDto;
import com.yxt.common.core.query.PagerQuery;
import com.yxt.common.core.result.ResultBean;
import com.yxt.common.core.vo.PagerVo;
@ -76,4 +77,9 @@ public class AppScmVehicleGressionFeignFallback implements AppScmVehicleGression
public ResultBean saveCarTransferSiteImage(AppCarTransferSiteImageDto dto) {
return null;
}
@Override
public ResultBean submitCarTransferInfo(SubmitGressionDto dto) {
return null;
}
}

22
anrui-terminal/anrui-terminal-api/src/main/java/com/yxt/anrui/terminal/api/supplychain/scmvehiclegression/flowable/SubmitGressionDto.java

@ -0,0 +1,22 @@
package com.yxt.anrui.terminal.api.supplychain.scmvehiclegression.flowable;
import com.fasterxml.jackson.annotation.JsonProperty;
import com.yxt.anrui.terminal.api.supplychain.scmvehiclegression.AppGressionDto;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
/**
* @Author dimengzhe
* @Date 2022/7/18 10:58
* @Description
*/
@Data
public class SubmitGressionDto extends AppGressionDto {
private static final long serialVersionUID = 8239298882878726942L;
@ApiModelProperty("流程实例id")
@JsonProperty("procInsId")
private String instanceId;
@ApiModelProperty("任务id")
private String taskId;
}

10
anrui-terminal/anrui-terminal-biz/src/main/java/com/yxt/anrui/terminal/biz/supplychain/scmvehiclegression/AppScmVehicleGressionRest.java

@ -25,16 +25,15 @@
*********************************************************/
package com.yxt.anrui.terminal.biz.supplychain.scmvehiclegression;
import com.yxt.anrui.scm.api.scmvehiclegression.*;
import com.yxt.anrui.terminal.api.supplychain.scmvehiclegression.*;
import com.yxt.anrui.terminal.api.supplychain.scmvehiclegression.flowable.SubmitGressionDto;
import com.yxt.common.core.query.PagerQuery;
import com.yxt.common.core.result.ResultBean;
import com.yxt.common.core.vo.PagerVo;
import io.swagger.annotations.Api;
import io.swagger.annotations.ApiOperation;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Controller;
import org.springframework.web.bind.annotation.*;
import org.springframework.web.bind.annotation.RequestMapping;
/**
@ -92,4 +91,9 @@ public class AppScmVehicleGressionRest implements AppScmVehicleGressionFeign {
public ResultBean saveCarTransferSiteImage(AppCarTransferSiteImageDto dto) {
return appScmVehicleGressionService.saveCarTransferSiteImage(dto);
}
@Override
public ResultBean submitCarTransferInfo(SubmitGressionDto dto) {
return appScmVehicleGressionService.submitCarTransferInfo(dto);
}
}

21
anrui-terminal/anrui-terminal-biz/src/main/java/com/yxt/anrui/terminal/biz/supplychain/scmvehiclegression/AppScmVehicleGressionService.java

@ -26,21 +26,13 @@
package com.yxt.anrui.terminal.biz.supplychain.scmvehiclegression;
import cn.hutool.core.bean.BeanUtil;
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
import com.baomidou.mybatisplus.core.metadata.IPage;
import com.yxt.anrui.scm.api.scmvehicleexamine.*;
import com.yxt.anrui.scm.api.scmvehiclegression.*;
import com.yxt.anrui.terminal.api.supplychain.scmvehicleexamine.AppExamineDetailsVo;
import com.yxt.anrui.terminal.api.supplychain.scmvehicleexamine.AppExamineInfoVo;
import com.yxt.anrui.terminal.api.supplychain.scmvehicleexamine.AppExaminePageVo;
import com.yxt.anrui.terminal.api.supplychain.scmvehiclegression.*;
import com.yxt.anrui.terminal.api.supplychain.scmvehiclegression.flowable.SubmitGressionDto;
import com.yxt.anrui.terminal.config.CoverUtils;
import com.yxt.common.base.service.MybatisBaseService;
import com.yxt.common.base.utils.PagerUtil;
import com.yxt.common.core.query.PagerQuery;
import com.yxt.common.core.result.ResultBean;
import com.yxt.common.core.vo.PagerVo;
import org.apache.commons.lang3.StringUtils;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
@ -118,4 +110,15 @@ public class AppScmVehicleGressionService {
ResultBean resultBean = scmVehicleGressionFeign.saveCarTransferSiteImage(appScmVehicleCarTransferSiteImageDto);
return resultBean;
}
public ResultBean submitCarTransferInfo(SubmitGressionDto dto) {
ResultBean rb = ResultBean.fireFail();
SubmitCarTransferDto submitCarTransferDto = new SubmitCarTransferDto();
BeanUtil.copyProperties(dto, submitCarTransferDto);
ResultBean resultBean = scmVehicleGressionFeign.submitCarTransfer(submitCarTransferDto);
if (!resultBean.getSuccess()) {
return rb.setMsg(resultBean.getMsg());
}
return rb.success();
}
}
Loading…
Cancel
Save