From be30a62a2dddf9ba36e69ade654513cbd7aa0c52 Mon Sep 17 00:00:00 2001
From: zhanghua <314079846@qq.com>
Date: 星期六, 14 九月 2024 11:56:31 +0800
Subject: [PATCH] 机构切换
---
src/views/class/index.vue | 4
vue.config.js | 2
src/views/curriculum/index.vue | 4
src/views/integral/index.vue | 4
src/views/login/index.vue | 4
src/layout/components/Navbar.vue | 247 +++++++------
src/views/student/index.vue | 473 +++++++++++++------------
src/views/comment/index.vue | 4
README.md | 2
src/views/scheduleCourses/index.vue | 278 +++++++-------
.env.development | 2
src/views/rollCall/index.vue | 6
src/views/student/components/create.vue | 4
src/utils/graphql.js | 6
src/layout/components/Sidebar/index.vue | 2
src/views/development/index.vue | 4
src/views/student/components/details.vue | 2
src/views/work/index.vue | 4
18 files changed, 548 insertions(+), 504 deletions(-)
diff --git a/.env.development b/.env.development
index 0162bc9..46e640e 100644
--- a/.env.development
+++ b/.env.development
@@ -2,4 +2,4 @@
ENV = 'development'
# base api
-VUE_APP_BASE_API = 'https://www.9village.cn/dream_test'
+VUE_APP_BASE_API = '/dream_test'
diff --git a/README.md b/README.md
index 49586cb..f5f4252 100644
--- a/README.md
+++ b/README.md
@@ -1,4 +1,4 @@
-## dream_web
+## dream_test_web
鍙綋寰暀鍔″悗鍙�
diff --git a/src/layout/components/Navbar.vue b/src/layout/components/Navbar.vue
index 53ce25c..8774f9e 100644
--- a/src/layout/components/Navbar.vue
+++ b/src/layout/components/Navbar.vue
@@ -1,24 +1,44 @@
<template>
- <div class="navbar">
- <hamburger :is-active="sidebar.opened" class="hamburger-container" @toggleClick="toggleSideBar" />
+ <div class="navbar">
+ <hamburger
+ :is-active="sidebar.opened"
+ class="hamburger-container"
+ @toggleClick="toggleSideBar"
+ />
- <breadcrumb class="breadcrumb-container" />
- <!-- 鍥哄畾鍙充笂瑙� -->
- <h3 style="position: fixed; top: 0; font-size: 16px; color: #5a5e66; " :style="'right:' + orgCss() ">{{ getOrgName() }}</h3>
- <div class="right-menu">
- <el-dropdown class="avatar-container" trigger="click">
- <div class="avatar-wrapper">
- {{ '浣犲ソ锛�' + getUserName() }}
- <i class="el-icon-caret-bottom"></i>
+ <breadcrumb class="breadcrumb-container" />
+ <!-- 鍥哄畾鍙充笂瑙� -->
+ <!-- <h3 style="position: fixed; top: 0; font-size: 16px; color: #5a5e66; " :style="'right:' + orgCss() ">{{ getOrgName() }}</h3> -->
+
+ <div class="right-menu">
+ <el-dropdown trigger="click" ref="eldrop" style="margin-right:20px">
+ <div class="avatar-wrapper" style="font-size:20px">
+ {{ selectStaff.org.name }}
+ <i class="el-icon-caret-bottom"></i>
+ </div>
+ <el-dropdown-menu slot="dropdown" align="center">
+ <el-dropdown-item
+ v-for="item in staffs"
+ @click.native="changeStaff(item)"
+ :key="item.id"
+ >
+ {{ item.org.name }}
+ </el-dropdown-item>
+ </el-dropdown-menu>
+ </el-dropdown>
+ <el-dropdown class="avatar-container" trigger="click">
+ <div class="avatar-wrapper">
+ {{ '鎮ㄥソ锛�' + getUserName() }}
+ <i class="el-icon-caret-bottom"></i>
+ </div>
+ <el-dropdown-menu slot="dropdown" class="user-dropdown">
+ <el-dropdown-item @click.native="logout">
+ <span style="display: block">閫�鍑虹櫥褰�</span>
+ </el-dropdown-item>
+ </el-dropdown-menu>
+ </el-dropdown>
</div>
- <el-dropdown-menu slot="dropdown" class="user-dropdown">
- <el-dropdown-item @click.native="logout">
- <span style="display:block;">閫�鍑虹櫥褰�</span>
- </el-dropdown-item>
- </el-dropdown-menu>
- </el-dropdown>
</div>
- </div>
</template>
<script>
@@ -27,113 +47,124 @@
import Hamburger from '@/components/Hamburger'
export default {
- components: {
- Breadcrumb,
- Hamburger
- },
- computed: {
- ...mapGetters([
- 'sidebar',
- 'avatar'
- ])
- },
- methods: {
- orgCss() {
- return JSON.parse(localStorage.getItem("user")).name.length * 20 + 100 + 'px';
+ data() {
+ return {
+ selectStaff: JSON.parse(localStorage.getItem("selectStaff")),
+ staffs: JSON.parse(localStorage.getItem("staffs"))
+ }
},
- getOrgName() {
- return JSON.parse(localStorage.getItem("user")).staffs[0].org.name;
+ components: {
+ Breadcrumb,
+ Hamburger
},
- getUserName() {
- return JSON.parse(localStorage.getItem("user")).name;
+ computed: {
+ ...mapGetters([
+ 'sidebar',
+ 'avatar'
+ ])
},
- toggleSideBar() {
- this.$store.dispatch('app/toggleSideBar')
- },
- async logout() {
- // await this.$store.dispatch('user/logout')
- this.$router.push(`/login`)
+ methods: {
+ changeStaff(item) {
+ this.selectStaff = item
+ localStorage.setItem("selectStaff", JSON.stringify(item))
+ this.$router.go(0)
+ },
+ orgCss() {
+ return JSON.parse(localStorage.getItem("user")).name.length * 20 + 100 + 'px';
+ },
+ getOrgName() {
+ return JSON.parse(localStorage.getItem("user")).staffs[0].org.name;
+ },
+ getUserName() {
+ return JSON.parse(localStorage.getItem("user")).name;
+ },
+ toggleSideBar() {
+ this.$store.dispatch('app/toggleSideBar')
+ },
+ async logout() {
+ // await this.$store.dispatch('user/logout')
+ this.$router.push(`/login`)
+ }
}
- }
}
</script>
<style lang="scss" scoped>
.navbar {
- height: 50px;
- overflow: hidden;
- position: relative;
- background: #fff;
- box-shadow: 0 1px 4px rgba(0,21,41,.08);
+ height: 50px;
+ overflow: hidden;
+ position: relative;
+ background: #fff;
+ box-shadow: 0 1px 4px rgba(0, 21, 41, 0.08);
- .hamburger-container {
- line-height: 46px;
- height: 100%;
- float: left;
- cursor: pointer;
- transition: background .3s;
- -webkit-tap-highlight-color:transparent;
-
- &:hover {
- background: rgba(0, 0, 0, .025)
- }
- }
-
- .breadcrumb-container {
- float: left;
- }
-
- .right-menu {
- float: right;
- height: 100%;
- line-height: 50px;
-
- &:focus {
- outline: none;
- }
-
- .right-menu-item {
- display: inline-block;
- padding: 0 8px;
- height: 100%;
- font-size: 18px;
- color: #5a5e66;
- vertical-align: text-bottom;
-
- &.hover-effect {
+ .hamburger-container {
+ line-height: 46px;
+ height: 100%;
+ float: left;
cursor: pointer;
- transition: background .3s;
+ transition: background 0.3s;
+ -webkit-tap-highlight-color: transparent;
&:hover {
- background: rgba(0, 0, 0, .025)
+ background: rgba(0, 0, 0, 0.025);
}
- }
}
- .avatar-container {
- margin-right: 50px;
-
- .avatar-wrapper {
- margin-top: 5px;
- position: relative;
- cursor: pointer;
-
- .user-avatar {
- cursor: pointer;
- width: 40px;
- height: 40px;
- border-radius: 10px;
- }
-
- .el-icon-caret-bottom {
- cursor: pointer;
- position: absolute;
- right: -20px;
- top: 25px;
- font-size: 12px;
- }
- }
+ .breadcrumb-container {
+ float: left;
}
- }
+
+ .right-menu {
+ float: right;
+ height: 100%;
+ line-height: 50px;
+
+ &:focus {
+ outline: none;
+ }
+
+ .right-menu-item {
+ display: inline-block;
+ padding: 0 8px;
+ height: 100%;
+ font-size: 18px;
+ color: #5a5e66;
+ vertical-align: text-bottom;
+
+ &.hover-effect {
+ cursor: pointer;
+ transition: background 0.3s;
+
+ &:hover {
+ background: rgba(0, 0, 0, 0.025);
+ }
+ }
+ }
+
+ .avatar-container {
+ margin-right: 50px;
+
+ .avatar-wrapper {
+ margin-top: 5px;
+ position: relative;
+ cursor: pointer;
+
+ .user-avatar {
+ cursor: pointer;
+ width: 40px;
+ height: 40px;
+ border-radius: 10px;
+ }
+
+ .el-icon-caret-bottom {
+ cursor: pointer;
+ position: absolute;
+ right: -20px;
+ top: 25px;
+ font-size: 12px;
+ }
+ }
+ }
+ }
}
</style>
diff --git a/src/layout/components/Sidebar/index.vue b/src/layout/components/Sidebar/index.vue
index ea7723a..3dae328 100644
--- a/src/layout/components/Sidebar/index.vue
+++ b/src/layout/components/Sidebar/index.vue
@@ -12,7 +12,7 @@
:collapse-transition="false"
mode="vertical"
>
- <sidebar-item v-for="route in routes" :key="route.path" :item="route" :base-path="route.path" />
+ <sidebar-item v-for="(route,index) in routes" :key="index" :item="route" :base-path="route.path" />
</el-menu>
</el-scrollbar>
</div>
diff --git a/src/utils/graphql.js b/src/utils/graphql.js
index 0035dcd..319754f 100644
--- a/src/utils/graphql.js
+++ b/src/utils/graphql.js
@@ -6,8 +6,8 @@
// export default apolloClient;
// 瀹氫箟涓嶅悓璇锋眰鍦板潃
-const EFORMURI = "https://www.9village.cn/dream_test/graphql";
-const IOTURI = "https://www.9village.cn/dream_test" + "/graphql";
+const EFORMURI = "/dream_test/graphql";
+const IOTURI = "/dream_test/graphql";
// import ApolloClient from 'apollo-boost' //寮曞叆apollo-boost鎻掍欢
import { ApolloClient } from "apollo-client";
import { createHttpLink } from "apollo-link-http";
@@ -23,7 +23,7 @@
headers: {
Authorization: JSON.parse(localStorage.getItem("user")).jwtToken,
// Authorization:'eyJhbGciOiJIUzI1NiJ9.eyJleHBUaW1lIjoiMjAyNC8wNy8zMSAxODoxMSIsInVzZXJJZCI6NDQsImp0aSI6ImVlMDM3NmFjLWQ5OTAtNDRkZS05YTVmLTUxYjhjMjc0YWNiOSIsImlhdCI6MTcyMjQxMzUwMSwic3ViIjoieWNsIiwiZXhwIjoxNzIyNDIwNzAxfQ.bSd0qag44dwXeJQpvryYJXEtrQ03-8MmHQWhgILGXO4',
- staffId: JSON.parse(localStorage.getItem("user")).staffs[0].id,
+ staffId: JSON.parse(localStorage.getItem("selectStaff")).id,
playerId:
JSON.parse(localStorage.getItem("user")).players.length > 0
? JSON.parse(localStorage.getItem("user")).players[0].id
diff --git a/src/views/class/index.vue b/src/views/class/index.vue
index b3aeb84..ccaf192 100644
--- a/src/views/class/index.vue
+++ b/src/views/class/index.vue
@@ -104,7 +104,7 @@
activeName: "all",
total: 0,
data: {
- staffId: JSON.parse(localStorage.getItem("user")).staffs[0].id,
+ staffId: JSON.parse(localStorage.getItem("selectStaff")).id,
keyword: "",
pageIn: {
//鍙�夛紝濡傛灉鏄垎椤垫煡璇紝闇�瑕佸姞涓娿��
@@ -158,7 +158,7 @@
this.listLoading = true;
let data = {
itemType: "TEAM",
- staffId: JSON.parse(localStorage.getItem("user")).staffs[0].id,
+ staffId: JSON.parse(localStorage.getItem("selectStaff")).id,
keyword: this.data.keyword,
pageIn: { ...this.data.pageIn },
};
diff --git a/src/views/comment/index.vue b/src/views/comment/index.vue
index 004ad03..3eaefa3 100644
--- a/src/views/comment/index.vue
+++ b/src/views/comment/index.vue
@@ -129,7 +129,7 @@
activeName: "comment",
total: 0,
data: {
- staffId: JSON.parse(localStorage.getItem("user")).staffs[0].id,
+ staffId: JSON.parse(localStorage.getItem("selectStaff")).id,
keyword: "",
pageIn: {
//鍙�夛紝濡傛灉鏄垎椤垫煡璇紝闇�瑕佸姞涓娿��
@@ -172,7 +172,7 @@
this.listLoading = true;
let data = {
commentTypes: ["DIRECT_COMMENT"],
- staffId: JSON.parse(localStorage.getItem("user")).staffs[0].id,
+ staffId: JSON.parse(localStorage.getItem("selectStaff")).id,
keyword: this.data.keyword,
pageIn: { ...this.data.pageIn },
};
diff --git a/src/views/curriculum/index.vue b/src/views/curriculum/index.vue
index de71a49..99960f4 100644
--- a/src/views/curriculum/index.vue
+++ b/src/views/curriculum/index.vue
@@ -188,7 +188,7 @@
methods: {
getCourses() {
let data = {
- staffId: JSON.parse(localStorage.getItem("user")).staffs[0].id,
+ staffId: JSON.parse(localStorage.getItem("selectStaff")).id,
day: this.getYMD(this.time),
};
getBySessionExistsOfDay(data).then((res) => {
@@ -197,7 +197,7 @@
courseIds.push(i.id);
});
let params = {
- staffId: JSON.parse(localStorage.getItem("user")).staffs[0].id,
+ staffId: JSON.parse(localStorage.getItem("selectStaff")).id,
beginDate: this.getYMD(this.time),
endDate: this.getYMD(this.time),
courseIds: courseIds,
diff --git a/src/views/development/index.vue b/src/views/development/index.vue
index 26bd43e..a656e7f 100644
--- a/src/views/development/index.vue
+++ b/src/views/development/index.vue
@@ -133,7 +133,7 @@
activeName: "all",
total: 0,
data: {
- staffId: JSON.parse(localStorage.getItem("user")).staffs[0].id,
+ staffId: JSON.parse(localStorage.getItem("selectStaff")).id,
keyword: "",
pageIn: {
//鍙�夛紝濡傛灉鏄垎椤垫煡璇紝闇�瑕佸姞涓娿��
@@ -182,7 +182,7 @@
} else if (this.activeName == "other") {
this.listLoading = true;
let data = {
- staffId: JSON.parse(localStorage.getItem("user")).staffs[0].id,
+ staffId: JSON.parse(localStorage.getItem("selectStaff")).id,
keyword: this.data.keyword,
pageIn: { ...this.data.pageIn },
};
diff --git a/src/views/integral/index.vue b/src/views/integral/index.vue
index 9104d43..e009c1f 100644
--- a/src/views/integral/index.vue
+++ b/src/views/integral/index.vue
@@ -132,7 +132,7 @@
activeName: "student",
total: 0,
data: {
- staffId: JSON.parse(localStorage.getItem("user")).staffs[0].id,
+ staffId: JSON.parse(localStorage.getItem("selectStaff")).id,
keyword: "",
pageIn: {
//鍙�夛紝濡傛灉鏄垎椤垫煡璇紝闇�瑕佸姞涓娿��
@@ -175,7 +175,7 @@
this.listLoading = true;
let data = {
types: ["NORMAL"],
- staffId: JSON.parse(localStorage.getItem("user")).staffs[0].id,
+ staffId: JSON.parse(localStorage.getItem("selectStaff")).id,
keyword: this.data.keyword,
pageIn: { ...this.data.pageIn },
};
diff --git a/src/views/login/index.vue b/src/views/login/index.vue
index 10ac0b8..00c9d6f 100644
--- a/src/views/login/index.vue
+++ b/src/views/login/index.vue
@@ -88,7 +88,9 @@
login({
code: code,
}).then((res) => {
- localStorage.setItem("user", JSON.stringify(res));
+ localStorage.setItem("user", JSON.stringify(res));
+ localStorage.setItem("staffs", JSON.stringify(res.staffs));
+ localStorage.setItem("selectStaff", JSON.stringify(res.staffs[0]));
this.$router.push("/student");
});
},
diff --git a/src/views/rollCall/index.vue b/src/views/rollCall/index.vue
index 6f529cd..626a217 100644
--- a/src/views/rollCall/index.vue
+++ b/src/views/rollCall/index.vue
@@ -198,7 +198,7 @@
activeName: "student",
total: 0,
data: {
- staffId: JSON.parse(localStorage.getItem("user")).staffs[0].id,
+ staffId: JSON.parse(localStorage.getItem("selectStaff")).id,
keyword: "",
pageIn: {
//鍙�夛紝濡傛灉鏄垎椤垫煡璇紝闇�瑕佸姞涓娿��
@@ -242,7 +242,7 @@
this.listLoading = true;
let data = {
types: ["NORMAL"],
- staffId: JSON.parse(localStorage.getItem("user")).staffs[0].id,
+ staffId: JSON.parse(localStorage.getItem("selectStaff")).id,
keyword: this.data.keyword,
pageIn: { ...this.data.pageIn },
};
@@ -259,7 +259,7 @@
this.listLoading = true;
let data = {
completeTypes: ["ROLL_CALL"],
- staffId: JSON.parse(localStorage.getItem("user")).staffs[0].id,
+ staffId: JSON.parse(localStorage.getItem("selectStaff")).id,
keyword: this.data.keyword,
pageIn: { ...this.data.pageIn },
};
diff --git a/src/views/scheduleCourses/index.vue b/src/views/scheduleCourses/index.vue
index 08aebe3..5bfb40b 100644
--- a/src/views/scheduleCourses/index.vue
+++ b/src/views/scheduleCourses/index.vue
@@ -1,151 +1,155 @@
<template>
- <div class="app-container">
- <el-tabs v-model="activeName" @tab-click="fetchData">
- <el-tab-pane label="鍏ㄩ儴" name="all" />
- <el-tab-pane label="宸插仠鐢�" name="deactivated" />
- </el-tabs>
- <div style="display: flex; flex-direction: row-reverse">
- <div style="width: 300px">
- <el-input
- placeholder="鎸夎绋嬪悕绉版悳绱�"
- v-model="data.keyword"
- class="input-with-select"
- size="small"
- >
- <el-button
- slot="append"
- icon="el-icon-search"
- @click="fetchData"
- ></el-button>
- </el-input>
- </div>
+ <div class="app-container">
+ <el-tabs v-model="activeName" @tab-click="fetchData">
+ <el-tab-pane label="鍏ㄩ儴" name="all" />
+ <el-tab-pane label="宸插仠鐢�" name="deactivated" />
+ </el-tabs>
+ <div style="display: flex; flex-direction: row-reverse">
+ <div style="width: 300px">
+ <el-input
+ placeholder="鎸夎绋嬪悕绉版悳绱�"
+ v-model="data.keyword"
+ class="input-with-select"
+ size="small"
+ >
+ <el-button
+ slot="append"
+ icon="el-icon-search"
+ @click="fetchData"
+ ></el-button>
+ </el-input>
+ </div>
+ </div>
+ <div style="height: calc(100vh - 248px)">
+ <el-table
+ v-loading="listLoading"
+ :data="list"
+ element-loading-text="Loading"
+ fit
+ height="100%"
+ >
+ <el-table-column label="璇剧▼鍚嶇О">
+ <template slot-scope="scope">
+ <el-link type="primary" :underline="false">{{
+ scope.row.name
+ }}</el-link>
+ </template>
+ </el-table-column>
+ <el-table-column
+ label="鍋滅敤鏃堕棿"
+ width="200"
+ v-if="activeName == 'deactivated'"
+ >
+ <template slot-scope="scope">
+ {{ scope.row.modifyTime }}
+ </template>
+ </el-table-column>
+ <el-table-column
+ label="鎿嶄綔"
+ width="200"
+ v-if="activeName == 'deactivated'"
+ >
+ <template slot-scope="">
+ <el-link type="primary" :underline="false"
+ >鎭㈠</el-link
+ >
+ </template>
+ </el-table-column>
+ </el-table>
+ </div>
+ <div>
+ <el-pagination
+ @size-change="handleSizeChange"
+ @current-change="handleCurrentChange"
+ :current-page="data.pageIn.index + 1"
+ :page-sizes="[10, 20, 30, 40]"
+ :page-size="data.pageIn.size"
+ layout="total, sizes, prev, pager, next, jumper"
+ :total="total"
+ >
+ </el-pagination>
+ </div>
</div>
- <div style="height: calc(100vh - 248px)">
- <el-table
- v-loading="listLoading"
- :data="list"
- element-loading-text="Loading"
- fit
- height="100%"
- >
- <el-table-column label="璇剧▼鍚嶇О">
- <template slot-scope="scope">
- <el-link type="primary" :underline="false">{{
- scope.row.name
- }}</el-link>
- </template>
- </el-table-column>
- <el-table-column
- label="鍋滅敤鏃堕棿"
- width="200"
- v-if="activeName == 'deactivated'"
- >
- <template slot-scope="scope">
- {{ scope.row.modifyTime }}
- </template>
- </el-table-column>
- <el-table-column
- label="鎿嶄綔"
- width="200"
- v-if="activeName == 'deactivated'"
- >
- <template slot-scope="">
- <el-link type="primary" :underline="false">鎭㈠</el-link>
- </template>
- </el-table-column>
- </el-table>
- </div>
- <div>
- <el-pagination
- @size-change="handleSizeChange"
- @current-change="handleCurrentChange"
- :current-page="data.pageIn.index + 1"
- :page-sizes="[10, 20, 30, 40]"
- :page-size="data.pageIn.size"
- layout="total, sizes, prev, pager, next, jumper"
- :total="total"
- >
- </el-pagination>
- </div>
- </div>
</template>
<script>
import { getCourse, getDeletedItem } from "@/api/scheduleCourses";
export default {
- filters: {
- statusFilter(status) {
- const statusMap = {
- published: "success",
- draft: "gray",
- deleted: "danger",
- };
- return statusMap[status];
- },
- },
- data() {
- return {
- list: null,
- listLoading: true,
- activeName: "all",
- total: 0,
- data: {
- staffId: JSON.parse(localStorage.getItem("user")).staffs[0].id,
- keyword: "",
- pageIn: {
- //鍙�夛紝濡傛灉鏄垎椤垫煡璇紝闇�瑕佸姞涓娿��
- index: 0, //蹇呴��
- size: 10, //姣忛〉鐨勫ぇ灏忋�傞粯璁�20
- sorts: {
- name: "name", //鎺掑簭瀛楁鍚嶇О
- direction: "ASC", //鎺掑簭鏂瑰悜
- },
+ filters: {
+ statusFilter(status) {
+ const statusMap = {
+ published: "success",
+ draft: "gray",
+ deleted: "danger",
+ };
+ return statusMap[status];
},
- types: ["BOOKING_NONE", "BOOKING_TIME_STAFF", "BOOKING_TIME_PLACE"],
- },
- };
- },
- created() {
- this.fetchData();
- },
- methods: {
- handleSizeChange(val) {
- this.data.pageIn.size = val;
- this.fetchData("pageIn");
},
- handleCurrentChange(val) {
- this.data.pageIn.index = val - 1;
- this.fetchData("pageIn");
- },
- fetchData(_val) {
- if (_val !== "pageIn") {
- this.data.pageIn.index = 0;
- this.data.pageIn.size = 10;
- }
- this.listLoading = true;
- if (this.activeName == "all") {
- this.listLoading = true;
- getCourse(this.data).then((response) => {
- this.list = response.data.findCourse.ls;
- this.total = response.data.findCourse.pageOut.total;
- this.listLoading = false;
- });
- } else if (this.activeName == "deactivated") {
- this.listLoading = true;
- let data = {
- itemType: "COURSE",
- staffId: JSON.parse(localStorage.getItem("user")).staffs[0].id,
- keyword: this.data.keyword,
- pageIn: { ...this.data.pageIn },
+ data() {
+ return {
+ list: null,
+ listLoading: true,
+ activeName: "all",
+ total: 0,
+ data: {
+ staffId: JSON.parse(localStorage.getItem("selectStaff")).id,
+ keyword: "",
+ pageIn: {
+ //鍙�夛紝濡傛灉鏄垎椤垫煡璇紝闇�瑕佸姞涓娿��
+ index: 0, //蹇呴��
+ size: 10, //姣忛〉鐨勫ぇ灏忋�傞粯璁�20
+ sorts: {
+ name: "name", //鎺掑簭瀛楁鍚嶇О
+ direction: "ASC", //鎺掑簭鏂瑰悜
+ },
+ },
+ types: ["BOOKING_NONE", "BOOKING_TIME_STAFF", "BOOKING_TIME_PLACE"],
+ },
};
- getDeletedItem(data).then((response) => {
- this.list = response.data.findDeletedItem.ls;
- this.total = response.data.findDeletedItem.pageOut.total;
- this.listLoading = false;
- });
- }
},
- },
+ created() {
+ this.fetchData();
+ },
+ methods: {
+ handleSizeChange(val) {
+ this.data.pageIn.size = val;
+ this.fetchData("pageIn");
+ },
+ handleCurrentChange(val) {
+ this.data.pageIn.index = val - 1;
+ this.fetchData("pageIn");
+ },
+ fetchData(_val) {
+
+ this.data.staffId = JSON.parse(localStorage.getItem("selectStaff")).id
+ if (_val !== "pageIn") {
+ this.data.pageIn.index = 0;
+ this.data.pageIn.size = 10;
+ }
+ this.listLoading = true;
+ if (this.activeName == "all") {
+ this.listLoading = true;
+ getCourse(this.data).then((response) => {
+ this.list = response.data.findCourse.ls;
+ this.total = response.data.findCourse.pageOut.total;
+ this.listLoading = false;
+ });
+ } else if (this.activeName == "deactivated") {
+ this.listLoading = true;
+ let data = {
+ itemType: "COURSE",
+ staffId: JSON.parse(localStorage.getItem("selectStaff")).id,
+ keyword: this.data.keyword,
+ pageIn: { ...this.data.pageIn },
+ };
+ getDeletedItem(data).then((response) => {
+ this.list = response.data.findDeletedItem.ls;
+ this.total = response.data.findDeletedItem.pageOut.total;
+ this.listLoading = false;
+ });
+ }
+ },
+ },
};
</script>
diff --git a/src/views/student/components/create.vue b/src/views/student/components/create.vue
index 5a8c4a2..9c776a7 100644
--- a/src/views/student/components/create.vue
+++ b/src/views/student/components/create.vue
@@ -142,7 +142,7 @@
id: "",
name: "",
},
- staffId: JSON.parse(localStorage.getItem("user")).staffs[0].id,
+ staffId: JSON.parse(localStorage.getItem("selectStaff")).id,
visibility: true,
voucherId: "", //璇惧寘/浼氬憳鍗�
},
@@ -158,7 +158,7 @@
},
getSaleManList() {
let data = {
- staffId: JSON.parse(localStorage.getItem("user")).staffs[0].id,
+ staffId: JSON.parse(localStorage.getItem("selectStaff")).id,
keyword: "",
pageIn: {
index: 0,
diff --git a/src/views/student/components/details.vue b/src/views/student/components/details.vue
index 6fd1646..298efcc 100644
--- a/src/views/student/components/details.vue
+++ b/src/views/student/components/details.vue
@@ -156,7 +156,7 @@
},
getSaleManList() {
let data = {
- staffId: JSON.parse(localStorage.getItem("user")).staffs[0].id,
+ staffId: JSON.parse(localStorage.getItem("selectStaff")).id,
keyword: "",
pageIn: {
index: 0,
diff --git a/src/views/student/index.vue b/src/views/student/index.vue
index 49be9ef..e010ca1 100644
--- a/src/views/student/index.vue
+++ b/src/views/student/index.vue
@@ -1,120 +1,126 @@
<template>
- <div class="app-container">
- <el-tabs v-model="activeName" @tab-click="handleClick">
- <el-tab-pane label="鍏ㄩ儴" name="all" />
- <el-tab-pane label="寰呯画璐�" name="pendingFees" />
- <el-tab-pane label="宸茶繃鏈�" name="expired" />
- <el-tab-pane label="宸插仠鐢�" name="deactivated" />
- </el-tabs>
- <div style="display: flex; justify-content: space-between">
- <!-- <el-button type="primary" size="small" @click="showCreate">鏂板缓瀛﹀憳</el-button> -->
- <el-button type="primary" size="small" @click="handleExport">瀵煎嚭瀛﹀憳</el-button>
- <div style="width: 500px">
- <!-- <el-date-picker v-model="dateRange" type="daterange" range-separator="鑷�" start-placeholder="寮�濮嬫棩鏈�"
+ <div class="app-container">
+ <el-tabs v-model="activeName" @tab-click="handleClick">
+ <el-tab-pane label="鍏ㄩ儴" name="all" />
+ <el-tab-pane label="寰呯画璐�" name="pendingFees" />
+ <el-tab-pane label="宸茶繃鏈�" name="expired" />
+ <el-tab-pane label="宸插仠鐢�" name="deactivated" />
+ </el-tabs>
+ <div style="display: flex; justify-content: space-between">
+ <!-- <el-button type="primary" size="small" @click="showCreate">鏂板缓瀛﹀憳</el-button> -->
+ <el-button type="primary" size="small" @click="handleExport"
+ >瀵煎嚭瀛﹀憳</el-button
+ >
+ <div style="width: 500px">
+ <!-- <el-date-picker v-model="dateRange" type="daterange" range-separator="鑷�" start-placeholder="寮�濮嬫棩鏈�"
end-placeholder="缁撴潫鏃ユ湡" value-format="yyyy-MM-dd" style="margin-right: 10px">
</el-date-picker>
<el-button type="primary" @click="handleExport2">瀵煎嚭璇惧寘</el-button> -->
- </div>
- <div style="width: 300px">
- <el-input
- placeholder="鎸夊鍚嶆悳绱�"
- v-model="data.keyword"
- class="input-with-select"
- size="small"
- >
- <el-button
- slot="append"
- icon="el-icon-search"
- @click="handleClick"
- ></el-button>
- </el-input>
- </div>
- </div>
- <div style="height: calc(100vh - 248px)">
- <el-table
- v-loading="listLoading"
- :data="list"
- element-loading-text="Loading"
- fit
- height="100%"
- >
- <el-table-column label="濮撳悕" prop="">
- <template slot-scope="scope">
- <el-link
- type="primary"
- :underline="false"
- @click="goDetails(scope.row)"
- >{{ scope.row.name }}</el-link
- >
- <!-- <el-link type="primary" :underline="false">{{
+ </div>
+ <div style="width: 300px">
+ <el-input
+ placeholder="鎸夊鍚嶆悳绱�"
+ v-model="data.keyword"
+ class="input-with-select"
+ size="small"
+ >
+ <el-button
+ slot="append"
+ icon="el-icon-search"
+ @click="handleClick"
+ ></el-button>
+ </el-input>
+ </div>
+ </div>
+ <div style="height: calc(100vh - 248px)">
+ <el-table
+ v-loading="listLoading"
+ :data="list"
+ element-loading-text="Loading"
+ fit
+ height="100%"
+ >
+ <el-table-column label="濮撳悕" prop="">
+ <template slot-scope="scope">
+ <el-link
+ type="primary"
+ :underline="false"
+ @click="goDetails(scope.row)"
+ >{{ scope.row.name }}</el-link
+ >
+ <!-- <el-link type="primary" :underline="false">{{
scope.row.name
}}</el-link> -->
- </template>
- </el-table-column>
- <el-table-column
- label="鎬у埆"
- width="80"
- v-if="activeName !== 'deactivated'"
- >
- <template slot-scope="scope">
- {{ scope.row.gender == "FEMALE" ? "濂�" : "鐢�" }}
- </template>
- </el-table-column>
- <el-table-column
- label="鎵嬫満鍙�"
- width="200"
- prop="mobile"
- v-if="activeName !== 'deactivated'"
- >
- <template slot-scope="scope">
- {{ scope.row.mobile ? scope.row.mobile : "--" }}
- </template>
- </el-table-column>
- <el-table-column
- label="鏄惁缁戝畾寰俊"
- width="200"
- v-if="activeName !== 'deactivated'"
- >
- <template slot-scope="scope">
- {{ scope.row.user ? "鏄�" : "鍚�" }}
- </template>
- </el-table-column>
- <el-table-column
- label="鎿嶄綔"
- width="200"
- v-if="activeName == 'deactivated'"
- >
- <template slot-scope="">
- <el-link type="primary" :underline="false">鍒犻櫎</el-link>
-
- <el-link type="primary" :underline="false">鎭㈠</el-link>
- </template>
- </el-table-column>
- <el-table-column
- label="鍋滅敤鏃堕棿"
- width="200"
- v-if="activeName == 'deactivated'"
- >
- <template slot-scope="scope">
- {{ scope.row.modifyTime }}
- </template>
- </el-table-column>
- </el-table>
+ </template>
+ </el-table-column>
+ <el-table-column
+ label="鎬у埆"
+ width="80"
+ v-if="activeName !== 'deactivated'"
+ >
+ <template slot-scope="scope">
+ {{ scope.row.gender == 'FEMALE' ? '濂�' : '鐢�' }}
+ </template>
+ </el-table-column>
+ <el-table-column
+ label="鎵嬫満鍙�"
+ width="200"
+ prop="mobile"
+ v-if="activeName !== 'deactivated'"
+ >
+ <template slot-scope="scope">
+ {{ scope.row.mobile ? scope.row.mobile : '--' }}
+ </template>
+ </el-table-column>
+ <el-table-column
+ label="鏄惁缁戝畾寰俊"
+ width="200"
+ v-if="activeName !== 'deactivated'"
+ >
+ <template slot-scope="scope">
+ {{ scope.row.user ? '鏄�' : '鍚�' }}
+ </template>
+ </el-table-column>
+ <el-table-column
+ label="鎿嶄綔"
+ width="200"
+ v-if="activeName == 'deactivated'"
+ >
+ <template slot-scope="">
+ <el-link type="primary" :underline="false"
+ >鍒犻櫎</el-link
+ >
+
+ <el-link type="primary" :underline="false"
+ >鎭㈠</el-link
+ >
+ </template>
+ </el-table-column>
+ <el-table-column
+ label="鍋滅敤鏃堕棿"
+ width="200"
+ v-if="activeName == 'deactivated'"
+ >
+ <template slot-scope="scope">
+ {{ scope.row.modifyTime }}
+ </template>
+ </el-table-column>
+ </el-table>
+ </div>
+ <div>
+ <el-pagination
+ @size-change="handleSizeChange"
+ @current-change="handleCurrentChange"
+ :current-page="data.pageIn.index + 1"
+ :page-sizes="[10, 20, 30, 40]"
+ :page-size="data.pageIn.size"
+ layout="total, sizes, prev, pager, next, jumper"
+ :total="total"
+ >
+ </el-pagination>
+ </div>
+ <StudentCreate ref="studentCreate" />
</div>
- <div>
- <el-pagination
- @size-change="handleSizeChange"
- @current-change="handleCurrentChange"
- :current-page="data.pageIn.index + 1"
- :page-sizes="[10, 20, 30, 40]"
- :page-size="data.pageIn.size"
- layout="total, sizes, prev, pager, next, jumper"
- :total="total"
- >
- </el-pagination>
- </div>
- <StudentCreate ref="studentCreate" />
- </div>
</template>
<script>
@@ -123,135 +129,136 @@
export default {
- filters: {
- statusFilter(status) {
- const statusMap = {
- published: "success",
- draft: "gray",
- deleted: "danger",
- };
- return statusMap[status];
- },
- },
- components: {
- StudentCreate,
- },
- data() {
- return {
- dateRange: [],
- list: null,
- listLoading: true,
- activeName: "all",
- total: 0,
- data: {
- staffId: JSON.parse(localStorage.getItem("user")).staffs[0].id,
- keyword: "",
- pageIn: {
- //鍙�夛紝濡傛灉鏄垎椤垫煡璇紝闇�瑕佸姞涓娿��
- index: 0, //蹇呴��
- size: 10, //姣忛〉鐨勫ぇ灏忋�傞粯璁�20
- sorts: {
- name: "name", //鎺掑簭瀛楁鍚嶇О
- direction: "ASC", //鎺掑簭鏂瑰悜
- },
+ filters: {
+ statusFilter(status) {
+ const statusMap = {
+ published: "success",
+ draft: "gray",
+ deleted: "danger",
+ };
+ return statusMap[status];
},
- },
- };
- },
- created() {
- // 鑾峰彇鍦板潃鏍廲ode
- // let code = this.$route.query.code;
- // if (code) {
- // if (localStorage.getItem("code")) {
- // if (code !== localStorage.getItem("code")) {
- // this.getUserDate(code);
- // }
- // } else {
- // this.getUserDate(code);
- // }
- // } else {
- // if (!localStorage.getItem("user")) {
- // this.$router.push("/login");
- // }
- // }
- if (localStorage.getItem("user")) {
- this.fetchData();
- } else {
- this.$router.push("/login");
- }
- },
- methods: {
- handleExport() {
- this.download('exportPlayer?orgId=' + JSON.parse(localStorage.getItem("user")).staffs[0].org.id, {
- }, `瀵煎嚭_${new Date().getTime()}.xlsx`)
},
- handleExport2() {
- if (this.dateRange.length == 0) {
- this.$message.warning("璇烽�夋嫨鏃ユ湡鑼冨洿");
- return;
- }
- this.download('exportReport?startDate=' + this.dateRange[0] + '&endDate=' + this.dateRange[1], {
- }, `瀵煎嚭_${new Date().getTime()}.xlsx`)
+ components: {
+ StudentCreate,
},
- fetchData() {
- this.listLoading = true;
- getData(this.data).then((response) => {
- this.list = response.data.findPlayerByStaff.ls;
- this.total = response.data.findPlayerByStaff.pageOut.total;
- this.listLoading = false;
- })
- },
- handleSizeChange(val) {
- this.data.pageIn.size = val;
- this.handleClick();
- },
- handleCurrentChange(val) {
- this.data.pageIn.index = val - 1;
- this.handleClick();
- },
- handleClick(tab, event) {
- if (this.activeName == "pendingFees") {
- this.listLoading = true;
- getRenew(this.data).then((response) => {
- this.list = response.data.findPlayerRenew.ls;
- this.total = response.data.findPlayerRenew.pageOut.total;
- this.listLoading = false;
- });
- } else if (this.activeName == "expired") {
- this.listLoading = true;
- getExpire(this.data).then((response) => {
- this.list = response.data.findPlayerExpire.ls;
- this.total = response.data.findPlayerExpire.pageOut.total;
- this.listLoading = false;
- });
- } else if (this.activeName == "all") {
- this.fetchData();
- } else if (this.activeName == "deactivated") {
- this.listLoading = true;
- let data = {
- itemType: "PLAYER",
- staffId: JSON.parse(localStorage.getItem("user")).staffs[0].id,
- keyword: this.data.keyword,
- pageIn: { ...this.data.pageIn },
+ data() {
+ return {
+ dateRange: [],
+ list: null,
+ listLoading: true,
+ activeName: "all",
+ total: 0,
+ data: {
+ staffId: JSON.parse(localStorage.getItem("selectStaff")).id,
+ keyword: "",
+ pageIn: {
+ //鍙�夛紝濡傛灉鏄垎椤垫煡璇紝闇�瑕佸姞涓娿��
+ index: 0, //蹇呴��
+ size: 10, //姣忛〉鐨勫ぇ灏忋�傞粯璁�20
+ sorts: {
+ name: "name", //鎺掑簭瀛楁鍚嶇О
+ direction: "ASC", //鎺掑簭鏂瑰悜
+ },
+ },
+ },
};
- getDeleted(data).then((response) => {
- this.list = response.data.findDeletedItem.ls;
- this.total = response.data.findDeletedItem.pageOut.total;
- this.listLoading = false;
- });
- }
},
- goDetails(row) {
- this.$router.push({
- name: "StudentDetails",
- query: {
- id: row.id,
+ created() {
+ // 鑾峰彇鍦板潃鏍廲ode
+ // let code = this.$route.query.code;
+ // if (code) {
+ // if (localStorage.getItem("code")) {
+ // if (code !== localStorage.getItem("code")) {
+ // this.getUserDate(code);
+ // }
+ // } else {
+ // this.getUserDate(code);
+ // }
+ // } else {
+ // if (!localStorage.getItem("user")) {
+ // this.$router.push("/login");
+ // }
+ // }
+ if (localStorage.getItem("user")) {
+ this.fetchData();
+ } else {
+ this.$router.push("/login");
+ }
+ },
+ methods: {
+ handleExport() {
+ this.download('exportPlayer?orgId=' + JSON.parse(localStorage.getItem("user")).staffs[0].org.id, {
+ }, `瀵煎嚭_${new Date().getTime()}.xlsx`)
},
- });
+ handleExport2() {
+ if (this.dateRange.length == 0) {
+ this.$message.warning("璇烽�夋嫨鏃ユ湡鑼冨洿");
+ return;
+ }
+ this.download('exportReport?startDate=' + this.dateRange[0] + '&endDate=' + this.dateRange[1], {
+ }, `瀵煎嚭_${new Date().getTime()}.xlsx`)
+ },
+ fetchData() {
+ this.listLoading = true;
+ getData(this.data).then((response) => {
+ this.list = response.data.findPlayerByStaff.ls;
+ this.total = response.data.findPlayerByStaff.pageOut.total;
+ this.listLoading = false;
+ })
+ },
+ handleSizeChange(val) {
+ this.data.pageIn.size = val;
+ this.handleClick();
+ },
+ handleCurrentChange(val) {
+ this.data.pageIn.index = val - 1;
+ this.handleClick();
+ },
+ handleClick(tab, event) {
+ this.data.staffId = JSON.parse(localStorage.getItem("selectStaff")).id
+ if (this.activeName == "pendingFees") {
+ this.listLoading = true;
+ getRenew(this.data).then((response) => {
+ this.list = response.data.findPlayerRenew.ls;
+ this.total = response.data.findPlayerRenew.pageOut.total;
+ this.listLoading = false;
+ });
+ } else if (this.activeName == "expired") {
+ this.listLoading = true;
+ getExpire(this.data).then((response) => {
+ this.list = response.data.findPlayerExpire.ls;
+ this.total = response.data.findPlayerExpire.pageOut.total;
+ this.listLoading = false;
+ });
+ } else if (this.activeName == "all") {
+ this.fetchData();
+ } else if (this.activeName == "deactivated") {
+ this.listLoading = true;
+ let data = {
+ itemType: "PLAYER",
+ staffId: JSON.parse(localStorage.getItem("selectStaff")).id,
+ keyword: this.data.keyword,
+ pageIn: { ...this.data.pageIn },
+ };
+ getDeleted(data).then((response) => {
+ this.list = response.data.findDeletedItem.ls;
+ this.total = response.data.findDeletedItem.pageOut.total;
+ this.listLoading = false;
+ });
+ }
+ },
+ goDetails(row) {
+ this.$router.push({
+ name: "StudentDetails",
+ query: {
+ id: row.id,
+ },
+ });
+ },
+ showCreate() {
+ this.$refs.studentCreate.showDialog();
+ },
},
- showCreate() {
- this.$refs.studentCreate.showDialog();
- },
- },
};
</script>
diff --git a/src/views/work/index.vue b/src/views/work/index.vue
index 90e2f7f..edd8024 100644
--- a/src/views/work/index.vue
+++ b/src/views/work/index.vue
@@ -149,7 +149,7 @@
activeName: "work",
total: 0,
data: {
- staffId: JSON.parse(localStorage.getItem("user")).staffs[0].id,
+ staffId: JSON.parse(localStorage.getItem("selectStaff")).id,
keyword: "",
pageIn: {
//鍙�夛紝濡傛灉鏄垎椤垫煡璇紝闇�瑕佸姞涓娿��
@@ -194,7 +194,7 @@
this.listLoading = true;
let data = {
commentTypes: ["PLAYER_REPLY"],
- staffId: JSON.parse(localStorage.getItem("user")).staffs[0].id,
+ staffId: JSON.parse(localStorage.getItem("selectStaff")).id,
keyword: this.data.keyword,
pageIn: { ...this.data.pageIn },
};
diff --git a/vue.config.js b/vue.config.js
index b94fa30..e37ff00 100644
--- a/vue.config.js
+++ b/vue.config.js
@@ -39,7 +39,7 @@
proxy: {
[process.env.VUE_APP_BASE_API]: {
// 鍖归厤鎵�鏈変互 '/dev-api'寮�澶寸殑璇锋眰璺緞
- target: "http://192.168.3.87:18081/dream", //绫讳技浜嶯ginx鍙嶅悜浠g悊
+ target: "http://localhost:18081/dream_test", //绫讳技浜嶯ginx鍙嶅悜浠g悊
changeOrigin: true, // 鏀寔璺ㄥ煙
pathRewrite: {
// 閲嶅啓璺緞: 鍘绘帀璺緞涓紑澶寸殑'/dev-api'
--
Gitblit v1.8.0