<template>
|
<div class="app-container">
|
<el-col :span="6">
|
<el-input size="medium" v-model="input" placeholder="搜索" clearable>
|
<i slot="prefix" class="el-input__icon el-icon-search"></i>
|
</el-input>
|
</el-col>
|
<br>
|
<h1 style="font-size:21px">个人简历</h1>
|
<el-divider />
|
<h2 style="font-size:16px">基本信息</h2>
|
|
<el-container>
|
<div style="padding-left:30px">
|
<el-container>
|
<el-col>
|
<el-form ref="elForm" :model="formData" :rules="rules" size="medium" label-width="60px" label-position="left">
|
<el-row :span="6">
|
<el-form-item label="姓名" prop="nickName">
|
<el-input v-model="formData.nickName" placeholder="请输入姓名" clearable :style="{width: '100%'}">
|
</el-input>
|
</el-form-item>
|
</el-row>
|
<el-row :span="6">
|
<el-form-item label="曾用名" prop="oldName">
|
<el-input v-model="formData.oldName" placeholder="请输入曾用名" clearable :style="{width: '100%'}">
|
</el-input>
|
</el-form-item>
|
</el-row>
|
<el-row :span="8">
|
<el-form-item label="身份证号" prop="field107">
|
<el-input v-model="formData.field107" placeholder="请输入身份证号" clearable :style="{width: '100%'}">
|
</el-input>
|
</el-form-item>
|
</el-row>
|
</el-form>
|
</el-col>
|
</el-container>
|
</div>
|
<div style="padding-left:70px">
|
<el-container>
|
<el-col >
|
<el-form ref="elForm" :model="formData" :rules="rules" size="medium" label-width="60px" label-position="left">
|
<el-row :span="6">
|
<el-form-item label="性别" prop="sex">
|
<el-input v-model="formData.sex" placeholder="请输入性别" clearable :style="{width: '100%'}">
|
</el-input>
|
</el-form-item>
|
</el-row>
|
<el-row :span="6">
|
<el-form-item label="民族" prop="field105">
|
<el-input v-model="formData.field105" placeholder="请输入民族" clearable :style="{width: '100%'}">
|
</el-input>
|
</el-form-item>
|
</el-row>
|
<el-row :span="8">
|
<el-form-item label="联系方式" prop="field107">
|
<el-input v-model="formData.field107" placeholder="请输入联系方式" clearable :style="{width: '100%'}">
|
</el-input>
|
</el-form-item>
|
</el-row>
|
</el-form>
|
</el-col>
|
</el-container>
|
</div>
|
<div style="padding-left:70px">
|
<el-container>
|
<el-col>
|
<el-form ref="elForm" :model="formData" :rules="rules" size="medium" label-width="60px" label-position="left">
|
<el-row :span="6">
|
<el-form-item label="国籍" prop="nationality">
|
<el-input v-model="formData.nationality" placeholder="请输入国籍" clearable :style="{width: '100%'}">
|
</el-input>
|
</el-form-item>
|
</el-row>
|
<el-row :span="6">
|
<el-form-item label="婚姻状况" prop="maritalStatus">
|
<el-input v-model="formData.maritalStatus" placeholder="请输入婚姻状况" clearable :style="{width: '100%'}">
|
</el-input>
|
</el-form-item>
|
</el-row>
|
|
</el-form>
|
</el-col>
|
</el-container>
|
</div>
|
<div style="padding-left:70px;padding-top:30px">
|
<el-row :gutter="6" >
|
<el-upload ref="ref1"
|
action=""
|
:file-list="fileList"
|
list-type="picture-card"
|
accept="image/*"
|
:auto-upload="false"
|
:multiple="false"
|
:limit="1">
|
<i class="el-icon-plus"></i>
|
</el-upload>
|
</el-row>
|
</div>
|
<div style="padding-left:50px;padding-top:30px" >
|
<el-container>
|
<el-row :span="2" style="flex-direction: column;">
|
<el-button type="primary" @click="submitForm">编辑</el-button>
|
<br>
|
<el-button type="primary" @click="submitForm">导入</el-button>
|
</el-row>
|
</el-container>
|
</div>
|
</el-container>
|
<el-container>
|
<div style="padding-left:30px">
|
<el-container>
|
<el-col>
|
<el-form ref="elForm" :model="formData" :rules="rules" size="medium" label-width="100px" label-position="left">
|
<el-row :span="15">
|
<el-form-item label="户籍地址" prop="field108">
|
<el-input v-model="formData.field108" placeholder="请输入户籍地址" clearable :style="{width: '100%'}">
|
</el-input>
|
</el-form-item>
|
</el-row>
|
<el-row :span="15">
|
<el-form-item label="常住地址" prop="field110">
|
<el-input v-model="formData.field110" placeholder="请输入常住地址" clearable :style="{width: '100%'}">
|
</el-input>
|
</el-form-item>
|
</el-row>
|
<el-row :span="15">
|
<el-form-item label="单位及职务职称" prop="field112">
|
<el-input v-model="formData.field112" placeholder="请输入单位及职务职称" clearable :style="{width: '100%'}">
|
</el-input>
|
</el-form-item>
|
</el-row>
|
|
</el-form>
|
</el-col>
|
</el-container>
|
</div>
|
<div style="padding-left:30px">
|
<el-container>
|
<el-col>
|
<el-form ref="elForm" :model="formData" :rules="rules" size="medium" label-width="100px" label-position="left">
|
<el-row :span="12">
|
<el-form-item label="户籍地公安机关" prop="field109">
|
<el-input v-model="formData.field109" placeholder="请输入户籍地公安机关" clearable :style="{width: '100%'}">
|
</el-input>
|
</el-form-item>
|
</el-row>
|
<el-row :span="12">
|
<el-form-item label="常住地公安机关" prop="field111">
|
<el-input v-model="formData.field111" placeholder="请输入常住地公安机关" clearable :style="{width: '100%'}">
|
</el-input>
|
</el-form-item>
|
</el-row>
|
|
</el-form>
|
</el-col>
|
</el-container>
|
</div>
|
</el-container>
|
|
|
|
<el-container>
|
<div style="width:100%"><h2 style="font-size:15px" >主要学习及工作经历</h2></div>
|
<el-button type="primary" icon="el-icon-edit" round></el-button>
|
<el-button type="primary" icon="el-icon-delete" round></el-button>
|
</el-container>
|
<el-table v-loading="loading" :data="individualList" @selection-change="handleSelectionChange">
|
<el-table-column label="起止日期" prop="time" sortable width="350" align="center" />
|
<el-table-column label="主要学习经历、工作单位及任职情况" prop="circumstance" sortable width="400" align="center" />
|
<el-table-column label="证明人" prop="witness" sortable width="350" align="center" />
|
<el-table-column label="删除" align="center" class-name="small-padding fixed-width" sortable width="100">
|
<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="handleDelete(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>
|
<pagination
|
v-show="total>0"
|
:total="total"
|
:page.sync="queryParams.pageNum"
|
:limit.sync="queryParams.pageSize"
|
@pagination="getList"
|
/>
|
</div>
|
|
</template>
|
|
<script>
|
import {getIndividualInfo, getIndividualRelation, delIndividual, updateIndividual, addIndividual} from "@/api/self/index";
|
|
export default {
|
name: 'index',
|
components: {},
|
props: [],
|
|
data() {
|
return {
|
input: '',
|
filelist: [],
|
|
// 遮罩层
|
disabled: false,
|
|
loading: true,
|
// formData:[],
|
// 选中数组
|
ids: [],
|
// 非单个禁用
|
single: true,
|
// 非多个禁用
|
multiple: true,
|
// 显示搜索条件
|
showSearch: true,
|
// 总条数
|
total: 0,
|
// 资产表格数据
|
individualList: [],
|
// 弹出层标题
|
title: "",
|
// 是否显示弹出层
|
open: false,
|
// 是否显示弹出层(数据权限)
|
openDataScope: false,
|
menuExpand: false,
|
menuNodeAll: false,
|
deptExpand: true,
|
deptNodeAll: false,
|
// 日期范围
|
dateRange: [],
|
// 数据范围选项
|
fot:[".jpg",".jif"],
|
fileList:[
|
],
|
fileListOther:[
|
|
],
|
dsb:true,
|
btn:false,
|
|
formData: {
|
nickName: undefined,
|
sex: undefined,
|
nationality: undefined,
|
oldName: undefined,
|
field105: undefined,
|
maritalStatus: undefined,
|
field107: undefined,
|
field108: undefined,
|
field109: undefined,
|
field110: undefined,
|
field111: undefined,
|
field112: undefined,
|
},
|
rules: {
|
nickName: [{
|
required: true,
|
message: '请输入姓名',
|
trigger: 'blur'
|
}],
|
sex: [{
|
required: true,
|
message: '请输入性别',
|
trigger: 'blur'
|
}],
|
nationality: [{
|
required: true,
|
message: '请输入国籍',
|
trigger: 'blur'
|
}],
|
oldName: [{
|
required: true,
|
message: '请输入曾用名',
|
trigger: 'blur'
|
}],
|
field105: [{
|
required: true,
|
message: '请输入民族',
|
trigger: 'blur'
|
}],
|
maritalStatus: [{
|
// required: true,
|
message: '请输入婚姻状况',
|
trigger: 'blur'
|
}],
|
field107: [{
|
// required: true,
|
message: '请输入联系方式',
|
trigger: 'blur'
|
}],
|
field108: [{
|
// required: true,
|
message: '请输入户籍地址',
|
trigger: 'blur'
|
}],
|
field109: [{
|
// required: true,
|
message: '请输入户籍地公安机关',
|
trigger: 'blur'
|
}],
|
field110: [{
|
// required: true,
|
message: '请输入常住地址',
|
trigger: 'blur'
|
}],
|
field111: [{
|
// required: true,
|
message: '请输入常住地公安机关',
|
trigger: 'blur'
|
}],
|
field112: [{
|
// required: true,
|
message: '请输入单位及职务职称',
|
trigger: 'blur'
|
}],
|
},
|
// 菜单列表
|
menuOptions: [],
|
// 部门列表
|
deptOptions: [],
|
// 查询参数
|
queryParams: {
|
pageNum: 1,
|
pageSize: 5,
|
time:undefined,
|
circumstance:undefined,
|
witness:undefined,
|
createTime:undefined
|
},
|
}
|
},
|
computed: {},
|
watch: {},
|
created() {
|
this.getList();
|
// this.getCateInfor()
|
},
|
mounted() {},
|
methods: {
|
submitForm() {
|
this.$refs['elForm'].validate(valid => {
|
if (!valid) return
|
// TODO 提交表单
|
})
|
},
|
resetForm() {
|
this.$refs['elForm'].resetFields()
|
},
|
fillFormData(){
|
let formData = new FormData();
|
let photo = this.$refs['ref1'].uploadFiles[0];
|
if(photo===undefined){
|
this.$message.error("请选择照片");
|
return false;
|
}
|
if(photo!==undefined){
|
formData.append('照片', photo.raw);//根据后端需要的参数进行相应更改,大多是文件格式
|
}
|
return formData;
|
},
|
dialogConfirm() {
|
let formData=this.fillFormData();
|
if(this.dialogMode ==='edit'){//dialogMode用于判断当前时添加还是编辑
|
this.api.update(formData).then(res => {//调用修改接口
|
if (res.data.code == "OK") {
|
this.$message({
|
type: "success",
|
message: "修改成功!",
|
duration:5000
|
});
|
this.fileList=[];
|
} else {
|
this.$message.error(res.data.message);
|
}
|
},()=>{
|
this.$message.error("修改失败");
|
}).finally(()=>{
|
});
|
}else{
|
this.api.insert(formData).then(res => {//添加接口
|
if (res.data.code == "OK") {
|
this.$message({
|
type: "success",
|
message: "新建成功!",
|
duration:5000
|
});
|
this.fileList=[];
|
} else {
|
this.$message.error(res.data.message);
|
}
|
},()=>{
|
this.$message.error("新建失败");
|
}).finally(()=>{
|
});
|
}
|
},
|
//点击编辑时图片回显
|
edit(info){//info=>后台接口返回的数据
|
let url=this.baseUrl+info.photo//url的地址根据项目实际需要,info.photo=>图片路径,this.baseUrl=>上传的网络地址
|
this.fileList=[];
|
this.fileList.push({
|
'url': url
|
})
|
this.dialogMode='edit';//设置为编辑
|
},
|
onCreateNew(){
|
this.fileList=[];
|
this.dialogMode='create';//设置为添加
|
},
|
/** 个人信息列表 */
|
getList() {
|
this.loading = true;
|
// console.log(this.queryParams)
|
// listProperty(this.addDateRange(this.queryParams, this.dateRange)).then(response => {
|
listIndividual(this.queryParams).then(response => {
|
// alert(123)
|
// console.log(response.data)
|
this.individualList = response.data.data;
|
|
this.total = response.data.total;
|
this.loading = false;
|
}
|
);
|
},
|
|
/** 删除按钮操作 */
|
handleDelete(row) {
|
const Ids = row.id || this.ids;
|
this.$modal.confirm('是否确认删除编号为"' + Ids + '"的数据项?').then(function() {
|
return delProperty(Ids);
|
}).then(() => {
|
this.getList();
|
this.$modal.msgSuccess("删除成功");
|
}).catch(() => {});
|
},
|
/** 查看详细信息 */
|
handleCheck(row){
|
const id = row.id;
|
this.$router.push("/family/note1/propertyInfo/" + id);
|
},
|
}
|
}
|
</script>
|
|
<style scoped>
|
|
</style>
|