Browse Source

最新版Spring boot + Vue3 + Spring Security 6 项目模板

vue
adiao 3 years ago
parent
commit
e697672467
  1. 9
      WebVue.iml
  2. 1313
      package-lock.json
  3. 1
      src/image/welcome.svg
  4. 26
      src/router/index.js
  5. 2
      src/utils/axios/request.js
  6. 15
      src/views/404.vue
  7. 3
      src/views/Index.vue
  8. 28
      src/views/Login.vue
  9. 36
      src/views/adminManager/page/page1.vue
  10. 0
      src/views/adminManager/page/page10.vue
  11. 0
      src/views/adminManager/page/page11.vue
  12. 0
      src/views/adminManager/page/page2.vue
  13. 0
      src/views/adminManager/page/page3.vue
  14. 0
      src/views/adminManager/page/page4.vue
  15. 0
      src/views/adminManager/page/page5.vue
  16. 0
      src/views/adminManager/page/page6.vue
  17. 0
      src/views/adminManager/page/page7.vue
  18. 0
      src/views/adminManager/page/page8.vue
  19. 0
      src/views/adminManager/page/page9.vue
  20. 13
      src/views/assetLead/page/page1.vue
  21. 13
      src/views/assetLead/page/page2.vue
  22. 13
      src/views/assetLead/page/page3.vue
  23. 13
      src/views/assetLead/page/page4.vue
  24. 13
      src/views/assetLead/page/page5.vue
  25. 13
      src/views/assetManager/page/exportpage.vue
  26. 13
      src/views/assetManager/page/purrchasepage.vue
  27. 13
      src/views/assetManager/page/vettingpage.vue
  28. 28
      src/views/page/page1.vue

9
WebVue.iml

@ -0,0 +1,9 @@ @@ -0,0 +1,9 @@
<?xml version="1.0" encoding="UTF-8"?>
<module type="WEB_MODULE" version="4">
<component name="NewModuleRootManager" inherit-compiler-output="true">
<exclude-output />
<content url="file://$MODULE_DIR$" />
<orderEntry type="inheritedJdk" />
<orderEntry type="sourceFolder" forTests="false" />
</component>
</module>

1313
package-lock.json generated

File diff suppressed because it is too large Load Diff

1
src/image/welcome.svg

File diff suppressed because one or more lines are too long

After

Width:  |  Height:  |  Size: 10 KiB

26
src/router/index.js

@ -25,65 +25,65 @@ const RoutsList = [ @@ -25,65 +25,65 @@ const RoutsList = [
children: [
{
path: 'list-home',
component: () => import('../views/page/page1.vue'),
component: () => import('../views/adminManager/page/page1.vue'),
hidden: false
},
{
path: 'list-worker',
component: () => import('../views/page/page2.vue'),
component: () => import('../views/adminManager/page/page2.vue'),
hidden: false
},
{
path: 'list-people',
component: () => import('../views/page/page3.vue'),
component: () => import('../views/adminManager/page/page3.vue'),
hidden: false
},
{
path: 'list-assettype',
component: () => import('../views/page/page4.vue'),
component: () => import('../views/adminManager/page/page4.vue'),
hidden: false
},
{
path: 'list-brand',
component: () => import('../views/page/page5.vue'),
component: () => import('../views/adminManager/page/page5.vue'),
hidden: false
}, {
path: 'list-getMethod',
component: () => import('../views/page/page6.vue'),
component: () => import('../views/adminManager/page/page6.vue'),
hidden: false
},
{
path: 'list-vendor',
component: () => import('../views/page/page7.vue'),
component: () => import('../views/adminManager/page/page7.vue'),
hidden: false
},
{
path: 'list-address',
component: () => import('../views/page/page8.vue'),
component: () => import('../views/adminManager/page/page8.vue'),
hidden: false
},
{
path: 'list-claims',
component: () => import('../views/page/page9.vue'),
component: () => import('../views/adminManager/page/page9.vue'),
hidden: false
},
{
path: 'list-repair',
component: () => import('../views/page/page10.vue'),
component: () => import('../views/adminManager/page/page10.vue'),
hidden: false
},
{
path: 'list-permission',
component: () => import('../views/page/page7.vue'),
component: () => import('../views/adminManager/page/page7.vue'),
hidden: false
},
{
path: 'list-export',
component: () => import('../views/page/page8.vue'),
component: () => import('../views/adminManager/page/page8.vue'),
hidden: false
}, {
path: 'list-info',
component: () => import('../views/page/page11.vue'),
component: () => import('../views/adminManager/page/page11.vue'),
hidden: false
}
]

2
src/utils/axios/request.js

@ -2,7 +2,7 @@ import axios from "axios"; @@ -2,7 +2,7 @@ import axios from "axios";
const service = axios.create({
// baseURL: import.meta.env.VITE_APP_URL,
baseURL: 'http://localhost/',
baseURL: 'http://localhost:8080/',
timeout: 6000,
headers: { 'X-Custom-Header': 'foobar' }
})

15
src/views/404.vue

@ -0,0 +1,15 @@ @@ -0,0 +1,15 @@
<template>
<div>
</div>
</template>
<script>
export default {
}
</script>
<style scoped>
</style>

3
src/views/Index.vue

@ -44,9 +44,6 @@ @@ -44,9 +44,6 @@
<!-- content区域 -->
<div>
<div class="content" id="nav-tabContent">
<div class="tips">
欢迎登陆资产系统
</div>
<RouterView />
</div>
</div>

28
src/views/Login.vue

@ -17,7 +17,7 @@ @@ -17,7 +17,7 @@
id="exampleInputPassword1" placeholder="请输入密码">
</div>
<div class="image">
<img :src="this.codeImage" @click="getCode" style="width: 130px; height: 39px;">
<img :src="this.codeImage" @click="getCode" style="width: 130px; height: 39px;" data-base64="" alt="image">
<input type="text" id="imginput" style="width: 120px;" class="form-control"
placeholder="输入验证码" />
</div>
@ -52,42 +52,34 @@ export default { @@ -52,42 +52,34 @@ export default {
}
},
created() {
var img = this.$data.codeImage;
request.get('/captcha', { responseType: 'blob' }).then((response) => {
console.log(response.data)
this.codeImage = window.URL.createObjectURL(response.data)
console.log(this.codeImage)
const img = this.$data.codeImage;
request.get('/captcha').then((response) => {
this.codeImage = response.data.data.base64
})
},
methods: {
login() {
request.post('/login',
request.post('api/login',
qs.parse({
name: this.$data.username,
username: this.$data.username,
password: this.$data.password
}), {
headers: {
'Content-Type': 'application/json'
'Content-Type': ' application/x-www-form-urlencoded'
}
}).then(resp => {
//
console.log(resp)
console.log(resp.data.code)
console.log(resp.data.msg)
if (resp.data.code == 200) {
if (resp.data.code === 200) {
console.log(resp.data.msg)
this.$router.push({ name: 'index' })
store.dispatch('login', true)
}
}).catch(error => console.log(error))
},
getCode() {
request.get('/captcha', { responseType: 'blob' }).then((response) => {
console.log(response.data)
this.codeImage = window.URL.createObjectURL(response.data)
console.log(this.codeImage)
request.get('/captcha').then((response) => {
this.codeImage = response.data.data.base64
})
},
toRegister() {

36
src/views/adminManager/page/page1.vue

@ -0,0 +1,36 @@ @@ -0,0 +1,36 @@
<script>
export default {
props: {
message: String
}
}
</script>
<template>
<!-- 首页展示 -->
<div class="container">
<div class="row">
<div class="col-md-12 d-md-flex justify-content-center align-items-center flex-wrap">
<div class="box">
<img class="boox" src="../../../image/welcome.svg" alt="welcome page">
<h4>欢迎{{message}}登录成功系统</h4>
</div>
</div>
</div>
</div>
</template>
<style>
.boox{
margin: 0;
padding: 0;
max-width: 400px;
max-height: 600px;
background-color: white;
}
.box{
margin: 120px auto;
text-align: center;
border: thick double silver;
box-shadow: 0 2px 2px 2px silver;
}
</style>

0
src/views/page/page10.vue → src/views/adminManager/page/page10.vue

0
src/views/page/page11.vue → src/views/adminManager/page/page11.vue

0
src/views/page/page2.vue → src/views/adminManager/page/page2.vue

0
src/views/page/page3.vue → src/views/adminManager/page/page3.vue

0
src/views/page/page4.vue → src/views/adminManager/page/page4.vue

0
src/views/page/page5.vue → src/views/adminManager/page/page5.vue

0
src/views/page/page6.vue → src/views/adminManager/page/page6.vue

0
src/views/page/page7.vue → src/views/adminManager/page/page7.vue

0
src/views/page/page8.vue → src/views/adminManager/page/page8.vue

0
src/views/page/page9.vue → src/views/adminManager/page/page9.vue

13
src/views/assetLead/page/page1.vue

@ -0,0 +1,13 @@ @@ -0,0 +1,13 @@
<template>
</template>
<script>
export default {
name: "page1"
}
</script>
<style scoped>
</style>

13
src/views/assetLead/page/page2.vue

@ -0,0 +1,13 @@ @@ -0,0 +1,13 @@
<template>
</template>
<script>
export default {
name: "page2"
}
</script>
<style scoped>
</style>

13
src/views/assetLead/page/page3.vue

@ -0,0 +1,13 @@ @@ -0,0 +1,13 @@
<template>
</template>
<script>
export default {
name: "page3"
}
</script>
<style scoped>
</style>

13
src/views/assetLead/page/page4.vue

@ -0,0 +1,13 @@ @@ -0,0 +1,13 @@
<template>
</template>
<script>
export default {
name: "page4"
}
</script>
<style scoped>
</style>

13
src/views/assetLead/page/page5.vue

@ -0,0 +1,13 @@ @@ -0,0 +1,13 @@
<template>
</template>
<script>
export default {
name: "page5"
}
</script>
<style scoped>
</style>

13
src/views/assetManager/page/exportpage.vue

@ -0,0 +1,13 @@ @@ -0,0 +1,13 @@
<template>
</template>
<script>
export default {
name: "page1"
}
</script>
<style scoped>
</style>

13
src/views/assetManager/page/purrchasepage.vue

@ -0,0 +1,13 @@ @@ -0,0 +1,13 @@
<template>
</template>
<script>
export default {
name: "purrchasepage"
}
</script>
<style scoped>
</style>

13
src/views/assetManager/page/vettingpage.vue

@ -0,0 +1,13 @@ @@ -0,0 +1,13 @@
<template>
</template>
<script>
export default {
name: "vettingpage"
}
</script>
<style scoped>
</style>

28
src/views/page/page1.vue

@ -1,28 +0,0 @@ @@ -1,28 +0,0 @@
<script>
export default {
props: {
message: String
}
}
</script>
<template>
<!-- 首页展示 -->
<div class="container">
<div class="row">
<div class="col">
<div class="boox">
欢迎{{ message }}登录系统
</div>
</div>
</div>
</div>
</template>
<style>
.boox{
margin: 0;
padding: 0;
max-width: 400px;
max-height: 600px;
background-color: brown;
}
</style>
Loading…
Cancel
Save