Przeglądaj źródła

修改路由名,添加seo

wzl 2 lat temu
rodzic
commit
4945857c8f

+ 2 - 0
index.html

@@ -4,6 +4,8 @@
     <meta charset="UTF-8" />
     <link rel="icon" href="/favicon.ico" />
     <meta name="viewport" content="width=device-width, initial-scale=1.0" />
+    <meta data-n-head="1" data-hid="description" name="description" content="">
+    <meta data-n-head="1" data-hid="keywords" name="keywords" content="">
     <title>PDF Tech</title>
   </head>
   <body>

+ 12 - 12
src/components/sideMenu.vue

@@ -73,14 +73,14 @@ export default {
   },
   computed:{
     path () {
-      if (this.$route.path === '/manage-team/create-manage-team' || this.$route.path === '/manage-team/edit-manage-team') {
+      if (this.$route.path === '/manage-team/create-team' || this.$route.path === '/manage-team/edit-team') {
         return '/manage-team'
-      } else if (this.$route.path === '/manage-member/add-manage-member' || 
-                this.$route.path.indexOf('/manage-member/edit-manage-member') !== -1) {
+      } else if (this.$route.path === '/manage-member/add-member' || 
+                this.$route.path.indexOf('/manage-member/edit-member') !== -1) {
         return '/manage-member'
-      } else if (this.$route.path === '/manageAdmin/addAdmin' ||
-                this.$route.path.indexOf('/manageAdmin/editAdmin') !== -1) {
-        return '/manageAdmin'
+      } else if (this.$route.path === '/manage-admin/add-admin' ||
+                this.$route.path.indexOf('/manage-admin/edit-admin') !== -1) {
+        return '/manage-admin'
       }  else {
         return this.$route.path
       }
@@ -115,7 +115,7 @@ export default {
             <Dashboard />
             <span>Home</span>
           </el-menu-item>
-          <el-menu-item index="/productManagement">
+          <el-menu-item index="/product">
             <Product />
             <span>Product Management</span>
           </el-menu-item>
@@ -126,18 +126,18 @@ export default {
             </template>
             <el-menu-item index="/manage-team">Manage Team</el-menu-item>
             <el-menu-item index="/manage-member">Manage Member</el-menu-item>
-            <el-menu-item index="/manageAdmin">Manage Admin</el-menu-item>
+            <el-menu-item index="/manage-admin">Manage Admin</el-menu-item>
           </el-submenu>
           <el-submenu index="4">
             <template slot="title"> 
               <License />
               <span>License Management</span>
             </template>
-            <el-menu-item index="/licenseManage">Manage License</el-menu-item>
-            <el-menu-item index="/assignlicense">Assign License</el-menu-item>
-            <el-menu-item index="/volumecancel">Batch Cancel</el-menu-item> 
+            <el-menu-item index="/license-management">Manage License</el-menu-item>
+            <el-menu-item index="/assign-license">Assign License</el-menu-item>
+            <el-menu-item index="/batch-cancel-license">Batch Cancel</el-menu-item>
           </el-submenu>
-          <el-menu-item index="/device">
+          <el-menu-item index="/manage-device">
             <Device />
             <span>Device Management</span>
           </el-menu-item>

+ 95 - 18
src/router/index.js

@@ -37,21 +37,33 @@ const router = new VueRouter({
       path: "/login",
       name: "login",
       component: () => import("../views/Login.vue"),
+      meta: {
+        title: 'Log In PDF Tech Console'
+      }
     },
     {
-      path: "/noadmin",
+      path: "/non-admin-user",
       name: "noadmin",
       component: () => import("../views/Noadmin.vue"),
+      meta: {
+        title: 'Non-admin User'
+      }
     },
     {
-      path: "/Create",
+      path: "/sign-up",
       name: "Create",
       component: () => import("../views/Create.vue"),
+      meta: {
+        title: 'Sign Up PDF Tech Console'
+      }
     },
     {
-      path: "/forgotpassword",
+      path: "/forget-password",
       name: "forgotpassword",
       component: () => import("../views/forgotpassword.vue"),
+      meta: {
+        title: 'Forget Password | PDF Tech Account'
+      }
     },
     {
       path: '',
@@ -62,86 +74,137 @@ const router = new VueRouter({
           path: "/dashboard",
           name: "dashboard",
           component: () => import("../views/Dashboard.vue"),
+          meta: {
+            title: 'Home | PDF Tech Console'
+          }
         },
         {
-          path: "/productManagement",
+          path: "/product",
           name: "productManagement",
           component: () => import("../views/ProductManagement.vue"),
+          meta: {
+            title: 'Product | PDF Tech Console'
+          }
         },
         {
           path: "/manage-team",
           name: "ManageTeam",
           component: () => import("../views/TeamManagement/ManageTeam.vue"),
+          meta: {
+            title: 'Manage Team | PDF Tech Console'
+          }
         },
         {
-          path: "/manage-team/edit-manage-team",
+          path: "/manage-team/edit-team",
           name: "EditManageTeam",
           component: () => import("../views/TeamManagement/ManageTeamOperate.vue"),
+          meta: {
+            title: 'Manage Team | PDF Tech Console'
+          }
         },
         {
-          path: "/manage-team/create-manage-team",
+          path: "/manage-team/create-team",
           name: "CreateManageTeam",
           component: () => import("../views/TeamManagement/ManageTeamOperate.vue"),
+          meta: {
+            title: 'Manage Team | PDF Tech Console'
+          }
         },
         {
           path: "/manage-member",
           name: "ManageMember",
           component: () => import("../views/TeamManagement/ManageMember.vue"),
+          meta: {
+            title: 'Manage Member | PDF Tech Console'
+          }
         },
         {
-          path: "/manage-member/edit-manage-member",
+          path: "/manage-member/edit-member",
           name: "EditManageMember",
           component: () => import("../views/TeamManagement/ManageMember/EditManageMember.vue"),
+          meta: {
+            title: 'Manage Member | PDF Tech Console'
+          }
         },
         {
-          path: "/manage-member/add-manage-member",
+          path: "/manage-member/add-member",
           name: "AddManageMember",
           component: () => import("../views/TeamManagement/ManageMember/AddManageMember.vue"),
+          meta: {
+            title: 'Manage Member | PDF Tech Console'
+          }
         },
         {
-          path: "/manageAdmin",
+          path: "/manage-admin",
           name: "manageAdmin",
-          component: () => import("../views/ManageAdmin.vue"),
+          component: () => import("../views/manageAdmin.vue"),
+          meta: {
+            title: 'Manage Admin | PDF Tech Console'
+          }
         },
         {
-          path: "/manageAdmin/editAdmin",
+          path: "/manage-admin/edit-admin",
           name: "editAdmin",
           component: () => import("../views/MenageAdmin/editAdmin.vue"),
+          meta: {
+            title: 'Manage Admin | PDF Tech Console'
+          }
         },
         {
-          path: "/manageAdmin/addAdmin",
+          path: "/manage-admin/add-admin",
           name: "addAdmin",
           component: () => import("../views/MenageAdmin/addAdmin.vue"),
+          meta: {
+            title: 'Manage Admin | PDF Tech Console'
+          }
         },
         {
-          path: "/licenseManage",
+          path: "/license-management",
           name: "licenseManage",
           component: () => import("../views/LicenseManage.vue"),
+          meta: {
+            title: 'Manage License | PDF Tech Console'
+          }
         },
         {
-          path: "/assignlicense",
+          path: "/assign-license",
           name: "assignlicense",
           component: () => import("../views/Assignlicense.vue"),
+          meta: {
+            title: 'Manage License | PDF Tech Console'
+          }
         },
         {
-          path: "/volumecancel",
+          path: "/batch-cancel-license",
           name: "volumecancel",
           component: () => import("../views/VolumeCancel.vue"),
+          meta: {
+            title: 'Manage License | PDF Tech Console'
+          }
         },
         {
-          path: "/device",
+          path: "/manage-device",
           name: "device",
           component: () => import("../views/Device.vue"),
+          meta: {
+            title: 'Manage Device | PDF Tech Console'
+          }
         },
         {
           path: "/settings",
           name: "settings",
           component: () => import("../views/Settings.vue"),
+          meta: {
+            title: 'Console Settings | PDF Tech Console'
+          }
         },
         {
           path: "/support",
           name: "support",
           component: () => import("../views/Support.vue"),
+          meta: {
+            title: 'Support | PDF Tech Console'
+          }
         },
       ]
     },
@@ -164,16 +227,30 @@ const router = new VueRouter({
 router.beforeEach((to, from, next) => {
   const whiteList = '/login'
   //路由守卫,进行权限判断
-  if (to.path !== whiteList && to.path !== '/Create' && to.path !== '/noadmin' && to.path !== '/forgotpassword') {
+  if (to.path !== whiteList && to.path !== '/sign-up' && to.path !== '/non-admin-user' && to.path !== '/forget-password') {
     if (userStore().user.role?.indexOf("2") !== -1 || userStore().user.role?.indexOf("1") !== -1) {
       next()
     } else {
-      next('/noadmin')
+      next('/non-admin-user')
     }
   } else {
     next()
   }
 })
 
+// 设置title
+router.beforeEach((to, from, next) => {
+  if (to && to.meta && to.meta.title) {
+    document.title = to.meta.title
+  }
+  let head = document.getElementsByTagName('head')
+  let meta = document.createElement('meta')
+  document.querySelector('meta[name="keywords"]').setAttribute('content', 'PDF Tech Console allows you to manage products, teams, licenses, and devices. Join Volume License Program to access the PDF Tech Console now!')
+  document.querySelector('meta[name="description"]').setAttribute('content', 'PDF Tech Console, manage licenses, assign licenses, cancel licenses, volume licenses')
+  meta.content = to.meta.content
+  head[0].appendChild(meta)
+
+  next()
+})
 
 export default router

+ 2 - 2
src/views/LicenseManage.vue

@@ -209,7 +209,7 @@ const searchInfo = (val) => {
           </span>
           </el-tooltip>
           <router-link
-            to="/assignlicense"
+            to="/assign-license"
             class="
               bg-[#1460F3]
               h-28px
@@ -228,7 +228,7 @@ const searchInfo = (val) => {
             Assign License
           </router-link>
           <router-link
-            to="/volumecancel"
+            to="/batch-cancel-license"
             class="
               bg-[#1460F3]
               h-28px

+ 4 - 4
src/views/Login.vue

@@ -155,7 +155,7 @@ export default {
             '/pdf-tech/vppLicenseCode/checkCompanyLicense?companyId='+res.data.result.companyId
           ).then((res)=>{
             if(!res.data.result){
-              this.$router.push('/noadmin')
+              this.$router.push('/non-admin-user')
               return
             }
           })
@@ -165,7 +165,7 @@ export default {
         ) {
           this.$router.push('/dashboard')
         } else {
-          this.$router.push('/noadmin')
+          this.$router.push('/non-admin-user')
         }
       })
     }
@@ -230,7 +230,7 @@ export default {
               name="type"
               v-model="remenber"
             ></el-checkbox>
-            <router-link to="/forgotpassword" class="text-[#1460F3]">
+            <router-link to="/forget-password" class="text-[#1460F3]">
               Forgot Password?
             </router-link>
           </div>
@@ -247,7 +247,7 @@ export default {
           </button>
         </el-form-item>
         <!-- <div class="flex justify-end">
-          <router-link to="/Create" class="text-12px text-[#1460F3]">
+          <router-link to="/sign-up" class="text-12px text-[#1460F3]">
             Create account
           </router-link>
         </div> -->

+ 2 - 2
src/views/ManageAdmin.vue

@@ -141,7 +141,7 @@ const handleCurrentChange = (val) => {
         <span>Content</span>
         <div class="flex" v-if="memberRole?.indexOf('1') !== -1">
           <router-link
-            :to="{ path: '/manageAdmin/addAdmin', query: {} }"
+            :to="{ path: '/manage-admin/add-admin', query: {} }"
             class="
               bg-[#1460F3]
               h-28px
@@ -209,7 +209,7 @@ const handleCurrentChange = (val) => {
           <template slot-scope="scope">
             <div class="flex flex-col" v-if="scope.row.memberRole !== 'Super admin' && memberRole?.indexOf('1') !== -1">
               <router-link
-                :to="{ path: '/manageAdmin/editAdmin', query: { Email: scope.row.email, Team: scope.row.teamName, Id: scope.row.id } }"
+                :to="{ path: '/manage-admin/edit-admin', query: { Email: scope.row.email, Team: scope.row.teamName, Id: scope.row.id } }"
                 class="
                   w-60px
                   h-20px

+ 2 - 2
src/views/MenageAdmin/addAdmin.vue

@@ -20,7 +20,7 @@ export default {
     // 重置表单
     resetForm (formName) {
       this.$refs[formName].resetFields()
-      this.$router.push("/manageAdmin")
+      this.$router.push("/manage-admin")
     },
     //提交添加表单
     submitFormSingle(){
@@ -40,7 +40,7 @@ export default {
                 message: 'Change Successfully',
                 type: "success",
               })
-              this.$router.push("/manageAdmin")
+              this.$router.push("/manage-admin")
             } else if(res.data.msg === "Member has joined a non-default team"){
               this.$message({
                 duration: 5000,

+ 1 - 1
src/views/MenageAdmin/editAdmin.vue

@@ -53,7 +53,7 @@ export default {
                   message: 'Change Successfully',
                   type: "success",
                 })
-                this.$router.push("/manageAdmin")
+                this.$router.push("/manage-admin")
               }
           })
         }

+ 1 - 1
src/views/Noadmin.vue

@@ -13,7 +13,7 @@ export default {
               '/pdf-tech/vppLicenseCode/checkCompanyLicense?companyId='+res.data.result.companyId
             ).then((res)=>{
               if(!res.data.result){
-                this.$router.push('/noadmin')
+                this.$router.push('/non-admin-user')
                 return
               }else{
                 this.$router.push('/dashboard')

+ 1 - 1
src/views/Settings.vue

@@ -310,7 +310,7 @@ export default {
           </div>
         </el-form-item>
         <router-link
-          to="/forgotpassword"
+          to="/forget-password"
           class="flex ml-8px leading-20px mb-10px text-[#1460F3]"
           >Forgot Your Password?</router-link
         >

+ 1 - 1
utils/request.js

@@ -47,7 +47,7 @@ instance.interceptors.response.use(
      * 这里对 response 和 error 不做任何处理,直接返回
      */
     if(response.data.msg === "当前用户不具备操作权限" || response.data.msg === "Insufficient permissions"){
-      window.location.href = '/noadmin'
+      window.location.href = '/non-admin-user'
       this.$cookies.remove('accessToken')
       userStore().clearUserInfo()
     }