|
|
@@ -374,6 +374,10 @@ public class BoyangServiceImpl implements BoyangService {
|
|
|
downloadFile(signDownloadOuterUrl,downloadPath + signedFileName);
|
|
|
//签署后文件上传到钉盘
|
|
|
Map dentry = uploadDdFile(spaceId, parentDentryUuid, downloadPath + signedFileName, operatorUnionId);
|
|
|
+
|
|
|
+ //添加权限 OA发起人可下载
|
|
|
+ setPermissions(dentry, originatorUserId,"DOWNLOADER");
|
|
|
+
|
|
|
//审批单添加评论
|
|
|
comment(processInstanceId,originatorUserId,fileName + "已签署",Arrays.asList(dentry));
|
|
|
}
|
|
|
@@ -405,6 +409,32 @@ public class BoyangServiceImpl implements BoyangService {
|
|
|
}
|
|
|
}
|
|
|
|
|
|
+ private void setPermissions(Map dentry, String userId,String roleId) {
|
|
|
+ String dentryUuid = dentry.get("uuid").toString();
|
|
|
+
|
|
|
+ //添加权限
|
|
|
+ Map<String,Object> param3 = new HashMap<>();
|
|
|
+ param3.put("unionId",operatorUnionId);
|
|
|
+
|
|
|
+ List<Map> dentryPermissionList = new ArrayList<>();
|
|
|
+ //OWNER: 拥有者 MANAGER: 管理者 EDITOR: 编辑者 DOWNLOADER: 查看下载者 READER: 仅可查看者
|
|
|
+ dentryPermissionList.add(new HashMap<String,Object>(){{
|
|
|
+ put("type","USER");
|
|
|
+ put("id",userId);//发起人userid
|
|
|
+ }});
|
|
|
+
|
|
|
+ Map body3 = new HashMap();
|
|
|
+ body3.put("roleId",roleId);
|
|
|
+ body3.put("members",dentryPermissionList);
|
|
|
+
|
|
|
+ DDR_New ddrNew3 = (DDR_New) UtilHttp.doPost("https://api.dingtalk.com/v2.0/storage/spaces/dentries/" + dentryUuid + "/permissions", ddClient.initTokenHeader(), param3, body3, DDR_New.class);
|
|
|
+ if (ddrNew3.isSuccess()){
|
|
|
+ log.info("权限设置成功!");
|
|
|
+ }else {
|
|
|
+ log.error("权限设置失败!" + ddrNew3.getCode() + " " + ddrNew3.getMessage());
|
|
|
+ }
|
|
|
+ }
|
|
|
+
|
|
|
@Override
|
|
|
public McR getOrganization(String name) {
|
|
|
if (Strings.isBlank(name)){
|