index.js 4.3 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167
  1. // pages/register/index.js
  2. const app = getApp()
  3. Page({
  4. /**
  5. * 页面的初始数据
  6. */
  7. data: {
  8. showModal: false,
  9. isSubmitting:false,
  10. defaultText: '请选择',
  11. userId:'',
  12. name:'',
  13. phone:'',
  14. licensePlate: '',//用于提交
  15. vehicleNo: {},//默认显示值
  16. },
  17. //输入框焦点聚焦时隐藏车牌号输入框
  18. hideKeybord: function () {
  19. this.setData({
  20. isKeyboard: false,
  21. inputOnFocusIndex: ''
  22. })
  23. },
  24. //获取车牌号
  25. licensePlate: function (e) {
  26. this.setData({
  27. licensePlate: e.detail.carNum
  28. })
  29. },
  30. toLogin:function(){
  31. wx.navigateBack()
  32. },
  33. //下拉选择
  34. bindPickerChange: function (e) { //下拉菜单
  35. switch (e.target.dataset.pickertype) {
  36. case 'outIn': //出入库
  37. app.util.getPickerIndex(this, 'outInIndex', e);
  38. break;
  39. }
  40. },
  41. /**
  42. * 生命周期函数--监听页面加载
  43. */
  44. onLoad: function (options) {
  45. let getCarNumArr = wx.getStorageSync('nickname')?wx.getStorageSync('nickname').split(''):''
  46. let inputPlates = {};
  47. for (let i = 0; i < getCarNumArr.length; i++) {
  48. inputPlates['index' + i] = getCarNumArr[i]
  49. }
  50. this.setData({
  51. loginStatus: wx.getStorageSync('loginStatus') ? wx.getStorageSync('loginStatus') : false,
  52. userId:wx.getStorageSync('id'),
  53. name:wx.getStorageSync('name'),
  54. phone:wx.getStorageSync('phone'),
  55. inputPlates: inputPlates,
  56. isNewEnergy: getCarNumArr.length > 7 ? true : false,
  57. licensePlate: wx.getStorageSync('nickname'),
  58. roleName: "1",
  59. })
  60. },
  61. formSubmit: function (e) {
  62. let formData = e.detail.value;
  63. let reg = /^1[3-9]\d{9}$/;
  64. var mobile = /^1(3[0-9]|4[01456879]|5[0-35-9]|6[2567]|7[0-8]|8[0-9]|9[0-35-9])\d{8}$/;
  65. var xreg = /^[京津沪渝冀豫云辽黑湘皖鲁新苏浙赣鄂桂甘晋蒙陕吉闽贵粤青藏川宁琼使领A-Z]{1}[A-Z]{1}[A-HJ-NP-Z0-9]{4,5}[A-HJ-NP-Z0-9挂学警港澳]{1}$/;
  66. var creg = /^[京津沪渝冀豫云辽黑湘皖鲁新苏浙赣鄂桂甘晋蒙陕吉闽贵粤青藏川宁琼使领A-Z]{1}[A-Z]{1}[A-HJ-NP-Z0-9]{4}[A-HJ-NP-Z0-9挂学警港澳]{1}$/;
  67. var warn = ""; //弹框时提示的内容
  68. if (formData.account == '') {
  69. warn = "请输入账号!";
  70. } else if (formData.name == '') {
  71. warn = "请输入司机姓名!";
  72. } else if (formData.phone == '') {
  73. warn = "请输入司机手机号!";
  74. } else if(!reg.test(formData.phone)){
  75. warn = "请确认手机号格式!";
  76. } else if (formData.nickname == '') {
  77. warn = "请选择车牌!";
  78. } else if (formData.nickname.length < 7) {
  79. warn = "请选择完整车牌号!";
  80. } else if (formData.nickname.length == 7 && !creg.test(formData.nickname)) {
  81. warn = "车牌号格式错误!";
  82. } else if (formData.nickname.length == 8 && !xreg.test(formData.nickname)) {
  83. warn = "车牌号格式错误!";
  84. }
  85. if (warn != '') {
  86. app.util.checkForm(warn);
  87. } else {
  88. app.request.POST({
  89. url: app.API.register,
  90. params: formData,
  91. page: this,
  92. isLoadingTxt: '司机注册中...',
  93. isToken:false,
  94. isSubmitting: true,
  95. successFun: true
  96. }).then(res => {
  97. let _this = this
  98. wx.showToast({
  99. title: '注册成功',
  100. icon: 'success',
  101. duration: 1500,
  102. mask:true,
  103. complete: function () {
  104. setTimeout( ()=> {
  105. wx.setStorageSync('name', formData.name); //用户姓名
  106. wx.setStorageSync('nickname', formData.nickname); //车牌号or船舶号
  107. wx.navigateBack()
  108. }, 1500) //延迟时间
  109. }
  110. })
  111. })
  112. }
  113. },
  114. /**
  115. * 生命周期函数--监听页面初次渲染完成
  116. */
  117. onReady: function () {
  118. },
  119. /**
  120. * 生命周期函数--监听页面显示
  121. */
  122. onShow: function () {
  123. },
  124. /**
  125. * 生命周期函数--监听页面隐藏
  126. */
  127. onHide: function () {
  128. },
  129. /**
  130. * 生命周期函数--监听页面卸载
  131. */
  132. onUnload: function () {
  133. },
  134. /**
  135. * 页面相关事件处理函数--监听用户下拉动作
  136. */
  137. onPullDownRefresh: function () {
  138. },
  139. /**
  140. * 页面上拉触底事件的处理函数
  141. */
  142. onReachBottom: function () {
  143. },
  144. /**
  145. * 用户点击右上角分享
  146. */
  147. onShareAppMessage: function () {
  148. }
  149. })