丽知:新增 委外采购(付款单)->采购付款申请(新) 钉钉审批实例

This commit is contained in:
zhengyf 2024-10-28 00:34:49 +08:00
parent 6b58abc666
commit c1786b7cb8
3 changed files with 39 additions and 35 deletions

View File

@ -86,11 +86,11 @@ public class PushU8CServiceImpl implements PushU8CService {
//base转文件流-上传钉盘-拿到钉盘信息可能是List集合 //base转文件流-上传钉盘-拿到钉盘信息可能是List集合
List<FileModuleVO> fileModuleVOList = baseTransformFile2uploadDing(djFileVO.getSysFileVOS(),tokenBody.getAccessToken(),unionid,SPACEID,SPECIAL_SERVICE_PROCESSING_FOLDER); List<FileModuleVO> fileModuleVOList = baseTransformFile2uploadDing(djFileVO.getSysFileVOS(),tokenBody.getAccessToken(),unionid,SPACEID,PURCHASE_PAYMENT_REQUEST_NEW_FOLDER);
System.out.println(fileModuleVOList); System.out.println(fileModuleVOList);
//推送钉钉--发起审批实例 //推送钉钉--发起审批实例
excuteDingTalkOutSource(tokenBody.getAccessToken(),SPECIAL_SERVICE_PROCESSING,djFileVO.getDjzbVO(),fileModuleVOList); excuteDingTalkOutSource(tokenBody.getAccessToken(),PURCHASE_PAYMENT_REQUEST_NEW,djFileVO.getDjzbVO(),fileModuleVOList);
@ -186,35 +186,40 @@ public class PushU8CServiceImpl implements PushU8CService {
//formComponentValues-->表单数据内容控件列表最大列表长度150 //formComponentValues-->表单数据内容控件列表最大列表长度150
List<StartProcessInstanceRequest.StartProcessInstanceRequestFormComponentValues> form = new ArrayList<>(); List<StartProcessInstanceRequest.StartProcessInstanceRequestFormComponentValues> form = new ArrayList<>();
// form.add(new StartProcessInstanceRequest.StartProcessInstanceRequestFormComponentValues().setName("费用归属公司").setValue(parentvo.getExternal_org_name())); form.add(new StartProcessInstanceRequest.StartProcessInstanceRequestFormComponentValues().setName("费用归属公司").setValue("1"));
// form.add(new StartProcessInstanceRequest.StartProcessInstanceRequestFormComponentValues().setName("费用归属部门(选择至末级部门)").setValue(parentvo.getExternal_org_name())); form.add(new StartProcessInstanceRequest.StartProcessInstanceRequestFormComponentValues().setName("费用归属部门(选择至末级部门)").setValue("1"));
// form.add(new StartProcessInstanceRequest.StartProcessInstanceRequestFormComponentValues().setName("品牌").setValue(parentvo.getExternal_org_name())); form.add(new StartProcessInstanceRequest.StartProcessInstanceRequestFormComponentValues().setName("品牌").setValue("1"));
// form.add(new StartProcessInstanceRequest.StartProcessInstanceRequestFormComponentValues().setName("费用所属类目").setValue(parentvo.getExternal_org_name())); form.add(new StartProcessInstanceRequest.StartProcessInstanceRequestFormComponentValues().setName("费用所属类目").setValue("1"));
// form.add(new StartProcessInstanceRequest.StartProcessInstanceRequestFormComponentValues().setName("付款类型").setValue(parentvo.getExternal_org_name())); form.add(new StartProcessInstanceRequest.StartProcessInstanceRequestFormComponentValues().setName("付款类型").setValue("1"));
// form.add(new StartProcessInstanceRequest.StartProcessInstanceRequestFormComponentValues().setName("付款比例").setValue(parentvo.getExternal_org_name())); form.add(new StartProcessInstanceRequest.StartProcessInstanceRequestFormComponentValues().setName("付款比例").setValue("1"));
// form.add(new StartProcessInstanceRequest.StartProcessInstanceRequestFormComponentValues().setName("类目所属(供应链)").setValue(parentvo.getExternal_org_name())); form.add(new StartProcessInstanceRequest.StartProcessInstanceRequestFormComponentValues().setName("类目所属(供应链)").setValue("1"));
// form.add(new StartProcessInstanceRequest.StartProcessInstanceRequestFormComponentValues().setName("项目编号").setValue(parentvo.getExternal_org_name())); form.add(new StartProcessInstanceRequest.StartProcessInstanceRequestFormComponentValues().setName("项目编号").setValue("1"));
// form.add(new StartProcessInstanceRequest.StartProcessInstanceRequestFormComponentValues().setName("项目名称").setValue(parentvo.getExternal_org_name())); form.add(new StartProcessInstanceRequest.StartProcessInstanceRequestFormComponentValues().setName("项目名称").setValue("1"));
// form.add(new StartProcessInstanceRequest.StartProcessInstanceRequestFormComponentValues().setName("类型").setValue(parentvo.getExternal_org_name())); form.add(new StartProcessInstanceRequest.StartProcessInstanceRequestFormComponentValues().setName("类型").setValue("1"));
//列表 //列表
List<List<DingTableVO>> dingTableVOSMaterialList = new ArrayList<>(); List<List<DingTableVO>> dingTableVOSMaterialList = new ArrayList<>();
for (DjzbVO.Arap_djfb children : childrens) { for (DjzbVO.Arap_djfb children : childrens) {
List<DingTableVO> dingTableVOS = new ArrayList<>(); List<DingTableVO> dingTableVOS = new ArrayList<>();
// dingTableVOS.add(new DingTableVO("存货分类", children.getDate_property_name())); dingTableVOS.add(new DingTableVO("存货分类", "2"));
// dingTableVOS.add(new DingTableVO("产品名称", children.getDate_property_name())); dingTableVOS.add(new DingTableVO("产品名称", "2"));
// dingTableVOS.add(new DingTableVO("产品数量", children.getDate_property_name())); dingTableVOS.add(new DingTableVO("产品数量", "2"));
// dingTableVOS.add(new DingTableVO("付款金额(元)", children.getDate_property_name())); dingTableVOS.add(new DingTableVO("付款金额(元)", "665"));
// dingTableVOS.add(new DingTableVO("税率", children.getDate_property_name())); dingTableVOS.add(new DingTableVO("税率", "13"));
dingTableVOSMaterialList.add(dingTableVOS);
} }
// form.add(new StartProcessInstanceRequest.StartProcessInstanceRequestFormComponentValues().setName("开票抬头").setValue(parentvo.getExternal_org_name())); form.add(new StartProcessInstanceRequest.StartProcessInstanceRequestFormComponentValues().setName("付款明细").setValue(JSONUtil.toJsonStr(dingTableVOSMaterialList)));
// form.add(new StartProcessInstanceRequest.StartProcessInstanceRequestFormComponentValues().setName("开票方").setValue(parentvo.getExternal_org_name()));
// form.add(new StartProcessInstanceRequest.StartProcessInstanceRequestFormComponentValues().setName("对方类型").setValue(parentvo.getExternal_org_name())); form.add(new StartProcessInstanceRequest.StartProcessInstanceRequestFormComponentValues().setName("开票抬头").setValue("1"));
// form.add(new StartProcessInstanceRequest.StartProcessInstanceRequestFormComponentValues().setName("支付方式-银行").setValue(parentvo.getExternal_org_name())); form.add(new StartProcessInstanceRequest.StartProcessInstanceRequestFormComponentValues().setName("开票方").setValue("1"));
// form.add(new StartProcessInstanceRequest.StartProcessInstanceRequestFormComponentValues().setName("银行支行名称").setValue(parentvo.getExternal_org_name())); form.add(new StartProcessInstanceRequest.StartProcessInstanceRequestFormComponentValues().setName("对方类型").setValue("1"));
// form.add(new StartProcessInstanceRequest.StartProcessInstanceRequestFormComponentValues().setName("申请支付日期").setValue(parentvo.getExternal_org_name())); form.add(new StartProcessInstanceRequest.StartProcessInstanceRequestFormComponentValues().setName("支付方式-银行").setValue("1"));
// form.add(new StartProcessInstanceRequest.StartProcessInstanceRequestFormComponentValues().setName("备注").setValue(parentvo.getExternal_org_name())); form.add(new StartProcessInstanceRequest.StartProcessInstanceRequestFormComponentValues().setName("银行支行名称").setValue("1"));
form.add(new StartProcessInstanceRequest.StartProcessInstanceRequestFormComponentValues().setName("申请支付日期").setValue("2024-10-27"));
form.add(new StartProcessInstanceRequest.StartProcessInstanceRequestFormComponentValues().setName("备注").setValue("1"));
//附件 //附件
form.add(new StartProcessInstanceRequest.StartProcessInstanceRequestFormComponentValues().setName("附件").setValue(JSONUtil.toJsonStr(fileModuleVOList))); // form.add(new StartProcessInstanceRequest.StartProcessInstanceRequestFormComponentValues().setName("上传相关附件(业务相关证明、关联原合同审批件)").setValue(JSONUtil.toJsonStr(fileModuleVOList)));
// form.add(new StartProcessInstanceRequest.StartProcessInstanceRequestFormComponentValues().setComponentType("DDAttachment").setId("DDAttachment_1PDRXW3QT4G00").setName("上传相关附件(业务相关证明、关联原合同审批件)").setValue(JSONUtil.toJsonStr(fileModuleVOList)));
form.add(new StartProcessInstanceRequest.StartProcessInstanceRequestFormComponentValues().setComponentType("DDAttachment").setId("DDAttachment_1PDRXW3QT4G00").setName("上传相关附件").setValue(JSONUtil.toJsonStr(fileModuleVOList)));
/** /**
@ -227,13 +232,13 @@ public class PushU8CServiceImpl implements PushU8CService {
* approvers-->不使用审批流模板时直接指定的审批人列表最大列表长度20 * approvers-->不使用审批流模板时直接指定的审批人列表最大列表长度20
* formComponentValues-->表单数据内容控件列表最大列表长度150 * formComponentValues-->表单数据内容控件列表最大列表长度150
*/ */
StartProcessInstanceResponse startProcessInstanceResponse = DingTalkUtils.InitiateApprovalInstance(accessToken, "6715600736721738", processCode, 1L, Long.valueOf(U8C_TEST_AGENTID), null, form); StartProcessInstanceResponse startProcessInstanceResponse = DingTalkUtils.InitiateApprovalInstance(accessToken, "6715600736721738", processCode, -1L, Long.valueOf(U8C_TEST_AGENTID), null, form);
JSONObject jsonObject = JSONUtil.parseObj(startProcessInstanceResponse); JSONObject jsonObject = JSONUtil.parseObj(startProcessInstanceResponse);
String statusCode = jsonObject.get("statusCode").toString(); String statusCode = jsonObject.get("statusCode").toString();
if (!statusCode.equals("200")) { if (statusCode!=null&&!statusCode.equals("200")) {
Assert.state(false, "问题记录:推送钉钉审批实例失败。失败原因:{}", JSONUtil.toJsonStr(jsonObject.get("body"))); Assert.state(false, "委外采购(付款单)->采购付款申请(新):推送钉钉审批实例失败。失败原因:{}", JSONUtil.toJsonStr(jsonObject.get("body")));
} }
logger.info("推送钉钉-->发起审批实例-->执行成功"); logger.info("推送钉钉-->发起审批实例:委外采购(付款单)->采购付款申请(新)-->执行成功");
//审批实例id //审批实例id
String instanceId = JSONUtil.parseObj(jsonObject.get("body")).get("instanceId").toString(); String instanceId = JSONUtil.parseObj(jsonObject.get("body")).get("instanceId").toString();

View File

@ -86,7 +86,7 @@ public class FileUtil {
} }
//2.3调用提交文件接口完成文件上传 //2.3调用提交文件接口完成文件上传
CommitFileRequest.CommitFileRequestOptionAppProperties commitFileRequestOptionAppProperties = new CommitFileRequest.CommitFileRequestOptionAppProperties(); CommitFileRequest.CommitFileRequestOptionAppProperties commitFileRequestOptionAppProperties = new CommitFileRequest.CommitFileRequestOptionAppProperties();
commitFileRequestOptionAppProperties.setName(fileVO.getFileName()); commitFileRequestOptionAppProperties.setName(fileVO.getFileName()+"."+fileVO.getType());
commitFileRequestOptionAppProperties.setValue(fileVO.getFileName()); commitFileRequestOptionAppProperties.setValue(fileVO.getFileName());
commitFileRequestOptionAppProperties.setVisibility("PUBLIC");//属性可见性 - PUBLIC所有应用都可见 - PRIVATE仅限当前应用可见 commitFileRequestOptionAppProperties.setVisibility("PUBLIC");//属性可见性 - PUBLIC所有应用都可见 - PRIVATE仅限当前应用可见
@ -98,10 +98,9 @@ public class FileUtil {
//4.组装钉钉文件控件-->"[{\"spaceId\": \"163xxxx658\", \"fileName\": \"2644.JPG\", \"fileSize\": \"333\", \"fileType\": \"jpg\", \"fileId\": \"643xxxx140\"}]" //4.组装钉钉文件控件-->"[{\"spaceId\": \"163xxxx658\", \"fileName\": \"2644.JPG\", \"fileSize\": \"333\", \"fileType\": \"jpg\", \"fileId\": \"643xxxx140\"}]"
fileModuleVO.setSpaceId(spaceId); fileModuleVO.setSpaceId(spaceId);
fileModuleVO.setFileName(fileVO.getFileName()); fileModuleVO.setFileName(fileVO.getFileName()+"."+fileVO.getType());
fileModuleVO.setFileSize(String.valueOf(fileVO.getFileSize())); fileModuleVO.setFileSize(fileVO.getFileSize());
String s = StringUtils.substringAfter(fileVO.getFileName(), "."); fileModuleVO.setFileType(fileVO.getType());//取后缀
fileModuleVO.setFileType(s);//取后缀
fileModuleVO.setFileId(dingFileUniqueId); fileModuleVO.setFileId(dingFileUniqueId);
}catch (Exception e){ }catch (Exception e){

View File

@ -8,7 +8,7 @@ public class SysFileVO {
private String fileName; private String fileName;
/** 文件类型 */ /** 文件类型 */
private String type; private String type;
/** 文件大小(kb */ /** 文件大小(B */
private String fileSize; private String fileSize;
/** base64编码 */ /** base64编码 */
private String baseCode; private String baseCode;