提交 961d2655 编写于 作者: qian.jie's avatar qian.jie

设置平台接诊上限

上级 763fb69c
......@@ -65,3 +65,10 @@ export const previewWork = async (data) => {
data: data,
});
};
export const setPlatformUpper = async (data) => {
return request({
url: `/diagnose/doctor/work/setPlatformUpper/${data.num}`,
data: data,
method: 'post',
});
};
......@@ -160,7 +160,7 @@
</el-form-item>
</el-form>
<!-- </el-row>-->
<span
<!-- <span
slot="footer"
class="dialog-footer"
style="text-align: center"
......@@ -175,7 +175,88 @@
:disabled="isClick"
@click="confirm"
>确定</el-button>
</span>
</span> -->
<div class="open-diagnosis-doctor">
<div class="choose-diagnosis-doctor">
<el-select
v-model="formData.receptionId"
filterable
placeholder="请选择接诊医生"
class="set-width"
style="width: 40%"
@change="doctorChanged($event)"
>
<el-option
v-for="item of doctorList"
:key="item.doctorId"
:label="item.doctorReceptionName"
:value="item.doctorId"
/>
</el-select>
<el-date-picker
v-model="chooseTime"
type="date"
placeholder="选择日期"
/>
</div>
<div class="doctor-diagnosis-doctor">
<div class="doctor-info">
<div class="doctor-info-nameRate">
<span class="name-info">李晓明</span>
<span class="name-info-rate">
<el-rate
v-model="rateValue"
:colors="colors"
disabled
/>
</span>
</div>
<div class="doctor-info-phone">
<span>123432123432123432123</span>
</div>
<div class="doctor-info-hisDep">
<span>上海瑞金医院</span>
<span class="diasName">普外科</span>
</div>
</div>
<div class="doctor-info-Num">
<div class="doctor-info-NumToday">
<div class="num-info-much">90</div>
<div>今日接诊人数</div>
</div>
<div class="doctor-info-maxToday">
<div class="num-info-much">120</div>
<div>今日接诊上限人数</div>
</div>
</div>
</div>
<div class="work-info-Num">
<span class="work-info-Num-span">可排班时间</span>
<div class="work-info-NumInfo">
<span>9:00-10:00</span>
<span>9:00-10:00</span>
<span>9:00-10:00</span>
</div>
<div class="work-info-botton">
<span
slot="footer"
class="dialog-footer"
style="text-align: center"
>
<el-button
type="primary"
:disabled="isClick"
@click="confirm"
>确定</el-button>
<el-button
type="primary"
@click="refreshData"
>刷新数据</el-button>
<el-button @click="cancel">取 消</el-button>
</span>
</div>
</div>
</div>
</el-dialog>
<el-dialog
title="问诊开始时间"
......@@ -327,8 +408,11 @@
},
data() {
return {
chooseTime:'',
rateValue:3,
colors:['#0D9078', '#0D9078', '#0D9078'],
show: false,
title: '设置接诊医生',
title: '设置接诊医生111',
confirmTxt: '确定',
cancleTxt: '',
isClick: false,
......@@ -671,4 +755,115 @@
margin-right: 5px;
width: 130px;
}
.open-diagnosis-doctor{
padding: 40px;
.choose-diagnosis-doctor{
.el-select{
margin-right: 30px;
padding-bottom: 20px;
.el-input{
width: 300px;
.el-input__inner{
width: 300px;
height: 32px;
background: #FFFFFF;
border-radius: 16px;
border: 1px solid rgba(0, 0, 0, 0.15);
}
.el-input__suffix{
display: flex;
align-items: center;
}
}
}
.el-date-editor{
.el-input__inner{
width: 180px;
height: 32px;
background: #FFFFFF;
border-radius:16px;
border: 1px solid rgba(0, 0, 0, 0.15);
}
.el-input__prefix{
.el-input__icon{
display: flex;
align-items: center;
}
}
}
}
.doctor-diagnosis-doctor{
background: rgba(240, 242, 245, 0.6);
border-radius: 8px;
height: 120px;
padding: 20px;
display: flex;
.doctor-info{
width: 50%;
.doctor-info-nameRate{
display: flex;
.name-info{
min-width: 54px;
height: 18px;
font-size: 18px;
font-family: PingFangSC-Regular, PingFang SC;
font-weight: 400;
color: #02120F;
line-height: 18px;
margin-right: 10px;
}
}
.doctor-info-phone{
font-size: 18px;
font-family: PingFangSC-Regular, PingFang SC;
font-weight: 400;
color: #02120F;
padding-top: 10px;
}
.doctor-info-hisDep{
font-size: 16px;
font-family: PingFangSC-Regular, PingFang SC;
font-weight: 400;
color: #89888B;
padding-top: 10px;
.diasName{
padding-left: 10px;
}
}
}
.doctor-info-Num{
display: flex;
.doctor-info-NumToday{
text-align: center;
min-width: 85px;
margin-right: 20px;
.num-info-much{
font-size: 32px;
font-family: PingFangSC-Medium, PingFang SC;
font-weight: 500;
color: #02120F;
}
}
.doctor-info-maxToday{
text-align: center;
min-width: 120px;
.num-info-much{
font-size: 32px;
font-family: PingFangSC-Medium, PingFang SC;
font-weight: 500;
color: #02120F;
}
}
}
}
.work-info-Num{
padding-top: 20px;
.work-info-Num-span{
font-size: 14px;
font-family: PingFangSC-Regular, PingFang SC;
font-weight: 400;
color: #02120F;
}
}
}
</style>
......@@ -88,6 +88,13 @@
align="center"
sortable
/>
<el-table-column
prop="createdId"
label="修改人ID"
width="170"
align="center"
sortable
/>
<el-table-column
prop="mobilePhone"
label="联系电话"
......
......@@ -62,6 +62,10 @@
overflow: hidden;
border-radius: 8px;
}
.agment-left-copy{
margin-top: 34px;
text-align: center;
}
.agment-head {
border-radius: 5px;
display: flex;
......@@ -121,6 +125,13 @@
display: flex;
justify-content: center;
}
.copy-submit{
background: #fff;
border: 1px solid #0D9078;
font-family: PingFangSC-Regular, PingFang SC;
font-weight: 400;
color: #0D9078;
}
.reset-submit{
background: #fff;
border: 1px solid #0D9078;
......
......@@ -15,6 +15,9 @@
:class="{'w2':week==2,'w3':week==3}"
>
<FullCalendar :options="calendarOptions" />
<div>
设置接诊上限
</div>
</div>
<div
class="agment-box-left"
......@@ -27,7 +30,7 @@
/>
<!-- v-if="week == 2" -->
<div
v-if="week == 3"
v-if="week == 5"
class="ag-left2"
/>
<!-- -->
......@@ -68,6 +71,16 @@
</div>
</div>
</div>
<div v-if="this.schedulingType != 3" class="agment-left-copy">
<el-button
round
class="copy-submit"
style="width: 210px"
@click="copyDoctoreScheduling"
>
重复制上周排班
</el-button>
</div>
<div
v-if="this.schedulingType != 3"
class="agment-left-button"
......@@ -166,7 +179,7 @@
},
expandRows: true,
slotMinWidth: 50,
slotDuration: '00:30:00',
slotDuration: '01:00:00',
slotMinTime: '09:00',
slotMaxTime: '21:00',
slotLabelInterval: '',
......@@ -301,20 +314,30 @@
});
},
handleDatesSet(dataInfo) {
// debugger;
const currentTime = new Date().getTime();
const getTime = new Date(dataInfo.startStr).getTime();
const cz = currentTime - getTime;
const oneHour = 1 * 60 * 60 * 1000 * 24;
const timeDifference = (cz / oneHour) | 0;
const headObj = this.calendarOptions.customButtons.myCustomButton;
if (timeDifference >= 0 && timeDifference < 7) {
if (timeDifference > 0 && timeDifference < 7) {
// debugger;
// 过去
this.week = 1;
headObj.text = '本周';
} else if (timeDifference < 0) {
}else if (timeDifference == 0) {
// 未来
this.week = 3;
headObj.text = '下周';
} else if (timeDifference == -7) {
// 未来
this.week = 4;
headObj.text = '下二周';
}else if (timeDifference == -14) {
// 未来
this.week = 5;
headObj.text = '下三周';
} else {
// 现在
headObj.text = '上周';
......@@ -427,6 +450,9 @@
},
resetDoctoreScheduling() {
this.handleInitSearch(true);
},
copyDoctoreScheduling() {
},
saveDoctoreScheduling(type, weekV = 0) {
if(this.isDoIt) {
......
......@@ -13,35 +13,47 @@
<div
ref="agmentSelect"
class="serviceSchedule_select"
:style="{maxWidth: getMaxWidth}"
>
<el-cascader
v-model="innerform"
class="serviceSchedule-cascader"
filterable
clearable
:options="interfaceOptions"
:props="props"
placeholder="选择科室"
:show-all-levels="false"
@expand-change="handleItemChange"
@change="selectApi($event, innerform)"
/>
<el-date-picker
v-model="dateTime"
class="serviceSchedule_dateTime"
type="date"
value-format="yyyy-MM-dd"
placeholder="选择日期时间"
@change="getNowDate"
/>
<el-button
type="primary"
class="submit-btn"
@click="search"
>
查询
</el-button>
<div class="agmentSelect-select-left">
<el-cascader
v-model="innerform"
class="serviceSchedule-cascader"
filterable
clearable
:options="interfaceOptions"
:props="props"
placeholder="选择科室"
:show-all-levels="false"
@expand-change="handleItemChange"
@change="selectApi($event, innerform)"
/>
<el-date-picker
v-model="dateTime"
class="serviceSchedule_dateTime"
type="date"
value-format="yyyy-MM-dd"
placeholder="选择日期时间"
@change="getNowDate"
/>
<el-button
type="primary"
class="submit-btn"
@click="search"
>
查询
</el-button>
</div>
<div class="agmentSelect-select-right">
设置系统单日接诊总上限
<el-input-number v-model="maxDiaNum" :step="1" :min="10" :max="1000000" step-strictly @change="getInputNumber"></el-input-number>
<el-button
type="primary"
class="submit-btn"
@click="setPlatformUpper"
>
保存
</el-button>
</div>
</div>
<div
class="fullCalendar-show"
......@@ -71,6 +83,7 @@
getFirstLevelLable,
childLabelList,
previewWork,
setPlatformUpper
} from '@/api/serviceSchedule';
export default {
name: 'Index',
......@@ -79,6 +92,7 @@
},
data() {
return {
maxDiaNum:100,
dateTime: '',
interfaceOptions: [],
innerform: [],
......@@ -145,6 +159,19 @@
},
mounted() {},
methods: {
setPlatformUpper() {
const params = {
num:this.maxDiaNum
};
setPlatformUpper(params).then(res => {
if (res.code === '000000') {
console.log(res);
}
});
},
getInputNumber(value) {
console.log(value, 'getInputNumbergetInputNumber');
},
// 通过监听expand-change事件(当展开节点发生变化时触发)获取第二层数据,组装interfaceOptions数据
handleItemChange(val) {
const value = val[0];
......@@ -299,21 +326,42 @@
background: #fff;
display: flex;
align-items: center;
padding: 20px 0 0px 20px;
.serviceSchedule-cascader {
// height: 100%;
background: #fff;
margin-right: 15px;
}
.serviceSchedule_dateTime {
margin-right: 15px;
padding: 20px 0 10px 20px;
justify-content: space-between;
.agmentSelect-select-left{
display: flex;
align-items: center;
justify-content: flex-start;
.serviceSchedule-cascader {
background: #fff;
margin-right: 15px;
}
.serviceSchedule_dateTime {
margin-right: 15px;
}
.submit-btn {
height: 32px;
background: #0d9078;
border-radius: 16px;
display: flex;
align-items: center;
}
}
.submit-btn {
height: 32px;
background: #0d9078;
border-radius: 16px;
display: flex;
align-items: center;
.agmentSelect-select-right{
display: flex;
align-items: center;
justify-content: flex-end;
padding-right: 30px;
.el-input-number{
margin: 0 10px;
}
.submit-btn {
height: 32px;
background: #0d9078;
border-radius: 16px;
display: flex;
align-items: center;
}
}
}
.fullCalendar-show {
......
Markdown 格式
0% or
您添加了 0 到此讨论。请谨慎行事。
先完成此消息的编辑!
想要评论请 注册