register.ts 8.1 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307
  1. // pages/register/register.ts
  2. import { ConstsData } from "../../utils/const"
  3. import { httpUtil } from "../../utils/restful";
  4. Page({
  5. /**
  6. * 页面的初始数据
  7. */
  8. data: {
  9. regionOne: Array<String>(),
  10. regionTwo: Array<String>(),
  11. regionThree: Array<String>(),
  12. regionOneIndex: 0,
  13. regionTwoIndex: 0,
  14. regionThreeIndex: 0,
  15. region: [
  16. Array<String>(),
  17. Array<String>(),
  18. Array<String>()
  19. ],
  20. regionIndex: [0, 0, 0],
  21. schoolArray: [['中国']],
  22. schoolIndex: 0,
  23. classArray: ['一年级一班', '一年级2班', '一年级3班', '一年级4班'],
  24. classIndex: 0,
  25. isShowPassWord: true,
  26. userName: '',
  27. userPhone: "",
  28. verificationCode: '',
  29. userPwd: '',
  30. provinceValue: '',//省份value
  31. regionValue: '',//地区value
  32. cityValue: '',
  33. schoolData: [{ 'id': '' }],
  34. schoolId: '',
  35. classData: [{ 'id': '' }],
  36. classId: ''
  37. },
  38. /**
  39. * 生命周期函数--监听页面加载
  40. */
  41. onLoad() {
  42. this.changeOrganizeInfo();
  43. },
  44. changeOrganizeInfo: function () {
  45. //切换地区
  46. this.setData({
  47. regionOne: [],
  48. regionTwo: [],
  49. regionThree: []
  50. })
  51. ConstsData.AppData.organizeInfo.data.children.forEach((item) => {
  52. this.data.regionOne.push(item.title)
  53. })
  54. ConstsData.AppData.organizeInfo.data.children[this.data.regionOneIndex].children.forEach((item) => {
  55. this.data.regionTwo.push(item.title)
  56. })
  57. ConstsData.AppData.organizeInfo.data.children[this.data.regionOneIndex].children[this.data.regionTwoIndex].children.forEach((item) => {
  58. this.data.regionThree.push(item.title)
  59. })
  60. this.setData({
  61. region: [this.data.regionOne, this.data.regionTwo, this.data.regionThree],
  62. regionIndex: [this.data.regionOneIndex, this.data.regionTwoIndex, this.data.regionThreeIndex],
  63. provinceValue: ConstsData.AppData.organizeInfo.data.children[this.data.regionOneIndex].value.toString(),
  64. cityValue: ConstsData.AppData.organizeInfo.data.children[this.data.regionOneIndex].children[this.data.regionTwoIndex].value.toString(),
  65. regionValue: ConstsData.AppData.organizeInfo.data.children[this.data.regionOneIndex].children[this.data.regionTwoIndex].children[this.data.regionThreeIndex].value.toString()
  66. })
  67. //切换学校
  68. this.changeSchool();
  69. //切换班级
  70. },
  71. //查询学校
  72. changeSchool: function () {
  73. //查询学校
  74. let params = {
  75. city: this.data.cityValue,
  76. province: this.data.provinceValue,
  77. region: this.data.regionValue,
  78. type: 1,
  79. }
  80. httpUtil.wxGet(httpUtil.interfaces.getSchoolOrClass, params).then((res: any) => {
  81. this.setData({
  82. schoolArray: [],
  83. schoolIndex: 0,
  84. schoolData: res.data.data,
  85. schoolId: res.data.data[0].id
  86. })
  87. let newArray: string[] = [];
  88. res.data.data.forEach((element: { title: string; }) => {
  89. newArray.push(element.title)
  90. });
  91. this.data.schoolArray.push(newArray)
  92. this.setData({
  93. schoolArray: this.data.schoolArray
  94. })
  95. this.changeClass()
  96. }).catch(res => {
  97. console.log("查询学校error:", res)
  98. })
  99. },
  100. //查询班级
  101. changeClass: function () {
  102. let params = {
  103. "city": this.data.cityValue,
  104. "father": this.data.schoolId,//学校ID
  105. "province": this.data.provinceValue,
  106. "region": this.data.regionValue,
  107. "type": 2,
  108. }
  109. httpUtil.wxGet(httpUtil.interfaces.getSchoolOrClass, params).then((res: any) => {
  110. this.setData({
  111. classArray: [],
  112. classIndex: 0
  113. })
  114. this.setData({
  115. classData: res.data.data,
  116. classId: res.data.data[0].id
  117. })
  118. res.data.data.forEach((element: { title: string; }) => {
  119. this.data.classArray.push(element.title)
  120. });
  121. this.setData({
  122. classArray: this.data.classArray,
  123. })
  124. }).catch(res => {
  125. console.log("查询班级error:", res)
  126. })
  127. },
  128. bindMultiPickerColumnChange: function (event: any) {
  129. //
  130. switch (Number(event.detail.column)) {
  131. case 0:
  132. //代表第一列
  133. this.setData({
  134. regionOneIndex: event.detail.value,
  135. })
  136. break;
  137. case 1:
  138. //代表第二列
  139. this.setData({
  140. regionTwoIndex: event.detail.value,
  141. })
  142. break;
  143. case 2:
  144. //代表第三列
  145. this.setData({
  146. regionThreeIndex: event.detail.value
  147. })
  148. break;
  149. }
  150. this.changeOrganizeInfo();
  151. },
  152. bindRegionChange: function (event: any) {
  153. this.setData({
  154. regionIndex: event.detail.value
  155. })
  156. },
  157. bindSchoolPicker: function (event: any) {
  158. this.setData({
  159. schoolIndex: event.detail.value,
  160. schoolId: this.data.schoolData[event.detail.value].id
  161. })
  162. this.changeClass();
  163. },
  164. bindClssPicker: function (event: any) {
  165. this.setData({
  166. classIndex: event.detail.value
  167. })
  168. },
  169. showPwdTab: function () {
  170. if (this.data.isShowPassWord) {
  171. this.setData({
  172. isShowPassWord: false
  173. })
  174. } else {
  175. this.setData({
  176. isShowPassWord: true
  177. })
  178. }
  179. },
  180. exitPage: function () {
  181. wx.navigateBack()
  182. },
  183. //获取输入的姓名
  184. bindUserNameInput: function (event: any) {
  185. this.setData({
  186. userName: event.detail.value
  187. })
  188. },
  189. //获取输入的手机号
  190. bindUserPhoneInput: function (event: any) {
  191. this.setData({
  192. userPhone: event.detail.value
  193. })
  194. },
  195. //获取输入的验证码
  196. bindVerificationCodeInput: function (event: any) {
  197. this.setData({
  198. verificationCode: event.detail.value
  199. })
  200. },
  201. //获取输入的密码
  202. bindPwdInput: function (event: any) {
  203. this.setData({
  204. userPwd: event.detail.value
  205. })
  206. },
  207. //获取验证码
  208. getVerificationCode: function () {
  209. },
  210. doRegister: function () {
  211. //注册
  212. if (!this.data.userName) {
  213. this.showToast("请输入姓名:")
  214. return;
  215. }
  216. if (!this.data.userPhone) {
  217. this.showToast("请输入手机号")
  218. return;
  219. }
  220. if (!this.data.userPwd) {
  221. this.showToast("请输入密码")
  222. return;
  223. }
  224. if (!this.data.verificationCode) {
  225. this.showToast("请输入验证码")
  226. return;
  227. }
  228. let params = {
  229. city: this.data.cityValue,
  230. classId: this.data.classId,
  231. mobile: this.data.userPhone,
  232. name: this.data.userName,
  233. password: this.data.userPwd,
  234. province: this.data.provinceValue,//省份
  235. region: this.data.regionValue,//地区
  236. schoolId: this.data.schoolId,
  237. userName: this.data.userPhone,//账号
  238. verifyCode: this.data.verificationCode//
  239. }
  240. httpUtil.wxPost(httpUtil.interfaces.phoneRegister, params).then((res: any) => {
  241. httpUtil.httpData.userId = res.data.data.id;
  242. wx.navigateTo({
  243. url: '../teacher/index/index',
  244. })
  245. }).catch((res) => {
  246. console.log("注册失败:", res)
  247. })
  248. },
  249. showToast: function (message: string) {
  250. wx.showToast({
  251. title: message,
  252. icon: 'none'
  253. })
  254. },
  255. })