Commit 95fa46fa authored by yangyang's avatar yangyang

fix(检验检测开通):1.保存并提交的接口自动执行第一步流程;2.业务开通表新增工作流active_key字段

parent 7ed40113
......@@ -105,4 +105,9 @@ public class JyjcOpeningApplication extends BaseEntity {
*/
@TableField(value = "workflow_prostance_id")
private String workflowProstanceId;
/**
* 工作流节点
*/
@TableField (value = "workflow_active_key")
private String workflowActiveKey;
}
......@@ -66,6 +66,9 @@ public class JyjcOpeningApplicationModel extends BaseModel {
@ApiModelProperty (value = "工作流实例ID")
private String workflowProstanceId;
@ApiModelProperty (value = "工作流节点")
private String workflowActiveKey;
/* ---------------- -------------- */
@ApiModelProperty (value = "企业资质信息")
List<TzBaseUnitLicenceDto> baseUnitLicences;
......
......@@ -2,6 +2,7 @@ package com.yeejoin.amos.boot.module.jyjc.biz.controller;
import cn.hutool.core.map.MapBuilder;
import com.yeejoin.amos.boot.module.jyjc.api.entity.JyjcOpeningApplication;
import com.yeejoin.amos.boot.module.jyjc.biz.config.BaseException;
import com.yeejoin.amos.feign.privilege.Privilege;
import com.yeejoin.amos.feign.privilege.model.AgencyUserModel;
import com.yeejoin.amos.feign.privilege.model.GroupModel;
......@@ -190,17 +191,25 @@ public class JyjcOpeningApplicationController extends BaseController {
jyjcOpeningApplicationServiceImpl.stopFlow(instanceId);
}
@TycloudOperation(ApiLevel = UserType.AGENCY)
@GetMapping(value = "/getUserRole")
@ApiOperation(httpMethod = "GET", value = "获取用户所属组", notes = "获取用户所属组")
public ResponseModel<List<Long>> getUserRole() {
AgencyUserModel userModel = Privilege.agencyUserClient.queryByUserId(RequestContext.getExeUserId()).getResult();
if (userModel == null) {
throw new BaseException("请先登陆!");
}
List<RoleModel> roleModels = userModel.getOrgRoles()
.values().stream().flatMap(Collection::stream).collect(Collectors.toList());
List<Long> roleIds = roleModels.stream().map(RoleModel::getSequenceNbr).distinct().collect(Collectors.toList());
return ResponseHelper.buildResponse(roleIds);
}
@TycloudOperation (ApiLevel = UserType.AGENCY)
@ApiOperation (httpMethod = "GET", value = "办理状态枚举列表", notes = "办理状态枚举列表")
@GetMapping (value = "/flow-status/list")
public ResponseModel<List<Map<String, Object>>> selectForFlowStatusList() {
return ResponseHelper.buildResponse(jyjcOpeningApplicationServiceImpl.selectForFlowStatusList());
}
}
......@@ -102,8 +102,11 @@ public class JyjcOpeningApplicationServiceImpl extends BaseService<JyjcOpeningAp
model.setStatus(FlowStatusEnum.SUBMITTED.getCode() + "");
model.setStatusName(FlowStatusEnum.SUBMITTED.getName());
model.setApplyTime(new Date());
model.setWorkflowActiveKey(dataObject.getString("taskDefinitionKey"));
// model.setStatus(!ValidationUtil.isEmpty(dataObject) && !ValidationUtil.isEmpty(dataObject.get("status")) ? String.valueOf(dataObject.get("status")) : "");
model.setWorkflowProstanceId(instanceId);
// 默认自动执行第一步
execueFlow(MapBuilder.<String,Object>create().put("op", "0").put("instanceId", instanceId).put("comments", "").build());
} else {
model.setStatus(FlowStatusEnum.TO_BE_SUBMITTED.getCode() + "");
model.setStatusName(FlowStatusEnum.TO_BE_SUBMITTED.getName());
......@@ -129,20 +132,23 @@ public class JyjcOpeningApplicationServiceImpl extends BaseService<JyjcOpeningAp
model.setStatus(FlowStatusEnum.SUBMITTED.getCode() + "");
model.setStatusName(FlowStatusEnum.SUBMITTED.getName());
model = this.updateWithModel(model);
execueFlow(MapBuilder.<String,Object>create().put("op", "1").put("instanceId", model.getWorkflowProstanceId()).put("comments", "").build());
execueFlow(MapBuilder.<String,Object>create().put("op", "0").put("instanceId", model.getWorkflowProstanceId()).put("comments", "").build());
return model;
}
public void updateModelByInstanceId(String instanceId, String status) {
log.info("updateModelByInstanceId, instanceId={}", instanceId);
JyjcOpeningApplication entity = this.lambdaQuery().eq(JyjcOpeningApplication::getWorkflowProstanceId, instanceId).one();
if (entity == null) {
return;
}
JSONObject taskJson = getTask(instanceId);
log.info("taskJson => {}", taskJson);
if (taskJson == null) {
log.warn("流程=>{}查询不到或已结束", instanceId);
return;
}
entity.setWorkflowRole(getWorkflowRoleGroups(taskJson));
// entity.setStatus(getWorkflowStatus(taskJson));
entity.setWorkflowActiveKey(taskJson.getString("taskDefinitionKey"));
entity.setStatus(status);
entity.setStatusName(FlowStatusEnum.getNameByType(Long.parseLong(status)));
this.updateById(entity);
......@@ -377,4 +383,15 @@ public class JyjcOpeningApplicationServiceImpl extends BaseService<JyjcOpeningAp
return (calendar.getTimeInMillis() - System.currentTimeMillis()) / 1000;
}
public List<Map<String, Object>> selectForFlowStatusList() {
return Arrays.stream(FlowStatusEnum.values()).map(this::mapPointTypeToMap).collect(Collectors.toList());
}
private Map<String, Object> mapPointTypeToMap(FlowStatusEnum e) {
Map<String, Object> record = new HashMap<>();
record.put("key", e.getCode());
record.put("label", e.getName());
return record;
}
}
\ 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