pay.js 5.6 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167
  1. //验证付费凭证,通过后跳转
  2. const evidence = item => {
  3. const isLeader = wx.getStorageSync('isLeader');
  4. console.log(item)
  5. return new Promise((resolve) => {
  6. //应用是否开通,开通直接跳转
  7. if (item.isneedpay) {
  8. update(false).then(res => {
  9. let p = null;
  10. try {
  11. if (item.systemappid) {
  12. let app = getApp().globalData.queryPer.query(wx.getStorageSync('userauth'), ["E-订单"], ["商品档案"])[0].apps
  13. p = app.find(v => v.name == item.name)
  14. } else {
  15. p = res.find(v => v.vame == item.vame);
  16. }
  17. } catch (error) {
  18. p = null;
  19. }
  20. if (p.isneedpay) {
  21. wx.showModal({
  22. title: '提示',
  23. content: `当前模块未付费,是否付费使用?`,
  24. confirmText: "去付费",
  25. cancelText: isLeader ? "下次再说" : "提醒老板",
  26. complete: (res) => {
  27. if (res.confirm) createOrder();
  28. if (res.cancel && !isLeader) sendMessage();
  29. resolve(false)
  30. }
  31. })
  32. } else {
  33. resolve(true)
  34. }
  35. })
  36. } else {
  37. resolve(true)
  38. }
  39. })
  40. };
  41. //创建新的订单
  42. const createOrder = (query = "") => {
  43. getApp().globalData.http.basic({
  44. "classname": "system.payorder.payorder",
  45. "method": "createOrder",
  46. "content": {},
  47. }).then(res => {
  48. console.log("新建订单", res)
  49. if (res.msg != '成功') return wx.showModal({
  50. title: '提示',
  51. content: res.msg,
  52. showCancel: false,
  53. })
  54. wx.navigateTo({
  55. url: '/pages/teams/addOrder?sys_payorderid=' + res.data.sys_payorderid + query
  56. })
  57. })
  58. }
  59. //查询版本到期情况
  60. const vIndate = () => {
  61. const http = getApp().globalData.http;
  62. const isLeader = wx.getStorageSync('isLeader');
  63. return http.basic({
  64. "classname": "sysmanage.develop.paymentrules.paymentrules",
  65. "method": "queryRemind",
  66. "content": {
  67. nocache: true,
  68. siteid: wx.getStorageSync('siteP').siteid,
  69. pageSize: 999
  70. }
  71. }, false).then(res => {
  72. console.log("版本到期情况", res)
  73. if (res.msg != '成功') return;
  74. let data = res.data;
  75. let content = data.map(v => {
  76. return `【${v.partitionname}】将于${v.enddate}日到期`
  77. }).join(";") + ',请尽快续费!'
  78. if (data.length) {
  79. wx.showModal({
  80. title: '提示',
  81. content,
  82. confirmText: "去付费",
  83. cancelText: isLeader ? "下次再说" : "提醒老板",
  84. complete: (res) => {
  85. if (res.confirm) createOrder(`&vid=${data[0].sys_site_systempartitionid}`);
  86. if (res.cancel && !isLeader) {
  87. sendMessage();
  88. } else {
  89. uIndate()
  90. }
  91. }
  92. })
  93. } else {
  94. if (isLeader) uIndate();
  95. }
  96. })
  97. }
  98. //查询人员到期情况
  99. const uIndate = () => {
  100. const http = getApp().globalData.http;
  101. http.basic({
  102. "classname": "sysmanage.develop.paymentrules.paymentrules",
  103. "method": "queryRemindUser",
  104. "content": {
  105. siteid: wx.getStorageSync('siteP').siteid,
  106. }
  107. }).then(res => {
  108. console.log("人员到期情况", res)
  109. if (res.msg != '成功') return;
  110. let data = res.data;
  111. let content = data.map(v => v.name).join(",")
  112. if (data.length) wx.showModal({
  113. title: '提示',
  114. content: `${content}申请账号付费,请前往处理!`,
  115. confirmText: "去付费",
  116. cancelText: "下次再说",
  117. complete: (res) => {
  118. if (res.confirm) createOrder(`&users=${JSON.stringify(data.map(v => v.userid + ''))}`);
  119. }
  120. })
  121. })
  122. }
  123. //发送提醒付费消息发送到主账号
  124. const sendMessage = (sys_payorderid = '') => getApp().globalData.http.basic({
  125. "classname": "system.payorder.payorder",
  126. "method": "sendMessage",
  127. "content": {
  128. sys_payorderid
  129. }
  130. }).then(s => wx.showToast({
  131. title: '已发送消息到主体主账号',
  132. icon: "none"
  133. }));
  134. //更新付费权限
  135. const update = (total = true) => {
  136. return new Promise((resolve) => {
  137. getApp().globalData.http.basic({
  138. "classname": "sysmanage.develop.userauth.userauth",
  139. "method": "query_userauth",
  140. content: {
  141. nocache: true
  142. }
  143. }).then(res => {
  144. console.log('更新付费信息', res)
  145. if (res.msg != '成功') return resolve(false)
  146. wx.setStorageSync('userauth', res.data);
  147. if (total) wx.showToast({
  148. title: '应用付费信息已更新',
  149. icon: "none"
  150. })
  151. try {
  152. let page = getCurrentPages().find(v => v.__route__ == 'pages/index/index')
  153. resolve(page ? page.refreshData() : getApp().globalData.refreshData())
  154. } catch (error) {
  155. resolve([])
  156. }
  157. });
  158. })
  159. }
  160. export {
  161. evidence,
  162. sendMessage,
  163. createOrder,
  164. vIndate,
  165. uIndate,
  166. update
  167. }