1 public ActionResult Dingding(string sheetno, long dept, string plant, stringClass) {2 //需填写的主表数据

3 var bill = tApp.GetList().Where(t => t.F_SHEETNO ==sheetno).FirstOrDefault();4 //需填写的详表数据

5 var details =tDetailApp.GetList(bill.F_Id);6

7 string accessToken = dingApp.getAccessToken();//AccessToken码8

9 //获取钉钉用户id:发起人

10 string code = "zhangsan";11 var userEntry = userApp.GetList().Where(t => t.F_Account ==code).FirstOrDefault();12

13 DefaultDingTalkClient client = new DefaultDingTalkClient("https://oapi.dingtalk.com/topapi/processinstance/create");14 OapiProcessinstanceCreateRequest request = newOapiProcessinstanceCreateRequest();15

16 request.AgentId = 312711454;//创建的H5微应用的AgentId

17 request.ProcessCode = "PROC-13AFD98D-97F7-4793-8C5D-E612B750BBBC";//在设置审批模板的url中

18

19 List formComponentValues = new List();20 //单行输入框

21 OapiProcessinstanceCreateRequest.FormComponentValueVoDomain obj1 = newOapiProcessinstanceCreateRequest.FormComponentValueVoDomain();22 obj1.Name = "调拨单号";23 obj1.Value =bill.F_SHEETNO;24 OapiProcessinstanceCreateRequest.FormComponentValueVoDomain obj2 = newOapiProcessinstanceCreateRequest.FormComponentValueVoDomain();25 obj2.Name = "调出部门";26 obj2.Value =bill.F_USEDEPTNAME;27

28 OapiProcessinstanceCreateRequest.FormComponentValueVoDomain obj3 = newOapiProcessinstanceCreateRequest.FormComponentValueVoDomain();29 obj3.Name = "调入部门";30 obj3.Value =bill.F_TOUSEDEPTNAME;31

32 OapiProcessinstanceCreateRequest.FormComponentValueVoDomain obj4 = newOapiProcessinstanceCreateRequest.FormComponentValueVoDomain();33 obj4.Name = ("工厂");34 obj4.Value =(plant);35

36 OapiProcessinstanceCreateRequest.FormComponentValueVoDomain obj5 = newOapiProcessinstanceCreateRequest.FormComponentValueVoDomain();37 obj5.Name = ("资产类别");38 obj5.Value =(Class);39

40 OapiProcessinstanceCreateRequest.FormComponentValueVoDomain vo = newOapiProcessinstanceCreateRequest.FormComponentValueVoDomain();41

42 var a = "";43 foreach (var item indetails)44 {45 //明细-单行输入框

46 OapiProcessinstanceCreateRequest.FormComponentValueVoDomain ItemName1 = newOapiProcessinstanceCreateRequest.FormComponentValueVoDomain();47 ItemName1.Name = "资产编码";48 ItemName1.Value =item.F_BARCODE;49

50 OapiProcessinstanceCreateRequest.FormComponentValueVoDomain ItemName2 = newOapiProcessinstanceCreateRequest.FormComponentValueVoDomain();51 ItemName2.Name = "资产名称";52 ItemName2.Value =item.F_FANAME;53

54 OapiProcessinstanceCreateRequest.FormComponentValueVoDomain ItemName3 = newOapiProcessinstanceCreateRequest.FormComponentValueVoDomain();55 ItemName3.Name = "资产规格";56 ItemName3.Value =item.F_SPEC;57

58 OapiProcessinstanceCreateRequest.FormComponentValueVoDomain ItemName4 = newOapiProcessinstanceCreateRequest.FormComponentValueVoDomain();59 ItemName4.Name = "资产数量";60 ItemName4.Value =item.F_QTY.ToString();61

62 a += ",[" + ItemName1.ToJson() + "," + ItemName2.ToJson() + "," + ItemName3.ToJson() + "," + ItemName4.ToJson() + "]";63

64 }65

66 a = "[" + a.Substring(1, a.Length - 1) + "]";67

68

69

70 vo.Name = "明细";71 vo.Value =a;72

73

74 formComponentValues.Add(obj1);75 formComponentValues.Add(obj2);76 formComponentValues.Add(obj3);77 formComponentValues.Add(obj4);78 formComponentValues.Add(obj5);79 formComponentValues.Add(vo);80 request.FormComponentValues_ =formComponentValues;81 request.OriginatorUserId = userEntry.F_DINGID;//发起人

82 request.DeptId = dept;//发起人部门83 //OapiProcessinstanceCreateResponse response = client.Execute(request, accessToken);

84

85 return Success("提交成功!!");86 }

PHP获取钉钉审批,钉钉调用审批流相关推荐

  1. 对接钉钉审批_钉钉审批对接是什么-和钉钉审批对接相关的问题-阿里云开发者社区...

    关于 钉钉审批对接的搜索结果 问题 企业系统对接钉钉生成审批单,企业系统处理审批后,如何撤销钉钉审批单 公司erp系统与钉钉对接,erp发起审批后同步到钉钉生成审批实例,在erp中用户处理了审批,如何 ...

  2. 钉钉dd.ready中不能调用方法解决,钉钉微应用遇到的坑

    钉钉dd.ready中不能调用方法解决 获取微应用免登授权码 官方代码: dd.ready(function() {dd.runtime.permission.requestAuthCode({cor ...

  3. 钉钉小程序父组件调用子组件方法(钉钉小程序踩坑实录)

    钉钉小程序父组件调用子组件方法 页面到底部,父组件触发,调用子组件的方法,加载子组件的数据 解决方法 子组件里: didMount() {this.$page.childComponent = thi ...

  4. 开发日志:准备开发ERP对接钉钉,对使用钉钉API简单可行性概述。

    钉钉是一款现在非常流行的业务办公类软件,具有企业内部沟通.考勤审批.外部CRM等功能.除此之外,钉钉还开放了API接口.让我们程序员可以非常方便借助钉钉已有的功能,补充企业管理的短板.刚好最近准备开发 ...

  5. Java项目中利用钉钉机器人Webhook向钉钉群推送告警通知

    今天来讲一下 Java项目中利用钉钉机器人Webhook向钉钉群推送告警通知 一.配置钉钉群 1.新建一个接收通知的钉钉群 如下图,创建一个接收通知的钉钉群 选择项目群,点创建 输入群名称,右侧选择群 ...

  6. 【浙政钉】微信-专有钉钉小程序-开发踩坑实记

    文章目录 ⭐[浙政钉]微信-专有钉钉小程序-开发踩坑实记 ⭐ 创建项目 ⭐ 转化方案 ⭐ 政务钉钉调试 ⭐ 上传发布 ⭐[浙政钉]微信-专有钉钉小程序-开发踩坑实记 最近有个需求,要将微信小程序转为浙 ...

  7. android 钉钉考勤日历,vue钉钉考勤日历 vue实现钉钉的考勤日历

    想了解vue实现钉钉的考勤日历的相关内容吗,张张张立宏在本文为您仔细讲解vue钉钉考勤日历的相关知识和一些Code实例,欢迎阅读和指正,我们先划重点:vue钉钉考勤日历,vue钉钉考勤,vue考勤日历 ...

  8. Flowable钉钉对接004-创建钉钉任务

    企业中有自己的业务系统,审批都在业务系统中审批,如何结合移动办公的开放平台实现统一审批至关重要. 场景很简单,自己的系统中可以审批,钉钉上也可以审批,使用H5来适配,统一待办任务 统一待办审批 目标: ...

  9. jenkins 中无Dingding plugin钉钉插件,及其钉钉发送消息

    四.jenkins构建项目,给钉钉发送消息 (1)项目配置钉钉信息 更正:通知人,填写想要通知的那个人的手机号,不是姓名 (2).构建成功,给钉钉发送消息 (4)钉钉配置错误的情况 三.jenkins ...

最新文章

  1. ISA Server 2004 FAQ集
  2. MySql级联删除和更新
  3. 【208天】黑马程序员27天视频学习笔记【Day21-中】
  4. spark官方文档_Spark整合Ray思路漫谈
  5. Redis系列教程(一):Redis缓存的设计、性能、应用与数据集群同步
  6. NeurIPS 2020 | 基于“单目标域样本”的领域自适应方法
  7. 浅谈K短路算法(KSP)之一(A*算法求解)
  8. R40 gpio 使用【原创】
  9. 介绍一个python的新的web framework——karloop框架
  10. js运行机制详解:event loop
  11. Bootstrap4颜色拾取器插件
  12. 修复inspinia中popover的点击问题
  13. 抽象数据类型三元组Triplet基本操作与实现 严蔚敏版
  14. 14、Spark_RDD算子——CombineByKey_ReduceByKey转换
  15. Linux实战技巧--文件系统操作(四)--文本内容查看(cat/head/tail)
  16. 常用英文单词的标准缩写
  17. 170604 逆向-CrackMe之013
  18. MTR 网络诊断工具
  19. 【C语言】案例十一:分支结构(任意三个数的升序排列)
  20. GLTFLoader

热门文章

  1. eclipse新建web项目
  2. matlab进度条的使用
  3. 真香!刷抖音的利器,送一个!
  4. 10. 利用playbook在不同主机组修改文件内容
  5. BLDC-永磁同步电机启动策略(3)- IPD启动
  6. 微信小程序debug
  7. 智能光伏汇流箱 裸板式汇流采集装置 时丽花
  8. pycharm出M1版本了
  9. 在windows和Python2.7下,安装Scapy
  10. Vivado 除法IP的使用