提交merge1.3
This commit is contained in:
@@ -10,10 +10,6 @@
|
||||
<el-input v-model="form.name" clearable :disabled="isViewMode" />
|
||||
</el-form-item>
|
||||
</el-col>
|
||||
<<<<<<< HEAD
|
||||
<el-col :span="6">
|
||||
<el-form-item label="民族" prop="nationalityCode" label-width="80px">
|
||||
=======
|
||||
<el-col :span="8">
|
||||
<el-form-item label="性别" prop="genderEnum">
|
||||
<el-radio-group v-model="form.genderEnum" :disabled="isViewMode">
|
||||
@@ -66,7 +62,6 @@
|
||||
</el-col>
|
||||
<el-col :span="8">
|
||||
<el-form-item label="民族" prop="nationalityCode">
|
||||
>>>>>>> v1.3
|
||||
<el-select v-model="form.nationalityCode" clearable filterable :disabled="isViewMode">
|
||||
<el-option
|
||||
v-for="item in nationality_code"
|
||||
@@ -106,87 +101,10 @@
|
||||
<!-- 第二行:证件类别、证件号码、*年龄 -->
|
||||
<el-row :gutter="10">
|
||||
<el-col :span="8">
|
||||
<<<<<<< HEAD
|
||||
<el-form-item label="证件类别" prop="typeCode" label-width="80px">
|
||||
<el-select
|
||||
v-model="form.typeCode"
|
||||
placeholder="就诊卡"
|
||||
clearable
|
||||
:disabled="isViewMode"
|
||||
>
|
||||
<el-option
|
||||
v-for="dict in sys_idtype"
|
||||
:key="dict.value"
|
||||
:label="dict.label"
|
||||
:value="dict.value"
|
||||
/>
|
||||
</el-select>
|
||||
</el-form-item>
|
||||
</el-col>
|
||||
<el-col :span="8">
|
||||
<el-form-item label="证件号码" prop="idCard" label-width="80px">
|
||||
<el-input v-model="form.idCard" clearable :disabled="isViewMode" />
|
||||
</el-form-item>
|
||||
</el-col>
|
||||
<el-col :span="8">
|
||||
<el-form-item label="年龄" prop="age" label-width="80px">
|
||||
<el-input
|
||||
v-model="form.age"
|
||||
:disabled="isViewMode"
|
||||
@input="handleAgeInput"
|
||||
placeholder="请输入龄"
|
||||
>
|
||||
<template #suffix>岁</template>
|
||||
</el-input>
|
||||
</el-form-item>
|
||||
</el-col>
|
||||
</el-row>
|
||||
|
||||
<!-- 第三行:国籍、*联系方式、工作单位 -->
|
||||
<el-row :gutter="10">
|
||||
<el-col :span="8">
|
||||
<el-form-item label="国籍" prop="countryCode" label-width="80px">
|
||||
<el-select v-model="form.countryCode" placeholder="请选择国籍" clearable filterable :disabled="isViewMode">
|
||||
<el-option
|
||||
v-for="item in countryCodeList"
|
||||
:key="item.value"
|
||||
:label="item.label"
|
||||
:value="item.value"
|
||||
/>
|
||||
</el-select>
|
||||
</el-form-item>
|
||||
</el-col>
|
||||
<el-col :span="8">
|
||||
<el-form-item label="联系方式" prop="phone" label-width="80px">
|
||||
<el-input v-model="form.phone" clearable :disabled="isViewMode" />
|
||||
</el-form-item>
|
||||
</el-col>
|
||||
<el-col :span="8">
|
||||
<el-form-item label="出生日期" prop="birthDate">
|
||||
<el-date-picker
|
||||
v-model="form.birthDate"
|
||||
type="date"
|
||||
placeholder="请选择出生日期"
|
||||
format="YYYY年MM月DD日"
|
||||
:disabled="isViewMode"
|
||||
value-format="YYYY-MM-DD"
|
||||
@change="handleBirthDateChange"
|
||||
/>
|
||||
</el-form-item>
|
||||
</el-col>
|
||||
</el-row>
|
||||
|
||||
<!-- 第三行:就诊卡号、职业、邮政编码 -->
|
||||
<el-row>
|
||||
<el-col :span="8">
|
||||
=======
|
||||
>>>>>>> v1.3
|
||||
<el-form-item label="就诊卡号" prop="identifierNo">
|
||||
<el-input v-model="form.identifierNo" clearable :disabled="isViewMode" />
|
||||
</el-form-item>
|
||||
</el-col>
|
||||
<<<<<<< HEAD
|
||||
=======
|
||||
<!-- <el-col :span="8">
|
||||
<el-form-item label="国家编码" prop="countryCode">
|
||||
<el-input v-model="form.countryCode" clearable :disabled="isViewMode" />
|
||||
@@ -199,7 +117,6 @@
|
||||
</el-form-item>
|
||||
</el-col> -->
|
||||
<el-row>
|
||||
>>>>>>> v1.3
|
||||
<el-col :span="8">
|
||||
<el-form-item label="职业" prop="prfsEnum">
|
||||
<el-select v-model="form.prfsEnum" placeholder="职业" clearable :disabled="isViewMode">
|
||||
@@ -423,11 +340,7 @@
|
||||
</template>
|
||||
|
||||
<script setup name="PatientAddDialog">
|
||||
<<<<<<< HEAD
|
||||
import { watch, defineProps } from "vue";
|
||||
=======
|
||||
import { watch } from 'vue';
|
||||
>>>>>>> v1.3
|
||||
import pcas from 'china-division/dist/pcas-code.json';
|
||||
import { addPatient, patientlLists, getOutpatientRegistrationList } from './outpatientregistration';
|
||||
import {
|
||||
@@ -689,21 +602,9 @@ const validateGuardianInfo = (rule, value, callback) => {
|
||||
const data = reactive({
|
||||
isViewMode: false,
|
||||
form: {
|
||||
<<<<<<< HEAD
|
||||
typeCode: '08',
|
||||
birthDate: undefined,
|
||||
age: undefined,
|
||||
genderEnum: '1', // 默认设置为'男'
|
||||
hukouAddressSelect: undefined,
|
||||
hukouAddress: undefined,
|
||||
postalCode: undefined,
|
||||
companyAddress: undefined,
|
||||
patientDerived: undefined,
|
||||
=======
|
||||
typeCode: '01',
|
||||
tempFlag: '1',
|
||||
// genderEnum: 0,
|
||||
>>>>>>> v1.3
|
||||
},
|
||||
rules: {
|
||||
name: [{ required: true, message: '姓名不能为空', trigger: 'change' },
|
||||
@@ -720,22 +621,7 @@ const data = reactive({
|
||||
genderEnum: [{ required: true, message: '请选择性别', trigger: 'change' }],
|
||||
age: [{ required: true, message: '年龄不能为空', trigger: 'change' }],
|
||||
phone: [{ required: true, message: '联系方式不能为空', trigger: 'change' }],
|
||||
<<<<<<< HEAD
|
||||
identifierNo: [{ required: true, message: '就诊卡号不能为空', trigger: 'change' }],
|
||||
idCard: [
|
||||
{ required: false, message: '证件号码不能为空', trigger: 'change' },
|
||||
{ validator: validateIdCard, trigger: 'blur' },
|
||||
{ validator: validateUniquePatient, trigger: 'blur' }
|
||||
],
|
||||
birthDate: [{ required: false, message: '请选择出生日期', trigger: 'change' }],
|
||||
// 监护人信息条件验证规则
|
||||
guardianName: [{ validator: validateGuardianInfo, trigger: 'blur' }],
|
||||
guardianRelation: [{ validator: validateGuardianInfo, trigger: 'blur' }],
|
||||
guardianPhone: [{ validator: validateGuardianInfo, trigger: 'blur' }],
|
||||
guardianIdNo: [{ validator: validateGuardianInfo, trigger: 'blur' }],
|
||||
=======
|
||||
idCard: [{ required: true, message: '证件号不能为空', trigger: 'change' }],
|
||||
>>>>>>> v1.3
|
||||
},
|
||||
});
|
||||
|
||||
@@ -757,76 +643,6 @@ const props = defineProps({
|
||||
}
|
||||
});
|
||||
|
||||
<<<<<<< HEAD
|
||||
// 处理出生日期变化,自动计算年龄
|
||||
function handleBirthDateChange() {
|
||||
if (form.value.birthDate) {
|
||||
const birthDate = new Date(form.value.birthDate);
|
||||
const today = new Date();
|
||||
|
||||
let age = today.getFullYear() - birthDate.getFullYear();
|
||||
const monthDiff = today.getMonth() - birthDate.getMonth();
|
||||
|
||||
// 计算精确年龄
|
||||
if (monthDiff < 0 || (monthDiff === 0 && today.getDate() < birthDate.getDate())) {
|
||||
age--;
|
||||
}
|
||||
|
||||
form.value.age = age;
|
||||
}
|
||||
}
|
||||
|
||||
// 处理年龄输入,自动计算出生日期
|
||||
function handleAgeInput() {
|
||||
// 提取数字部分
|
||||
const ageMatch = form.value.age.match(/\d+/);
|
||||
if (ageMatch) {
|
||||
const age = parseInt(ageMatch[0]);
|
||||
// 移除非数字字符,保留数字和可能的单位
|
||||
form.value.age = age ;
|
||||
|
||||
// 计算出生日期
|
||||
const today = new Date();
|
||||
const birthYear = today.getFullYear() - age;
|
||||
const birthMonth = today.getMonth();
|
||||
const birthDay = today.getDate();
|
||||
|
||||
const birthDate = new Date(birthYear, birthMonth, birthDay);
|
||||
|
||||
// 格式化为YYYY-MM-DD
|
||||
const formattedBirthDate = birthDate.toISOString().split('T')[0];
|
||||
form.value.birthDate = formattedBirthDate;
|
||||
}
|
||||
}
|
||||
watch(
|
||||
() => form.value.idCard,
|
||||
(newIdCard) => {
|
||||
if (newIdCard && newIdCard.length === 18) {
|
||||
const birthYear = parseInt(newIdCard.substring(6, 10));
|
||||
const birthMonth = parseInt(newIdCard.substring(10, 12));
|
||||
const birthDay = parseInt(newIdCard.substring(12, 14));
|
||||
|
||||
// 设置出生日期
|
||||
form.value.birthDate = `${birthYear}-${birthMonth.toString().padStart(2, '0')}-${birthDay.toString().padStart(2, '0')}`;
|
||||
const today = new Date();
|
||||
const currentYear = today.getFullYear();
|
||||
const currentMonth = today.getMonth() + 1;
|
||||
const currentDay = today.getDate();
|
||||
|
||||
let age = currentYear - birthYear;
|
||||
|
||||
// 如果当前月份小于出生月份,或者月份相同但当前日期小于出生日期,则年龄减1
|
||||
if (currentMonth < birthMonth || (currentMonth === birthMonth && currentDay < birthDay)) {
|
||||
age--;
|
||||
}
|
||||
|
||||
form.value.age = age;
|
||||
|
||||
form.value.age = age ;
|
||||
}
|
||||
}
|
||||
);
|
||||
=======
|
||||
// watch(
|
||||
// () => form.value.idCard,
|
||||
// (newIdCard) => {
|
||||
@@ -851,7 +667,6 @@ watch(
|
||||
// }
|
||||
// }
|
||||
// );
|
||||
>>>>>>> v1.3
|
||||
/** 查询菜单列表 */
|
||||
function getList() {
|
||||
patientlLists().then((response) => {
|
||||
|
||||
Reference in New Issue
Block a user