index.js 3.8 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185
  1. // pages/form/index.js
  2. var api = require('../../utils/api.js')
  3. Page({
  4. /**
  5. * 页面的初始数据
  6. */
  7. data: {
  8. data: {
  9. formContainerClass: 'mode-1-container',
  10. mode: 1
  11. }
  12. },
  13. /**
  14. * 生命周期函数--监听页面加载
  15. */
  16. onLoad: function (options) {
  17. var that = this;
  18. wx.request({
  19. url: api.getFormSetUrl,
  20. method: 'GET',
  21. success: res => {
  22. if(res.data.status == 'success') {
  23. var formContainerClass = res.data.data.mode == 1 ? 'mode-1-container' : 'mode-2-container'
  24. that.setData({
  25. data: res.data.data,
  26. formContainerClass: formContainerClass,
  27. mode: res.data.data.mode
  28. })
  29. if(res.data.data.top_title) {
  30. wx.setNavigationBarTitle({
  31. title: res.data.data.top_title
  32. })
  33. }
  34. }
  35. }
  36. })
  37. },
  38. formSubmit: function(e) {
  39. var that = this,
  40. data = that.data.data,
  41. value = e.detail.value;
  42. if(data.money && data.money != '0') {
  43. value.type = 'pay';
  44. } else {
  45. value.type = 'form';
  46. }
  47. var id = wx.getStorageSync('we_chat_user_id')
  48. if(data.text_1_need == 1 && !value.text_1) {
  49. wx.showToast({
  50. icon: 'none',
  51. title: data.text_1 + '必填',
  52. })
  53. return false;
  54. }
  55. if (data.text_2_need == 1 && !value.text_2) {
  56. wx.showToast({
  57. icon: 'none',
  58. title: data.text_2 + '必填',
  59. })
  60. return false;
  61. }
  62. if (data.text_3_need == 1 && !value.text_3) {
  63. wx.showToast({
  64. icon: 'none',
  65. title: data.text_3 + '必填',
  66. })
  67. return false;
  68. }
  69. if (data.text_4_need == 1 && !value.text_4) {
  70. wx.showToast({
  71. icon: 'none',
  72. title: data.text_4 + '必填',
  73. })
  74. return false;
  75. }
  76. if (data.multi_text_need == 1 && !value.multi_text) {
  77. wx.showToast({
  78. icon: 'none',
  79. title: data.multi_text + '必填',
  80. })
  81. return false;
  82. }
  83. if (data.radio_need == 1 && !value.radio) {
  84. wx.showToast({
  85. icon: 'none',
  86. title: data.radio + '必填',
  87. })
  88. return false;
  89. }
  90. if (data.checkbox_need == 1 && !value.checkbox) {
  91. wx.showToast({
  92. icon: 'none',
  93. title: data.checkbox + '必填',
  94. })
  95. return false;
  96. }
  97. wx.request({
  98. url: api.submitFormUrl,
  99. method: 'POST',
  100. data: {
  101. data: value,
  102. id: id,
  103. mode: this.data.mode
  104. },
  105. success: res => {
  106. if (res.data.status == 'success') {
  107. if(value.type == 'pay') {
  108. data = JSON.parse(res.data.data)
  109. wx.requestPayment({
  110. timeStamp: data.timeStamp,
  111. nonceStr: data.nonceStr,
  112. package: data.package,
  113. signType: data.signType,
  114. paySign: data.paySign,
  115. })
  116. } else {
  117. wx.showToast({
  118. icon: 'none',
  119. title: '提交成功',
  120. })
  121. }
  122. }
  123. }
  124. })
  125. },
  126. /**
  127. * 生命周期函数--监听页面初次渲染完成
  128. */
  129. onReady: function () {
  130. },
  131. /**
  132. * 生命周期函数--监听页面显示
  133. */
  134. onShow: function () {
  135. },
  136. /**
  137. * 生命周期函数--监听页面隐藏
  138. */
  139. onHide: function () {
  140. },
  141. /**
  142. * 生命周期函数--监听页面卸载
  143. */
  144. onUnload: function () {
  145. },
  146. /**
  147. * 页面相关事件处理函数--监听用户下拉动作
  148. */
  149. onPullDownRefresh: function () {
  150. },
  151. /**
  152. * 页面上拉触底事件的处理函数
  153. */
  154. onReachBottom: function () {
  155. },
  156. /**
  157. * 用户点击右上角分享
  158. */
  159. onShareAppMessage: function (t) {
  160. var a = this;
  161. return {
  162. path: "/pages/index/index",
  163. success: function (t) {
  164. },
  165. title:"钢琴时间打卡"
  166. };
  167. },
  168. })