addOrder.js 7.4 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236
  1. const _Http = getApp().globalData.http;
  2. let pageNumber = 1,
  3. pageTotal = 1,
  4. sys_payorderid = null,
  5. currency = require("../../utils/currency"),
  6. CNY = value => currency(value, {
  7. symbol: "¥",
  8. precision: 2
  9. }).format();
  10. Page({
  11. data: {
  12. users: [],
  13. remarks: "",
  14. showAmount: "¥0.00",
  15. isDelete: true
  16. },
  17. onLoad(options) {
  18. this.setData({
  19. sys_payinstructions: wx.getStorageSync('siteP').sys_payinstructions,
  20. sys_payincidence: 1
  21. })
  22. sys_payorderid = options.sys_payorderid;
  23. this.getVersions();
  24. this.getUsers(true);
  25. },
  26. /* 保存订单进度 */
  27. changeOrder() {
  28. _Http.basic({
  29. "classname": "system.payorder.payorder",
  30. "method": "insertUsers",
  31. "content": {
  32. "sys_site_systempartitionid": this.data.sys_site_systempartitionid,
  33. sys_payorderid,
  34. "remarks": this.data.remarks,
  35. "users": this.data.users.map(v => {
  36. let item = this.data.userList.find(s => {
  37. let id = this.data.sys_payincidence == 1 ? s.userid : s.sa_agentsid;
  38. return id == v
  39. })
  40. return {
  41. "isleader": item.isleader,
  42. "userid": item.userid,
  43. "sa_agentsid": item.sa_agentsid,
  44. "enddate": item.enddate[this.data.sys_site_systempartitionid] || ''
  45. }
  46. })
  47. }
  48. }).then(res => {
  49. console.log("修改订单信息", res)
  50. if (res.msg != '成功') return wx.showToast({
  51. title: res.msg,
  52. icon: "none",
  53. mask: true
  54. });
  55. this.setData({
  56. showAmount: CNY(res.data.amount),
  57. orderno: res.data.orderno
  58. })
  59. })
  60. },
  61. /* 更改备注 */
  62. onblur(e) {
  63. console.log(e)
  64. if (e.detail.value == this.data.remarks) return;
  65. this.setData({
  66. remarks: e.detail.value
  67. });
  68. this.changeOrder();
  69. },
  70. /* 获取版本 */
  71. getVersions() {
  72. _Http.basic({
  73. "classname": "system.payorder.payorder",
  74. "method": "chooseSystemPartition",
  75. "content": {
  76. "pageNumber": 1,
  77. "pageSize": 9999,
  78. "where": {
  79. "condition": ""
  80. }
  81. }
  82. }).then(res => {
  83. console.log("版本列表", res)
  84. if (res.msg != '成功') {
  85. wx.showToast({
  86. title: res.msg,
  87. icon: "none",
  88. mask: true
  89. })
  90. setTimeout(() => {
  91. wx.navigateBack();
  92. }, 1000)
  93. return;
  94. };
  95. this.setData({
  96. versionsList: res.data,
  97. sys_site_systempartitionid: res.data[0].sys_site_systempartitionid || ''
  98. })
  99. })
  100. },
  101. /* 切换版本 */
  102. changeVer(e) {
  103. const {
  104. sys_site_systempartitionid
  105. } = e.currentTarget.dataset.item;
  106. if (this.data.sys_site_systempartitionid == sys_site_systempartitionid) return;
  107. this.setData({
  108. sys_site_systempartitionid
  109. });
  110. this.changeOrder();
  111. },
  112. checkVer(e) {
  113. const {
  114. item
  115. } = e.currentTarget.dataset;
  116. this.selectComponent("#inventory").show(item.systemapp)
  117. },
  118. /* 获取可添加账号/主体 */
  119. getUsers(init = false) {
  120. if (init) {
  121. pageNumber = 1;
  122. pageTotal = 1;
  123. };
  124. if (pageNumber > pageTotal) return;
  125. _Http.basic({
  126. "classname": "system.payorder.payorder",
  127. "method": "chooseUsers",
  128. "content": {
  129. pageNumber,
  130. "pageSize": 20,
  131. "where": {
  132. "condition": ""
  133. }
  134. }
  135. }).then(res => {
  136. console.log("用户列表", res)
  137. if (res.msg != '成功') {
  138. wx.showToast({
  139. title: res.msg,
  140. icon: "none",
  141. mask: true
  142. })
  143. setTimeout(() => {
  144. wx.navigateBack();
  145. }, 1000)
  146. return;
  147. };
  148. pageTotal = res.pageTotal;
  149. this.setData({
  150. userList: res.pageNumber == 1 ? res.data : this.data.userList.concat(res.data),
  151. users: res.pageNumber == 1 ? [this.data.sys_payincidence == 1 ? (res.data[0].userid + "") : (res.data[0].sa_agentsid + "" || "")] : this.data.users,
  152. })
  153. pageNumber = res.pageNumber + 1;
  154. this.changeOrder();
  155. })
  156. },
  157. onReachBottom() {
  158. this.getUsers();
  159. },
  160. onChange(e) {
  161. const {
  162. id
  163. } = e.currentTarget.dataset;
  164. let users = this.data.users;
  165. if (users.some(v => v == id)) {
  166. users = users.filter(s => s != id)
  167. } else {
  168. users.push(id + "")
  169. }
  170. this.setData({
  171. users
  172. });
  173. this.changeOrder();
  174. },
  175. /* 支付 */
  176. payment() {
  177. let that = this;
  178. that.data.isDelete = false;
  179. wx.login({
  180. success: (s) => {
  181. _Http.basic({
  182. "classname": "system.payment.wechatpay",
  183. "method": "createWechatOrder",
  184. "content": {
  185. "orderno": that.data.orderno,
  186. "wechat_code": s.code,
  187. "trade_type": "JSAPI"
  188. }
  189. }).then(res => {
  190. console.log(res)
  191. wx.requestPayment({
  192. timeStamp: res.data.timeStamp,
  193. nonceStr: res.data.nonceStr,
  194. package: res.data.package,
  195. signType: res.data.signType,
  196. paySign: res.data.paySign,
  197. success() {
  198. wx.showToast({
  199. title: '支付成功',
  200. mask: true
  201. })
  202. },
  203. fail(err) {
  204. wx.showToast({
  205. title: '支付失败',
  206. icon: "error",
  207. mask: true
  208. })
  209. console.error(err)
  210. },
  211. complete(e) {
  212. console.log(e)
  213. setTimeout(() => {
  214. wx.redirectTo({
  215. url: '/pages/teams/order?id=' + sys_payorderid,
  216. })
  217. }, 1000)
  218. }
  219. })
  220. })
  221. },
  222. })
  223. },
  224. onUnload() {
  225. if (this.data.isDelete) _Http.basic({
  226. "classname": "system.payorder.payorder",
  227. "method": "delete",
  228. "content": {
  229. sys_payorderid
  230. }
  231. }).then(res => {
  232. console.log("删除订单", res)
  233. })
  234. }
  235. })