Browse Source

项目预约冗余代码删除

360view
bianyaqi 2 years ago
parent
commit
a100a3e230
  1. 272
      src/page-subspecialty/views/modules/nurseManagement/reservation/schedule/doctor-schedule.vue
  2. 1
      src/page-subspecialty/views/modules/nurseManagement/reservation/schedule/number-detail-manage.vue

272
src/page-subspecialty/views/modules/nurseManagement/reservation/schedule/doctor-schedule.vue

@ -1,6 +1,6 @@
<template>
<div class="doctor-schedule">
<div class="date-head" :class="title=='plus' ? '' : 'data-head-fixed'">
<div class="date-head data-head-fixed">
<div class="date-head-right">
<el-button-group style="margin-right:10px;">
<el-button plain icon="el-icon-arrow-left" size="small" @click="weekPre">上周</el-button>
@ -18,12 +18,10 @@
@change="pickDateChange"
/>
</div>
<el-button v-if="title !=='plus'" type="primary" size="small" icon="el-icon-s-tools">{{ sortName }}</el-button>
</div>
<div class="doctor-schedule-content">
<div v-loading="pageLoading" class="doctor-schedule-content">
<el-row class="weeks">
<el-col v-if="title !=='plus' && sortName==='保存设置'" :span="1" class="moren">设为默认</el-col>
<el-col :span="title ==='plus' && sortName==='批量设置' ? 3 : 2" class="doctor-list-text">检查项目</el-col>
<el-col :span="3" class="doctor-list-text">检查项目</el-col>
<el-col
v-for="(day, index) in days"
:key="index"
@ -45,26 +43,15 @@
</el-row>
<div class="scroll-list">
<el-row v-for="(item,index) in doctorList" :key="index" :gutter="10" class="content">
<el-col v-if="title !=='plus' && sortName==='保存设置'" :span="1" class="moren">
<el-switch :value="item.isDefault===1 ? true : false" @change="switchChange(index,$event)" />
</el-col>
<el-col :span="title ==='plus' && sortName==='批量设置' ? 3 : 2" class="doctor-name">
<el-col :span="3" class="doctor-name">
<div class="doctorList">
<div class="list">
<!-- <div class="list-img">
<img src="@/assets/img/avatar.png" alt="">
</div> -->
<p>{{ item.itemName }}</p>
</div>
</div>
</el-col>
<el-col v-for="(weekInfoItem,weekInfoIndex) in item.weekInfo" :key="weekInfoIndex" :span="3">
<div class="surplu-num">
<div v-show="sortName==='保存设置'" class="surplu-num-morning">
<div class="morning">
<el-input v-model="weekInfoItem.morning.maxNumber" placeholder="" @change="changeInput($event,index,weekInfoIndex,'morning')" />
</div>
</div>
<div v-show="sortName==='预约配置'" class="surplu-num-morning">
<!-- 上午预定后 -->
<div
@ -98,24 +85,12 @@
<p>已约</p>
<p>{{ weekInfoItem.morning.orderNum }} / {{ weekInfoItem.morning.maxNumber }}</p>
</div>
<!-- 判断上午号是否有剩余加号显示暂时不用v-show="currentIndex===index && currentWeekIndex===weekInfoIndex && mouseMoveIsShow && showMorningAfterText==='morning' && weekInfoItem.morning.surplusNum>0" -->
<div
v-show="currentIndex===index && currentWeekIndex===weekInfoIndex && mouseMoveIsShow && showMorningAfterText==='morning' && title !=='plus'"
v-show="currentIndex===index && currentWeekIndex===weekInfoIndex && mouseMoveIsShow && showMorningAfterText==='morning'"
class="show-plus-one"
>
<p @click="numberMangeClick(item,weekInfoItem,1,index,weekInfoIndex)">详情</p>
</div>
<div
v-show="currentIndex===index && currentWeekIndex===weekInfoIndex && mouseMoveIsShow && showMorningAfterText==='morning'&& title =='plus'"
class="show-plus-two"
>
<i class="el-icon-plus" @click="setOperaTImeClick(item,weekInfoItem,1,'设置时间')" />
</div>
</div>
</div>
<div v-show="sortName==='保存设置'" class="surplu-num-after">
<div class="after">
<el-input v-model="weekInfoItem.after.maxNumber" placeholder="" @change="changeInput($event,index,weekInfoIndex,'after')" />
</div>
</div>
<div v-show="sortName==='预约配置'" class="surplu-num-after">
@ -152,19 +127,12 @@
<p>已约</p>
<p>{{ weekInfoItem.after.orderNum }} / {{ weekInfoItem.after.maxNumber }}</p>
</div>
<!-- 判断下午好是否有剩余加号显示暂时不用v-show="currentIndex===index && currentWeekIndex===weekInfoIndex && mouseMoveIsShow && showMorningAfterText==='after' && weekInfoItem.after.surplusNum>0 -->
<div
v-show="currentIndex===index && currentWeekIndex===weekInfoIndex && mouseMoveIsShow && showMorningAfterText==='after' && title !=='plus'"
v-show="currentIndex===index && currentWeekIndex===weekInfoIndex && mouseMoveIsShow && showMorningAfterText==='after'"
class="show-plus-one"
>
<p @click="numberMangeClick(item,weekInfoItem,2,index,weekInfoIndex)">详情</p>
</div>
<div
v-show="currentIndex===index && currentWeekIndex===weekInfoIndex && mouseMoveIsShow && showMorningAfterText==='after' && title =='plus'"
class="show-plus-two"
>
<i class="el-icon-plus" @click="setOperaTImeClick(item,weekInfoItem,2,'设置时间')" />
</div>
</div>
</div>
</div>
@ -176,7 +144,6 @@
v-if="numberManageVisible"
ref="numberManageRef"
:patients-list="curPatients"
:source-flag="sourceFlag"
:can-add="canAdd"
@closeDialog="numberManageVisible=false"
@getScheduleList="getScheduleList"
@ -192,29 +159,6 @@ import { dateFilterTwo } from '@/filters'
import NumberDetailManage from '@/page-subspecialty/views/modules/nurseManagement/reservation/schedule/number-detail-manage.vue'
/* eslint-disable */
export default {
props: {
dateValue: {
type: String,
default: moment(new Date()).format("YYYY-MM-DD")
},
timeValue: {
type: String,
default: "00:00"
},
title: {
type: String,
default: ''
},
titleButton: {
type: String,
default: ''
},
// 1: 2: type----- 1:2:
sourceFlag: {
type: Number,
default: null
},
},
components: {
NumberDetailManage,
},
@ -226,131 +170,23 @@ export default {
currentDay: 1, //
currentWeek: 1, //
days: [],
value1: "",
tabIndex: null,
newDate: moment(new Date()).format("YYYY-MM-DD"),
tabTimeIndex: 4,
times: [
{ time: "00:00:00~06:00:00", label: "00:00~06:00" },
{ time: "06:00:00~12:00:00", label: "06:00~12:00" },
{ time: "12:00:00~18:00:00", label: "12:00~18:00" },
{ time: "18:00:00~24:00:00", label: "18:00~24:00" },
{ time: "00:00:00~24:00:00", label: "今日全部" }
],
numberManageVisible: false,
curPatients: [],
curIndex: '',
curWeekInfoIndex:"",
curTime: '',
canAdd: true,
setOperaTimeVisible:false,
mouseMoveIsShow: false,
currentIndex: null,
currentWeekIndex: null,
showMorningAfterText: '',
selectedShow: false,
doctorList:[],
doctorList1: [{
doctorCode: "liucan",
doctorName: "刘灿",
weekInfo: [{
after: {
maxNumber: 0,
orderNum: 10,
scheduledPatients: [],
},
morning: {
maxNumber: 0,
orderNum: 5,
scheduledPatients: [],
},
date: "2023-04-03",
weekName: "周一",
},{
after: {
maxNumber: 0,
orderNum: 0,
scheduledPatients: [],
},
morning: {
maxNumber: 0,
orderNum: 0,
scheduledPatients: [],
},
date: "2023-04-04",
weekName: "周二",
},{
after: {
maxNumber: 0,
orderNum: 0,
scheduledPatients: [],
},
morning: {
maxNumber: 0,
orderNum: 0,
scheduledPatients: [],
},
date: "2023-04-05",
weekName: "周三",
},{
after: {
maxNumber: 0,
orderNum: 0,
scheduledPatients: [],
},
morning: {
maxNumber: 0,
orderNum: 0,
scheduledPatients: [],
},
date: "2023-04-06",
weekName: "周四",
},{
after: {
maxNumber: 10,
orderNum: 0,
scheduledPatients: [],
},
morning: {
maxNumber: 10,
orderNum: 0,
scheduledPatients: [],
},
date: "2023-04-07",
weekName: "周五",
},{
after: {
maxNumber: 0,
orderNum: 0,
scheduledPatients: [],
},
morning: {
maxNumber: 0,
orderNum: 0,
scheduledPatients: [],
},
date: "2023-04-08",
weekName: "周六",
},{
after: {
maxNumber: 0,
orderNum: 0,
scheduledPatients: [],
},
morning: {
maxNumber: 0,
orderNum: 0,
scheduledPatients: [],
},
date: "2023-04-09",
weekName: "周日",
}]
}],
patientList: [],
rowListObj: {},
operaTypeList: [],
sortName:'预约配置',
projectList:[]
};
},
filters: {
@ -385,18 +221,6 @@ export default {
this.getScheduleList()
},
methods: {
changeInput(e,index,weekInfoIndex,morOrAft) {
var pattern = /^[0-9][0-9]*$/
var regex=/^[0]+/
this.doctorList[index].weekInfo[weekInfoIndex][morOrAft].maxNumber = e.replace(regex,"");
if (!pattern.test(e)) {
this.$message({
message: '只能输入正整数哦',
type: 'warning'
})
this.doctorList[index].weekInfo[weekInfoIndex][morOrAft].maxNumber = 0
}
},
//
async getScheduleList() {
this.pageLoading = true
@ -509,19 +333,6 @@ export default {
this.newDate = dateFilterTwo(this.days[0])
this.sortName === '预约配置' ? this.getScheduleList() : this.getBatchNumSet()
},
//
pickPre(year, month) {
const d = new Date(this.formatDate(year, month, 1));
d.setDate(0);
this.initData(this.formatDate(d.getFullYear(), d.getMonth() + 1, 1));
},
//
pickNext(year, month) {
const d = new Date(this.formatDate(year, month, 1));
d.setDate(35);
this.initData(this.formatDate(d.getFullYear(), d.getMonth() + 1, 1));
},
//
pick(date, index) {
@ -533,18 +344,6 @@ export default {
// this.formatDate(date.getFullYear(), date.getMonth() + 1, date.getDate())
// );
},
pickTime(time, index) {
// console.log('time: ', time);
let timeArr = [];
timeArr.push(_.split(time.time, "~"));
// console.log("timeArr: ", timeArr);
this.$emit("timeValue", _.join(timeArr), "");
// console.log("index: ", index);
this.tabTimeIndex = index;
// alert(
// this.formatDate(date.getFullYear(), date.getMonth() + 1, date.getDate())
// );
},
//
mouseoverHandle(index, weekInfoIndex, weekInfoItem, showMorningAfterText) {
// console.log(weekInfoItem[showMorningAfterText]);
@ -554,7 +353,7 @@ export default {
this.currentWeekIndex = weekInfoIndex
this.showMorningAfterText = showMorningAfterText
this.mouseMoveIsShow = this.title == 'plus' ? (maxNumber > 0 && maxNumber !== orderNum ? true : false) : true
this.mouseMoveIsShow = true
},
//
mouseoutHandle() {
@ -563,26 +362,7 @@ export default {
this.showMorningAfterText = ''
this.mouseMoveIsShow = false
},
//
switchChange(index,e) {
this.doctorList[index].isDefault = e ? 1 : 0
},
//
addPatientHandle(item, weekInfoItem, flag) {
this.addScheduleVisible = true
this.$nextTick(() => {
this.$refs.addScheduleRef.dataForm.title = '预约医生'
this.$refs.addScheduleRef.dataForm.doctorName = item.doctorName
this.$refs.addScheduleRef.dataForm.operaTime = flag === 'morning' ? weekInfoItem.date + ' 07:30:00' : weekInfoItem.date + ' 14:00:00'
this.$refs.addScheduleRef.params = item
this.$refs.addScheduleRef.init()
})
},
//
handleCurrentChange(val) {
this.currentRow = val;
},
//
//
async numberMangeClick(item, weekInfoItem, morOrAft,index,weekInfoIndex) {
this.numberMangeClickFun(item, weekInfoItem, morOrAft,index,weekInfoIndex)
},
@ -608,42 +388,6 @@ export default {
this.$refs.numberManageRef.init()
})
},
//
setOperaTImeClick(item, weekInfoItem, morOrAft, title) {
//
const time = morOrAft=== 1 ? '13:30:00' : '21:00:00'
const operaDateTime = weekInfoItem.date + ' ' + time
//
const operaTime = new Date(operaDateTime)
//
const nowTime = new Date()
console.log(operaTime);
console.log(nowTime);
if (operaTime > nowTime) {
this.setOperaTimeVisible=true
this.$nextTick(() => {
//
if(this.rowListObj.operaDate===weekInfoItem.date && this.rowListObj.mainDoctorName === item.doctorName && this.rowListObj.morOrAft===morOrAft) {
this.$refs.setOperaTimeRef.dataForm.operaTime = this.rowListObj.operaTime
}
this.$refs.setOperaTimeRef.dataForm.mainDoctorName = item.doctorName
this.$refs.setOperaTimeRef.weekName = weekInfoItem.weekName
this.$refs.setOperaTimeRef.morOrAft = morOrAft
this.$refs.setOperaTimeRef.title = title
this.$refs.setOperaTimeRef.dataForm.mainDoctorCode = item.doctorCode
this.$refs.setOperaTimeRef.dataForm.operaDate = weekInfoItem.date
this.$refs.setOperaTimeRef.init()
})
} else {
this.$message({
message: '时间已过时,不可设置',
type: 'warning'
})
}
// console.log(this.rowListObj);
},
}
};
</script>

1
src/page-subspecialty/views/modules/nurseManagement/reservation/schedule/number-detail-manage.vue

@ -109,7 +109,6 @@ export default {
//
closeDialog() {
this.$emit('closeDialog')
this.$emit('getScheduleList')
}
}
}

Loading…
Cancel
Save