home.vue 3.0 KB

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