本帖最后由 Felix.Li 于 2023-1-5 19:12 编辑
在应用系统集成中,用户给报表创建了运行计划,定时邮件推送该报表到相关的用户邮箱中,当用户在业务系统中更改收件人之后,希望能够同步更新到报表的运行计划。避免多次重复工作,此时可以使用Wyn Enterprise的API来实现该需求。
重点:Wyn Enterprise提供GraphQL API,几乎所有界面操作均可通过调用API完成,本贴主要介绍运行计划的更新API。
具体实现过程:
1.给报表添加相关的运行计划。
2.调用API实现运行计划更新
首先获取到运行计划的ID,可以通过在门户编辑想要调整的运行计划,更新计划之后可以在浏览器的F12开发人员工具的网络下可以看到调用的GraphQL API参数。
获取到这个参数以及运行计划ID之后,即可通过HTTP-POST请求来调用实现更新运行计划
- <font face="微软雅黑" size="3">POST /api/graphql?theme=blue&lng=zh&token=8908645b0958662d66731038944c7d236d3d7c1ee98e3e2de3c5268453965a8a HTTP/1.1
- Host: localhost:51980
- Content-Type: application/json
- {"query":"mutation {\n\t\t\tupdateTask(id : "b83e265b-f136-489b-b175-25d63a5b60f4", task: {\n\t\t\t\ttemplateId: "",\n\t\t\t\tdescription: "1",\n\t\t\t\tisActive: true,\n\t\t\t\ttask: {\n\t\t\t\t\ttaskType: RptExport,\n\t\t\t\t\tpayload: "{\\"exportFormat\\":\\"excel\\",\\"parameters\\":{}}",\n\t\t\t\t\tparameters: "{}",\n\t\t\t\t},\n\t\t\t\tdocumentId: "0ddb33e9-3211-4d96-9d25-ca34458dd8b9",\n\t\t\t\ttrigger: { pattern: { patterns : ["0 30 18 ? * SUN,MON,TUE,WED,THU,FRI,SAT *"], startDate : "2020-08-26T10:30:00.000Z" , timeZoneId: "China Standard Time" } },\n\t\t\t\tdeployTo: { emailAttach: { settings: { mailTo: ["412838762@qq.com","123@123.com"], subject: "定时报表", body: "您有来自于 &ReportName 的最新报表数据,该报表在 &ExecutionTime 生成,您可以查看附件内容,也可以通过以下地址查看 &Link &ExportResult", replyTo: "", useRichText: false, allowUserChangeEmailTo: false }, localStore: { allowAnonymous: false, storePolicy: { forever: true } } } }\n\t\t\t}) { id }\n\t\t}"}</font>
复制代码 注意:外部调用API时需要在地址加上token认证信息
3.然后用户可以更改参数里面的值来进行动态更新运行计划。
比如调整参数的邮件收件人,mailTo参数增加新的收件人,API调用成功之后即可看到页面的运行计划进行了更新。
|
|