From c75027743ea7c3ecc2d0885f01d11d2ad78679a3 Mon Sep 17 00:00:00 2001
From: yxh <172933527@qq.com>
Date: 星期五, 23 十月 2026 14:23:26 +0800
Subject: [PATCH] Merge branch 'yxh' of http://116.62.18.175:6699/r/~yxh/opo-web
---
src/views/project/donatebaseinfo/index.vue | 254 +++++++++++++++++++++++++++++++-------------------
1 files changed, 155 insertions(+), 99 deletions(-)
diff --git a/src/views/project/donatebaseinfo/index.vue b/src/views/project/donatebaseinfo/index.vue
index 01e076a..c524778 100644
--- a/src/views/project/donatebaseinfo/index.vue
+++ b/src/views/project/donatebaseinfo/index.vue
@@ -3,16 +3,17 @@
<el-form
:model="queryParams"
ref="queryForm"
+ class="opo-query-form"
:inline="true"
v-show="showSearch"
label-width="70px"
>
<el-row :gutter="8">
<el-col :span="5">
- <el-form-item label="濮撳悕" prop="name">
+ <el-form-item label="鎹愮尞鑰�" prop="name">
<el-input
v-model="queryParams.name"
- placeholder="璇疯緭鍏ュ鍚�"
+ placeholder="璇疯緭鍏ユ崘鐚�呭鍚�"
clearable
size="small"
@keyup.enter.native="handleQuery"
@@ -46,24 +47,25 @@
</el-select>
</el-form-item>
</el-col>
- <el-col :span="9">
- <el-form-item label="妗堜緥鏃堕棿">
- <el-date-picker
- style="width: 100%"
- v-model="selecttime"
- type="monthrange"
- range-separator="鑷�"
- start-placeholder="寮�濮嬫湀浠�"
- end-placeholder="缁撴潫鏈堜唤"
- value-format="yyyy-MM-dd"
- @change="getTimeList"
+ <el-col :span="6">
+ <el-form-item label="鎶ュ憡浜�">
+ <el-select
+ v-model="queryParams.reporterno"
+ placeholder="璇烽�夋嫨鎶ュ憡浜�"
>
- </el-date-picker>
+ <el-option
+ v-for="item in reportlist"
+ :key="item.index"
+ :label="item.reportername"
+ :value="item.reporterno"
+ >
+ </el-option>
+ </el-select>
</el-form-item>
</el-col>
</el-row>
<el-row :gutter="8">
- <el-col :span="5">
+ <el-col :span="6">
<el-form-item label="鎹愮尞杩涘害" prop="workflow">
<el-select
v-model="queryParams.workflow"
@@ -80,23 +82,23 @@
</el-select>
</el-form-item>
</el-col>
- <el-col :span="5">
- <el-form-item label="鎶ュ憡浜�">
- <el-select
- v-model="queryParams.reporterno"
- placeholder="璇烽�夋嫨鎶ュ憡浜�"
+ <el-col :span="9">
+ <el-form-item label="妗堜緥鏃堕棿">
+ <el-date-picker
+ style="width: 100%"
+ v-model="selecttime"
+ type="monthrange"
+ range-separator="鑷�"
+ start-placeholder="寮�濮嬫湀浠�"
+ end-placeholder="缁撴潫鏈堜唤"
+ value-format="yyyy-MM-dd"
+ @change="getTimeList"
>
- <el-option
- v-for="item in reportlist"
- :key="item.index"
- :label="item.reportername"
- :value="item.reporterno"
- >
- </el-option>
- </el-select>
+ </el-date-picker>
</el-form-item>
</el-col>
- <el-col :span="5">
+
+ <el-col :span="6">
<el-form-item label="鏄惁缁堟">
<el-select
v-model="queryParams.terminationCase"
@@ -112,19 +114,8 @@
</el-select>
</el-form-item>
</el-col>
- <el-col :span="9">
- <el-form-item label="绫嶈疮">
- <div>
- <li_area_select
- ref="areaSelect"
- v-model="searchAddress"
- ></li_area_select>
- </div>
- </el-form-item>
- </el-col>
- </el-row>
- <el-row>
- <el-col :span="4">
+ <!-- 鎼滅储/閲嶇疆绱ц窡鏌ヨ鏉′欢锛堜笌"妗堜緥璇勪及"椤典竴鑷达級 -->
+ <el-col :span="6">
<el-form-item>
<el-button
type="primary"
@@ -206,7 +197,7 @@
label="鎹愮尞缂栧彿"
align="center"
prop="donorno"
- width="200"
+ width="100"
/>
<el-table-column label="濮撳悕" align="center" prop="name" width="100" />
<el-table-column label="鎬у埆" align="center" prop="sex" width="100">
@@ -233,9 +224,9 @@
<el-table-column
label="鍖荤枟鏈烘瀯"
align="center"
- prop="treatmenthospitalname"
+ prop="treatmenthospitalname" width="220"
/>
- <el-table-column label="琛�鍨�" align="center" prop="bloodtype" width="100">
+ <el-table-column label="琛�鍨�" align="center" prop="bloodtype" width="80">
<template slot-scope="scope">
<dict-tag
:options="dict.type.sys_BloodType"
@@ -263,7 +254,7 @@
prop="reportername"
width="100"
/>
- <!--
+
<el-table-column
label="鐜版墍鍦ㄥ湴甯�"
align="center"
@@ -283,7 +274,7 @@
/>
</template>
</el-table-column>
- -->
+
<el-table-column
label="鎹愮尞杩涘害"
align="center"
@@ -304,7 +295,7 @@
label="鎿嶄綔"
align="center"
class-name="small-padding fixed-width"
- fixed="right"
+ fixed="right" width="200"
>
<template slot-scope="scope">
<el-button
@@ -518,6 +509,47 @@
</el-form-item>
</el-col>
</el-row>
+ <el-row>
+ <el-col :span="12">
+ <el-form-item
+ label="鎵�鍦ㄥ尰鐤楁満鏋�"
+ prop="currentMedicalInstitution"
+ >
+ <el-input
+ v-model="form.currentMedicalInstitution"
+ placeholder="璇疯緭鍏�"
+ />
+ </el-form-item>
+ </el-col>
+ <el-col :span="12">
+ <el-form-item
+ label-width="150px"
+ label="鎵�鍦ㄥ尰鐤楁満鏋勭瀹�"
+ prop="currentDept"
+ >
+ <el-input v-model="form.currentDept" placeholder="璇疯緭鍏�" />
+ </el-form-item>
+ </el-col>
+ </el-row>
+ <el-row>
+ <el-col :span="12">
+ <el-form-item label="棣栨鍖荤枟鏈烘瀯" prop="firstMedicalInstitution">
+ <el-input
+ v-model="form.firstMedicalInstitution"
+ placeholder="璇疯緭鍏�"
+ />
+ </el-form-item>
+ </el-col>
+ <el-col :span="12">
+ <el-form-item
+ label-width="150px"
+ label="棣栨鍖荤枟鏈烘瀯绉戝"
+ prop="firstDept"
+ >
+ <el-input v-model="form.firstDept" placeholder="璇疯緭鍏�" />
+ </el-form-item>
+ </el-col>
+ </el-row>
<el-row>
<el-col :span="12">
<el-form-item label="浣忓潃" prop="residenceaddress">
@@ -686,6 +718,21 @@
margin-top: 20px;
"
>
+ <el-row>
+ <el-col :span="24">
+ <el-form-item align="left" label="鏈汉鎰忔効 ">
+ <el-checkbox-group v-model="form.selfwill">
+ <el-checkbox
+ v-for="dict in dict.type.sys_SelfWill"
+ :key="dict.value"
+ :label="dict.value"
+ >
+ {{ dict.label }}
+ </el-checkbox>
+ </el-checkbox-group>
+ </el-form-item>
+ </el-col>
+ </el-row>
<el-row>
<div display="flex">
<el-row>
@@ -718,21 +765,7 @@
</el-row>
</div>
</el-row>
- <el-row>
- <el-col :span="24">
- <el-form-item align="left" label="鏈汉鎰忔効 ">
- <el-checkbox-group v-model="form.selfwill">
- <el-checkbox
- v-for="dict in dict.type.sys_SelfWill"
- :key="dict.value"
- :label="dict.value"
- >
- {{ dict.label }}
- </el-checkbox>
- </el-checkbox-group>
- </el-form-item>
- </el-col>
- </el-row>
+
<el-row>
<el-col :span="12">
<el-form-item label="涓昏浜插睘" prop="majorrelatives">
@@ -821,7 +854,7 @@
size="small"
style="width: 190px"
v-model="form.contacttime"
- type="datetime"
+ type="datetime" format="yyyy-MM-dd HH:mm"
value-format="yyyy-MM-dd HH:mm:ss"
placeholder="閫夋嫨鎶ュ憡鏃堕棿"
>
@@ -878,7 +911,7 @@
size="small"
style="width: 190px"
v-model="form.reporttime"
- type="datetime"
+ type="datetime" format="yyyy-MM-dd HH:mm"
value-format="yyyy-MM-dd HH:mm:ss"
placeholder="閫夋嫨鎶ュ憡鏃堕棿"
>
@@ -1140,9 +1173,24 @@
users: [],
// 琛ㄥ崟鏍¢獙
- rules: {
+ rules: {
name: [
{ required: true, message: "璇疯緭鍏ユ崘鐚�呭鍚�", trigger: "blur" }
+ ],
+ nationality: [
+ { required: true, message: "璇疯緭鍏ュ浗绫�", trigger: "blur" }
+ ],
+ currentMedicalInstitution: [
+ { required: true, message: "璇疯緭鍏ユ墍鍦ㄥ尰鐤楁満鏋�", trigger: "blur" }
+ ],
+ currentDept: [
+ { required: true, message: "鎵�鍦ㄥ尰鐤楁満鏋勭瀹�", trigger: "blur" }
+ ],
+ firstMedicalInstitution: [
+ { required: true, message: "璇疯緭鍏ラ娆″尰鐤楁満鏋�", trigger: "blur" }
+ ],
+ firstDept: [
+ { required: true, message: "璇疯緭鍏ラ娆″尰鐤楁満鏋勭瀹�", trigger: "blur" }
],
birthday: [
{ required: true, message: "璇烽�夋嫨鍑虹敓鏃ユ湡", trigger: "blur" }
@@ -1153,22 +1201,44 @@
residenceaddress: [
{ required: true, message: "璇疯緭鍏ヤ綇鍧�", trigger: "blur" }
],
- contacttime: [
- {
- required: true,
- message: "璇疯緭鍏ョ孩鍗佸瓧浼氳仈绯绘椂闂�",
- trigger: "blur"
- }
+ registerAddresss: [
+ { required: true, message: "璇疯緭鍏ョ幇灞呬綇鍦板潃", trigger: "blur" }
+ ],
+ diseasetype: [
+ { required: true, message: "璇烽�夋嫨鐤剧梾绫诲瀷", trigger: "blur" }
+ ],
+ infectious: [
+ { required: true, message: "璇烽�夋嫨浼犳煋鐥呯被鍨�", trigger: "blur" }
+ ],
+ patientstate: [
+ { required: true, message: "璇烽�夋嫨鐥呬汉鐘跺喌", trigger: "blur" }
+ ],
+ kinship: [
+ { required: true, message: "璇烽�夋嫨浜插睘鎯呭喌", trigger: "blur" }
+ ],
+ majorrelatives: [
+ { required: true, message: "璇疯緭鍏ヤ富瑕佷翰灞�", trigger: "blur" }
+ ],
+ selfwill: [
+ { required: true, message: "璇烽�夋嫨鏈汉鎰忔効", trigger: "blur" }
+ ],
+ registerAddresss: [
+ { required: true, message: "璇疯緭鍏ョ幇鎵�鍦ㄥ湴", trigger: "blur" }
+ ],
+ familyrelations: [
+ { required: true, message: "璇烽�夋嫨浜插睘涓庢崘鐚�呭叧绯�", trigger: "blur" }
+ ],
+ infosources: [
+ { required: true, message: "璇烽�夋嫨淇℃伅鏉ユ簮", trigger: "blur" }
],
idcardno: [
{ required: true, message: "璇锋纭緭鍏ヨ瘉浠跺彿鐮�", trigger: "blur" }
],
sex: [{ required: true, message: "鎬у埆涓嶈兘涓虹┖", trigger: "blur" }],
- // age: [{ required: true, message: "璇疯緭鍏ュ勾榫�", trigger: "blur" }],
+ age: [{ required: true, message: "璇疯緭鍏ュ勾榫�", trigger: "blur" }],
treatmenthospitalno: [
{ required: true, message: "璇烽�夋嫨鍖荤枟鏈烘瀯", trigger: "blur" }
],
- // treatmenthospitalno: [{ required: true, message: "璇烽�夋嫨鍖荤枟鏈烘瀯", trigger: "change" }],
bloodtype: [
{ required: true, message: "璇烽�夋嫨ABO琛�鍨�", trigger: "blur" }
],
@@ -1180,7 +1250,6 @@
inpatientno: [
{ required: true, message: "杈撳叆浣忛櫌鍙�", trigger: "blur" }
],
-
diagnosisname: [
{ required: true, message: "鐤剧梾璇婃柇涓嶈兘涓虹┖", trigger: "blur" }
],
@@ -1190,17 +1259,6 @@
infophone: [
{ required: true, message: "璇疯緭鍏ヤ俊鎭憳鑱旂郴鐢佃瘽", trigger: "blur" }
],
- redorganno: [
- { required: true, message: "璇烽�夋嫨绾㈠崄瀛椾細鏈烘瀯", trigger: "blur" }
- ],
- contactperson: [
- {
- required: true,
- message: "绾㈠崄瀛椾細鑱旂郴浜轰笉鑳戒负绌�",
- trigger: "blur"
- }
- ],
- // contactnumber: [{required: true,message: "璇疯緭鍏ョ孩鍗佸瓧浼氳仈绯荤數璇�",trigger: "change"}],
acquisitiontissueno: [
{ required: true, message: "鍣ㄥ畼鑾峰彇缁勭粐涓嶈兘涓虹┖", trigger: "blur" }
],
@@ -1596,19 +1654,16 @@
this.queryParams.reportno = this.reportervalue;
}
- if (this.starttime != "") {
- this.queryParams.starttime = this.starttime;
- } else {
- this.queryParams.starttime = "";
- }
- if (this.endtime != "") {
- this.queryParams.endtime = this.endtime;
- } else {
- this.queryParams.endtime = "";
- }
- this.queryParams.residenceprovince = this.$refs.areaSelect.getSheng();
- this.queryParams.residencecity = this.$refs.areaSelect.getShi();
- this.queryParams.residencetown = this.$refs.areaSelect.getQu();
+ // 鏈�夋嫨鏃堕棿鑼冨洿鏃跺繀椤讳紶 null锛氫紶绌轰覆浼氳鍚庣鎷煎嚭 `donatetime >= ''`锛�
+ // MySQL 涓ユ牸妯″紡浼氭姤 Incorrect DATETIME value: ''锛屽鑷村垪琛ㄦ煡涓嶅嚭鏉ャ��
+ // request.js 鍙細鎷兼帴闈� null/undefined 鐨勫弬鏁帮紝鎵�浠� null 绛変簬"涓嶅甫璇ユ潯浠�"銆�
+ this.queryParams.starttime = this.starttime || null;
+ this.queryParams.endtime = this.endtime || null;
+ // 鏌ヨ鏉′欢閲岀殑"绫嶈疮"宸茬Щ闄わ紝涓嶅啀浠� areaSelect 缁勪欢鍙栧�硷紱
+ // 缃┖浠ユ竻鎺夊彲鑳芥畫鐣欑殑鏃ф潯浠讹紙鍙傛暟涓� null 鏃朵笉浼氳鎷艰繘璇锋眰锛�
+ this.queryParams.residenceprovince = null;
+ this.queryParams.residencecity = null;
+ this.queryParams.residencetown = null;
console.log(this.queryParams);
listDonatebaseinfo(this.queryParams).then(response => {
@@ -2019,6 +2074,7 @@
</script>
<style scoped>
+/* 鏌ヨ鍖鸿璺濄�侀〉闈㈠唴杈硅窛銆佸伐鍏锋爮闂磋窛宸叉彁鍗囦负鍏ㄥ眬瑙勫垯锛�.opo-query-form / .app-container锛夛紝姝ゅ涓嶅啀鍗曠嫭瑕嗙洊 */
::v-deep .el-dialog__header {
padding-top: 40px !important;
margin: auto !important;
--
Gitblit v1.9.3