index.js 5.2 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249
  1. // index.js
  2. let myPro = require("../../../utils/wxRequest.js");
  3. let util = require("../../../utils/util.js");
  4. Page({
  5. data: {
  6. userInfo: null,
  7. showPhonePop: false,
  8. codeBtnName: "获取验证码",
  9. delyTime: 60, // 单位s
  10. codeLoading: false,
  11. showBirthPop: false,
  12. maxDate: new Date().getTime(),
  13. },
  14. onLoad: function (options) {
  15. // Do some initialize when page load.
  16. },
  17. onShow: function () {
  18. // Do something when page show.
  19. let that = this;
  20. // 生日的可选最小值 当前年份前50年
  21. let minYear = new Date().getFullYear() - 50;
  22. let str = minYear+'-'+'01-01'
  23. that.setData({
  24. minDate: new Date(str).getTime()
  25. });
  26. // 获取用户信息
  27. that.getUrserInfo();
  28. },
  29. onReady: function () {
  30. // Do something when page ready.
  31. },
  32. onHide: function () {
  33. // Do something when page hide.
  34. },
  35. onUnload: function () {
  36. // Do something when page close.
  37. },
  38. onPullDownRefresh: function () {
  39. // Do something when pull down.
  40. },
  41. onReachBottom: function () {
  42. // Do something when page reach bottom.
  43. },
  44. onPageScroll: function () {
  45. // Do something when page scroll
  46. },
  47. onResize: function () {
  48. // Do something when page resize
  49. },
  50. // 更改性别 弃用
  51. onChangeSex(event){
  52. let that = this;
  53. that.setData({
  54. sex: event.detail
  55. })
  56. },
  57. // 获取用户信息
  58. getUrserInfo(){
  59. let that = this;
  60. myPro.wxRequest("user/v2/userinfo","GET",{}).then(res=>{
  61. that.setData({
  62. userInfo: res.result,
  63. });
  64. // 用户之前存过生日
  65. if(res.result.birthday){
  66. let birthStr = res.result.birthday;
  67. that.setData({
  68. currentBirth: new Date(birthStr.replace(/-/g, "/")).getTime()
  69. });
  70. }else{
  71. that.setData({
  72. currentBirth: new Date().getTime()
  73. });
  74. }
  75. }).catch(err=>{
  76. console.log('报错信息',err);
  77. wx.showToast({
  78. title: err,
  79. icon: 'none'
  80. });
  81. });
  82. },
  83. // 打开更改手机号弹层
  84. onShowChangePhone(){
  85. let that = this;
  86. that.setData({
  87. showPhonePop: true
  88. });
  89. },
  90. // 关闭
  91. onCloseChangePhone(){
  92. let that = this;
  93. that.setData({
  94. showPhonePop: false
  95. });
  96. },
  97. // 获取输入信息 手机号
  98. getPhone: function (event) {
  99. let that = this;
  100. that.setData({
  101. phone: event.detail,
  102. });
  103. },
  104. // 发送验证码
  105. sendCode(){
  106. let that = this;
  107. if(!that.data.phone || !(/^1[3456789]\d{9}$/.test(that.data.phone))){
  108. wx.showToast({
  109. title: "手机号有误,请重新填写",
  110. icon: "none"
  111. });
  112. return;
  113. };
  114. let params = {
  115. phone: that.data.phone
  116. };
  117. myPro.wxRequest("user/send/verify-code","POST",params).then(res=>{
  118. wx.showToast({
  119. title: res.msg,
  120. icon: "none"
  121. });
  122. that.setData({
  123. codeBtnName: that.data.delyTime +
  124. "s",
  125. delyTime: that.data.delyTime,
  126. codeLoading: true
  127. });
  128. let s = setInterval(function() {
  129. let dely1 = parseInt(that.data.delyTime) -
  130. 1;
  131. // console.log(dely1);
  132. that.setData({
  133. codeBtnName: dely1 +
  134. "s",
  135. delyTime: dely1
  136. });
  137. if (dely1 == 0) {
  138. clearInterval(s);
  139. that.setData({
  140. codeBtnName: "获取验证码",
  141. delyTime: that.data.delyTime,
  142. codeLoading: false
  143. });
  144. }
  145. }, 1000);
  146. }).catch(err=>{
  147. that.setData({
  148. codeLoading: false
  149. });
  150. console.log('报错信息');
  151. wx.showToast({
  152. title: err,
  153. icon: "none"
  154. })
  155. })
  156. },
  157. // 获取输入信息 验证码
  158. getPhoneCode: function (event) {
  159. let that = this;
  160. that.setData({
  161. code: event.detail,
  162. });
  163. },
  164. // 更改手机号
  165. onConfirmChangePhone(){
  166. let that = this;
  167. // return;
  168. if(!that.data.phone || !(/^1[3456789]\d{9}$/.test(that.data.phone))){
  169. wx.showToast({
  170. title: "手机号有误,请重新填写",
  171. icon: "none"
  172. });
  173. return;
  174. };
  175. if (!that.data.code) {
  176. wx.showToast({
  177. title: "请填写验证码",
  178. icon: "none",
  179. });
  180. return;
  181. };
  182. let params = {
  183. phone: that.data.phone,
  184. code: that.data.code
  185. };
  186. myPro.wxRequest("user/v2/editphone","POST",params).then(res=>{
  187. wx.showToast({
  188. title: res.msg,
  189. icon: "none"
  190. });
  191. that.setData({
  192. showPhonePop: false
  193. });
  194. // 更新用户信息
  195. that.getUrserInfo();
  196. }).catch(err=>{
  197. console.log('报错信息',err);
  198. wx.showToast({
  199. title: err,
  200. icon: "none"
  201. })
  202. })
  203. },
  204. // 打开生日弹层
  205. onShowBirthPop(){
  206. let that = this;
  207. that.setData({
  208. showBirthPop: true
  209. });
  210. },
  211. // 关闭生日弹层
  212. closeBirthPop(){
  213. let that = this;
  214. that.setData({
  215. showBirthPop: false
  216. });
  217. },
  218. // 选择生日
  219. confirmBirthPop(event){
  220. console.log('event===',event)
  221. let that = this;
  222. let selectTime = new Date(event.detail);
  223. let birthStr = util.formatTime(selectTime,1);
  224. // 修改生日
  225. let params = {
  226. birthday: birthStr
  227. };
  228. myPro.wxRequest("user/v2/editBirthday","POST",params).then(res=>{
  229. wx.showToast({
  230. title: res.msg,
  231. icon: "none"
  232. });
  233. that.setData({
  234. showBirthPop: false,
  235. });
  236. // 更新用户信息
  237. that.getUrserInfo();
  238. }).catch(err=>{
  239. console.log('报错信息',err);
  240. wx.showToast({
  241. title: err,
  242. icon: "none"
  243. });
  244. })
  245. },
  246. });