Tcsm
2023-07-18 b34fbeffb0d128b75ec0a91acf7fe8ac3816c597
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">
          <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,11 +235,58 @@
    <!--折叠面板-->
    <el-collapse v-model="activeNames" @change="handleChange">
      <el-collapse-item title="主要学习及工作经历" name="1">
      <!--主要学习及工作经历-->
      <el-collapse-item name="1"  >
        <template v-slot:title>
          <div class="title-wrapper">
            主要学习及工作经历
            <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="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-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">
              <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">
@@ -222,9 +295,15 @@
                size="mini"
                type="text"
                icon="el-icon-edit"
                @click="handleAdd"
                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="saveRow(scope.row)"
              >保存</el-button>
              <el-button
                size="mini"
                type="text"
@@ -232,25 +311,47 @@
                @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 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-dropdown>-->
            </template>
          </el-table-column>
        </el-table>
      </el-collapse-item>
      <el-collapse-item title="家庭成员及主要社会关系情况" name="2" >
      <!--   家庭成员及主要社会关系情况   -->
      <el-collapse-item name="2" >
        <template v-slot:title>
          <div class="title-wrapper">
            家庭成员及主要社会关系情况
            <div>
            <el-button class="button2" 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" />
          <el-table-column label="姓名" prop="nickName" sortable width="260" align="center" />
          <el-table-column label="单位及职务" prop="unit position" sortable width="260" align="center">
          <el-table-column label="与本人关系"  prop="relation" sortable width="260" align="center" >
            <template slot-scope="scope">{{scope.row.relation? scope.row.relation: '————'}}</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">
              {{scope.row.unit}}/{{scope.row.position}}
              <span v-if="scope.row.otherUnit || scope.row.otherPosition  == true">
                {{scope.row.otherUnit}}/{{scope.row.otherPosition}}
              </span>
              <span v-else>————</span>
            </template>
          </el-table-column>
          <el-table-column label="政治面貌" prop="politicalOutlook" sortable width="260" align="center"/>
          <el-table-column label="政治面貌" prop="otherPolitical" sortable width="260" align="center">
            <template slot-scope="scope">{{scope.row.otherPolitical? scope.row.otherPolitical: '————'}}</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
@@ -264,13 +365,13 @@
                size="mini"
                type="text"
                icon="el-icon-delete"
                @click="handleCertificateDelete(scope.row)"
                @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 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-dropdown>-->
            </template>
          </el-table-column>
        </el-table>
@@ -299,23 +400,121 @@
        </div>
      </el-collapse-item>
      <el-collapse-item title="持有出入境证件情况" name="4">
      <!--持有出入境证件情况-->
      <el-collapse-item  name="4">
        <template v-slot:title>
          <div class="title-wrapper">
            持有出入境证件情况
            <el-button class="button4" 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="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-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">
            <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>
          </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"
                v-if="scope.row.isEdit"
                @click="handleEdit"
                v-hasPermi="['system:role:edit']"
              >修改</el-button>
              <el-button v-if="scope.row.isEdit" @click="saveRow(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>
              <!--              <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>-->
            </template>
          </el-table-column>
        </el-table>
      </el-collapse-item>
      <el-collapse-item title="出国(境)情况" name="5">
      <!--出国(境)情况-->
      <el-collapse-item  name="5">
        <template v-slot:title>
          <div class="title-wrapper">
            出国(境)情况
            <el-button class="button5" 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="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-table-column label="起止日期" prop="startTime endTime" sortable width="350" 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>
          </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>
          <el-table-column label="事由(旅游、走访、探亲、继承财产、其他)" prop="cause" sortable width="420" align="center" >
            <template slot-scope="scope">{{scope.row.cause? scope.row.cause: '————'}}</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>-->
            </template>
          </el-table-column>
        </el-table>
      </el-collapse-item>
    </el-collapse>
@@ -325,42 +524,26 @@
      <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" >
        <el-tab-pane v-for="(item, index) in AutobiographyList"
                     :key='item.id' :label="item.ageBegin+'~'+item.ageEnd+'岁'+'('+item.term+')'">
          <div v-if="item.term === '婴儿'"> {{item.content}}</div>
          <div v-if="item.term === '幼儿'"> {{item.content}}</div>
          <div v-if="item.term === '小学'"> {{item.content}}</div>
          <div v-if="item.term === '初中'"> {{item.content}}</div>
          <div v-if="item.term === '高中'"> {{item.content}}</div>
          <div v-if="item.term === '大学'"> {{item.content}}</div>
          <div v-if="item.term === '研究生'"> {{item.content}}</div>
          <div v-if="item.term === '工作'"> {{item.content}}</div>
          <div v-if="item.term === '结婚后'"> {{item.content}}</div>
        </el-tab-pane>
<!--        <el-tab-pane label="婴儿"  >-->
<!--          <div v-if="AutobiographyList.term === '婴儿'" v-model="AutobiographyList.content">-->
<!--            {{AutobiographyList.content}}-->
<!--          </div>-->
<!--        </el-tab-pane>-->
<!--        <el-tab-pane label="3~6岁(幼儿期)" name="2" ></el-tab-pane>-->
<!--        <el-tab-pane label="6~12(小学)" name="3" ></el-tab-pane>-->
<!--        <el-tab-pane label="12~15(初中)" name="4"></el-tab-pane>-->
<!--        <el-tab-pane label="15~18(高中)" name="5"></el-tab-pane>-->
<!--        <el-tab-pane label="18~22(大学)" name="6"></el-tab-pane>-->
<!--        <el-tab-pane label="22~25(研究生)" name="7"></el-tab-pane>-->
<!--        <el-tab-pane label="26~ (工作)" name="8"></el-tab-pane>-->
<!--        <el-tab-pane label="?岁结婚" name="9"></el-tab-pane>-->
<!--        &lt;!&ndash;    </div>&ndash;&gt;-->
<!--        &lt;!&ndash;        <el-tab-pane&ndash;&gt;-->
<!--        &lt;!&ndash;          v-for="(item, index) in AutobiographyTermList"&ndash;&gt;-->
<!--        &lt;!&ndash;          :key="index"&ndash;&gt;-->
<!--        &lt;!&ndash;          :name="item"&ndash;&gt;-->
<!--        &lt;!&ndash;          :label="item"&ndash;&gt;-->
<!--        &lt;!&ndash;        />&ndash;&gt;-->
      </el-tabs>
      <div style='position: relative;'>
        <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 v-if="item.term === '婴儿'"> {{item.content}}</div>
            <div v-if="item.term === '幼儿'"> {{item.content}}</div>
            <div v-if="item.term === '小学'"> {{item.content}}</div>
            <div v-if="item.term === '初中'"> {{item.content}}</div>
            <div v-if="item.term === '高中'"> {{item.content}}</div>
            <div v-if="item.term === '大学'"> {{item.content}}</div>
            <div v-if="item.term === '研究生'"> {{item.content}}</div>
            <div v-if="item.term === '工作'"> {{item.content}}</div>
            <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>-->
      </div>
    </div>
@@ -372,14 +555,17 @@
      @pagination="getList"
    />
    <!-- 修改主要经历信息配置对话框 -->
    <el-dialog :title="title" :visible.sync="open" width="900px" append-to-body>
      <el-form ref="elForm" :model="formDat" :rules="rules" size="medium" label-width="140px">
        <el-form-item label="起止日期" prop="startDate">
          <el-input v-model="formDat.startDate" placeholder="请输入起止日期" clearable :style="{width: '100%'}" ></el-input>
    <!-- 新增主要经历信息配置对话框 -->
    <el-dialog :title="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-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" placeholder="请输入主要学习经历、工作单位及任职情况" clearable :style="{width: '100%'}" >
          <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">
@@ -391,12 +577,138 @@
      <h4 class="form-header"> </h4>
      <div slot="footer" class="dialog-footer">
        <el-button type="primary" @click="submitForm">保 存</el-button>
        <el-button type="primary" @click="submitDataScope">保 存</el-button>
        <el-button @click="cancelData">取 消</el-button>
      </div>
    </el-dialog>
    <!-- 新增家庭成员及主要社会关系情况信息配置对话框 -->
    <el-dialog :title="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="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-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-input v-model="formDat.startTime" 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-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="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-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" type='date' placeholder='选择日期' clearable :style="{width: '100%'}" >
          </el-input>
        </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="title" :visible.sync="dialogVisible.autobiography" width="900px" >
      <el-col >
        <el-form ref="elForm" :model="AutobiographyList" :rules="rules" size="medium"  label-position="left"
                 v-loading="loading" :data="AutobiographyList" @selection-change="handleSelectionChange" >
          <el-row :span="5">
            <el-form-item label="年龄段:" prop="ageBegin ageEnd" label-width="70px">
              <el-input v-model="AutobiographyList.ageBegin" placeholder="" clearable :style="{width: '20%'}" >
              </el-input>
              <span> 岁 ——</span>
              <el-input v-model="AutobiographyList.ageEnd" placeholder="" clearable :style="{width: '20%'}" >
              </el-input>
              <span> 岁 </span>
          </el-form-item>
            <el-form-item label="时期:" prop="term">
              <el-select v-model="formDat.type" 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-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>
@@ -409,19 +721,17 @@
//在system/note/index.js中导入接口函数  --接好了
import {getIndividualList, getIndividualRelation, delIndividual, updateIndividual, addIndividual,listExperience,updateExperience,
  addExperience,delExperience} from "@/api/self/index";
import {
  delCertificate,
  getAbroadList,
  getAutobiography,
  getAutobiographyList,
  getAutobiographyTermList,
  getCertificateList
} from "@/api/self/index"
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 { delFamilyevent, uploadPic } from '../../api/bignote'
import { blobValidate } from '../../utils/ruoyi'
import {getCategory} from "@/api/self/index";
export default {
  name: "show",
@@ -446,12 +756,16 @@
      //头像上传
      showBtnDealImg:true,
      noneBtnImg:false,
      limitCountImg:1,//上传图片的最大数量
      //上传图片的最大数量
      limitCountImg:1,
      //个人信息数据
      individualList:[],
      fit:['fill'],
      isEditing: false,
      // fit:['fill'],
      // 个人经历数据
      experienceList: [],
      // isEdit:true,
      editStatus: {},
      //家庭成员关系数据
      relationList:[],
      //出入境证件情况
@@ -477,11 +791,19 @@
      // current: 0,
      //下拉实现
      activeNames:['1'],
      activeNames:'',
      dialogVisible: {
        open: false,
        relation1:false,
        certificate:false,
        abroad:false,
        autobiography:false
      },
      // 弹出层标题
      title: "",
      // 是否显示弹出层
      open: false,
      // open:true,
      // 是否显示弹出层(数据权限)
      openDataScope: false,
@@ -532,19 +854,31 @@
        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: [],
@@ -589,7 +923,7 @@
        }],
        maritalStatus: [{
          // required: true,
          message: '请输入民族',
          message: '请输入婚姻状况',
          trigger: 'blur'
        }],
        locationAddress: [{
@@ -629,9 +963,14 @@
          message: '请输入起始日期',
          trigger: 'blur'
        }],
        endDate: [{
          // required: true,
          message: '请输入结束日期',
          trigger: 'blur'
        }],
        content: [{
          required: true,
          message: '请输入主要学习经历、工作单位及任职情况',
          // required: true,
          message: '请输入',
          trigger: 'blur'
        }],
        witness: [{
@@ -641,22 +980,43 @@
        }],
      },
      typeOptions: [],
      typeOptions:[],
      typeOption: [{
        value:'护照',
        label:'护照'
      },{
        value:'通行证',
        label:'通行证'
      },{
        value:'身份证',
        label:'身份证'
      }],
    };
  },
  created() {
    this.getList();
    this.getAutobiographyInfor()
    // this.experienceList.forEach(item => {
    //   this.$set(this.editStatus, item.id, false);
    // });
  },
  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.reset();
    },
    //下拉
    handleChange(val) {
      console.log(val);
    handleChange(activeNames) {
      // console.log(val);
      this.reset();
    },
    showDialog(dialogName) {
      this.dialogVisible[dialogName] = true;
    },
    //个人自传
@@ -674,7 +1034,18 @@
        return "statistics-warning-row";
      }
    },
    //证件类别
    getSrc(type) {
      if (type === '护照'){
        return '护照'
      }else if(type === '通行证'){
        return '通行证'
      }else if(type === '身份证'){
        return '身份证'
      }else {
        return '——————'
      }
    },
    /** 查询角色列表 */
    getList() {
@@ -747,7 +1118,6 @@
    //图片的上传及上传按钮隐藏
    // 取消按钮
    cancel() {
      this.open = false;
@@ -759,6 +1129,7 @@
      this.reset();
    },
    //个人基本信息
    submitForm() {
      let ul = this.fileList.map(function (elem){
        return elem.url.replace(process.env.VUE_APP_BASE_TRUE_API,"")
@@ -766,14 +1137,12 @@
      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.individualList.url = ul+","+uls
      this.$refs['elForm'].validate(valid => {
        if (valid) {
          if (this.formDat.id != undefined) {
            updateIndividual(this.formDat).then(response => {
          if (this.individualList.userId !== undefined) {
            updateIndividual(this.individualList).then(response => {
              this.$modal.msgSuccess("修改成功");
              // this.open = false;
              this.btn=false
@@ -784,10 +1153,45 @@
          }
        }
      })
      // 刷新页面
      window.location.reload();
    },
    //主要经历
    editRow(row) {
      this.$set(row, 'isEdit', true);
      this.$set(this.editStatus, row.id, true);
    },
    saveRow(row) {
      // 在这里处理保存修改后的数据的逻辑,可以发送给后端保存
      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.experienceList.url = ul+","+uls
      this.$refs['elForm'].validate(valid => {
        if (valid) {
          if (this.experienceList.id !== undefined) {
            updateExperience(this.experienceList).then(response => {
              this.$modal.msgSuccess("修改成功");
              // this.open = false;
              // this.btn=false
            });
          } else {
            this.$modal.msgSuccess("修改失败");
          }
        }
      })
      this.$set(row, 'isEdit', false);
      this.$set(this.editStatus, row.id, false);
    },
    // 表单重置
    reset() {
      if (this.$refs.menu != undefined) {
      if (this.$refs.menu !== undefined) {
        this.$refs.menu.setCheckedKeys([]);
      }
      this.menuExpand = false,
@@ -834,6 +1238,11 @@
    //   this.title = "添加个人信息";
    // },
    //个人记事本
    toMemo(row){
      const id = row.userId;
      this.$router.push("/self/self/memo/" + id);
    },
    /** 查看详细信息 */
    handleCheck(row){
@@ -884,13 +1293,14 @@
      this.btn = true
      this.isShow=false
      this.isShow_2=true
      this.isEditing=true
      // this.isEdit=false
    },
    //修改按钮
    /** 修改按钮操作 */
    /** 新增按钮操作 */
    handleAdd() {
      this.reset();
      this.open = true;
      this.title = "修改详细信息";
      // this.open = true;
      this.title = "新增详细信息";
    },
    /** 查询自传信息 */
    getAutobiographyInfor()
@@ -913,17 +1323,118 @@
        return elem.url.replace(process.env.VUE_APP_BASE_TRUE_API,"")
      }).join(",")
      this.formDat.url = ul+","+uls
      this.$refs["elForm"].validate(valid => {
        if (valid) {
          addIndividual(this.formDat).then(response => {
          addExperience(this.formDat).then(response => {
            this.$modal.msgSuccess("新增成功");
            this.open = false;
            this.dialogVisible.open = false;
            this.getList();
          });
        }
      });
      // 清空formDat对象的数据
      Object.keys(this.formDat).forEach(key => {
        this.formDat[key] = '';
      });
    },
    submitDataScope2: function() {
      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) {
          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() {
      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) {
          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() {
      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) {
          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() {
      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) {
          addAutobiography(this.formDat).then(response => {
            this.$modal.msgSuccess("新增成功");
            this.dialogVisible.autobiography = false;
            this.getList();
          });
        }
      });
      // 清空formDat对象的数据
      Object.keys(this.formDat).forEach(key => {
        this.formDat[key] = '';
      });
    },
    requestUpload(params)
    {
      var file = params.file;
@@ -947,11 +1458,24 @@
      })
    },
    //修改主要经历
    /** 删除个人经历按钮操作 */
    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("删除成功");
@@ -960,13 +1484,24 @@
    /** 删除持有出入境证件情况按钮操作 */
    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(() => {});
    },
    /** 导出按钮操作 */
    handleExport() {
      this.download('/self/user/export', {
@@ -1007,4 +1542,32 @@
.el-collapse-item__header {
  background-color:#FEF7FC;
}
.title-wrapper {
  display: flex;
  justify-content: space-between;
}
.btn_autobiography{
  background:center no-repeat url('../../assets/icons/add1.png') ;
}
.button {
  background:center no-repeat url('../../assets/icons/add1.png') ;
  margin-left: 69.5vw;
}
.button2 {
  background: center no-repeat url('../../assets/icons/add1.png') ;
  margin-left: 66vw;
}
.button4 {
  background: center no-repeat url('../../assets/icons/add1.png') ;
  margin-left: 69.5vw;
}
.button5 {
  background:center no-repeat url('../../assets/icons/add1.png') ;
  margin-left: 71vw;
}
.form{
  background:center/11% no-repeat url('../../assets/icons/form.png') ;
}
</style>