diff --git a/.env.development b/.env.development
index c1e100b..3d457ce 100644
--- a/.env.development
+++ b/.env.development
@@ -2,6 +2,6 @@
ENV='development'
# base api
-VUE_APP_BASE_API=zhiyuan-test.ali251.langye.net
-VUE_APP_UPLOAD_API=zhiyuan-test.ali251.langye.net/api/admin/upload-file
+VUE_APP_BASE_API=http://zhiyuan-test.ali251.langye.net
+VUE_APP_UPLOAD_API=http://zhiyuan-test.ali251.langye.net/api/admin/upload-file
VUE_APP_PREVIEW_API=http://view.ali251.langye.net:8012/onlinePreview
diff --git a/.env.production b/.env.production
index aaeb0c2..6946e95 100644
--- a/.env.production
+++ b/.env.production
@@ -2,6 +2,6 @@
ENV = 'production'
# base api
-VUE_APP_BASE_API = http://starter.ali251.langye.net
-VUE_APP_UPLOAD_API =http://starter.ali251.langye.net/api/admin/upload-file
+VUE_APP_BASE_API = ''
+VUE_APP_UPLOAD_API =/api/admin/upload-file
VUE_APP_PREVIEW_API=http://view.ali251.langye.net:8012/onlinePreview
diff --git a/.eslintrc.js b/.eslintrc.js
index c977505..d13693d 100644
--- a/.eslintrc.js
+++ b/.eslintrc.js
@@ -189,7 +189,7 @@ module.exports = {
'yield-star-spacing': [2, 'both'],
'yoda': [2, 'never'],
'prefer-const': 2,
- 'no-debugger': process.env.NODE_ENV === 'production' ? 2 : 0,
+ 'no-debugger': 0,
'object-curly-spacing': [2, 'always', {
objectsInObjects: false
}],
diff --git a/.gitignore b/.gitignore
index 9ad28d2..fdd2adc 100644
--- a/.gitignore
+++ b/.gitignore
@@ -14,3 +14,4 @@ tests/**/coverage/
*.ntvs*
*.njsproj
*.sln
+/script/
diff --git a/package.json b/package.json
index c0c964d..7b193e7 100644
--- a/package.json
+++ b/package.json
@@ -37,9 +37,14 @@
"vuedraggable": "^2.24.3",
"vuex": "3.1.0",
"webpack-md5-hash": "^0.0.6",
- "xlsx": "^0.18.5"
+ "xlsx": "^0.18.5",
+ "vxe-table-plugin-export-xlsx": "^3.3.4",
+ "vxe-pc-ui": "^3.3.11",
+ "vxe-table": "^3.11.12",
+ "exceljs": "^4.4.0"
},
"devDependencies": {
+ "ejs": "^3.1.10",
"@vue/cli-plugin-babel": "4.4.4",
"@vue/cli-plugin-eslint": "4.4.4",
"@vue/cli-plugin-unit-jest": "4.4.4",
diff --git a/public/favicon.ico b/public/favicon.ico
index c48d62c..df783c0 100644
Binary files a/public/favicon.ico and b/public/favicon.ico differ
diff --git a/src/api/area/area.js b/src/api/area/area.js
new file mode 100644
index 0000000..70521c0
--- /dev/null
+++ b/src/api/area/area.js
@@ -0,0 +1,37 @@
+import request from '@/utils/request'
+
+export function index(params,isLoading = true) {
+ return request({
+ method: 'get',
+ url: '/api/admin/area/index',
+ params,
+isLoading
+ })
+}
+
+export function show(params,isLoading = true) {
+ return request({
+ method: 'get',
+ url: '/api/admin/area/show',
+ params,
+ isLoading
+ })
+}
+
+export function save(data, isLoading = true) {
+ return request({
+ method: 'post',
+ url: '/api/admin/area/save',
+ data,
+ isLoading
+ })
+}
+
+export function destroy(params, isLoading = true) {
+ return request({
+ method: 'get',
+ url: '/api/admin/area/destroy',
+ params,
+ isLoading
+ })
+}
diff --git a/src/api/school/school.js b/src/api/school/school.js
new file mode 100644
index 0000000..347527b
--- /dev/null
+++ b/src/api/school/school.js
@@ -0,0 +1,37 @@
+import request from '@/utils/request'
+
+export function index(params,isLoading = true) {
+ return request({
+ method: 'get',
+ url: '/api/admin/school/index',
+ params,
+isLoading
+ })
+}
+
+export function show(params,isLoading = true) {
+ return request({
+ method: 'get',
+ url: '/api/admin/school/show',
+ params,
+ isLoading
+ })
+}
+
+export function save(data, isLoading = true) {
+ return request({
+ method: 'post',
+ url: '/api/admin/school/save',
+ data,
+ isLoading
+ })
+}
+
+export function destroy(params, isLoading = true) {
+ return request({
+ method: 'get',
+ url: '/api/admin/school/destroy',
+ params,
+ isLoading
+ })
+}
diff --git a/src/api/score/score.js b/src/api/score/score.js
new file mode 100644
index 0000000..3e4f8fd
--- /dev/null
+++ b/src/api/score/score.js
@@ -0,0 +1,37 @@
+import request from '@/utils/request'
+
+export function index(params,isLoading = true) {
+ return request({
+ method: 'get',
+ url: '/api/admin/score/index',
+ params,
+isLoading
+ })
+}
+
+export function show(params,isLoading = true) {
+ return request({
+ method: 'get',
+ url: '/api/admin/score/show',
+ params,
+ isLoading
+ })
+}
+
+export function save(data, isLoading = true) {
+ return request({
+ method: 'post',
+ url: '/api/admin/score/save',
+ data,
+ isLoading
+ })
+}
+
+export function destroy(params, isLoading = true) {
+ return request({
+ method: 'get',
+ url: '/api/admin/score/destroy',
+ params,
+ isLoading
+ })
+}
diff --git a/src/api/user/user.js b/src/api/user/user.js
new file mode 100644
index 0000000..9bcb9d0
--- /dev/null
+++ b/src/api/user/user.js
@@ -0,0 +1,37 @@
+import request from '@/utils/request'
+
+export function index(params,isLoading = true) {
+ return request({
+ method: 'get',
+ url: '/api/admin/user/index',
+ params,
+isLoading
+ })
+}
+
+export function show(params,isLoading = true) {
+ return request({
+ method: 'get',
+ url: '/api/admin/user/show',
+ params,
+ isLoading
+ })
+}
+
+export function save(data, isLoading = true) {
+ return request({
+ method: 'post',
+ url: '/api/admin/user/save',
+ data,
+ isLoading
+ })
+}
+
+export function destroy(params, isLoading = true) {
+ return request({
+ method: 'get',
+ url: '/api/admin/user/destroy',
+ params,
+ isLoading
+ })
+}
diff --git a/src/assets/logo-mini.png b/src/assets/logo-mini.png
index 8ecb6ba..0c091ff 100644
Binary files a/src/assets/logo-mini.png and b/src/assets/logo-mini.png differ
diff --git a/src/assets/logo.png b/src/assets/logo.png
index 6405818..e9d299c 100644
Binary files a/src/assets/logo.png and b/src/assets/logo.png differ
diff --git a/src/components/RichTextModal/index.vue b/src/components/RichTextModal/index.vue
new file mode 100644
index 0000000..5baabe2
--- /dev/null
+++ b/src/components/RichTextModal/index.vue
@@ -0,0 +1,75 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/src/layout/components/Sidebar/Logo.vue b/src/layout/components/Sidebar/Logo.vue
index a8e6806..9cb58af 100644
--- a/src/layout/components/Sidebar/Logo.vue
+++ b/src/layout/components/Sidebar/Logo.vue
@@ -36,8 +36,8 @@
transition: opacity 1.5s;
}
.sidebar-name-logo {
- width: 120px;
- height: 22px;
+ object-fit: contain;
+ height: 80%;
}
.sidebarLogoFade-enter,
diff --git a/src/main.js b/src/main.js
index 2d7aa25..3b85f70 100644
--- a/src/main.js
+++ b/src/main.js
@@ -52,6 +52,21 @@ Vue.use(avue)
import AvueMap from 'avue-plugin-map'
Vue.use(AvueMap);
+import VxeUI from 'vxe-pc-ui'
+import 'vxe-pc-ui/lib/style.css'
+import VxeUITable from 'vxe-table'
+import 'vxe-table/lib/style.css'
+import domZIndex from 'dom-zindex'
+domZIndex.setCurrent(2000)
+import VxeTable from 'vxe-table'
+Vue.use(VxeUI)
+import VXETablePluginExportXLSX from 'vxe-table-plugin-export-xlsx'
+import ExcelJS from 'exceljs'
+VxeTable.use(VXETablePluginExportXLSX, {
+ ExcelJS
+})
+Vue.use(VxeUITable)
+
Vue.directive('loadMore', {
bind(el, binding) {
const selectWrap = el.querySelector('.el-scrollbar__wrap')
@@ -94,5 +109,8 @@ new Vue({
el: '#app',
router,
store,
+ beforeCreate() {
+ Vue.prototype.$bus = this
+ },
render: h => h(App)
})
diff --git a/src/settings.js b/src/settings.js
index 8c81eae..686b509 100644
--- a/src/settings.js
+++ b/src/settings.js
@@ -1,7 +1,7 @@
module.exports = {
- title: '朗业基础平台',
- TOKEN_KEY: 'starter_token',
+ title: '新飞跃',
+ TOKEN_KEY: 'xinfeiyue_token',
/**
* @type {boolean} true | false
* @description Whether fix the header
@@ -12,5 +12,12 @@ module.exports = {
* @type {boolean} true | false
* @description Whether show the logo in sidebar
*/
- sidebarLogo: true
+ sidebarLogo: true,
+ uploadSize: 20 * 1024 * 1024,
+ defaultModalSize: {
+ width: '76vw',
+ height: '80vh',
+ sWidth: '64vw',
+ sHeight: '72vh',
+ }
}
diff --git a/src/store/modules/permission.js b/src/store/modules/permission.js
index 3859c95..8ca9ae6 100644
--- a/src/store/modules/permission.js
+++ b/src/store/modules/permission.js
@@ -228,6 +228,11 @@ const actions = {
} else {
accessedRoutes = filterAsyncRoutes(asyncRoutes, roles)
}
+ asyncRoutes.push({
+ path: '*',
+ redirect: '/404',
+ hidden: true
+ })
commit('SET_ROUTES', accessedRoutes)
resolve(accessedRoutes)
diff --git a/src/styles/iconfont.css b/src/styles/iconfont.css
index 9f6fdb2..1438432 100644
--- a/src/styles/iconfont.css
+++ b/src/styles/iconfont.css
@@ -1,8 +1,8 @@
@font-face {
- font-family: "iconfont"; /* Project id 4052909 */
- src: url('iconfont.woff2?t=1683361610626') format('woff2'),
- url('iconfont.woff?t=1683361610626') format('woff'),
- url('iconfont.ttf?t=1683361610626') format('truetype');
+ font-family: "iconfont"; /* Project id 4840280 */
+ src: url('iconfont.woff2?t=1740625338753') format('woff2'),
+ url('iconfont.woff?t=1740625338753') format('woff'),
+ url('iconfont.ttf?t=1740625338753') format('truetype');
}
.iconfont {
@@ -13,107 +13,151 @@
-moz-osx-font-smoothing: grayscale;
}
-.icon-jurassic_process-list:before {
- content: "\e6c4";
+.icon-xiaoliang:before {
+ content: "\e600";
}
-.icon-biaodan:before {
- content: "\e663";
+.icon-customer:before {
+ content: "\e618";
}
-.icon-biaozhunhuaguizeguanli:before {
- content: "\e60a";
+.icon-report:before {
+ content: "\e622";
+}
+
+.icon-fenshuxian-:before {
+ content: "\e613";
+}
+
+.icon-fenshuxian-1:before {
+ content: "\e614";
+}
+
+.icon-kehuqunzu:before {
+ content: "\e673";
+}
+
+.icon-zhibiaomoban:before {
+ content: "\e631";
+}
+
+.icon-zhibiaotongji:before {
+ content: "\e632";
+}
+
+.icon-zhibiaojihua:before {
+ content: "\e633";
+}
+
+.icon-zhuanyemingcheng:before {
+ content: "\e627";
+}
+
+.icon-renshixuexiao:before {
+ content: "\e604";
+}
+
+.icon-tongji:before {
+ content: "\e605";
+}
+
+.icon-zhuanyeyukecheng:before {
+ content: "\e660";
}
-.icon-a-zhidu6:before {
- content: "\eb07";
+.icon-xueshengchengchangdangan_xueshengchengchangdangan:before {
+ content: "\e601";
}
-.icon-dat:before {
- content: "\e691";
+.icon-xuexiao:before {
+ content: "\e643";
}
-.icon-audio:before {
- content: "\e692";
+.icon-fenshu:before {
+ content: "\e60b";
}
-.icon-video:before {
- content: "\e693";
+.icon-xuexiao_xuexiaoxinxi:before {
+ content: "\e661";
}
-.icon-zip:before {
- content: "\e694";
+.icon-zhuanyexitong:before {
+ content: "\e60a";
}
-.icon-image:before {
- content: "\e695";
+.icon-xuexiao_kemu:before {
+ content: "\e615";
}
-.icon-pdf:before {
- content: "\e696";
+.icon-jiankangzhibiao:before {
+ content: "\e67c";
}
-.icon-ppt:before {
- content: "\e697";
+.icon-xuesheng:before {
+ content: "\e6e7";
}
-.icon-21excel:before {
- content: "\e698";
+.icon-kehu:before {
+ content: "\e623";
}
-.icon-21word:before {
- content: "\e699";
+.icon-tuijian:before {
+ content: "\e602";
}
-.icon-21move:before {
- content: "\e69a";
+.icon-tongji1:before {
+ content: "\e6b7";
}
-.icon-21setting:before {
- content: "\e69b";
+.icon-yunwei:before {
+ content: "\e6b8";
}
-.icon-21upload:before {
- content: "\e69c";
+.icon-statistics-full:before {
+ content: "\e86b";
}
-.icon-21download:before {
- content: "\e69d";
+.icon-zhuanyeguanli:before {
+ content: "\e70b";
}
-.icon-21cancel:before {
+.icon-yunweifenxipingtai:before {
content: "\e69e";
}
-.icon-21ok:before {
- content: "\e69f";
+.icon-tuijian1:before {
+ content: "\e759";
+}
+
+.icon-xueshengtejia:before {
+ content: "\e6ed";
}
-.icon-21copy:before {
- content: "\e6a0";
+.icon-fenxiangtuijian-m:before {
+ content: "\e7dc";
}
-.icon-21delete:before {
- content: "\e6a1";
+.icon-zhibiaoyingyong:before {
+ content: "\e66f";
}
-.icon-21edit:before {
- content: "\e6a2";
+.icon-icon_xueshengdanganshengcheng:before {
+ content: "\e61e";
}
-.icon-21new:before {
- content: "\e6a3";
+.icon-xitongyunweilei:before {
+ content: "\e634";
}
-.icon-21folder:before {
- content: "\e6a4";
+.icon-zhiyuantianbao:before {
+ content: "\e60f";
}
-.icon-21mutil:before {
- content: "\e6a5";
+.icon-gaokao_zhiyuantianbao:before {
+ content: "\e61a";
}
-.icon-21file:before {
- content: "\e6a6";
+.icon-zhiyuantianbao1:before {
+ content: "\e6dc";
}
diff --git a/src/styles/iconfont.ttf b/src/styles/iconfont.ttf
index 4e2970e..f4f1adc 100644
Binary files a/src/styles/iconfont.ttf and b/src/styles/iconfont.ttf differ
diff --git a/src/styles/iconfont.woff b/src/styles/iconfont.woff
index b7c5531..50fadde 100644
Binary files a/src/styles/iconfont.woff and b/src/styles/iconfont.woff differ
diff --git a/src/styles/iconfont.woff2 b/src/styles/iconfont.woff2
index 0c051c5..bd736ab 100644
Binary files a/src/styles/iconfont.woff2 and b/src/styles/iconfont.woff2 differ
diff --git a/src/utils/downloadRequest.js b/src/utils/downloadRequest.js
index 5489be5..9c033b1 100644
--- a/src/utils/downloadRequest.js
+++ b/src/utils/downloadRequest.js
@@ -52,7 +52,7 @@ export async function download(url, method = "get", info, filename) {
if (!filename) {
filename =
response.headers["content-disposition"]?.match(/filename=(.*)/)[1] ||
- "";
+ `${new Date().valueOf()}.xlsx`;
}
// 将二进制流转为blob
diff --git a/src/utils/index.js b/src/utils/index.js
index 32825fb..13a8ced 100644
--- a/src/utils/index.js
+++ b/src/utils/index.js
@@ -171,3 +171,15 @@ export function debounce(func, delay) {
}
}
+export function formatFileSize(size) {
+ if (size < 1024 * 1024) {
+ const temp = size / 1024;
+ return temp.toFixed(2) + "KB";
+ } else if (size < 1024 * 1024 * 1024) {
+ const temp = size / (1024 * 1024);
+ return temp.toFixed(2) + "MB";
+ } else {
+ const temp = size / (1024 * 1024 * 1024);
+ return temp.toFixed(2) + "GB";
+ }
+}
diff --git a/src/views/404.vue b/src/views/404.vue
index 1791f55..3793e3a 100644
--- a/src/views/404.vue
+++ b/src/views/404.vue
@@ -8,13 +8,13 @@
-
OOPS!
-
+
404
+
+
+
{{ message }}
-
Please check that the URL you entered is correct, or click the button below to return to the homepage.
-
Back to home
+
+
返回首页
@@ -26,7 +26,7 @@ export default {
name: 'Page404',
computed: {
message() {
- return 'The webmaster said that you can not enter this page...'
+ return '访问页面不存在...'
}
}
}
diff --git a/src/views/Area/Area.vue b/src/views/Area/Area.vue
new file mode 100644
index 0000000..373d38a
--- /dev/null
+++ b/src/views/Area/Area.vue
@@ -0,0 +1,406 @@
+
+
+
+
+
+
+
+ 新增
+ 搜索
+
+
+
+
+
+
+
+
+
+
+
+
+
+ 保存
+ 取消
+
+
+ 查看
+ 编辑
+ 删除
+
+
+
+
+
+ {
+ select.page_size = e;
+ select.page = 1;
+ getList();
+ }
+ "
+ @current-change="
+ (e) => {
+ select.page = e;
+ getList();
+ }
+ "
+ />
+
+
+
+
+
+
+
+
+
+
diff --git a/src/views/Area/components/AddArea.vue b/src/views/Area/components/AddArea.vue
new file mode 100644
index 0000000..13e997f
--- /dev/null
+++ b/src/views/Area/components/AddArea.vue
@@ -0,0 +1,181 @@
+
+
+
+
+
+
+
diff --git a/src/views/Area/components/ShowArea.vue b/src/views/Area/components/ShowArea.vue
new file mode 100644
index 0000000..d7998e2
--- /dev/null
+++ b/src/views/Area/components/ShowArea.vue
@@ -0,0 +1,95 @@
+
+
+
+
+
+
+ {{ form["name"] }}
+
+
+
+
+
+
+
+
+
+
diff --git a/src/views/School/School.vue b/src/views/School/School.vue
new file mode 100644
index 0000000..85039e9
--- /dev/null
+++ b/src/views/School/School.vue
@@ -0,0 +1,685 @@
+
+
+
+
+
+
+
+
+
+
+ 新增
+
+
+
+
+
+
+
+ 搜索
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ 查看
+
+
+ 编辑
+
+
+
+
+
+ 查看
+
+
+ 编辑
+
+
+
+
+
+
+ 保存
+ 取消
+
+
+ 查看
+ 编辑
+ 删除
+
+
+
+
+
+ {
+ select.page_size = e;
+ select.page = 1;
+ getList();
+ }
+ "
+ @current-change="
+ (e) => {
+ select.page = e;
+ getList();
+ }
+ "
+ />
+
+
+
+
+
+
(row[fieldName] = text)"
+ >
+
+
+
+
+
+
diff --git a/src/views/School/components/AddSchool.vue b/src/views/School/components/AddSchool.vue
new file mode 100644
index 0000000..1f4c318
--- /dev/null
+++ b/src/views/School/components/AddSchool.vue
@@ -0,0 +1,351 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/src/views/School/components/ShowSchool.vue b/src/views/School/components/ShowSchool.vue
new file mode 100644
index 0000000..f10b900
--- /dev/null
+++ b/src/views/School/components/ShowSchool.vue
@@ -0,0 +1,170 @@
+
+
+
+
+
+
+ {{ form["name"] }}
+
+
+
+ {{
+ area.find((i) => i["id"] === form["area_id"])
+ ? area.find((i) => i["id"] === form["area_id"])["name"]
+ : ""
+ }}
+
+
+
+ {{ form["code"] }}
+
+
+
+ {{ form["star"] }}
+
+
+
+ {{ form["address"] }}
+
+
+
+ {{
+ [
+ { value: 1, label: "公办" },
+ { value: 2, label: "民办" },
+ ].find((i) => i["value"] === form["nature"])
+ ? [
+ { value: 1, label: "公办" },
+ { value: 2, label: "民办" },
+ ].find((i) => i["value"] === form["nature"])["label"]
+ : ""
+ }}
+
+
+
+ {{
+ form["type"].toString()
+ }}
+
+
+
+ {{ form["build_year"] }}
+
+
+
+ {{ form["introduce"] }}
+
+
+
+ {{ form["teacher"] }}
+
+
+
+
+
+
+
+
+
+
diff --git a/src/views/Score/Score.vue b/src/views/Score/Score.vue
new file mode 100644
index 0000000..4a96729
--- /dev/null
+++ b/src/views/Score/Score.vue
@@ -0,0 +1,539 @@
+
+
+
+
+
+
+
+
+
+
+ 新增
+
+
+
+
+
+
+ 搜索
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ 保存
+ 取消
+
+
+ 查看
+ 编辑
+ 删除
+
+
+
+
+
+ {
+ select.page_size = e;
+ select.page = 1;
+ getList();
+ }
+ "
+ @current-change="
+ (e) => {
+ select.page = e;
+ getList();
+ }
+ "
+ />
+
+
+
+
+
+
+
+
+
+
diff --git a/src/views/Score/components/AddScore.vue b/src/views/Score/components/AddScore.vue
new file mode 100644
index 0000000..4b4f8cd
--- /dev/null
+++ b/src/views/Score/components/AddScore.vue
@@ -0,0 +1,281 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/src/views/Score/components/ShowScore.vue b/src/views/Score/components/ShowScore.vue
new file mode 100644
index 0000000..d442b18
--- /dev/null
+++ b/src/views/Score/components/ShowScore.vue
@@ -0,0 +1,156 @@
+
+
+
+
+
+
+ {{ form["code"] }}
+
+
+
+ {{
+ school.find((i) => i["id"] === form["school_id"])
+ ? school.find((i) => i["id"] === form["school_id"])["name"]
+ : ""
+ }}
+
+
+
+ {{ form["year"] }}
+
+
+
+ {{
+ typeof form["total_score"] === "number"
+ ? form["total_score"].toFixed(2)
+ : form["total_score"]
+ }}
+
+
+
+ {{
+ typeof form["main_score"] === "number"
+ ? form["main_score"].toFixed(2)
+ : form["main_score"]
+ }}
+
+
+
+ {{
+ typeof form["area_total_score"] === "number"
+ ? form["area_total_score"].toFixed(2)
+ : form["area_total_score"]
+ }}
+
+
+
+ {{
+ typeof form["area_main_score"] === "number"
+ ? form["area_main_score"].toFixed(2)
+ : form["area_main_score"]
+ }}
+
+
+
+
+
+
+
+
+
+
diff --git a/src/views/User/User.vue b/src/views/User/User.vue
new file mode 100644
index 0000000..ce9f93a
--- /dev/null
+++ b/src/views/User/User.vue
@@ -0,0 +1,547 @@
+
+
+
+
+
+
+
+ 新增
+ 搜索
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ 保存
+ 取消
+
+
+ 查看
+ 编辑
+ 删除
+
+
+
+
+
+ {
+ select.page_size = e;
+ select.page = 1;
+ getList();
+ }
+ "
+ @current-change="
+ (e) => {
+ select.page = e;
+ getList();
+ }
+ "
+ />
+
+
+
+
+
+
+
+
+
+
diff --git a/src/views/User/components/AddUser.vue b/src/views/User/components/AddUser.vue
new file mode 100644
index 0000000..4f8ade0
--- /dev/null
+++ b/src/views/User/components/AddUser.vue
@@ -0,0 +1,370 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/src/views/User/components/ShowUser.vue b/src/views/User/components/ShowUser.vue
new file mode 100644
index 0000000..899d4fc
--- /dev/null
+++ b/src/views/User/components/ShowUser.vue
@@ -0,0 +1,179 @@
+
+
+
+
+
+
+ {{ form["nickname"] }}
+
+
+
+ {{ form["openid"] }}
+
+
+
+ {{ form["headimgurl"] }}
+
+
+
+ {{ form["mobile"] }}
+
+
+
+ {{
+ [
+ { value: "男", label: "男" },
+ { value: "女", label: "女" },
+ { value: "保密", label: "保密" },
+ ].find((i) => i["value"] === form["sex"])
+ ? [
+ { value: "男", label: "男" },
+ { value: "女", label: "女" },
+ { value: "保密", label: "保密" },
+ ].find((i) => i["value"] === form["sex"])["label"]
+ : ""
+ }}
+
+
+
+ {{ form["area"] }}
+
+
+
+ {{ form["province"] }}
+
+
+
+ {{ form["city"] }}
+
+
+
+ {{ form["name"] }}
+
+
+
+ {{ form["grade"] }}
+
+
+
+ {{ form["middle_exam_year"] }}
+
+
+
+ {{ form["nationality"] }}
+
+
+
+ {{ form["school"] }}
+
+
+
+
+
+
+
+
+
+
diff --git a/vue.config.js b/vue.config.js
index e16b92c..c24091f 100644
--- a/vue.config.js
+++ b/vue.config.js
@@ -25,7 +25,7 @@ module.exports = {
* Detail: https://cli.vuejs.org/config/#publicpath
*/
publicPath: process.env.ENV === 'staging' ? '/admin_test' : '/admin',
- outputDir: './dist',
+ outputDir: `../git-store/zhiyuan/public/${process.env.ENV === 'staging' ? '/admin_test' : '/admin'}`,
assetsDir: 'static',
css: {
loaderOptions: { // 向 CSS 相关的 loader 传递选项
@@ -37,7 +37,7 @@ module.exports = {
}
}
},
- lintOnSave: process.env.NODE_ENV === 'development',
+ lintOnSave: false,
productionSourceMap: false,
devServer: {
port: port,