<template>
|
<el-dialog title="个人履历" :visible.sync="open" width="50%" append-to-body>
|
<div class="app-container home">
|
<el-row :gutter="10" class="mb8">
|
<el-col :span="1.5">
|
<el-button
|
type="primary"
|
plain
|
icon="el-icon-plus"
|
size="mini"
|
@click="openEdit({},'add')"
|
v-hasPermi="['system:experts:add']"
|
>新增</el-button>
|
</el-col>
|
<!-- <right-toolbar :showSearch.sync="showSearch" @queryTable="getList"></right-toolbar>-->
|
</el-row>
|
<el-table v-loading="loading" :data="dataList">
|
<el-table-column type="index" label="序号" width="55" align="center" />
|
<el-table-column label="时间" align="center">
|
<template #default="scope">
|
{{scope.row.startTime.substring(0,7) + '~' + scope.row.endTime.substring(0,7)}}
|
</template>
|
</el-table-column>
|
<el-table-column label="单位" align="center" prop="unit" />
|
<el-table-column label="操作" align="center" class-name="small-padding fixed-width">
|
<template #default="scope">
|
<el-button
|
size="mini"
|
type="text"
|
icon="el-icon-edit"
|
@click="openEdit(scope.row,'edit')"
|
>编辑</el-button>
|
<el-button
|
size="mini"
|
type="text"
|
icon="el-icon-delete"
|
@click="handleDelete(scope.row,scope.index)"
|
v-hasPermi="['system:experts:remove']"
|
>删除</el-button>
|
</template>
|
</el-table-column>
|
</el-table>
|
<el-dialog :title="title" :visible.sync="dialogVisible" width="50%" append-to-body>
|
<el-form :model="form" :rules="rules" ref="ruleForm" label-width="200px">
|
<el-row>
|
<el-col :span="20">
|
<el-form-item label="工作时间" prop="timeRange">
|
<el-date-picker
|
v-model="form.timeRange"
|
@change="changeTime"
|
type="monthrange"
|
range-separator="至"
|
start-placeholder="开始月份"
|
end-placeholder="结束月份"
|
value-format="yyyy-MM-01"
|
style="width: 100%">
|
</el-date-picker>
|
</el-form-item>
|
</el-col>
|
</el-row>
|
<el-row>
|
<el-col :span="20">
|
<el-form-item label="单位" prop="unit">
|
<el-input v-model="form.unit"></el-input>
|
</el-form-item>
|
</el-col>
|
</el-row>
|
</el-form>
|
<div style="width: 100%;padding-bottom: 30px;display: flex;justify-content: center">
|
<el-button type="primary" @click="submit()">提交</el-button>
|
</div>
|
</el-dialog>
|
</div>
|
</el-dialog>
|
</template>
|
|
<script>
|
import {addResume, editResume, delResume} from "@/api/coalMine/people";
|
|
export default {
|
name: "experienceDialog",
|
dicts: [],
|
components: { },
|
data() {
|
return {
|
open: false,
|
id: null,
|
dialogVisible: false,
|
title: '新增履历',
|
loading: false,
|
dataList: [],
|
form: {
|
id: null,
|
staffId: null,
|
timeRange: [],
|
startTime: '',
|
endTime: '',
|
unit: ''
|
},
|
rules: {
|
timeRange: [{ required: true, message: "请选择时间段", trigger: "blur" }],
|
// startTime: [{ required: true, message: "请选择开始时间", trigger: "blur" }],
|
// endTime: [{ required: true, message: "请选择结束时间", trigger: "blur" }],
|
unit: [{ required: true, message: "请填写单位", trigger: "blur" }]
|
}
|
};
|
},
|
created() {
|
|
},
|
methods: {
|
openDialog(data){
|
this.dataList = data.cmStaffResumes
|
this.id = data.id
|
this.open = true
|
},
|
openEdit(data,type){
|
this.dialogVisible = true
|
if(type == 'add'){
|
this.title='新增履历'
|
this.form = {
|
id: null,
|
staffId: this.id,
|
timeRange: [],
|
startTime: '',
|
endTime: '',
|
unit: ''
|
}
|
}else {
|
this.title='编辑履历'
|
this.form.id = data.id
|
this.form.staffId = data.staffId
|
this.form.startTime = data.startTime
|
this.form.endTime = data.endTime
|
this.form.timeRange[0] = data.startTime
|
this.form.timeRange[1] = data.endTime
|
this.form.unit = data.unit
|
console.log(this.form.timeRange,'range')
|
}
|
},
|
handleDelete(row,index){
|
this.$confirm('此操作将永久删除该条数据, 是否继续?', '提示', {
|
confirmButtonText: '确定',
|
cancelButtonText: '取消',
|
type: 'warning'
|
}).then(async () => {
|
const res = await delResume(row.id)
|
if(res.code == 200){
|
this.$message({
|
type: 'success',
|
message: '删除成功!'
|
});
|
this.dialogVisible = false
|
this.open = false
|
this.$emit('closeDialog')
|
}else{
|
this.$message({
|
type: 'warning',
|
message: res.msg
|
});
|
}
|
}).catch(() => {
|
|
});
|
},
|
changeTime(value){
|
this.form.startTime = this.form.timeRange[0]
|
this.form.endTime = this.form.timeRange[1]
|
},
|
async submit(){
|
this.$refs["ruleForm"].validate(async(valid) =>{
|
if(valid) {
|
if(this.title == '新增履历'){
|
const {id,timeRange,...data} = this.form
|
const res= await addResume(data)
|
if(res.code == 200){
|
this.$message({
|
type:'success',
|
message: res.msg
|
})
|
this.dialogVisible = false
|
this.open = false
|
this.$emit('closeDialog')
|
}else{
|
this.$message({
|
type:'warning',
|
message: res.msg
|
})
|
}
|
}else{
|
const {timeRange,...data} = this.form
|
const res= await editResume(data)
|
if(res.code == 200){
|
this.$message({
|
type:'success',
|
message: res.msg
|
})
|
this.dialogVisible = false
|
this.open = false
|
this.$emit('closeDialog')
|
}else{
|
this.$message({
|
type:'warning',
|
message: res.msg
|
})
|
}
|
}
|
}else{
|
this.$message({
|
type:'warning',
|
message:'请完善必填信息'
|
})
|
}
|
})
|
},
|
getList(){
|
|
},
|
handleChange(){
|
|
},
|
handleQuery(){
|
|
},
|
resetQuery(){
|
|
},
|
}
|
};
|
</script>
|
|
<style scoped lang="scss">
|
.home {}
|
</style>
|