From 71367d956116b05cdadd8d3abefd5e7670683e9c Mon Sep 17 00:00:00 2001
From: eight <641137800@qq.com>
Date: 星期三, 07 八月 2024 16:24:09 +0800
Subject: [PATCH] 新增 预约 基本字段 OK

---
 src/views/ecg/appointment/index.vue           |   21 +------
 src/api/ecg/appointment/index.ts              |    4 
 src/views/ecg/appointment/AppointmentForm.vue |   94 ++++++++++++++-----------------
 src/utils/dict.ts                             |    4 +
 4 files changed, 51 insertions(+), 72 deletions(-)

diff --git a/src/api/ecg/appointment/index.ts b/src/api/ecg/appointment/index.ts
index d980b96..e3e4960 100644
--- a/src/api/ecg/appointment/index.ts
+++ b/src/api/ecg/appointment/index.ts
@@ -4,7 +4,7 @@
 export interface AppointmentVO {
   patId: string // 鎮h�呯紪鍙�
   patName: string // 鎮h�呭鍚�
-  patGender: boolean // 鎮h�呮�у埆
+  patGender: number // 鎮h�呮�у埆
   patBirthday: Date // 鎮h�呯敓鏃�
   patMobile: string // 鎮h�呮墜鏈�
   patPhone: string // 鎮h�呯數璇�
@@ -53,4 +53,4 @@
   exportAppointment: async (params) => {
     return await request.download({ url: `/ecg/appointment/export-excel`, params })
   }
-}
\ No newline at end of file
+}
diff --git a/src/utils/dict.ts b/src/utils/dict.ts
index 7fbcfeb..cdc7547 100644
--- a/src/utils/dict.ts
+++ b/src/utils/dict.ts
@@ -142,6 +142,10 @@
   INFRA_FILE_STORAGE = 'infra_file_storage',
   INFRA_OPERATE_TYPE = 'infra_operate_type',
 
+  // ========== ECG 妯″潡 ==========
+  ECG_BOOK_TIMESLOT = 'ecg_book_timeslot',
+  ECG_CHECK_TYPE = 'ecg_check_type',
+
   // ========== BPM 妯″潡 ==========
   BPM_MODEL_FORM_TYPE = 'bpm_model_form_type',
   BPM_TASK_CANDIDATE_STRATEGY = 'bpm_task_candidate_strategy',
diff --git a/src/views/ecg/appointment/AppointmentForm.vue b/src/views/ecg/appointment/AppointmentForm.vue
index 694fff4..2aea537 100644
--- a/src/views/ecg/appointment/AppointmentForm.vue
+++ b/src/views/ecg/appointment/AppointmentForm.vue
@@ -16,13 +16,42 @@
       <el-form-item label="鎮h�呮�у埆" prop="patGender">
         <el-radio-group v-model="formData.patGender">
           <el-radio
-            v-for="dict in getBoolDictOptions(DICT_TYPE.SYSTEM_USER_SEX)"
+            v-for="dict in getIntDictOptions(DICT_TYPE.SYSTEM_USER_SEX)"
             :key="dict.value"
             :label="dict.value"
           >
             {{ dict.label }}
           </el-radio>
         </el-radio-group>
+      </el-form-item>
+      <el-form-item label="棰勭害鏃ユ湡" prop="bookDate">
+          <el-date-picker
+                  v-model="formData.bookDate"
+                  type="date"
+                  value-format="x"
+                  placeholder="閫夋嫨棰勭害鏃ユ湡"
+                  :default-value="new Date()"
+          />
+      </el-form-item>
+      <el-form-item label="棰勭害鏃堕棿娈�" prop="bookTimeslot">
+          <el-select v-model="formData.bookTimeslot" placeholder="璇烽�夋嫨棰勭害鏃堕棿娈�">
+              <el-option
+                      v-for="dict in getIntDictOptions(DICT_TYPE.ECG_BOOK_TIMESLOT)"
+                      :key="dict.value"
+                      :label="dict.label"
+                      :value="dict.value"
+              />
+          </el-select>
+      </el-form-item>
+      <el-form-item label="棰勭害妫�鏌ョ被鍨�" prop="bookCheckType">
+          <el-select v-model="formData.bookCheckType" placeholder="璇烽�夋嫨棰勭害妫�鏌ョ被鍨�">
+              <el-option
+                      v-for="dict in getIntDictOptions(DICT_TYPE.ECG_CHECK_TYPE)"
+                      :key="dict.value"
+                      :label="dict.label"
+                      :value="dict.value"
+              />
+          </el-select>
       </el-form-item>
       <el-form-item label="鎮h�呯敓鏃�" prop="patBirthday">
         <el-date-picker
@@ -59,43 +88,6 @@
       <el-form-item label="搴婂彿" prop="patBedNo">
         <el-input v-model="formData.patBedNo" placeholder="璇疯緭鍏ュ簥鍙�" />
       </el-form-item>
-      <el-form-item label="棰勭害缂栧彿" prop="bookId">
-        <el-input v-model="formData.bookId" placeholder="璇疯緭鍏ラ绾︾紪鍙�" />
-      </el-form-item>
-      <el-form-item label="棰勭害妫�鏌ユ椂闂存" prop="bookPeriodStart">
-        <el-date-picker
-          v-model="formData.bookPeriodStart"
-          type="date"
-          value-format="x"
-          placeholder="閫夋嫨棰勭害妫�鏌ユ椂闂存"
-        />
-      </el-form-item>
-      <el-form-item label="棰勭害妫�鏌ユ椂闂存" prop="bookPeriodEnd">
-        <el-date-picker
-          v-model="formData.bookPeriodEnd"
-          type="date"
-          value-format="x"
-          placeholder="閫夋嫨棰勭害妫�鏌ユ椂闂存"
-        />
-      </el-form-item>
-      <el-form-item label="棰勭害鍙戠敓鏃堕棿" prop="bookTime">
-        <el-date-picker
-          v-model="formData.bookTime"
-          type="date"
-          value-format="x"
-          placeholder="閫夋嫨棰勭害鍙戠敓鏃堕棿"
-        />
-      </el-form-item>
-      <el-form-item label="棰勭害妫�鏌ョ被鍨�" prop="bookCheckType">
-        <el-select v-model="formData.bookCheckType" placeholder="璇烽�夋嫨棰勭害妫�鏌ョ被鍨�">
-          <el-option
-            v-for="dict in getBoolDictOptions(DICT_TYPE.ECG_CHECK_TYPE)"
-            :key="dict.value"
-            :label="dict.label"
-            :value="dict.value"
-          />
-        </el-select>
-      </el-form-item>
     </el-form>
     <template #footer>
       <el-button @click="submitForm" type="primary" :disabled="formLoading">纭� 瀹�</el-button>
@@ -104,7 +96,7 @@
   </Dialog>
 </template>
 <script setup lang="ts">
-import { getBoolDictOptions, DICT_TYPE } from '@/utils/dict'
+import {DICT_TYPE, getIntDictOptions} from '@/utils/dict'
 import { AppointmentApi, AppointmentVO } from '@/api/ecg/appointment'
 
 /** 棰勭害 琛ㄥ崟 */
@@ -120,7 +112,7 @@
 const formData = ref({
   patId: undefined,
   patName: undefined,
-  patGender: undefined,
+  patGender: 1, // 1 鐢� 2 濂�
   patBirthday: undefined,
   patMobile: undefined,
   patPhone: undefined,
@@ -132,19 +124,17 @@
   patWardDesc: undefined,
   patBedNo: undefined,
   bookId: undefined,
-  bookPeriodStart: undefined,
-  bookPeriodEnd: undefined,
   bookTime: undefined,
-  bookCheckType: undefined
+  bookDate: new Date(),
+  bookTimeslot: 10001015,
+  bookCheckType: 10
 })
 const formRules = reactive({
   patId: [{ required: true, message: '鎮h�呯紪鍙蜂笉鑳戒负绌�', trigger: 'blur' }],
   patName: [{ required: true, message: '鎮h�呭鍚嶄笉鑳戒负绌�', trigger: 'blur' }],
   patGender: [{ required: true, message: '鎮h�呮�у埆涓嶈兘涓虹┖', trigger: 'blur' }],
-  bookId: [{ required: true, message: '棰勭害缂栧彿涓嶈兘涓虹┖', trigger: 'blur' }],
-  bookPeriodStart: [{ required: true, message: '棰勭害妫�鏌ユ椂闂存涓嶈兘涓虹┖', trigger: 'blur' }],
-  bookPeriodEnd: [{ required: true, message: '棰勭害妫�鏌ユ椂闂存涓嶈兘涓虹┖', trigger: 'blur' }],
-  bookTime: [{ required: true, message: '棰勭害鍙戠敓鏃堕棿涓嶈兘涓虹┖', trigger: 'blur' }],
+  bookDate: [{ required: true, message: '棰勭害鏃ユ湡涓嶈兘涓虹┖', trigger: 'blur' }],
+  bookTimeslot: [{ required: true, message: '棰勭害妫�鏌ユ椂闂存涓嶈兘涓虹┖', trigger: 'blur' }],
   bookCheckType: [{ required: true, message: '棰勭害妫�鏌ョ被鍨嬩笉鑳戒负绌�', trigger: 'change' }]
 })
 const formRef = ref() // 琛ㄥ崟 Ref
@@ -196,7 +186,7 @@
   formData.value = {
     patId: undefined,
     patName: undefined,
-    patGender: undefined,
+    patGender: 1, // 1 鐢� 2 濂�
     patBirthday: undefined,
     patMobile: undefined,
     patPhone: undefined,
@@ -208,11 +198,11 @@
     patWardDesc: undefined,
     patBedNo: undefined,
     bookId: undefined,
-    bookPeriodStart: undefined,
-    bookPeriodEnd: undefined,
     bookTime: undefined,
-    bookCheckType: undefined
+    bookDate: new Date(),
+    bookTimeslot: 10001015,
+    bookCheckType: 10
   }
   formRef.value?.resetFields()
 }
-</script>
\ No newline at end of file
+</script>
diff --git a/src/views/ecg/appointment/index.vue b/src/views/ecg/appointment/index.vue
index 54c7f47..772c911 100644
--- a/src/views/ecg/appointment/index.vue
+++ b/src/views/ecg/appointment/index.vue
@@ -161,17 +161,6 @@
           class="!w-240px"
         />
       </el-form-item>
-      <el-form-item label="棰勭害鍙戠敓鏃堕棿" prop="bookTime">
-        <el-date-picker
-          v-model="queryParams.bookTime"
-          value-format="YYYY-MM-DD HH:mm:ss"
-          type="daterange"
-          start-placeholder="寮�濮嬫棩鏈�"
-          end-placeholder="缁撴潫鏃ユ湡"
-          :default-time="[new Date('1 00:00:00'), new Date('1 23:59:59')]"
-          class="!w-220px"
-        />
-      </el-form-item>
       <el-form-item label="棰勭害妫�鏌ョ被鍨�" prop="bookCheckType">
         <el-select
           v-model="queryParams.bookCheckType"
@@ -325,7 +314,6 @@
   patName: undefined,
   patGender: undefined,
   patBirthday: undefined,
-  patBirthday: [],
   patMobile: undefined,
   patPhone: undefined,
   patIdentityId: undefined,
@@ -336,11 +324,8 @@
   patWardDesc: undefined,
   patBedNo: undefined,
   bookId: undefined,
-  bookPeriodStart: undefined,
-  bookPeriodStart: [],
-  bookPeriodEnd: undefined,
-  bookPeriodEnd: [],
-  bookTime: [],
+  bookDate: undefined,
+  bookTimeslot: undefined,
   bookCheckType: undefined,
   bookSrc: undefined
 })
@@ -409,4 +394,4 @@
 onMounted(() => {
   getList()
 })
-</script>
\ No newline at end of file
+</script>

--
Gitblit v1.9.3