home.vue 3.0 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125
  1. <template>
  2. <view id="home">
  3. <teacher-home class="flex-box-page" v-if="userType==1"></teacher-home>
  4. <pupil-home class="flex-box-page" v-if="userType==2"></pupil-home>
  5. </view>
  6. </template>
  7. <script>
  8. import {
  9. systemUserPersonalData,
  10. } from '@/pages/api/index.js'
  11. import teacherHome from '@/pages/views/teacherPage/teacherHome'
  12. import pupilHome from '@/pages/views/pupilPage/pupilHome'
  13. export default {
  14. name: "home",
  15. components: {
  16. teacherHome,
  17. pupilHome,
  18. },
  19. data() {
  20. return {
  21. userType: 0,
  22. }
  23. },
  24. onLoad() {
  25. },
  26. onShow() {
  27. if(uni.getStorageSync('patrolLoginType')){
  28. uni.reLaunch({
  29. url: '/pages_safetyCheck/views/safetyCheck',
  30. });
  31. return
  32. }
  33. uni.removeStorageSync('planSensorList');
  34. if (uni.getStorageSync('token') && uni.getStorageSync('userId') && uni.getStorageSync('userType')) {
  35. this.systemUserPersonalData();
  36. //写入用户
  37. } else {
  38. uni.removeStorageSync('token');
  39. uni.removeStorageSync('userId');
  40. uni.removeStorageSync('userType');
  41. uni.redirectTo({
  42. url: '/pages/views/login/login',
  43. });
  44. }
  45. },
  46. methods: {
  47. async systemUserPersonalData(){
  48. const {
  49. data
  50. } = await systemUserPersonalData();
  51. if (data.code == 200) {
  52. // isInitPwd 初始密码 true 是
  53. // isTutorExist 导师 true 有
  54. // isPhoneExist 电话 true 有
  55. // userType 1教职工 2学生
  56. if(data.data.userType == 1 && !data.data.isPhoneExist){
  57. //教职工
  58. uni.redirectTo({
  59. url: '/pages_basics/views/completeInformation/completeInformation',
  60. });
  61. }else if(data.data.userType == 2 &&(!data.data.isTutorExist || !data.data.isPhoneExist)){
  62. //学生
  63. uni.redirectTo({
  64. url: '/pages_basics/views/completeInformation/completeInformation',
  65. });
  66. }else if(data.data.isInitPwd){
  67. this.userType = uni.getStorageSync('userType')
  68. // 初始密码提示 每次登录只提示一次
  69. if(uni.getStorageSync('isInitPwd')){
  70. uni.setStorageSync('isInitPwd', false);
  71. this.passwrodTips();
  72. }
  73. }else{
  74. this.userType = uni.getStorageSync('userType')
  75. }
  76. }
  77. },
  78. //初始密码修改提示
  79. passwrodTips(){
  80. uni.showModal({
  81. title: '提示',
  82. cancelColor: '#999999',
  83. confirmColor: '#0183FA',
  84. content: '为了保证信息安全,是否修改默认密码',
  85. cancelText:'稍后修改',
  86. confirmText:'修改密码',
  87. success(res) {
  88. if (res.confirm) {
  89. // console.log('确定')
  90. uni.navigateTo({
  91. url: '/pages_basics/views/editPassword/editPassword',
  92. });
  93. } else if (res.cancel) {
  94. // console.log('取消')
  95. }
  96. }
  97. })
  98. },
  99. },
  100. onHide() {
  101. this.userType = 0;
  102. },
  103. onUnload() {
  104. this.userType = 0;
  105. }
  106. }
  107. </script>
  108. <style lang="stylus" scoped>
  109. #home {
  110. width:100%;
  111. height:100%;
  112. display: flex;
  113. flex-direction: column;
  114. overflow: hidden;
  115. .flex-box-page{
  116. flex:1;
  117. display: flex;
  118. flex-direction: column;
  119. overflow: hidden;
  120. }
  121. }
  122. </style>