update:修改审批定义的创建
This commit is contained in:
+2
-2
@@ -40,8 +40,8 @@ public class FeiShuDockingController {
|
||||
* @return
|
||||
*/
|
||||
@PostMapping("/createApprovalDefinition")
|
||||
public String createApprovalDefinition() {
|
||||
return feiShuDockingService.createApprovalDefinition();
|
||||
public String createApprovalDefinition(String approvalCode, String approvalName) {
|
||||
return feiShuDockingService.createApprovalDefinition(approvalCode, approvalName);
|
||||
}
|
||||
|
||||
/**
|
||||
|
||||
+1
-1
@@ -18,7 +18,7 @@ public interface IFeiShuDockingService {
|
||||
* 创建三方审批的定义
|
||||
* @return
|
||||
*/
|
||||
String createApprovalDefinition();
|
||||
String createApprovalDefinition(String approvalCode, String approvalName);
|
||||
|
||||
/**
|
||||
* 查看指定三方审批定义
|
||||
|
||||
+16
-9
@@ -9,6 +9,7 @@ import com.jero.common.api.vo.Result;
|
||||
import com.jero.common.constant.CommonConstant;
|
||||
import com.jero.common.exception.JeroBootException;
|
||||
import com.jero.common.system.util.JwtUtil;
|
||||
import com.jero.common.system.vo.DictModel;
|
||||
import com.jero.common.system.vo.SysDictItemCore;
|
||||
import com.jero.common.util.RedisUtil;
|
||||
import com.jero.common.util.oConvertUtils;
|
||||
@@ -77,8 +78,6 @@ public class FeiShuDockingServiceImpl implements IFeiShuDockingService {
|
||||
private String appSecret;
|
||||
@Value("${feishu.managersIds}")
|
||||
private String managersIds;
|
||||
@Value("${feishu.approvalName}")
|
||||
private String approvalName;
|
||||
|
||||
private static final String USER_INFO = "userInfo";
|
||||
|
||||
@@ -100,13 +99,13 @@ public class FeiShuDockingServiceImpl implements IFeiShuDockingService {
|
||||
}
|
||||
|
||||
@Override
|
||||
public String createApprovalDefinition() {
|
||||
public String createApprovalDefinition(String approvalCode, String approvalName) {
|
||||
String url = env.getProperty("feishu.create_approval_definition");
|
||||
assert url != null;
|
||||
// 获取token
|
||||
String accessToken = getAccessToken();
|
||||
// 构建对象
|
||||
ApprovalsDefinitionVo approvalsDefinitionVo = buildDefinitionVo();
|
||||
ApprovalsDefinitionVo approvalsDefinitionVo = buildDefinitionVo(approvalCode, approvalName);
|
||||
// 设置请求头
|
||||
HttpHeaders headers = createHeaders(accessToken);
|
||||
// 构建包含查询参数的 URL
|
||||
@@ -129,12 +128,12 @@ public class FeiShuDockingServiceImpl implements IFeiShuDockingService {
|
||||
}
|
||||
|
||||
// 构建创建审批定义的入参对象
|
||||
public ApprovalsDefinitionVo buildDefinitionVo() {
|
||||
public ApprovalsDefinitionVo buildDefinitionVo(String approvalCode, String approvalName) {
|
||||
ApprovalsDefinitionVo approvalsDefinitionVo = new ApprovalsDefinitionVo();
|
||||
// 构建审批定义vo
|
||||
approvalsDefinitionVo.setApproval_name("@i18n@1");
|
||||
approvalsDefinitionVo.setApproval_code("permission_test3");
|
||||
approvalsDefinitionVo.setGroup_code("work_group");
|
||||
approvalsDefinitionVo.setApproval_code(approvalCode);
|
||||
approvalsDefinitionVo.setGroup_code(approvalCode);
|
||||
approvalsDefinitionVo.setGroup_name("@i18n@2");
|
||||
// 构建三方审批相关对象.
|
||||
DefinitionExternal definitionExternal = new DefinitionExternal();
|
||||
@@ -265,7 +264,9 @@ public class FeiShuDockingServiceImpl implements IFeiShuDockingService {
|
||||
String promoterUserId = instanceDto.getPromoterUserId();
|
||||
if (StringUtils.isNoneBlank(promoterUserId)) {
|
||||
SysUser promoterUser = sysUserService.getById(promoterUserId);
|
||||
promoterUserId = promoterUser.getFeishuId();
|
||||
if (!Objects.isNull(promoterUser) && StringUtils.isNotBlank(promoterUser.getFeishuId())) {
|
||||
promoterUserId = promoterUser.getFeishuId();
|
||||
}
|
||||
}
|
||||
// 审核人的id(可能为多个),查出对应的飞书id
|
||||
String reviewedIds = instanceDto.getReviewedIds();
|
||||
@@ -337,7 +338,13 @@ public class FeiShuDockingServiceImpl implements IFeiShuDockingService {
|
||||
promoterMobileLink = url.replace("{REDIRECT_URI}", promoterMobileLink);
|
||||
}
|
||||
// 审批定义的code
|
||||
String approvalDefinition = createApprovalDefinition();
|
||||
Integer processType = instanceDto.getProcessType();
|
||||
// 拿到这个流程的名称
|
||||
List<DictModel> prcTypeList = sysDictService.getDictItems("prc_type");
|
||||
// 将列表转换为Map
|
||||
Map<String, String> prcTypeMap = prcTypeList.stream().collect(Collectors.toMap(DictModel::getValue, DictModel::getText));
|
||||
String processName = prcTypeMap.get(String.valueOf(processType));
|
||||
String approvalDefinition = createApprovalDefinition("process_" + processType, processName);
|
||||
// 发起人相关的信息
|
||||
ApprovalsInstanceVo approvalsInstanceVo = new ApprovalsInstanceVo();
|
||||
approvalsInstanceVo.setApproval_code(approvalDefinition);
|
||||
|
||||
Reference in New Issue
Block a user