eight
2025-04-11 348e6bcdc7fa566a48b96dea53d24ec6dda49e1d
src/views/ecg/appointment/AppointmentConfirm.vue
@@ -6,8 +6,8 @@
  </div>
  <div style="display: flex; flex-wrap: wrap; justify-content: center; margin-bottom: 20px">
    <div v-for="_appointment in appointmentVOList" :key="_appointment.applyNo">
      <CheckItemPanel  :appointment="_appointment" />
    <div v-for="(_appointment, index) in appointmentVOList" :key="index">
      <CheckItemPanel  :appointment="_appointment"  @event_appoint_confirm="onEventAppointConfirm"/>
    </div>
  </div>
@@ -28,8 +28,7 @@
          <el-radio
              v-for="dict in getIntDictOptions(DICT_TYPE.SYSTEM_USER_SEX)"
              :key="dict.value"
              :value="dict.value"
          >
              :value="dict.value">
            {{ dict.label }}
          </el-radio>
        </el-radio-group>
@@ -88,13 +87,11 @@
<script setup lang="ts">
import {DICT_TYPE, getIntDictOptions} from '@/utils/dict'
import { AppointmentApi, AppointmentVO } from '@/api/ecg/appointment'
import {useCheckTypeStore} from "@/store/modules/checkType";
import CheckItemPanel from "@/views/ecg/appointment/CheckItemPanel.vue";
import {getCheckTypeName} from "@/utils/checkTypeFormatter";
/** 预约确认 表单 */
defineOptions({ name: 'AppointmentConfirm' })
const checkTypeStore = useCheckTypeStore();
const queryParams = reactive({
    patId: ''
@@ -105,6 +102,7 @@
const formData = ref<AppointmentVO>({
  id: 0,
  applyNo: "",
  episodeId: "",
  patSrc: 0,
  patId: "",
  patName: "",
@@ -119,26 +117,29 @@
  patWardCode: "",
  patWardDesc: "",
  patBedNo: "",
  bookId: "",
  bookTime: new Date(),
  bookDate: new Date(),
  bookTimeslot: 9301030,
  bookCheckType: checkTypeStore.getCheckTypeName(100),
  bookCheckType: getCheckTypeName(100),
  paid: 0,
  bookSeqNum: 0,
})
const formRef = ref() // 表单 Ref
const searchBookInfo = async () => {
  resetForm()
  if (null === queryParams.patId || "" === queryParams.patId)
  if (null === queryParams.patId || "" === queryParams.patId.trim())
    return
  const data = await AppointmentApi.queryAndCreateAppointmentByPatId(queryParams.patId) // 对应数据库中 pat_id
  const _patId = queryParams.patId.trim()
  console.warn("===" + _patId + "===")
  const data = await AppointmentApi.queryAndCreateAppointmentByPatId(_patId) // 对应数据库中 pat_id
  console.info( data )
  appointmentVOList.value = data
  if (null !== data) {
  if (null !== data && data.length > 0) {
    formData.value = data[0]
    appointmentVOList.value = data
    console.info( formData.value )
    return
  }
@@ -152,9 +153,11 @@
/** 重置表单 */
const resetForm = () => {
  appointmentVOList.value.length=0;
  formData.value = {
    id: 0,
    applyNo: "",
    episodeId: "",
    patSrc: 0,
    patId: "",
    patName: "",
@@ -169,16 +172,25 @@
    patWardCode: "",
    patWardDesc: "",
    patBedNo: "",
    bookId: "",
    bookTime: new Date(),
    bookDate: new Date(),
    bookTimeslot: 9301030,
    bookCheckType: checkTypeStore.getCheckTypeName(100),
    bookCheckType: getCheckTypeName(100),
    paid: 0,
    bookSeqNum: 0,
  }
  formRef.value?.resetFields()
}
const onEventAppointConfirm = () => {
/*
  if (null !== appointmentVOList.value && appointmentVOList.value.length === 1) {
    queryParams.patId = ""
  }
*/
  queryParams.patId = ""
}
/** 初始化 **/
onMounted(() => {
  resetForm()