Update hlw-rule-set.vue
This commit is contained in:
parent
8c7cbbd2e6
commit
8617472aec
@ -74,6 +74,99 @@
|
|||||||
</el-form-item>
|
</el-form-item>
|
||||||
</el-form>
|
</el-form>
|
||||||
</el-card>
|
</el-card>
|
||||||
|
<el-card class="mt-15px">
|
||||||
|
<template #header>
|
||||||
|
<div active-title-bar class="font-semibold">自动化问诊设置</div>
|
||||||
|
</template>
|
||||||
|
<el-alert
|
||||||
|
class="mb-15px"
|
||||||
|
type="info"
|
||||||
|
:closable="false"
|
||||||
|
title="自动化操作会在配置的时间区间内随机延迟执行;关闭开关后,待执行任务会在执行前自动取消。"
|
||||||
|
/>
|
||||||
|
<el-form label-suffix=":">
|
||||||
|
<el-form-item label="自动接诊">
|
||||||
|
<el-switch
|
||||||
|
:model-value="form.autoAcceptOrder"
|
||||||
|
@update:model-value="change($event, 'autoAcceptOrder')"
|
||||||
|
/>
|
||||||
|
</el-form-item>
|
||||||
|
<el-form-item label="自动接诊延时">
|
||||||
|
<el-input-number
|
||||||
|
:model-value="form.autoAcceptDelayMinSeconds"
|
||||||
|
:min="0"
|
||||||
|
:max="3600"
|
||||||
|
:precision="0"
|
||||||
|
controls-position="right"
|
||||||
|
@update:model-value="change($event, 'autoAcceptDelayMinSeconds', 'autoAcceptDelayMaxSeconds')"
|
||||||
|
/>
|
||||||
|
<span class="mx-12px">至</span>
|
||||||
|
<el-input-number
|
||||||
|
:model-value="form.autoAcceptDelayMaxSeconds"
|
||||||
|
:min="0"
|
||||||
|
:max="3600"
|
||||||
|
:precision="0"
|
||||||
|
controls-position="right"
|
||||||
|
@update:model-value="change($event, 'autoAcceptDelayMaxSeconds', 'autoAcceptDelayMinSeconds')"
|
||||||
|
/>
|
||||||
|
<span class="ml-10px text-gray-500">秒</span>
|
||||||
|
</el-form-item>
|
||||||
|
|
||||||
|
<el-form-item label="自动开方">
|
||||||
|
<el-switch
|
||||||
|
:model-value="form.autoOpenRx"
|
||||||
|
@update:model-value="change($event, 'autoOpenRx')"
|
||||||
|
/>
|
||||||
|
</el-form-item>
|
||||||
|
<el-form-item label="自动开方延时">
|
||||||
|
<el-input-number
|
||||||
|
:model-value="form.autoOpenRxDelayMinSeconds"
|
||||||
|
:min="0"
|
||||||
|
:max="3600"
|
||||||
|
:precision="0"
|
||||||
|
controls-position="right"
|
||||||
|
@update:model-value="change($event, 'autoOpenRxDelayMinSeconds', 'autoOpenRxDelayMaxSeconds')"
|
||||||
|
/>
|
||||||
|
<span class="mx-12px">至</span>
|
||||||
|
<el-input-number
|
||||||
|
:model-value="form.autoOpenRxDelayMaxSeconds"
|
||||||
|
:min="0"
|
||||||
|
:max="3600"
|
||||||
|
:precision="0"
|
||||||
|
controls-position="right"
|
||||||
|
@update:model-value="change($event, 'autoOpenRxDelayMaxSeconds', 'autoOpenRxDelayMinSeconds')"
|
||||||
|
/>
|
||||||
|
<span class="ml-10px text-gray-500">秒</span>
|
||||||
|
</el-form-item>
|
||||||
|
|
||||||
|
<el-form-item label="自动审方">
|
||||||
|
<el-switch
|
||||||
|
:model-value="form.autoPassRx"
|
||||||
|
@update:model-value="change($event, 'autoPassRx')"
|
||||||
|
/>
|
||||||
|
</el-form-item>
|
||||||
|
<el-form-item label="自动审方延时">
|
||||||
|
<el-input-number
|
||||||
|
:model-value="form.autoPassRxDelayMinSeconds"
|
||||||
|
:min="0"
|
||||||
|
:max="3600"
|
||||||
|
:precision="0"
|
||||||
|
controls-position="right"
|
||||||
|
@update:model-value="change($event, 'autoPassRxDelayMinSeconds', 'autoPassRxDelayMaxSeconds')"
|
||||||
|
/>
|
||||||
|
<span class="mx-12px">至</span>
|
||||||
|
<el-input-number
|
||||||
|
:model-value="form.autoPassRxDelayMaxSeconds"
|
||||||
|
:min="0"
|
||||||
|
:max="3600"
|
||||||
|
:precision="0"
|
||||||
|
controls-position="right"
|
||||||
|
@update:model-value="change($event, 'autoPassRxDelayMaxSeconds', 'autoPassRxDelayMinSeconds')"
|
||||||
|
/>
|
||||||
|
<span class="ml-10px text-gray-500">秒</span>
|
||||||
|
</el-form-item>
|
||||||
|
</el-form>
|
||||||
|
</el-card>
|
||||||
</layout-main>
|
</layout-main>
|
||||||
<layout-item>
|
<layout-item>
|
||||||
<div v-if="changed" text-center class="py-10px">
|
<div v-if="changed" text-center class="py-10px">
|
||||||
@ -97,6 +190,15 @@ const data = ref({
|
|||||||
acceptDuration: 0,
|
acceptDuration: 0,
|
||||||
consultationDuration: 0,
|
consultationDuration: 0,
|
||||||
medicinePurchaseRxDuration: 0,
|
medicinePurchaseRxDuration: 0,
|
||||||
|
autoAcceptOrder: false,
|
||||||
|
autoOpenRx: false,
|
||||||
|
autoPassRx: false,
|
||||||
|
autoAcceptDelayMinSeconds: 2,
|
||||||
|
autoAcceptDelayMaxSeconds: 5,
|
||||||
|
autoOpenRxDelayMinSeconds: 20,
|
||||||
|
autoOpenRxDelayMaxSeconds: 40,
|
||||||
|
autoPassRxDelayMinSeconds: 10,
|
||||||
|
autoPassRxDelayMaxSeconds: 30,
|
||||||
emsExpressDiscountFee: '',
|
emsExpressDiscountFee: '',
|
||||||
emsExpressFee: '',
|
emsExpressFee: '',
|
||||||
fengNiaoExpressDiscountFee: '',
|
fengNiaoExpressDiscountFee: '',
|
||||||
@ -163,6 +265,17 @@ async function confirm(params) {
|
|||||||
ElMessage.error('配药处方持续时长不能小于10分钟');
|
ElMessage.error('配药处方持续时长不能小于10分钟');
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
|
const delayPairs = [
|
||||||
|
['autoAcceptDelayMinSeconds', 'autoAcceptDelayMaxSeconds', '自动接诊'],
|
||||||
|
['autoOpenRxDelayMinSeconds', 'autoOpenRxDelayMaxSeconds', '自动开方'],
|
||||||
|
['autoPassRxDelayMinSeconds', 'autoPassRxDelayMaxSeconds', '自动审方'],
|
||||||
|
];
|
||||||
|
for (const [minKey, maxKey, label] of delayPairs) {
|
||||||
|
if (form.value[minKey] > form.value[maxKey]) {
|
||||||
|
ElMessage.error(`${label}最小延时不能大于最大延时`);
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
if ('emsExpressFee' in editForm.value && typeof emsFee.value === 'string') {
|
if ('emsExpressFee' in editForm.value && typeof emsFee.value === 'string') {
|
||||||
ElMessage.error('邮政配送费用配置不正确');
|
ElMessage.error('邮政配送费用配置不正确');
|
||||||
@ -200,6 +313,15 @@ async function getData() {
|
|||||||
data.value.acceptDuration = typeof config.acceptDuration === 'number' ? config.acceptDuration : 0;
|
data.value.acceptDuration = typeof config.acceptDuration === 'number' ? config.acceptDuration : 0;
|
||||||
data.value.consultationDuration = typeof config.consultationDuration === 'number' ? config.consultationDuration : 0;
|
data.value.consultationDuration = typeof config.consultationDuration === 'number' ? config.consultationDuration : 0;
|
||||||
data.value.medicinePurchaseRxDuration = typeof config.medicinePurchaseRxDuration === 'number' ? config.medicinePurchaseRxDuration : 0;
|
data.value.medicinePurchaseRxDuration = typeof config.medicinePurchaseRxDuration === 'number' ? config.medicinePurchaseRxDuration : 0;
|
||||||
|
data.value.autoAcceptOrder = config.autoAcceptOrder === true;
|
||||||
|
data.value.autoOpenRx = config.autoOpenRx === true;
|
||||||
|
data.value.autoPassRx = config.autoPassRx === true;
|
||||||
|
data.value.autoAcceptDelayMinSeconds = Number.isInteger(config.autoAcceptDelayMinSeconds) ? config.autoAcceptDelayMinSeconds : 2;
|
||||||
|
data.value.autoAcceptDelayMaxSeconds = Number.isInteger(config.autoAcceptDelayMaxSeconds) ? config.autoAcceptDelayMaxSeconds : 5;
|
||||||
|
data.value.autoOpenRxDelayMinSeconds = Number.isInteger(config.autoOpenRxDelayMinSeconds) ? config.autoOpenRxDelayMinSeconds : 20;
|
||||||
|
data.value.autoOpenRxDelayMaxSeconds = Number.isInteger(config.autoOpenRxDelayMaxSeconds) ? config.autoOpenRxDelayMaxSeconds : 40;
|
||||||
|
data.value.autoPassRxDelayMinSeconds = Number.isInteger(config.autoPassRxDelayMinSeconds) ? config.autoPassRxDelayMinSeconds : 10;
|
||||||
|
data.value.autoPassRxDelayMaxSeconds = Number.isInteger(config.autoPassRxDelayMaxSeconds) ? config.autoPassRxDelayMaxSeconds : 30;
|
||||||
data.value.presOpen = typeof config.presOpen === 'boolean' ? config.presOpen : false;
|
data.value.presOpen = typeof config.presOpen === 'boolean' ? config.presOpen : false;
|
||||||
data.value.emsExpressFee = typeof config.emsExpressFee === 'number' ? config.emsExpressFee : '';
|
data.value.emsExpressFee = typeof config.emsExpressFee === 'number' ? config.emsExpressFee : '';
|
||||||
data.value.emsExpressDiscountFee = typeof config.emsExpressDiscountFee === 'number' ? config.emsExpressDiscountFee : '';
|
data.value.emsExpressDiscountFee = typeof config.emsExpressDiscountFee === 'number' ? config.emsExpressDiscountFee : '';
|
||||||
|
|||||||
Loading…
x
Reference in New Issue
Block a user