Tcsm
2023-04-24 3b27872f10a6618af42fd86ff5c4602894fab589
ruoyi-ui/src/views/self/show.vue
@@ -1,29 +1,34 @@
<template>
  <div class="app-container">
    <!--    回到顶部-->
    <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>
    <el-divider />
<!--    基本信息-->
    <!--    基本信息-->
    <h2 style="font-size:16px">基本信息</h2>
    <el-container>
      <div style="padding-left:30px">
      <div >
        <el-container >
          <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="7">
              <el-row :span="5">
                <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="7">
              <el-row :span="5">
                <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="7">
              <el-row :span="5">
                <el-form-item label="身份证号" prop="idNum" label-width="70px">
                  <el-input v-model="individualList.idNum" placeholder="" clearable :style="{width: '100%'}" :disabled="dsb">
                  </el-input>
@@ -33,23 +38,23 @@
          </el-col>
        </el-container>
      </div>
      <div style="padding-left:70px">
      <div style="padding-left:30px">
        <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="6">
              <el-row :span="5">
                <el-form-item label="性别" prop="sex" label-width="40px">
                  <el-input v-model="individualList.sex" placeholder="" clearable :style="{width: '100%'}" :disabled="dsb">
                  <el-input v-model="individualList.sex === 1 ? '男':'女' " placeholder="" clearable :style="{width: '100%'}" :disabled="dsb">
                  </el-input>
                </el-form-item>
              </el-row>
              <el-row :span="6">
              <el-row :span="5">
                <el-form-item label="民族" prop="nation"label-width="40px">
                  <el-input v-model="individualList.nation" placeholder="" clearable :style="{width: '100%'}":disabled="dsb">
                  </el-input>
                </el-form-item>
              </el-row>
              <el-row :span="8">
              <el-row :span="5">
                <el-form-item label="联系方式" prop="phoneNumber" label-width="70px">
                  <el-input v-model="individualList.phoneNumber" placeholder="" clearable :style="{width: '100%'}":disabled="dsb">
                  </el-input>
@@ -59,19 +64,19 @@
          </el-col>
        </el-container>
      </div>
      <div style="padding-left:70px">
      <div style="padding-left:30px">
        <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">
              <el-row :span="6">
              <el-row :span="5">
                <el-form-item label="国籍" prop="nationality" label-width="40px">
                  <el-input v-model="individualList.nationality" placeholder="" clearable :style="{width: '100%'}" :disabled="dsb">
                  </el-input>
                </el-form-item>
              </el-row>
              <el-row :span="6">
              <el-row :span="5">
                <el-form-item label="婚姻状况" prop="maritalStatus" label-width="70px">
                  <el-input v-model="individualList.maritalStatus" placeholder="" clearable :style="{width: '100%'}" :disabled="dsb">
                  <el-input v-model="individualList.maritalStatus === 1 ? '已婚':'未婚'" placeholder="" clearable :style="{width: '100%'}" :disabled="dsb">
                  </el-input>
                </el-form-item>
              </el-row>
@@ -80,101 +85,98 @@
          </el-col>
        </el-container>
      </div>
      <div style="padding-left:90px;padding-top:30px">
      <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">
          <div class="block" :model="individualList" >
            <el-col v-model="individualList.url" prop="url">
              <el-avatar shape="square" :size=200 >
                <el-image
                  :src="'http://47.93.189.255:8080/'+ individualList.url"
                  :fit="fit"
                ></el-image>
              </el-avatar>
              </el-col>
            </div>
            </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;-->
        <!--        <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>-->
        <!--&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:50px;padding-top:30px"  >
      <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 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>-->
          <!--          </template>-->
          <el-row :span="2" style="flex-direction: column;">
          <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-->
<!--              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>-->
            <br>
              <el-button
                type="primary"
                @click="handleExport"
                v-hasPermi="['self:user:export']"
              >导出</el-button>
            <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>-->
      <!--      </el-dialog> self:user:export-->
    </el-container>
    <el-container>
      <div style="padding-left:30px">
      <div>
        <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">
@@ -229,7 +231,7 @@
      </div>
    </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">
@@ -250,7 +252,7 @@
                size="mini"
                type="text"
                icon="el-icon-delete"
                @click="handleDelete(scope.row)"
                @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']">
@@ -284,7 +286,7 @@
                size="mini"
                type="text"
                icon="el-icon-delete"
                @click="handleDelete(scope.row)"
                @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']">
@@ -338,17 +340,17 @@
      </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">-->
               v-loading="loading" :data="AutobiographyList" @selection-change="handleSelectionChange">
        <!--        <el-tab-pane label="总览" name="0">-->
<!--        </el-tab-pane>-->
<!--        <div :model="AutobiographyList">-->
        <!--        </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>
@@ -360,13 +362,13 @@
        <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"-->
<!--        />-->
        <!--    </div>-->
        <!--        <el-tab-pane-->
        <!--          v-for="(item, index) in AutobiographyTermList"-->
        <!--          :key="index"-->
        <!--          :name="item"-->
        <!--          :label="item"-->
        <!--        />-->
      </el-tabs>
@@ -396,6 +398,7 @@
import {getIndividualList, getIndividualRelation, delIndividual, updateIndividual, addIndividual,listExperience,updateExperience,
  addExperience,delExperience} from "@/api/self/index";
import {
  delCertificate,
  getAbroadList,
  getAutobiography,
  getAutobiographyList,
@@ -720,12 +723,12 @@
      );
      //出国情况
      getAbroadList(this.queryParams).then(response => {
        //  alert(123)
        //   console.log(response.data)
        this.AbroadList = response.data;
        this.total = response.data.total;
        this.loading = false;
      }
          //  alert(123)
          //   console.log(response.data)
          this.AbroadList = response.data;
          this.total = response.data.total;
          this.loading = false;
        }
      );
@@ -743,6 +746,33 @@
    cancelDataScope() {
      this.openDataScope = false;
      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() {
@@ -787,17 +817,17 @@
    },
    /** 新增按钮操作 */
    handleAdd() {
      this.reset();
      this.open = true;
      this.title = "添加家庭大事记信息";
    },
    // handleAdd() {
    //   this.reset();
    //   this.open = true;
    //   this.title = "添加个人信息";
    // },
    /** 查看详细信息 */
    handleCheck(row){
      const id = row.id;
      this.$router.push("/family1/bignote/familyeventInfo/" + id);
      this.$router.push("/self/self/edit/" + id);
    },
    /** 修改按钮操作 */
    handleUpdate(row) {
@@ -805,7 +835,7 @@
      let jd = true
      this.$router.push({
        path:"/self/self/edit" + id,
        path:"/self/self/edit/" + id,
        query:{
          detail:jd
        }
@@ -816,7 +846,7 @@
      alert(23)
    },
    handleRemove(file) {
      alert(323)
      alert("操作成功")
    },
    handlePictureCardPreview(file) {
      this.dialogImageUrl = file.url;
@@ -835,6 +865,12 @@
        const blob = new Blob([response])
        saveAs(blob, filename)
      })
    },
    //编辑按钮
    handleEdit()
    {
      this.dsb = false
      this.btn = true
    },
    /** 查询自传信息 */
@@ -861,10 +897,10 @@
      this.$refs["elForm"].validate(valid => {
        if (valid) {
          addFamilyevent(this.formDat).then(response => {
          addIndividual(this.formDat).then(response => {
            this.$modal.msgSuccess("新增成功");
            this.open = false;
            this.getList1();
            this.getList();
          });
        }
      });
@@ -892,13 +928,23 @@
      })
    },
    /** 删除按钮操作 */
    handleDelete(row) {
    /** 删除个人经历按钮操作 */
    handleExperienceDelete(row) {
      const Ids = row.id || this.ids;
      this.$modal.confirm('是否确认删除序号为"' + Ids + '"的数据项?').then(function() {
        return delFamilyevent(Ids);
        return delExperience(Ids);
      }).then(() => {
        this.getList1();
        this.getList();
        this.$modal.msgSuccess("删除成功");
      }).catch(() => {});
    },
    /** 删除持有出入境证件情况按钮操作 */
    handleCertificateDelete(row) {
      const Ids = row.id || this.ids;
      this.$modal.confirm('是否确认删除序号为"' + Ids + '"的数据项?').then(function() {
        return delCertificate(Ids);
      }).then(() => {
        this.getList();
        this.$modal.msgSuccess("删除成功");
      }).catch(() => {});
    },
@@ -912,13 +958,19 @@
};
</script>
<style>
.uoloadSty {
  width:110px;
  height:110px;
  line-height:110px;
<style scoped>
/*.uoloadSty {*/
/*  width:110px;*/
/*  height:110px;*/
/*  line-height:110px;*/
/*}*/
/*.disUoloadSty {*/
/*  display:none;   !* 上传按钮隐藏 *!*/
/*}*/
.el-icon-top {
  background: url("../../assets/icons/top.png");
}
.disUoloadSty {
  display:none;   /* 上传按钮隐藏 */
}
</style>