From 181f5b75a26aa720557b063cfb8b9bf1f34e3ece Mon Sep 17 00:00:00 2001
From: linwenling <3256558519@qq.com>
Date: 星期一, 24 七月 2023 23:37:24 +0800
Subject: [PATCH] 修改家庭收支台账

---
 ruoyi-ui/src/views/self/show.vue |  617 +++++++++++++++++++++++++++++++++----------------------
 1 files changed, 369 insertions(+), 248 deletions(-)

diff --git a/ruoyi-ui/src/views/self/show.vue b/ruoyi-ui/src/views/self/show.vue
index 90bbe44..6c72a8e 100644
--- a/ruoyi-ui/src/views/self/show.vue
+++ b/ruoyi-ui/src/views/self/show.vue
@@ -6,7 +6,16 @@
                  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;justify-content: space-between;align-items: center;">
+      <span>涓汉绠�鍘�</span>
+      <div   style="display: flex; align-items: center;">
+        <el-button size="mini" type="text" @click="toMemo" v-hasPermi="['person:information:memo']">
+          <div class="form" ><el-icon  style="padding-right:110px;"></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>
@@ -44,8 +53,17 @@
             <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 ? '鐢�':'濂�'" placeholder="" clearable :style="{width: '100%'}" :disabled="dsb"></el-input>
+                  </template>
+                  <template v-else>
+                    <el-select v-model="individualList.sex" placeholder="璇烽�夋嫨鎬у埆" clearable :style="{width: '100%'}">
+                      <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">
@@ -76,8 +94,18 @@
               </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="individualList.maritalStatus" 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>
 
@@ -88,44 +116,38 @@
       <div style="padding-left:30px;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 >
+            <el-col v-model="individualList.img" prop="img">
+              <el-avatar shape="square" style="width: 200px;height: 150px;" >
                 <el-image
-                  :src="'http://47.93.189.255:8080/'+ individualList.url"
+                  :src="'http://47.93.189.255:8080/'+ individualList.img"
                   :fit="fit"
+                  style="width: 100%;height: 100%;"
                 ></el-image>
               </el-avatar>
-            </el-col>
+<!--              <el-upload-->
+<!--                action="#"-->
+<!--                list-type="picture-card"-->
+<!--                multiple-->
+<!--                :http-request="requestUpload"-->
+<!--                :file-list="fileList"-->
+<!--              >-->
+<!--                <i slot="default" class="el-icon-plus"></i>-->
+<!--                <div slot="file" slot-scope="{file}">-->
+<!--                  <img-->
+<!--                    class="el-upload-list__item-thumbnail"-->
+<!--                    :src="file.url"-->
+<!--                    alt=""-->
+<!--                    style="width: 147px; height: 147px"-->
+<!--                    fit="cover"-->
+<!--                    :preview-src-list="[file.url]"-->
+<!--                  >-->
+<!--                </div>-->
+<!--              </el-upload>-->
+         </el-col>
           </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" >
@@ -137,6 +159,7 @@
               v-if="isShow"
               v-hasPermi="['system:role:edit']"
             >缂栬緫</el-button>
+            <el-button v-if="isShow_2" type="primary" @click="submitForm" :disabled="dsb">瀹屾垚</el-button>
             <br>
             <el-button
               type="primary"
@@ -144,7 +167,10 @@
               v-hasPermi="['family:note:export']"
             >瀵煎嚭</el-button>
             <br>
-            <el-button v-if="isShow_2" type="primary" @click="submitForm" :disabled="dsb">瀹屾垚</el-button>
+            <el-button
+              type="primary"
+              v-hasPermi="['family:note:export']"
+            >鎵撳嵃</el-button>
           </el-row>
 
         </el-container>
@@ -209,6 +235,31 @@
 
     <!--鎶樺彔闈㈡澘-->
     <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">
+              <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 name="1"  >
         <template v-slot:title>
@@ -221,41 +272,39 @@
           </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="300" align="center" >
-            <template slot-scope="scope">{{scope.row.startDate? scope.row.startDate: '鈥斺�斺�斺��'}}</template>
+          <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-input v-model="scope.row.startDate"></el-input></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-input v-model="scope.row.endDate"></el-input></template>
+            </template>
           </el-table-column>
           <el-table-column label="涓昏瀛︿範缁忓巻銆佸伐浣滃崟浣嶅強浠昏亴鎯呭喌" prop="content" sortable width="350" align="center" >
-            <template slot-scope="scope">{{scope.row.content? scope.row.content: '鈥斺�斺�斺��'}}</template>
+            <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">{{scope.row.witness? scope.row.witness: '鈥斺�斺�斺��'}}</template>
+            <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">
-<!--              @click="handleUpdate(scope.row)"-->
-              <el-button
-                size="mini"
-                type="text"
-                icon="el-icon-edit"
-                @click="showDialog1"
-                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>
@@ -273,69 +322,46 @@
         <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.relation? scope.row.relation: '鈥斺�斺�斺��'}}</template>
+            <template slot-scope="scope">
+              <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="otherName" sortable width="260" align="center" >
-            <template slot-scope="scope">{{scope.row.otherName? scope.row.otherName: '鈥斺�斺�斺��'}}</template>
-          </el-table-column>
-          <el-table-column label="鍗曚綅鍙婅亴鍔�" prop="otherUnit position" sortable width="260" align="center">
             <template slot-scope="scope">
-              <span v-if="scope.row.otherUnit || scope.row.otherPosition  == true">
-                {{scope.row.otherUnit}}/{{scope.row.otherPosition}}
-              </span>
-              <span v-else>鈥斺�斺�斺��</span>
+              <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">{{scope.row.otherPolitical? scope.row.otherPolitical: '鈥斺�斺�斺��'}}</template>
+            <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="handleRelationDelete(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  name="4">
@@ -348,51 +374,50 @@
         </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="280" align="center" >
-            <template slot-scope="scope">{{scope.row.cerName? scope.row.cerName: '鈥斺�斺�斺��'}}</template>
-          </el-table-column>
-          <el-table-column label="璇佷欢绫诲瀷" prop="type" sortable width="280" align="center" >
-            <template slot-scope="scope">{{ getSrc(scope.row.type) }}</template>
-          </el-table-column>
-          <el-table-column label="鎸佹湁鎯呭喌" prop="ownStatus" sortable width="280" align="center" >
-            <template slot-scope="scope">{{scope.row.ownStatus? scope.row.ownStatus: '鈥斺�斺�斺��'}}</template>
-          </el-table-column>
-          <el-table-column label="璇佷欢鍙风爜" prop="idNo" sortable width="280" align="center" >
-            <template slot-scope="scope">{{scope.row.idNo? scope.row.idNo: '鈥斺�斺�斺��'}}</template>
-          </el-table-column>
-          <el-table-column label="鏈夋晥鏈�" prop="startTime endTime"  sortable width="280" align="center">
+          <el-table-column label="璇佷欢鍚嶇О" prop="cerName" sortable width="230" align="center" >
             <template slot-scope="scope">
-              <span v-if="scope.row.startTime || scope.row.endTime  == true">
-                {{scope.row.startTime}} 鑷� {{scope.row.endTime}}
-              </span>
-              <span v-else>鈥斺�斺�斺��</span>
+              <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-input v-model="scope.row.startTime"></el-input></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-input v-model="scope.row.endTime"></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">
-              <!--              @click="handleUpdate(scope.row)"-->
-              <el-button
-                size="mini"
-                type="text"
-                icon="el-icon-edit"
-                @click="handleAdd"
-                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="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>
@@ -408,46 +433,38 @@
         </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 endTime" sortable width="350" align="center" >
+          <el-table-column label="寮�濮嬫椂闂�" prop="startTime"  sortable width="200" align="center">
             <template slot-scope="scope">
-              <span v-if="scope.row.startTime || scope.row.endTime  == true">
-                {{scope.row.startTime}} 鑷� {{scope.row.endTime}}
-              </span>
-              <span v-else>鈥斺�斺�斺��</span>
+              <template v-if="!scope.row.isEdit">{{ scope.row.startTime }}</template>
+              <template v-else><el-input v-model="scope.row.startTime"></el-input></template>
             </template>
           </el-table-column>
-          <el-table-column label="鎵�鍒板浗瀹舵垨鑰呭湴鍖�" prop="destination" sortable width="350" align="center" >
-            <template slot-scope="scope">{{scope.row.destination? scope.row.destination: '鈥斺�斺�斺��'}}</template>
+          <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-input v-model="scope.row.endTime"></el-input></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">{{scope.row.cause? scope.row.cause: '鈥斺�斺�斺��'}}</template>
+            <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">
-              <!--              @click="handleUpdate(scope.row)"-->
-
-              <el-button
-                size="mini"
-                type="text"
-                icon="el-icon-edit"
-                @click="handleAdd"
-                v-hasPermi="['system:role:edit']"
-              >淇敼</el-button>
-              <el-button
-                size="mini"
-                type="text"
-                icon="el-icon-delete"
-                @click="handleAbroadDelete(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="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>
@@ -475,9 +492,9 @@
             <div v-if="item.term === '缁撳鍚�'"> {{item.content}}</div>
           </el-tab-pane>
         </el-tabs>
-        <el-button size='mini' type="text" class="btn_autobiography" @click="showDialog('autobiography')" style='position: absolute;right:10px;top:5px;'>
-          <sapn v-html="'\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0'"></sapn>
-        </el-button>
+<!--        <el-button size='mini' type="text" class="btn_autobiography" @click="showDialog('autobiography')" style='position: absolute;right:10px;top:5px;'>-->
+<!--          <sapn v-html="'\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0'"></sapn>-->
+<!--        </el-button>-->
       </div>
 
     </div>
@@ -495,6 +512,9 @@
       <el-form ref="elForm1" :model="formDat" :rules="rules" size="medium" label-width="140px">
         <el-form-item label="寮�濮嬫棩鏈�" prop="startDate">
           <el-input v-model="formDat.startDate" type='date' placeholder='閫夋嫨鏃ユ湡' clearable :style="{width: '100%'}" ></el-input>
+        </el-form-item>
+        <el-form-item label="缁撴潫鏃ユ湡" prop="endDate">
+          <el-input v-model="formDat.endDate" type='date' 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%'}" >
@@ -566,11 +586,10 @@
           </el-input>
         </el-form-item>
         <el-form-item label="寮�濮嬫棩鏈�" prop="startTime">
-          <el-input v-model="formDat.startTime" placeholder="璇疯緭鍏ュ紑濮嬫棩鏈�" clearable :style="{width: '100%'}" ></el-input>
+          <el-input v-model="formDat.startTime" type='date' placeholder='閫夋嫨鏃ユ湡' clearable :style="{width: '100%'}" ></el-input>
         </el-form-item>
         <el-form-item label="缁撴潫鏃ユ湡" prop="endTime">
-          <el-input v-model="formDat.endTime" placeholder="璇疯緭鍏ョ粨鏉熸棩鏈�" clearable :style="{width: '100%'}" >
-          </el-input>
+          <el-input v-model="formDat.endTime" type='date' placeholder='閫夋嫨鏃ユ湡' clearable :style="{width: '100%'}" ></el-input>
         </el-form-item>
          </el-form>
       <h4 class="form-header"> </h4>
@@ -649,17 +668,18 @@
 <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, addIndividual, updateIndividual, delIndividual,
-        listExperience,  addExperience,updateExperience, delExperience,
-        getIndividualRelation,addRelation,updateRelation,delRelation,
-        getCertificateList, addCertificate, delCertificate,
-        getAbroadList,addAbroad, delAbroad,
-        getAutobiographyList, getAutobiographyTermList,addAutobiography,
-        getCategory} from "@/api/self/index";
+import {
+  getIndividualList, addIndividual, updateIndividual, delIndividual,
+  listExperience, addExperience, updateExperience, delExperience,
+  getIndividualRelation, addRelation, updateRelation, delRelation,
+  getCertificateList, addCertificate, updateCertificate, delCertificate,
+  getAbroadList, addAbroad,updateAbroad, delAbroad,
+  getAutobiographyList, getAutobiographyTermList, addAutobiography,
+  getCategory,
+} from "@/api/self/index";
 import { delFamilyevent, uploadPic } from '../../api/bignote'
 import { blobValidate } from '../../utils/ruoyi'
 
@@ -688,12 +708,16 @@
       //澶村儚涓婁紶
       showBtnDealImg:true,
       noneBtnImg:false,
-      limitCountImg:1,//涓婁紶鍥剧墖鐨勬渶澶ф暟閲�
+      //涓婁紶鍥剧墖鐨勬渶澶ф暟閲�
+      limitCountImg:1,
       //涓汉淇℃伅鏁版嵁
       individualList:[],
-      fit:['fill'],
+      isEditing: false,
+      // fit:['fill'],
       // 涓汉缁忓巻鏁版嵁
       experienceList: [],
+      // isEdit:true,
+      editStatus: {},
       //瀹跺涵鎴愬憳鍏崇郴鏁版嵁
       relationList:[],
       //鍑哄叆澧冭瘉浠舵儏鍐�
@@ -719,7 +743,7 @@
       // current: 0,
 
       //涓嬫媺瀹炵幇
-      activeNames:'',
+      activeNames:'3',
       dialogVisible: {
         open: false,
         relation1:false,
@@ -782,6 +806,7 @@
         id:undefined,
         userId:undefined,
         startDate:undefined,
+        endDate:undefined,
         content:undefined,
         witness:undefined,
         remark: undefined,
@@ -890,6 +915,11 @@
           message: '璇疯緭鍏ヨ捣濮嬫棩鏈�',
           trigger: 'blur'
         }],
+        endDate: [{
+          // required: true,
+          message: '璇疯緭鍏ョ粨鏉熸棩鏈�',
+          trigger: 'blur'
+        }],
         content: [{
           // required: true,
           message: '璇疯緭鍏�',
@@ -902,6 +932,7 @@
         }],
 
       },
+      typeOptions:[],
       typeOption: [{
         value:'鎶ょ収',
         label:'鎶ょ収'
@@ -917,6 +948,7 @@
   created() {
     this.getList();
     this.getAutobiographyInfor()
+
   },
   methods: {
     // 鍙栨秷鎸夐挳
@@ -964,7 +996,6 @@
         return '鈥斺�斺�斺�斺�斺��'
       }
     },
-
 
     /** 鏌ヨ瑙掕壊鍒楄〃 */
     getList() {
@@ -1037,7 +1068,6 @@
 
     //鍥剧墖鐨勪笂浼犲強涓婁紶鎸夐挳闅愯棌
 
-
     // 鍙栨秷鎸夐挳
     cancel() {
       this.open = false;
@@ -1049,30 +1079,6 @@
       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.individualList.url = ul+","+uls
-
-      this.$refs['elForm'].validate(valid => {
-        if (valid) {
-          if (this.individualList.id !== undefined) {
-            updateIndividual(this.individualList).then(response => {
-              this.$modal.msgSuccess("淇敼鎴愬姛");
-              // this.open = false;
-              this.btn=false
-            });
-          } else {
-            this.$modal.msgSuccess("淇敼澶辫触");
-
-          }
-        }
-      })
-    },
     // 琛ㄥ崟閲嶇疆
     reset() {
       if (this.$refs.menu !== undefined) {
@@ -1115,13 +1121,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){
@@ -1172,14 +1175,10 @@
       this.btn = true
       this.isShow=false
       this.isShow_2=true
+      this.isEditing=true
+      // this.isEdit=false
     },
-    //淇敼鎸夐挳
-    /** 鏂板鎸夐挳鎿嶄綔 */
-    handleAdd() {
-      this.reset();
-      // this.open = true;
-      this.title = "鏂板璇︾粏淇℃伅";
-    },
+
     /** 鏌ヨ鑷紶淇℃伅 */
     getAutobiographyInfor()
     {
@@ -1191,9 +1190,10 @@
         })
       })
     },
-    /** 鎻愪氦鎸夐挳锛堟暟鎹潈闄愶級 */
-    submitDataScope: function() {
 
+    /** 鎻愪氦鎸夐挳锛堟暟鎹潈闄愶級 */
+    //鏂板涓昏缁忓巻鐨勪繚瀛�
+    submitDataScope: function() {
       let ul = this.fileList.map(function (elem){
         return elem.url.replace(process.env.VUE_APP_BASE_TRUE_API,"")
       }).join(",")
@@ -1216,8 +1216,8 @@
         this.formDat[key] = '';
       });
     },
+    //鏂板鎴愬憳鍏崇郴鐨勪繚瀛�
     submitDataScope2: function() {
-
       let ul = this.fileList.map(function (elem){
         return elem.url.replace(process.env.VUE_APP_BASE_TRUE_API,"")
       }).join(",")
@@ -1240,6 +1240,7 @@
         this.formDat[key] = '';
       });
     },
+    //鏂板鍑哄叆澧冭瘉浠剁殑淇濆瓨
     submitDataScope4: function() {
 
       let ul = this.fileList.map(function (elem){
@@ -1264,8 +1265,8 @@
         this.formDat[key] = '';
       });
     },
+    //鏂板鍑哄浗澧冪殑淇濆瓨
     submitDataScope5: function() {
-
       let ul = this.fileList.map(function (elem){
         return elem.url.replace(process.env.VUE_APP_BASE_TRUE_API,"")
       }).join(",")
@@ -1313,6 +1314,122 @@
       });
     },
 
+    editRow(row) {
+      this.$set(row, 'isEdit', true);
+      this.$set(this.editStatus, row.id, true);
+    },
+    //淇敼鍚庣殑淇濆瓨
+    //涓汉鍩烘湰淇℃伅
+    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.individualList.url = ul+","+uls
+
+      this.$refs['elForm'].validate(valid => {
+        if (valid) {
+          if (this.individualList.userId !== undefined) {
+            updateIndividual(this.individualList).then(response => {
+              this.$modal.msgSuccess("淇敼鎴愬姛");
+              // this.open = false;
+              this.btn=false
+            });
+          } else {
+            this.$modal.msgSuccess("淇敼澶辫触");
+
+          }
+        }
+      })
+      // 鍒锋柊椤甸潰
+      window.location.reload();
+    },
+    //涓昏缁忓巻
+    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)
     {
       var file = params.file;
@@ -1442,4 +1559,8 @@
   background:center no-repeat url('../../assets/icons/add1.png') ;
   margin-left: 71vw;
 }
+.form{
+  background:center/11% no-repeat url('../../assets/icons/form.png') ;
+
+}
 </style>

--
Gitblit v1.9.1