提交 306b261e 编写于 作者: xiaoping.di's avatar xiaoping.di

修改业务代码

Merge branch 'develop' of 192.168.110.53:com.pica.cloud.education.frontend/pica-admin-consultation into feature/jq
# Please enter a commit message to explain why this merge is necessary,
# especially if it merges an updated upstream into a topic branch.
#
# Lines starting with '#' will be ignored, and an empty message aborts
# the commit.
...@@ -9,7 +9,10 @@ ...@@ -9,7 +9,10 @@
> >
<template slot="empty"> <template slot="empty">
<div class="nothing-data"> <div class="nothing-data">
<img src="../../assets/image/nothingData.png" alt="" > <img
src="../../assets/image/nothingData.png"
alt=""
>
<span class="nothing-data-title">暂未找到符合条件的医生</span> <span class="nothing-data-title">暂未找到符合条件的医生</span>
</div> </div>
</template> </template>
...@@ -261,20 +264,20 @@ ...@@ -261,20 +264,20 @@
<style lang="scss" scoped> <style lang="scss" scoped>
.table-serviceSchedule { .table-serviceSchedule {
.el-table { .el-table {
.nothing-data{ .nothing-data {
display: inline-grid; display: inline-grid;
padding-top: 100px; padding-top: 100px;
img{ img {
width: 338px; width: 338px;
height: 159px; height: 159px;
} }
.nothing-data-title{ .nothing-data-title {
padding-top: 40px; padding-top: 40px;
padding-bottom: 150px; padding-bottom: 150px;
font-size: 16px; font-size: 16px;
font-family: PingFangSC-Regular, PingFang SC; font-family: PingFangSC-Regular, PingFang SC;
font-weight: 400; font-weight: 400;
color: #89888B; color: #89888b;
line-height: 22px; line-height: 22px;
} }
} }
......
...@@ -6,19 +6,23 @@ ...@@ -6,19 +6,23 @@
border-radius: 6px; border-radius: 6px;
flex: 3.8; flex: 3.8;
} }
.w2{ .w2 {
/deep/.fc-prev-button{ /deep/.fc-prev-button {
background:#f4f4f5; background: #f4f4f5;
cursor: not-allowed; cursor: not-allowed;
border:1px solid #d9d9d9; border: 1px solid #d9d9d9;
} }
} }
.w3{ .w3 {
/deep/.fc-next-button{ /deep/.fc-next-button {
background:#f4f4f5; background: #f4f4f5;
border:1px solid #d9d9d9; border: 1px solid #d9d9d9;
cursor: not-allowed; cursor: not-allowed;
} }
}
/deep/.fc-timegrid-event-harness {
// position: absolute !important;
left: 0 !important;
} }
.agment-box-left { .agment-box-left {
flex: 1; flex: 1;
...@@ -87,15 +91,19 @@ ...@@ -87,15 +91,19 @@
color: #02120f; color: #02120f;
margin-top: 19px; margin-top: 19px;
} }
.agment-head-none {
background: #fff;
pointer-events: none;
}
.agment-head-priority { .agment-head-priority {
padding-top: 20px; padding-top: 20px;
display: flex; display: flex;
justify-content:center; justify-content: center;
align-items: center; align-items: center;
.item { .item {
width: 42px; width: 42px;
height: 32px; height: 32px;
margin-right:10px; margin-right: 10px;
border: 1px solid #d9d9d9; border: 1px solid #d9d9d9;
border-radius: 8px; border-radius: 8px;
text-align: center; text-align: center;
...@@ -111,7 +119,14 @@ ...@@ -111,7 +119,14 @@
.agment-left-button { .agment-left-button {
margin-top: 34px; margin-top: 34px;
display: flex; display: flex;
justify-content: space-around; justify-content: center;
}
.reset-submit {
background: #fff;
border: 1px solid #0d9078;
font-family: PingFangSC-Regular, PingFang SC;
font-weight: 400;
color: #0d9078;
} }
/deep/.fc-timegrid-event { /deep/.fc-timegrid-event {
border-radius: 1px !important; border-radius: 1px !important;
...@@ -129,15 +144,15 @@ ...@@ -129,15 +144,15 @@
} }
/deep/.fc-header-toolbar { /deep/.fc-header-toolbar {
position: absolute; position: absolute;
right:1%; right: 1%;
top: 25px; top: 25px;
width: 20%; width: 20%;
} }
/deep/.fc-toolbar-title { /deep/.fc-toolbar-title {
font-size: 6px; font-size: 6px;
} }
/deep/.fc-toolbar-chunk{ /deep/.fc-toolbar-chunk {
display:flex; display: flex;
} }
/deep/.fc-button-primary { /deep/.fc-button-primary {
background: #fff; background: #fff;
...@@ -147,20 +162,20 @@ ...@@ -147,20 +162,20 @@
padding: 6px 16px; padding: 6px 16px;
flex-shrink: 0; flex-shrink: 0;
} }
@media screen and (min-width: 1000px) and (max-width: 1300px){ @media screen and (min-width: 1000px) and (max-width: 1300px) {
/deep/.fc-header-toolbar { /deep/.fc-header-toolbar {
right: 6%; right: 6%;
} }
.ag-left1 { .ag-left1 {
width:12% !important; width: 12% !important;
right: 18% !important; right: 18% !important;
border:1px solid red !important; border: 1px solid red !important;
} }
.ag-left2 { .ag-left2 {
width:12% !important; width: 12% !important;
right: 1% !important; right: 1% !important;
} }
} }
/deep/.fc-myCustomButton-button { /deep/.fc-myCustomButton-button {
padding: 6px 24px; padding: 6px 24px;
} }
...@@ -175,4 +190,3 @@ ...@@ -175,4 +190,3 @@
word-wrap: break-word; word-wrap: break-word;
white-space: normal; white-space: normal;
} }
<template> <template>
<div <div
v-loading="loading"
style=" style="
width: 100%; width: 100%;
height: auto; height: auto;
...@@ -11,11 +12,11 @@ ...@@ -11,11 +12,11 @@
<div <div
ref="agment" ref="agment"
class="agment-box" class="agment-box"
:class="{'w2':week==2,'w3':week==3}" :class="{ w2: week == 2, w3: week == 3 }"
> >
<FullCalendar :options="calendarOptions" /> <FullCalendar :options="calendarOptions" />
</div> </div>
<div <div
class="agment-box-left" class="agment-box-left"
:style="{ height: scrollerHeight }" :style="{ height: scrollerHeight }"
> >
...@@ -23,7 +24,7 @@ ...@@ -23,7 +24,7 @@
<div <div
v-if="week == 2" v-if="week == 2"
class="ag-left1" class="ag-left1"
/> />
<!-- v-if="week == 2" --> <!-- v-if="week == 2" -->
<div <div
v-if="week == 3" v-if="week == 3"
...@@ -47,23 +48,22 @@ ...@@ -47,23 +48,22 @@
{{ this.schedulingTypeValue.departmentName }} {{ this.schedulingTypeValue.departmentName }}
</div> </div>
</div> </div>
<div <div style="margin-top: 24px">
v-if="this.schedulingType != 3"
style="margin-top: 24px"
>
<p class="agment-head-title"> <p class="agment-head-title">
选择匹配优先级 选择匹配优先级
</p> </p>
<div class="agment-head-priority"> <div :class="this.schedulingType == 3 ? 'agment-head-none' : ''">
<p <div class="agment-head-priority">
v-for="(item, index) in createList" <p
:key="index" v-for="(item, index) in createList"
class="item" :key="index"
:class="{ active: item == currentIndex }" class="item"
@click="handlePriority(item)" :class="{ active: item == currentIndex }"
> @click="handlePriority(item)"
{{ item }} >
</p> {{ item }}
</p>
</div>
</div> </div>
</div> </div>
<div <div
...@@ -71,8 +71,8 @@ ...@@ -71,8 +71,8 @@
class="agment-left-button" class="agment-left-button"
> >
<el-button <el-button
type="primary"
round round
class="reset-submit"
style="width: 110px" style="width: 110px"
@click="resetDoctoreScheduling" @click="resetDoctoreScheduling"
> >
...@@ -82,7 +82,7 @@ ...@@ -82,7 +82,7 @@
type="primary" type="primary"
round round
style="width: 110px" style="width: 110px"
@click="saveDoctoreScheduling" @click="saveDoctoreScheduling(1)"
> >
保存 保存
</el-button> </el-button>
...@@ -110,9 +110,9 @@ ...@@ -110,9 +110,9 @@
}, },
data() { data() {
return { return {
id:'', id: '',
doctorId:'', doctorId: '',
schedulingTypeValue:{}, schedulingTypeValue: {},
schedulingType: 1, // 1 新增 2 编辑 3 查看 schedulingType: 1, // 1 新增 2 编辑 3 查看
createList: [], createList: [],
listDate: [], listDate: [],
...@@ -136,7 +136,7 @@ ...@@ -136,7 +136,7 @@
defaultDate: new Date(), defaultDate: new Date(),
datesSet: this.handleDatesSet, datesSet: this.handleDatesSet,
events: [], events: [],
slotEventOverlap: false, slotEventOverlap: true,
header: { header: {
center: 'month,agendaFourDay', // buttons for switching between views center: 'month,agendaFourDay', // buttons for switching between views
}, },
...@@ -188,25 +188,32 @@ ...@@ -188,25 +188,32 @@
}, },
workingTicketVisible: false, // 工作表票详情页面 workingTicketVisible: false, // 工作表票详情页面
scrollerHeight: 0, scrollerHeight: 0,
loading: false,
isDoIt: false,
}; };
}, },
watch: { watch: {
week(newV) { week(newV, oldV) {
console.log(newV, oldV, 'newV, oldV');
if (this.haveWeek.indexOf(newV) == -1) { if (this.haveWeek.indexOf(newV) == -1) {
this.haveWeek.push(newV); this.haveWeek.push(newV);
this.handleInitSearch(); this.handleInitSearch();
} }
if (newV !== oldV) {
this.handleInitSearch();
this.saveDoctoreScheduling(2, oldV);
}
}, },
}, },
created() { created() {
this.schedulingType = this.$route.query.type || 1; this.schedulingType = this.$route.query.type || 1;
this.id = this.$route.query.id; this.id = this.$route.query.id;
this.doctorId = this.$route.query.doctorId, (this.doctorId = this.$route.query.doctorId),
getDoctorInfo({ id: this.id }).then((res) => { getDoctorInfo({ id: this.id }).then((res) => {
if (res.code == '000000') { if (res.code == '000000') {
this.schedulingTypeValue = res.data; this.schedulingTypeValue = res.data;
this.currentIndex = res.data.level; this.currentIndex = res.data.level;
}else{ } else {
this.$toast(res.message); this.$toast(res.message);
} }
}); });
...@@ -217,6 +224,7 @@ ...@@ -217,6 +224,7 @@
}); });
}, },
mounted() { mounted() {
console.log(this.calendarOptions.events, 'this.calendarOptions.events');
this.scrollerHeight = this.$refs.agment.clientHeight + 'px'; this.scrollerHeight = this.$refs.agment.clientHeight + 'px';
// console.log(this.$refs.agment.clientHeight, 'this.$refs.agment.offsetHeight;'); // console.log(this.$refs.agment.clientHeight, 'this.$refs.agment.offsetHeight;');
this.init(); this.init();
...@@ -243,7 +251,10 @@ ...@@ -243,7 +251,10 @@
}, },
handleInitSearch(isReset) { handleInitSearch(isReset) {
if (isReset) { if (isReset) {
this.calendarOptions.events = []; this.calendarOptions.events = this.calendarOptions.events.filter(
(v) => v.week !== this.week
);
console.log(this.calendarOptions.events);
} }
const objParms = {}; const objParms = {};
objParms.doctorId = this.doctorId; objParms.doctorId = this.doctorId;
...@@ -252,6 +263,7 @@ ...@@ -252,6 +263,7 @@
// this.currentIndex = this.schedulingTypeValue.level; // this.currentIndex = this.schedulingTypeValue.level;
dutyRosterQuery(objParms).then((res) => { dutyRosterQuery(objParms).then((res) => {
if (res.code == '000000') { if (res.code == '000000') {
this.calendarOptions.events = [];
this.handleInitData(res.data); this.handleInitData(res.data);
} else { } else {
this.$toast(res.message); this.$toast(res.message);
...@@ -262,12 +274,14 @@ ...@@ -262,12 +274,14 @@
var newDate = null; var newDate = null;
if (this.schedulingType != 3) { if (this.schedulingType != 3) {
newDate = [].concat(data.noAcceptList); newDate = [].concat(data.noAcceptList);
console.log(newDate, 'newDate');
} else { } else {
var acceptList = []; var acceptList = [];
data.acceptList.forEach((item) => { data.acceptList.forEach((item) => {
item.type = 88; item.type = 88;
acceptList.push(item); acceptList.push(item);
}); });
console.log(data.acceptList, 'data.acceptList');
newDate = [].concat(acceptList, data.noAcceptList); newDate = [].concat(acceptList, data.noAcceptList);
} }
// const keyAll = ['end', 'endStr', 'id', 'start', 'startStr']; // const keyAll = ['end', 'endStr', 'id', 'start', 'startStr'];
...@@ -334,7 +348,9 @@ ...@@ -334,7 +348,9 @@
.then((_) => { .then((_) => {
console.log(_); console.log(_);
const index = this.getIdDeleteData(event.event.id); const index = this.getIdDeleteData(event.event.id);
return this.calendarOptions.events.splice(index, 1); this.isDoIt = true;
this.calendarOptions.events.splice(index, 1);
console.log(this.calendarOptions.events);
}) })
.catch((_) => { .catch((_) => {
console.log(_); console.log(_);
...@@ -365,6 +381,7 @@ ...@@ -365,6 +381,7 @@
this.calendarOptions.events.push(dataObj); this.calendarOptions.events.push(dataObj);
}, },
selectAllow(info) { selectAllow(info) {
this.isDoIt = true;
const startDay = new Date(info.start).getDay(); const startDay = new Date(info.start).getDay();
const endDay = new Date(info.end).getDay(); const endDay = new Date(info.end).getDay();
if (startDay != endDay) { if (startDay != endDay) {
...@@ -405,35 +422,53 @@ ...@@ -405,35 +422,53 @@
return indexObj; return indexObj;
}, },
handlePriority(index) { handlePriority(index) {
this.isDoIt = true;
this.currentIndex = index; this.currentIndex = index;
}, },
resetDoctoreScheduling() { resetDoctoreScheduling() {
this.handleInitSearch(true); this.handleInitSearch(true);
}, },
saveDoctoreScheduling() { saveDoctoreScheduling(type, weekV = 0) {
const objParms = {}; if (this.isDoIt) {
objParms.week = this.week; console.log(this.week, 'this.week', weekV);
objParms.workId = this.schedulingTypeValue.id; this.loading = true;
objParms.level = this.currentIndex; const objParms = {};
objParms.list = []; objParms.week = weekV ? weekV : this.week;
const data = this.calendarOptions.events; objParms.workId = this.schedulingTypeValue.id;
data.forEach((item) => { objParms.level = this.currentIndex;
if (item.week == this.week) { objParms.list = [];
const obj = {}; const data = this.calendarOptions.events;
obj.startTime = this.dateFormat('YYYY-mm-dd HH:MM:SS', item.start); console.log(data, 'data');
obj.endTime = this.dateFormat('YYYY-mm-dd HH:MM:SS', item.end); data.forEach((item) => {
objParms.list.push(obj); console.log(item.week == (weekV ? weekV : this.week));
} if (item.week == (weekV ? weekV : this.week)) {
}); console.log(item.week, this.week, weekV, 'this.week');
saveDutyRoster(objParms).then((res) => { const obj = {};
if (res.code === '000000') { obj.startTime = this.dateFormat('YYYY-mm-dd HH:MM:SS', item.start);
// this.$toast(res.message); obj.endTime = this.dateFormat('YYYY-mm-dd HH:MM:SS', item.end);
// this.handleInitSearch(true); console.log(obj, 'obj');
this.$router.go(0); objParms.list.push(obj);
} else { }
this.$toast(res.message); });
} saveDutyRoster(objParms).then((res) => {
}); if (res.code === '000000') {
// this.$toast(res.message);
// this.handleInitSearch(true);
// this.$router.go(0);
this.loading = false;
if (type == 1) {
this.$message({
message: '排班保存成功',
type: 'success',
});
}
this.isDoIt = false;
} else {
// this.$toast(res.message);
this.$message.error(res.message || '排班保存失败');
}
});
}
}, },
dateFormat(fmt, date2) { dateFormat(fmt, date2) {
const date = new Date(date2); const date = new Date(date2);
......
Markdown 格式
0% or
您添加了 0 到此讨论。请谨慎行事。
先完成此消息的编辑!
想要评论请 注册