edit
This commit is contained in:
parent
9f05d996e7
commit
411f0d4b3a
|
@ -1,11 +1,16 @@
|
||||||
<template>
|
<template>
|
||||||
<div class="navbar">
|
<div class="navbar">
|
||||||
<hamburger id="hamburger-container" :is-active="sidebar.opened" class="hamburger-container" @toggleClick="toggleSideBar" />
|
<hamburger
|
||||||
|
id="hamburger-container"
|
||||||
|
:is-active="sidebar.opened"
|
||||||
|
class="hamburger-container"
|
||||||
|
@toggleClick="toggleSideBar"
|
||||||
|
/>
|
||||||
|
|
||||||
<breadcrumb id="breadcrumb-container" class="breadcrumb-container" />
|
<breadcrumb id="breadcrumb-container" class="breadcrumb-container" />
|
||||||
|
|
||||||
<div class="right-menu">
|
<div class="right-menu">
|
||||||
<template v-if="device!=='mobile'">
|
<template v-if="device !== 'mobile'">
|
||||||
<!-- <search id="header-search" class="right-menu-item" /> -->
|
<!-- <search id="header-search" class="right-menu-item" /> -->
|
||||||
|
|
||||||
<!-- <screenfull id="screenfull" class="right-menu-item hover-effect" />
|
<!-- <screenfull id="screenfull" class="right-menu-item hover-effect" />
|
||||||
|
@ -13,26 +18,54 @@
|
||||||
<el-tooltip content="Global Size" effect="dark" placement="bottom">
|
<el-tooltip content="Global Size" effect="dark" placement="bottom">
|
||||||
<size-select id="size-select" class="right-menu-item hover-effect" />
|
<size-select id="size-select" class="right-menu-item hover-effect" />
|
||||||
</el-tooltip> -->
|
</el-tooltip> -->
|
||||||
|
|
||||||
</template>
|
</template>
|
||||||
<!-- <div class="right-menu-item hover-effect">
|
<!-- <div class="right-menu-item hover-effect">
|
||||||
<el-button @click="drawer = true">QA常见问题</el-button>
|
<el-button @click="drawer = true">QA常见问题</el-button>
|
||||||
</div>-->
|
</div>-->
|
||||||
<div v-if="$store.getters.is_anchor" class="right-menu-item hover-effect">
|
<div v-if="appointment_num" class="right-menu-item hover-effect">
|
||||||
<el-button @click="dialogWorks = true">预约待处理(10)</el-button>
|
<el-button style="color: red" @click="handleAppointemnet()"
|
||||||
|
>预约待处理({{ appointment_num }})</el-button
|
||||||
|
>
|
||||||
</div>
|
</div>
|
||||||
<div v-if="$store.getters.is_anchor" class="right-menu-item hover-effect">
|
<div v-if="$store.getters.is_anchor" class="right-menu-item hover-effect">
|
||||||
<el-button @click="dialogWorks = true">排班{{ $store.getters.name }}</el-button>
|
<el-button @click="dialogWorks = true"
|
||||||
|
>排班{{ $store.getters.name }}</el-button
|
||||||
|
>
|
||||||
</div>
|
</div>
|
||||||
<div class="right-menu-item hover-effect">
|
<div class="right-menu-item hover-effect">
|
||||||
<el-button :style="{backgroundColor:!workstatus?'#409EFF':'#fff',color:workstatus?'#979797':'#fff'}" @click="startWorks">{{ workstatus?'上班':'上班中' }}</el-button>
|
<el-button
|
||||||
<el-button :style="{backgroundColor:workstatus?'#409EFF':'#fff',color:workstatus?'#fff':'#979797'}" @click="endWorks">{{ workstatus?'下班中':'下班' }}</el-button>
|
:style="{
|
||||||
|
backgroundColor: !workstatus ? '#409EFF' : '#fff',
|
||||||
|
color: workstatus ? '#979797' : '#fff',
|
||||||
|
}"
|
||||||
|
@click="startWorks"
|
||||||
|
>{{ workstatus ? "上班" : "上班中" }}</el-button
|
||||||
|
>
|
||||||
|
<el-button
|
||||||
|
:style="{
|
||||||
|
backgroundColor: workstatus ? '#409EFF' : '#fff',
|
||||||
|
color: workstatus ? '#fff' : '#979797',
|
||||||
|
}"
|
||||||
|
@click="endWorks"
|
||||||
|
>{{ workstatus ? "下班中" : "下班" }}</el-button
|
||||||
|
>
|
||||||
</div>
|
</div>
|
||||||
|
|
||||||
<el-dropdown class="avatar-container right-menu-item hover-effect" trigger="click">
|
<el-dropdown
|
||||||
|
class="avatar-container right-menu-item hover-effect"
|
||||||
|
trigger="click"
|
||||||
|
>
|
||||||
<div class="avatar-wrapper">
|
<div class="avatar-wrapper">
|
||||||
<img :src="avatar+'?imageView2/1/w/80/h/80'" class="user-avatar" alt="">
|
<img
|
||||||
<i class="el-icon-camera" style="position: absolute;" @click.stop="showAvatar = true" />
|
:src="avatar + '?imageView2/1/w/80/h/80'"
|
||||||
|
class="user-avatar"
|
||||||
|
alt=""
|
||||||
|
/>
|
||||||
|
<i
|
||||||
|
class="el-icon-camera"
|
||||||
|
style="position: absolute"
|
||||||
|
@click.stop="showAvatar = true"
|
||||||
|
/>
|
||||||
<i class="el-icon-caret-bottom" />
|
<i class="el-icon-caret-bottom" />
|
||||||
</div>
|
</div>
|
||||||
<el-dropdown-menu slot="dropdown">
|
<el-dropdown-menu slot="dropdown">
|
||||||
|
@ -46,18 +79,12 @@
|
||||||
<el-dropdown-item>修改密码</el-dropdown-item>
|
<el-dropdown-item>修改密码</el-dropdown-item>
|
||||||
</div>
|
</div>
|
||||||
<el-dropdown-item divided @click.native="logout">
|
<el-dropdown-item divided @click.native="logout">
|
||||||
<span style="display:block;">退出登录</span>
|
<span style="display: block">退出登录</span>
|
||||||
</el-dropdown-item>
|
</el-dropdown-item>
|
||||||
</el-dropdown-menu>
|
</el-dropdown-menu>
|
||||||
</el-dropdown>
|
</el-dropdown>
|
||||||
</div>
|
</div>
|
||||||
<el-dialog
|
<el-dialog title="提示" :visible.sync="showAvatar" width="30%" center>
|
||||||
title="提示"
|
|
||||||
:visible.sync="showAvatar"
|
|
||||||
width="30%"
|
|
||||||
center
|
|
||||||
>
|
|
||||||
|
|
||||||
<el-upload
|
<el-upload
|
||||||
class="avatar-uploader"
|
class="avatar-uploader"
|
||||||
action="/admin/index/avatar"
|
action="/admin/index/avatar"
|
||||||
|
@ -65,10 +92,9 @@
|
||||||
:on-success="handleAvatarSuccess"
|
:on-success="handleAvatarSuccess"
|
||||||
:before-upload="beforeAvatarUpload"
|
:before-upload="beforeAvatarUpload"
|
||||||
>
|
>
|
||||||
<img v-if="imageUrl" :src="imageUrl" class="avatar" alt="">
|
<img v-if="imageUrl" :src="imageUrl" class="avatar" alt="" />
|
||||||
<i v-else class="el-icon-plus avatar-uploader-icon" />
|
<i v-else class="el-icon-plus avatar-uploader-icon" />
|
||||||
</el-upload>
|
</el-upload>
|
||||||
|
|
||||||
</el-dialog>
|
</el-dialog>
|
||||||
|
|
||||||
<el-dialog title="修改密码" :visible.sync="dialogPWD">
|
<el-dialog title="修改密码" :visible.sync="dialogPWD">
|
||||||
|
@ -88,7 +114,7 @@
|
||||||
|
|
||||||
<el-dialog title="排班" width="90%" :visible.sync="dialogWorks">
|
<el-dialog title="排班" width="90%" :visible.sync="dialogWorks">
|
||||||
<el-form :rules="rules">
|
<el-form :rules="rules">
|
||||||
<el-row style="margin-bottom: 10px;">
|
<el-row style="margin-bottom: 10px">
|
||||||
<el-col :span="24">
|
<el-col :span="24">
|
||||||
<el-date-picker
|
<el-date-picker
|
||||||
v-model="times[0]"
|
v-model="times[0]"
|
||||||
|
@ -98,7 +124,7 @@
|
||||||
/>
|
/>
|
||||||
</el-col>
|
</el-col>
|
||||||
</el-row>
|
</el-row>
|
||||||
<el-row style="margin-bottom: 10px;">
|
<el-row style="margin-bottom: 10px">
|
||||||
<el-col :span="24">
|
<el-col :span="24">
|
||||||
<el-date-picker
|
<el-date-picker
|
||||||
v-model="times[1]"
|
v-model="times[1]"
|
||||||
|
@ -108,10 +134,15 @@
|
||||||
/>
|
/>
|
||||||
</el-col>
|
</el-col>
|
||||||
</el-row>
|
</el-row>
|
||||||
<el-row style="margin-bottom: 10px;">
|
<el-row style="margin-bottom: 10px">
|
||||||
<el-col :span="24">
|
<el-col :span="24">
|
||||||
<el-checkbox-group v-model="os">
|
<el-checkbox-group v-model="os">
|
||||||
<el-checkbox v-for="(v,i,k) in $store.getters.oss" :key="k" :label="i">{{ v }}</el-checkbox>
|
<el-checkbox
|
||||||
|
v-for="(v, i, k) in $store.getters.oss"
|
||||||
|
:key="k"
|
||||||
|
:label="i"
|
||||||
|
>{{ v }}</el-checkbox
|
||||||
|
>
|
||||||
</el-checkbox-group>
|
</el-checkbox-group>
|
||||||
</el-col>
|
</el-col>
|
||||||
</el-row>
|
</el-row>
|
||||||
|
@ -129,10 +160,21 @@
|
||||||
:modal="false"
|
:modal="false"
|
||||||
>
|
>
|
||||||
<div v-clickoutside="handleClose" class="drawer">
|
<div v-clickoutside="handleClose" class="drawer">
|
||||||
<el-button v-if="QaShow" type="success" @click="drawer = false">关 闭</el-button>
|
<el-button v-if="QaShow" type="success" @click="drawer = false"
|
||||||
<el-button v-if="!QaShow" type="success" @click="QaShow = true">返 回</el-button>
|
>关 闭</el-button
|
||||||
|
>
|
||||||
|
<el-button v-if="!QaShow" type="success" @click="QaShow = true"
|
||||||
|
>返 回</el-button
|
||||||
|
>
|
||||||
<div v-if="QaShow" class="mod">
|
<div v-if="QaShow" class="mod">
|
||||||
<el-button v-for="item in getQaCityList" :key="item.city_id" style="width: 150px;" size="medium" type="primary" @click="clickQaList(item)">
|
<el-button
|
||||||
|
v-for="item in getQaCityList"
|
||||||
|
:key="item.city_id"
|
||||||
|
style="width: 150px"
|
||||||
|
size="medium"
|
||||||
|
type="primary"
|
||||||
|
@click="clickQaList(item)"
|
||||||
|
>
|
||||||
{{ item.city_name }}
|
{{ item.city_name }}
|
||||||
</el-button>
|
</el-button>
|
||||||
</div>
|
</div>
|
||||||
|
@ -148,17 +190,17 @@
|
||||||
</template>
|
</template>
|
||||||
|
|
||||||
<script>
|
<script>
|
||||||
import { mapGetters } from 'vuex'
|
import { mapGetters } from "vuex";
|
||||||
import Breadcrumb from '@/components/Breadcrumb'
|
import Breadcrumb from "@/components/Breadcrumb";
|
||||||
import Hamburger from '@/components/Hamburger'
|
import Hamburger from "@/components/Hamburger";
|
||||||
import Screenfull from '@/components/Screenfull'
|
import Screenfull from "@/components/Screenfull";
|
||||||
import SizeSelect from '@/components/SizeSelect'
|
import SizeSelect from "@/components/SizeSelect";
|
||||||
import Search from '@/components/HeaderSearch'
|
import Search from "@/components/HeaderSearch";
|
||||||
import { color } from 'echarts/lib/export'
|
import { color } from "echarts/lib/export";
|
||||||
import sidebar from '@/layout/components/Sidebar/index.vue'
|
import sidebar from "@/layout/components/Sidebar/index.vue";
|
||||||
import avatar from 'element-ui/packages/avatar'
|
import avatar from "element-ui/packages/avatar";
|
||||||
import {getQaCityList, getQaList} from '@/api/qa'
|
import { getQaCityList, getQaList } from "@/api/qa";
|
||||||
import clickoutside from 'element-ui/src/utils/clickoutside'
|
import clickoutside from "element-ui/src/utils/clickoutside";
|
||||||
export default {
|
export default {
|
||||||
directives: { clickoutside },
|
directives: { clickoutside },
|
||||||
components: {
|
components: {
|
||||||
|
@ -167,20 +209,22 @@ export default {
|
||||||
Screenfull,
|
Screenfull,
|
||||||
SizeSelect,
|
SizeSelect,
|
||||||
// eslint-disable-next-line vue/no-unused-Wangeditor
|
// eslint-disable-next-line vue/no-unused-Wangeditor
|
||||||
Search
|
Search,
|
||||||
|
},
|
||||||
|
props: {
|
||||||
|
appointment_num: {
|
||||||
|
type: Number,
|
||||||
|
default: 0,
|
||||||
|
},
|
||||||
},
|
},
|
||||||
computed: {
|
computed: {
|
||||||
avatar() {
|
avatar() {
|
||||||
return avatar
|
return avatar;
|
||||||
},
|
},
|
||||||
sidebar() {
|
sidebar() {
|
||||||
return sidebar
|
return sidebar;
|
||||||
},
|
},
|
||||||
...mapGetters([
|
...mapGetters(["sidebar", "avatar", "device"]),
|
||||||
'sidebar',
|
|
||||||
'avatar',
|
|
||||||
'device'
|
|
||||||
])
|
|
||||||
},
|
},
|
||||||
// eslint-disable-next-line vue/order-in-Wangeditor
|
// eslint-disable-next-line vue/order-in-Wangeditor
|
||||||
data() {
|
data() {
|
||||||
|
@ -198,112 +242,143 @@ export default {
|
||||||
getQaLists: [],
|
getQaLists: [],
|
||||||
times: [],
|
times: [],
|
||||||
form: {
|
form: {
|
||||||
oldpwd: '',
|
oldpwd: "",
|
||||||
pwd: ''
|
pwd: "",
|
||||||
},
|
},
|
||||||
QaInfo: {
|
QaInfo: {
|
||||||
title: '',
|
title: "",
|
||||||
content: ''
|
content: "",
|
||||||
},
|
},
|
||||||
rules: {
|
rules: {
|
||||||
oldpwd: [
|
oldpwd: [
|
||||||
{ required: true, message: '请输入旧密码', trigger: 'blur' },
|
{ required: true, message: "请输入旧密码", trigger: "blur" },
|
||||||
{ min: 6, max: 20, message: '长度在 6 到 20 个字符', trigger: 'blur' }
|
{
|
||||||
|
min: 6,
|
||||||
|
max: 20,
|
||||||
|
message: "长度在 6 到 20 个字符",
|
||||||
|
trigger: "blur",
|
||||||
|
},
|
||||||
],
|
],
|
||||||
pwd: [
|
pwd: [
|
||||||
{ required: true, message: '请输入密码', trigger: 'blur' },
|
{ required: true, message: "请输入密码", trigger: "blur" },
|
||||||
{ min: 6, max: 20, message: '长度在 6 到 20 个字符', trigger: 'blur' }
|
{
|
||||||
]
|
min: 6,
|
||||||
}
|
max: 20,
|
||||||
}
|
message: "长度在 6 到 20 个字符",
|
||||||
|
trigger: "blur",
|
||||||
|
},
|
||||||
|
],
|
||||||
|
},
|
||||||
|
};
|
||||||
},
|
},
|
||||||
created() {
|
created() {
|
||||||
this.getworkstatus()
|
this.getworkstatus();
|
||||||
getQaCityList().then(res => {
|
getQaCityList().then((res) => {
|
||||||
this.getQaCityList = res.data
|
this.getQaCityList = res.data;
|
||||||
})
|
});
|
||||||
},
|
},
|
||||||
methods: {
|
methods: {
|
||||||
color,
|
color,
|
||||||
toggleSideBar() {
|
toggleSideBar() {
|
||||||
this.$store.dispatch('app/toggleSideBar')
|
this.$store.dispatch("app/toggleSideBar");
|
||||||
},
|
},
|
||||||
handleClose() {
|
handleClose() {
|
||||||
this.drawer = false
|
this.drawer = false;
|
||||||
this.QaShow = true
|
this.QaShow = true;
|
||||||
},
|
},
|
||||||
clickQaList(data) {
|
clickQaList(data) {
|
||||||
getQaList(data.city_id).then(res => {
|
getQaList(data.city_id).then((res) => {
|
||||||
this.getQaLists = res.data
|
this.getQaLists = res.data;
|
||||||
})
|
});
|
||||||
console.log(JSON.stringify(this.getQaLists))
|
console.log(JSON.stringify(this.getQaLists));
|
||||||
if (!this.getQaLists) {
|
if (!this.getQaLists) {
|
||||||
return this.$message({
|
return this.$message({
|
||||||
message: '暂无QA问题',
|
message: "暂无QA问题",
|
||||||
type: 'warning',
|
type: "warning",
|
||||||
duration: 1500
|
duration: 1500,
|
||||||
})
|
});
|
||||||
}
|
}
|
||||||
this.QaShow = false
|
this.QaShow = false;
|
||||||
},
|
},
|
||||||
async logout() {
|
async logout() {
|
||||||
await this.$store.dispatch('user/logout')
|
await this.$store.dispatch("user/logout");
|
||||||
this.$router.push(`/login?redirect=${this.$route.fullPath}`)
|
this.$router.push(`/login?redirect=${this.$route.fullPath}`);
|
||||||
},
|
},
|
||||||
handleAvatarSuccess(res, file) {
|
handleAvatarSuccess(res, file) {
|
||||||
this.imageUrl = URL.createObjectURL(file.raw)
|
this.imageUrl = URL.createObjectURL(file.raw);
|
||||||
},
|
},
|
||||||
pwd() {
|
pwd() {
|
||||||
this.$axios.post('/admin/admin/pwd', this.form).then(res => {
|
this.$axios
|
||||||
this.dialogPWD = false
|
.post("/admin/admin/pwd", this.form)
|
||||||
this.form = {}
|
.then((res) => {
|
||||||
}).catch(err => {
|
this.dialogPWD = false;
|
||||||
console.log(err)
|
this.form = {};
|
||||||
})
|
})
|
||||||
|
.catch((err) => {
|
||||||
|
console.log(err);
|
||||||
|
});
|
||||||
},
|
},
|
||||||
saveWork() {
|
saveWork() {
|
||||||
this.$axios.post('/admin/work/save2', { times: this.times, os: this.os }).then(res => {
|
this.$axios
|
||||||
console.log(res)
|
.post("/admin/work/save2", { times: this.times, os: this.os })
|
||||||
this.$message({
|
.then((res) => {
|
||||||
showClose: true,
|
console.log(res);
|
||||||
message: '添加成功'
|
this.$message({
|
||||||
|
showClose: true,
|
||||||
|
message: "添加成功",
|
||||||
|
});
|
||||||
|
this.dialogWorks = false;
|
||||||
})
|
})
|
||||||
this.dialogWorks = false
|
.catch((err) => {
|
||||||
}).catch(err => {
|
console.log(err);
|
||||||
console.log(err)
|
});
|
||||||
})
|
|
||||||
},
|
},
|
||||||
startWorks() {
|
startWorks() {
|
||||||
this.$axios.post('/admin/admin/editInfo', { is_order: 1 }).then(res => {
|
this.$axios
|
||||||
console.log(res)
|
.post("/admin/admin/editInfo", { is_order: 1 })
|
||||||
this.$message({
|
.then((res) => {
|
||||||
showClose: true,
|
console.log(res);
|
||||||
message: '上班成功'
|
this.$message({
|
||||||
|
showClose: true,
|
||||||
|
message: "上班成功",
|
||||||
|
});
|
||||||
|
this.getworkstatus();
|
||||||
})
|
})
|
||||||
this.getworkstatus()
|
.catch((err) => {
|
||||||
}).catch(err => {
|
console.log(err);
|
||||||
console.log(err)
|
});
|
||||||
})
|
|
||||||
},
|
},
|
||||||
endWorks() {
|
endWorks() {
|
||||||
this.$axios.post('/admin/admin/editInfo', { is_order: 0 }).then(res => {
|
this.$axios
|
||||||
console.log(res)
|
.post("/admin/admin/editInfo", { is_order: 0 })
|
||||||
this.$message({
|
.then((res) => {
|
||||||
showClose: true,
|
console.log(res);
|
||||||
message: '下班成功'
|
this.$message({
|
||||||
|
showClose: true,
|
||||||
|
message: "下班成功",
|
||||||
|
});
|
||||||
|
this.getworkstatus();
|
||||||
})
|
})
|
||||||
this.getworkstatus()
|
.catch((err) => {
|
||||||
}).catch(err => {
|
console.log(err);
|
||||||
console.log(err)
|
});
|
||||||
})
|
|
||||||
},
|
},
|
||||||
getworkstatus() {
|
getworkstatus() {
|
||||||
this.$axios.post('/admin/work/getworkstatus', { id: this.id }).then(res => {
|
this.$axios
|
||||||
console.log(res)
|
.post("/admin/work/getworkstatus", { id: this.id })
|
||||||
this.workstatus = res.data
|
.then((res) => {
|
||||||
}).catch(err => {
|
console.log(res);
|
||||||
console.log(err)
|
this.workstatus = res.data;
|
||||||
})
|
})
|
||||||
|
.catch((err) => {
|
||||||
|
console.log(err);
|
||||||
|
});
|
||||||
|
},
|
||||||
|
handleAppointemnet() {
|
||||||
|
this.$router.push({
|
||||||
|
path: "/order/index/",
|
||||||
|
query: { appointment_status: "1", refresh: Date.now() },
|
||||||
|
});
|
||||||
},
|
},
|
||||||
beforeAvatarUpload(file) {
|
beforeAvatarUpload(file) {
|
||||||
/*const isJPG = file.type === 'image/jpeg'
|
/*const isJPG = file.type === 'image/jpeg'
|
||||||
|
@ -316,29 +391,29 @@ export default {
|
||||||
this.$message.error('上传头像图片大小不能超过 2MB!')
|
this.$message.error('上传头像图片大小不能超过 2MB!')
|
||||||
}
|
}
|
||||||
return isJPG && isLt2M*/
|
return isJPG && isLt2M*/
|
||||||
}
|
},
|
||||||
}
|
},
|
||||||
}
|
};
|
||||||
</script>
|
</script>
|
||||||
|
|
||||||
<style lang="scss" scoped>
|
<style lang="scss" scoped>
|
||||||
.drawer{
|
.drawer {
|
||||||
padding: 20px 0 0 20px;
|
padding: 20px 0 0 20px;
|
||||||
width: 100%;
|
width: 100%;
|
||||||
height: 100vh;
|
height: 100vh;
|
||||||
}
|
}
|
||||||
.mod{
|
.mod {
|
||||||
margin-top: 50px;
|
margin-top: 50px;
|
||||||
}
|
}
|
||||||
.ver{
|
.ver {
|
||||||
margin-top: 30px;
|
margin-top: 30px;
|
||||||
color: #6c6f71;
|
color: #6c6f71;
|
||||||
&_title{
|
&_title {
|
||||||
font-size: 16px;
|
font-size: 16px;
|
||||||
font-weight: bold;
|
font-weight: bold;
|
||||||
margin-bottom: 12px;
|
margin-bottom: 12px;
|
||||||
}
|
}
|
||||||
&_content{
|
&_content {
|
||||||
line-height: 26px;
|
line-height: 26px;
|
||||||
font-size: 15px;
|
font-size: 15px;
|
||||||
padding-bottom: 10px;
|
padding-bottom: 10px;
|
||||||
|
@ -351,18 +426,18 @@ export default {
|
||||||
overflow: hidden;
|
overflow: hidden;
|
||||||
position: relative;
|
position: relative;
|
||||||
background: #fff;
|
background: #fff;
|
||||||
box-shadow: 0 1px 4px rgba(0,21,41,.08);
|
box-shadow: 0 1px 4px rgba(0, 21, 41, 0.08);
|
||||||
|
|
||||||
.hamburger-container {
|
.hamburger-container {
|
||||||
line-height: 46px;
|
line-height: 46px;
|
||||||
height: 100%;
|
height: 100%;
|
||||||
float: left;
|
float: left;
|
||||||
cursor: pointer;
|
cursor: pointer;
|
||||||
transition: background .3s;
|
transition: background 0.3s;
|
||||||
-webkit-tap-highlight-color:transparent;
|
-webkit-tap-highlight-color: transparent;
|
||||||
|
|
||||||
&:hover {
|
&:hover {
|
||||||
background: rgba(0, 0, 0, .025)
|
background: rgba(0, 0, 0, 0.025);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -394,10 +469,10 @@ export default {
|
||||||
|
|
||||||
&.hover-effect {
|
&.hover-effect {
|
||||||
cursor: pointer;
|
cursor: pointer;
|
||||||
transition: background .3s;
|
transition: background 0.3s;
|
||||||
|
|
||||||
&:hover {
|
&:hover {
|
||||||
background: rgba(0, 0, 0, .025)
|
background: rgba(0, 0, 0, 0.025);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
@ -436,7 +511,7 @@ export default {
|
||||||
overflow: hidden;
|
overflow: hidden;
|
||||||
}
|
}
|
||||||
.avatar-uploader .el-upload:hover {
|
.avatar-uploader .el-upload:hover {
|
||||||
border-color: #409EFF;
|
border-color: #409eff;
|
||||||
}
|
}
|
||||||
.avatar-uploader-icon {
|
.avatar-uploader-icon {
|
||||||
border: 1px solid #979797;
|
border: 1px solid #979797;
|
||||||
|
|
|
@ -8,7 +8,7 @@
|
||||||
<sidebar class="sidebar-container" />
|
<sidebar class="sidebar-container" />
|
||||||
<div :class="{ hasTagsView: needTagsView }" class="main-container">
|
<div :class="{ hasTagsView: needTagsView }" class="main-container">
|
||||||
<div :class="{ 'fixed-header': fixedHeader }">
|
<div :class="{ 'fixed-header': fixedHeader }">
|
||||||
<navbar />
|
<navbar :appointment_num="appointment_num" />
|
||||||
<tags-view v-if="needTagsView" />
|
<tags-view v-if="needTagsView" />
|
||||||
</div>
|
</div>
|
||||||
<app-main />
|
<app-main />
|
||||||
|
@ -57,6 +57,7 @@ export default {
|
||||||
data() {
|
data() {
|
||||||
return {
|
return {
|
||||||
iswork: null,
|
iswork: null,
|
||||||
|
appointment_num: 0,
|
||||||
};
|
};
|
||||||
},
|
},
|
||||||
created() {
|
created() {
|
||||||
|
@ -66,6 +67,11 @@ export default {
|
||||||
this.$axios
|
this.$axios
|
||||||
.get("/admin/index/iswork")
|
.get("/admin/index/iswork")
|
||||||
.then((res) => {
|
.then((res) => {
|
||||||
|
// console.log(res);
|
||||||
|
|
||||||
|
this.appointment_num = res.data.appointment_num;
|
||||||
|
console.log(this.appointment_num);
|
||||||
|
|
||||||
if (res && res.data.new > 0) {
|
if (res && res.data.new > 0) {
|
||||||
this.$notify({
|
this.$notify({
|
||||||
title: "新的订单提醒",
|
title: "新的订单提醒",
|
||||||
|
@ -133,7 +139,7 @@ export default {
|
||||||
.catch((err) => {
|
.catch((err) => {
|
||||||
console.log(err);
|
console.log(err);
|
||||||
});
|
});
|
||||||
}, 30000);
|
}, 3000);
|
||||||
},
|
},
|
||||||
methods: {
|
methods: {
|
||||||
handleClickOutside() {
|
handleClickOutside() {
|
||||||
|
|
|
@ -171,12 +171,13 @@
|
||||||
同步
|
同步
|
||||||
</el-button>
|
</el-button>
|
||||||
|
|
||||||
<el-button v-if="scope.row.appointment_status == 1"
|
<el-button
|
||||||
|
v-if="scope.row.appointment_status == 1"
|
||||||
size="small"
|
size="small"
|
||||||
icon="el-icon-edit"
|
icon="el-icon-edit"
|
||||||
@click="onOneClickYyHandle(scope.row)"
|
@click="onOneClickYyHandle(scope.row)"
|
||||||
>
|
>
|
||||||
预约已处理
|
预约处理
|
||||||
</el-button>
|
</el-button>
|
||||||
</el-button-group>
|
</el-button-group>
|
||||||
</template>
|
</template>
|
||||||
|
@ -249,7 +250,13 @@
|
||||||
}"
|
}"
|
||||||
type="primary"
|
type="primary"
|
||||||
>
|
>
|
||||||
{{ scope.row.appointment_status == 1 ? "已预约(未处理)" : (scope.row.appointment_status == 2 ? "已预约(已处理)":"未预约") }}
|
{{
|
||||||
|
scope.row.appointment_status == 1
|
||||||
|
? "已预约(未处理)"
|
||||||
|
: scope.row.appointment_status == 2
|
||||||
|
? "已预约(已处理)"
|
||||||
|
: "未预约"
|
||||||
|
}}
|
||||||
</div>
|
</div>
|
||||||
</template>
|
</template>
|
||||||
</el-table-column>
|
</el-table-column>
|
||||||
|
@ -699,6 +706,7 @@ export default {
|
||||||
this.setQuery("status");
|
this.setQuery("status");
|
||||||
this.setQuery("os_status");
|
this.setQuery("os_status");
|
||||||
this.setQuery("times");
|
this.setQuery("times");
|
||||||
|
this.setQuery("appointment_status");
|
||||||
// await this.getList();
|
// await this.getList();
|
||||||
// if (!this.$route.query.id) {
|
// if (!this.$route.query.id) {
|
||||||
// await this.setOneClickRepair();
|
// await this.setOneClickRepair();
|
||||||
|
|
Loading…
Reference in New Issue