From bcac500a760877dc9140f1f381739793706c1af6 Mon Sep 17 00:00:00 2001
From: feige <feige@qq.com>
Date: 星期五, 10 十一月 2023 10:29:38 +0800
Subject: [PATCH] 修改图片大小

---
 ruoyi-ui/src/views/self/show.vue | 1460 +++++++++++++++++++++++++++++++++++++++++++++-------------
 1 files changed, 1,132 insertions(+), 328 deletions(-)

diff --git a/ruoyi-ui/src/views/self/show.vue b/ruoyi-ui/src/views/self/show.vue
index 8ef6d45..e9a7273 100644
--- a/ruoyi-ui/src/views/self/show.vue
+++ b/ruoyi-ui/src/views/self/show.vue
@@ -1,12 +1,52 @@
 <template>
-  <div class="app-container">
+  <div class="app-container" id="printable-content">
+    <!--  鍒锋柊椤甸潰  -->
+<!--    <MyComponent :key="componentKey" />-->
     <!--    鍥炲埌椤堕儴-->
     <el-backtop :bottom="150" :right="30">
       <el-button type="primary" circle
                  class="el-icon-top"
       ></el-button>
     </el-backtop>
-    <h1 style="font-size:21px;padding-top:30px">涓汉绠�鍘�</h1>
+    <h1 style="font-size:21px;padding-top:30px;display: flex;">
+      <span>涓汉绠�鍘�</span>
+      <div class="button-container" >
+          <el-button
+            size="mini"
+            style="background: #E0EEFE;
+            border-radius: 7px 7px 7px 7px;opacity: 1; margin-left: 20px;"
+            @click="handleEdit()"
+            v-if="isShow"
+            v-hasPermi="['system:role:edit']"
+          >缂栬緫</el-button>
+          <el-button v-if="isShow_2" size="mini"
+                     style=" width: 67px;height: 27px;background:#E0EEFE;
+            border-radius: 7px 7px 7px 7px;opacity: 1;margin-left: 20px; "@click="submitForm" :disabled="dsb">瀹屾垚</el-button>
+
+          <el-button
+            size="mini"
+            style=" width: 67px;height: 27px;background: #D2F3E0;
+            border-radius: 7px 7px 7px 7px;opacity: 1;margin-left: 20px; "
+            @click="handleExport"
+            v-hasPermi="['family:note:export']"
+          >瀵煎嚭</el-button>
+
+          <el-button
+            size="mini"
+            style=" width: 67px;height: 27px;background: #FFDDE3;
+            border-radius: 7px 7px 7px 7px;opacity: 1; margin-left: 20px;"
+            v-print="'#printable-content'"
+            v-hasPermi="['family:note:export']"
+          >鎵撳嵃</el-button>
+      </div>
+      <div   style="display: flex; align-items: center;">
+        <el-button size="mini" type="text" @click="toMemo" v-hasPermi="['person:information:memo']" style="margin-left: 20px">
+          <div class="form" ><el-icon  style="padding-right:100px;"></el-icon>
+          <span class="text" style="width: 69px;height: 26px;font-size: 16px;
+            font-family: Microsoft YaHei-Regular, Microsoft YaHei; color: #EBA4AA;">涓汉璁颁簨鏈�</span></div>
+        </el-button>
+      </div>
+    </h1>
     <el-divider />
     <!--    鍩烘湰淇℃伅-->
     <h2 style="font-size:16px">鍩烘湰淇℃伅</h2>
@@ -16,19 +56,19 @@
           <el-col >
             <el-form ref="elForm" :model="individualList" :rules="rules" size="medium"  label-position="left"
                      v-loading="loading" :data="individualList" @selection-change="handleSelectionChange" >
-              <el-row :span="5">
+              <el-row :span="6">
                 <el-form-item label="濮撳悕" prop="nickName" label-width="40px">
                   <el-input v-model="individualList.nickName" placeholder="" clearable :style="{width: '100%'}" :disabled="dsb">
                   </el-input>
                 </el-form-item>
               </el-row>
-              <el-row :span="5">
+              <el-row :span="6">
                 <el-form-item label="鏇剧敤鍚�" prop="oldName" label-width="60px">
                   <el-input v-model="individualList.oldName" placeholder="" clearable :style="{width: '100%'}" :disabled="dsb">
                   </el-input>
                 </el-form-item>
               </el-row>
-              <el-row :span="5">
+              <el-row :span="6">
                 <el-form-item label="韬唤璇佸彿" prop="idNum" label-width="70px">
                   <el-input v-model="individualList.idNum" placeholder="" clearable :style="{width: '100%'}" :disabled="dsb">
                   </el-input>
@@ -38,14 +78,23 @@
           </el-col>
         </el-container>
       </div>
-      <div style="padding-left:30px">
+      <div style="padding-left:60px">
         <el-container>
           <el-col v-loading="loading" :data="individualList" @selection-change="handleSelectionChange">
             <el-form ref="elForm" :model="individualList" :rules="rules" size="medium"  label-position="left">
               <el-row :span="5">
                 <el-form-item label="鎬у埆" prop="sex" label-width="40px">
-                  <el-input v-model="individualList.sex === 1 ? '鐢�':'濂�' " placeholder="" clearable :style="{width: '100%'}" :disabled="dsb">
-                  </el-input>
+<!--                  <el-input v-model="individualList.sex === 1 ? '鐢�':'濂�' " placeholder="" clearable :style="{width: '100%'}" :disabled="dsb">-->
+<!--                  </el-input>-->
+                  <template v-if="!isEditing">
+                    <el-input v-model="individualList.sex === 1 ? inds='鐢�':inds='濂�'" placeholder="" clearable :style="{width: '100%'}" :disabled="dsb"></el-input>
+                  </template>
+                  <template v-else>
+                    <el-select v-model="inds" placeholder="璇烽�夋嫨鎬у埆" clearable :style="{width: '100%'}" :disabled="dsb">
+                      <el-option label="鐢�" value='1'></el-option>
+                      <el-option label="濂�" value='0'></el-option>
+                    </el-select>
+                  </template>
                 </el-form-item>
               </el-row>
               <el-row :span="5">
@@ -64,7 +113,7 @@
           </el-col>
         </el-container>
       </div>
-      <div style="padding-left:30px">
+      <div style="padding-left:60px">
         <el-container>
           <el-col v-loading="loading" :data="individualList" @selection-change="handleSelectionChange">
             <el-form ref="elForm" :model="individualList" :rules="rules" size="medium"  label-position="left":disabled="dsb">
@@ -76,8 +125,19 @@
               </el-row>
               <el-row :span="5">
                 <el-form-item label="濠氬Щ鐘跺喌" prop="maritalStatus" label-width="70px">
-                  <el-input v-model="individualList.maritalStatus === 1 ? '宸插':'鏈'" placeholder="" clearable :style="{width: '100%'}" :disabled="dsb">
-                  </el-input>
+                  <template v-if="!isEditing" >
+                    <el-input v-if="individualList.maritalStatus===0" placeholder="鏈"></el-input>
+                    <el-input v-if="individualList.maritalStatus===1" placeholder="宸插"></el-input>
+                    <el-input v-if="individualList.maritalStatus===2" placeholder="鏈"></el-input>
+
+                  </template>
+                  <template v-else>
+                    <el-select v-model="mrs" placeholder="璇烽�夋嫨鎬у埆" clearable :style="{width: '100%'}">
+                      <el-option label="鏈" value='0'></el-option>
+                      <el-option label="宸插" value='1'></el-option>
+                      <el-option label="绂诲" value='2'></el-option>
+                    </el-select>
+                  </template>
                 </el-form-item>
               </el-row>
 
@@ -85,93 +145,58 @@
           </el-col>
         </el-container>
       </div>
-      <div style="padding-left:30px;padding-top:30px">
+      <div style="padding-left:100px;padding-top:30px">
         <el-col :span="6" :data="individualList">
-          <div class="block" :model="individualList" >
-            <el-col v-model="individualList.url" prop="url">
-              <el-avatar shape="square" :size=200 >
+          <div class="block" :model="individualList">
+            <div v-if="!isEditing">
+              <el-avatar shape="square" style="width: 200px; height: 150px;">
                 <el-image
-                  :src="'http://47.93.189.255:8080/'+ individualList.url"
+                  class="el-upload-list__item-thumbnail"
+                  v-if="!individualList.img"
+                  src="default-avatar-url"
                   :fit="fit"
+                  style="width: 100%; height: 100%;"
+                ></el-image>
+                <el-image
+                  v-else
+                  :src="'http://47.93.189.255:8080/' + individualList.img"
+                  :fit="fit"
+                  style="width: 100%; height: 100%;"
                 ></el-image>
               </el-avatar>
-            </el-col>
+            </div>
+            <el-upload v-else
+                       class="upload-demo"
+                       action="#"
+                       :auto-upload="false"
+                       :http-request="requestUpload"
+                       :limit="1"
+                       :file-list="fileList"
+            >
+              <el-avatar shape="square" style="width: 200px; height: 150px;">
+                <el-image
+                  class="el-upload-list__item-thumbnail"
+                  v-if="!individualList.img"
+                  src="default-avatar-url"
+                  :fit="fit"
+                  style="width: 100%; height: 100%;"
+                ></el-image>
+                <el-image
+                  v-else
+                  :src="'http://47.93.189.255:8080/' + individualList.img"
+                  :fit="fit"
+                  style="width: 100%; height: 100%;"
+                ></el-image>
+              </el-avatar>
+            </el-upload>
+            <div class="edit-text" v-if="isEditing" @click="uploadImage">鐐瑰嚮鏇存崲鍥剧墖</div>
           </div>
-
         </el-col>
 
-
-        <!--        <el-row>-->
-        <!--&lt;!&ndash;          <el-table  border style="width: 100%">&ndash;&gt;-->
-        <!--&lt;!&ndash;            <el-table-column&ndash;&gt;-->
-        <!--&lt;!&ndash;              prop="img"&ndash;&gt;-->
-        <!--&lt;!&ndash;              v-model="individualList.img"&ndash;&gt;-->
-        <!--&lt;!&ndash;              placeholder=""&ndash;&gt;-->
-        <!--&lt;!&ndash;              width="180">&ndash;&gt;-->
-        <!--&lt;!&ndash;              <template slot-scope="scope">&ndash;&gt;-->
-        <!--&lt;!&ndash;                <img :src="scope.row.src" style="width:100px;height:50px;"/>&ndash;&gt;-->
-        <!--&lt;!&ndash;              </template>&ndash;&gt;-->
-        <!--&lt;!&ndash;            </el-table-column>&ndash;&gt;-->
-
-        <!--&lt;!&ndash;          </el-table>&ndash;&gt;-->
-        <!--&lt;!&ndash;          <el-upload :class="{uoloadSty:showBtnDealImg,disUoloadSty:noneBtnImg}"&ndash;&gt;-->
-        <!--&lt;!&ndash;                      ref="ref1"&ndash;&gt;-->
-        <!--&lt;!&ndash;                     action=""&ndash;&gt;-->
-        <!--&lt;!&ndash;                     :file-list="fileList"&ndash;&gt;-->
-        <!--&lt;!&ndash;                     list-type="picture-card"&ndash;&gt;-->
-        <!--&lt;!&ndash;                     accept="image/*"&ndash;&gt;-->
-        <!--&lt;!&ndash;                     :auto-upload="false"&ndash;&gt;-->
-        <!--&lt;!&ndash;                     :multiple="false"&ndash;&gt;-->
-        <!--&lt;!&ndash;                     :limit="limitCountImg">&ndash;&gt;-->
-        <!--&lt;!&ndash;            <i class="el-icon-plus"></i>&ndash;&gt;-->
-        <!--&lt;!&ndash;          </el-upload>&ndash;&gt;-->
-        <!--        </el-row>-->
       </div>
 
       <div style="padding-left:30px;padding-top:30px" >
-        <el-container >
-          <!--          <template slot-scope="scope" v-if="scope.row.roleId !== 1">-->
-          <!--            <el-button-->
-          <!--              size="mini"-->
-          <!--              type="text"-->
-          <!--              icon="el-icon-edit"-->
-          <!--              @click="handleUpdate(scope.row)"-->
-          <!--              v-hasPermi="['system:role:edit']"-->
-          <!--            >淇敼</el-button>-->
 
-          <!--          </template>-->
-
-          <el-row  >
-            <el-button
-              type="primary"
-              @click="handleUpdate(scope.row)"
-              :disabled="btn"
-              v-hasPermi="['system:role:edit']"
-            >缂栬緫</el-button>
-            <!--            @click="handleUpdate(scope.row)"-->
-            <!--            <el-dropdown-->
-            <!--              size="mini"-->
-            <!--              @command="(command) => handleCommand(command, scope.row)"-->
-            <!--              v-hasPermi="['system:role:edit']">    person:information:edit   -->
-            <!--              <el-button-->
-            <!--                size="mini"-->
-            <!--                type="text"-->
-            <!--                icon="el-icon-d-arrow-right"-->
-            <!--                @click="handleCheck(scope.row)"-->
-            <!--              >鏌ョ湅璇︽儏</el-button>-->
-
-            <!--            </el-dropdown>-->
-            <br>
-            <el-button
-              type="primary"
-              @click="handleExport"
-              v-hasPermi="['family:note:export']"
-            >瀵煎嚭</el-button>
-            <br>
-            <el-button type="primary" @click="submitForm" :disabled="dsb">瀹屾垚</el-button>
-          </el-row>
-
-        </el-container>
       </div>
       <!--      </el-dialog> self:user:export-->
     </el-container>
@@ -203,7 +228,7 @@
           </el-col>
         </el-container>
       </div>
-      <div style="padding-left:30px">
+      <div style="padding-left:60px">
         <el-container>
           <el-col v-loading="loading" :data="individualList" @selection-change="handleSelectionChange">
             <el-form ref="elForm" :model="individualList" :rules="rules" size="medium"  label-position="left">
@@ -232,147 +257,295 @@
     </el-container>
 
     <!--鎶樺彔闈㈡澘-->
-    <el-collapse v-model="activeNames" @change="handleChange">
-      <el-collapse-item title="涓昏瀛︿範鍙婂伐浣滅粡鍘�" name="1" >
-        <el-table v-loading="loading" :data="experienceList" @selection-change="handleSelectionChange">
-          <el-table-column label="璧锋鏃ユ湡" prop="startDate" sortable width="300" align="center" />
-          <el-table-column label="涓昏瀛︿範缁忓巻銆佸伐浣滃崟浣嶅強浠昏亴鎯呭喌" prop="content" sortable width="350" align="center" />
-          <el-table-column label="璇佹槑浜�" prop="witness" sortable width="300" align="center" />
+    <el-collapse  v-model="activeNames" @change="handleChange">
+      <el-collapse-item title="绉诲眳鍥斤紙澧冿級鎯呭喌" name="3" >
+      <div>
+        <el-form v-loading="loading" :data="individualList" @selection-change="handleSelectionChange">
+          <el-form-item label="鏄惁鎷ユ湁澶栫睄銆佸澶栧眳鐣欐潈銆侀暱鏈熷眳鐣欒鍙�" >
+            <el-radio-group v-model="individualList.outStatus" style="margin-bottom: 0;color: #FEF7FC;" :disabled="dsb">
+              <el-radio :label="1">鏄�</el-radio>
+              <el-radio :label="0">鍚�</el-radio>
+            </el-radio-group>
+            <el-container >
+              <el-row :span="7">
+                <el-form v-loading="loading" :data="individualList" @selection-change="handleSelectionChange">
+                  <el-form-item label="璇佷欢鍙风爜" prop="idNo" label-width="70px">
+                    <el-input v-model="individualList.idNo" style="color: #FEF7FC;" placeholder="" clearable :style="{width: '100%'}" :disabled="dsb">
+                    </el-input>
+                  </el-form-item>
+                </el-form>
+              </el-row>
+            </el-container>
+          </el-form-item>
+        </el-form>
+
+      </div>
+
+    </el-collapse-item>
+
+      <!--涓昏瀛︿範鍙婂伐浣滅粡鍘�-->
+      <el-collapse-item name="1"  >
+        <template v-slot:title>
+          <div class="title-wrapper">
+            <div class="left-content">涓昏瀛︿範鍙婂伐浣滅粡鍘�</div>
+            <div>
+            <el-button class="button" size="mini" type="text"  @click="showDialog('open')" >
+              <sapn v-html="'\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0'"></sapn></el-button>
+            </div>
+          </div>
+        </template>
+        <el-table v-loading="loading" :data="experienceList" @selection-change="handleSelectionChange" :row-class-name="tableRowClassName" style="background: #FFEFF2;  border-radius: 14px 14px 14px 14px;">
+          <el-table-column label="寮�濮嬫棩鏈�" prop="startDate" sortable width="250" align="center" >
+            <template slot-scope="scope">
+              <template v-if="!scope.row.isEdit">{{ scope.row.startDate }}</template>
+              <template v-else>
+                <el-date-picker v-model="scope.row.startDate" type="date" placeholder="璇烽�夋嫨鏃ユ湡"
+                    :editable="false" :clearable="false" :style="{width: '100%'}"  value-format="yyyy-MM-dd"
+              ></el-date-picker></template>
+            </template>
+          </el-table-column>
+          <el-table-column label="缁撴潫鏃ユ湡" prop="endDate" sortable width="250" align="center" >
+            <template slot-scope="scope">
+              <template v-if="!scope.row.isEdit">{{ scope.row.endDate }}</template>
+              <template v-else><el-date-picker v-model="scope.row.endDate" type="date" placeholder="璇烽�夋嫨鏃ユ湡"
+                     :editable="false" :clearable="false" :style="{width: '100%'}"  value-format="yyyy-MM-dd"
+              ></el-date-picker></template>
+            </template>
+          </el-table-column>
+          <el-table-column label="涓昏瀛︿範缁忓巻銆佸伐浣滃崟浣嶅強浠昏亴鎯呭喌" prop="content" sortable width="350" align="center" >
+            <template slot-scope="scope">
+              <template v-if="!scope.row.isEdit">{{ scope.row.content }}</template>
+              <template v-else><el-input v-model="scope.row.content"></el-input></template>
+            </template>
+          </el-table-column>
+          <el-table-column label="璇佹槑浜�" prop="witness" sortable width="300" align="center" >
+            <template slot-scope="scope">
+              <template v-if="!scope.row.isEdit">{{ scope.row.witness }}</template>
+              <template v-else><el-input v-model="scope.row.witness"></el-input></template>
+            </template>
+          </el-table-column>
           <!--      鎿嶄綔-->
           <el-table-column label="鎿嶄綔" align="center" class-name="small-padding fixed-width">
             <template slot-scope="scope" v-if="scope.row.roleId !== 1">
-              <el-button
-                size="mini"
-                type="text"
-                icon="el-icon-edit"
-                @click="handleUpdate(scope.row)"
-                v-hasPermi="['system:role:edit']"
-              >淇敼</el-button>
-              <el-button
-                size="mini"
-                type="text"
-                icon="el-icon-delete"
-                @click="handleExperienceDelete(scope.row)"
-                v-hasPermi="['system:role:remove']"
-              >鍒犻櫎</el-button>
-              <el-dropdown size="mini" @command="(command) => handleCommand(command, scope.row)" v-hasPermi="['system:role:edit']">
-                <el-button size="mini" type="text" icon="el-icon-d-arrow-right"  @click="handleCheck(scope.row)">鏌ョ湅璇︽儏</el-button>
-
-              </el-dropdown>
+              <el-button size="mini" type="text" icon="el-icon-edit" v-if="!editStatus[scope.row.id]"
+               @click="editRow(scope.row)" v-hasPermi="['system:role:edit']">淇敼</el-button>
+              <el-button size="mini" type="text"
+                v-if="editStatus[scope.row.id]" @click="saveRowExperienceList(scope.row)">淇濆瓨</el-button>
+              <el-button size="mini" type="text" icon="el-icon-delete"
+                @click="handleExperienceDelete(scope.row)" v-hasPermi="['system:role:remove']">鍒犻櫎</el-button>
             </template>
           </el-table-column>
         </el-table>
       </el-collapse-item>
-      <el-collapse-item title="瀹跺涵鎴愬憳鍙婁富瑕佺ぞ浼氬叧绯绘儏鍐�" name="2" >
-        <el-table v-loading="loading" :data="relationList" @selection-change="handleSelectionChange">
-          <el-table-column label="涓庢湰浜哄叧绯�"  prop="relation" sortable width="260" align="center" />
-          <el-table-column label="濮撳悕" prop="nickName" sortable width="260" align="center" />
-          <el-table-column label="鍗曚綅鍙婅亴鍔�" prop="unit position" sortable width="260" align="center">
+      <!--   瀹跺涵鎴愬憳鍙婁富瑕佺ぞ浼氬叧绯绘儏鍐�   -->
+      <el-collapse-item name="2" >
+        <template v-slot:title>
+          <div class="title-wrapper">
+            <div class="left-content">瀹跺涵鎴愬憳鍙婁富瑕佺ぞ浼氬叧绯绘儏鍐�</div>
+            <div>
+            <el-button class="button" size="mini" type="text"  @click="showDialog('relation1')">
+              <sapn v-html="'\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0'"></sapn></el-button>
+            </div>
+          </div>
+        </template>
+        <el-table v-loading="loading" :data="relationList" @selection-change="handleSelectionChange"
+                  :row-class-name="tableRowClassName" style="background: #FFEFF2;  border-radius: 14px 14px 14px 14px;">
+          <el-table-column label="涓庢湰浜哄叧绯�"  prop="relation" sortable width="260" align="center" >
             <template slot-scope="scope">
-              {{scope.row.unit}}/{{scope.row.position}}
+              <template v-if="!scope.row.isEdit">{{ scope.row.relation }}</template>
+              <template v-else><el-input v-model="scope.row.relation"></el-input></template>
             </template>
           </el-table-column>
-          <el-table-column label="鏀挎不闈㈣矊" prop="politicalOutlook" sortable width="260" align="center"/>
+          <el-table-column label="濮撳悕" prop="otherName" sortable width="260" align="center" >
+            <template slot-scope="scope">
+              <template v-if="!scope.row.isEdit">{{ scope.row.otherName }}</template>
+              <template v-else><el-input v-model="scope.row.otherName"></el-input></template>
+            </template>
+          </el-table-column>
+          <el-table-column label="鍗曚綅" prop="otherUnit" sortable width="220" align="center" >
+            <template slot-scope="scope">
+              <template v-if="!scope.row.isEdit">{{ scope.row.otherUnit }}</template>
+              <template v-else><el-input v-model="scope.row.otherUnit"></el-input></template>
+            </template>
+          </el-table-column>
+          <el-table-column label="鑱屽姟" prop="otherPosition" sortable width="220" align="center">
+            <template slot-scope="scope">
+              <template v-if="!scope.row.isEdit">{{ scope.row.otherPosition }}</template>
+              <template v-else><el-input v-model="scope.row.otherPosition"></el-input></template>
+            </template>
+          </el-table-column>
+          <el-table-column label="鏀挎不闈㈣矊" prop="otherPolitical" sortable width="260" align="center">
+            <template slot-scope="scope">
+              <template v-if="!scope.row.isEdit">{{ scope.row.otherPolitical }}</template>
+              <template v-else><el-input v-model="scope.row.otherPolitical"></el-input></template>
+            </template>
+          </el-table-column>
           <el-table-column label="鎿嶄綔" align="center" class-name="small-padding fixed-width">
             <template slot-scope="scope" v-if="scope.row.roleId !== 1">
-              <el-button
-                size="mini"
-                type="text"
-                icon="el-icon-edit"
-                @click="handleUpdate(scope.row)"
-                v-hasPermi="['system:role:edit']"
-              >淇敼</el-button>
-              <el-button
-                size="mini"
-                type="text"
-                icon="el-icon-delete"
-                @click="handleCertificateDelete(scope.row)"
-                v-hasPermi="['system:role:remove']"
-              >鍒犻櫎</el-button>
-              <el-dropdown size="mini" @command="(command) => handleCommand(command, scope.row)" v-hasPermi="['system:role:edit']">
-                <el-button size="mini" type="text" icon="el-icon-d-arrow-right"  @click="handleCheck(scope.row)">鏌ョ湅璇︽儏</el-button>
-
-              </el-dropdown>
+              <el-button size="mini" type="text" icon="el-icon-edit" v-if="!editStatus[scope.row.id]"
+                @click="editRow(scope.row)" v-hasPermi="['system:role:edit']">淇敼</el-button>
+              <el-button size="mini" type="text" v-if="editStatus[scope.row.id]"
+                @click="saveRowRelationList(scope.row)">淇濆瓨</el-button>
+              <el-button size="mini" type="text" icon="el-icon-delete"
+                @click="handleRelationDelete(scope.row)" v-hasPermi="['system:role:remove']">鍒犻櫎</el-button>
             </template>
           </el-table-column>
         </el-table>
       </el-collapse-item>
-      <el-collapse-item title="绉诲眳鍥斤紙澧冿級鎯呭喌" name="3" >
-        <div>
-          <el-form v-loading="loading" :data="individualList" @selection-change="handleSelectionChange">
-            <el-form-item label="鏄惁鎷ユ湁澶栫睄銆佸澶栧眳鐣欐潈銆侀暱鏈熷眳鐣欒鍙�">
-              <el-radio-group v-model="individualList.outStatus" style="margin-bottom: 0">
-                <el-radio :label="1">鏄�</el-radio>
-                <el-radio :label="0">鍚�</el-radio>
-              </el-radio-group>
-              <el-container >
-                <el-row :span="7">
-                  <el-form v-loading="loading" :data="individualList" @selection-change="handleSelectionChange">
-                    <el-form-item label="璇佷欢鍙风爜" prop="idNo" label-width="70px">
-                      <el-input v-model="individualList.idNo" placeholder="" clearable :style="{width: '100%'}" :disabled="dsb">
-                      </el-input>
-                    </el-form-item>
-                  </el-form>
-                </el-row>
-              </el-container>
-            </el-form-item>
-          </el-form>
-
-        </div>
-
-      </el-collapse-item>
-      <el-collapse-item title="鎸佹湁鍑哄叆澧冭瘉浠舵儏鍐�" name="4" >
-        <el-table v-loading="loading" :data="certificateList" @selection-change="handleSelectionChange">
-          <el-table-column label="璇佷欢鍚嶇О" prop="cerName" sortable width="280" align="center" />
-          <el-table-column label="鎸佹湁鎯呭喌" prop="ownStatus" sortable width="280" align="center" />
-          <el-table-column label="璇佷欢鍙风爜" prop="idNo" sortable width="280" align="center" />
-          <el-table-column label="鏈夋晥鏈�" prop="validityDate"  sortable width="280" align="center">
+      <!--鎸佹湁鍑哄叆澧冭瘉浠舵儏鍐�-->
+      <el-collapse-item  name="4">
+        <template v-slot:title>
+          <div class="title-wrapper">
+            <div class="left-content">鎸佹湁璇佷欢鎯呭喌</div>
+            <el-button class="button" size="mini" type="text"  @click="showDialog('certificate')">
+              <sapn v-html="'\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0'"></sapn></el-button>
+          </div>
+        </template>
+        <el-table v-loading="loading" :data="certificateList" @selection-change="handleSelectionChange"
+                  :row-class-name="tableRowClassName" style="background: #FFEFF2;  border-radius: 14px 14px 14px 14px;">
+          <el-table-column label="璇佷欢鍚嶇О" prop="cerName" sortable width="230" align="center" >
+            <template slot-scope="scope">
+              <template v-if="!scope.row.isEdit">{{ scope.row.cerName }}</template>
+              <template v-else><el-input v-model="scope.row.cerName"></el-input></template>
+            </template>
+          </el-table-column>
+          <el-table-column label="璇佷欢绫诲瀷" prop="type" sortable width="230" align="center" >
+            <template slot-scope="scope">
+              <template v-if="!scope.row.isEdit">{{ scope.row.type }}</template>
+              <template v-else><el-input v-model="scope.row.type"></el-input></template>
+            </template>
+          </el-table-column>
+          <el-table-column label="鎸佹湁鎯呭喌" prop="ownStatus" sortable width="230" align="center" >
+            <template slot-scope="scope">
+              <template v-if="!scope.row.isEdit">{{ scope.row.ownStatus }}</template>
+              <template v-else><el-input v-model="scope.row.ownStatus"></el-input></template>
+            </template>
+          </el-table-column>
+          <el-table-column label="璇佷欢鍙风爜" prop="idNo" sortable width="230" align="center" >
+            <template slot-scope="scope">
+              <template v-if="!scope.row.isEdit">{{ scope.row.idNo }}</template>
+              <template v-else><el-input v-model="scope.row.idNo"></el-input></template>
+            </template>
+          </el-table-column>
+          <el-table-column label="寮�濮嬫椂闂�" prop="startTime"  sortable width="230" align="center">
+            <template slot-scope="scope">
+              <template v-if="!scope.row.isEdit">{{ scope.row.startTime }}</template>
+              <template v-else>
+                <el-date-picker v-model="scope.row.startTime" type="date" placeholder="璇烽�夋嫨鏃ユ湡"
+                    :editable="false" :clearable="false" :style="{width: '100%'}"  value-format="yyyy-MM-dd"
+              ></el-date-picker></template>
+            </template>
+          </el-table-column>
+          <el-table-column label="缁撴潫鏃堕棿" prop="endTime"  sortable width="230" align="center">
+            <template slot-scope="scope">
+              <template v-if="!scope.row.isEdit">{{ scope.row.endTime }}</template>
+              <template v-else>
+                <el-date-picker v-model="scope.row.endTime" type="date" placeholder="璇烽�夋嫨鏃ユ湡"
+                      :editable="false" :clearable="false" :style="{width: '100%'}"  value-format="yyyy-MM-dd"
+              ></el-date-picker></template>
+            </template>
+          </el-table-column>
+          <el-table-column label="鎿嶄綔" align="center" class-name="small-padding fixed-width">
+            <template slot-scope="scope" v-if="scope.row.roleId !== 1">
+              <el-button size="mini" type="text" icon="el-icon-edit" v-if="!editStatus[scope.row.id]"
+                         @click="editRow(scope.row)" v-hasPermi="['system:role:edit']">淇敼</el-button>
+              <el-button size="mini" type="text" v-if="editStatus[scope.row.id]"
+                         @click="saveRowCertificateList(scope.row)">淇濆瓨</el-button>
+              <el-button size="mini" type="text" icon="el-icon-delete"
+                @click="handleCertificateDelete(scope.row)" v-hasPermi="['system:role:remove']">鍒犻櫎</el-button>
+            </template>
           </el-table-column>
         </el-table>
       </el-collapse-item>
-      <el-collapse-item title="鍑哄浗锛堝锛夋儏鍐�" name="5" >
-        <el-table v-loading="loading" :data="AbroadList" @selection-change="handleSelectionChange">
-          <el-table-column label="璧锋鏃ユ湡" prop="startDate" sortable width="350" align="center" />
-          <el-table-column label="鎵�鍒板浗瀹舵垨鑰呭湴鍖�" prop="destination" sortable width="350" align="center" />
-          <el-table-column label="浜嬬敱锛堟梾娓搞�佽蛋璁裤�佹帰浜层�佺户鎵胯储浜с�佸叾浠栵級" prop="cause" sortable width="400" align="center" />
-
+      <!--鍑哄浗锛堝锛夋儏鍐�-->
+      <el-collapse-item  name="5">
+        <template v-slot:title>
+          <div class="title-wrapper">
+            <div class="left-content">鍑哄浗锛堝锛夋儏鍐�</div>
+            <el-button class="button" size="mini" type="text"  @click="showDialog('abroad')">
+              <sapn v-html="'\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0'"></sapn></el-button>
+          </div>
+        </template>
+        <el-table v-loading="loading" :data="AbroadList" @selection-change="handleSelectionChange"
+                  :row-class-name="tableRowClassName" style="background: #FFEFF2;  border-radius: 14px 14px 14px 14px;">
+          <el-table-column label="寮�濮嬫椂闂�" prop="startTime"  sortable width="200" align="center">
+            <template slot-scope="scope">
+              <template v-if="!scope.row.isEdit">{{ scope.row.startTime }}</template>
+              <template v-else>
+                <el-date-picker v-model="scope.row.startTime" type="date" placeholder="璇烽�夋嫨鏃ユ湡"
+                                :editable="false" :clearable="false" :style="{width: '100%'}"  value-format="yyyy-MM-dd"
+                ></el-date-picker></template>
+            </template>
+          </el-table-column>
+          <el-table-column label="缁撴潫鏃堕棿" prop="endTime"  sortable width="200" align="center">
+            <template slot-scope="scope">
+              <template v-if="!scope.row.isEdit">{{ scope.row.endTime }}</template>
+              <template v-else>
+                <el-date-picker v-model="scope.row.endTime" type="date" placeholder="璇烽�夋嫨鏃ユ湡"
+                                :editable="false" :clearable="false" :style="{width: '100%'}"  value-format="yyyy-MM-dd"
+                ></el-date-picker></template>
+            </template>
+          </el-table-column>
+          <el-table-column label="鎵�鍒板浗瀹舵垨鑰呭湴鍖�" prop="destination" sortable width="300" align="center" >
+            <template slot-scope="scope">
+              <template v-if="!scope.row.isEdit">{{ scope.row.destination }}</template>
+              <template v-else><el-input v-model="scope.row.destination"></el-input></template>
+            </template>
+          </el-table-column>
+          <el-table-column label="浜嬬敱锛堟梾娓搞�佽蛋璁裤�佹帰浜层�佺户鎵胯储浜с�佸叾浠栵級" prop="cause" sortable width="420" align="center" >
+            <template slot-scope="scope">
+              <template v-if="!scope.row.isEdit">{{ scope.row.cause }}</template>
+              <template v-else><el-input v-model="scope.row.cause"></el-input></template>
+            </template>
+          </el-table-column>
+          <el-table-column label="鎿嶄綔" align="center" class-name="small-padding fixed-width">
+            <template slot-scope="scope" v-if="scope.row.roleId !== 1">
+              <el-button size="mini" type="text" icon="el-icon-edit" v-if="!editStatus[scope.row.id]"
+                         @click="editRow(scope.row)" v-hasPermi="['system:role:edit']">淇敼</el-button>
+              <el-button size="mini" type="text" v-if="editStatus[scope.row.id]"
+                         @click="saveRowAbroadList(scope.row)">淇濆瓨</el-button>
+              <el-button size="mini" type="text" icon="el-icon-delete" @click="handleAbroadDelete(scope.row)"
+                         v-hasPermi="['system:role:remove']">鍒犻櫎</el-button>
+            </template>
+          </el-table-column>
         </el-table>
       </el-collapse-item>
+      <!--    鑷紶-->
+      <el-collapse-item  name="6">
+        <template v-slot:title>
+          <div class="title-wrapper">
+            <div class="left-content">鑷紶</div>
+            <div>
+              <el-button size='mini' type="text" class="button" @click="showDialog('autobiography')" >
+                <sapn v-html="'\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0'"></sapn>
+              </el-button>
+            </div>
+          </div>
+        </template>
+        <el-contain>
+          <div>
+            <el-tabs type="border-card" v-model="activeName" @tab-click="handleClick"
+                     v-loading="loading" :data="AutobiographyList" >
+              <el-tab-pane v-for="(item, index) in AutobiographyList"
+                           :key='item.id' :label="item.ageBegin+'~'+item.ageEnd+'宀�'+'('+item.term+')'">
+                <div>{{ item.content }}</div>
+                <el-button size='mini' type="text" class="btn_edit" @click="editAutobiography(item)" style='position: absolute;right:40px;top:5px;'>
+                  <sapn v-html="'\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0'"></sapn>
+                </el-button>
+
+                <el-button size="mini" type="text" class="btn_del" @click="handleAutobiography(item)" style='position: absolute;right:10px;top:5px;'>
+                  <sapn v-html="'\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0'"></sapn>
+                </el-button>
+
+              </el-tab-pane>
+            </el-tabs></div>
+        </el-contain>
+      </el-collapse-item>
+
     </el-collapse>
 
-    <!--    鑷紶-->
-    <div style="padding-top:30px">
-      <el-container>
-        <div style="width:100%"><h2 style="font-size:15px" >鑷紶</h2></div>
-      </el-container>
-      <el-tabs type="border-card" v-model="activeName" @tab-click="handleClick"
-               v-loading="loading" :data="AutobiographyList" @selection-change="handleSelectionChange">
-        <!--        <el-tab-pane label="鎬昏" name="0">-->
-
-        <!--        </el-tab-pane>-->
-        <!--        <div :model="AutobiographyList">-->
-        <el-tab-pane label="0~3宀�(濠村効鏈�)" name="1" >
-          <el-input v-model="AutobiographyList.content" prop="content" placeholder="" clearable :style="{width: '100%'}" :disabled="dsb">
-          </el-input>
-        </el-tab-pane>
-        <el-tab-pane label="6~12(灏忓)" name="2" ></el-tab-pane>
-        <el-tab-pane label="12~15(鍒濅腑)" name="3"></el-tab-pane>
-        <el-tab-pane label="15~18(楂樹腑)" name="4"></el-tab-pane>
-        <el-tab-pane label="18~22(澶у)" name="5"></el-tab-pane>
-        <el-tab-pane label="22~25(鐮旂┒鐢�)" name="6"></el-tab-pane>
-        <el-tab-pane label="26~ (宸ヤ綔)" name="7"></el-tab-pane>
-        <el-tab-pane label="锛熷瞾缁撳" name="8"></el-tab-pane>
-        <!--    </div>-->
-        <!--        <el-tab-pane-->
-        <!--          v-for="(item, index) in AutobiographyTermList"-->
-        <!--          :key="index"-->
-        <!--          :name="item"-->
-        <!--          :label="item"-->
-        <!--        />-->
-      </el-tabs>
 
 
-    </div>
 
     <pagination
       v-show="total>0"
@@ -382,8 +555,177 @@
       @pagination="getList"
     />
 
+    <!-- 鏂板涓昏缁忓巻淇℃伅閰嶇疆瀵硅瘽妗� -->
+    <el-dialog title="鏂板涓昏缁忓巻淇℃伅" :visible.sync="dialogVisible.open" width="900px" append-to-body>
+      <el-form ref="elForm1" :model="formDat" :rules="rules" size="medium" label-width="140px">
+        <el-form-item label="寮�濮嬫棩鏈�" prop="startDate">
+          <el-date-picker v-model="formDat.startDate" type="date" placeholder="璇烽�夋嫨鏃ユ湡"
+                          :editable="false" :clearable="false" :style="{width: '100%'}"  value-format="yyyy-MM-dd"
+          ></el-date-picker>
+        </el-form-item>
+        <el-form-item label="缁撴潫鏃ユ湡" prop="endDate">
+          <el-date-picker v-model="formDat.endDate" type="date" placeholder="璇烽�夋嫨鏃ユ湡"
+                          :editable="false" :clearable="false" :style="{width: '100%'}"  value-format="yyyy-MM-dd"
+          ></el-date-picker>
+        </el-form-item>
+        <el-form-item label="涓昏瀛︿範缁忓巻銆佸伐浣滃崟浣嶅強浠昏亴鎯呭喌" prop="content">
+          <el-input v-model="formDat.content" type="textarea" :rows="5" placeholder="璇疯緭鍏ヤ富瑕佸涔犵粡鍘嗐�佸伐浣滃崟浣嶅強浠昏亴鎯呭喌" clearable :style="{width: '100%'}" >
+          </el-input>
+        </el-form-item>
+        <el-form-item label="璇佹槑浜�" prop="witness">
+          <el-input v-model="formDat.witness" placeholder="璇疯緭鍏ヨ瘉鏄庝汉" clearable :style="{width: '100%'}" >
+          </el-input>
+        </el-form-item>
 
+      </el-form>
+      <h4 class="form-header"> </h4>
 
+      <div slot="footer" class="dialog-footer">
+        <el-button type="primary" @click="submitDataScope">淇� 瀛�</el-button>
+        <el-button @click="cancelData">鍙� 娑�</el-button>
+      </div>
+    </el-dialog>
+    <!-- 鏂板瀹跺涵鎴愬憳鍙婁富瑕佺ぞ浼氬叧绯绘儏鍐典俊鎭厤缃璇濇 -->
+    <el-dialog title="鏂板瀹跺涵鎴愬憳鍙婁富瑕佺ぞ浼氬叧绯绘儏鍐�" :visible.sync="dialogVisible.relation1" width="900px" append-to-body>
+      <el-form ref="elForm" :model="formDat" :rules="rules" size="medium" label-width="140px">
+        <el-form-item label="涓庢湰浜哄叧绯�" prop="relation">
+          <el-input v-model="formDat.relation" placeholder="璇疯緭鍏ヤ笌鏈汉鍏崇郴" clearable :style="{width: '100%'}" ></el-input>
+        </el-form-item>
+        <el-form-item label="濮撳悕" prop="otherName">
+          <el-input v-model="formDat.otherName" placeholder="璇疯緭鍏ュ鍚�" clearable :style="{width: '100%'}" >
+          </el-input>
+        </el-form-item>
+        <el-form-item label="鍗曚綅" prop="otherUnit">
+          <el-input v-model="formDat.otherUnit" placeholder="璇疯緭鍏ュ崟浣�" clearable :style="{width: '100%'}" >
+          </el-input>
+        </el-form-item>
+        <el-form-item label="鑱屽姟" prop="otherPosition">
+          <el-input v-model="formDat.otherPosition" placeholder="璇疯緭鍏ヨ亴鍔�" clearable :style="{width: '100%'}" >
+          </el-input>
+        </el-form-item>
+        <el-form-item label="鏀挎不闈㈣矊" prop="otherPolitical">
+          <el-input v-model="formDat.otherPolitical" placeholder="璇疯緭鍏ユ斂娌婚潰璨�" clearable :style="{width: '100%'}" >
+          </el-input>
+        </el-form-item>
+
+      </el-form>
+      <h4 class="form-header"> </h4>
+
+      <div slot="footer" class="dialog-footer">
+        <el-button type="primary" @click="submitDataScope2">淇� 瀛�</el-button>
+        <el-button @click="cancelData">鍙� 娑�</el-button>
+      </div>
+    </el-dialog>
+    <!-- 鏂板鎸佹湁璇佷欢鎯呭喌淇℃伅閰嶇疆瀵硅瘽妗� -->
+    <el-dialog title="鏂板鎸佹湁璇佷欢鎯呭喌" :visible.sync="dialogVisible.certificate" width="900px" append-to-body>
+      <el-form ref="elForm" :model="formDat" :rules="rules" size="medium" label-width="140px">
+        <el-form-item label="璇佷欢鍚嶇О" prop="cerName">
+          <el-input v-model="formDat.cerName" placeholder="璇疯緭鍏ヨ瘉浠跺悕绉�" clearable :style="{width: '100%'}" >
+          </el-input>
+        </el-form-item>
+        <el-form-item label="璇佷欢绫诲瀷" prop="type">
+          <el-select v-model="formDat.type" placeholder="璇烽�夋嫨璇佷欢绫诲瀷" clearable :style="{width: '100%'}"  >
+            <el-option v-for="(item, index) in typeOption" :key="index" :label="item.label" :value="item.value"
+            ></el-option>
+          </el-select>
+          <el-input v-model="newOption" v-if="showInput" placeholder="鑻ユ湭鍦ㄤ笂杩伴�夐」涓壘鍒板搴旂被鍨嬶紝璇峰湪姝よ緭鍏ユ柊鐨勮瘉浠剁被鍨�" @change="addNewOption"></el-input>
+
+        </el-form-item>
+        <el-form-item label="鎸佹湁鎯呭喌" prop="ownStatus">
+          <el-input v-model="formDat.ownStatus" placeholder="璇疯緭鍏ユ寔鏈夋儏鍐�" clearable :style="{width: '100%'}" >
+          </el-input>
+        </el-form-item>
+        <el-form-item label="璇佷欢鍙风爜" prop="idNo">
+          <el-input v-model="formDat.idNo" placeholder="璇疯緭鍏ヨ瘉浠跺彿鐮�" clearable :style="{width: '100%'}" >
+          </el-input>
+        </el-form-item>
+        <el-form-item label="寮�濮嬫棩鏈�" prop="startTime">
+            <el-date-picker v-model="formDat.startTime" type="date" placeholder="璇烽�夋嫨鏃ユ湡"
+                            :editable="false" :clearable="false" :style="{width: '100%'}"  value-format="yyyy-MM-dd"
+            ></el-date-picker>
+         </el-form-item>
+        <el-form-item label="缁撴潫鏃ユ湡" prop="endTime">
+          <el-date-picker v-model="formDat.endTime" type="date" placeholder="璇烽�夋嫨鏃ユ湡"
+                          :editable="false" :clearable="false" :style="{width: '100%'}"  value-format="yyyy-MM-dd"
+          ></el-date-picker></el-form-item>
+         </el-form>
+      <h4 class="form-header"> </h4>
+
+      <div slot="footer" class="dialog-footer">
+        <el-button type="primary" @click="submitDataScope4">淇� 瀛�</el-button>
+        <el-button @click="cancelData">鍙� 娑�</el-button>
+      </div>
+    </el-dialog>
+    <!-- 鏂板鍑哄浗锛堝锛夋儏鍐典俊鎭厤缃璇濇 -->
+    <el-dialog title="鏂板鍑哄浗锛堝锛夋儏鍐典俊鎭�" :visible.sync="dialogVisible.abroad" width="900px" append-to-body>
+      <el-form ref="elForm" :model="formDat" :rules="rules" size="medium" label-width="140px">
+        <el-form-item label="寮�濮嬫棩鏈�" prop="startTime">
+          <el-date-picker v-model="formDat.startTime" type="date" placeholder="璇烽�夋嫨鏃ユ湡"
+                          :editable="false" :clearable="false" :style="{width: '100%'}"  value-format="yyyy-MM-dd"
+          ></el-date-picker></el-form-item>
+        <el-form-item label="缁撴潫鏃ユ湡" prop="endTime">
+          <el-date-picker v-model="formDat.endTime" type="date" placeholder="璇烽�夋嫨鏃ユ湡"
+                          :editable="false" :clearable="false" :style="{width: '100%'}"  value-format="yyyy-MM-dd"
+          ></el-date-picker>
+        </el-form-item>
+        <el-form-item label="鎵�鍒板浗瀹舵垨鑰呭湴鍖�" prop="destination">
+          <el-input v-model="formDat.destination" type="textarea" :rows="5" placeholder="璇疯緭鍏ユ墍鍒板浗瀹舵垨鑰呭湴鍖�" clearable :style="{width: '100%'}" >
+          </el-input>
+        </el-form-item>
+        <el-form-item label="浜嬬敱(鏃呮父銆佽蛋璁裤�佹帰浜层�佺户鎵胯储浜с�佸叾浠�)" prop="cause">
+          <el-input v-model="formDat.cause" placeholder="璇疯緭鍏ヤ簨鐢�(鏃呮父銆佽蛋璁裤�佹帰浜层�佺户鎵胯储浜с�佸叾浠�)" clearable :style="{width: '100%'}" >
+          </el-input>
+        </el-form-item>
+
+      </el-form>
+      <h4 class="form-header"> </h4>
+
+      <div slot="footer" class="dialog-footer">
+        <el-button type="primary" @click="submitDataScope5">淇� 瀛�</el-button>
+        <el-button @click="cancelData">鍙� 娑�</el-button>
+      </div>
+    </el-dialog>
+    <!--鏂板鑷紶-->
+    <el-dialog :title="isEdit1 ? '缂栬緫璁板綍' : '鏂板璁板綍'" :visible.sync="dialogVisible.autobiography" width="900px" append-to-body>
+      <el-col >
+        <el-form ref="elForm" :model="formDat" :rules="rules" size="medium" label-position="left" >
+          <el-row :span="5">
+<!--            <el-form-item label="闇�瑕佷慨鏀圭殑璁板綍锛�" prop="id">-->
+<!--              <el-select v-model="formDat.id" placeholder="璇烽�夋嫨闇�瑕佷慨鏀圭殑璁板綍" clearable :style="{width: '50%'}"  >-->
+<!--                <el-option v-for="(item, index) in AutobiographyList" :key='item.id' :label="item.ageBegin+'~'+item.ageEnd+'宀�'+'('+item.term+')'"-->
+<!--                ></el-option>-->
+<!--              </el-select>-->
+<!--            </el-form-item>-->
+            <el-form-item label="骞撮緞娈碉細" prop="ageBegin ageEnd" label-width="70px">
+              <el-input v-model="formDat.ageBegin" placeholder="" clearable :style="{width: '20%'}" >
+              </el-input>
+              <span> 宀� 鈥斺��</span>
+              <el-input v-model="formDat.ageEnd" placeholder="" clearable :style="{width: '20%'}" >
+              </el-input>
+              <span> 宀� </span>
+          </el-form-item>
+            <el-form-item label="鏃舵湡锛�" prop="term">
+<!--              <el-select v-model="formDat.term" placeholder="璇烽�夋嫨鏃舵湡" clearable :style="{width: '50%'}"  >-->
+<!--                <el-option v-for="(item, index) in typeOptions" :key="index" :label="item.label" :value="item.value"-->
+<!--                ></el-option>-->
+<!--              </el-select>-->
+              <el-input v-model="formDat.term"  placeholder="璇疯緭鍏ユ椂鏈�" clearable :style="{width: '100%'}" >
+              </el-input>
+            </el-form-item>
+            <el-form-item label="鍐呭缂栬緫锛�" prop="content">
+              <el-input v-model="formDat.content" type="textarea" :rows="5" placeholder="" clearable :style="{width: '100%'}" >
+              </el-input>
+            </el-form-item>
+          </el-row>
+        </el-form>
+      </el-col>
+      <h4 class="form-header"> </h4>
+
+      <div slot="footer" class="dialog-footer">
+        <el-button type="primary" @click="submitDataScope6">淇� 瀛�</el-button>
+        <el-button @click="cancelData">鍙� 娑�</el-button>
+      </div>
+    </el-dialog>
 
   </div>
 </template>
@@ -391,26 +733,27 @@
 <script>
 import { listRole, getRole, delRole, addRole, updateRole, dataScope, changeRoleStatus, deptTreeSelect } from "@/api/system/role";
 import { treeselect as menuTreeselect, roleMenuTreeselect } from "@/api/system/menu";
-
-
+import axios from 'axios';
 
 //鍦╯ystem/note/index.js涓鍏ユ帴鍙e嚱鏁�  --鎺ュソ浜�
-import {getIndividualList, getIndividualRelation, delIndividual, updateIndividual, addIndividual,listExperience,updateExperience,
-  addExperience,delExperience} from "@/api/self/index";
 import {
-  delCertificate,
-  getAbroadList,
-  getAutobiography,
-  getAutobiographyList,
-  getAutobiographyTermList,
-  getCertificateList
-} from '../../api/self'
+  getIndividualList, addIndividual, updateIndividual, delIndividual,
+  listExperience, addExperience, updateExperience, delExperience,
+  getIndividualRelation, addRelation, updateRelation, delRelation,
+  getCertificateList, addCertificate, updateCertificate, delCertificate,
+  getAbroadList, addAbroad, updateAbroad, delAbroad, listType,
+  getAutobiographyList, getAutobiographyTermList, addAutobiography, updateAutobiography,delAutobiography,
+  getCategory,
+} from "@/api/self/index";
 import { delFamilyevent, uploadPic } from '../../api/bignote'
 import { blobValidate } from '../../utils/ruoyi'
+
+
 
 export default {
   name: "show",
   dicts: ['sys_normal_disable'],
+
   data() {
     return {
       // 閬僵灞�
@@ -418,8 +761,13 @@
 
       loading: true,
       formData:[],
+      componentKey: 0,
       // 閫変腑鏁扮粍
       ids: [],
+      //鎬у埆
+      inds:undefined,
+      //濠氬Щ绫诲埆
+      mrs:undefined,
       // 闈炲崟涓鐢�
       single: true,
       // 闈炲涓鐢�
@@ -431,22 +779,28 @@
       //澶村儚涓婁紶
       showBtnDealImg:true,
       noneBtnImg:false,
-      limitCountImg:1,//涓婁紶鍥剧墖鐨勬渶澶ф暟閲�
+      //涓婁紶鍥剧墖鐨勬渶澶ф暟閲�
+      limitCountImg:1,
       //涓汉淇℃伅鏁版嵁
       individualList:[],
-      fit:['fill'],
+      isEditing: false,
+      fit:['cover'],
       // 涓汉缁忓巻鏁版嵁
       experienceList: [],
+      // isEdit:true,
+      editStatus: {},
       //瀹跺涵鎴愬憳鍏崇郴鏁版嵁
       relationList:[],
       //鍑哄叆澧冭瘉浠舵儏鍐�
       certificateList:[],
+      typeList:[],
       //鍑哄浗鎯呭喌
       AbroadList:[],
 
       //涓汉鑷紶
       activeName: '0',
       AutobiographyList:[],
+      content1:'',
       //涓嶅悓鏃舵涓汉鑷紶
       // AutobiographyTermList:[],
       // // 璁块棶鍚庡彴鐨勬暟鎹�
@@ -461,11 +815,17 @@
       // current: 0,
 
       //涓嬫媺瀹炵幇
-      activeNames:['1'],
+      activeNames:'3',
+      dialogVisible: {
+        open: false,
+        relation1:false,
+        certificate:false,
+        abroad:false,
+        autobiography:false
+      },
       // 寮瑰嚭灞傛爣棰�
       title: "",
-      // 鏄惁鏄剧ず寮瑰嚭灞�
-      open: false,
+
       // open:true,
       // 鏄惁鏄剧ず寮瑰嚭灞傦紙鏁版嵁鏉冮檺锛�
       openDataScope: false,
@@ -477,15 +837,13 @@
       dateRange: [],
       // 鏁版嵁鑼冨洿閫夐」
       fot:[".jpg",".jif"],
-      fileList:[
-      ],
-      fileListOther:[
-
-      ],
+      fileList:[],
+      fileListOther:[],
       dsb:true,
       btn:false,
-
-
+      isShow:true,
+      isShow_2:false,
+      isEdit1:false,
       formDat: {
         //涓汉鍩烘湰淇℃伅
         nickName:undefined,
@@ -516,19 +874,32 @@
         id:undefined,
         userId:undefined,
         startDate:undefined,
+        endDate:undefined,
         content:undefined,
         witness:undefined,
         remark: undefined,
         //瀹跺涵鎴愬憳鍙婁富瑕佺ぞ浼氬叧绯绘儏鍐�
         relation:undefined,
+        otherName:undefined,
+        otherUnit:undefined,
+        otherPosition:undefined,
+        otherPolitical:undefined,
         //鎸佹湁鍑哄叆澧冭瘉浠舵儏鍐�
+        type:undefined,
         cerName:undefined,
         validityDate:undefined,
         ownStatus:undefined,
         //鍑哄浗锛堝锛夋儏鍐�
         destination:undefined,
+        startTime:undefined,
+        endTime:undefined,
         cause:undefined,
         url: undefined,
+        //鑷紶
+        ageBegin:undefined,
+        ageEnd:undefined,
+        term:undefined,
+
       },
       // 鑿滃崟鍒楄〃
       menuOptions: [],
@@ -573,7 +944,7 @@
         }],
         maritalStatus: [{
           // required: true,
-          message: '璇疯緭鍏ユ皯鏃�',
+          message: '璇疯緭鍏ュ濮荤姸鍐�',
           trigger: 'blur'
         }],
         locationAddress: [{
@@ -613,9 +984,14 @@
           message: '璇疯緭鍏ヨ捣濮嬫棩鏈�',
           trigger: 'blur'
         }],
+        endDate: [{
+          // required: true,
+          message: '璇疯緭鍏ョ粨鏉熸棩鏈�',
+          trigger: 'blur'
+        }],
         content: [{
           required: true,
-          message: '璇疯緭鍏ヤ富瑕佸涔犵粡鍘嗐�佸伐浣滃崟浣嶅強浠昏亴鎯呭喌',
+          message: '璇疯緭鍏ユ枃鏈�',
           trigger: 'blur'
         }],
         witness: [{
@@ -623,64 +999,118 @@
           message: '璇疯緭鍏ヨ瘉鏄庝汉',
           trigger: 'blur'
         }],
+        //鑷紶
+        term: [{
+          required: true,
+          message: '璇疯緭鍏ユ椂鏈�',
+          trigger: 'blur'
+        }],
+        ageBegin: [{
+          required: true,
+          message: '',
+          trigger: 'blur'
+        }],
+        ageEnd: [{
+          required: true,
+          message: '',
+          trigger: 'blur'
+        }],
 
       },
-      typeOptions: [],
+      selectedOption:'',
+      typeOptions:[],
+      typeOption:[],
+      newOption: undefined,
+      showInput: true
     };
   },
   created() {
     this.getList();
     this.getAutobiographyInfor()
+
   },
   methods: {
     // 鍙栨秷鎸夐挳
     cancelData() {
-      this.open = false;
+      this.dialogVisible.open = false;
+      this.dialogVisible.relation1 = false;
+      this.dialogVisible.certificate =false;
+      this.dialogVisible.abroad=false;
+      this.dialogVisible.autobiography=false;
+      this.isEdit1 = false;
       this.reset();
+      // 娓呯┖formDat瀵硅薄鐨勬暟鎹�
+      Object.keys(this.formDat).forEach(key => {
+        this.formDat[key] = '';
+      });
     },
-    //涓嬫媺
-    handleChange(val) {
-      console.log(val);
+    handleUploadSuccess(response, file) {
+      // 澶勭悊鏂囦欢涓婁紶鎴愬姛鍚庣殑鍥炶皟
+      this.individualList.img = response.url;
     },
 
-    // edit(row){
-    //   const id= row.id;
-    //   this.reset();
-    //   this.title='缂栬緫涓汉淇℃伅';
-    //   this.$router.push('/self/self/edit/' + id);
-    // },
+    //涓嬫媺
+    handleChange(activeNames) {
+      // console.log(activeNames);
+      this.reset();
+    },
+    showDialog(dialogName) {
+      this.dialogVisible[dialogName] = true;
+    },
+
     //涓汉鑷紶
     handleClick(tab, event) {
       // console.log(tab, event);
       this.getAutobiographyInfor();
-      if(tab.name == 0) {
+      // this.getSrc1(typeOptions)
+    },
+    //涓汉鑷紶缂栬緫
+    editData(data) {
+      this.isEdit1 = true; // 璁剧疆涓虹紪杈戞搷浣�
+      // 灏嗚淇敼鐨勬暟鎹~鍏呭埌formDat瀵硅薄涓�
+      this.formDat.ageBegin = data.ageBegin;
+      this.formDat.ageEnd = data.ageEnd;
+      this.formDat.term = data.term;
+      this.formDat.content = data.content;
 
-      }
-
-      //鏍规嵁涓嶅悓鏃舵鐨勪釜浜鸿嚜浼�
-      getAutobiographyTermList(this.queryParams).then(response => {
-        //  alert(123)
-        //   console.log(response.data)
-        this.AutobiographyTermList = response.data;
-        this.total = response.data.total;
-        this.loading = false;
-      });
-
-      getAutobiographyList(this.queryParams).then(response => {
-        //  alert(123)
-        //   console.log(response.data)
-        this.AutobiographyList = response.data;
-        this.total = response.data.total;
-        this.loading = false;
-      });
+      // 鎵撳紑寮圭獥
+      this.dialogVisible.autobiography = true;
+    },
+    editAutobiography(item) {
+      this.isEdit1 = true;
+      this.dialogVisible.autobiography = true;
+      this.formDat = { ...item };
     },
 
-
-
-
+    //闅旇鍙樿壊
+    tableRowClassName({ row, rowIndex }) {
+      if (rowIndex % 2 == 0) {
+        return "statistics-warning-row1";
+      } else {
+        return "statistics-warning-row";
+      }
+    },
+    //璇佷欢绫诲埆
+    getSrc(type) {
+      if (type === '鎶ょ収'){
+        return '鎶ょ収'
+      }else if(type === '閫氳璇�'){
+        return '閫氳璇�'
+      }else if(type === '韬唤璇�'){
+        return '韬唤璇�'
+      }else {
+        return '鈥斺�斺�斺�斺�斺��'
+      }
+    },
+//绫诲埆
+    addNewOption() {
+      const newOption = this.newOption.trim();
+      if (newOption && !this.typeOption.includes(newOption)) {
+        this.typeOption.push(newOption);
+        this.$set(this.formDat, 'type', newOption); // 鏇存柊formDat.type鐨勫�间负鏂扮殑閫夐」
+      }
+    },
     /** 鏌ヨ瑙掕壊鍒楄〃 */
-
-
     getList() {
       this.loading = true;
       // console.log(this.queryParams)
@@ -690,7 +1120,7 @@
           //  alert(123)
           //   console.log(response.data)
           this.experienceList = response.data;
-          this.total = response.data.total;
+          // this.total = response.data.total;
           this.loading = false;
         }
       );
@@ -699,7 +1129,7 @@
           //  alert(123)
           //   console.log(response.data)
           this.relationList = response.data;
-          this.total = response.data.total;
+          // this.total = response.data.total;
           this.loading = false;
         }
       );
@@ -708,7 +1138,7 @@
           //  alert(123)
           //   console.log(response.data)
           this.individualList = response.data;
-          this.total = response.data.total;
+          // this.total = response.data.total;
           this.loading = false;
         }
       );
@@ -717,7 +1147,7 @@
           //  alert(123)
           //   console.log(response.data)
           this.certificateList = response.data;
-          this.total = response.data.total;
+          // this.total = response.data.total;
           this.loading = false;
         }
       );
@@ -726,16 +1156,56 @@
           //  alert(123)
           //   console.log(response.data)
           this.AbroadList = response.data;
-          this.total = response.data.total;
+          // this.total = response.data.total;
           this.loading = false;
         }
       );
+      //鏌ヨ涓汉鎵�鏈夎嚜浼�
+      getAutobiographyList(this.queryParams).then(response => {
+        //  alert(123)
+        //   console.log(response.data)
+        this.AutobiographyList = response.data;
+        // this.total = response.data.total;
+        this.loading = false;
 
+      });
+      //鏍规嵁涓嶅悓鏃舵鐨勪釜浜鸿嚜浼�
+      // getAutobiographyTermList(this.queryParams).then(response => {
+      //   //  alert(123)
+      //   //   console.log(response.data)
+      //   this.AutobiographyTermList = response.data;
+      //   this.total = response.data.total;
+      //   this.loading = false;
+      // });
+      listType(this.queryParams).then(response => {
+          this.typeList = response.data;
+          // this.total = response.data.total;
+          // console.log( this.typeList )
+          // 鍦ㄥ洖璋冨嚱鏁颁腑璋冪敤 getTypeOptions()
+          this.getTypeOptions();
+          this.loading = false;
+        }
+      );
+    },
+    getTypeOptions() {
+      const filteredOptions = this.typeList.filter(item => typeof item === 'string' && item !== '');
+      // 鍒涘缓涓�涓┖瀵硅薄鐢ㄤ簬瀛樺偍鍞竴鐨勫瓧绗︿覆閫夐」
+      const uniqueOptions = {};
+      // 鏋勫缓涓嬫媺閫夐」鍒楄〃
+      this.typeOption = filteredOptions.reduce((options, option) => {
+        if (!uniqueOptions[option]) {
+          uniqueOptions[option] = true;
+          options.push({
+            label: option,
+            value: option
+          });
+        }
+        return options;
+      }, []);
 
     },
 
     //鍥剧墖鐨勪笂浼犲強涓婁紶鎸夐挳闅愯棌
-
 
     // 鍙栨秷鎸夐挳
     cancel() {
@@ -748,35 +1218,9 @@
       this.reset();
     },
 
-    submitForm() {
-      let ul = this.fileList.map(function (elem){
-        return elem.url.replace(process.env.VUE_APP_BASE_TRUE_API,"")
-      }).join(",")
-      let uls = this.fileListOther.map(function (elem){
-        return elem.url.replace(process.env.VUE_APP_BASE_TRUE_API,"")
-      }).join(",")
-      this.formData.url = ul+","+uls
-
-      this.$refs['elForm'].validate(valid => {
-
-
-        if (valid) {
-          if (this.formData.id != undefined) {
-            updateIndividual(this.formData).then(response => {
-              this.$modal.msgSuccess("淇敼鎴愬姛");
-              // this.open = false;
-              this.btn=false
-            });
-          } else {
-            this.$modal.msgSuccess("淇敼澶辫触");
-
-          }
-        }
-      })
-    },
     // 琛ㄥ崟閲嶇疆
     reset() {
-      if (this.$refs.menu != undefined) {
+      if (this.$refs.menu !== undefined) {
         this.$refs.menu.setCheckedKeys([]);
       }
       this.menuExpand = false,
@@ -816,13 +1260,10 @@
       this.multiple = !selection.length
     },
 
-    /** 鏂板鎸夐挳鎿嶄綔 */
-    // handleAdd() {
-    //   this.reset();
-    //   this.open = true;
-    //   this.title = "娣诲姞涓汉淇℃伅";
-    // },
-
+    //涓汉璁颁簨鏈�
+    toMemo(){
+      this.$router.push("/self/self/memo/" + this.individualList.userId);
+    },
 
     /** 鏌ョ湅璇︾粏淇℃伅 */
     handleCheck(row){
@@ -842,12 +1283,6 @@
       });
     },
 
-    handleRemoveFile(file) {
-      alert(23)
-    },
-    handleRemove(file) {
-      alert("鎿嶄綔鎴愬姛")
-    },
     handlePictureCardPreview(file) {
       this.dialogImageUrl = file.url;
       this.dialogVisible = true;
@@ -866,44 +1301,332 @@
         saveAs(blob, filename)
       })
     },
-    //缂栬緫鎸夐挳
+    // 缂栬緫鎸夐挳
     handleEdit()
     {
       this.dsb = false
       this.btn = true
+      this.isShow=false
+      this.isShow_2=true
+      this.isEditing=true
+      if(this.individualList.maritalStatus == 0)
+          this.mrs = '鏈'
+      else if(this.individualList.maritalStatus == 1)
+          this.mrs = '宸插'
+      else
+          this.mrs = '绂诲'// this.isEdit=false
     },
 
     /** 鏌ヨ鑷紶淇℃伅 */
     getAutobiographyInfor()
     {
       let _this = this
-      getAutobiography().then(response=>{
+      getCategory().then(response => {
+        // response.data.itemValues.replace("{","").replace("}","").split(",").map(elem=>{
+        //   _this.typeOptions.push({"label":elem.split(":")[0], "value":elem.split(":")[0]})
+        // })
+        response.data.itemValues.replace("{", "").replace("}", "").split(",").map(elem => {
+          const label = elem.split(":")[0].trim();
+          const value = parseInt(elem.split(":")[1].trim());
 
-        response.data.itemValues.replace("{","").replace("}","").split(",").map(elem=>{
-          _this.typeOptions.push({"label":elem.split(":")[0], "value":elem.split(":")[0]})
-        })
-      })
+          // 鍒ゆ柇 typeOptions 鏁扮粍涓槸鍚﹀凡瀛樺湪鐩稿悓鐨� value
+          if (!_this.typeOptions.some(option => option.value === value)) {
+            _this.typeOptions.push({ "label": label, "value": value });
+          }
+          // console.log(_this.typeOptions)
+          // _this.getSrc1(value)
+        });
+      });
+
     },
-    /** 鎻愪氦鎸夐挳锛堟暟鎹潈闄愶級 */
-    submitDataScope: function() {
 
+    /** 鎻愪氦鎸夐挳锛堟暟鎹潈闄愶級 */
+    //鏂板涓昏缁忓巻鐨勪繚瀛�
+    submitDataScope: function() {
+      this.$refs["elForm"].validate(valid => {
+        if (valid) {
+          addExperience(this.formDat).then(response => {
+            this.$modal.msgSuccess("鏂板鎴愬姛");
+            this.dialogVisible.open = false;
+            this.getList();
+          });
+        }
+      });
+      // 娓呯┖formDat瀵硅薄鐨勬暟鎹�
+      Object.keys(this.formDat).forEach(key => {
+        this.formDat[key] = '';
+      });
+    },
+    //鏂板鎴愬憳鍏崇郴鐨勪繚瀛�
+    submitDataScope2: function() {
+      this.$refs["elForm"].validate(valid => {
+        if (valid) {
+          addRelation(this.formDat).then(response => {
+            this.$modal.msgSuccess("鏂板鎴愬姛");
+            this.dialogVisible.relation1 = false;
+            this.getList();
+          });
+        }
+      });
+      // 娓呯┖formDat瀵硅薄鐨勬暟鎹�
+      Object.keys(this.formDat).forEach(key => {
+        this.formDat[key] = '';
+      });
+    },
+    //鏂板鍑哄叆澧冭瘉浠剁殑淇濆瓨
+    submitDataScope4: function() {
+      this.$refs["elForm"].validate(valid => {
+        if (valid) {
+          addCertificate(this.formDat).then(response => {
+            this.$modal.msgSuccess("鏂板鎴愬姛");
+            this.dialogVisible.certificate = false;
+            this.getList();
+          });
+        }
+      });
+      // 娓呯┖formDat瀵硅薄鐨勬暟鎹�
+      Object.keys(this.formDat).forEach(key => {
+        this.formDat[key] = '';
+      });
+    },
+    //鏂板鍑哄浗澧冪殑淇濆瓨
+    submitDataScope5: function() {
+      this.$refs["elForm"].validate(valid => {
+        if (valid) {
+          addAbroad(this.formDat).then(response => {
+            this.$modal.msgSuccess("鏂板鎴愬姛");
+            this.dialogVisible.abroad = false;
+            this.getList();
+          });
+        }
+      });
+      // 娓呯┖formDat瀵硅薄鐨勬暟鎹�
+      Object.keys(this.formDat).forEach(key => {
+        this.formDat[key] = '';
+      });
+    },
+    //涓汉鑷紶鐨勪繚瀛�
+    submitDataScope6: function() {
+      this.$refs["elForm"].validate(valid => {
+        if (valid) {
+          // 鏍规嵁鍊兼壘鍒伴�変腑鐨勯�夐」瀵硅薄
+          // const selectedOption = this.typeOptions.find(option => option.value === this.formDat.term);
+
+          if (this.isEdit1) {
+            // 鎵ц淇敼鎿嶄綔
+            updateAutobiography(this.formDat).then(response => {
+              // 灏嗛�変腑閫夐」鐨勬枃鏈缃负"term"瀛楁鐨勫��
+              // this.formDat.term = selectedOption.value;
+              // this.formDat.id = selectedOption.id;
+              console.log("1")
+              this.$modal.msgSuccess("淇敼鎴愬姛");
+              this.dialogVisible.autobiography = false;
+              this.isEdit1 = false;
+              this.getList();
+            }).catch(error => {
+              console.log(error);
+              this.isEdit1 = false;
+              this.dialogVisible.autobiography = false;
+            });
+          } else {
+            // 鎵ц鏂板鎿嶄綔
+            addAutobiography(this.formDat).then(response => {
+              // this.formDat.term = selectedOption.label;
+              this.$modal.msgSuccess("鏂板鎴愬姛");
+              this.dialogVisible.autobiography = false;
+              this.getList();
+            }).catch(error => {
+              console.log(error);
+              this.dialogVisible.autobiography = false;
+            });
+          }
+        }
+      });
+      // 娓呯┖formDat瀵硅薄鐨勬暟鎹�
+      Object.keys(this.formDat).forEach(key => {
+        this.formDat[key] = '';
+      });
+      // 閲嶇疆isEdit涓篺alse锛屼互渚夸笅娆$偣鍑绘柊澧炴椂涓烘柊澧炴搷浣�
+      this.isEdit1 = false;
+    },
+
+    editRow(row) {
+      this.$set(row, 'isEdit', true);
+      this.$set(this.editStatus, row.id, true);
+    },
+    //淇敼鍚庣殑淇濆瓨
+    //涓汉鍩烘湰淇℃伅
+    submitForm() {
+      if(this.inds=='1')
+        this.individualList.sex = 1;
+      else
+        this.individualList.sex = 0;
+      if(this.mrs=='0')
+        this.individualList.maritalStatus = 0
+      else if(this.mrs == '1')
+        this.individualList.maritalStatus = 1
+      else
+        this.individualList.maritalStatus = 2
       let ul = this.fileList.map(function (elem){
         return elem.url.replace(process.env.VUE_APP_BASE_TRUE_API,"")
       }).join(",")
       let uls = this.fileListOther.map(function (elem){
         return elem.url.replace(process.env.VUE_APP_BASE_TRUE_API,"")
       }).join(",")
-      this.formDat.url = ul+","+uls
-      this.$refs["elForm"].validate(valid => {
-        if (valid) {
+      this.individualList.url = ul+","+uls
 
-          addIndividual(this.formDat).then(response => {
-            this.$modal.msgSuccess("鏂板鎴愬姛");
-            this.open = false;
-            this.getList();
+      this.$refs['elForm'].validate(valid => {
+        if (valid) {
+          if (this.individualList.userId !== undefined) {
+            updateIndividual(this.individualList).then(response => {
+              this.$modal.msgSuccess("淇敼鎴愬姛");
+              // 寮哄埗鏇存柊鐩稿叧缁勪欢
+              this.individualList={...this.individualList}
+
+              // this.open = false;
+              this.dsb = true
+              this.btn=false
+              this.isShow_2=false
+              this.isShow=true
+              this.isEditing = false
+            });
+          } else {
+            this.$modal.msgSuccess("淇敼澶辫触");
+
+          }
+        }
+      })
+      // 鍒锋柊椤甸潰
+      // window.location.reload();
+    },
+    //澶村儚淇敼
+    uploadImage() {
+      const inputElement = document.createElement("input");
+      inputElement.type = "file";
+      inputElement.accept = "image/*";
+      inputElement.style.display = "none";
+      document.body.appendChild(inputElement);
+
+      inputElement.addEventListener("change", () => {
+        const file = inputElement.files[0];
+        if (file) {
+          const formData = new FormData();
+          formData.append("image", file);
+
+          // 璋冪敤uploadPic鎺ュ彛涓婁紶鍥剧墖
+          axios.post("/common/upload", formData, {
+            headers: {
+              "Content-Type": "multipart/form-data"
+            }
+          }).then(response => {
+            // 涓婁紶鎴愬姛锛岃幏鍙栨柊鍥剧墖鐨刄RL
+            const newImageUrl = response.data.img;
+
+            // 鍋囪individualList鏄竴涓璞★紝鏇存柊individualList.img
+            this.individualList.img =   newImageUrl;
+
+            // 鍋囪fileList鏄竴涓暟缁勶紝鏇存柊fileList涓搴旂殑鍥剧墖URL
+            // const index = this.fileList.findIndex(item => item.id === fileId);
+            // this.fileList[index].url = newImageUrl;
+
+            // 娓呴櫎input鍏冪礌骞剁Щ闄や簨浠剁洃鍚�
+            document.body.removeChild(inputElement);
+            inputElement.removeEventListener("change", null);
+          }).catch(error => {
+            console.error("涓婁紶澶辫触:", error);
+            // 娓呴櫎input鍏冪礌骞剁Щ闄や簨浠剁洃鍚�
+            document.body.removeChild(inputElement);
+            inputElement.removeEventListener("change", null);
           });
         }
       });
+
+      // 瑙﹀彂鐐瑰嚮浜嬩欢锛屾樉绀烘枃浠堕�夋嫨瀵硅瘽妗�
+      inputElement.click();
+    },
+    //涓昏缁忓巻
+    saveRowExperienceList(row) {
+      this.$refs['elForm'].validate(valid => {
+        if (valid) {
+          const foundIndex = this.experienceList.findIndex(item => item.id === row.id);
+          if (foundIndex !== -1) {
+            const updatedData = Object.assign({}, this.experienceList[foundIndex], row);
+            updateExperience(updatedData).then(response => {
+              this.$modal.msgSuccess("淇敼鎴愬姛");
+            }).catch(error => {
+              this.$modal.msgError("淇敼澶辫触");
+              console.log(error);
+            });
+          } else {
+            this.$modal.msgError("淇敼澶辫触");
+          }
+        }
+      });
+      this.$set(row, 'isEdit', false);
+      this.$set(this.editStatus, row.id, false);
+    },
+    //鎴愬憳鍏崇郴
+    saveRowRelationList(row) {
+      this.$refs['elForm'].validate(valid => {
+        if (valid) {
+          const foundIndex = this.relationList.findIndex(item => item.id === row.id);
+          if (foundIndex !== -1) {
+            const updatedData = Object.assign({}, this.relationList[foundIndex], row);
+            updateRelation(updatedData).then(response => {
+              this.$modal.msgSuccess("淇敼鎴愬姛");
+            }).catch(error => {
+              this.$modal.msgError("淇敼澶辫触");
+              console.log(error);
+            });
+          } else {
+            this.$modal.msgError("淇敼澶辫触");
+          }
+        }
+      });
+      this.$set(row, 'isEdit', false);
+      this.$set(this.editStatus, row.id, false);
+    },
+    //璇佷欢鎯呭喌
+    saveRowCertificateList(row) {
+      this.$refs['elForm'].validate(valid => {
+        if (valid) {
+          const foundIndex = this.certificateList.findIndex(item => item.id === row.id);
+          if (foundIndex !== -1) {
+            const updatedData = Object.assign({}, this.certificateList[foundIndex], row);
+            updateCertificate(updatedData).then(response => {
+              this.$modal.msgSuccess("淇敼鎴愬姛");
+            }).catch(error => {
+              this.$modal.msgError("淇敼澶辫触");
+              console.log(error);
+            });
+          } else {
+            this.$modal.msgError("淇敼澶辫触");
+          }
+        }
+      });
+      this.$set(row, 'isEdit', false);
+      this.$set(this.editStatus, row.id, false);
+    },
+    //鍑哄浗鎯呭喌
+    saveRowAbroadList(row) {
+      this.$refs['elForm'].validate(valid => {
+        if (valid) {
+          const foundIndex = this.AbroadList.findIndex(item => item.id === row.id);
+          if (foundIndex !== -1) {
+            const updatedData = Object.assign({}, this.AbroadList[foundIndex], row);
+            updateAbroad(updatedData).then(response => {
+              this.$modal.msgSuccess("淇敼鎴愬姛");
+            }).catch(error => {
+              this.$modal.msgError("淇敼澶辫触");
+              console.log(error);
+            });
+          } else {
+            this.$modal.msgError("淇敼澶辫触");
+          }
+        }
+      });
+      this.$set(row, 'isEdit', false);
+      this.$set(this.editStatus, row.id, false);
     },
     requestUpload(params)
     {
@@ -928,11 +1651,22 @@
       })
 
     },
+
     /** 鍒犻櫎涓汉缁忓巻鎸夐挳鎿嶄綔 */
     handleExperienceDelete(row) {
       const Ids = row.id || this.ids;
-      this.$modal.confirm('鏄惁纭鍒犻櫎搴忓彿涓�"' + Ids + '"鐨勬暟鎹」锛�').then(function() {
+      this.$modal.confirm('鏄惁纭鍒犻櫎鏁版嵁椤癸紵').then(function() {
         return delExperience(Ids);
+      }).then(() => {
+        this.getList();
+        this.$modal.msgSuccess("鍒犻櫎鎴愬姛");
+      }).catch(() => {});
+    },
+    /** 鍒犻櫎鎴愬憳鍏崇郴鎸夐挳鎿嶄綔 */
+    handleRelationDelete(row) {
+      const Ids = row.id || this.ids;
+      this.$modal.confirm('鏄惁纭鍒犻櫎鏁版嵁椤癸紵').then(function() {
+        return delRelation(Ids);
       }).then(() => {
         this.getList();
         this.$modal.msgSuccess("鍒犻櫎鎴愬姛");
@@ -941,13 +1675,34 @@
     /** 鍒犻櫎鎸佹湁鍑哄叆澧冭瘉浠舵儏鍐垫寜閽搷浣� */
     handleCertificateDelete(row) {
       const Ids = row.id || this.ids;
-      this.$modal.confirm('鏄惁纭鍒犻櫎搴忓彿涓�"' + Ids + '"鐨勬暟鎹」锛�').then(function() {
+      this.$modal.confirm('鏄惁纭鍒犻櫎鏁版嵁椤癸紵').then(function() {
         return delCertificate(Ids);
       }).then(() => {
         this.getList();
         this.$modal.msgSuccess("鍒犻櫎鎴愬姛");
       }).catch(() => {});
     },
+    /** 鍒犻櫎鍑哄浗锛堝锛夋儏鍐垫寜閽搷浣� */
+    handleAbroadDelete(row) {
+      const Ids = row.id || this.ids;
+      this.$modal.confirm('鏄惁纭鍒犻櫎鏁版嵁椤癸紵').then(function() {
+        return delAbroad(Ids);
+      }).then(() => {
+        this.getList();
+        this.$modal.msgSuccess("鍒犻櫎鎴愬姛");
+      }).catch(() => {});
+    },
+    /** 鍒犻櫎涓汉鑷紶鎸夐挳鎿嶄綔 */
+    handleAutobiography(row) {
+      const Ids = row.id || this.ids;
+      this.$modal.confirm('鏄惁纭鍒犻櫎鏁版嵁椤癸紵').then(function() {
+        return delAutobiography(Ids);
+      }).then(() => {
+        this.getList();
+        this.$modal.msgSuccess("鍒犻櫎鎴愬姛");
+      }).catch(() => {});
+    },
+
     /** 瀵煎嚭鎸夐挳鎿嶄綔 */
     handleExport() {
       this.download('/self/user/export', {
@@ -958,7 +1713,7 @@
 };
 </script>
 
-<style scoped>
+<style scoped="">
 /*.uoloadSty {*/
 /*  width:110px;*/
 /*  height:110px;*/
@@ -972,8 +1727,57 @@
 }
 
 .el-icon-top {
-  background: url("../../assets/icons/top.png");
+  background: no-repeat center url("../../assets/icons/top.png");
+}
+.el-table__row.statistics-warning-row {
+  background: #E0EEFE;
+
+}
+.el-table__row.statistics-warning-row1 {
+  background: #FFEFF2;
+
 }
 
+.el-collapse-item__header {
+  background-color:#FEF7FC;
+  width: 100%;
+}
+.title-wrapper {
+  display: flex;
+  justify-content: space-between;
+  align-items: center;
+  width: calc(100% - 50px);
+}
+.left-content {
 
+  width: 100%;
+}
+.btn_autobiography{
+  background:center no-repeat url('../../assets/icons/add1.png') ;
+  margin-left: 76vw;
+}
+.btn_edit{
+  background:center no-repeat url('../../assets/icons/edit.png') ;
+}
+.btn_del{
+  background:center no-repeat url('../../assets/images/鍒犻櫎2.png') ;
+}
+.button-container {
+  text-align: right;
+  display: flex;
+  justify-content: flex-end;
+  align-items: center;
+  flex-grow: 1;
+}
+.button {
+  background:center no-repeat url('../../assets/icons/add1.png') ;
+  /*margin-right: -10px ;*/
+  flex-shrink: 0;
+  width: 30px;
+  height: 28px;
+}
+.form{
+  background:center/11% no-repeat url('../../assets/icons/form.png') ;
+
+}
 </style>

--
Gitblit v1.9.1