From f4c7c812491f51777e6b4d43d17d77526e91fe12 Mon Sep 17 00:00:00 2001 From: yxh <172933527@qq.com> Date: 星期四, 16 三月 2023 10:21:58 +0800 Subject: [PATCH] yxh --- src/views/project/organallocation/index.vue | 392 +++++++++++++++---------------------------------------- 1 files changed, 107 insertions(+), 285 deletions(-) diff --git a/src/views/project/organallocation/index.vue b/src/views/project/organallocation/index.vue index 685839f..c99a149 100644 --- a/src/views/project/organallocation/index.vue +++ b/src/views/project/organallocation/index.vue @@ -2,83 +2,45 @@ <template> <div class="app-container"> <!-- 鎼滅储鏉′欢 --> - <el-form - :model="queryParams" - ref="queryForm" - :inline="true" - v-show="showSearch" - label-width="70px" - > + <el-form :model="queryParams" ref="queryForm" :inline="true" v-show="showSearch" label-width="70px"> <el-row :gutter="8"> <el-col :span="6"> <el-form-item label="鎹愮尞杩涘害" prop="recordstate"> - <el-select - v-model="queryParams.recordstate" - placeholder="璇烽�夋嫨鎹愮尞杩涘害" - clearable - size="small" - > - <el-option - v-for="dict in dict.type.sys_DonationStatus" - :key="dict.value" - :label="dict.label" - :value="dict.value" - /> + <el-select v-model="queryParams.recordstate" placeholder="璇烽�夋嫨鎹愮尞杩涘害" clearable size="small"> + <el-option v-for="dict in dict.type.sys_DonationStatus" :key="dict.value" :label="dict.label" + :value="dict.value" /> </el-select> </el-form-item> </el-col> <el-col :span="6"> <el-form-item label="濮撳悕" prop="name"> - <el-input - v-model="queryParams.name" - placeholder="璇疯緭鍏ュ鍚�" - clearable - size="small" - @keyup.enter.native="handleQuery" - /> + <el-input v-model="queryParams.name" placeholder="璇疯緭鍏ュ鍚�" clearable size="small" + @keyup.enter.native="handleQuery" /> </el-form-item> </el-col> <el-col :span="6"> - <el-form-item - align="left" - label="鍖荤枟鏈烘瀯" - prop="treatmenthospitalno" - > - <org-selecter - ref="orgSelecter" - :org-type="'3'" - v-model="queryParams.treatmenthospitalno" - /> + <el-form-item align="left" label="鍖荤枟鏈烘瀯" prop="treatmenthospitalno"> + <org-selecter ref="orgSelecter" :org-type="'3'" v-model="queryParams.treatmenthospitalno" /> </el-form-item> </el-col> <el-col :span="6"> <el-form-item label="鎹愮尞鍦板競"> <el-select v-model="queryParams.city" placeholder="璇烽�夋嫨鍦板競"> - <el-option - v-for="item in provinceData" - :key="item.value" - :label="item.label" - :value="item.value" - > + <el-option v-for="item in provinceData" :key="item.value" :label="item.label" :value="item.value"> </el-option> </el-select> </el-form-item> </el-col> - + </el-row> <el-row :gutter="8"> <el-col :span="6"> <el-form-item label="鎶ュ憡浜�"> <el-select v-model="queryParams.reporterno" placeholder="璇烽�夋嫨鎶ュ憡浜�"> - <el-option - v-for="item in reportlist" - :key="item.index" - :label="item.reportername" - :value="item.reporterno" - > + <el-option v-for="item in reportlist" :key="item.index" :label="item.reportername" :value="item.reporterno"> </el-option> </el-select> </el-form-item> @@ -86,32 +48,16 @@ <el-col :span="12"> <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-date-picker style="width: 100%" v-model="selecttime" type="monthrange" range-separator="鑷�" + start-placeholder="寮�濮嬫湀浠�" end-placeholder="缁撴潫鏈堜唤" value-format="yyyy-MM-dd" @change="getTimeList"> </el-date-picker> </el-form-item> </el-col> <el-col :span="6"> <el-form-item> - <el-button - type="primary" - icon="el-icon-search" - size="mini" - @click="getBaseInfoList" - >鎼滅储</el-button - > - <el-button icon="el-icon-refresh" size="mini" @click="resetQuery" - >閲嶇疆</el-button - > + <el-button type="primary" icon="el-icon-search" size="mini" @click="getBaseInfoList">鎼滅储</el-button> + <el-button icon="el-icon-refresh" size="mini" @click="resetQuery">閲嶇疆</el-button> </el-form-item> </el-col> </el-row> @@ -121,65 +67,36 @@ <el-col :span="8"> <el-card shadow="never"> <!-- 鎹愮尞妗堜緥鍒楄〃 --> - <el-table - v-loading="loading" - border - :data="donationCaseTableData" - @row-click="selectDonotor" - > + <el-table v-loading="loading" border :data="donationCaseTableData" @row-click="selectDonotor"> <el-table-column label="濮撳悕" align="center" prop="name" /> <el-table-column label="鎬у埆" align="center" prop="sex"> <template slot-scope="scope"> - <dict-tag - :options="dict.type.sys_user_sex" - :value="scope.row.sex" - /> + <dict-tag :options="dict.type.sys_user_sex" :value="scope.row.sex" /> </template> </el-table-column> - <el-table-column - label="鍖荤枟鏈烘瀯" - width="200px" - align="center" - prop="treatmenthospitalname" - /> + <el-table-column label="鍖荤枟鏈烘瀯" width="200px" align="center" prop="treatmenthospitalname" /> </el-table> <!-- hide-on-single-page --> - <pagination - v-show="total > 0" - small - layout="prev, pager, next" - :total="total" - :page.sync="queryParams.pageNum" - :limit.sync="queryParams.pageSize" - @pagination="getBaseInfoList" - /> + <pagination v-show="total > 0" small layout="prev, pager, next" :total="total" :page.sync="queryParams.pageNum" + :limit.sync="queryParams.pageSize" @pagination="getBaseInfoList" /> </el-card> </el-col> <el-col :span="16"> - <!-- <div class="grid-content bg-purple-dark" style="width:100%;height:800px;background-color:purple"> - </div> --> + <!-- <div class="grid-content bg-purple-dark" style="width:100%;height:800px;background-color:purple"> + </div> --> <el-card shadow="never"> <el-form ref="infoForm" :model="organalForm" label-width="80px"> <el-row> <el-col :span="12"> <el-form-item label="鎹愮尞缂栧彿" prop="donorno"> - <el-input - v-model="curdonorno" - disabled - placeholder="璇烽�夋嫨鎹愮尞妗堜緥" - /> + <el-input v-model="curdonorno" disabled placeholder="璇烽�夋嫨鎹愮尞妗堜緥" /> </el-form-item> </el-col> <el-col :span="6"> <el-form-item label="濮撳悕" prop="donorname"> - <el-input - v-model="curdonorname" - disabled - placeholder="璇烽�夋嫨鎹愮尞妗堜緥" - /> - </el-form-item> </el-col - ><el-col :span="6"> + <el-input v-model="curdonorname" disabled placeholder="璇烽�夋嫨鎹愮尞妗堜緥" /> + </el-form-item> </el-col><el-col :span="6"> <el-form-item label="骞撮緞" align="center" prop="age"> <el-input v-model="curage" disabled /> </el-form-item> @@ -187,81 +104,31 @@ </el-row> <el-form-item label="閫夋嫨鍣ㄥ畼"> <el-checkbox-group v-model="organalForm.organname"> - <el-checkbox - v-for="dict in dict.type.sys_Organ" - :key="dict.value" - :label="dict.value" - @click="changeorganState(dict.value)" - @change="changeorganState(dict.value)" - > + <el-checkbox v-for="dict in dict.type.sys_Organ" :key="dict.value" :label="dict.value" + @click="changeorganState(dict.value)" @change="changeorganState(dict.value)"> {{ dict.label }} </el-checkbox> </el-checkbox-group> </el-form-item> <el-form-item label="鍣ㄥ畼鍒嗛厤"> <el-table v-loading="loading" border :data="organalTableData"> - <el-table-column - label="鍣ㄥ畼鍚嶇О" - align="center" - width="90" - prop="organname" - /> - <el-table-column - label="鍣ㄥ畼缂栧彿" - align="center" - width="80" - prop="organno" - /> - <el-table-column - label="鍒嗛厤鐘舵��" - align="center" - width="90" - prop="organstate" - > + <el-table-column label="鍣ㄥ畼鍚嶇О" align="center" width="90" prop="organname" /> + <el-table-column label="鍣ㄥ畼缂栧彿" align="center" width="80" prop="organno" /> + <el-table-column label="鍒嗛厤鐘舵��" align="center" width="90" prop="organstate"> <template slot-scope="scope"> - <dict-tag - :options="dict.type.sys_organstate" - :value="scope.row.organstate" - /> + <dict-tag :options="dict.type.sys_organstate" :value="scope.row.organstate" /> </template> </el-table-column> - <el-table-column - label="绉绘鍖婚櫌" - align="center" - prop="transplanthospitalname" - > + <el-table-column label="绉绘鍖婚櫌" align="center" prop="transplanthospitalname"> </el-table-column> - <el-table-column - label="鎿嶄綔" - width="200" - align="center" - class-name="small-padding fixed-width" - > + <el-table-column label="鎿嶄綔" width="200" align="center" class-name="small-padding fixed-width"> <template slot-scope="scope"> - <el-button - size="mini" - v-if="scope.row.id == null" - type="text" - icon="el-icon-copy-document" - @click="distributionDialog(scope.row)" - >鍒嗛厤</el-button - > - <el-button - size="mini" - v-else - type="text" - icon="el-icon-copy-document" - @click="distributionDialog(scope.row)" - >淇敼</el-button - > - <el-button - size="mini" - v-if="scope.row.organstate != 99" - type="text" - icon="el-icon-copy-document" - @click="redistribution(scope.row)" - >閲嶆柊鍒嗛厤</el-button - > + <el-button size="mini" v-if="scope.row.id == null" type="text" icon="el-icon-copy-document" + @click="distributionDialog(scope.row)">鍒嗛厤</el-button> + <el-button size="mini" v-else type="text" icon="el-icon-copy-document" + @click="distributionDialog(scope.row)">淇敼</el-button> + <el-button size="mini" v-if="scope.row.organstate != 99" type="text" icon="el-icon-copy-document" + @click="redistribution(scope.row)">閲嶆柊鍒嗛厤</el-button> </template> </el-table-column> </el-table> @@ -272,32 +139,18 @@ </el-row> <!-- 娣诲姞鎴栦慨鏀瑰櫒瀹樺垎閰嶅璇濇 --> - <el-dialog - :title="distributionFormTitle" - :visible.sync="showDistributionForm" - :close-on-click-modal="false" - width="1000px" - append-to-body - > + <el-dialog :title="distributionFormTitle" :visible.sync="showDistributionForm" :close-on-click-modal="false" + width="1000px" append-to-body> <el-form ref="form" :model="form" :rules="rules" label-width="160px"> <el-row> <el-col :span="16"> <el-form-item label="鎹愮尞缂栧彿" prop="donorno"> - <el-input - v-model="distributionForm.donorno" - placeholder="璇疯緭鍏ユ崘鐚�呯紪鍙�" - disabled - /> - </el-form-item> </el-col - ><el-col :span="8"> + <el-input v-model="distributionForm.donorno" placeholder="璇疯緭鍏ユ崘鐚�呯紪鍙�" disabled /> + </el-form-item> </el-col><el-col :span="8"> <el-form-item label="鍒嗛厤鐘舵��" prop="organstate"> <el-select v-model="form.organstate" placeholder="璇烽�夋嫨鍣ㄥ畼鐘舵��"> - <el-option - v-for="dict in dict.type.sys_organstate" - :key="dict.value" - :label="dict.label" - :value="dict.value" - ></el-option> + <el-option v-for="dict in dict.type.sys_organstate" :key="dict.value" :label="dict.label" + :value="dict.value"></el-option> </el-select> </el-form-item> </el-col> @@ -305,61 +158,31 @@ <el-row> <el-col :span="8"> <el-form-item label="鎹愮尞濮撳悕" prop="curdonorname"> - <el-input - v-model="curdonorname" - placeholder="鎹愮尞鑰呭鍚�" - disabled - /> + <el-input v-model="curdonorname" placeholder="鎹愮尞鑰呭鍚�" disabled /> </el-form-item> </el-col> <el-col :span="8"> <el-form-item label="鍣ㄥ畼鍚嶇О" prop="organnumber"> - <el-select - ref="organNameSelect" - v-model="form.organnumber" - placeholder="璇烽�夋嫨鍣ㄥ畼缂栧彿" - clearable - size="small" - disabled - > - <el-option - v-for="dict in dict.type.sys_Organ" - :key="dict.value" - :label="dict.label" - :value="dict.value" - /> + <el-select ref="organNameSelect" v-model="form.organnumber" placeholder="璇烽�夋嫨鍣ㄥ畼缂栧彿" clearable size="small" + disabled> + <el-option v-for="dict in dict.type.sys_Organ" :key="dict.value" :label="dict.label" + :value="dict.value" /> </el-select> - </el-form-item> </el-col - ><el-col :span="8"> + </el-form-item> </el-col><el-col :span="8"> <el-form-item label="绯荤粺缂栧彿" prop="ageunit"> <el-input v-model="form.ageunit" placeholder="璇疯緭鍏ョ郴缁熺紪鍙�" /> </el-form-item> </el-col> </el-row> - <el-row - ><el-col :span="8"> + <el-row><el-col :span="8"> <el-form-item label="鎺ユ敹鏃堕棿" prop="applicanttime"> - <el-date-picker - clearable - size="small" - style="width: 100%" - v-model="form.applicanttime" - type="datetime" - value-format="yyyy-MM-dd HH:mm:ss" - placeholder="閫夋嫨鎺ユ敹鏃堕棿" - > + <el-date-picker clearable size="small" style="width: 100%" v-model="form.applicanttime" type="datetime" + value-format="yyyy-MM-dd HH:mm:ss" placeholder="閫夋嫨鎺ユ敹鏃堕棿"> </el-date-picker> - </el-form-item> </el-col - ><el-col :span="8"> - <el-form-item label="绉绘鏈烘瀯" prop="treatmenthospitalno"> - <org-selecter - ref="tranHosSelect" - :org-type="'4'" - v-model="form.transplanthospitalno" - style="width: 100%" - /> - </el-form-item> </el-col></el-row - ><el-row> + </el-form-item> </el-col><el-col :span="16"> + <el-form-item label="绉绘鍖婚櫌" prop="treatmenthospitalno"> + <org-selecter ref="tranHosSelect" :org-type="'4'" v-model="form.transplanthospitalno" style="width: 100%" /> + </el-form-item> </el-col></el-row><el-row> <el-col :span="8"> <el-form-item label="鍙椾綋濮撳悕" prop="name"> <el-input v-model="form.name" placeholder="濮撳悕" /> @@ -367,24 +190,13 @@ </el-col> <el-col :span="8"> <el-form-item label="璇佷欢绫诲瀷" prop="idcardtype"> - <el-select - v-model="form.idcardtype" - placeholder="璇烽�夋嫨绉绘浜鸿瘉浠剁被鍨�" - > - <el-option - v-for="dict in dict.type.sys_IDType" - :key="dict.value" - :label="dict.label" - :value="parseInt(dict.value)" - ></el-option> + <el-select v-model="form.idcardtype" placeholder="璇烽�夋嫨绉绘浜鸿瘉浠剁被鍨�"> + <el-option v-for="dict in dict.type.sys_IDType" :key="dict.value" :label="dict.label" + :value="parseInt(dict.value)"></el-option> </el-select> - </el-form-item> </el-col - ><el-col :span="8"> + </el-form-item> </el-col><el-col :span="8"> <el-form-item label="璇佷欢鍙风爜" prop="idcardno"> - <el-input - v-model="form.idcardno" - placeholder="璇疯緭鍏ョЩ妞嶄汉璇佷欢鍙风爜" - /> + <el-input v-model="form.idcardno" placeholder="璇疯緭鍏ョЩ妞嶄汉璇佷欢鍙风爜" /> </el-form-item> </el-col> </el-row> @@ -521,7 +333,7 @@ form: {}, rules: { applicanttime: [ - { required: true, message: "璇疯緭鍏ユ崘鐚�呭鍚�", trigger: "blur" }, + { required: true, message: "璇疯緭鍏ユ帴鏀舵椂闂�", trigger: "blur" }, ], }, // 閬僵灞� @@ -664,12 +476,18 @@ this.endtime = "2998-01-01 00:00:00"; } }, - updateStatus(data) { + + //閲嶆柊鍒嗛厤 + redistribution(data) { + console.log("閲嶆柊鍒嗛厤", data); + //寮圭獥 + this.showDistributionForm = true; + this.reset(); + getDonateorgan(data.id).then((res) => { let obj = res.data; obj.organstate = 99; updateDonateorgan(obj).then((res) => { - console.log("閲嶆柊鍒嗛厤鐨�", res); // if(res.code === 200){ this.form.organstate = data.organstate; this.form.organno = data.organno; @@ -680,30 +498,19 @@ }; listOrganallocation(loactionSearcParam).then((res) => { - console.log("allocation鏁版嵁", res.rows); if (res.rows != 0) { let list = res.rows[0]; // this.form.ageunit = list.ageunit; this.form.applicanttime = list.applicanttime; // this.form.treatmenthospitalno = list.treatmenthospitalno; // this.form.transplanthospitalname = list.transplanthospitalname - console.log("ididididid", this.form.id); - } + }; }); - // } + console.log("Organallocation", this.form); }); }); }, - redistribution(data) { - console.log("閲嶆柊鍒嗛厤", data); - //寮圭獥 - this.showDistributionForm = true; - this.reset(); - this.updateStatus(data); - - - }, /** 鏌ヨ鎹愮尞鍩虹鍒楄〃 */ getBaseInfoList(e) { this.loading = true; @@ -876,6 +683,7 @@ submitForm() { this.$refs["form"].validate((valid) => { if (valid) { + if (this.form.id != null) { //鏇存柊鎹愮尞鍣ㄥ畼琛� this.form.allocationstatus = this.form.organstate; @@ -906,7 +714,8 @@ this.showDistributionForm = false; }); }); - } else { + } + else { //淇濆瓨鏃跺厛淇濆瓨鍒版崘鐚櫒瀹樿〃 //鏂板鍒板櫒瀹樼鐞嗚〃 this.loading = false; @@ -930,31 +739,43 @@ organaManageForm.transplanthospitalname = organaManageForm.transplanthospitalno; } + + addDonateorgan(organaManageForm).then((response) => { this.loading = false; if (response.code === 200) { //鏌ヨ鑾峰彇鏂板鐨勫櫒瀹樿〃id let organSearchParam = { - donorno: this.curdonorno, - donorname: this.curdonorname, - organname: this.$refs.organNameSelect.label, - organno: this.form.organnumber, infoid: this.curInfoid, + donorno: this.curdonorno, + organno: this.form.organnumber, + //donorname: this.curdonorname, + //organname: this.$refs.organNameSelect.label, }; this.loading = false; + listDonateorgan(organSearchParam).then((response2) => { this.showDistributionForm = false; - if (response2.code == 200 && response2.rows.length == 1) { - this.form.organid = response2.rows[0].id; - this.form.residenceprovincename = this.defultAddress.sheng; - this.form.residencecityname = this.defultAddress.shi; - this.form.residencetownname = this.defultAddress.qu; - addOrganallocation(this.form).then((response) => { - //this.$modal.msgSuccess("鏂板鎴愬姛"); - this.loading = false; - this.GetDonortedList(); - this.showDistributionForm = false; - }); + if (response2.code == 200 && response2.rows.length > 0) { + for (let i = 0; i < response2.rows.length; i++) { + console.log('1', this.form) + if (response2.rows[i].organstate == '2') { + this.form.organid = response2.rows[i].id; + this.form.residenceprovincename = this.defultAddress.sheng; + this.form.residencecityname = this.defultAddress.shi; + this.form.residencetownname = this.defultAddress.qu; + + console.log('2', this.form) + addOrganallocation(this.form).then((response) => { + + console.log('3', response) + //this.$modal.msgSuccess("鏂板鎴愬姛"); + this.loading = false; + this.GetDonortedList(); + this.showDistributionForm = false; + }); + } + } } }); } @@ -1073,7 +894,7 @@ id: null, transplanthospitalname: null, transplanthospitalno: null, - organstate: null, + organstate: '2', }); } } else { @@ -1086,7 +907,8 @@ if (organIndex != -1) { let tempOrgan = this.organalTableData[organIndex]; if (tempOrgan.organstate != 1 && tempOrgan.id > 0) { - this.$modal.msgWarning("鍙湁鏈垎閰嶅櫒瀹樺彲杩涜鍒犻櫎"); + this.$modal.msgWarning("鍙湁鏈垎閰嶅櫒瀹樺彲杩涜鍒犻櫎锛�"); + this.organalForm.organname.push(value); return; } if (tempOrgan.id > 0) { -- Gitblit v1.9.3