App.vue 3.9 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168
  1. <template>
  2. <div id="app">
  3. <HeaderBanner></HeaderBanner>
  4. <Navigation :navTitle1='navTitle1' :navTitle2='navTitle2'></Navigation>
  5. <div class="app_content">
  6. <div class="router">
  7. <LoginInfo
  8. :userAccount='userAccount'
  9. ></LoginInfo>
  10. <Routerbanner
  11. @change_nav="changeNav"
  12. :isManufacturer="isManufacturer"
  13. />
  14. </div>
  15. <div class="router_view">
  16. <router-view :isManufacturer="isManufacturer"></router-view>
  17. </div>
  18. </div>
  19. <FooterBanner/>
  20. </div>
  21. </template>
  22. <script>
  23. import HeaderBanner from "./components/HeaderBanner";
  24. import Navigation from "./components/Navigation";
  25. import LoginInfo from "./components/LoginInfo";
  26. import Routerbanner from "./components/RouterBanner";
  27. import FooterBanner from "./components/Footerbanner";
  28. export default {
  29. components: {
  30. HeaderBanner,
  31. Navigation,
  32. LoginInfo,
  33. Routerbanner,
  34. FooterBanner
  35. },
  36. data() {
  37. return {
  38. navTitle1: ' > 数据管理',
  39. navTitle2: '',
  40. isManufacturer: 'distributor', // distributor 经销商 manufacturer 厂商
  41. userAccount: ''
  42. }
  43. },
  44. methods: {
  45. // 点击路由,导航栏对应变化
  46. changeNav: function(navTitle1, navTitle2){
  47. this.navTitle1 = ' > ' + navTitle1;
  48. if (navTitle2) {
  49. this.navTitle2 = ' > ' + navTitle2;
  50. } else {
  51. this.navTitle2 = '';
  52. }
  53. },
  54. // 测试接口
  55. getData() {
  56. // 正常token
  57. // dXNlcklkPTEyMyZhY2NvdW50PWRmc2FmYWVyJmZyb209c2l3ZWkmdGltZXN0YW1wPTE2MTY4NDYxMzkmc2lnbj1mOWUwNzJhZGUwODE4YjhhNzMzN2I0ZTMzMzU2OWJjOA==
  58. let query = this.$route.query || {};
  59. let token = query.token || 'dXNlcklkPTEyMyZhY2NvdW50PWRmc2FmYWVyJmZyb209c2l3ZWkmdGltZXN0YW1wPTE2MTY4NDYxMzkmc2lnbj1mOWUwNzJhZGUwODE4YjhhNzMzN2I0ZTMzMzU2OWJjOA';
  60. console.log('token:', token);
  61. if(!token) {
  62. localStorage.setItem("userId", '');
  63. return
  64. }
  65. this.$http({
  66. method: 'post',
  67. url: '/auth/checkSign',
  68. data:token
  69. }).then((res) => {
  70. console.log(res);
  71. if(res.status === 200){
  72. if(res.data.code === 200) {
  73. let userInfo = res.data.data;
  74. if (userInfo.userRole == '1' || userInfo.userRole == '2') {
  75. this.isManufacturer = 'distributor';
  76. } else {
  77. this.isManufacturer = 'manufacturer';
  78. }
  79. this.userAccount = userInfo.userCode;
  80. localStorage.setItem("userId", userInfo.userAgentId);
  81. }else {
  82. let message = res.data.message;
  83. console.log('message', message);
  84. alert(message);
  85. }
  86. }
  87. }).catch((err) => {
  88. alert('无法校验的字符串');
  89. console.log(err);
  90. })
  91. }
  92. },
  93. mounted() {
  94. },
  95. created() {
  96. this.getData();
  97. }
  98. };
  99. </script>
  100. <style lang="less">
  101. * {
  102. padding: 0;
  103. margin: 0;
  104. list-style: none;
  105. color: #333;
  106. font-size: 12px;
  107. }
  108. button{
  109. border: none;
  110. background-color: #0056A0;
  111. height: 30px;
  112. width: 58px;
  113. color: #fff;
  114. font-weight: 400px;
  115. font-family: Arial;
  116. margin-left: 18px;
  117. font-size: 14px;
  118. &:hover{
  119. cursor: pointer;
  120. }
  121. }
  122. .current_button{
  123. background-color: #0056A0;
  124. height: 30px;
  125. width: 58px;
  126. line-height: 30px;
  127. text-align: center;
  128. color: #fff;
  129. font-weight: 400px;
  130. font-family: Arial;
  131. margin-left: 18px;
  132. font-size: 14px;
  133. &:hover{
  134. cursor: pointer;
  135. }
  136. }
  137. #app {
  138. background-color: #eeeeee;
  139. height: 100%;
  140. min-height: 100vh;
  141. .app_content {
  142. width: 1190px;
  143. margin: 0 auto;
  144. font-size: 12px;
  145. color: #333;
  146. font-family: "微软雅黑";
  147. display: flex;
  148. justify-content: space-between;
  149. .router{
  150. width: 150px;
  151. height: 100%;
  152. background-color: #d4d4d4;
  153. height: auto;
  154. min-height: 50vh;
  155. }
  156. .router_view{
  157. width: 1030px;
  158. }
  159. }
  160. }
  161. @media screen and (max-width: 1190px) {
  162. #app{
  163. width: 1190px;
  164. }
  165. }
  166. </style>