├── src
├── libs
│ ├── icons.js
│ ├── bus.js
│ ├── BMap.js
│ ├── iviewTool.js
│ ├── elementTool.js
│ ├── password_regexp.js
│ ├── tools.js
│ └── coversionPoint.js
├── assets
│ ├── logo.png
│ └── carimg
│ │ ├── sf.png
│ │ ├── load.gif
│ │ ├── logo.png
│ │ ├── logo2.png
│ │ ├── 1552881955657.jpg
│ │ ├── 1552882300675.jpg
│ │ ├── app.1969d960.png
│ │ ├── car1.01eb86f8.png
│ │ ├── car2.4286778f.png
│ │ ├── car3.b2f7e8e6.png
│ │ ├── car4.91dccff8.png
│ │ ├── car5.eae72ca1.png
│ │ ├── car6.6c1551c2.png
│ │ ├── car7.4cdd553d.png
│ │ ├── car8.bd8a4b18.png
│ │ ├── car9.71fbe309.png
│ │ ├── luyi.81be19be.jpg
│ │ ├── banner.c5e07275.jpg
│ │ ├── owner02.3d770358.jpg
│ │ ├── owner03.29ad19bc.jpg
│ │ ├── owner04.40705290.jpg
│ │ ├── owner05.335a919e.jpg
│ │ ├── story1.17c61c0b.png
│ │ ├── story2.31bf03b4.png
│ │ ├── story3.81130e7d.png
│ │ ├── caoqitai.8fb8692e.jpg
│ │ ├── chenglei.47246153.jpg
│ │ ├── panshiyi.a681c060.jpg
│ │ ├── rentway1.b5621f1a.png
│ │ ├── rentway2.e61c20e7.png
│ │ ├── rentway3.15796cae.png
│ │ ├── become-back.a82c677d.jpg
│ │ ├── caizhisong.dff3bcfc.jpg
│ │ ├── image-panel1.885fbac7.png
│ │ ├── image-panel2.33387385.png
│ │ ├── image-panel3.0c271272.png
│ │ ├── image-panel4.3c6985bf.png
│ │ ├── jiangyiyan.ccfd2a68.jpg
│ │ ├── liuqingyang.d6560643.jpg
│ │ ├── owner_text01.15be5b89.png
│ │ ├── owner_text02.67df3827.png
│ │ ├── point-three.a782973d.png
│ │ ├── signup-back.a22bc70d.jpg
│ │ ├── xuxiaoping.94c6ae75.jpg
│ │ ├── zhangliangying.3e0eb35a.jpg
│ │ └── zhangliangying_s.714c7189.jpg
├── views
│ ├── interlayer
│ │ └── interlayer.js
│ ├── user_message
│ │ ├── balanceEnquiry.vue
│ │ ├── userinfo.vue
│ │ ├── message_main.vue
│ │ ├── userChangePassword.vue
│ │ └── ownerOrderInformation.vue
│ ├── backstage
│ │ ├── audit
│ │ │ ├── audit.vue
│ │ │ └── auditcar.vue
│ │ ├── order
│ │ │ ├── changeCar.vue
│ │ │ └── disposeCar.vue
│ │ ├── car_assessment
│ │ │ ├── delete_assessment.vue
│ │ │ ├── add_assessment.vue
│ │ │ └── update_assessment.vue
│ │ ├── backmain.vue
│ │ ├── carrental
│ │ │ ├── delete_carrental.vue
│ │ │ ├── update_carrental.vue
│ │ │ └── add_carrental.vue
│ │ └── ownercaraudit
│ │ │ └── ownercaraudit.vue
│ ├── ownerManagement
│ │ ├── owner_main.vue
│ │ └── state_management.vue
│ ├── home
│ │ └── home.vue
│ ├── main
│ │ ├── collect.vue
│ │ ├── main.vue
│ │ ├── carRental.vue
│ │ └── owner.vue
│ ├── login
│ │ └── login.vue
│ └── register
│ │ └── register.vue
├── App.vue
├── components
│ └── footer.vue
├── main.js
└── router
│ └── index.js
├── static
├── .gitkeep
├── favicon.ico
└── img
│ ├── logo.png
│ ├── logo2.png
│ ├── timg.jpg
│ ├── 1552881955657.jpg
│ ├── 1552882300675.jpg
│ ├── car1.01eb86f8.png
│ ├── car2.4286778f.png
│ ├── car3.b2f7e8e6.png
│ ├── car4.91dccff8.png
│ ├── car5.eae72ca1.png
│ ├── car6.6c1551c2.png
│ ├── luyi.81be19be.jpg
│ ├── story1.17c61c0b.png
│ ├── story2.31bf03b4.png
│ ├── story3.81130e7d.png
│ ├── caoqitai.8fb8692e.jpg
│ ├── chenglei.47246153.jpg
│ ├── panshiyi.a681c060.jpg
│ ├── become-back.a82c677d.jpg
│ ├── caizhisong.dff3bcfc.jpg
│ ├── jiangyiyan.ccfd2a68.jpg
│ ├── liuqingyang.d6560643.jpg
│ ├── xuxiaoping.94c6ae75.jpg
│ ├── image-panel1.885fbac7.png
│ ├── image-panel2.33387385.png
│ ├── image-panel3.0c271272.png
│ ├── image-panel4.3c6985bf.png
│ ├── zhangliangying.3e0eb35a.jpg
│ ├── zhangliangying_s.714c7189.jpg
│ ├── 717c50ce5dc7655311f37c47242c7a7e.jpg
│ └── aa28feb20b07799fc7335cfc68e0971f.jpg
├── config
├── prod.env.js
├── dev.env.js
└── index.js
├── .editorconfig
├── .gitignore
├── .babelrc
├── .postcssrc.js
├── index.html
├── README.md
├── package.json
└── nginx.conf
/src/libs/icons.js:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/static/.gitkeep:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/src/libs/bus.js:
--------------------------------------------------------------------------------
1 | import Vue from 'vue'
2 | export default new Vue
--------------------------------------------------------------------------------
/config/prod.env.js:
--------------------------------------------------------------------------------
1 | 'use strict'
2 | module.exports = {
3 | NODE_ENV: '"production"'
4 | }
5 |
--------------------------------------------------------------------------------
/static/favicon.ico:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Roommain/CarRentalPlatform/HEAD/static/favicon.ico
--------------------------------------------------------------------------------
/src/assets/logo.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Roommain/CarRentalPlatform/HEAD/src/assets/logo.png
--------------------------------------------------------------------------------
/static/img/logo.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Roommain/CarRentalPlatform/HEAD/static/img/logo.png
--------------------------------------------------------------------------------
/static/img/logo2.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Roommain/CarRentalPlatform/HEAD/static/img/logo2.png
--------------------------------------------------------------------------------
/static/img/timg.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Roommain/CarRentalPlatform/HEAD/static/img/timg.jpg
--------------------------------------------------------------------------------
/src/assets/carimg/sf.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Roommain/CarRentalPlatform/HEAD/src/assets/carimg/sf.png
--------------------------------------------------------------------------------
/src/assets/carimg/load.gif:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Roommain/CarRentalPlatform/HEAD/src/assets/carimg/load.gif
--------------------------------------------------------------------------------
/src/assets/carimg/logo.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Roommain/CarRentalPlatform/HEAD/src/assets/carimg/logo.png
--------------------------------------------------------------------------------
/src/assets/carimg/logo2.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Roommain/CarRentalPlatform/HEAD/src/assets/carimg/logo2.png
--------------------------------------------------------------------------------
/static/img/1552881955657.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Roommain/CarRentalPlatform/HEAD/static/img/1552881955657.jpg
--------------------------------------------------------------------------------
/static/img/1552882300675.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Roommain/CarRentalPlatform/HEAD/static/img/1552882300675.jpg
--------------------------------------------------------------------------------
/static/img/car1.01eb86f8.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Roommain/CarRentalPlatform/HEAD/static/img/car1.01eb86f8.png
--------------------------------------------------------------------------------
/static/img/car2.4286778f.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Roommain/CarRentalPlatform/HEAD/static/img/car2.4286778f.png
--------------------------------------------------------------------------------
/static/img/car3.b2f7e8e6.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Roommain/CarRentalPlatform/HEAD/static/img/car3.b2f7e8e6.png
--------------------------------------------------------------------------------
/static/img/car4.91dccff8.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Roommain/CarRentalPlatform/HEAD/static/img/car4.91dccff8.png
--------------------------------------------------------------------------------
/static/img/car5.eae72ca1.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Roommain/CarRentalPlatform/HEAD/static/img/car5.eae72ca1.png
--------------------------------------------------------------------------------
/static/img/car6.6c1551c2.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Roommain/CarRentalPlatform/HEAD/static/img/car6.6c1551c2.png
--------------------------------------------------------------------------------
/static/img/luyi.81be19be.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Roommain/CarRentalPlatform/HEAD/static/img/luyi.81be19be.jpg
--------------------------------------------------------------------------------
/src/views/interlayer/interlayer.js:
--------------------------------------------------------------------------------
1 | import Vue from 'vue'
2 | let interlayer = new Vue()
3 | export default interlayer
4 |
--------------------------------------------------------------------------------
/static/img/story1.17c61c0b.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Roommain/CarRentalPlatform/HEAD/static/img/story1.17c61c0b.png
--------------------------------------------------------------------------------
/static/img/story2.31bf03b4.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Roommain/CarRentalPlatform/HEAD/static/img/story2.31bf03b4.png
--------------------------------------------------------------------------------
/static/img/story3.81130e7d.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Roommain/CarRentalPlatform/HEAD/static/img/story3.81130e7d.png
--------------------------------------------------------------------------------
/static/img/caoqitai.8fb8692e.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Roommain/CarRentalPlatform/HEAD/static/img/caoqitai.8fb8692e.jpg
--------------------------------------------------------------------------------
/static/img/chenglei.47246153.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Roommain/CarRentalPlatform/HEAD/static/img/chenglei.47246153.jpg
--------------------------------------------------------------------------------
/static/img/panshiyi.a681c060.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Roommain/CarRentalPlatform/HEAD/static/img/panshiyi.a681c060.jpg
--------------------------------------------------------------------------------
/src/assets/carimg/1552881955657.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Roommain/CarRentalPlatform/HEAD/src/assets/carimg/1552881955657.jpg
--------------------------------------------------------------------------------
/src/assets/carimg/1552882300675.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Roommain/CarRentalPlatform/HEAD/src/assets/carimg/1552882300675.jpg
--------------------------------------------------------------------------------
/src/assets/carimg/app.1969d960.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Roommain/CarRentalPlatform/HEAD/src/assets/carimg/app.1969d960.png
--------------------------------------------------------------------------------
/src/assets/carimg/car1.01eb86f8.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Roommain/CarRentalPlatform/HEAD/src/assets/carimg/car1.01eb86f8.png
--------------------------------------------------------------------------------
/src/assets/carimg/car2.4286778f.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Roommain/CarRentalPlatform/HEAD/src/assets/carimg/car2.4286778f.png
--------------------------------------------------------------------------------
/src/assets/carimg/car3.b2f7e8e6.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Roommain/CarRentalPlatform/HEAD/src/assets/carimg/car3.b2f7e8e6.png
--------------------------------------------------------------------------------
/src/assets/carimg/car4.91dccff8.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Roommain/CarRentalPlatform/HEAD/src/assets/carimg/car4.91dccff8.png
--------------------------------------------------------------------------------
/src/assets/carimg/car5.eae72ca1.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Roommain/CarRentalPlatform/HEAD/src/assets/carimg/car5.eae72ca1.png
--------------------------------------------------------------------------------
/src/assets/carimg/car6.6c1551c2.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Roommain/CarRentalPlatform/HEAD/src/assets/carimg/car6.6c1551c2.png
--------------------------------------------------------------------------------
/src/assets/carimg/car7.4cdd553d.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Roommain/CarRentalPlatform/HEAD/src/assets/carimg/car7.4cdd553d.png
--------------------------------------------------------------------------------
/src/assets/carimg/car8.bd8a4b18.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Roommain/CarRentalPlatform/HEAD/src/assets/carimg/car8.bd8a4b18.png
--------------------------------------------------------------------------------
/src/assets/carimg/car9.71fbe309.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Roommain/CarRentalPlatform/HEAD/src/assets/carimg/car9.71fbe309.png
--------------------------------------------------------------------------------
/src/assets/carimg/luyi.81be19be.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Roommain/CarRentalPlatform/HEAD/src/assets/carimg/luyi.81be19be.jpg
--------------------------------------------------------------------------------
/src/libs/BMap.js:
--------------------------------------------------------------------------------
1 | function Map(key,object){
2 | const url = `http://api.map.baidu.com/api?v=3.0&ak=${key}&callback=init`;
3 | }
--------------------------------------------------------------------------------
/static/img/become-back.a82c677d.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Roommain/CarRentalPlatform/HEAD/static/img/become-back.a82c677d.jpg
--------------------------------------------------------------------------------
/static/img/caizhisong.dff3bcfc.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Roommain/CarRentalPlatform/HEAD/static/img/caizhisong.dff3bcfc.jpg
--------------------------------------------------------------------------------
/static/img/jiangyiyan.ccfd2a68.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Roommain/CarRentalPlatform/HEAD/static/img/jiangyiyan.ccfd2a68.jpg
--------------------------------------------------------------------------------
/static/img/liuqingyang.d6560643.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Roommain/CarRentalPlatform/HEAD/static/img/liuqingyang.d6560643.jpg
--------------------------------------------------------------------------------
/static/img/xuxiaoping.94c6ae75.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Roommain/CarRentalPlatform/HEAD/static/img/xuxiaoping.94c6ae75.jpg
--------------------------------------------------------------------------------
/src/assets/carimg/banner.c5e07275.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Roommain/CarRentalPlatform/HEAD/src/assets/carimg/banner.c5e07275.jpg
--------------------------------------------------------------------------------
/src/assets/carimg/owner02.3d770358.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Roommain/CarRentalPlatform/HEAD/src/assets/carimg/owner02.3d770358.jpg
--------------------------------------------------------------------------------
/src/assets/carimg/owner03.29ad19bc.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Roommain/CarRentalPlatform/HEAD/src/assets/carimg/owner03.29ad19bc.jpg
--------------------------------------------------------------------------------
/src/assets/carimg/owner04.40705290.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Roommain/CarRentalPlatform/HEAD/src/assets/carimg/owner04.40705290.jpg
--------------------------------------------------------------------------------
/src/assets/carimg/owner05.335a919e.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Roommain/CarRentalPlatform/HEAD/src/assets/carimg/owner05.335a919e.jpg
--------------------------------------------------------------------------------
/src/assets/carimg/story1.17c61c0b.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Roommain/CarRentalPlatform/HEAD/src/assets/carimg/story1.17c61c0b.png
--------------------------------------------------------------------------------
/src/assets/carimg/story2.31bf03b4.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Roommain/CarRentalPlatform/HEAD/src/assets/carimg/story2.31bf03b4.png
--------------------------------------------------------------------------------
/src/assets/carimg/story3.81130e7d.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Roommain/CarRentalPlatform/HEAD/src/assets/carimg/story3.81130e7d.png
--------------------------------------------------------------------------------
/static/img/image-panel1.885fbac7.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Roommain/CarRentalPlatform/HEAD/static/img/image-panel1.885fbac7.png
--------------------------------------------------------------------------------
/static/img/image-panel2.33387385.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Roommain/CarRentalPlatform/HEAD/static/img/image-panel2.33387385.png
--------------------------------------------------------------------------------
/static/img/image-panel3.0c271272.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Roommain/CarRentalPlatform/HEAD/static/img/image-panel3.0c271272.png
--------------------------------------------------------------------------------
/static/img/image-panel4.3c6985bf.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Roommain/CarRentalPlatform/HEAD/static/img/image-panel4.3c6985bf.png
--------------------------------------------------------------------------------
/static/img/zhangliangying.3e0eb35a.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Roommain/CarRentalPlatform/HEAD/static/img/zhangliangying.3e0eb35a.jpg
--------------------------------------------------------------------------------
/src/assets/carimg/caoqitai.8fb8692e.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Roommain/CarRentalPlatform/HEAD/src/assets/carimg/caoqitai.8fb8692e.jpg
--------------------------------------------------------------------------------
/src/assets/carimg/chenglei.47246153.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Roommain/CarRentalPlatform/HEAD/src/assets/carimg/chenglei.47246153.jpg
--------------------------------------------------------------------------------
/src/assets/carimg/panshiyi.a681c060.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Roommain/CarRentalPlatform/HEAD/src/assets/carimg/panshiyi.a681c060.jpg
--------------------------------------------------------------------------------
/src/assets/carimg/rentway1.b5621f1a.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Roommain/CarRentalPlatform/HEAD/src/assets/carimg/rentway1.b5621f1a.png
--------------------------------------------------------------------------------
/src/assets/carimg/rentway2.e61c20e7.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Roommain/CarRentalPlatform/HEAD/src/assets/carimg/rentway2.e61c20e7.png
--------------------------------------------------------------------------------
/src/assets/carimg/rentway3.15796cae.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Roommain/CarRentalPlatform/HEAD/src/assets/carimg/rentway3.15796cae.png
--------------------------------------------------------------------------------
/static/img/zhangliangying_s.714c7189.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Roommain/CarRentalPlatform/HEAD/static/img/zhangliangying_s.714c7189.jpg
--------------------------------------------------------------------------------
/src/assets/carimg/become-back.a82c677d.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Roommain/CarRentalPlatform/HEAD/src/assets/carimg/become-back.a82c677d.jpg
--------------------------------------------------------------------------------
/src/assets/carimg/caizhisong.dff3bcfc.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Roommain/CarRentalPlatform/HEAD/src/assets/carimg/caizhisong.dff3bcfc.jpg
--------------------------------------------------------------------------------
/src/assets/carimg/image-panel1.885fbac7.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Roommain/CarRentalPlatform/HEAD/src/assets/carimg/image-panel1.885fbac7.png
--------------------------------------------------------------------------------
/src/assets/carimg/image-panel2.33387385.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Roommain/CarRentalPlatform/HEAD/src/assets/carimg/image-panel2.33387385.png
--------------------------------------------------------------------------------
/src/assets/carimg/image-panel3.0c271272.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Roommain/CarRentalPlatform/HEAD/src/assets/carimg/image-panel3.0c271272.png
--------------------------------------------------------------------------------
/src/assets/carimg/image-panel4.3c6985bf.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Roommain/CarRentalPlatform/HEAD/src/assets/carimg/image-panel4.3c6985bf.png
--------------------------------------------------------------------------------
/src/assets/carimg/jiangyiyan.ccfd2a68.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Roommain/CarRentalPlatform/HEAD/src/assets/carimg/jiangyiyan.ccfd2a68.jpg
--------------------------------------------------------------------------------
/src/assets/carimg/liuqingyang.d6560643.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Roommain/CarRentalPlatform/HEAD/src/assets/carimg/liuqingyang.d6560643.jpg
--------------------------------------------------------------------------------
/src/assets/carimg/owner_text01.15be5b89.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Roommain/CarRentalPlatform/HEAD/src/assets/carimg/owner_text01.15be5b89.png
--------------------------------------------------------------------------------
/src/assets/carimg/owner_text02.67df3827.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Roommain/CarRentalPlatform/HEAD/src/assets/carimg/owner_text02.67df3827.png
--------------------------------------------------------------------------------
/src/assets/carimg/point-three.a782973d.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Roommain/CarRentalPlatform/HEAD/src/assets/carimg/point-three.a782973d.png
--------------------------------------------------------------------------------
/src/assets/carimg/signup-back.a22bc70d.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Roommain/CarRentalPlatform/HEAD/src/assets/carimg/signup-back.a22bc70d.jpg
--------------------------------------------------------------------------------
/src/assets/carimg/xuxiaoping.94c6ae75.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Roommain/CarRentalPlatform/HEAD/src/assets/carimg/xuxiaoping.94c6ae75.jpg
--------------------------------------------------------------------------------
/src/assets/carimg/zhangliangying.3e0eb35a.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Roommain/CarRentalPlatform/HEAD/src/assets/carimg/zhangliangying.3e0eb35a.jpg
--------------------------------------------------------------------------------
/src/assets/carimg/zhangliangying_s.714c7189.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Roommain/CarRentalPlatform/HEAD/src/assets/carimg/zhangliangying_s.714c7189.jpg
--------------------------------------------------------------------------------
/static/img/717c50ce5dc7655311f37c47242c7a7e.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Roommain/CarRentalPlatform/HEAD/static/img/717c50ce5dc7655311f37c47242c7a7e.jpg
--------------------------------------------------------------------------------
/static/img/aa28feb20b07799fc7335cfc68e0971f.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Roommain/CarRentalPlatform/HEAD/static/img/aa28feb20b07799fc7335cfc68e0971f.jpg
--------------------------------------------------------------------------------
/config/dev.env.js:
--------------------------------------------------------------------------------
1 | 'use strict'
2 | const merge = require('webpack-merge')
3 | const prodEnv = require('./prod.env')
4 |
5 | module.exports = merge(prodEnv, {
6 | NODE_ENV: '"development"'
7 | })
8 |
--------------------------------------------------------------------------------
/.editorconfig:
--------------------------------------------------------------------------------
1 | root = true
2 |
3 | [*]
4 | charset = utf-8
5 | indent_style = space
6 | indent_size = 2
7 | end_of_line = lf
8 | insert_final_newline = true
9 | trim_trailing_whitespace = true
10 |
--------------------------------------------------------------------------------
/src/libs/iviewTool.js:
--------------------------------------------------------------------------------
1 | import Vue from 'vue';
2 | import iview from 'iView';
3 | Vue.use(iview);
4 | // 全局提示配置
5 | new Vue().$Message.config({
6 | top:260,
7 | duration:1.5,
8 | closable:true
9 | });
10 |
11 |
--------------------------------------------------------------------------------
/.gitignore:
--------------------------------------------------------------------------------
1 | .DS_Store
2 | node_modules/
3 | /dist/
4 | npm-debug.log*
5 | yarn-debug.log*
6 | yarn-error.log*
7 |
8 | # Editor directories and files
9 | .idea
10 | .vscode
11 | *.suo
12 | *.ntvs*
13 | *.njsproj
14 | *.sln
15 |
--------------------------------------------------------------------------------
/.babelrc:
--------------------------------------------------------------------------------
1 | {
2 | "presets": [
3 | ["env", {
4 | "modules": false,
5 | "targets": {
6 | "browsers": ["> 1%", "last 2 versions", "not ie <= 8"]
7 | }
8 | }],
9 | "stage-2"
10 | ],
11 | "plugins": ["transform-vue-jsx", "transform-runtime"]
12 | }
13 |
--------------------------------------------------------------------------------
/.postcssrc.js:
--------------------------------------------------------------------------------
1 | // https://github.com/michael-ciniawsky/postcss-load-config
2 |
3 | module.exports = {
4 | "plugins": {
5 | "postcss-import": {},
6 | "postcss-url": {},
7 | // to edit target browsers: use "browserslist" field in package.json
8 | "autoprefixer": {}
9 | }
10 | }
11 |
--------------------------------------------------------------------------------
/src/libs/elementTool.js:
--------------------------------------------------------------------------------
1 | import Vue from 'vue';
2 | import { Table, Checkbox,TableColumn,Button,Tree} from 'element-ui';
3 |
4 |
5 | Vue.component(Table.name, Table);
6 | Vue.component(Checkbox.name, Checkbox);
7 | Vue.component(TableColumn.name, TableColumn);
8 | Vue.component(Button.name, Button);
9 | Vue.component(Tree.name, Tree);
--------------------------------------------------------------------------------
/index.html:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 |
8 | 易行租车—你的出行伙伴
9 |
10 |
11 |
12 |
13 |
14 |
--------------------------------------------------------------------------------
/src/App.vue:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 |
12 |
13 |
27 |
--------------------------------------------------------------------------------
/README.md:
--------------------------------------------------------------------------------
1 | # car-rental-platform
2 |
3 | > 汽车在线租借平台
4 |
5 | ## Build Setup
6 |
7 | ``` bash
8 | # install dependencies
9 | npm install
10 |
11 | # serve with hot reload at localhost:8080
12 | npm run dev
13 |
14 | # build for production with minification
15 | npm run build
16 |
17 | # build for production and view the bundle analyzer report
18 | npm run build --report
19 | ```
20 | ## 使用技术
21 | ``` bash
22 | # "axios": "^0.18.0",
23 | # "element-ui": "^2.6.1",
24 | # "iview": "^3.3.3",
25 | # "js-cookie": "^2.2.0",
26 | # "js-md5": "^0.7.3",
27 | # "less": "^3.9.0",
28 | # "less-loader": "^4.1.0",
29 | # "vue": "^2.5.2",
30 | # "vue-resource": "^1.5.1",
31 | # "vue-router": "^3.0.1"
32 |
33 | For a detailed explanation on how things work, check out the [guide](http://vuejs-templates.github.io/webpack/) and [docs for vue-loader](http://vuejs.github.io/vue-loader).
34 |
--------------------------------------------------------------------------------
/src/libs/password_regexp.js:
--------------------------------------------------------------------------------
1 | const rule = {
2 | /**
3 | * 验证密码强度,-1位不合格,1为最低,依次递增
4 | * @param {string,number} value 密码
5 | */
6 | strength (value) {
7 | if (!value) {
8 | return;
9 | }
10 | var strengthCount = 0;
11 | if (/[a-zA-Z]/.test(value)) {
12 | strengthCount++;
13 | }
14 | if (/[0-9]/.test(value)) {
15 | strengthCount++;
16 | }
17 | if (/[`~!@#$%^&*()_+<>?:"{},./;'[\]\\ ]/g.test(value)) {
18 | strengthCount++;
19 | }
20 | if (value.length < 6 || value.length > 30) {
21 | strengthCount = -1;
22 | }
23 | return strengthCount;
24 | },
25 | /**
26 | * 清除不匹配的字符,必须传入event事件,规则不传则默认清除特殊字符
27 | * 如果该数据绑定v-model则无效
28 | * @param {string,number} e 密码
29 | * *@param {RegExp} regExp 正则
30 | */
31 | replaceStr(e, regExp) {
32 | var regexpStr = regExp || /[`~!@#$%^&*()_+<>?:"{}\\,\s.\ /,'[\]]/g;
33 | e.target.value = e.target.value.replace(regexpStr, '');
34 | return this;
35 | }
36 | };
37 |
38 | export default rule;
39 |
40 |
41 |
42 |
43 |
--------------------------------------------------------------------------------
/src/components/footer.vue:
--------------------------------------------------------------------------------
1 |
2 |
20 |
21 |
22 |
36 |
37 |
55 |
56 |
57 |
58 |
--------------------------------------------------------------------------------
/src/main.js:
--------------------------------------------------------------------------------
1 | // The Vue build version to load with the `import` command
2 | // (runtime-only or standalone) has been set in webpack.base.conf with an alias.
3 | import Vue from 'vue'
4 | import App from './App'
5 | import router from './router'
6 | import axios from 'axios' //引入axios
7 | import VueResource from 'vue-resource'
8 | import Cookies from 'js-cookie'
9 | import iView from 'iview'
10 | import 'iview/dist/styles/iview.css'
11 | import rule from './libs/password_regexp';//引入密码验证强弱
12 | import ElementUI from 'element-ui';
13 | import 'element-ui/lib/theme-chalk/index.css';
14 |
15 | Vue.config.productionTip = false
16 | Vue.prototype.$axios = axios //把axios添加到vue原型
17 | Vue.prototype.$cookie = Cookies;//cookie操作
18 | Vue.use(VueResource)
19 | Vue.use(ElementUI)
20 | Vue.use(iView)
21 | Vue.prototype.$rule = rule; //统一验证规则
22 |
23 | /* eslint-disable no-new */
24 | new Vue({
25 | el: '#app',
26 | router,
27 | components: { App },
28 | template: ''
29 | })
30 |
31 | //
32 | //
33 | // _oo0oo_
34 | // o8888888o
35 | // 88" . "88
36 | // (| -_- |)
37 | // 0\ = /0
38 | // ___/`---'\___
39 | // .' \\| |// '.
40 | // / \\||| : |||// \
41 | // / _||||| -:- |||||- \
42 | // | | \\\ - /// | |
43 | // | \_| ''\---/'' |_/ |
44 | // \ .-\__ '-' ___/-. /
45 | // ___'. .' /--.--\ `. .'___
46 | // ."" '< `.___\_<|>_/___.' >' "".
47 | // | | : `- \`.;`\ _ /`;.`/ - ` : | |
48 | // \ \ `_. \_ __\ /__ _/ .-` / /
49 | // =====`-.____`.___ \_____/___.-`___.-'=====
50 | // `=---='
51 | //
52 | //
53 | // ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
54 | //
55 | // 佛祖保佑 永无BUG
56 | //
57 | //
--------------------------------------------------------------------------------
/package.json:
--------------------------------------------------------------------------------
1 | {
2 | "name": "car-rental-platform",
3 | "version": "1.0.0",
4 | "description": "A Vue.js project",
5 | "author": "Roommain <1182930079@qq.com>",
6 | "private": true,
7 | "scripts": {
8 | "dev": "webpack-dev-server --inline --progress --config build/webpack.dev.conf.js",
9 | "start": "npm run dev",
10 | "build": "node build/build.js"
11 | },
12 | "dependencies": {
13 | "axios": "^0.18.0",
14 | "element-ui": "^2.6.1",
15 | "iview": "^3.3.3",
16 | "js-cookie": "^2.2.0",
17 | "js-md5": "^0.7.3",
18 | "less": "^3.9.0",
19 | "less-loader": "^4.1.0",
20 | "vue": "^2.5.2",
21 | "vue-resource": "^1.5.1",
22 | "vue-router": "^3.0.1"
23 | },
24 | "devDependencies": {
25 | "autoprefixer": "^7.1.2",
26 | "babel-core": "^6.22.1",
27 | "babel-helper-vue-jsx-merge-props": "^2.0.3",
28 | "babel-loader": "^7.1.1",
29 | "babel-plugin-syntax-jsx": "^6.18.0",
30 | "babel-plugin-transform-runtime": "^6.22.0",
31 | "babel-plugin-transform-vue-jsx": "^3.5.0",
32 | "babel-preset-env": "^1.3.2",
33 | "babel-preset-stage-2": "^6.22.0",
34 | "chalk": "^2.0.1",
35 | "copy-webpack-plugin": "^4.0.1",
36 | "css-loader": "^0.28.0",
37 | "extract-text-webpack-plugin": "^3.0.0",
38 | "file-loader": "^1.1.4",
39 | "friendly-errors-webpack-plugin": "^1.6.1",
40 | "html-webpack-plugin": "^2.30.1",
41 | "node-notifier": "^5.1.2",
42 | "optimize-css-assets-webpack-plugin": "^3.2.0",
43 | "ora": "^1.2.0",
44 | "portfinder": "^1.0.13",
45 | "postcss-import": "^11.0.0",
46 | "postcss-loader": "^2.0.8",
47 | "postcss-url": "^7.2.1",
48 | "rimraf": "^2.6.0",
49 | "semver": "^5.3.0",
50 | "shelljs": "^0.7.6",
51 | "uglifyjs-webpack-plugin": "^1.1.1",
52 | "url-loader": "^0.5.8",
53 | "vue-loader": "^13.3.0",
54 | "vue-style-loader": "^3.0.1",
55 | "vue-template-compiler": "^2.5.2",
56 | "webpack": "^3.6.0",
57 | "webpack-bundle-analyzer": "^2.9.0",
58 | "webpack-dev-server": "^2.9.1",
59 | "webpack-merge": "^4.1.0"
60 | },
61 | "engines": {
62 | "node": ">= 6.0.0",
63 | "npm": ">= 3.0.0"
64 | },
65 | "browserslist": [
66 | "> 1%",
67 | "last 2 versions",
68 | "not ie <= 8"
69 | ]
70 | }
71 |
--------------------------------------------------------------------------------
/config/index.js:
--------------------------------------------------------------------------------
1 | 'use strict'
2 | // Template version: 1.3.1
3 | // see http://vuejs-templates.github.io/webpack for documentation.
4 |
5 | const path = require('path')
6 |
7 | module.exports = {
8 | dev: {
9 |
10 | // Paths
11 | assetsSubDirectory: 'static',
12 | assetsPublicPath: '/',
13 | proxyTable: {
14 | '/api': {
15 | target: 'http://39.108.253.80:1125', //目标接口域名
16 | changeOrigin: true, //是否跨域
17 | pathRewrite: {
18 | '^/api': '/' //重写接口
19 | }
20 | },
21 | },
22 |
23 | // Various Dev Server settings
24 | host: 'localhost', // can be overwritten by process.env.HOST
25 | port: 9090, // can be overwritten by process.env.PORT, if port is in use, a free one will be determined
26 | autoOpenBrowser: true,
27 | errorOverlay: true,
28 | notifyOnErrors: true,
29 | poll: false, // https://webpack.js.org/configuration/dev-server/#devserver-watchoptions-
30 |
31 |
32 | /**
33 | * Source Maps
34 | */
35 |
36 | // https://webpack.js.org/configuration/devtool/#development
37 | devtool: 'cheap-module-eval-source-map',
38 |
39 | // If you have problems debugging vue-files in devtools,
40 | // set this to false - it *may* help
41 | // https://vue-loader.vuejs.org/en/options.html#cachebusting
42 | cacheBusting: true,
43 |
44 | cssSourceMap: true
45 | },
46 |
47 | build: {
48 | // Template for index.html
49 | index: path.resolve(__dirname, '../dist/index.html'),
50 |
51 | // Paths
52 | assetsRoot: path.resolve(__dirname, '../dist'),
53 | assetsSubDirectory: 'static',
54 | assetsPublicPath: './',
55 |
56 | /**
57 | * Source Maps
58 | */
59 |
60 | productionSourceMap: true,
61 | // https://webpack.js.org/configuration/devtool/#production
62 | devtool: '#source-map',
63 |
64 | // Gzip off by default as many popular static hosts such as
65 | // Surge or Netlify already gzip all static assets for you.
66 | // Before setting to `true`, make sure to:
67 | // npm install --save-dev compression-webpack-plugin
68 | productionGzip: false,
69 | productionGzipExtensions: ['js', 'css'],
70 |
71 | // Run the build command with an extra argument to
72 | // View the bundle analyzer report after build finishes:
73 | // `npm run build --report`
74 | // Set to `true` or `false` to always turn it on or off
75 | bundleAnalyzerReport: process.env.npm_config_report
76 | }
77 | }
78 |
--------------------------------------------------------------------------------
/src/views/user_message/balanceEnquiry.vue:
--------------------------------------------------------------------------------
1 |
2 |
3 | 余额: {{money}}
4 | 充值
5 |
11 |
12 |
17 |
18 |
19 | 确认充值
20 |
21 |
22 |
23 |
24 |
84 |
85 |
--------------------------------------------------------------------------------
/src/views/backstage/audit/audit.vue:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
用户:{{item.telPhone}}
5 |
6 | -
7 |
8 |
9 | -
10 |
11 |
12 | -
13 |
审核:
14 | 符合要求
15 | 不符合要求
16 |
17 |
18 |
19 |
20 |

21 |
22 |
23 |
24 |
70 |
71 |
--------------------------------------------------------------------------------
/src/views/backstage/audit/auditcar.vue:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
用户:{{item.telPhone}}
5 |
6 | -
7 |
8 |
9 | -
10 |
11 |
12 | -
13 |
审核:
14 | 符合要求
15 | 不符合要求
16 |
17 |
18 |
19 |
20 |

21 |
22 |
23 |
24 |
25 |
71 |
72 |
--------------------------------------------------------------------------------
/src/views/ownerManagement/owner_main.vue:
--------------------------------------------------------------------------------
1 |
2 |
3 |
18 |
19 |
22 |
23 |
24 |
25 |
26 |
27 |
62 |
63 |
120 |
121 |
--------------------------------------------------------------------------------
/nginx.conf:
--------------------------------------------------------------------------------
1 | # For more information on configuration, see:
2 | # * Official English Documentation: http://nginx.org/en/docs/
3 | # * Official Russian Documentation: http://nginx.org/ru/docs/
4 |
5 | user nginx;
6 | worker_processes auto;
7 | error_log /var/log/nginx/error.log;
8 | pid /run/nginx.pid;
9 |
10 | # Load dynamic modules. See /usr/share/nginx/README.dynamic.
11 | include /usr/share/nginx/modules/*.conf;
12 |
13 | events {
14 | worker_connections 1024;
15 | }
16 |
17 | http {
18 | log_format main '$remote_addr - $remote_user [$time_local] "$request" '
19 | '$status $body_bytes_sent "$http_referer" '
20 | '"$http_user_agent" "$http_x_forwarded_for"';
21 |
22 | access_log /var/log/nginx/access.log main;
23 |
24 | sendfile on;
25 | tcp_nopush on;
26 | tcp_nodelay on;
27 | keepalive_timeout 65;
28 | types_hash_max_size 2048;
29 |
30 | include /etc/nginx/mime.types;
31 | default_type application/octet-stream;
32 |
33 | # Load modular configuration files from the /etc/nginx/conf.d directory.
34 | # See http://nginx.org/en/docs/ngx_core_module.html#include
35 | # for more information.
36 | include /etc/nginx/conf.d/*.conf;
37 |
38 | server {
39 | listen 80;
40 | server_name _;
41 | root /home/dist;
42 |
43 | # Load configuration files for the default server block.
44 | include /etc/nginx/default.d/*.conf;
45 |
46 | location / {
47 | }
48 | location /api {
49 | proxy_pass http://120.79.66.215:9190/;
50 | }
51 | location /wea {
52 | proxy_pass http://v.juhe.cn/weather/;
53 | }
54 | error_page 404 /404.html;
55 | location = /40x.html {
56 | }
57 |
58 | error_page 500 502 503 504 /50x.html;
59 | location = /50x.html {
60 | }
61 | }
62 | server {
63 | listen 9090;
64 | server_name http://120.79.66.215:9090;
65 | root /home/car/dist;
66 |
67 | # Load configuration files for the default server block.
68 | include /etc/nginx/default.d/*.conf;
69 |
70 | location / {
71 | }
72 | location /api {
73 | proxy_pass http://39.108.253.80:1125/;
74 | }
75 | error_page 404 /404.html;
76 | location = /40x.html {
77 | }
78 |
79 | error_page 500 502 503 504 /50x.html;
80 | location = /50x.html {
81 | }
82 | }
83 | # 重启nginx service nginx restart
84 | # Settings for a TLS enabled server.
85 | #
86 | # server {
87 | # listen 443 ssl http2 default_server;
88 | # listen [::]:443 ssl http2 default_server;
89 | # server_name _;
90 | # root /usr/share/nginx/html;
91 | #
92 | # ssl_certificate "/etc/pki/nginx/server.crt";
93 | # ssl_certificate_key "/etc/pki/nginx/private/server.key";
94 | # ssl_session_cache shared:SSL:1m;
95 | # ssl_session_timeout 10m;
96 | # ssl_ciphers HIGH:!aNULL:!MD5;
97 | # ssl_prefer_server_ciphers on;
98 | #
99 | # # Load configuration files for the default server block.
100 | # include /etc/nginx/default.d/*.conf;
101 | #
102 | # location / {
103 | # }
104 | #
105 | # error_page 404 /404.html;
106 | # location = /40x.html {
107 | # }
108 | #
109 | # error_page 500 502 503 504 /50x.html;
110 | # location = /50x.html {
111 | # }
112 | # }
113 |
114 | }
115 |
116 |
--------------------------------------------------------------------------------
/src/views/backstage/order/changeCar.vue:
--------------------------------------------------------------------------------
1 |
2 |
22 |
23 |
24 |
68 |
69 |
--------------------------------------------------------------------------------
/src/views/backstage/order/disposeCar.vue:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 | -
5 |
{{newOrderStatus(item.orderStatus)}}
6 | 订单号: {{item.orderId}}
7 | {{item.startTime}} 至 {{item.endTime}}
8 | 车牌号: {{item.licensePlateNumber}}
9 | 消费金额¥: {{item.rentalMoney}} 元
10 | 确认还车
11 |
12 |
13 |
14 |
15 |
16 |
17 |
18 |
76 |
77 |
--------------------------------------------------------------------------------
/src/views/backstage/car_assessment/delete_assessment.vue:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 |
10 |
11 |
12 |
13 |
14 |
134 |
135 |
--------------------------------------------------------------------------------
/src/views/home/home.vue:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 |
8 |
9 |
10 |
短租服务,灵活自如
11 |
无论您是想约会、自驾游、踏青还是商务接待….
12 |
13 |
14 |
超值长租,实惠便捷
15 |
如果您常租车,我们建议您可以尝试长租,按月起租,实惠方便。
16 |
17 |
18 |
19 | -
20 |
自驾出游
21 | 周末带着全家租一辆宽敞舒适的大车,
22 | 如别克GL8、途观、JEEP等自驾出游,
23 | 游遍山川美景,游遍大江南北,
24 | 收获满满的幸福。
25 |
26 | -
27 |
情侣约会
28 | 周末你会和你的TA去哪呢,
29 | 踏青自驾是个不错的选择,
30 | 甲壳虫、mini、smart都会为你
31 | 平淡的周末添一抹亮色。
32 |
33 | -
34 |
商务接待
35 | 我们有丰富的商务车型,
36 | 如奔驰、别克、宝马等,
37 | 帮助您接待业务往来的客户
38 | 助您在商业洽谈中取得成功。
39 |
40 | -
41 |
体验个性车
42 | 自己的车开腻了,
43 | 想要尝试体验更多新鲜感,
44 | 即刻预订保时捷911、特斯拉、牧马人、
45 | 大黄蜂等丰富车型满足你的小欲望吧。
46 |
47 |
48 |
49 |
50 |
51 |
52 |
72 |
73 |
160 |
--------------------------------------------------------------------------------
/src/views/backstage/backmain.vue:
--------------------------------------------------------------------------------
1 |
2 |
3 |
51 |
52 |
55 |
56 |
57 |
58 |
59 |
60 |
94 |
95 |
153 |
154 |
--------------------------------------------------------------------------------
/src/views/main/collect.vue:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
11 |
12 |
15 |
16 |
17 |
18 |
19 |
20 |
21 |
22 |
126 |
127 |
190 |
--------------------------------------------------------------------------------
/src/views/user_message/userinfo.vue:
--------------------------------------------------------------------------------
1 |
2 |
38 |
39 |
40 |
123 |
124 |
--------------------------------------------------------------------------------
/src/views/user_message/message_main.vue:
--------------------------------------------------------------------------------
1 |
2 |
3 |
23 |
24 |
27 |
28 |
29 |
30 |
31 |
32 |
105 |
106 |
163 |
164 |
--------------------------------------------------------------------------------
/src/views/backstage/car_assessment/add_assessment.vue:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
11 |
12 |
13 |
14 |
15 |
16 |
21 |
22 |
23 |
24 |
25 | / 天
26 |
27 |
28 | / 天
29 |
30 |
31 | 录入数据
32 | 重置
33 |
34 |
35 |
36 |
37 |
38 |
170 |
171 |
182 |
--------------------------------------------------------------------------------
/src/views/main/main.vue:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
21 |
22 |
23 |
24 |
25 |
26 |
77 |
78 |
176 |
--------------------------------------------------------------------------------
/src/views/backstage/car_assessment/update_assessment.vue:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
7 |
13 |
14 |
15 |
16 |
17 |
18 |
19 |
20 |
21 | / 天
22 |
23 |
24 | / 天
25 |
26 |
27 | 确认修改
28 |
29 |
30 |
31 |
32 |
33 |
34 |
157 |
158 |
--------------------------------------------------------------------------------
/src/views/main/carRental.vue:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 | 热门:
7 | 不限
8 | 宝马
9 | 奔驰
10 | 福特
11 | 奥迪
12 | 大众
13 | 别克
14 | 丰田
15 | 雪弗莱
16 | 保时捷
17 |
18 |
19 |
26 |
27 |
30 |
31 |
32 |
33 |
34 |
35 |
36 |
37 |
141 |
142 |
205 |
--------------------------------------------------------------------------------
/src/views/backstage/carrental/delete_carrental.vue:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 |
10 |
11 |
12 |
13 |
190 |
191 |
--------------------------------------------------------------------------------
/src/views/ownerManagement/state_management.vue:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
15 |
16 |
17 |
18 |
28 |
29 |
30 |
31 |
41 |
42 |
43 |
44 |
45 |
134 |
135 |
178 |
--------------------------------------------------------------------------------
/src/views/login/login.vue:
--------------------------------------------------------------------------------
1 |
2 |
32 |
33 |
34 |
141 |
142 |
143 |
180 |
181 |
--------------------------------------------------------------------------------
/src/views/main/owner.vue:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |

6 |
7 |
8 |
9 | 上传爱车信息马上为你赚钱
10 |
11 |
12 |
13 |
14 |
15 |
20 |
21 |
22 |
23 |
24 |
25 |
30 |
31 |
32 |
33 |
34 |
35 |
36 |
预计收益:{{moneyValue}}/天
37 |
38 |
41 |
42 |
43 |
44 |
车主保障
45 |
46 | -
47 |
提供全方位保障
48 | 保障包含车损保障及盗抢保障150万
49 | 第三者责任保障100万和座位保障5万
50 | 租客保障均独立购买,不影响车辆原有商业险
51 |
52 | -
53 |
-
54 |
严格的认证制度
55 | 在交易前累计扣分不超过11分
56 | 车主对租客具有完备的评价体系,且时时更新
57 |
58 | -
59 |
全方位定位系统,租车全程尽在掌控
60 | 为所有车辆安装凹凸租车智能车联网全方位终端
61 | 精准定位车辆,随时掌控车辆信息
62 | 行程全掌握,爱车共享无忧
63 |
64 |
65 |
66 |
67 |
68 |
69 |
70 |
168 |
169 |
--------------------------------------------------------------------------------
/src/views/register/register.vue:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 | 登录
7 | 快速注册
8 |
9 |
28 |
29 |
30 |
31 |
32 |
33 |
146 |
147 |
148 |
198 |
199 |
--------------------------------------------------------------------------------
/src/libs/tools.js:
--------------------------------------------------------------------------------
1 | export const forEach = (arr, fn) => {
2 | if (!arr.length || !fn) return;
3 | let i = -1;
4 | let len = arr.length;
5 | while (++i < len) {
6 | let item = arr[i];
7 | fn(item, i, arr);
8 | }
9 | };
10 |
11 | /**
12 | * @param {Array} arr1
13 | * @param {Array} arr2
14 | * @description 得到两个数组的交集, 两个数组的元素为数值或字符串
15 | */
16 | export const getIntersection = (arr1, arr2) => {
17 | let len = Math.min(arr1.length, arr2.length);
18 | let i = -1;
19 | let res = [];
20 | while (++i < len) {
21 | const item = arr2[i];
22 | if (arr1.indexOf(item) > -1) res.push(item);
23 | }
24 | return res;
25 | };
26 |
27 | /**
28 | * @param {Array} arr1
29 | * @param {Array} arr2
30 | * @description 得到两个数组的并集, 两个数组的元素为数值或字符串
31 | */
32 | export const getUnion = (arr1, arr2) => {
33 | return Array.from(new Set([...arr1, ...arr2]));
34 | };
35 |
36 | /**
37 | * @param {Array} target 目标数组
38 | * @param {Array} arr 需要查询的数组
39 | * @description 判断要查询的数组是否至少有一个元素包含在目标数组中
40 | */
41 | export const hasOneOf = (targetarr, arr) => {
42 | return targetarr.some(_ => arr.indexOf(_) > -1);
43 | };
44 |
45 | /**
46 | * @param {String|Number} value 要验证的字符串或数值
47 | * @param {*} validList 用来验证的列表
48 | */
49 | export function oneOf (value, validList) {
50 | for (let i = 0; i < validList.length; i++) {
51 | if (value === validList[i]) {
52 | return true;
53 | }
54 | }
55 | return false;
56 | }
57 |
58 | /**
59 | * @param {Number} timeStamp 判断时间戳格式是否是毫秒
60 | * @returns {Boolean}
61 | */
62 | const isMillisecond = timeStamp => {
63 | const timeStr = String(timeStamp);
64 | return timeStr.length > 10;
65 | };
66 |
67 | /**
68 | * @param {Number} timeStamp 传入的时间戳
69 | * @param {Number} currentTime 当前时间时间戳
70 | * @returns {Boolean} 传入的时间戳是否早于当前时间戳
71 | */
72 | const isEarly = (timeStamp, currentTime) => {
73 | return timeStamp < currentTime;
74 | };
75 |
76 | /**
77 | * @param {Number} num 数值
78 | * @returns {String} 处理后的字符串
79 | * @description 如果传入的数值小于10,即位数只有1位,则在前面补充0
80 | */
81 | const getHandledValue = num => {
82 | return num < 10 ? '0' + num : num;
83 | };
84 |
85 | /**
86 | * @param {Number} timeStamp 传入的时间戳
87 | * @param {Number} startType 要返回的时间字符串的格式类型,传入'year'则返回年开头的完整时间
88 | */
89 | const getDate = (timeStamp, startType) => {
90 | const d = new Date(timeStamp * 1000);
91 | const year = d.getFullYear();
92 | const month = getHandledValue(d.getMonth() + 1);
93 | const date = getHandledValue(d.getDate());
94 | const hours = getHandledValue(d.getHours());
95 | const minutes = getHandledValue(d.getMinutes());
96 | const second = getHandledValue(d.getSeconds());
97 | let resStr = '';
98 | if (startType === 'year') resStr = year + '-' + month + '-' + date + ' ' + hours + ':' + minutes + ':' + second;
99 | else resStr = month + '-' + date + ' ' + hours + ':' + minutes;
100 | return resStr;
101 | };
102 |
103 | /**
104 | * @param {Number} timeStamp 传入的时间戳
105 | * @param {Number} startType 要返回的时间字符串的格式类型,传入'year'则返回年开头的完整时间
106 | */
107 | export const getFullDate = (timeStamp, startType) => {
108 | const d = new Date(timeStamp);
109 | const year = d.getFullYear();
110 | const month = getHandledValue(d.getMonth() + 1);
111 | const date = getHandledValue(d.getDate());
112 | const hours = getHandledValue(d.getHours());
113 | const minutes = getHandledValue(d.getMinutes());
114 | const second = getHandledValue(d.getSeconds());
115 | let resStr = '';
116 | if (startType === 'year') resStr = year + '-' + month + '-' + date + ' ' + hours + ':' + minutes + ':' + second;
117 | else resStr = month + '-' + date + ' ' + hours + ':' + minutes;
118 | return resStr;
119 | };
120 |
121 | /**
122 | * @param {String|Number} timeStamp 时间戳
123 | * @returns {String} 相对时间字符串
124 | */
125 | export const getRelativeTime = timeStamp => {
126 | // 判断当前传入的时间戳是秒格式还是毫秒
127 | const IS_MILLISECOND = isMillisecond(timeStamp);
128 | // 如果是毫秒格式则转为秒格式
129 | if (IS_MILLISECOND) Math.floor(timeStamp /= 1000);
130 | // 传入的时间戳可以是数值或字符串类型,这里统一转为数值类型
131 | timeStamp = Number(timeStamp);
132 | // 获取当前时间时间戳
133 | const currentTime = Math.floor(Date.parse(new Date()) / 1000);
134 | // 判断传入时间戳是否早于当前时间戳
135 | const IS_EARLY = isEarly(timeStamp, currentTime);
136 | // 获取两个时间戳差值
137 | let diff = currentTime - timeStamp;
138 | // 如果IS_EARLY为false则差值取反
139 | if (!IS_EARLY) diff = -diff;
140 | let resStr = '';
141 | const dirStr = IS_EARLY ? '前' : '后';
142 | // 少于等于59秒
143 | if (diff <= 59) resStr = diff + '秒' + dirStr;
144 | // 多于59秒,少于等于59分钟59秒
145 | else if (diff > 59 && diff <= 3599) resStr = Math.floor(diff / 60) + '分钟' + dirStr;
146 | // 多于59分钟59秒,少于等于23小时59分钟59秒
147 | else if (diff > 3599 && diff <= 86399) resStr = Math.floor(diff / 3600) + '小时' + dirStr;
148 | // 多于23小时59分钟59秒,少于等于29天59分钟59秒
149 | else if (diff > 86399 && diff <= 2623859) resStr = Math.floor(diff / 86400) + '天' + dirStr;
150 | // 多于29天59分钟59秒,少于364天23小时59分钟59秒,且传入的时间戳早于当前
151 | else if (diff > 2623859 && diff <= 31567859 && IS_EARLY) resStr = getDate(timeStamp);
152 | else resStr = getDate(timeStamp, 'year');
153 | return resStr;
154 | };
155 |
156 | /**
157 | * @returns {String} 当前浏览器名称
158 | */
159 | export const getExplorer = () => {
160 | const ua = window.navigator.userAgent;
161 | const isExplorer = (exp) => {
162 | return ua.indexOf(exp) > -1;
163 | };
164 | if (isExplorer('MSIE')) return 'IE';
165 | else if (isExplorer('Firefox')) return 'Firefox';
166 | else if (isExplorer('Chrome')) return 'Chrome';
167 | else if (isExplorer('Opera')) return 'Opera';
168 | else if (isExplorer('Safari')) return 'Safari';
169 | };
170 |
171 | /**
172 | * @description 绑定事件 on(element, event, handler)
173 | */
174 | export const on = (function () {
175 | if (document.addEventListener) {
176 | return function (element, event, handler) {
177 | if (element && event && handler) {
178 | element.addEventListener(event, handler, false);
179 | }
180 | };
181 | } else {
182 | return function (element, event, handler) {
183 | if (element && event && handler) {
184 | element.attachEvent('on' + event, handler);
185 | }
186 | };
187 | }
188 | })();
189 |
190 | /**
191 | * @description 解绑事件 off(element, event, handler)
192 | */
193 | export const off = (function () {
194 | if (document.removeEventListener) {
195 | return function (element, event, handler) {
196 | if (element && event) {
197 | element.removeEventListener(event, handler, false);
198 | }
199 | };
200 | } else {
201 | return function (element, event, handler) {
202 | if (element && event) {
203 | element.detachEvent('on' + event, handler);
204 | }
205 | };
206 | }
207 | })();
208 |
209 | /**
210 | * 判断一个对象是否存在key,如果传入第二个参数key,则是判断这个obj对象是否存在key这个属性
211 | * 如果没有传入key这个参数,则判断obj对象是否有键值对
212 | */
213 | export const hasKey = (obj, key) => {
214 | if (key) return key in obj;
215 | else {
216 | let keysArr = Object.keys(obj);
217 | return keysArr.length;
218 | }
219 | };
220 |
221 | /**
222 | * @param {*} obj1 对象
223 | * @param {*} obj2 对象
224 | * @description 判断两个对象是否相等,这两个对象的值只能是数字或字符串
225 | */
226 | export const objEqual = (obj1, obj2) => {
227 | const keysArr1 = Object.keys(obj1);
228 | const keysArr2 = Object.keys(obj2);
229 | if (keysArr1.length !== keysArr2.length) return false;
230 | else if (keysArr1.length === 0 && keysArr2.length === 0) return true;
231 | /* eslint-disable-next-line */
232 | else return !keysArr1.some(key => obj1[key] != obj2[key])
233 | };
234 |
--------------------------------------------------------------------------------
/src/libs/coversionPoint.js:
--------------------------------------------------------------------------------
1 | /**
2 | * 坐标转换
3 | */
4 | var GPS = {
5 | PI: 3.14159265358979324,
6 | x_pi: 3.14159265358979324 * 3000.0 / 180.0,
7 | delta: function(lat, lng) {
8 | // Krasovsky 1940
9 | //
10 | // a = 6378245.0, 1/f = 298.3
11 | // b = a * (1 - f)
12 | // ee = (a^2 - b^2) / a^2;
13 | var a = 6378245.0; // a: 卫星椭球坐标投影到平面地图坐标系的投影因子。
14 | var ee = 0.00669342162296594323; // ee: 椭球的偏心率。
15 | var dLat = this.transformLat(lng - 105.0, lat - 35.0);
16 | var dLng = this.transformLng(lng - 105.0, lat - 35.0);
17 | var radLat = lat / 180.0 * this.PI;
18 | var magic = Math.sin(radLat);
19 | magic = 1 - ee * magic * magic;
20 | var sqrtMagic = Math.sqrt(magic);
21 | dLat = dLat * 180.0 / (a * (1 - ee) / (magic * sqrtMagic) * this.PI);
22 | dLng = dLng * 180.0 / (a / sqrtMagic * Math.cos(radLat) * this.PI);
23 | return { 'lat': dLat, 'lng': dLng };
24 | },
25 | /**
26 | * WGS-84 to GCJ-02 GPS坐标转中国坐标
27 | * @param {number} wgsLat GPS纬度
28 | * @param {number} wgsLng GPS经度
29 | * @return {object} 返回中国坐标经纬度对象
30 | */
31 | GPSToChina: function(wgsLat, wgsLng) {
32 | if (this.outOfChina(wgsLat, wgsLng))
33 | return { 'lat': wgsLat, 'lng': wgsLng };
34 | var d = this.delta(wgsLat, wgsLng);
35 | return { 'lat': Number(wgsLat) + Number(d.lat), 'lng': Number(wgsLng) + Number(d.lng) };
36 | },
37 | /**
38 | * GCJ-02 to WGS-84 中国标准坐标转GPS坐标
39 | * @param {number} gcjLat 中国标准坐标纬度
40 | * @param {number} gcjLng 中国标准坐标经度
41 | * @return {object} 返回GPS经纬度对象
42 | */
43 | chinaToGPS: function(gcjLat, gcjLng) {
44 | if (this.outOfChina(gcjLat, gcjLng))
45 | return { 'lat': gcjLat, 'lng': gcjLng };
46 | var d = this.delta(gcjLat, gcjLng);
47 | return { 'lat': Number(gcjLat) - Number(d.lat), 'lng': Number(gcjLng) - Number(d.lng) };
48 | },
49 | /**
50 | * GCJ-02 to WGS-84 exactly 中国标准坐标转GPS坐标(精确)
51 | * @param {number} gcjLat 中国标准坐标纬度
52 | * @param {number} gcjLng 中国标准坐标经度
53 | * @return {object} 返回GPS经纬度对象(精确)
54 | */
55 | chinaToGPSExact: function(gcjLat, gcjLng) {
56 | var initDelta = 0.01;
57 | var threshold = 0.000000001;
58 | var dLat = initDelta,
59 | dLng = initDelta;
60 | var mLat = gcjLat - dLat,
61 | mLng = gcjLng - dLng;
62 | var pLat = gcjLat + dLat,
63 | pLng = gcjLng + dLng;
64 | var wgsLat, wgsLng, i = 0;
65 | while (1) {
66 | wgsLat = (mLat + pLat) / 2;
67 | wgsLng = (mLng + pLng) / 2;
68 | var tmp = this.gcj_encrypt(wgsLat, wgsLng);
69 | dLat = tmp.lat - gcjLat;
70 | dLng = tmp.lng - gcjLng;
71 | if (Math.abs(dLat) < threshold && Math.abs(dLng) < threshold)
72 | break;
73 |
74 | if (dLat > 0) pLat = wgsLat;
75 | else mLat = wgsLat;
76 | if (dLng > 0) pLng = wgsLng;
77 | else mLng = wgsLng;
78 |
79 | if (++i > 10000) break;
80 | }
81 | //console.log(i);
82 | return { 'lat': wgsLat, 'lng': wgsLng };
83 | },
84 | /**
85 | * GCJ-02 to BD-09 中国标准坐标转百度坐标(精确)
86 | * @param {number} gcjLat 中国标准坐标纬度
87 | * @param {number} gcjLng 中国标准坐标经度
88 | * @return {object} 返回百度经纬度对象
89 | */
90 | chinaToBaidu: function(gcjLat, gcjLng) {
91 | var x = gcjLng,
92 | y = gcjLat;
93 | var z = Math.sqrt(x * x + y * y) + 0.00002 * Math.sin(y * this.x_pi);
94 | var theta = Math.atan2(y, x) + 0.000003 * Math.cos(x * this.x_pi);
95 | bdLng = z * Math.cos(theta) + 0.0065;
96 | bdLat = z * Math.sin(theta) + 0.006;
97 | return { 'lat': bdLat, 'lng': bdLng };
98 | },
99 | /**
100 | * BD-09 to GCJ-02 百度坐标转中国标准坐标
101 | * @param {number} bdLat 百度坐标纬度
102 | * @param {number} bdLng 百度坐标经度
103 | * @return {object} 返回中国标准经纬度对象
104 | */
105 | baiduToChina: function(bdLat, bdLng) {
106 | var x = bdLng - 0.0065,
107 | y = bdLat - 0.006;
108 | var z = Math.sqrt(x * x + y * y) - 0.00002 * Math.sin(y * this.x_pi);
109 | var theta = Math.atan2(y, x) - 0.000003 * Math.cos(x * this.x_pi);
110 | var gcjLng = z * Math.cos(theta);
111 | var gcjLat = z * Math.sin(theta);
112 | return { 'lat': gcjLat, 'lng': gcjLng };
113 | },
114 | /**
115 | * WGS-84 to Web mercator GPS坐标转墨卡托坐标
116 | * @param {number} wgsLat GPS纬度
117 | * @param {number} wgsLng GPS经度
118 | * @return {object} 返回墨卡托经纬度对象
119 | */
120 | GPSToMercator: function(wgsLat, wgsLng) {
121 | var x = wgsLng * 20037508.34 / 180.0;
122 | var y = Math.log(Math.tan((90.0 + wgsLat) * this.PI / 360.0)) / (this.PI / 180.0);
123 | y = y * 20037508.34 / 180.0;
124 | return { 'lat': y, 'lng': x };
125 | /*
126 | if ((Math.abs(wgsLng) > 180 || Math.abs(wgsLat) > 90))
127 | return null;
128 | var x = 6378137.0 * wgsLng * 0.017453292519943295;
129 | var a = wgsLat * 0.017453292519943295;
130 | var y = 3189068.5 * Math.log((1.0 + Math.sin(a)) / (1.0 - Math.sin(a)));
131 | return {'lat' : y, 'lng' : x};
132 | //*/
133 | },
134 | /**
135 | * Web mercator to WGS-84 墨卡托坐标转GPS坐标
136 | * @param {number} mercatorLat 墨卡托纬度
137 | * @param {number} mercatorLng 墨卡托经度
138 | * @return {object} 返回GPS经纬度对象
139 | */
140 | mercatorToGPS: function(mercatorLat, mercatorLng) {
141 | var x = mercatorLng / 20037508.34 * 180.0;
142 | var y = mercatorLat / 20037508.34 * 180.0;
143 | y = 180 / this.PI * (2 * Math.atan(Math.exp(y * this.PI / 180.0)) - this.PI / 2);
144 | return { 'lat': y, 'lng': x };
145 | /*
146 | if (Math.abs(mercatorLng) < 180 && Math.abs(mercatorLat) < 90)
147 | return null;
148 | if ((Math.abs(mercatorLng) > 20037508.3427892) || (Math.abs(mercatorLat) > 20037508.3427892))
149 | return null;
150 | var a = mercatorLng / 6378137.0 * 57.295779513082323;
151 | var x = a - (Math.floor(((a + 180.0) / 360.0)) * 360.0);
152 | var y = (1.5707963267948966 - (2.0 * Math.atan(Math.exp((-1.0 * mercatorLat) / 6378137.0)))) * 57.295779513082323;
153 | return {'lat' : y, 'lng' : x};
154 | //*/
155 | },
156 | /**
157 | * 两点之间的距离
158 | * @param {number} latA 起点纬度
159 | * @param {number} lngA 起点经度
160 | * @param {number} latB 终点纬度
161 | * @param {number} lngB 终点经度
162 | * @return {number} 返回距离(米)
163 | */
164 | distance: function(latA, lngA, latB, lngB) {
165 | var earthR = 6371000.0;
166 | var x = Math.cos(latA * this.PI / 180.0) * Math.cos(latB * this.PI / 180.0) * Math.cos((lngA - lngB) * this.PI / 180);
167 | var y = Math.sin(latA * this.PI / 180.0) * Math.sin(latB * this.PI / 180.0);
168 | var s = x + y;
169 | if (s > 1) s = 1;
170 | if (s < -1) s = -1;
171 | var alpha = Math.acos(s);
172 | var distance = alpha * earthR;
173 | return distance;
174 | },
175 | /**
176 | * 是否在中国之外
177 | * @param {number} lat 纬度
178 | * @param {number} lng 经度
179 | * @return {boolean]} 返回结果真或假
180 | */
181 | outOfChina: function(lat, lng) {
182 | if (lng < 72.004 || lng > 137.8347)
183 | return true;
184 | if (lat < 0.8293 || lat > 55.8271)
185 | return true;
186 | return false;
187 | },
188 | transformLat: function(x, y) {
189 | var ret = -100.0 + 2.0 * x + 3.0 * y + 0.2 * y * y + 0.1 * x * y + 0.2 * Math.sqrt(Math.abs(x));
190 | ret += (20.0 * Math.sin(6.0 * x * this.PI) + 20.0 * Math.sin(2.0 * x * this.PI)) * 2.0 / 3.0;
191 | ret += (20.0 * Math.sin(y * this.PI) + 40.0 * Math.sin(y / 3.0 * this.PI)) * 2.0 / 3.0;
192 | ret += (160.0 * Math.sin(y / 12.0 * this.PI) + 320 * Math.sin(y * this.PI / 30.0)) * 2.0 / 3.0;
193 | return ret;
194 | },
195 | transformLng: function(x, y) {
196 | var ret = 300.0 + x + 2.0 * y + 0.1 * x * x + 0.1 * x * y + 0.1 * Math.sqrt(Math.abs(x));
197 | ret += (20.0 * Math.sin(6.0 * x * this.PI) + 20.0 * Math.sin(2.0 * x * this.PI)) * 2.0 / 3.0;
198 | ret += (20.0 * Math.sin(x * this.PI) + 40.0 * Math.sin(x / 3.0 * this.PI)) * 2.0 / 3.0;
199 | ret += (150.0 * Math.sin(x / 12.0 * this.PI) + 300.0 * Math.sin(x / 30.0 * this.PI)) * 2.0 / 3.0;
200 | return ret;
201 | }
202 | };
203 |
204 | export default GPS;
--------------------------------------------------------------------------------
/src/views/backstage/carrental/update_carrental.vue:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
7 |
13 |
14 |
15 |
16 |
17 |
18 |
19 |
20 |
21 |
22 |
23 |
24 |
25 |
26 |
27 |
28 |
29 |
30 |
31 |
32 |
33 |
34 | 确认修改
35 |
36 |
37 |
38 |
![]()
39 |
![]()
40 |
41 |
42 |
43 |
44 |
45 |
46 |
218 |
219 |
--------------------------------------------------------------------------------
/src/views/user_message/userChangePassword.vue:
--------------------------------------------------------------------------------
1 |
2 |
58 |
59 |
60 |
201 |
202 |
265 |
266 |
--------------------------------------------------------------------------------
/src/views/backstage/ownercaraudit/ownercaraudit.vue:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
7 |
13 |
14 |
15 |
16 | {{carData.licensePlateNumber}}
17 |
18 |
19 | {{carData.city}}
20 |
21 |
22 | {{carData.carYear}}
23 |
24 |
25 | {{carData.gasolineType}}
26 |
27 |
28 | {{carData.chairNumber}}
29 |
30 |
31 | {{carData.vehicleDescription}}
32 |
33 |
34 | {{carData.vehicleRemark}}
35 |
36 |
37 | 通过
38 | 不通过
39 |
40 |
41 |
42 |
![]()
43 |
![]()
44 |
45 |
46 |
47 |
48 |
49 |
235 |
236 |
--------------------------------------------------------------------------------
/src/router/index.js:
--------------------------------------------------------------------------------
1 | import Vue from 'vue'
2 | import Router from 'vue-router'
3 | import cookie from 'js-cookie';
4 |
5 | Vue.use(Router)
6 |
7 | const router = new Router({
8 | linkExactActiveClass: 'active',
9 | routes: [
10 | {
11 | path: '/',
12 | redirect: '/main'
13 | },
14 | {
15 | path: '/main',
16 | name: '主页',
17 | component: resolve => require(['@/views/main/main'], resolve),
18 | redirect: '/home',
19 | children:[
20 | {
21 | path: '/home',
22 | name: '首页',
23 | component: resolve => require(['@/views/home/home'], resolve),
24 | },
25 | {
26 | path: '/collect',
27 | name: '收藏',
28 | meta: {
29 | permissions: true,
30 | },
31 | component: resolve => require(['@/views/main/collect'], resolve),
32 | },
33 | {
34 | path: '/owner',
35 | name: '成为车主',
36 | component: resolve => require(['@/views/main/owner'], resolve),
37 | },
38 | {
39 | path: '/carRental',
40 | name: '我要租车',
41 | component: resolve => require(['@/views/main/carRental'], resolve),
42 | },
43 | {
44 | path: '/carRentalParticulars',
45 | name: '租车详情',
46 | component: resolve => require(['@/views/main/carRentalParticulars'], resolve),
47 | },
48 | {
49 | path: '/login',
50 | name: '登录',
51 | component: resolve => require(['@/views/login/login'], resolve),
52 | },
53 | {
54 | path: '/register',
55 | name: '注册',
56 | component: resolve => require(['@/views/register/register'], resolve),
57 | },
58 | {
59 | path: '/findPassword',
60 | name: '找回密码',
61 | component: resolve => require(['@/views/findPassword/findPassword'], resolve),
62 | },
63 | {
64 | path: '/message_main',
65 | name: '个人中心',
66 | redirect: '/userinfo',
67 | meta: {
68 | permissions: true,
69 | },
70 | component: resolve => require(['@/views/user_message/message_main'], resolve),
71 | children:[
72 | {
73 | path: '/changePassword',
74 | name: '修改密码',
75 | meta: {
76 | permissions: true,
77 | },
78 | component: resolve => require(['@/views/user_message/userChangePassword'], resolve),
79 | },
80 | {
81 | path: '/userinfo',
82 | name: '我的信息',
83 | meta: {
84 | permissions: true,
85 | },
86 | component: resolve => require(['@/views/user_message/userinfo'], resolve),
87 | },
88 | {
89 | path: '/balanceEnquiry',
90 | name: '余额查询',
91 | meta: {
92 | permissions: true,
93 | },
94 | component: resolve => require(['@/views/user_message/balanceEnquiry'], resolve),
95 | },
96 | {
97 | path: '/orderInformation',
98 | name: '租客订单',
99 | meta: {
100 | permissions: true,
101 | },
102 | component: resolve => require(['@/views/user_message/orderInformation'], resolve),
103 | },
104 | {
105 | path: '/ownerOrderInformation',
106 | name: '车主订单',
107 | meta: {
108 | permissions: true,
109 | },
110 | component: resolve => require(['@/views/user_message/ownerOrderInformation'], resolve),
111 | },
112 | {
113 | path: '/certificate',
114 | name: '证件实名',
115 | meta: {
116 | permissions: true,
117 | },
118 | component: resolve => require(['@/views/user_message/certificate'], resolve),
119 | },
120 | ]
121 | },
122 | {
123 | path: '/backstage',
124 | name: '后台管理',
125 | component: resolve => require(['@/views/backstage/backmain'], resolve),
126 | children:[
127 | //审核
128 | {
129 | path: '/drivinglicence',
130 | name: '驾驶证审核',
131 | meta: {
132 | permissions: true,
133 | },
134 | component: resolve => require(['@/views/backstage/audit/audit'], resolve),
135 | },
136 | {
137 | path: '/auditcar',
138 | name: '行驶证审核',
139 | meta: {
140 | permissions: true,
141 | },
142 | component: resolve => require(['@/views/backstage/audit/auditcar'], resolve),
143 | },
144 | {
145 | path: '/ownercaraudit',
146 | name: '车主车辆审核',
147 | meta: {
148 | permissions: true,
149 | },
150 | component: resolve => require(['@/views/backstage/ownercaraudit/ownercaraudit'], resolve),
151 | },
152 | //车型管理
153 | {
154 | path: '/addassessment',
155 | name: '录入车型',
156 | meta: {
157 | permissions: true,
158 | },
159 | component: resolve => require(['@/views/backstage/car_assessment/add_assessment'], resolve),
160 | },
161 | {
162 | path: '/deleteassessment',
163 | name: '删除车型',
164 | meta: {
165 | permissions: true,
166 | },
167 | component: resolve => require(['@/views/backstage/car_assessment/delete_assessment'], resolve),
168 | },
169 | {
170 | path: '/updateassessment',
171 | name: '修改车型',
172 | meta: {
173 | permissions: true,
174 | },
175 | component: resolve => require(['@/views/backstage/car_assessment/update_assessment'], resolve),
176 | },
177 | //租车管理
178 | {
179 | path: '/addcarrental',
180 | name: '增加租车',
181 | meta: {
182 | permissions: true,
183 | },
184 | component: resolve => require(['@/views/backstage/carrental/add_carrental'], resolve),
185 | },
186 | {
187 | path: '/updatecarrental',
188 | name: '修改租车',
189 | meta: {
190 | permissions: true,
191 | },
192 | component: resolve => require(['@/views/backstage/carrental/update_carrental'], resolve),
193 | },
194 | {
195 | path: '/deletecarrental',
196 | name: '删除租车',
197 | meta: {
198 | permissions: true,
199 | },
200 | component: resolve => require(['@/views/backstage/carrental/delete_carrental'], resolve),
201 | },
202 | //订单管理
203 | {
204 | path: '/queryOrder',
205 | name: '订单查询',
206 | meta: {
207 | permissions: true,
208 | },
209 | component: resolve => require(['@/views/backstage/order/queryOrder'], resolve),
210 | },
211 | {
212 | path: '/disposeCar',
213 | name: '处理还车',
214 | meta: {
215 | permissions: true,
216 | },
217 | component: resolve => require(['@/views/backstage/order/disposeCar'], resolve),
218 | },
219 | {
220 | path: '/changeCar',
221 | name: '处理换车',
222 | meta: {
223 | permissions: true,
224 | },
225 | component: resolve => require(['@/views/backstage/order/changeCar'], resolve),
226 | },
227 | ]
228 | },
229 | {
230 | path: '/ownermanagement',
231 | name: '车主管理',
232 | component: resolve => require(['@/views/ownerManagement/owner_main'], resolve),
233 | children:[
234 | {
235 | path: '/addownermanag',
236 | name: '增加车辆',
237 | meta: {
238 | permissions: true,
239 | },
240 | component: resolve => require(['@/views/ownerManagement/add_ownermanag'], resolve),
241 | },
242 | {
243 | path: '/statemanagement',
244 | name: '车辆状态',
245 | meta: {
246 | permissions: true,
247 | },
248 | component: resolve => require(['@/views/ownerManagement/state_management'], resolve),
249 | },
250 | ]
251 | },
252 | ]
253 | },
254 |
255 | ]
256 | })
257 |
258 | router.beforeEach((to, from, next) => {
259 | if(to.meta.permissions){
260 | var token = cookie.get('userName');
261 | if(token){
262 | next();
263 | }else{
264 | next({
265 | name: "登录", path:'/login',
266 | });
267 | // Vue.prototype.$Message.warning('请先登录');
268 | }
269 | }else{
270 | next();
271 | }
272 | });
273 | export default router;
274 |
--------------------------------------------------------------------------------
/src/views/user_message/ownerOrderInformation.vue:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 | -
6 |
{{newOrderStatus(item.orderStatus)}}
7 | 订单号: {{item.orderId}}
8 | {{item.startTime}} 至 {{item.startTime}}
9 | 车牌号: {{item.licensePlateNumber}}
10 | 收益¥: {{item.profit}} 元
11 |
12 |
13 |
14 |
15 |
16 |
17 | -
18 |
{{newOrderStatus(item.orderStatus)}}
19 | 订单号: {{item.orderId}}
20 | {{item.startTime}} 至 {{item.startTime}}
21 | 车牌号: {{item.licensePlateNumber}}
22 | 收益¥: {{item.profit}} 元
23 |
24 |
25 |
26 |
27 |
28 |
29 | -
30 |
{{newOrderStatus(item.orderStatus)}}
31 | 订单号: {{item.orderId}}
32 | {{item.startTime}} 至 {{item.startTime}}
33 | 车牌号: {{item.licensePlateNumber}}
34 | 收益¥: {{item.profit}} 元
35 |
36 |
37 |
38 |
39 |
40 |
41 | -
42 |
{{newOrderStatus(item.orderStatus)}}
43 | 订单号: {{item.orderId}}
44 | {{item.startTime}} 至 {{item.startTime}}
45 | 车牌号: {{item.licensePlateNumber}}
46 | 收益¥: {{item.profit}} 元
47 |
48 |
49 |
50 |
51 |
52 |
53 | -
54 |
{{newOrderStatus(item.orderStatus)}}
55 | 订单号: {{item.orderId}}
56 | {{item.startTime}} 至 {{item.startTime}}
57 | 车牌号: {{item.licensePlateNumber}}
58 | 收益¥: {{item.profit}} 元
59 |
60 |
61 |
62 |
63 |
64 |
65 |
192 |
193 |
249 |
--------------------------------------------------------------------------------
/src/views/backstage/carrental/add_carrental.vue:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
11 |
12 |
13 |
14 |
15 |
16 |
21 |
22 |
23 |
24 |
25 |
26 |
31 |
32 |
33 |
34 |
35 |
36 |
41 |
42 |
43 |
44 |
45 |
46 |
47 |
48 |
49 |
50 |
51 |
52 |
53 |
54 |
55 |
56 |
57 |
58 |
59 |
60 |
61 |
62 |
63 |
72 |
73 |
74 |
75 |
76 |
77 |
78 |
79 | 录入数据
80 | 重置
81 |
82 |
83 |
84 |
85 |
86 |
276 |
277 |
282 |
--------------------------------------------------------------------------------