提交 8d55e3f6 编写于 作者: vino's avatar vino

问诊优化

上级 eba9d569
......@@ -17,17 +17,17 @@
<el-form-item v-if="bizType == 12" label="问诊方式" prop="audioCommissionType">
<el-col :span="16">
<el-radio-group v-model="model.diagnoseChannel" size="small" style="line-height: 45px;">
<el-radio :label="1" >APP问诊(系统发起问诊)</el-radio>
<el-radio :label="2" >线下问诊(APP不会自动发起问诊)</el-radio>
<el-radio :label="1">APP问诊(系统发起问诊)</el-radio>
<el-radio :label="2">线下问诊(APP不会自动发起问诊)</el-radio>
</el-radio-group>
</el-col>
</el-form-item>
<el-form-item label="预约时间">
<el-form-item label="预约时间" class="required-label" prop="rangeTime">
<el-date-picker
v-model="rangeTime"
type="daterange"
value-format="yyyy-MM-dd"
type="datetimerange"
value-format="yyyy-MM-dd HH:mm:ss"
range-separator="至"
start-placeholder="开始日期"
end-placeholder="结束日期"
......@@ -47,22 +47,9 @@
<script>
import {updateDiagnosis} from "../../utils/diagnosis";
let vm = null;
export default {
props: {
appointmentTimeVisible: {
type: Boolean,
default: false
},
diagnoseLogId: {
type: Number,
default: 0
},
bizType: {
type: Number,
default: 0
},
},
data() {
return {
show: false,
......@@ -70,50 +57,79 @@ export default {
confirmTxt: '确定',
cancleTxt: '',
_promise: null,
model:{
diagnoseChannel:'',
appointBeginTime:"",
appointEndTime:""
model: {
diagnoseChannel: '',
appointBeginTime: "",
appointEndTime: ""
},
rangeTime:'',
addRules:{
rangeTime: '',
addRules: {
rangeTime: [
{
type: 'array',
required: true,
// message: "预约时间不能为空",
trigger: 'change',
fields: {
0: {required: true, type: 'date', message: "开始时间不能为空", trigger: 'change'},
1: {required: true, type: 'date', message: '结束时间不能为空', trigger: 'change'}
}
}
],
},
pickerOptions1: {
disabledDate: time => {
return (
time.getTime() > new Date().getTime()
time.getTime() < Date.now()-1 * 24 * 3600 * 1000
); //减去一天的时间代表可以选择同一天;
}
},
}
},
props: {
appointmentTimeVisible: {
type: Boolean,
default: false
},
diagnoseLogId: {
type: Number,
default: 0
},
bizType: {
type: Number,
default: 0
},
},
created() {
vm = this;
},
methods: {
confirm() {
this.$refs.setForm.validate((valid) => {
if (valid) {
if(!(this.rangeTime != null && this.rangeTime.length > 0)){
vm.$message.warning("请选择预约时间");
return;
}
// this.$refs.setForm.validate((valid) => {
// if (valid) {
let req = null;
if(this.bizType == 11){
if (this.bizType == 11) {
req = {
id:this.diagnoseLogId,
bizType:this.bizType,
appointBeginTime:this.rangeTime[0],
appointEndTime:this.rangeTime[1]
id: this.diagnoseLogId,
bizType: this.bizType,
appointBeginTime: this.rangeTime[0],
appointEndTime: this.rangeTime[1]
}
}
else if(this.bizType == 12){
} else if (this.bizType == 12) {
req = {
id:this.diagnoseLogId,
bizType:this.bizType,
id: this.diagnoseLogId,
bizType: this.bizType,
diagnoseChannel: this.model.diagnoseChannel,
appointBeginTime:this.rangeTime[0],
appointEndTime:this.rangeTime[1]
appointBeginTime: this.rangeTime[0],
appointEndTime: this.rangeTime[1]
}
}
updateDiagnosis(req).then(function (res) {
if(res.code == "000000") {
if (res.code == "000000") {
vm.cancel();
vm.$emit('search');
} else {
......@@ -122,10 +138,10 @@ export default {
}).catch(function (error) {
vm.$message.error(res.message);
});
}
})
// }
// })
},
cancel(){
cancel() {
this.$emit('update:appointmentTimeVisible', false);
}
}
......
......@@ -13,9 +13,9 @@
size="mini"
style="width: 100%;">
<el-form-item label="备注" class="required-label">
<el-form-item label="备注">
<el-col :span="15">
<el-input type="textarea" v-model="model.coordinatedRemark" style="width: 90%;" size="small" minlength="2" maxlength="500" placeholder="请输入备注"></el-input>
<el-input type="textarea" v-model="model.coordinatedRemark" style="width: 90%;" size="small" minlength="2" maxlength="500" placeholder="(选填)请输入备注信息"></el-input>
</el-col>
</el-form-item>
......
......@@ -15,7 +15,7 @@
<el-form-item label="接诊医生" prop="receptionName">
<!-- <el-input v-model="formData.doctorName" placeholder="请选择接诊医生" class="set-width" disabled></el-input>-->
<el-select @change="doctorChanged($event)" filterable v-model="formData.receptionName" placeholder="请选择接诊医生" class="set-width">
<el-select @change="doctorChanged($event)" filterable v-model="formData.receptionId" placeholder="请选择接诊医生" class="set-width">
<el-option v-for="item of doctorList" :key="item.doctorId" :label="item.doctorName" :value="item.doctorId"></el-option>
</el-select>
</el-form-item>
......@@ -45,11 +45,11 @@
<!-- <el-option v-for="item of doctorSourceList" :key="item.value" :label="item.label" :value="item.value" ></el-option>-->
<!-- </el-select>-->
<!-- </el-form-item>-->
<el-form-item label="接诊意向时间">
<el-form-item label="接诊意向时间" class="required-label" prop="rangeTime">
<el-date-picker
v-model="rangeTime"
type="daterange"
value-format="yyyy-MM-dd"
type="datetimerange"
value-format="yyyy-MM-dd HH:mm:ss"
range-separator="至"
start-placeholder="开始日期"
end-placeholder="结束日期"
......@@ -84,6 +84,10 @@ export default {
type: Number,
default: 0
},
doctorId: {
type: Number,
default: 0
},
},
data() {
return {
......@@ -93,7 +97,7 @@ export default {
cancleTxt: '',
_promise: null,
formData:{
receptionId:"",
receptionId:this.doctorId,
receptionName:"",
doctorTitle:"",
doctorHospital:"",
......@@ -108,6 +112,20 @@ export default {
addRules:{
receptionName: [
{required: true, message: "请选择接诊医生", trigger: 'blur'}
],
rangeTime: [
// {type: 'array',required: true, validator: checkDate, trigger: 'blur,change'}
{
type: 'array',
required: true,
// message: "预约时间不能为空",
// validator: checkDate,
trigger: 'change',
fields: {
0: {required: true, type: 'date', message: "开始时间不能为空"},
1: {required: true, type: 'date', message: '结束时间不能为空'}
}
}
]
},
pickerOptions1: {
......
......@@ -13,11 +13,11 @@
size="mini"
style="width: 100%;">
<el-form-item label="助诊意向时间" class="required-label">
<el-form-item label="助诊意向时间" class="required-label" prop="rangeTime">
<el-date-picker
v-model="rangeTime"
type="daterange"
value-format="yyyy-MM-dd"
type="datetimerange"
value-format="yyyy-MM-dd HH:mm:ss"
range-separator="至"
start-placeholder="开始日期"
end-placeholder="结束日期"
......@@ -25,7 +25,7 @@
</el-date-picker>
</el-form-item>
<el-form-item label="备注" class="required-label">
<el-form-item label="备注">
<el-col :span="15">
<el-input type="textarea" v-model="model.assistantRemark" style="width: 90%;" size="small" minlength="2"
maxlength="500" placeholder="请输入备注"></el-input>
......@@ -60,6 +60,13 @@ export default {
},
},
data() {
let checkDate = (rule, value, callback) => {
if(!value) {
callback(new Error("请选择助诊意向时间"));
} else {
callback();
}
}
return {
show: false,
title: '设置预约时间(问诊时间)',
......@@ -72,13 +79,24 @@ export default {
rangeTime: '',
addRules: {
rangeTime: [
{required: true, message: "请选择助诊意向时间", trigger: 'blur'}
// {type: 'array',required: true, validator: checkDate, trigger: 'blur,change'}
{
type: 'array',
required: true,
// message: "预约时间不能为空",
// validator: checkDate,
trigger: 'change',
fields: {
0: {required: true, type: 'date', message: "开始时间不能为空"},
1: {required: true, type: 'date', message: '结束时间不能为空'}
}
}
]
},
pickerOptions1: {
disabledDate: time => {
return (
time.getTime() > new Date().getTime()
time.getTime() < Date.now()-1 * 24 * 3600 * 1000
); //减去一天的时间代表可以选择同一天;
}
},
......@@ -89,8 +107,12 @@ export default {
},
methods: {
confirm() {
this.$refs.setForm.validate((valid) => {
if (valid) {
// this.$refs.setForm.validate((valid) => {
// if (valid) {
if(!(this.rangeTime != null && this.rangeTime.length > 0)){
vm.$message.warning("请选择助诊意向时间");
return;
}
let req = {
id:this.diagnoseLogId,
bizType:this.bizType,
......@@ -108,8 +130,8 @@ export default {
}).catch(function (error) {
vm.$message.error(res.message);
});
}
})
// }
// })
},
cancel() {
this.$emit('update:diagnosisTimeVisible', false);
......
......@@ -4,7 +4,7 @@
:title="title"
:visible.sync="matchVisible">
<!-- <el-row :gutter="30" class="row search" type="flex" style="margin-bottom:0;">-->
<el-form ref="setPriceForm"
<el-form ref="setForm"
:rules="addRules"
:model="model"
label-width="250px"
......@@ -13,9 +13,8 @@
size="mini"
style="width: 100%;">
<el-form-item label="运营名称" class="required-label" prop="operatorName">
<el-form-item label="运营名称" class="required-label" prop="operatorId">
<el-col :span="15">
<el-select
v-model="model.operatorId"
placeholder="请选择运营名称"
......@@ -80,8 +79,8 @@ export default {
},
adminList:'',
addRules:{
operatorName: [
{required: true, message: "请输入运营名称", trigger: 'blur'}
operatorId: [
{required: true, message: "请选择运营人员", trigger: 'change'}
]
}
}
......@@ -95,6 +94,8 @@ export default {
},
methods: {
confirm() {
this.$refs.setForm.validate((valid) => {
if (valid) {
// 单个设置运营
if (!this.batchFlag) {
let req = {
......@@ -117,8 +118,8 @@ export default {
// 批量设置运营
else {
let ids = [];
if(this.multipleSelection.length > 0){
for (let i=0;i < this.multipleSelection.length; i++){
if (this.multipleSelection.length > 0) {
for (let i = 0; i < this.multipleSelection.length; i++) {
ids.push(this.multipleSelection[i].diagnoseLogId);
}
}
......@@ -138,6 +139,8 @@ export default {
vm.$message.error(error);
});
}
}
})
},
cancel(){
......
......@@ -75,7 +75,6 @@ export default {
triageDepartmentId: "",
triageDepartment:""
},
commissionTypeList: [],
addRules: {}
}
},
......@@ -95,27 +94,6 @@ export default {
vm.$message.error(res.message);
});
},
reset() {
this.title = ''
this.confirmTxt = '确定'
this.cancleTxt = ''
this._promise = null
},
init(obj = {}) {
Object.assign(this, obj)
this.show = true
return new Promise((resolve, reject) => {
this._promise = {
resolve,
reject
};
})
},
async cancle() {
this.show = false
await this._promise.reject && this._promise.reject()
this.reset()
},
confirm() {
this.$refs.setForm.validate((valid) => {
if (valid) {
......
......@@ -68,13 +68,15 @@ export default {
},
methods: {
confirm() {
this.$refs.setForm.validate((valid) => {
if (valid) {
let req = {
id:this.diagnoseLogId,
bizType:2,
refundReason:this.model.refundReason
id: this.diagnoseLogId,
bizType: 2,
refundReason: this.model.refundReason
}
updateDiagnosis(req).then(function (res) {
if(res.code == "000000") {
if (res.code == "000000") {
vm.cancel();
vm.$emit('search');
} else {
......@@ -83,6 +85,8 @@ export default {
}).catch(function (error) {
vm.$message.error(res.message);
});
}
})
},
cancel(){
this.$emit('update:refundVisible', false);
......
......@@ -225,16 +225,17 @@
<refund-component @search="search" :refundVisible.sync="refundVisible" :diagnoseLogId="diagnoseLogId"></refund-component>
<followup-component @search="search" :followupVisible.sync="followupVisible" :diagnoseLogId="diagnoseLogId"></followup-component>
<matching-doctor @search="search" :doctorVisible.sync="doctorVisible" :diagnoseLogId="diagnoseLogId"></matching-doctor>
<diagnosis-component :diagnosisVisible.sync="diagnosisVisible" :diagnoseLogId="diagnoseLogId"></diagnosis-component>
<coordinating-doctor :coordinatingVisible.sync="coordinatingVisible" :diagnoseLogId="diagnoseLogId" :bizType="bizType" ></coordinating-doctor>
<diagnosis-doctor :diagnosisDoctorVisible.sync="diagnosisDoctorVisible" :diagnoseLogId="diagnoseLogId" :diagnoseType="diagnoseType"></diagnosis-doctor>
<appointment-time :appointmentTimeVisible.sync="appointmentTimeVisible" :diagnoseLogId="diagnoseLogId" :bizType="bizType"></appointment-time>
<diagnosis-time :diagnosisTimeVisible.sync="diagnosisTimeVisible" :diagnoseLogId="diagnoseLogId" :bizType="bizType"></diagnosis-time>
<diagnosis-component @search="search" :diagnosisVisible.sync="diagnosisVisible" :diagnoseLogId="diagnoseLogId"></diagnosis-component>
<coordinating-doctor @search="search" :coordinatingVisible.sync="coordinatingVisible" :diagnoseLogId="diagnoseLogId" :bizType="bizType" ></coordinating-doctor>
<diagnosis-doctor @search="search" :diagnosisDoctorVisible.sync="diagnosisDoctorVisible" :diagnoseLogId="diagnoseLogId" :diagnoseType="diagnoseType" :doctorId="doctorId"></diagnosis-doctor>
<appointment-time @search="search" :appointmentTimeVisible.sync="appointmentTimeVisible" :diagnoseLogId="diagnoseLogId" :bizType="bizType"></appointment-time>
<diagnosis-time @search="search" :diagnosisTimeVisible.sync="diagnosisTimeVisible" :diagnoseLogId="diagnoseLogId" :bizType="bizType"></diagnosis-time>
</div>
<a class="target" href="" target="_blank" ref="target"></a>
</div>
</template>
<script>
let vm = null;
import {updateDiagnosis} from "../../../utils/diagnosis";
const DOWN_URL= '/diagnose/admin/diagnose/export';
const LIST_URL= '/diagnose/admin/diagnose/list';
......@@ -324,6 +325,7 @@ export default {
batchFlag:false,
bizType:0,
diagnoseType:0,
doctorId:"",
pickerOptions1: {
disabledDate: (time) => {
return time.getTime() > new Date().getTime(); //减去一天的时间代表可以选择同一天;
......@@ -345,6 +347,7 @@ export default {
}
},
created() {
vm = this;
this.getDep()
},
mounted() {
......@@ -577,12 +580,12 @@ export default {
updateDiagnosis(req).then(function (res) {
if (res.code == "000000") {
// this.cancel();
this.search();
vm.search();
} else {
this.$message.error(res.message);
vm.$message.error(res.message);
}
}).catch(function (error) {
this.$message.error(error);
vm.$message.error(error);
});
})
......@@ -604,6 +607,7 @@ export default {
this.diagnosisDoctorVisible = true;
this.diagnoseLogId = row.diagnoseLogId;
this.diagnoseType = row.diagnoseType;
this.doctorId = row.doctorId;
},
//重新匹配医生
reMatchDot(row) {
......@@ -642,12 +646,12 @@ export default {
updateDiagnosis(req).then(function (res) {
if (res.code == "000000") {
// this.cancel();
this.search();
vm.search();
} else {
this.$message.error(res.message);
vm.$message.error(res.message);
}
}).catch(function (error) {
this.$message.error(error);
vm.$message.error(error);
});
})
......
Markdown 格式
0% or
您添加了 0 到此讨论。请谨慎行事。
先完成此消息的编辑!
想要评论请 注册