| | |
| | | <template> |
| | | <Dialog :title="dialogTitle" v-model="dialogVisible"> |
| | | <Dialog :title="dialogTitle" v-model="dialogVisible" width="900px"> |
| | | <!-- |
| | | 需求9:编辑页由「一列布局」改为「一行两列布局」,避免页面过长。 |
| | | 用 el-row / el-col 实现:默认每项 :span="12"(半行), |
| | | 以下三项**单占一行** :span="24": |
| | | · 显示患者条码(多选,需要横向空间) |
| | | · 排队序号规则(带三行说明文字) |
| | | · 亲和项目(多选,项目多时一行放不下) |
| | | --> |
| | | <el-form |
| | | ref="formRef" |
| | | :model="formData" |
| | | :rules="formRules" |
| | | label-width="140px" |
| | | label-width="130px" |
| | | v-loading="formLoading" |
| | | > |
| | | <el-form-item label="检查类型名" prop="name"> |
| | | <el-input v-model="formData.name" placeholder="请输入检查类型名" /> |
| | | </el-form-item> |
| | | <el-form-item label="检查类型值" prop="value"> |
| | | <el-input v-model="formData.value" placeholder="请输入检查类型值" /> |
| | | </el-form-item> |
| | | <el-form-item label="允许准备中人数" prop="readyNum"> |
| | | <el-input v-model="formData.readyNum" placeholder="请输入允许准备中人数" /> |
| | | </el-form-item> |
| | | <el-form-item label="需要设备领用" prop="needDevReady"> |
| | | <el-switch |
| | | v-model="formData.needDevReady" |
| | | :active-value="1" |
| | | :inactive-value="0" |
| | | /> |
| | | </el-form-item> |
| | | <el-form-item label="叫号列" prop="callingColumn"> |
| | | <el-input v-model="formData.callingColumn" placeholder="请输入叫号列" /> |
| | | </el-form-item> |
| | | <el-form-item label="显示患者条码" prop="displayBarcode"> |
| | | <el-checkbox-group v-model="formData.displayBarcode"> |
| | | <el-checkbox |
| | | v-for="(dict, index) in getIntDictOptions(DICT_TYPE.ECG_PAT_SOURCE)" |
| | | :key="index" |
| | | :label="dict.label" |
| | | :value=dict.value |
| | | /> |
| | | </el-checkbox-group> |
| | | </el-form-item> |
| | | <el-form-item label="需要确费" prop="expenseRecognition"> |
| | | <el-switch |
| | | v-model="formData.expenseRecognition" |
| | | :active-value="1" |
| | | :inactive-value="0" |
| | | /> |
| | | </el-form-item> |
| | | <el-form-item label="时段预约规定人数" prop="timeslotBookNum"> |
| | | <el-input v-model="formData.timeslotBookNum" placeholder="请输入时段预约规定人数" /> |
| | | </el-form-item> |
| | | <el-form-item label="每时段预留人数" prop="timeslotReservedNum"> |
| | | <el-input v-model="formData.timeslotReservedNum" placeholder="请输入每时段预留人数" /> |
| | | </el-form-item> |
| | | <el-form-item label="预约注意事项" prop="notes"> |
| | | <el-input v-model="formData.notes" placeholder="请输入预约注意事项" /> |
| | | </el-form-item> |
| | | <el-form-item label="序号前缀" prop="seqPrefix"> |
| | | <el-input v-model="formData.seqPrefix" placeholder="请输入序号前缀" /> |
| | | </el-form-item> |
| | | <!-- 需求:排队序号规则(签到时如何给患者排队序号) --> |
| | | <el-form-item label="排队序号规则" prop="seqRule"> |
| | | <el-select v-model="formData.seqRule" placeholder="请选择排队序号规则" class="w-full"> |
| | | <el-option v-for="dict in getIntDictOptions(DICT_TYPE.ECG_SEQ_RULE)" |
| | | :key="dict.value" :label="dict.label" :value="dict.value" /> |
| | | </el-select> |
| | | <div class="text-12px text-gray-500 leading-5 mt-1"> |
| | | 预约号:用预约系统下发的号,签到不再分配;<br /> |
| | | 签到序号:当天同检查类型内连续递增(第 1 个签到=1 号),每 9 个号预留 1 个给加急;<br /> |
| | | 时段号:按预约时间段给号(<b>不选时默认此项</b>,与改造前行为一致)。 |
| | | </div> |
| | | </el-form-item> |
| | | <el-form-item label="亲和的检查类型" prop="affinityCheckTypes"> |
| | | <el-checkbox-group v-model="formData.affinityCheckTypes"> |
| | | <el-checkbox v-for="checkTypeVO in checkTypeStore.getCheckTypeOptions()" :value="checkTypeVO.value" :key="checkTypeVO.value">{{checkTypeVO.label}}</el-checkbox> |
| | | </el-checkbox-group> |
| | | </el-form-item> |
| | | <el-row :gutter="20"> |
| | | <el-col :span="12"> |
| | | <el-form-item label="检查项目名称" prop="name"> |
| | | <el-input v-model="formData.name" placeholder="请输入检查项目名称" /> |
| | | </el-form-item> |
| | | </el-col> |
| | | <el-col :span="12"> |
| | | <el-form-item label="检查项目值" prop="value"> |
| | | <el-input v-model="formData.value" placeholder="请输入检查项目值" /> |
| | | </el-form-item> |
| | | </el-col> |
| | | |
| | | <el-col :span="12"> |
| | | <el-form-item label="排序序号" prop="sort"> |
| | | <el-input-number |
| | | v-model="formData.sort" |
| | | :min="0" |
| | | class="!w-full" |
| | | placeholder="越小越靠前" |
| | | /> |
| | | </el-form-item> |
| | | </el-col> |
| | | <el-col :span="12"> |
| | | <el-form-item label="允许准备中人数" prop="readyNum"> |
| | | <el-input v-model="formData.readyNum" placeholder="请输入允许准备中人数" /> |
| | | </el-form-item> |
| | | </el-col> |
| | | |
| | | <el-col :span="12"> |
| | | <el-form-item label="需要设备领用" prop="needDevReady"> |
| | | <el-switch v-model="formData.needDevReady" :active-value="1" :inactive-value="0" /> |
| | | </el-form-item> |
| | | </el-col> |
| | | <el-col :span="12"> |
| | | <el-form-item label="需要确费" prop="expenseRecognition"> |
| | | <el-switch v-model="formData.expenseRecognition" :active-value="1" :inactive-value="0" /> |
| | | </el-form-item> |
| | | </el-col> |
| | | |
| | | <el-col :span="12"> |
| | | <el-form-item label="叫号列" prop="callingColumn"> |
| | | <el-input v-model="formData.callingColumn" placeholder="请输入叫号列" /> |
| | | </el-form-item> |
| | | </el-col> |
| | | <el-col :span="12"> |
| | | <el-form-item label="序号前缀" prop="seqPrefix"> |
| | | <el-input v-model="formData.seqPrefix" placeholder="请输入序号前缀" /> |
| | | </el-form-item> |
| | | </el-col> |
| | | |
| | | <el-col :span="12"> |
| | | <el-form-item label="时段预约规定人数" prop="timeslotBookNum"> |
| | | <el-input v-model="formData.timeslotBookNum" placeholder="请输入时段预约规定人数" /> |
| | | </el-form-item> |
| | | </el-col> |
| | | <el-col :span="12"> |
| | | <el-form-item label="每时段预留人数" prop="timeslotReservedNum"> |
| | | <el-input v-model="formData.timeslotReservedNum" placeholder="请输入每时段预留人数" /> |
| | | </el-form-item> |
| | | </el-col> |
| | | |
| | | <el-col :span="12"> |
| | | <el-form-item label="预约注意事项" prop="notes"> |
| | | <el-input v-model="formData.notes" placeholder="请输入预约注意事项" /> |
| | | </el-form-item> |
| | | </el-col> |
| | | |
| | | <!-- ↓↓↓ 以下三项按要求「单占一行」 ↓↓↓ --> |
| | | <el-col :span="24"> |
| | | <el-form-item label="显示患者条码" prop="displayBarcode"> |
| | | <el-checkbox-group v-model="formData.displayBarcode"> |
| | | <el-checkbox |
| | | v-for="(dict, index) in getIntDictOptions(DICT_TYPE.ECG_PAT_SOURCE)" |
| | | :key="index" |
| | | :label="dict.label" |
| | | :value="dict.value" |
| | | /> |
| | | </el-checkbox-group> |
| | | </el-form-item> |
| | | </el-col> |
| | | |
| | | <!-- 需求:排队序号规则(签到时如何给患者排队序号) --> |
| | | <el-col :span="24"> |
| | | <el-form-item label="排队序号规则" prop="seqRule"> |
| | | <el-select v-model="formData.seqRule" placeholder="请选择排队序号规则" class="w-full"> |
| | | <el-option |
| | | v-for="dict in getIntDictOptions(DICT_TYPE.ECG_SEQ_RULE)" |
| | | :key="dict.value" |
| | | :label="dict.label" |
| | | :value="dict.value" |
| | | /> |
| | | </el-select> |
| | | <div class="text-12px text-gray-500 leading-5 mt-1"> |
| | | 预约号:用预约系统下发的号,签到不再分配;<br /> |
| | | 签到序号:当天同检查项目内连续递增(第 1 个签到=1 号),每 9 个号预留 1 个给加急;<br /> |
| | | 时段号:按预约时间段给号(<b>不选时默认此项</b>,与改造前行为一致)。 |
| | | </div> |
| | | </el-form-item> |
| | | </el-col> |
| | | |
| | | <el-col :span="24"> |
| | | <el-form-item label="亲和项目" prop="affinityCheckTypes"> |
| | | <el-checkbox-group v-model="formData.affinityCheckTypes"> |
| | | <el-checkbox v-for="checkTypeVO in checkTypeStore.getCheckTypeOptions()" :value="checkTypeVO.value" :key="checkTypeVO.value">{{checkTypeVO.label}}</el-checkbox> |
| | | </el-checkbox-group> |
| | | </el-form-item> |
| | | </el-col> |
| | | </el-row> |
| | | </el-form> |
| | | <template #footer> |
| | | <el-button @click="submitForm" type="primary" :disabled="formLoading">确 定</el-button> |
| | |
| | | import {useCheckTypeStore} from "@/store/modules/checkType"; |
| | | import {DICT_TYPE, getIntDictOptions} from "@/utils/dict"; |
| | | |
| | | /** 检查类型 表单 */ |
| | | /** 检查项目 表单 */ |
| | | defineOptions({ name: 'CheckTypeForm' }) |
| | | |
| | | const { t } = useI18n() // 国际化 |
| | |
| | | notes: undefined, |
| | | seqPrefix: undefined, |
| | | // 排队序号规则:留空即按后端默认(时段号)处理,与改造前行为一致 |
| | | seqRule: undefined |
| | | seqRule: undefined, |
| | | // 需求9:排序序号(越小越靠前) |
| | | sort: 0 |
| | | }) |
| | | const formRules = reactive({ |
| | | }) |
| | |
| | | affinityCheckTypes: [], |
| | | notes: undefined, |
| | | seqPrefix: undefined, |
| | | seqRule: undefined |
| | | seqRule: undefined, |
| | | sort: 0 |
| | | } |
| | | formRef.value?.resetFields() |
| | | } |