From f80a02f06adbfa38e06651688e8768bedf9cdbe1 Mon Sep 17 00:00:00 2001 From: WXL <1785969728@qq.com> Date: 星期五, 02 二月 2024 10:37:23 +0800 Subject: [PATCH] 11 --- src/views/project/donationdetails/index.vue | 1793 ++++++++++++++++++++++++++++++++++++----------------------- 1 files changed, 1,096 insertions(+), 697 deletions(-) diff --git a/src/views/project/donationdetails/index.vue b/src/views/project/donationdetails/index.vue index 2c1b3b8..f3e113f 100644 --- a/src/views/project/donationdetails/index.vue +++ b/src/views/project/donationdetails/index.vue @@ -3,7 +3,7 @@ <div class="left-course"> <div class="postfilx"> <div class="title">宸ヤ綔杩涚▼</div> - <div style="height: 666px;"> + <div> <el-steps direction="vertical" :active="workflow"> <el-step title="娼滃湪鎹愮尞" icon="el-icon-user"> <template @@ -153,7 +153,7 @@ </div> </div> <!-- 鍙充晶鏁版嵁 --> - <div style="background: #fff;"> + <div style="background: #fff; width: 80%;"> <!-- 椤堕儴鏁版嵁 --> <div class="boxdiv"> <div class="top-text">鎹愮尞妗堜緥淇℃伅</div> @@ -213,7 +213,7 @@ > </el-date-picker> </el-form-item> - </el-col> + </el-col> </el-row> <el-row> <el-col :span="6"> @@ -246,7 +246,7 @@ @blur="updateMessage" /> </el-form-item> - </el-col> + </el-col> <el-col :span="6"> <el-form-item label="鍑虹敓鏃ユ湡" prop="birthday"> <el-date-picker @@ -259,7 +259,7 @@ > </el-date-picker> </el-form-item> - </el-col> + </el-col> </el-row> <el-row> <el-col :span="6"> @@ -729,15 +729,12 @@ @click="Terminationcase" >{{ showTerminationBtn == 0 ? "缁堟" : "鎭㈠" }}</el-button > - <el-button + <!-- <el-button v-show="Reportforreview" type="primary" @click="Reportforreview" >鎻愪氦</el-button - > - - <!-- <el-button @click="cancel">鍙� 娑�</el-button> --> - <!-- <el-button @click="handleapproval">鎻愪氦瀹℃牳</el-button> --> + > --> </div> </div> <!-- 鍖诲璇勪及 --> @@ -973,23 +970,6 @@ label-width="100px" label-position="right" > - <el-form-item label-width="100px" label="閫夋嫨鍣ㄥ畼"> - <el-checkbox-group v-model="organdecision"> - <el-checkbox v-for="item in organlist" :label="item"> - {{ item }} - </el-checkbox> - </el-checkbox-group> - </el-form-item> - <el-row> - <el-col :span="6"> - <el-form-item label="瀛愬コ鏁伴噺" prop="kinshipChildrennum"> - <el-input - v-model="affirmform.kinshipChildrennum" - placeholder="璇疯緭鍏ユ暟閲�" - /> - </el-form-item> - </el-col> - </el-row> <el-row> <el-col :span="6"> <el-form-item label="浜插睘濮撳悕" prop="name"> @@ -1015,14 +995,21 @@ </el-select> </el-form-item> </el-col> - - <el-col :span="12"> + <el-col :span="6"> <el-form-item label="韬唤璇佸彿" prop="idcardno"> <el-input ref="updateBSvalue" class="sfzcode" v-model="affirmform.idcardno" placeholder="璇疯緭鍏ヨ瘉浠跺彿鐮�" + /> + </el-form-item> + </el-col> + <el-col :span="6"> + <el-form-item label="鑱旂郴鐢佃瘽" prop="phone"> + <el-input + v-model="affirmform.phone" + placeholder="璇疯緭鍏ヨ仈绯荤數璇�" /> </el-form-item> </el-col> @@ -1048,24 +1035,48 @@ </el-form-item> </el-col> </el-row> - <el-row> </el-row> <el-row> + <el-col :span="12"> + <el-form-item label="绛惧瓧浜插睘" prop="kinshipconfirmationsign"> + <el-checkbox-group v-model="organdecision"> + <el-checkbox + v-for="item in kinshiplist" + :key="item" + :label="item" + > + {{ item == "瀛愬コ" ? item + "(浜�)" : item }} + </el-checkbox> + </el-checkbox-group> + </el-form-item> + </el-col> <el-col :span="6"> - <el-form-item label="鑱旂郴鐢佃瘽" prop="phone"> + <el-form-item label="鎴愬勾瀛愬コ鏁�" prop="kinshipChildrennum"> <el-input - v-model="affirmform.phone" - placeholder="璇疯緭鍏ヨ仈绯荤數璇�" + v-model="affirmform.kinshipChildrennum" + placeholder="璇疯緭鍏ユ暟閲�" /> </el-form-item> </el-col> <el-col :span="6"> - <el-form-item label="鍏朵粬" prop="organdecisionOther"> + <el-form-item label="鍏朵粬浜插睘" prop="organdecisionOther"> <el-input v-model="affirmform.organdecisionOther" placeholder="璇疯緭鍏ュ叾浠�" /> </el-form-item> </el-col> + </el-row> + <el-row> + <el-form-item label-width="100px" label="鎹愮尞鍐冲畾"> + <el-checkbox-group v-model="organdecision"> + <el-checkbox + v-for="item in organselection" + :key="item" + :label="item" + >{{ item }} + </el-checkbox> + </el-checkbox-group> + </el-form-item> </el-row> <el-row> <!-- <el-col :span="18"> @@ -1081,6 +1092,18 @@ </el-checkbox-group> </el-form-item> </el-col> --> + </el-row> + <el-row> + <el-col :span="12"> + <el-form-item label="鑾峰彇缁勭粐" prop="acquisitiontissuename"> + <org-selecter + style="width: 260px" + ref="orgSelecter" + :org-type="'1'" + v-model="form.acquisitiontissueno" + /> + </el-form-item> + </el-col> </el-row> <el-row> <el-col :span="6"> @@ -1180,18 +1203,10 @@ label-width="100px" label-position="right" > - <el-form-item label="瀹℃煡鎰忚"> - <el-input - v-model="ethicform.flowcontent" - type="textarea" - placeholder="璇疯緭鍏ュ唴瀹�" - /> - </el-form-item> - <el-row> <el-col :span="18"> <el-form-item label="瀹℃煡缁撹"> - <el-radio-group v-model="ethicform.flowconclusion"> + <el-radio-group v-model="ethicform.expertconclusion"> <el-radio v-for="dict in dict.type.sys_EthicalReview" :key="dict.value" @@ -1201,22 +1216,33 @@ </el-radio-group> </el-form-item> </el-col> - + </el-row> + <el-row> + <el-col :span="18"> + <el-form-item label="瀹℃煡鎰忚"> + <el-input + v-model="ethicform.expertopinion" + type="textarea" + placeholder="璇疯緭鍏ュ唴瀹�" + /> + </el-form-item> + </el-col> + </el-row> + <el-row> <!-- createtime 瀹℃煡鏃ユ湡 --> - <el-col :span="6" :pull="5"> + <el-col :span="18"> <el-form-item label="瀹℃煡鏃ユ湡"> <el-date-picker clearable size="small" - v-model="ethicform.createTime" + v-model="ethicform.conclusiontime" type="date" value-format="yyyy-MM-dd HH:mm:ss" placeholder="閫夋嫨缁撹鏃堕棿" > </el-date-picker> - </el-form-item> - </el-col> - </el-row> + </el-form-item> </el-col + ></el-row> </el-form> <div class="dialog-footer" style="min-height: 500px; margin: 20px 0; "> <el-button @@ -1240,361 +1266,156 @@ </div> </div> <!-- 鍣ㄥ畼鍒嗛厤 --> - <div class="boxdiv" v-show="actives == 4 || actives == 5 || actives == 6"> + <div class="boxdiv" v-show="actives == 4"> <el-form - ref="allocationform" - :model="allocationform" + ref="allocateddata" + :model="allocateddata" :rules="allocationrules" label-position="right" > - <el-form-item - label-width="100px" - label="閫夋嫨鍣ㄥ畼" - v-show="actives == 4" - > - <el-checkbox-group v-model="organalForm.organname"> - <el-checkbox - v-for="dict in dict.type.sys_Organ" - :key="dict.value" - :label="dict.value" - @change="changeorganState(dict.value)" - > - {{ dict.label }} - </el-checkbox> - </el-checkbox-group> - </el-form-item> - <el-form-item> - <el-table v-loading="loading" border :data="allocationform"> - <el-table-column - label="鍣ㄥ畼鍚嶇О" - align="center" - width="100" - prop="organname" - /> - <el-table-column - label="鍣ㄥ畼缂栧彿" - align="center" - width="100" - prop="organno" - /> - <el-table-column - label="鍒嗛厤鐘舵��" - align="center" - width="150" - prop="allocationstatus" - v-if="actives == 4" - > - <template slot-scope="scope"> - <el-select - v-model="scope.row.allocationstatus" - placeholder="璇烽�夋嫨鍣ㄥ畼鐘舵��" + <el-row> + <el-col> + <el-form-item label-width="100px" label="鍒嗛厤鍣ㄥ畼"> + <el-checkbox-group v-model="organList.organallocated"> + <el-checkbox + v-for="dict in dict.type.sys_Organ" + :key="dict.value" + :label="dict.value" + @change="changeorganState(dict.value)" > - <el-option - v-for="dict in allocationstatuslist" - :key="dict.value" - :label="dict.label" - :value="dict.value" - ></el-option> + {{ dict.label }} + </el-checkbox> + </el-checkbox-group> + </el-form-item> + </el-col> + </el-row> + <el-row> + <el-col> + <el-form-item> + <el-table v-loading="loading" border :data="allocateddata"> + <el-table-column + label="鍣ㄥ畼鍚嶇О" + align="center" + width="110" + prop="organname" + > + <template slot-scope="scope"> + <el-input + v-model="scope.row.organname" + placeholder="鍣ㄥ畼鍚嶇О" + :disabled="scope.row.organno != 'C01'" + /> + </template> + </el-table-column> + <el-table-column + label="鍣ㄥ畼缂栧彿" + align="center" + width="90" + prop="organno" + /> + <el-table-column + label="绯荤粺缂栧彿" + align="center" + width="120" + prop="caseno" + > + <template slot-scope="scope"> + <el-input + v-model="scope.row.caseno" + placeholder="绯荤粺缂栧彿" + /> + </template> + </el-table-column> + <el-table-column + label="鎺ユ敹鏃堕棿" + align="center" + width="200" + prop="applicanttime" + > + <template slot-scope="scope"> + <el-date-picker + clearable + size="small" + style="width: 100%" + v-model="scope.row.applicanttime" + type="datetime" + value-format="yyyy-MM-dd HH:mm:ss" + placeholder="閫夋嫨鎺ユ敹鏃堕棿" + > + </el-date-picker> + </template> + </el-table-column> + <el-table-column + label="鍙椾綋濮撳悕" + align="center" + width="120" + prop="name" + > + <template slot-scope="scope"> + <el-input + v-model="scope.row.name" + placeholder="鍙椾綋濮撳悕" + /> + </template> + </el-table-column> + <!-- + <el-table-column label="璇佷欢绫诲瀷" align="center" width="150" prop="idcardtype"> + <template slot-scope="scope"> + <el-select v-model="scope.row.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> </template> </el-table-column> - <el-table-column - label="鑾峰彇鐘舵��" - align="center" - width="150" - prop="organstate" - v-if="actives == 5" - > + <el-table-column label="璇佷欢鍙风爜" align="center" width="200" prop="idcardno"> <template slot-scope="scope"> - <el-select - v-model="scope.row.organstate" - placeholder="璇烽�夋嫨鍣ㄥ畼鐘舵��" + <el-input v-model="scope.row.idcardno" placeholder="璇佷欢鍙风爜" /> + </template> + </el-table-column> + <el-table-column label="鍒嗛厤鐘舵��" align="center" width="150" prop="allocationstatus"> + <template slot-scope="scope"> + <el-select v-model="scope.row.allocationstatus" placeholder="璇烽�夋嫨鍣ㄥ畼鐘舵��"> + <el-option v-for="dict in allocationstatuslist" :key="dict.value" :label="dict.label" + :value="dict.value"></el-option> + </el-select> + </template> + </el-table-column> + --> + <el-table-column + prop="reallocationreason" + label="璇存槑" + align="center" > - <el-option - v-for="dict in organstatelist" - :key="dict.value" - :label="dict.label" - :value="dict.value" - ></el-option> - </el-select> - </template> - </el-table-column> - <el-table-column - label="绉绘鐘舵��" - align="center" - width="150" - prop="transplantstate" - v-if="actives == 6" - > - <template slot-scope="scope"> - <el-select - v-model="scope.row.transplantstate" - placeholder="璇烽�夋嫨鍣ㄥ畼鐘舵��" + <template slot-scope="scope"> + <el-input + type="textarea" + clearable + v-model="scope.row.reallocationreason" + placeholder="璇疯緭鍏ヨ鏄�" + /> + </template> + </el-table-column> + <el-table-column + label="鎿嶄綔" + align="center" + width="100" + class-name="small-padding fixed-width" + v-if="actives == 4" > - <el-option - v-for="dict in transplantstatelist" - :key="dict.value" - :label="dict.label" - :value="dict.value" - ></el-option> - </el-select> - </template> - </el-table-column> - <el-table-column - label="绉绘鍖婚櫌" - align="center" - width="230" - prop="transplanthospitalname" - > - <template slot-scope="scope"> - <org-selecter - :disabled=" - scope.row.allocationstatus == 2 || - scope.row.organstate == 2 || - scope.row.transplantstate == 2 - " - ref="tranHosSelect" - :org-type="'4'" - v-model="scope.row.transplanthospitalno" - style="width: 100%" - /> - </template> - </el-table-column> - <el-table-column - label="鑾峰彇缁勭粐" - align="center" - width="230" - prop="gainhospitalno" - v-if="actives == 5" - > - <template slot-scope="scope"> - <org-selecter - :disabled=" - scope.row.allocationstatus == 2 || - scope.row.organstate == 2 || - scope.row.transplantstate == 2 - " - ref="tranHosSelect" - :org-type="'4'" - v-model="scope.row.gainhospitalno" - style="width: 100%" - /> - </template> - </el-table-column> - <el-table-column - label="绯荤粺缂栧彿" - align="center" - width="120" - prop="ageunit" - v-if="actives == 4" - > - <template slot-scope="scope"> - <el-input - :disabled=" - scope.row.allocationstatus == 2 || - scope.row.organstate == 2 || - scope.row.transplantstate == 2 - " - v-model="scope.row.ageunit" - placeholder="绯荤粺缂栧彿" - /> - </template> - </el-table-column> - <el-table-column - label="鎺ユ敹鏃堕棿" - align="center" - width="200" - prop="applicanttime" - v-if="actives == 4" - > - <template slot-scope="scope"> - <el-date-picker - :disabled=" - scope.row.allocationstatus == 2 || - scope.row.organstate == 2 || - scope.row.transplantstate == 2 - " - clearable - size="small" - style="width: 100%" - v-model="scope.row.applicanttime" - type="datetime" - value-format="yyyy-MM-dd HH:mm:ss" - placeholder="閫夋嫨鎺ユ敹鏃堕棿" - > - </el-date-picker> - </template> - </el-table-column> - <el-table-column - label="鍙椾綋濮撳悕" - align="center" - width="120" - prop="name" - v-if="actives == 4" - > - <template slot-scope="scope"> - <el-input - :disabled=" - scope.row.allocationstatus == 2 || - scope.row.organstate == 2 || - scope.row.transplantstate == 2 - " - v-model="scope.row.name" - placeholder="鍙椾綋濮撳悕" - /> - </template> - </el-table-column> - <el-table-column - label="绉绘璐熻矗浜�" - align="center" - width="120" - prop="transplantdoct" - v-if="actives == 6" - > - <template slot-scope="scope"> - <el-input - :disabled=" - scope.row.allocationstatus == 2 || - scope.row.organstate == 2 || - scope.row.transplantstate == 2 - " - v-model="scope.row.transplantdoct" - placeholder="鍖诲笀濮撳悕" - /> - </template> - </el-table-column> - <el-table-column - label="绉绘鏃堕棿" - align="center" - width="200" - prop="transplanttime" - v-if="actives == 6" - > - <template slot-scope="scope"> - <el-date-picker - :disabled=" - scope.row.allocationstatus == 2 || - scope.row.organstate == 2 || - scope.row.transplantstate == 2 - " - clearable - size="small" - style="width: 100%" - v-model="scope.row.transplanttime" - type="datetime" - value-format="yyyy-MM-dd HH:mm:ss" - placeholder="閫夋嫨绉绘鏃堕棿" - > - </el-date-picker> - </template> - </el-table-column> - <el-table-column - label="鑾峰彇鍖诲笀" - align="center" - width="120" - prop="organgetdoct" - v-if="actives == 5" - > - <template slot-scope="scope"> - <el-input - :disabled=" - scope.row.allocationstatus == 2 || - scope.row.organstate == 2 || - scope.row.transplantstate == 2 - " - v-model="scope.row.organgetdoct" - placeholder="鍖诲笀濮撳悕" - /> - </template> - </el-table-column> - <el-table-column - label="鑾峰彇鏃堕棿" - align="center" - width="200" - prop="organgettime" - v-if="actives == 5" - > - <template slot-scope="scope"> - <el-date-picker - :disabled=" - scope.row.allocationstatus == 2 || - scope.row.organstate == 2 || - scope.row.transplantstate == 2 - " - clearable - size="small" - style="width: 100%" - v-model="scope.row.organgettime" - type="datetime" - value-format="yyyy-MM-dd HH:mm:ss" - placeholder="閫夋嫨鑾峰彇鏃堕棿" - > - </el-date-picker> - </template> - </el-table-column> - <el-table-column - label="璇佷欢绫诲瀷" - align="center" - width="150" - prop="idcardtype" - v-if="actives == 4" - > - <template slot-scope="scope"> - <el-select - :disabled=" - scope.row.allocationstatus == 2 || - scope.row.organstate == 2 || - scope.row.transplantstate == 2 - " - v-model="scope.row.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> - </template> - </el-table-column> - <el-table-column - label="璇佷欢鍙风爜" - align="center" - width="200" - prop="idcardno" - v-if="actives == 4" - > - <template slot-scope="scope"> - <el-input - :disabled=" - scope.row.allocationstatus == 2 || - scope.row.organstate == 2 || - scope.row.transplantstate == 2 - " - v-model="scope.row.idcardno" - placeholder="璇佷欢鍙风爜" - /> - </template> - </el-table-column> - <el-table-column - prop="abandonreason" - label="寮冪敤/浣滃簾鍘熷洜" - align="center" - width="260" - > - <template slot-scope="scope"> - <el-row> - <el-input - clearable - v-model="scope.row.abandonreason" - placeholder="璇疯緭鍏ュ純鐢�/浣滃簾鍘熷洜" - /> - </el-row> - </template> - </el-table-column> - </el-table> - </el-form-item> + <template slot-scope="scope"> + <el-button + size="mini" + type="text" + icon="el-icon-copy-document" + @click="redistribution(scope.row)" + >閲嶅垎閰�</el-button + > + </template> + </el-table-column> + </el-table> + </el-form-item> + </el-col> + </el-row> </el-form> <div class="dialog-footer" v-show="actives == 4"> <el-button @@ -1646,30 +1467,39 @@ </el-row> <el-row> </el-row> <el-row> - <el-col :span="2"> - <el-form-item align="left" label="姝讳骸鍒ゅ畾:" /> - </el-col> - <el-col :span="10"> - <el-form-item align="left" label="鍖荤敓涓�" prop="deathjudgedocto"> + <el-col :span="6"> + <el-form-item + align="left" + label="姝讳骸鍒ゅ畾锛氬尰鐢熶竴" + label-width="140px" + prop="deathjudgedocto" + > <el-input v-model="witnessform.deathjudgedocto" placeholder="鍒ゅ畾鍖荤敓濮撳悕" /> </el-form-item> </el-col> - <el-col :span="10"> - <el-form-item align="left" label="鍖荤敓浜�" prop="deathjudgedoctt"> + <el-col :span="6"> + <el-form-item + align="left" + label="鍖荤敓浜�" + label-width="120px" + prop="deathjudgedoctt" + > <el-input v-model="witnessform.deathjudgedoctt" placeholder="鍒ゅ畾鍖荤敓濮撳悕" /> </el-form-item> </el-col> - </el-row> - <el-row - ><el-col :span="2"><el-form-item align="left" label="" /> </el-col> - <el-col :span="10"> - <el-form-item align="left" label="姝讳骸鏃堕棿" prop="deathtime"> + <el-col :span="6"> + <el-form-item + align="left" + label="姝讳骸鏃堕棿" + label-width="120px" + prop="deathtime" + > <el-date-picker clearable v-model="witnessform.deathtime" @@ -1680,8 +1510,13 @@ </el-date-picker> </el-form-item> </el-col> - <el-col :span="10"> - <el-form-item align="left" label="姝讳骸鍘熷洜" prop="deathreason"> + <el-col :span="6"> + <el-form-item + align="left" + label="姝讳骸鍘熷洜" + label-width="120px" + prop="deathreason" + > <el-input v-model="witnessform.deathreason" placeholder="璇疯緭鍏ユ浜″師鍥�" @@ -1690,13 +1525,11 @@ </el-col> </el-row> <el-row> - <el-col :span="2"> - <el-form-item align="left" label="鎵嬫湳:" /> - </el-col> - <el-col :span="10"> + <el-col :span="6"> <el-form-item align="left" - label="寮�濮嬫椂闂�" + label="鎵嬫湳锛氬紑濮嬫椂闂�" + label-width="140px" prop="operationbegtime" > <el-date-picker @@ -1709,10 +1542,11 @@ </el-date-picker> </el-form-item> </el-col> - <el-col :span="10"> + <el-col :span="6"> <el-form-item align="left" label="缁撴潫鏃堕棿" + label-width="120px" prop="operationendtime" > <el-date-picker @@ -1726,14 +1560,12 @@ </el-form-item> </el-col> </el-row> - <el-row - ><el-col :span="2" - ><el-form-item align="left" label="鑵逛富鍔ㄨ剦:" /> - </el-col> - <el-col :span="10"> + <el-row> + <el-col :span="6"> <el-form-item - label="鎻掔鏃堕棿" + label="鑵逛富鍔ㄨ剦锛氭彃绠℃椂闂�" align="left" + label-width="140px" prop="abdominalaortacannulatime" > <el-date-picker @@ -1746,10 +1578,11 @@ </el-date-picker> </el-form-item> </el-col> - <el-col :span="10"> + <el-col :span="6"> <el-form-item label="鐏屾敞鏃堕棿" align="left" + label-width="120px" prop="abdominalaortaperfusiontime" > <el-date-picker @@ -1762,16 +1595,11 @@ </el-date-picker> </el-form-item> </el-col> - </el-row> - - <el-row - ><el-col :span="2" - ><el-form-item align="left" label="闂ㄩ潤鑴�:" /> - </el-col> - <el-col :span="10"> + <el-col :span="6"> <el-form-item - label="鎻掔鏃堕棿" + label="闂ㄩ潤鑴夛細鎻掔鏃堕棿" align="left" + label-width="140px" prop="portalveincannulatime" > <el-date-picker @@ -1784,10 +1612,11 @@ </el-date-picker> </el-form-item> </el-col> - <el-col :span="10"> + <el-col :span="6"> <el-form-item label="鐏屾敞鏃堕棿" align="left" + label-width="120px" prop="portalveinperfusiontime" > <el-date-picker @@ -1801,14 +1630,12 @@ </el-form-item> </el-col> </el-row> - <el-row - ><el-col :span="2" - ><el-form-item align="left" label="鑲哄姩鑴�:" /> - </el-col> - <el-col :span="10"> + <el-row> + <el-col :span="6"> <el-form-item - label="鎻掔鏃堕棿" + label="鑲哄姩鑴夛細鎻掔鏃堕棿" align="left" + label-width="140px" prop="pulmonaryarterycannulatime" > <el-date-picker @@ -1821,10 +1648,11 @@ </el-date-picker> </el-form-item> </el-col> - <el-col :span="10"> + <el-col :span="6"> <el-form-item label="鐏屾敞鏃堕棿" align="left" + label-width="120px" prop="pulmonaryarteryperfusiontime" > <el-date-picker @@ -1837,16 +1665,11 @@ </el-date-picker> </el-form-item> </el-col> - </el-row> - - <el-row - ><el-col :span="2" - ><el-form-item align="left" label="涓诲姩鑴�:" /> - </el-col> - <el-col :span="10"> + <el-col :span="6"> <el-form-item - label="鐏屾敞鏃堕棿" + label="涓诲姩鑴夛細鐏屾敞鏃堕棿" align="left" + label-width="140px" prop="aortacannulatime" > <el-date-picker @@ -1859,10 +1682,11 @@ </el-date-picker> </el-form-item> </el-col> - <el-col :span="10"> + <el-col :span="6"> <el-form-item label="鐏屾敞鏃堕棿" align="left" + label-width="120px" prop="aortaperfusiontime" > <el-date-picker @@ -1873,6 +1697,132 @@ placeholder="閫夋嫨涓诲姩鑴夌亴娉ㄦ椂闂�" > </el-date-picker> + </el-form-item> + </el-col> + </el-row> + <el-row> + <el-col> + <el-form-item label-width="100px" label="鑾峰彇鍣ㄥ畼"> + <el-checkbox-group v-model="organList.organprocured"> + <el-checkbox + v-for="dict in dict.type.sys_Organ" + :key="dict.value" + :label="dict.value" + @change="changeorganprocured(dict.value)" + > + {{ dict.label }} + </el-checkbox> + </el-checkbox-group> + </el-form-item> + </el-col> + </el-row> + <el-row> + <el-col> + <el-form-item> + <el-table v-loading="loading" border :data="procureddata"> + <el-table-column + label="鍣ㄥ畼鍚嶇О" + align="center" + width="110" + prop="organname" + > + <template slot-scope="scope"> + <el-input + v-model="scope.row.organname" + placeholder="鍣ㄥ畼鍚嶇О" + :disabled="scope.row.organno != 'C01'" + /> + </template> + </el-table-column> + <el-table-column + label="鍣ㄥ畼缂栧彿" + align="center" + width="90" + prop="organno" + /> + <el-table-column + label="鍣ㄥ畼绂讳綋鏃堕棿" + align="center" + width="200" + prop="organgettime" + > + <template slot-scope="scope"> + <el-date-picker + clearable + size="small" + style="width: 100%" + v-model="scope.row.organgettime" + type="datetime" + value-format="yyyy-MM-dd HH:mm:ss" + placeholder="璇疯緭鍏ュ櫒瀹樼浣撴椂闂�" + > + </el-date-picker> + </template> + </el-table-column> + <el-table-column + label="鑾峰彇鍖婚櫌" + align="center" + width="230" + prop="gainhospitalno" + > + <template slot-scope="scope"> + <div class="elldiv"> + <org-selecter + ref="tranHosSelect" + :org-type="'4'" + v-model="scope.row.gainhospitalno" + /> + </div> + </template> + </el-table-column> + <el-table-column + label="鑾峰彇鍖诲笀" + align="center" + width="120" + prop="organgetdoct" + > + <template slot-scope="scope"> + <el-input + v-model="scope.row.organgetdoct" + placeholder="璇疯緭鍏ュ尰甯堝鍚�" + /> + </template> + </el-table-column> + <el-table-column + label="鑾峰彇鐘舵��" + align="center" + width="150" + prop="organstate" + > + <template slot-scope="scope"> + <el-select + v-model="scope.row.organstate" + placeholder="璇烽�夋嫨鍣ㄥ畼鐘舵��" + > + <el-option + v-for="dict in organstatelist" + :key="dict.value" + :label="dict.label" + :value="dict.value" + ></el-option> + </el-select> + </template> + </el-table-column> + <el-table-column + label="璇存槑" + align="center" + prop="notgetreason" + > + <template slot-scope="scope"> + <el-input + type="textarea" + clearable + v-model="scope.row.notgetreason" + placeholder="璇疯緭鍏ユ湭鑾峰彇璇存槑" + /> + </template> + </el-table-column> + </el-table> </el-form-item> </el-col> </el-row> @@ -1983,24 +1933,133 @@ label-position="right" > <el-row> - <el-col :span="8"> - <el-form-item label="瀹屾垚鏃堕棿" prop="completetime"> - <el-date-picker - style="width: 167px" - clearable - size="small" - v-model="accomplishform.completetime" - type="date" - value-format="yyyy-MM-dd hh:mm:ss" - placeholder="閫夋嫨瀹屾垚鏃堕棿" - > - </el-date-picker> + <el-col> + <el-form-item label-width="100px" label="绉绘鍣ㄥ畼"> + <el-checkbox-group v-model="organList.organtransplant"> + <el-checkbox + v-for="dict in dict.type.sys_Organ" + :key="dict.value" + :label="dict.value" + @change="changeorgantransplant(dict.value)" + > + {{ dict.label }} + </el-checkbox> + </el-checkbox-group> </el-form-item> </el-col> </el-row> - <el-row> - <el-col :span="7"> + <el-col> + <el-form-item> + <el-table v-loading="loading" border :data="transplantdata"> + <el-table-column + label="鍣ㄥ畼鍚嶇О" + align="center" + width="110" + prop="organname" + > + <template slot-scope="scope"> + <el-input + v-model="scope.row.organname" + placeholder="鍣ㄥ畼鍚嶇О" + :disabled="scope.row.organno != 'C01'" + /> + </template> + </el-table-column> + <el-table-column + label="鍣ㄥ畼缂栧彿" + align="center" + width="90" + prop="organno" + /> + <el-table-column + label="绉绘鍖婚櫌" + align="center" + width="220" + prop="transplanthospitalname" + v-if="actives == 6" + > + <template slot-scope="scope"> + <org-selecter + ref="tranHosSelect" + :org-type="'4'" + v-model="scope.row.transplanthospitalno" + style="width: 100%" + /> + </template> + </el-table-column> + <el-table-column + label="绉绘璐熻矗浜�" + align="center" + width="120" + prop="transplantdoct" + > + <template slot-scope="scope"> + <el-input + v-model="scope.row.transplantdoct" + placeholder="鍖诲笀濮撳悕" + /> + </template> + </el-table-column> + <el-table-column + label="绉绘鏃堕棿" + align="center" + width="200" + prop="transplanttime" + > + <template slot-scope="scope"> + <el-date-picker + clearable + size="small" + style="width: 100%" + v-model="scope.row.transplanttime" + type="datetime" + value-format="yyyy-MM-dd HH:mm:ss" + placeholder="閫夋嫨绉绘鏃堕棿" + > + </el-date-picker> + </template> + </el-table-column> + <el-table-column + label="绉绘鐘舵��" + align="center" + width="150" + prop="transplantstate" + > + <template slot-scope="scope"> + <el-select + v-model="scope.row.transplantstate" + placeholder="璇烽�夋嫨鍣ㄥ畼鐘舵��" + > + <el-option + v-for="dict in transplantstatelist" + :key="dict.value" + :label="dict.label" + :value="dict.value" + ></el-option> + </el-select> + </template> + </el-table-column> + <el-table-column + prop="abandonreason" + label="璇存槑" + align="center" + > + <template slot-scope="scope"> + <el-input + type="textarea" + clearable + v-model="scope.row.abandonreason" + placeholder="璇疯緭鍏ュ純鐢ㄨ鏄�" + /> + </template> + </el-table-column> + </el-table> + </el-form-item> + </el-col> + </el-row> + <el-row> + <el-col :span="6"> <el-form-item align="left" label="閬椾綋鎹愮尞" prop="isbodydonation"> <el-radio-group v-model="accomplishform.isbodydonation"> <el-radio @@ -2012,7 +2071,7 @@ </el-radio-group> </el-form-item> </el-col> - <el-col :span="7"> + <el-col :span="12"> <el-form-item align="left" label="鎺ユ敹鍗曚綅" prop="receivingunit"> <el-input v-model="accomplishform.receivingunit" @@ -2021,9 +2080,8 @@ </el-form-item> </el-col> </el-row> - <el-row> - <el-col :span="7"> + <el-col :span="6"> <el-form-item label="璐熻矗浜�" prop="responsibleuserid"> <el-select v-model="accomplishform.responsibleuserid" @@ -2039,7 +2097,7 @@ </el-select> </el-form-item> </el-col> - <el-col :span="7"> + <el-col :span="6"> <el-form-item label="鍗忚皟鍛樹竴" prop="coordinateduserido"> <el-select v-model="accomplishform.coordinateduserido" @@ -2055,7 +2113,7 @@ </el-select> </el-form-item> </el-col> - <el-col :span="7"> + <el-col :span="6"> <el-form-item label="鍗忚皟鍛樹簩" prop="coordinateduseridt"> <el-select v-model="accomplishform.coordinateduseridt" @@ -2069,6 +2127,20 @@ > </el-option> </el-select> + </el-form-item> + </el-col> + <el-col :span="6"> + <el-form-item label="瀹屾垚鏃堕棿" prop="completetime"> + <el-date-picker + style="width: 167px" + clearable + size="small" + v-model="accomplishform.completetime" + type="date" + value-format="yyyy-MM-dd hh:mm:ss" + placeholder="閫夋嫨瀹屾垚鏃堕棿" + > + </el-date-picker> </el-form-item> </el-col> </el-row> @@ -2096,7 +2168,25 @@ </div> <!-- 瀹岀粨娴佺▼ --> <div class="boxdiv" v-show="actives > 6"> - <h3>鍏ㄩ儴娴佺▼宸插畬缁擄紒</h3> + <div style="display:flex; line-height: 100px; justify-content: center;"> + <!-- <el-image + style="width: 100px; height: 100px" + :src="require('@/assets/images/wanc.png')" + ></el-image> --> + <div style="padding: 20px 0; margin: 0 30px"> + <img + style="width: 60px; height: 60px" + src="@/assets/images/wanc.png" + class="user-avatar" + /> + </div> + <div style="font-size: 28px;">鍏ㄩ儴娴佺▼宸插畬缁擄紒</div> + <img + style="width: 100px; height: 100px" + src="@/assets/images/zhan.png" + class="user-avatar" + /> + </div> </div> </div> <!-- 闄勪欢寮圭獥 --> @@ -2113,13 +2203,8 @@ >鏂囦欢鎸囧鐩綍</el-button > </div> --> - <el-tabs - style="margin-top: 20px;" - v-model="activeName" - type="card" - @tab-click="handleClick" - > - <el-tab-pane :label="activetele" :name="1"> </el-tab-pane> + <el-tabs style="margin-top: 20px;" v-model="activeName" type="card"> + <el-tab-pane :label="activetele" name="1"> </el-tab-pane> </el-tabs> <div class="pdfimg"> <div class="box-pdf"> @@ -2138,7 +2223,6 @@ uploadSccess(response, file, fileList) " :on-preview="downFile" - :disabled="operationType == 'detail'" :on-error="handleUploadError" :on-remove="remove" accept="image/*,.pdf" @@ -2147,10 +2231,7 @@ <div class="el-upload__text"> 灏嗗彂绁ㄦ枃浠舵嫋鍒版澶勶紝鎴� <em - ><el-button - :disabled="operationType == 'detail'" - size="small" - type="primary" + ><el-button size="small" type="primary" >鐐瑰嚮涓婁紶</el-button ></em > @@ -2251,11 +2332,7 @@ Modifydonationattachment } from "@/api/project/donateannex"; import { listReportname } from "@/api/project/organization"; -import { - listnewDonatecompletioninfo, - addDonatecompletioninfo, - updateDonatecompletioninfo -} from "@/api/project/donatecompletioninfo"; + import { getDonatebaseinfo, addDonatebaseinfo, @@ -2268,33 +2345,52 @@ updateMedicalevaluation } from "@/api/project/medicalevaluation"; import { + listRelativesconfirmation, + getRelativesconfirmation, + addRelativesconfirmation, + updateRelativesconfirmation +} from "@/api/project/relativesconfirmation"; +import { + listEthicalreviewopinions, + getEthicalreviewopinions, + addEthicalreviewopinions, + updateEthicalreviewopinions, + listnewEthicalreviewopinions +} from "@/api/project/ethicalreviewopinions"; +import { addDonateflowchart, listDonateflowchart, updateDonateflowchart } from "@/api/project/DonationEvaluation"; +import { + listDonateorgan, + addDonateorgan, + delDonateorgan, + updateDonateorgan, + saveDonateorgan +} from "@/api/project/donateorgan"; import { listOrganallocation, addOrganallocation, updateOrganallocation } from "@/api/project/organallocation"; import { - listDonateorgan, - addDonateorgan, - delDonateorgan, - updateDonateorgan -} from "@/api/project/donateorgan"; -import { addDonationwitness, updateDonationwitness, getDonationwitness, - getByInfoId + getByInfoId, + listDonationwitnessorgan, + saveDonationwitnessorgan, + delDonationwitnessorgan } from "@/api/project/donationwitness"; import { - listRelativesconfirmation, - getRelativesconfirmation, - addRelativesconfirmation, - updateRelativesconfirmation -} from "@/api/project/relativesconfirmation"; + listnewDonatecompletioninfo, + addDonatecompletioninfo, + updateDonatecompletioninfo, + listDonatecomporgan, + saveDonatecomporgan, + delDonatecomporgan +} from "@/api/project/donatecompletioninfo"; import Li_area_select from "@/components/Address"; import OrgSelecter from "@/views/project/components/orgselect"; import AnnexUpload from "@/views/project/components/annexupload"; @@ -2315,6 +2411,7 @@ infoid: 736, drawer: false, form: {}, + activeName: "", tableDatafile: [ { name: "鐜嬪皬铏�", @@ -2334,39 +2431,48 @@ ethicform: { infoid: null }, - organlist: [ + + kinshiplist: ["閰嶅伓", "鐖朵翰", "姣嶄翰", "瀛愬コ", "鍙楁墭浜�"], + organselection: [ + "鑲濊剰", + "鍙岃偩鑴�", "蹇冭剰", - "鍏ㄨ倽", - "宸﹁倽", - "鍙宠倽", - "宸﹁偩", - "鍙宠偩", - "鍏ㄨ偩", - "宸﹁偤", - "鍙宠偤", + "鑲鸿剰", + "鑳拌吅", "灏忚偁", - "鑵轰綋", + "鍙岀溂缁勭粐", "閬椾綋", - "宸︾溂瑙掕啘", - "鍙崇溂瑙掕啘", "鍏朵粬" ], + + //閫夋嫨鍣ㄥ畼琛ㄥ崟 + organList: { + //鍒嗛厤鍒楄〃 + organallocated: [], + //鑾峰彇鍒楄〃 + organprocured: [], + //瀹屾垚鍒楄〃 + organtransplant: [] + }, + //鍣ㄥ畼鐘舵�� allocationstatuslist: [ - { value: 0, label: "鏈垎閰�" }, { value: 1, label: "宸插垎閰�" }, - { value: 2, label: "浣滃簾" } + { value: 2, label: "閲嶅垎閰�" } ], organstatelist: [ - { value: "0", label: "鏈幏鍙�" }, { value: "1", label: "宸茶幏鍙�" }, - { value: "2", label: "寮冪敤" } + { value: "2", label: "鍥炵撼" } ], transplantstatelist: [ - { value: 0, label: "鏈Щ妞�" }, { value: 1, label: "宸茬Щ妞�" }, - { value: 2, label: "寮冪敤" } + { value: 2, label: "搴撳瓨" }, + { value: 3, label: "寮冪敤" } ], - allocationform: [], + //鍣ㄥ畼鏁版嵁 + allocateddata: [], + procureddata: [], + transplantdata: [], + witnessform: { infoid: null }, @@ -2382,12 +2488,9 @@ // 淇濆瓨銆佺粓姝㈡寜閽‘璁� showSaveBtn: true, showTerminationBtn: 0, //缁堟鐘舵�� 0-鏈粓姝� 1-宸茬粓姝� - //閫夋嫨鍣ㄥ畼琛ㄥ崟 - organalForm: { - //鍣ㄥ畼鍒楄〃 - organname: [] - }, - Processdata: {}, //娴佺▼鏁版嵁 + // 娴佺▼鏁版嵁锛歞onatebaseinfo[createtime,updatetime]銆乵edicalevaluation銆乺elativesconfirmation銆乨onateflowcharts銆乨onateorgansService銆乨onationwitness銆乨onatecompletioninfo + Processdata: {}, + //鐪佸競鍖洪粯璁ゅ�艰缃紝鍙负绌� searchAddress: { sheng: "", @@ -2514,6 +2617,8 @@ allocationrules: {}, witnessrules: {}, accomplishrules: {}, + //鎶ュ憡浜哄垪琛� + reporters: [], //闄勪欢鍒楄〃 annexfilesList: [], //闄勪欢灞曠ず鍒� @@ -2532,6 +2637,7 @@ headers: { Authorization: "Bearer " + getToken() }, + ICDtoken: getToken(), // 缃戠粶璇锋眰澶� Networkheader: null, //绁ㄦ嵁鏂囦欢 @@ -2546,12 +2652,25 @@ }, created() { + this.Getnetworkheader(); this.infoid = this.$route.query.id; }, mounted() { // this.id = this.$route.query.id; this.Getbasicinformation(); this.listDonateannex(); + //鑾峰彇鎶ュ憡浜哄垪琛細涓撹亴浜哄憳 + listReportname("zzry").then(res => { + this.reporters = res.data; + }); + //鑾峰彇鍗忚皟鍛樺垪 + listReportname("xty1").then(res => { + this.coordinatorlist1 = res.data; + }); + //鑾峰彇璐熻矗浜哄垪 + listReportname("fzr").then(res => { + this.leaderlist = res.data; + }); }, methods: { @@ -2559,18 +2678,9 @@ Getbasicinformation() { // 宸︿晶娴佺▼鏁版嵁 getDonatebaseinfoflow(this.infoid).then(res => { - console.log(res.data); this.Processdata = res.data; }); - //鑾峰彇鍗忚皟鍛樺垪 - listReportname("xty1").then(res => { - this.coordinatorlist1 = res.data; - }); - //鑾峰彇璐熻矗浜哄垪 - listReportname("fzr").then(res => { - this.leaderlist = res.data; - }); // 琛ㄥ崟鏁版嵁 getDonatebaseinfo(this.infoid).then(response => { this.form = response.data; @@ -2659,44 +2769,53 @@ if (this.ethicform.infoid) { return; } - listDonateflowchart(searchParam).then(response => { + //listDonateflowchart(searchParam).then(response => { + listEthicalreviewopinions(searchParam).then(response => { if (response.code == 200 && response.rows.length) { this.ethicform = response.rows[0]; } else { console.log("浼︾悊瀹℃煡鏁版嵁涓虹┖"); } }); - } else if (this.actives == 4 && !this.medicineform[0]) { - listDonateorgan(searchParam).then(response => { - if (response.code == 200) { - if (response.rows[0]) { - this.allocationform = response.rows; + } else if (this.actives == 4 && !this.allocateddata[0]) { + listDonateorgan(searchParam).then(res => { + if (res.code == 200) { + if (res.rows[0]) { + this.allocateddata = res.rows; } - this.organalForm.organname = []; - for (let i = 0; i < response.rows.length; i++) { - this.organalForm.organname.push(response.rows[i].organno); + this.organList.organallocated = []; + for (let i = 0; i < res.rows.length; i++) { + this.organList.organallocated.push(this.allocateddata[i].organno); } } else { // this.$modal.msgError( - // "鑾峰彇鍣ㄥ畼鍒嗛厤淇℃伅澶辫触锛�" + JSON.stringify(response) + // "鑾峰彇鍣ㄥ畼鍒嗛厤淇℃伅澶辫触锛�" + JSON.stringify(res) // ); } }); } else if (this.actives == 5 && !this.witnessform.infoid) { // 涓嶅瓨鍦ㄦ椂鑾峰彇鍣ㄥ畼淇℃伅 - if (!this.allocationform[0]) { - listDonateorgan(searchParam).then(resall => { - if (resall.code == 200) { - if (resall.rows[0]) { - this.allocationform = resall.rows; - } - } else { - // this.$modal.msgError( - // "鍣ㄥ畼鍒楄〃鑾峰彇澶辫触锛�" + JSON.stringify(resall) - // ); - } - }); + if (this.witnessform.infoid) { + return; } + + listDonationwitnessorgan(searchParam).then(res => { + if (res.code == 200) { + if (res.rows[0]) { + this.procureddata = res.rows; + this.procureddata.infoid = this.infoid; + } + this.organList.organprocured = []; + for (let i = 0; i < this.procureddata.length; i++) { + this.organList.organprocured.push(this.procureddata[i].organno); + } + } else { + // this.$modal.msgError( + // "鍣ㄥ畼鍒楄〃鑾峰彇澶辫触锛�" + JSON.stringify(resall) + // ); + } + }); + // 鑾峰彇褰撳墠瑙佽瘉淇℃伅 getByInfoId(searchParam.infoid).then(response => { if (response.code == 200) { @@ -2713,19 +2832,24 @@ } else if (this.actives == 6) { this.annexfilesList = this.registerlist; this.activetele = "瀹屾垚鐧昏"; - if (this.allocationform.infoid) { + if (this.accomplishform.infoid) { return; } + // 涓嶅瓨鍦ㄦ椂鑾峰彇鍣ㄥ畼 let accpre = { id: searchParam.infoid }; - // 涓嶅瓨鍦ㄦ椂鑾峰彇鍣ㄥ畼 - if (!this.allocationform[0]) { - listDonateorgan(searchParam).then(resall => { - if (resall.code == 200) { - if (resall.rows[0]) { - this.allocationform = resall.rows; - this.allocationform.infoid = this.infoid; + if (!this.organList.organtransplant[0]) { + listDonatecomporgan(searchParam).then(res => { + if (res.code == 200) { + if (res.rows[0]) { + this.transplantdata = res.rows; + this.transplantdata.infoid = this.infoid; + } + for (let i = 0; i < this.transplantdata.length; i++) { + this.organList.organtransplant.push( + this.transplantdata[i].organno + ); } } else { // this.$modal.msgError( @@ -2800,6 +2924,15 @@ this.form.redorganname = this.form.redorganno; } + //妗堜緥鏃堕棿鏇存柊鎴愯幏鍙栨椂闂� + if (this.actives == 5) { + this.$refs["witnessform"].validate(valid1 => { + this.$refs["form"].validate(valid2 => { + this.form.donatetime = this.witnessform.operationbegtime; + }); + }); + } + if (this.form.id != null) { if (this.form.workflow == 0) { this.form.workflow = 1; @@ -2807,7 +2940,6 @@ updateDonatebaseinfo(this.form).then(response => { this.$modal.msgSuccess("淇濆瓨鎴愬姛"); Modifydonationattachment(this.donatelist).then(res => { - console.log(res); }); this.Getbasicinformation(); // this.Processvalidation(); @@ -2820,7 +2952,6 @@ if (response.code == 200) { this.$modal.msgSuccess("鏂板鎴愬姛"); Modifydonationattachment(this.donatelist).then(res => { - console.log(res); }); this.Getbasicinformation(); // this.Processvalidation(); @@ -2877,11 +3008,13 @@ this.$refs["ethicform"].validate(valid => { if (valid) { if (this.ethicform.id != null) { - updateDonateflowchart(this.ethicform).then(response => { + // updateDonateflowchart(this.ethicform).then(response => { + updateEthicalreviewopinions(this.ethicform).then(res => { this.$modal.msgSuccess("浼︾悊瀹℃煡淇℃伅淇敼鎴愬姛"); }); } else { - addDonateflowchart(this.ethicform).then(response => { + //addDonateflowchart(this.ethicform).then(response => { + addEthicalreviewopinions(this.ethicform).then(res => { this.$modal.msgSuccess("浼︾悊瀹℃煡淇℃伅鏂板鎴愬姛"); }); } @@ -2889,25 +3022,34 @@ } }); } else if (this.actives == 4) { - this.allocationform.infoid = this.infoid; - this.$refs["allocationform"].validate(valid => { - if (valid) { - let arrallo = []; - this.allocationform.map(item => { - if (item.id) { - item.applicanttime = formatDate(item.applicanttime); - updateDonateorgan(item).then(response => {}); - } else { - arrallo.push(item); - } - }); - if (arrallo.length) { - addOrganallocation(arrallo).then(response => { - this.$modal.msgSuccess("鍣ㄥ畼鎹愮尞淇℃伅鏂板鎴愬姛"); - }); + this.procureddata.infoid = this.infoid; + this.$refs["allocateddata"].validate(valid => { + /** + let rows = []; + this.allocateddata.map(item => { + if (item.id) { + item.applicanttime = formatDate(item.applicanttime); + updateDonateorgan(item).then(response => { }); + } else { + item.infoid=this.infoid; + rows.push(item); } - this.Processvalidation(); + }); + if (rows.length) { + addOrganallocation(rows).then(res => { + this.$modal.msgSuccess("鍣ㄥ畼鎹愮尞淇℃伅鏂板鎴愬姛"); + }); } + */ + this.allocateddata.map(item => { + item.applicanttime = formatDate(item.applicanttime); + }); + saveDonateorgan(this.allocateddata).then(res => { + if (res == 200) { + this.$modal.msgSuccess("鍣ㄥ畼鎹愮尞鍒嗛厤淇℃伅淇濆瓨鎴愬姛锛�"); + } + }); + this.Processvalidation(); }); } else if (this.actives == 5) { this.witnessform.infoid = this.infoid; @@ -2929,30 +3071,27 @@ coordinatedusernametIndex ].reportName; } - console.log("juanxian"); + if (valid) { - // 淇濆瓨鍣ㄥ畼鍒嗛厤琛ㄦ暟鎹� - let arrallo = []; - this.allocationform.map(item => { - if (item.id) { - item.applicanttime = formatDate(item.applicanttime); - updateDonateorgan(item).then(response => {}); - } else { - arrallo.push(item); - } - }); if (this.witnessform.id != null) { - console.log(456); updateDonationwitness(this.witnessform).then(response => { this.$modal.msgSuccess("鑾峰彇瑙佽瘉淇℃伅淇敼鎴愬姛"); }); } else { - console.log(123); addDonationwitness(this.witnessform).then(response => { this.$modal.msgSuccess("鑾峰彇瑙佽瘉淇℃伅鏂板鎴愬姛"); }); } - this.form.donationcategory=this.witnessform.donationcategory; + + //淇濆瓨鍣ㄥ畼鑾峰彇琛ㄦ暟鎹� + this.procureddata.infoid = this.infoid; + saveDonationwitnessorgan(this.procureddata).then(res => { + if (res == 200) { + this.$modal.msgSuccess("鎹愮尞鍣ㄥ畼鑾峰彇淇℃伅淇濆瓨鎴愬姛锛�"); + } + }); + + this.form.donationcategory = this.witnessform.donationcategory; this.Processvalidation(); } }); @@ -2960,19 +3099,16 @@ this.accomplishform.infoid = this.infoid; this.$refs["accomplishform"].validate(valid => { if (valid) { - // 淇濆瓨鍣ㄥ畼鍒嗛厤琛ㄦ暟鎹� - let arrallo = []; - this.allocationform.map(item => { - if (item.id) { - item.applicanttime = formatDate(item.applicanttime); - updateDonateorgan(item).then(response => {}); - } else { - arrallo.push(item); + // 淇濆瓨鎹愮尞鍣ㄥ畼绉绘淇℃伅 + this.transplantdata.infoid = this.infoid; + saveDonatecomporgan(this.transplantdata).then(res => { + if (res == 200) { + this.$modal.msgSuccess("鎹愮尞鍣ㄥ畼鑾峰彇淇℃伅淇濆瓨鎴愬姛锛�"); } }); + // 淇濆瓨纭淇℃伅 - if (this.accomplishform.id) { - console.log(this.accomplishform); + if (this.accomplishform.dcid) { updateDonatecompletioninfo(this.accomplishform).then(response => { this.$modal.msgSuccess("瀹屾垚鐧昏淇℃伅淇敼鎴愬姛"); }); @@ -2981,6 +3117,7 @@ this.$modal.msgSuccess("瀹屾垚鐧昏鎴愬姛"); }); } + this.Processvalidation(); } }); @@ -2989,8 +3126,7 @@ // 鍒囨崲tab on_click(e) { // if (e != "" || e != null) { - console.log(this.form.workflow); - console.log(e); + let asdx = this.form.workflow + 1; if (asdx >= e) { this.actives = e; @@ -3002,63 +3138,215 @@ }, // 鍣ㄥ畼鍒嗛厤鏍忕洰鎺у埗 changeorganState(value) { - let organIndex = this.allocationform.findIndex( + let selectedIndex = this.organList.organallocated.findIndex( + item => item == value + ); + let organIndex = this.allocateddata.findIndex( item => item.organno == value ); - if (organIndex == -1) { - //鑾峰彇鍣ㄥ畼鍚嶇О - let temporganname = ""; - for (let i = 0; i < this.dict.type.sys_Organ.length; i++) { - if (value == this.dict.type.sys_Organ[i].value) { - temporganname = this.dict.type.sys_Organ[i].label; - break; + console.log( + "selectedIndex:" + selectedIndex + ",organIndex:" + organIndex + ); + if (selectedIndex == -1) { + //鍙栨秷閫夋嫨 + if (organIndex != -1) { + if (this.allocateddata[organIndex].id > 0) { + this.$confirm( + "鍒犻櫎鍣ㄥ畼鍒嗛厤鏁版嵁鍚庡皢涓嶆硶鎭㈠锛屾偍纭鍒犻櫎璇ユ潯璁板綍鍚楋紵", + "鎻愮ず", + { + confirmButtonText: "纭畾", + cancelButtonText: "鍙栨秷", + type: "warning" + } + ) + .then(() => { + this.loading = true; + delDonateorgan(this.allocateddata[organIndex].id).then(res => { + this.allocateddata.splice(organIndex, 1); + this.loading = false; + this.$modal.msgSuccess( + "鍒犻櫎鎴愬姛锛屽鏋滈渶瑕佸鍔犺鍣ㄥ畼锛岃閲嶆柊閫夋嫨鍣ㄥ畼锛�" + ); + }); + }) + .catch(() => { + this.organList.organallocated.push(value); + }); + } else { + //鏂拌褰曠洿鎺ュ垹闄� + this.allocateddata.splice(organIndex, 1); } } - if (temporganname != "") { - this.allocationform.push({ - organname: temporganname, - organno: value, - id: null, - infoid: this.infoid, - donorno: this.form.donorno, - transplanthospitalname: null, - transplanthospitalno: null, - organstate: 0 - }); - } } else { - this.$confirm("鏄惁纭鍒犻櫎鍣ㄥ畼鍒嗛厤璁板綍", "鎻愮ず", { - confirmButtonText: "纭畾", - cancelButtonText: "鍙栨秷", - type: "warning" - }) - .then(() => { - if (organIndex != -1) { - let tempOrgan = this.allocationform[organIndex]; - console.log(tempOrgan); - if (tempOrgan.organstate != 1 && tempOrgan.id > 0) { - this.$modal.msgWarning("鍙湁鏈垎閰嶅櫒瀹樺彲杩涜鍒犻櫎锛�"); - this.organalForm.organname.push(value); - return; - } - if (tempOrgan.id > 0) { - //鏌ユ壘鍣ㄥ畼琛ㄨ褰曪紝鍒ゆ柇鍣ㄥ畼鐘舵�� - this.loading = true; - delDonateorgan(tempOrgan.id).then(delLocationRes => { - this.loading = false; - this.$modal.msgSuccess("鍒犻櫎鎴愬姛"); - }); - } else { - this.allocationform.splice(organIndex, 1); - } + //閫夋嫨鏂板櫒瀹� + if (organIndex == -1) { + //娣诲姞鍣ㄥ畼璁板綍 + let temporganname = ""; + for (let i = 0; i < this.dict.type.sys_Organ.length; i++) { + if (value == this.dict.type.sys_Organ[i].value) { + temporganname = this.dict.type.sys_Organ[i].label; + break; } - }) - .catch(() => {}); + } + if (temporganname != "") { + this.allocateddata.push({ + organname: temporganname, + organno: value, + id: null, + infoid: this.infoid, + donorno: this.form.donorno, + organstate: 1 + }); + } + } else { + this.$modal.msgWarning("璇ュ櫒瀹樺凡缁忓垎閰嶏紝璇峰嬁閲嶅閫夋嫨锛�"); + } } }, + // 鍣ㄥ畼鑾峰彇閫夋嫨鎺у埗 + changeorganprocured(value) { + let selectedIndex = this.organList.organprocured.findIndex( + item => item == value + ); + let organIndex = this.procureddata.findIndex( + item => item.organno == value + ); + console.log( + "selectedIndex:" + selectedIndex + ",organIndex:" + organIndex + ); + if (selectedIndex == -1) { + //鍙栨秷閫夋嫨 + if (organIndex != -1) { + if (this.procureddata[organIndex].id > 0) { + this.$confirm( + "鍒犻櫎鍣ㄥ畼鍒嗛厤鏁版嵁鍚庡皢涓嶆硶鎭㈠锛屾偍纭鍒犻櫎璇ユ潯璁板綍鍚楋紵", + "鎻愮ず", + { + confirmButtonText: "纭畾", + cancelButtonText: "鍙栨秷", + type: "warning" + } + ) + .then(() => { + this.loading = true; + delDonationwitnessorgan(this.procureddata[organIndex].id).then( + res => { + this.procureddata.splice(organIndex, 1); + this.loading = false; + this.$modal.msgSuccess( + "鍒犻櫎鎴愬姛锛屽鏋滈渶瑕佸鍔犺鍣ㄥ畼锛岃閲嶆柊閫夋嫨鍣ㄥ畼锛�" + ); + } + ); + }) + .catch(() => { + this.organList.organprocured.push(value); + }); + } else { + //鏂拌褰曠洿鎺ュ垹闄� + this.procureddata.splice(organIndex, 1); + } + } + } else { + //閫夋嫨鏂板櫒瀹� + if (organIndex == -1) { + //娣诲姞鍣ㄥ畼璁板綍 + let temporganname = ""; + for (let i = 0; i < this.dict.type.sys_Organ.length; i++) { + if (value == this.dict.type.sys_Organ[i].value) { + temporganname = this.dict.type.sys_Organ[i].label; + break; + } + } + if (temporganname != "") { + this.procureddata.push({ + organname: temporganname, + organno: value, + id: null, + infoid: this.infoid, + donorno: this.form.donorno, + organstate: "1" + }); + } + } else { + this.$modal.msgWarning("璇ュ櫒瀹樺凡缁忓垎閰嶏紝璇峰嬁閲嶅閫夋嫨锛�"); + } + } + }, + // 鍣ㄥ畼绉绘閫夋嫨鎺у埗 + changeorgantransplant(value) { + let selectedIndex = this.organList.organtransplant.findIndex( + item => item == value + ); + let organIndex = this.transplantdata.findIndex( + item => item.organno == value + ); + console.log( + "selectedIndex:" + selectedIndex + ",organIndex:" + organIndex + ); + if (selectedIndex == -1) { + //鍙栨秷閫夋嫨 + if (organIndex != -1) { + if (this.transplantdata[organIndex].id > 0) { + this.$confirm( + "鍒犻櫎鍣ㄥ畼鏁版嵁鍚庡皢涓嶆硶鎭㈠锛屾偍纭鍒犻櫎璇ユ潯璁板綍鍚楋紵", + "鎻愮ず", + { + confirmButtonText: "纭畾", + cancelButtonText: "鍙栨秷", + type: "warning" + } + ) + .then(() => { + this.loading = true; + delDonatecomporgan(this.transplantdata[organIndex].id).then( + res => { + this.transplantdata.splice(organIndex, 1); + this.loading = false; + this.$modal.msgSuccess( + "鍒犻櫎鎴愬姛锛屽鏋滈渶瑕佸鍔犺鍣ㄥ畼锛岃閲嶆柊閫夋嫨鍣ㄥ畼锛�" + ); + } + ); + }) + .catch(() => { + this.organList.organtransplant.push(value); + }); + } else { + //鏂拌褰曠洿鎺ュ垹闄� + this.transplantdata.splice(organIndex, 1); + } + } + } else { + //閫夋嫨鏂板櫒瀹� + if (organIndex == -1) { + //娣诲姞鍣ㄥ畼璁板綍 + let temporganname = ""; + for (let i = 0; i < this.dict.type.sys_Organ.length; i++) { + if (value == this.dict.type.sys_Organ[i].value) { + temporganname = this.dict.type.sys_Organ[i].label; + break; + } + } + if (temporganname != "") { + this.transplantdata.push({ + organname: temporganname, + organno: value, + id: null, + infoid: this.infoid, + donorno: this.form.donorno, + organstate: 1 + }); + } + } else { + this.$modal.msgWarning("璇ュ櫒瀹樺凡缁忛�夋嫨锛岃鍕块噸澶嶉�夋嫨锛�"); + } + } + }, + // 鍓嶈繘姝ラ makeastepforward() { - console.log(this.actives); if (this.actives <= 6) { this.actives++; this.GetAttacheddata(); @@ -3068,9 +3356,8 @@ }, // 鏇存敼杩涚▼鏁堥獙 Processvalidation() { - console.log(this.form.workflow); - console.log(this.actives); - if (this.form.workflow + 1 == this.actives) { + + if (this.form.workflow + 1 == this.actives || this.actives == 6) { if (this.form.workflow <= 6) { this.form.workflow++; } else { @@ -3080,7 +3367,6 @@ } else if (this.form.workflow > this.actives) { // this.submitForm(); Modifydonationattachment(this.donatelist).then(res => { - console.log(res); }); this.listDonateannex(); this.GetAttacheddata(); @@ -3089,7 +3375,6 @@ // this.$modal.msgWarning("璇峰厛瀹屾垚鍓嶉儴姝ラ"); return; } - console.log(this.form.workflow); }, // 涓婃姤瀹℃牳 Reportforreview() {}, @@ -3139,7 +3424,6 @@ }, {} ); - console.log(groupedArr); }); }, // 闄勪欢淇敼鏁版嵁杞瓨灏佽 @@ -3157,10 +3441,8 @@ this.registerlist = arr; } // 鍒犻櫎鏃朵慨鏀逛富鍒梔elFlag - console.log(delvalue); const index = this.donatelist.indexOf(delvalue); - console.log(index); - if (index !== -1) { + if (index != -1) { if (delvalue.id) { this.donatelist[index].delFlag = 1; console.log("淇敼鑰佹暟鎹悗", this.donatelist); @@ -3186,46 +3468,91 @@ // 涓婁紶鎴愬姛 uploadSccess(response, file, fileList) { this.rbDetails; + const config = { + headers: { Authorization: "Bearer " + this.ICDtoken } + }; + const pdfimg = this.Networkheader + "/prod-api" + response.fileName; + console.log(this.Networkheader); //鑾峰彇绁ㄦ嵁淇℃伅浣嶇疆 if (response.code == 200) { - // this.form.filename = file.raw.name; this.previewpdf = true; + + fetch(pdfimg, config) + .then(response => response.blob()) + .then(blob => { + // 灏嗚幏鍙栫殑鏁版嵁娴佽浆鎹负URL + this.pdfimg = URL.createObjectURL(blob); + this.pdfimgsrcList.push(URL.createObjectURL(blob)); + this.pdftitle = "鍏�" + this.pdfimgsrcList.length + "椤�"; + let addvalue = { + annexname: file.name, + annexurl: URL.createObjectURL(blob), + delFlag: 0, + infoid: this.infoid, + annexfilestype: this.actives + }; + this.fileListto.push(addvalue); + }) + .catch(error => { + console.error("Error loading image", error); + return; + }); + this.$modal.msgSuccess(response.msg); - let addvalue = { + + console.log(this.fileListto, "鏂板鍚�"); + if (!this.annexfilesList) { + this.annexfilesList = []; + } + let addvalues = { annexname: file.name, annexurl: response.fileName, delFlag: 0, infoid: this.infoid, annexfilestype: this.actives }; - this.fileListto.push(addvalue); - this.Newconversion(this.fileListto, "", addvalue); - this.pdfimgsrcList.push( - this.Networkheader + "/prod-api" + response.fileName - ); - console.log(this.pdfimgsrcList); - this.pdftitle = "鍏�" + this.pdfimgsrcList.length + "椤�"; - this.pdfimg = this.Networkheader + "/prod-api" + response.fileName; - this.annexfilesList = this.fileListto; + this.annexfilesList.push(addvalues); + this.Newconversion(this.annexfilesList, "", addvalues); } else { console.log(response.msg); } }, - // 鐐瑰嚮绁ㄦ嵁 + // 鏂囦欢寮圭獥瑙﹀彂 Filepopup(index, rows, row) { + const config = { + headers: { Authorization: "Bearer " + this.ICDtoken } + }; + + this.fileListto = []; this.pdfimgsrcList = []; + this.pdfimg = ''; + this.atpresent = index; this.pdfVisible = true; if (this.annexfilesList.length) { - this.previewpdf = true; - this.fileListto = this.annexfilesList; - console.log(this.fileListto); - this.pdfimg = - this.Networkheader + "/prod-api" + this.fileListto[0].annexurl; - this.fileListto.forEach(item => { - this.pdfimgsrcList.push( - this.Networkheader + "/prod-api" + item.annexurl - ); + this.annexfilesList.forEach((value, indexson) => { + const pdfimg = this.Networkheader + "/prod-api" + value.annexurl; + fetch(pdfimg, config) + .then(response => response.blob()) + .then(blob => { + // 灏嗚幏鍙栫殑鏁版嵁娴佽浆鎹负URL + this.fileListto.push({ + annexname: value.annexname, + annexurl: URL.createObjectURL(blob), + delFlag: 0, + infoid: this.infoid, + annexfilestype: this.actives + }); + if (this.fileListto.length == 1) { + this.pdfimg = URL.createObjectURL(blob); + } + this.pdfimgsrcList.push(URL.createObjectURL(blob)); + }) + .catch(error => { + console.error("Error loading image", error); + return; + }); }); + this.previewpdf = true; } else { this.fileListto = []; this.pdfimg = ""; @@ -3237,8 +3564,8 @@ downFile(item) { console.log(item, "鐐瑰嚮鏂囦欢鎷縤tem"); this.pdftitle = - "鍏�" + this.pdfimgsrcList.length + "椤癸紝褰撳墠閫変腑" + item.name; - let name = item.name.split("."); + "鍏�" + this.pdfimgsrcList.length + "椤癸紝褰撳墠閫変腑" + item.annexname; + let name = item.annexname.split("."); if (name[1] == "pdf") { this.$modal.msgWarning("褰撳墠鏂囦欢鏆備笉鏀寔棰勮"); this.previewpdf = false; @@ -3246,10 +3573,9 @@ } else if (name[1] == "jpg" || "png") { this.previewpdf = true; if (item.annexurl) { - this.pdfimg = this.Networkheader + "/prod-api" + item.annexurl; + this.pdfimg = item.annexurl; } else { - this.pdfimg = - this.Networkheader + "/prod-api" + item.response.annexurl; + this.pdfimg = ""; } } else { this.hintitle = "褰撳墠鏂囦欢鏆備笉鏀寔棰勮"; @@ -3263,15 +3589,22 @@ }, // 鐐瑰嚮鍒犻櫎 deletedowfile(row) { - const indexlist = this.getIndexInArray( - this.pdfimgsrcList, - this.Networkheader + "/prod-api" + row.annexurl - ); + let indexvalue = ""; + const indexlist = this.getIndexInArray(this.pdfimgsrcList, row.annexurl); this.pdfimgsrcList.splice(indexlist, 1); const index = this.getIndexInArray(this.fileListto, row); - this.Newconversion(this.fileListto, this.fileListto[index], ""); this.fileListto.splice(index, 1); - console.log(index); + + indexvalue = this.annexfilesList.find((item, index) => { + return item.annexname == row.annexname; + }); + console.log(indexvalue, "鍒犻櫎绱㈠紩"); + this.annexfilesList.splice(indexvalue, 1); + this.Newconversion( + this.annexfilesList, + indexvalue, + "" + ); }, // 鐐瑰嚮涓婄Щ moveupdowfile(row) { @@ -3288,8 +3621,59 @@ }, filterTag(value, row) { return row.tag === value; + }, + + //韬唤璇佹牎楠岃祴鍊� + updateMessage() { + try { + const reg = /^[1-9]\d{5}(18|19|([23]\d))\d{2}((0[1-9])|(10|11|12))(([0-2][1-9])|10|20|30|31)\d{3}[0-9Xx]$/; + if (reg.test(this.form.idcardno)) { + // 韬唤璇佸彿鐮佹槸鍚﹀悎娉� + var org_birthday = this.form.idcardno.substring(6, 14); + var org_gender = this.form.idcardno.substring(16, 17); + var sex = org_gender % 2 == 1 ? 1 : 2; + var birthday = + org_birthday.substring(0, 4) + + "-" + + org_birthday.substring(4, 6) + + "-" + + org_birthday.substring(6, 8); + var birthdays = new Date(birthday.replace(/-/g, "/")); + let d = new Date(); + let age = + d.getFullYear() - + birthdays.getFullYear() - + (d.getMonth() < birthdays.getMonth() || + (d.getMonth() == birthdays.getMonth() && + d.getDate() < birthdays.getDate()) + ? 1 + : 0); + // 璧嬪�肩粰琛ㄦ牸 + this.form.sex = sex; + this.form.birthday = birthday; + this.form.age = age; + } else { + } + } catch {} + }, + + //閲嶆柊鍒嗛厤鍣ㄥ畼 + redistribution(row) { + console.log("redistribution", row); + row.reallocationreason = + "宸查噸鏂板垎閰�,鍘熷垎閰嶄俊鎭�(濮撳悕:" + + row.name + + "銆佺郴缁熺紪鍙�:" + + row.caseno + + "銆佹帴鏀舵椂闂�:" + + row.applicanttime + + ")"; + row.name = null; + row.caseno = null; + row.applicanttime = null; } }, + dicts: [ "sys_nation", "sys_occupation", @@ -3322,6 +3706,7 @@ display: -webkit-box; background-color: #f5f7fa; height: 100%; + .left-course { background: #fff; width: 17vw; @@ -3337,11 +3722,12 @@ margin: 20px 10px; padding: 10px; margin-top: 0; - z-index: 999; - position: -webkit-sticky; - position: fixed; - top: 50; + // z-index: 999; + // position: -webkit-sticky; + // position: fixed; + // top: 50; } + .title { background: #22a2c3; margin-bottom: 20px; @@ -3350,9 +3736,11 @@ } } } + .upload-demo { text-align: center; } + .pdfimg { display: flex; // text-align: center; width: 100%; @@ -3392,11 +3780,13 @@ text-align: center; } } + .Ticket-button { margin-top: 10px; text-align: right; padding-right: 66px; } + .boxdiv { max-width: 85vw; font-size: 18px; @@ -3412,14 +3802,23 @@ margin-bottom: 30px; } } + ::v-deep .el-step__head.is-finish { color: #22a2c3; border-color: #22a2c3; } + ::v-deep .el-step__title.is-finish { color: #22a2c3; } + ::v-deep .el-step__description.is-finish { color: #22a2c3; } + +:v-deep .el-select { + display: inline-block; + position: relative; + width: 80%; +} </style> -- Gitblit v1.9.3