From d5786ed5bcb549ad4ea37437b2acc48d0bac9413 Mon Sep 17 00:00:00 2001
From: WXL <1785969728@qq.com>
Date: 星期三, 21 二月 2024 16:05:50 +0800
Subject: [PATCH] 11

---
 src/views/project/donationdetails/index.vue | 1078 ++++++++++++++++++++++++++++++++++++++---------------------
 1 files changed, 692 insertions(+), 386 deletions(-)

diff --git a/src/views/project/donationdetails/index.vue b/src/views/project/donationdetails/index.vue
index 457e1d2..0352f06 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 slot="description" v-if="Processdata.donatebaseinfo.createtime">
@@ -618,8 +618,8 @@
             <el-col :span="12">
               <el-form-item label="绛惧瓧浜插睘" prop="kinshipconfirmationsign">
                 <el-checkbox-group v-model="organdecision">
-                  <el-checkbox v-for="item in kinshiplist" :label="item">
-                    {{ item }}
+                  <el-checkbox v-for="item in kinshiplist" :key="item" :label="item">
+                    {{ item == "瀛愬コ" ? item + "(浜�)" : item }}
                   </el-checkbox>
                 </el-checkbox-group>
               </el-form-item>
@@ -635,13 +635,14 @@
               </el-form-item>
             </el-col>
           </el-row>
-          <el-row></el-form-item><el-form-item label-width="100px" label="鎹愮尞鍐冲畾">
+          <el-row>
+            <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 v-for="item in organselection" :key="item" :label="item">{{ item }}
                 </el-checkbox>
               </el-checkbox-group>
-            </el-form-item></el-row>
+            </el-form-item>
+          </el-row>
           <el-row>
             <!-- <el-col :span="18">
               <el-form-item align="left" label="鎹愮尞鍐冲畾">
@@ -739,8 +740,7 @@
                 <el-date-picker clearable size="small" 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 v-show="!showTerminationBtn" type="primary" @click="Savethedetails">淇濆瓨</el-button>
@@ -756,12 +756,12 @@
         </div>
       </div>
       <!-- 鍣ㄥ畼鍒嗛厤 -->
-      <div class="boxdiv" v-show="actives == 4 || actives == 5 || actives == 6">
-        <el-form ref="allocationform" :model="allocationform" :rules="allocationrules" label-position="right">
+      <div class="boxdiv" v-show="actives == 4">
+        <el-form ref="allocateddata" :model="allocateddata" :rules="allocationrules" label-position="right">
           <el-row>
             <el-col>
-              <el-form-item label-width="100px" label="閫夋嫨鍣ㄥ畼">
-                <el-checkbox-group v-model="organalForm.organname">
+              <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)">
                     {{ dict.label }}
@@ -773,153 +773,63 @@
           <el-row>
             <el-col>
               <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="120" prop="ageunit" v-if="actives == 4">
+                <el-table v-loading="loading" border :data="allocateddata">
+                  <el-table-column label="鍣ㄥ畼鍚嶇О" align="center" width="110" prop="organname">
                     <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="绯荤粺缂栧彿" />
+                      <el-input v-model="scope.row.organname" placeholder="鍣ㄥ畼鍚嶇О" :disabled="scope.row.organno != 'C01'" />
                     </template>
                   </el-table-column>
-                  <el-table-column label="鎺ユ敹鏃堕棿" align="center" width="200" prop="applicanttime" v-if="actives == 4">
+                  <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-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-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" v-if="actives == 4">
+                  <el-table-column label="鍙椾綋濮撳悕" align="center" width="120" prop="name">
                     <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="鍙椾綋濮撳悕" />
+                      <el-input v-model="scope.row.name" placeholder="鍙椾綋濮撳悕" />
                     </template>
                   </el-table-column>
                   <!--
-              <el-table-column label="璇佷欢绫诲瀷" align="center" width="150" prop="idcardtype" v-if="actives == 4">
+              <el-table-column label="璇佷欢绫诲瀷" align="center" width="150" prop="idcardtype">
                 <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-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="200" prop="idcardno" v-if="actives == 4">
+              <el-table-column label="璇佷欢鍙风爜" align="center" width="200" prop="idcardno">
                 <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="璇佷欢鍙风爜" />
+                  <el-input v-model="scope.row.idcardno" placeholder="璇佷欢鍙风爜" />
                 </template>
-              </el-table-column>
-              -->
-                  <el-table-column label="鍒嗛厤鐘舵��" align="center" width="150" prop="allocationstatus" v-if="actives == 4">
+              </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" v-if="actives == 4">
+                  </el-table-column> 
+                -->
+                  <el-table-column prop="reallocationreason" label="璇存槑" align="center">
                     <template slot-scope="scope">
-                      <el-input clearable v-model="scope.row.reallocationreason" placeholder="璇疯緭鍏ラ噸鍒嗛厤璇存槑" />
+                      <el-input type="textarea" clearable v-model="scope.row.reallocationreason" placeholder="璇疯緭鍏ヨ鏄�" />
                     </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" 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="150" prop="organstate" v-if="actives == 5">
-                <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" width="230" prop="transplanthospitalname"
-                    v-if="actives == 6">
-                    <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="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="150" prop="transplantstate" v-if="actives == 6">
-                    <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" v-if="actives == 6">
-                    <template slot-scope="scope">
-                      <el-input clearable v-model="scope.row.abandonreason" placeholder="璇疯緭鍏ュ純鐢ㄥ師鍥�" />
-                    </template>
-                  </el-table-column>
-                  <el-table-column label="鎿嶄綔" width="200" align="center" class-name="small-padding fixed-width"
+                  <el-table-column label="鎿嶄綔" align="center" width="100" class-name="small-padding fixed-width"
                     v-if="actives == 4">
                     <template slot-scope="scope">
                       <el-button size="mini" type="text" icon="el-icon-copy-document"
-                        @click="deldistribution(scope.row)">鍒犻櫎</el-button>
-                      <el-button size="mini" type="text" icon="el-icon-copy-document"
-                        @click="redistribution(scope.row)">閲嶆柊鍒嗛厤</el-button>
+                        @click="redistribution(scope.row)">閲嶅垎閰�</el-button>
                     </template>
                   </el-table-column>
                 </el-table>
@@ -955,120 +865,160 @@
           </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" type="datetime"
                   value-format="yyyy-MM-dd HH:mm:ss" placeholder="閫夋嫨姝讳骸鏃堕棿">
                 </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="璇疯緭鍏ユ浜″師鍥�" />
               </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="operationbegtime">
+            <el-col :span="6">
+              <el-form-item align="left" label="鎵嬫湳锛氬紑濮嬫椂闂�" label-width="140px" prop="operationbegtime">
                 <el-date-picker clearable v-model="witnessform.operationbegtime" type="datetime"
                   value-format="yyyy-MM-dd HH:mm:ss" placeholder="閫夋嫨鎵嬫湳寮�濮嬫椂闂�">
                 </el-date-picker>
               </el-form-item>
             </el-col>
-            <el-col :span="10">
-              <el-form-item align="left" label="缁撴潫鏃堕棿" prop="operationendtime">
+            <el-col :span="6">
+              <el-form-item align="left" label="缁撴潫鏃堕棿" label-width="120px" prop="operationendtime">
                 <el-date-picker clearable v-model="witnessform.operationendtime" type="datetime"
                   value-format="yyyy-MM-dd HH:mm:ss" placeholder="閫夋嫨鎵嬫湳缁撴潫鏃堕棿">
                 </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-form-item label="鎻掔鏃堕棿" align="left" prop="abdominalaortacannulatime">
+          <el-row>
+            <el-col :span="6">
+              <el-form-item label="鑵逛富鍔ㄨ剦锛氭彃绠℃椂闂�" align="left" label-width="140px" prop="abdominalaortacannulatime">
                 <el-date-picker clearable v-model="witnessform.abdominalaortacannulatime" type="datetime"
                   value-format="yyyy-MM-dd HH:mm:ss" placeholder="閫夋嫨鑵逛富鍔ㄨ剦鎻掔鏃堕棿">
                 </el-date-picker>
               </el-form-item>
             </el-col>
-            <el-col :span="10">
-              <el-form-item label="鐏屾敞鏃堕棿" align="left" prop="abdominalaortaperfusiontime">
+            <el-col :span="6">
+              <el-form-item label="鐏屾敞鏃堕棿" align="left" label-width="120px" prop="abdominalaortaperfusiontime">
                 <el-date-picker clearable v-model="witnessform.abdominalaortaperfusiontime" type="datetime"
                   value-format="yyyy-MM-dd HH:mm:ss" placeholder="閫夋嫨鑵逛富鍔ㄨ剦鐏屾敞鏃堕棿">
                 </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-form-item label="鎻掔鏃堕棿" align="left" prop="portalveincannulatime">
+            <el-col :span="6">
+              <el-form-item label="闂ㄩ潤鑴夛細鎻掔鏃堕棿" align="left" label-width="140px" prop="portalveincannulatime">
                 <el-date-picker clearable v-model="witnessform.portalveincannulatime" type="datetime"
                   value-format="yyyy-MM-dd HH:mm:ss" placeholder="閫夋嫨闂ㄩ潤鑴夎剦鎻掔鏃堕棿">
                 </el-date-picker>
               </el-form-item>
             </el-col>
-            <el-col :span="10">
-              <el-form-item label="鐏屾敞鏃堕棿" align="left" prop="portalveinperfusiontime">
+            <el-col :span="6">
+              <el-form-item label="鐏屾敞鏃堕棿" align="left" label-width="120px" prop="portalveinperfusiontime">
                 <el-date-picker clearable v-model="witnessform.portalveinperfusiontime" type="datetime"
                   value-format="yyyy-MM-dd HH:mm:ss" placeholder="閫夋嫨闂ㄩ潤鑴夌亴娉ㄦ椂闂�">
                 </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-form-item label="鎻掔鏃堕棿" align="left" prop="pulmonaryarterycannulatime">
+          <el-row>
+            <el-col :span="6">
+              <el-form-item label="鑲哄姩鑴夛細鎻掔鏃堕棿" align="left" label-width="140px" prop="pulmonaryarterycannulatime">
                 <el-date-picker clearable v-model="witnessform.pulmonaryarterycannulatime" type="datetime"
                   value-format="yyyy-MM-dd HH:mm:ss" placeholder="閫夋嫨闂ㄩ潤鑴夋彃绠℃椂闂�">
                 </el-date-picker>
               </el-form-item>
             </el-col>
-            <el-col :span="10">
-              <el-form-item label="鐏屾敞鏃堕棿" align="left" prop="pulmonaryarteryperfusiontime">
+            <el-col :span="6">
+              <el-form-item label="鐏屾敞鏃堕棿" align="left" label-width="120px" prop="pulmonaryarteryperfusiontime">
                 <el-date-picker clearable v-model="witnessform.pulmonaryarteryperfusiontime" type="datetime"
                   value-format="yyyy-MM-dd HH:mm:ss" placeholder="閫夋嫨闂ㄩ潤鑴夌亴娉ㄦ椂闂�">
                 </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-form-item label="鐏屾敞鏃堕棿" align="left" prop="aortacannulatime">
+            <el-col :span="6">
+              <el-form-item label="涓诲姩鑴夛細鐏屾敞鏃堕棿" align="left" label-width="140px" prop="aortacannulatime">
                 <el-date-picker clearable v-model="witnessform.aortacannulatime" type="datetime"
                   value-format="yyyy-MM-dd  HH:mm:ss" placeholder="閫夋嫨涓诲姩鑴夌亴娉ㄦ椂闂�">
                 </el-date-picker>
               </el-form-item>
             </el-col>
-            <el-col :span="10">
-              <el-form-item label="鐏屾敞鏃堕棿" align="left" prop="aortaperfusiontime">
+            <el-col :span="6">
+              <el-form-item label="鐏屾敞鏃堕棿" align="left" label-width="120px" prop="aortaperfusiontime">
                 <el-date-picker clearable v-model="witnessform.aortaperfusiontime" type="datetime"
                   value-format="yyyy-MM-dd  HH:mm:ss" 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>
@@ -1136,6 +1086,64 @@
         <el-form ref="accomplishform" :model="accomplishform" :rules="accomplishrules" label-width="100px"
           label-position="right">
           <el-row>
+            <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>
+              <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">
@@ -1186,7 +1194,6 @@
               </el-form-item>
             </el-col>
           </el-row>
-          </el-row>
         </el-form>
         <div class="dialog-footer">
           <el-button v-show="!showTerminationBtn" type="primary" @click="Savethedetails">淇濆瓨</el-button>
@@ -1199,10 +1206,6 @@
       <!-- 瀹岀粨娴佺▼ -->
       <div class="boxdiv" v-show="actives > 6">
         <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>
@@ -1219,21 +1222,20 @@
           >鏂囦欢鎸囧鐩綍</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">
           <div>
             <el-upload size="mini" class="upload-demo" :action="uploadFileUrl" :file-list="fileList"
               :show-file-list="false" multiple drag :headers="headers" :on-success="(response, file, fileList) =>
-                uploadSccess(response, file, fileList)
-                " :on-preview="downFile" :disabled="operationType == 'detail'" :on-error="handleUploadError"
-              :on-remove="remove" accept="image/*,.pdf">
+                  uploadSccess(response, file, fileList)
+                " :on-preview="downFile" :on-error="handleUploadError" :on-remove="remove" accept="image/*,.pdf">
               <i class="el-icon-upload"></i>
               <div class="el-upload__text">
                 灏嗗彂绁ㄦ枃浠舵嫋鍒版澶勶紝鎴�
-                <em><el-button :disabled="operationType == 'detail'" size="small" type="primary">鐐瑰嚮涓婁紶</el-button></em>
+                <em><el-button size="small" type="primary">鐐瑰嚮涓婁紶</el-button></em>
               </div>
             </el-upload>
             <el-table :data="fileListto" @row-click="downFile" style="width: 100%" height="400">
@@ -1322,7 +1324,7 @@
   getEthicalreviewopinions,
   addEthicalreviewopinions,
   updateEthicalreviewopinions,
-  listnewEthicalreviewopinions,
+  listnewEthicalreviewopinions
 } from "@/api/project/ethicalreviewopinions";
 import {
   addDonateflowchart,
@@ -1333,7 +1335,8 @@
   listDonateorgan,
   addDonateorgan,
   delDonateorgan,
-  updateDonateorgan
+  updateDonateorgan,
+  saveDonateorgan
 } from "@/api/project/donateorgan";
 import {
   listOrganallocation,
@@ -1344,12 +1347,19 @@
   addDonationwitness,
   updateDonationwitness,
   getDonationwitness,
-  getByInfoId
+  getByInfoId,
+  listDonationwitnessorgan,
+  saveDonationwitnessorgan,
+  delDonationwitnessorgan
 } from "@/api/project/donationwitness";
 import {
   listnewDonatecompletioninfo,
+  listDonatecompletioninfo,
   addDonatecompletioninfo,
-  updateDonatecompletioninfo
+  updateDonatecompletioninfo,
+  listDonatecomporgan,
+  saveDonatecomporgan,
+  delDonatecomporgan
 } from "@/api/project/donatecompletioninfo";
 import Li_area_select from "@/components/Address";
 import OrgSelecter from "@/views/project/components/orgselect";
@@ -1371,6 +1381,7 @@
       infoid: 736,
       drawer: false,
       form: {},
+      activeName: "",
       tableDatafile: [
         {
           name: "鐜嬪皬铏�",
@@ -1388,35 +1399,50 @@
       },
       organdecision: [],
       ethicform: {
-        infoid: null,
+        infoid: null
       },
 
       kinshiplist: ["閰嶅伓", "鐖朵翰", "姣嶄翰", "瀛愬コ", "鍙楁墭浜�"],
-      organlist: [
+      organselection: [
         "鑲濊剰",
         "鍙岃偩鑴�",
         "蹇冭剰",
         "鑲鸿剰",
-        "鑵轰綋",
+        "鑳拌吅",
         "灏忚偁",
         "鍙岀溂缁勭粐",
         "閬椾綋",
         "鍏朵粬"
       ],
+
+      //閫夋嫨鍣ㄥ畼琛ㄥ崟
+      organList: {
+        //鍒嗛厤鍒楄〃
+        organallocated: [],
+        //鑾峰彇鍒楄〃
+        organprocured: [],
+        //瀹屾垚鍒楄〃
+        organtransplant: []
+      },
+      //鍣ㄥ畼鐘舵��
       allocationstatuslist: [
         { value: 1, label: "宸插垎閰�" },
-        { value: 2, label: "浣滃簾" }
+        { value: 2, label: "閲嶅垎閰�" }
       ],
       organstatelist: [
         { value: "1", label: "宸茶幏鍙�" },
-        { value: "2", label: "寮冪敤" }
+        { value: "2", label: "鍥炵撼" }
       ],
       transplantstatelist: [
         { value: 1, label: "宸茬Щ妞�" },
         { value: 2, label: "搴撳瓨" },
         { value: 3, label: "寮冪敤" }
       ],
-      allocationform: [],
+      //鍣ㄥ畼鏁版嵁
+      allocateddata: [],
+      procureddata: [],
+      transplantdata: [],
+
       witnessform: {
         infoid: null
       },
@@ -1432,12 +1458,9 @@
       //   淇濆瓨銆佺粓姝㈡寜閽‘璁�
       showSaveBtn: true,
       showTerminationBtn: 0, //缁堟鐘舵�� 0-鏈粓姝� 1-宸茬粓姝�
-      //閫夋嫨鍣ㄥ畼琛ㄥ崟
-      organalForm: {
-        //鍣ㄥ畼鍒楄〃
-        organname: []
-      },
-      Processdata: {}, //娴佺▼鏁版嵁
+      // 娴佺▼鏁版嵁锛歞onatebaseinfo[createtime,updatetime]銆乵edicalevaluation銆乺elativesconfirmation銆乨onateflowcharts銆乨onateorgansService銆乨onationwitness銆乨onatecompletioninfo
+      Processdata: {},
+
       //鐪佸競鍖洪粯璁ゅ�艰缃紝鍙负绌�
       searchAddress: {
         sheng: "",
@@ -1564,6 +1587,8 @@
       allocationrules: {},
       witnessrules: {},
       accomplishrules: {},
+      //鎶ュ憡浜哄垪琛�
+      reporters: [],
       //闄勪欢鍒楄〃
 
       annexfilesList: [], //闄勪欢灞曠ず鍒�
@@ -1582,6 +1607,7 @@
       headers: {
         Authorization: "Bearer " + getToken()
       },
+      ICDtoken: getToken(),
       // 缃戠粶璇锋眰澶�
       Networkheader: null,
       //绁ㄦ嵁鏂囦欢
@@ -1596,12 +1622,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: {
@@ -1609,18 +1648,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;
@@ -1709,7 +1739,7 @@
         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];
@@ -1717,37 +1747,45 @@
             console.log("浼︾悊瀹℃煡鏁版嵁涓虹┖");
           }
         });
-      } else if (this.actives == 4 && !this.allocationform[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) {
@@ -1764,19 +1802,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(
@@ -1786,7 +1829,8 @@
           });
         }
         // 鑾峰彇瀹屾垚鐧昏淇℃伅
-        listnewDonatecompletioninfo(accpre).then(response => {
+        // listnewDonatecompletioninfo(accpre).then(response => {
+        listDonatecompletioninfo(accpre).then(response => {
           if (response.code == 200 && response.rows.length) {
             this.accomplishform = response.rows[0];
             this.accomplishform.infoid = this.infoid;
@@ -1851,6 +1895,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;
@@ -1858,20 +1911,17 @@
             updateDonatebaseinfo(this.form).then(response => {
               this.$modal.msgSuccess("淇濆瓨鎴愬姛");
               Modifydonationattachment(this.donatelist).then(res => {
-                console.log(res);
               });
               this.Getbasicinformation();
               // this.Processvalidation();
               this.open = false;
             });
           } else {
-            this.form.workflow = 1;
-            this.form.recordstate = 0;
+            this.form.workflow = 0;
             addDonatebaseinfo(this.form).then(response => {
               if (response.code == 200) {
                 this.$modal.msgSuccess("鏂板鎴愬姛");
                 Modifydonationattachment(this.donatelist).then(res => {
-                  console.log(res);
                 });
                 this.Getbasicinformation();
                 // this.Processvalidation();
@@ -1928,14 +1978,13 @@
         this.$refs["ethicform"].validate(valid => {
           if (valid) {
             if (this.ethicform.id != null) {
-              // updateDonateflowchart(this.ethicform).then(response => {                
-              updateEthicalreviewopinions(this.ethicform).then(response => {
+              // updateDonateflowchart(this.ethicform).then(response => {
+              updateEthicalreviewopinions(this.ethicform).then(res => {
                 this.$modal.msgSuccess("浼︾悊瀹℃煡淇℃伅淇敼鎴愬姛");
               });
             } else {
-
-              //addDonateflowchart(this.ethicform).then(response => {              
-              addEthicalreviewopinions(this.ethicform).then(response => {
+              //addDonateflowchart(this.ethicform).then(response => {
+              addEthicalreviewopinions(this.ethicform).then(res => {
                 this.$modal.msgSuccess("浼︾悊瀹℃煡淇℃伅鏂板鎴愬姛");
               });
             }
@@ -1943,25 +1992,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;
@@ -1983,29 +2041,26 @@
               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.procureddata.infoid = this.infoid;
+            saveDonationwitnessorgan(this.procureddata).then(res => {
+              if (res == 200) {
+                this.$modal.msgSuccess("鎹愮尞鍣ㄥ畼鑾峰彇淇℃伅淇濆瓨鎴愬姛锛�");
+              }
+            });
+
             this.form.donationcategory = this.witnessform.donationcategory;
             this.Processvalidation();
           }
@@ -2014,19 +2069,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.dcid) {
-              console.log(this.accomplishform);
+            if (this.accomplishform.id) {
               updateDonatecompletioninfo(this.accomplishform).then(response => {
                 this.$modal.msgSuccess("瀹屾垚鐧昏淇℃伅淇敼鎴愬姛");
               });
@@ -2035,6 +2087,7 @@
                 this.$modal.msgSuccess("瀹屾垚鐧昏鎴愬姛");
               });
             }
+
             this.Processvalidation();
           }
         });
@@ -2043,8 +2096,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;
@@ -2056,63 +2108,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();
@@ -2122,8 +2326,7 @@
     },
     // 鏇存敼杩涚▼鏁堥獙
     Processvalidation() {
-      console.log(this.form.workflow);
-      console.log(this.actives);
+
       if (this.form.workflow + 1 == this.actives || this.actives == 6) {
         if (this.form.workflow <= 6) {
           this.form.workflow++;
@@ -2134,7 +2337,6 @@
       } else if (this.form.workflow > this.actives) {
         // this.submitForm();
         Modifydonationattachment(this.donatelist).then(res => {
-          console.log(res);
         });
         this.listDonateannex();
         this.GetAttacheddata();
@@ -2143,7 +2345,6 @@
         // this.$modal.msgWarning("璇峰厛瀹屾垚鍓嶉儴姝ラ");
         return;
       }
-      console.log(this.form.workflow);
     },
     // 涓婃姤瀹℃牳
     Reportforreview() { },
@@ -2193,7 +2394,6 @@
           },
           {}
         );
-        console.log(groupedArr);
       });
     },
     // 闄勪欢淇敼鏁版嵁杞瓨灏佽
@@ -2211,10 +2411,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);
@@ -2240,46 +2438,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 = "";
@@ -2291,8 +2534,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;
@@ -2300,10 +2543,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 = "褰撳墠鏂囦欢鏆備笉鏀寔棰勮";
@@ -2317,15 +2559,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) {
@@ -2342,8 +2591,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",
@@ -2392,10 +2692,10 @@
       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 {
@@ -2485,4 +2785,10 @@
 ::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