home.vue 2.9 KB

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