main.tea 18 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540541542543544545546547548549550551552553554555556557558559560561562563564565566567568569570571572573574575576577578579580581582583584585586587588589590591592593594595596597598599600601602603604605606607608609610611612613614615616617618619620621622623624625626627628
  1. import EasySDKKernel;
  2. type @kernel = EasySDKKernel
  3. init(kernel: EasySDKKernel) {
  4. @kernel = kernel;
  5. }
  6. model AlipayOpenPublicMessageContentCreateResponse {
  7. httpBody: string(name='http_body', description='响应原始字符串'),
  8. code: string(name='code'),
  9. msg: string(name='msg'),
  10. subCode: string(name='sub_code'),
  11. subMsg: string(name='sub_msg'),
  12. contentId: string(name='content_id'),
  13. contentUrl: string(name='content_url')
  14. }
  15. model AlipayOpenPublicMessageContentModifyResponse {
  16. httpBody: string(name='http_body', description='响应原始字符串'),
  17. code: string(name='code'),
  18. msg: string(name='msg'),
  19. subCode: string(name='sub_code'),
  20. subMsg: string(name='sub_msg'),
  21. contentId: string(name='content_id'),
  22. contentUrl: string(name='content_url')
  23. }
  24. model AlipayOpenPublicMessageTotalSendResponse {
  25. httpBody: string(name='http_body', description='响应原始字符串'),
  26. code: string(name='code'),
  27. msg: string(name='msg'),
  28. subCode: string(name='sub_code'),
  29. subMsg: string(name='sub_msg'),
  30. messageId: string(name='message_id')
  31. }
  32. model Text {
  33. title: string(name='title'),
  34. content: string(name='content')
  35. }
  36. model Article {
  37. title?: string(name='title'),
  38. desc: string(name='desc'),
  39. imageUrl?: string(name='image_url'),
  40. url: string(name='url'),
  41. actionName?: string(name='action_name')
  42. }
  43. model Keyword {
  44. color: string(name='color'),
  45. value: string(name='value')
  46. }
  47. model Context {
  48. headColor: string(name='head_color'),
  49. url: string(name='url'),
  50. actionName: string(name='action_name'),
  51. keyword1?: Keyword(name='keyword1'),
  52. keyword2?: Keyword(name='keyword2'),
  53. first?: Keyword(name='first'),
  54. remark?: Keyword(name='remark')
  55. }
  56. model Template {
  57. templateId: string(name='template_id'),
  58. context: Context(name='context')
  59. }
  60. model AlipayOpenPublicMessageSingleSendResponse {
  61. httpBody: string(name='http_body', description='响应原始字符串'),
  62. code: string(name='code'),
  63. msg: string(name='msg'),
  64. subCode: string(name='sub_code'),
  65. subMsg: string(name='sub_msg')
  66. }
  67. model AlipayOpenPublicLifeMsgRecallResponse {
  68. httpBody: string(name='http_body', description='响应原始字符串'),
  69. code: string(name='code'),
  70. msg: string(name='msg'),
  71. subCode: string(name='sub_code'),
  72. subMsg: string(name='sub_msg')
  73. }
  74. model AlipayOpenPublicTemplateMessageIndustryModifyResponse {
  75. httpBody: string(name='http_body', description='响应原始字符串'),
  76. code: string(name='code'),
  77. msg: string(name='msg'),
  78. subCode: string(name='sub_code'),
  79. subMsg: string(name='sub_msg')
  80. }
  81. model AlipayOpenPublicSettingCategoryQueryResponse {
  82. httpBody: string(name='http_body', description='响应原始字符串'),
  83. code: string(name='code'),
  84. msg: string(name='msg'),
  85. subCode: string(name='sub_code'),
  86. subMsg: string(name='sub_msg'),
  87. primaryCategory: string(name='primary_category'),
  88. secondaryCategory: string(name='secondary_category')
  89. }
  90. api createImageTextContent(title: string, cover: string, content: string, contentComment: string, ctype: string, benefit: string, extTags: string, loginIds: string): AlipayOpenPublicMessageContentCreateResponse {
  91. var systemParams: map[string]string = {
  92. method = 'alipay.open.public.message.content.create',
  93. app_id = @kernel.getConfig("appId"),
  94. timestamp = @kernel.getTimestamp(),
  95. format = 'json',
  96. version = '1.0',
  97. alipay_sdk = @kernel.getSdkVersion(),
  98. charset = 'UTF-8',
  99. sign_type = @kernel.getConfig("signType"),
  100. app_cert_sn = @kernel.getMerchantCertSN(),
  101. alipay_root_cert_sn = @kernel.getAlipayRootCertSN()
  102. };
  103. var bizParams: map[string]any = {
  104. title = title,
  105. cover = cover,
  106. content = content,
  107. could_comment = contentComment,
  108. ctype = ctype,
  109. benefit = benefit,
  110. ext_tags = extTags,
  111. login_ids = loginIds
  112. };
  113. var textParams: map[string]string = {
  114. };
  115. __request.protocol = @kernel.getConfig("protocol");
  116. __request.method = 'POST';
  117. __request.pathname = '/gateway.do';
  118. __request.headers = {
  119. host = @kernel.getConfig("gatewayHost"),
  120. content-type = 'application/x-www-form-urlencoded;charset=utf-8'
  121. };
  122. __request.query = @kernel.sortMap({
  123. sign = @kernel.sign(systemParams, bizParams, textParams, @kernel.getConfig("merchantPrivateKey")),
  124. ... systemParams,
  125. ... textParams
  126. });
  127. __request.body = @kernel.toUrlEncodedRequestBody(bizParams);
  128. } returns {
  129. var respMap: map[string]any = @kernel.readAsJson(__response, "alipay.open.public.message.content.create");
  130. if (@kernel.isCertMode()) {
  131. if (@kernel.verify(respMap, @kernel.extractAlipayPublicKey(@kernel.getAlipayCertSN(respMap)))) {
  132. return @kernel.toRespModel(respMap);
  133. }
  134. } else {
  135. if (@kernel.verify(respMap, @kernel.getConfig("alipayPublicKey"))) {
  136. return @kernel.toRespModel(respMap);
  137. }
  138. }
  139. throw {
  140. message = '验签失败,请检查支付宝公钥设置是否正确。'
  141. }
  142. } runtime {
  143. connectTimeout = 15000,
  144. readTimeout = 15000,
  145. retry = {
  146. maxAttempts = 0
  147. }
  148. }
  149. api modifyImageTextContent(contentId: string, title: string, cover: string, content: string, couldComment: string, ctype: string, benefit: string, extTags: string, loginIds: string): AlipayOpenPublicMessageContentModifyResponse {
  150. var systemParams: map[string]string = {
  151. method = 'alipay.open.public.message.content.modify',
  152. app_id = @kernel.getConfig("appId"),
  153. timestamp = @kernel.getTimestamp(),
  154. format = 'json',
  155. version = '1.0',
  156. alipay_sdk = @kernel.getSdkVersion(),
  157. charset = 'UTF-8',
  158. sign_type = @kernel.getConfig("signType"),
  159. app_cert_sn = @kernel.getMerchantCertSN(),
  160. alipay_root_cert_sn = @kernel.getAlipayRootCertSN()
  161. };
  162. var bizParams: map[string]any = {
  163. content_id = contentId,
  164. title = title,
  165. cover = cover,
  166. content = content,
  167. could_comment = couldComment,
  168. ctype = ctype,
  169. benefit = benefit,
  170. ext_tags = extTags,
  171. login_ids = loginIds
  172. };
  173. var textParams: map[string]string = {
  174. };
  175. __request.protocol = @kernel.getConfig("protocol");
  176. __request.method = 'POST';
  177. __request.pathname = '/gateway.do';
  178. __request.headers = {
  179. host = @kernel.getConfig("gatewayHost"),
  180. content-type = 'application/x-www-form-urlencoded;charset=utf-8'
  181. };
  182. __request.query = @kernel.sortMap({
  183. sign = @kernel.sign(systemParams, bizParams, textParams, @kernel.getConfig("merchantPrivateKey")),
  184. ... systemParams,
  185. ... textParams
  186. });
  187. __request.body = @kernel.toUrlEncodedRequestBody(bizParams);
  188. } returns {
  189. var respMap: map[string]any = @kernel.readAsJson(__response, "alipay.open.public.message.content.modify");
  190. if (@kernel.isCertMode()) {
  191. if (@kernel.verify(respMap, @kernel.extractAlipayPublicKey(@kernel.getAlipayCertSN(respMap)))) {
  192. return @kernel.toRespModel(respMap);
  193. }
  194. } else {
  195. if (@kernel.verify(respMap, @kernel.getConfig("alipayPublicKey"))) {
  196. return @kernel.toRespModel(respMap);
  197. }
  198. }
  199. throw {
  200. message = '验签失败,请检查支付宝公钥设置是否正确。'
  201. }
  202. } runtime {
  203. connectTimeout = 15000,
  204. readTimeout = 15000,
  205. retry = {
  206. maxAttempts = 0
  207. }
  208. }
  209. api sendText(text: string): AlipayOpenPublicMessageTotalSendResponse {
  210. var systemParams: map[string]string = {
  211. method = 'alipay.open.public.message.total.send',
  212. app_id = @kernel.getConfig("appId"),
  213. timestamp = @kernel.getTimestamp(),
  214. format = 'json',
  215. version = '1.0',
  216. alipay_sdk = @kernel.getSdkVersion(),
  217. charset = 'UTF-8',
  218. sign_type = @kernel.getConfig("signType"),
  219. app_cert_sn = @kernel.getMerchantCertSN(),
  220. alipay_root_cert_sn = @kernel.getAlipayRootCertSN()
  221. };
  222. var textObj: Text = new Text {
  223. title = '',
  224. content = text
  225. };
  226. var bizParams: map[string]any = {
  227. msg_type = 'text',
  228. text = textObj
  229. };
  230. var textParams: map[string]string = {
  231. };
  232. __request.protocol = @kernel.getConfig("protocol");
  233. __request.method = 'POST';
  234. __request.pathname = '/gateway.do';
  235. __request.headers = {
  236. host = @kernel.getConfig("gatewayHost"),
  237. content-type = 'application/x-www-form-urlencoded;charset=utf-8'
  238. };
  239. __request.query = @kernel.sortMap({
  240. sign = @kernel.sign(systemParams, bizParams, textParams, @kernel.getConfig("merchantPrivateKey")),
  241. ... systemParams,
  242. ... textParams
  243. });
  244. __request.body = @kernel.toUrlEncodedRequestBody(bizParams);
  245. } returns {
  246. var respMap: map[string]any = @kernel.readAsJson(__response, "alipay.open.public.message.total.send");
  247. if (@kernel.isCertMode()) {
  248. if (@kernel.verify(respMap, @kernel.extractAlipayPublicKey(@kernel.getAlipayCertSN(respMap)))) {
  249. return @kernel.toRespModel(respMap);
  250. }
  251. } else {
  252. if (@kernel.verify(respMap, @kernel.getConfig("alipayPublicKey"))) {
  253. return @kernel.toRespModel(respMap);
  254. }
  255. }
  256. throw {
  257. message = '验签失败,请检查支付宝公钥设置是否正确。'
  258. }
  259. } runtime {
  260. connectTimeout = 15000,
  261. readTimeout = 15000,
  262. retry = {
  263. maxAttempts = 0
  264. }
  265. }
  266. api sendImageText(articles: [ Article ]): AlipayOpenPublicMessageTotalSendResponse {
  267. var systemParams: map[string]string = {
  268. method = 'alipay.open.public.message.total.send',
  269. app_id = @kernel.getConfig("appId"),
  270. timestamp = @kernel.getTimestamp(),
  271. format = 'json',
  272. version = '1.0',
  273. alipay_sdk = @kernel.getSdkVersion(),
  274. charset = 'UTF-8',
  275. sign_type = @kernel.getConfig("signType"),
  276. app_cert_sn = @kernel.getMerchantCertSN(),
  277. alipay_root_cert_sn = @kernel.getAlipayRootCertSN()
  278. };
  279. var bizParams: map[string]any = {
  280. msg_type = 'image-text',
  281. articles = articles
  282. };
  283. var textParams: map[string]string = {
  284. };
  285. __request.protocol = @kernel.getConfig("protocol");
  286. __request.method = 'POST';
  287. __request.pathname = '/gateway.do';
  288. __request.headers = {
  289. host = @kernel.getConfig("gatewayHost"),
  290. content-type = 'application/x-www-form-urlencoded;charset=utf-8'
  291. };
  292. __request.query = @kernel.sortMap({
  293. sign = @kernel.sign(systemParams, bizParams, textParams, @kernel.getConfig("merchantPrivateKey")),
  294. ... systemParams,
  295. ... textParams
  296. });
  297. __request.body = @kernel.toUrlEncodedRequestBody(bizParams);
  298. } returns {
  299. var respMap: map[string]any = @kernel.readAsJson(__response, "alipay.open.public.message.total.send");
  300. if (@kernel.isCertMode()) {
  301. if (@kernel.verify(respMap, @kernel.extractAlipayPublicKey(@kernel.getAlipayCertSN(respMap)))) {
  302. return @kernel.toRespModel(respMap);
  303. }
  304. } else {
  305. if (@kernel.verify(respMap, @kernel.getConfig("alipayPublicKey"))) {
  306. return @kernel.toRespModel(respMap);
  307. }
  308. }
  309. throw {
  310. message = '验签失败,请检查支付宝公钥设置是否正确。'
  311. }
  312. } runtime {
  313. connectTimeout = 15000,
  314. readTimeout = 15000,
  315. retry = {
  316. maxAttempts = 0
  317. }
  318. }
  319. api sendSingleMessage(toUserId: string, template: Template): AlipayOpenPublicMessageSingleSendResponse {
  320. var systemParams: map[string]string = {
  321. method = 'alipay.open.public.message.single.send',
  322. app_id = @kernel.getConfig("appId"),
  323. timestamp = @kernel.getTimestamp(),
  324. format = 'json',
  325. version = '1.0',
  326. alipay_sdk = @kernel.getSdkVersion(),
  327. charset = 'UTF-8',
  328. sign_type = @kernel.getConfig("signType"),
  329. app_cert_sn = @kernel.getMerchantCertSN(),
  330. alipay_root_cert_sn = @kernel.getAlipayRootCertSN()
  331. };
  332. var bizParams: map[string]any = {
  333. to_user_id = toUserId,
  334. template = template
  335. };
  336. var textParams: map[string]string = {
  337. };
  338. __request.protocol = @kernel.getConfig("protocol");
  339. __request.method = 'POST';
  340. __request.pathname = '/gateway.do';
  341. __request.headers = {
  342. host = @kernel.getConfig("gatewayHost"),
  343. content-type = 'application/x-www-form-urlencoded;charset=utf-8'
  344. };
  345. __request.query = @kernel.sortMap({
  346. sign = @kernel.sign(systemParams, bizParams, textParams, @kernel.getConfig("merchantPrivateKey")),
  347. ... systemParams,
  348. ... textParams
  349. });
  350. __request.body = @kernel.toUrlEncodedRequestBody(bizParams);
  351. } returns {
  352. var respMap: map[string]any = @kernel.readAsJson(__response, "alipay.open.public.message.single.send");
  353. if (@kernel.isCertMode()) {
  354. if (@kernel.verify(respMap, @kernel.extractAlipayPublicKey(@kernel.getAlipayCertSN(respMap)))) {
  355. return @kernel.toRespModel(respMap);
  356. }
  357. } else {
  358. if (@kernel.verify(respMap, @kernel.getConfig("alipayPublicKey"))) {
  359. return @kernel.toRespModel(respMap);
  360. }
  361. }
  362. throw {
  363. message = '验签失败,请检查支付宝公钥设置是否正确。'
  364. }
  365. } runtime {
  366. connectTimeout = 15000,
  367. readTimeout = 15000,
  368. retry = {
  369. maxAttempts = 0
  370. }
  371. }
  372. api recallMessage(messageId: string): AlipayOpenPublicLifeMsgRecallResponse {
  373. var systemParams: map[string]string = {
  374. method = 'alipay.open.public.life.msg.recall',
  375. app_id = @kernel.getConfig("appId"),
  376. timestamp = @kernel.getTimestamp(),
  377. format = 'json',
  378. version = '1.0',
  379. alipay_sdk = @kernel.getSdkVersion(),
  380. charset = 'UTF-8',
  381. sign_type = @kernel.getConfig("signType"),
  382. app_cert_sn = @kernel.getMerchantCertSN(),
  383. alipay_root_cert_sn = @kernel.getAlipayRootCertSN()
  384. };
  385. var bizParams: map[string]any = {
  386. message_id = messageId
  387. };
  388. var textParams: map[string]string = {
  389. };
  390. __request.protocol = @kernel.getConfig("protocol");
  391. __request.method = 'POST';
  392. __request.pathname = '/gateway.do';
  393. __request.headers = {
  394. host = @kernel.getConfig("gatewayHost"),
  395. content-type = 'application/x-www-form-urlencoded;charset=utf-8'
  396. };
  397. __request.query = @kernel.sortMap({
  398. sign = @kernel.sign(systemParams, bizParams, textParams, @kernel.getConfig("merchantPrivateKey")),
  399. ... systemParams,
  400. ... textParams
  401. });
  402. __request.body = @kernel.toUrlEncodedRequestBody(bizParams);
  403. } returns {
  404. var respMap: map[string]any = @kernel.readAsJson(__response, "alipay.open.public.life.msg.recall");
  405. if (@kernel.isCertMode()) {
  406. if (@kernel.verify(respMap, @kernel.extractAlipayPublicKey(@kernel.getAlipayCertSN(respMap)))) {
  407. return @kernel.toRespModel(respMap);
  408. }
  409. } else {
  410. if (@kernel.verify(respMap, @kernel.getConfig("alipayPublicKey"))) {
  411. return @kernel.toRespModel(respMap);
  412. }
  413. }
  414. throw {
  415. message = '验签失败,请检查支付宝公钥设置是否正确。'
  416. }
  417. } runtime {
  418. connectTimeout = 15000,
  419. readTimeout = 15000,
  420. retry = {
  421. maxAttempts = 0
  422. }
  423. }
  424. api setIndustry(primaryIndustryCode: string, primaryIndustryName: string, secondaryIndustryCode: string, secondaryIndustryName: string): AlipayOpenPublicTemplateMessageIndustryModifyResponse {
  425. var systemParams: map[string]string = {
  426. method = 'alipay.open.public.template.message.industry.modify',
  427. app_id = @kernel.getConfig("appId"),
  428. timestamp = @kernel.getTimestamp(),
  429. format = 'json',
  430. version = '1.0',
  431. alipay_sdk = @kernel.getSdkVersion(),
  432. charset = 'UTF-8',
  433. sign_type = @kernel.getConfig("signType"),
  434. app_cert_sn = @kernel.getMerchantCertSN(),
  435. alipay_root_cert_sn = @kernel.getAlipayRootCertSN()
  436. };
  437. var bizParams: map[string]any = {
  438. primary_industry_code = primaryIndustryCode,
  439. primary_industry_name = primaryIndustryName,
  440. secondary_industry_code = secondaryIndustryCode,
  441. secondary_industry_name = secondaryIndustryName
  442. };
  443. var textParams: map[string]string = {
  444. };
  445. __request.protocol = @kernel.getConfig("protocol");
  446. __request.method = 'POST';
  447. __request.pathname = '/gateway.do';
  448. __request.headers = {
  449. host = @kernel.getConfig("gatewayHost"),
  450. content-type = 'application/x-www-form-urlencoded;charset=utf-8'
  451. };
  452. __request.query = @kernel.sortMap({
  453. sign = @kernel.sign(systemParams, bizParams, textParams, @kernel.getConfig("merchantPrivateKey")),
  454. ... systemParams,
  455. ... textParams
  456. });
  457. __request.body = @kernel.toUrlEncodedRequestBody(bizParams);
  458. } returns {
  459. var respMap: map[string]any = @kernel.readAsJson(__response, "alipay.open.public.template.message.industry.modify");
  460. if (@kernel.isCertMode()) {
  461. if (@kernel.verify(respMap, @kernel.extractAlipayPublicKey(@kernel.getAlipayCertSN(respMap)))) {
  462. return @kernel.toRespModel(respMap);
  463. }
  464. } else {
  465. if (@kernel.verify(respMap, @kernel.getConfig("alipayPublicKey"))) {
  466. return @kernel.toRespModel(respMap);
  467. }
  468. }
  469. throw {
  470. message = '验签失败,请检查支付宝公钥设置是否正确。'
  471. }
  472. } runtime {
  473. connectTimeout = 15000,
  474. readTimeout = 15000,
  475. retry = {
  476. maxAttempts = 0
  477. }
  478. }
  479. api getIndustry(): AlipayOpenPublicSettingCategoryQueryResponse {
  480. var systemParams: map[string]string = {
  481. method = 'alipay.open.public.setting.category.query',
  482. app_id = @kernel.getConfig("appId"),
  483. timestamp = @kernel.getTimestamp(),
  484. format = 'json',
  485. version = '1.0',
  486. alipay_sdk = @kernel.getSdkVersion(),
  487. charset = 'UTF-8',
  488. sign_type = @kernel.getConfig("signType"),
  489. app_cert_sn = @kernel.getMerchantCertSN(),
  490. alipay_root_cert_sn = @kernel.getAlipayRootCertSN()
  491. };
  492. var bizParams: map[string]any = {
  493. };
  494. var textParams: map[string]string = {
  495. };
  496. __request.protocol = @kernel.getConfig("protocol");
  497. __request.method = 'POST';
  498. __request.pathname = '/gateway.do';
  499. __request.headers = {
  500. host = @kernel.getConfig("gatewayHost"),
  501. content-type = 'application/x-www-form-urlencoded;charset=utf-8'
  502. };
  503. __request.query = @kernel.sortMap({
  504. sign = @kernel.sign(systemParams, bizParams, textParams, @kernel.getConfig("merchantPrivateKey")),
  505. ... systemParams,
  506. ... textParams
  507. });
  508. __request.body = @kernel.toUrlEncodedRequestBody(bizParams);
  509. } returns {
  510. var respMap: map[string]any = @kernel.readAsJson(__response, "alipay.open.public.setting.category.query");
  511. if (@kernel.isCertMode()) {
  512. if (@kernel.verify(respMap, @kernel.extractAlipayPublicKey(@kernel.getAlipayCertSN(respMap)))) {
  513. return @kernel.toRespModel(respMap);
  514. }
  515. } else {
  516. if (@kernel.verify(respMap, @kernel.getConfig("alipayPublicKey"))) {
  517. return @kernel.toRespModel(respMap);
  518. }
  519. }
  520. throw {
  521. message = '验签失败,请检查支付宝公钥设置是否正确。'
  522. }
  523. } runtime {
  524. connectTimeout = 15000,
  525. readTimeout = 15000,
  526. retry = {
  527. maxAttempts = 0
  528. }
  529. }