Commit 2580a21d by yangchao

update

1 parent 8eb09c66
......@@ -50,4 +50,15 @@ export function getJobClassify(data) {
})
}
//投递拒绝原因
export function applyRefuseReasons(data) {
return request({
url: 'recruit/common/applyRefuseReasons',
method: 'post',
data: data,
source : 'zp'
})
}
......@@ -3,7 +3,7 @@ import request from '@/utils/request'
//面试邀请列表
export function interviewList (data) {
return request({
url: 'design/myTemplate/lists' ,
url: 'recruit/interview/list' ,
method : 'post' ,
data : data ,
source : 'zp'
......@@ -22,7 +22,7 @@ export function interviewDetail (data) {
//面试邀请处理
export function interviewDispose (data) {
return request({
url: 'design/myTemplate/lists' ,
url: 'recruit/interview/ask' ,
method : 'post' ,
data : data ,
source : 'zp'
......
......@@ -13,7 +13,7 @@ export function resumeList (data) {
//简历详情
export function resumeDetail (data) {
return request({
url: 'design/myTemplate/lists' ,
url: 'recruit/cv/info' ,
method : 'post' ,
data : data ,
source : 'zp'
......
<template>
<div>
<el-upload class="upload-pic" action="//upload.qiniup.com" :data="form" :limit="1" multiple
<el-upload class="upload-pic" action="//upload.qiniup.com" :data="form" :limit="66" multiple
:file-list="fileList" :on-error="handleErrorpics" :on-success="handleSuccesspics"
:before-upload="beforeUploadpics" list-type="picture-card"
:on-preview="handlePictureCardPreview" :on-remove="handleRemove" accept="image/*">
......@@ -8,11 +8,12 @@
</el-upload>
<el-dialog :visible.sync="dialogVisible" width="40%" center>
<div style="display: flex;align-items: center;flex-direction: row;">
<!-- <div @click="toBeforeImg(imgIndex)"> 前移</div>-->
<!-- <div @click="toBeforeImg(imgIndex)"> 前移</div>-->
<img width="80%" :src="dialogImageUrl" alt="" class="img">
<!-- <div @click="toAfterImg(imgIndex)"> 后移</div>-->
<!-- <div @click="toAfterImg(imgIndex)"> 后移</div>-->
</div>
</el-dialog>
<!-- <p class="info">建议尺寸:750*750,小于1M,最多上传6张,建议主图背景为白色</p> -->
</div>
</template>
......@@ -35,7 +36,7 @@
dialogImageUrl: '',
dialogVisible: false,
is1M: false,
limitSize: 3, //验证图片大小,单位MB
limitSize: 1, //验证图片大小,单位MB
imgIndex: -1,
}
},
......@@ -49,6 +50,14 @@
}
},
methods: {
// toBeforeImg(index) {
// this.pics[index] = this.pics[index-1];
// console.log(this.pics);
// },
// toAfterImg(index) {
//
// },
handleImageList(fileList) {
this.pics = [];
fileList.forEach((v, i) => {
......@@ -79,7 +88,7 @@
this.is1M = file.size / 1024 / 1024 < this.limitSize;
if (!this.is1M) {
Loading.service({}).close();
this.$message.error('上传图片应小于3M');
this.$message.error('上传图片应小于1M');
return false
}
......@@ -108,6 +117,12 @@
handlePictureCardPreview(file) {
this.dialogImageUrl = file.url;
this.dialogVisible = true;
// if (file.response && file.response.domain && file.response.truekey) {
// file.url = file.response.domain + file.response.truekey;
// }
// this.imgIndex = this.pics.indexOf(file.url);
// console.log(this.imgIndex);
},
},
}
......@@ -123,20 +138,14 @@
.img {
margin: 0 auto;
height: 114px;
width: 114px;
}
.upload-pic >>> .el-upload--picture-card {
line-height: 114px;
height: 114px;
width: 114px;
line-height: 156px;
}
.upload-pic >>> .el-upload-list--picture-card .el-upload-list__item-actions {
line-height: 114px;
line-height: 144px;
left: -5px;
height: 114px;
width: 114px;
}
</style>
......@@ -33,6 +33,22 @@ export const constantRouterMap = [
},
//init
{
path: '/',
component: Layout,
redirect: '/position/list/list',
children: [
{
path: 'list',
component: _import('position/list'),
meta: {
auth: ['basic', 'generally'],
role: ['master']
}
}
]
},
//init
{
path: '/position/list',
component: Layout,
redirect: '/position/list/list',
......@@ -77,7 +93,7 @@ export const constantRouterMap = [
}
},
{
path: 'list/detail/:id',
path: 'list/detail',
component: _import('resume/detail'),
meta: {
auth: ['basic', 'generally'],
......@@ -100,7 +116,7 @@ export const constantRouterMap = [
}
},
{
path: 'list/detail/:id',
path: 'list/detail',
component: _import('recommend/detail'),
meta: {
auth: ['basic', 'generally'],
......@@ -123,7 +139,7 @@ export const constantRouterMap = [
}
},
{
path: 'list/detail/:id',
path: 'list/detail',
component: _import('interview/detail'),
meta: {
auth: ['basic', 'generally'],
......
const positionTtpe= function (res) {
let content = [];
for (let item in res.data['01']) {
content.push({
value: item,
label: res.data['01'][item]
})
}
content.forEach((v,i) => {
for(let item in res.data) {
if(v.value == item) {
v.children = [];
for(let item_1 in res.data[item]) {
v.children.push({
value: item_1,
label: res.data[item][item_1]
})
}
}
}
v.children.forEach((vv,ii)=>{
for(let item in res.data) {
if(vv.value == item) {
v.children[ii].children = [];
for(let item_1 in res.data[item]) {
v.children[ii].children.push({
value: item_1,
label: res.data[item][item_1]
})
}
}
}
})
});
return content;
}
export {positionTtpe}
......@@ -42,11 +42,11 @@ const service = axios.create({
// request interceptor
service.interceptors.request.use(config => {
if (config.source === 'apc') {
config.headers.token = getUserToken();
} else
config.headers.token = getMallToken();
config.headers.token = getUserToken();
// if (config.source === 'apc') {
// config.headers.token = getUserToken();
// } else
// config.headers.token = getMallToken();
//判断baseURL
// if (process.env.NODE_ENV === 'development')
if (config.source === 'cm') config.baseURL = store.state.testBaseURL;
......
......@@ -36,7 +36,7 @@
<div class="register-2">
<div class="title">基本信息</div>
<div class="line-style">
<div class="label">头像</div>
<div class="label">企业logo</div>
<Upload @productImgs="getPortrait" :editPics="registerInfo.portrait"></Upload>
</div>
<div class="line-style">
......@@ -84,15 +84,12 @@
style="width: 400px;"></el-input>
</div>
<div class="line-style">
<div class="label">相关证件</div>
<div class="zheng-jian">
<Upload @productImgs="getBusiness" :editPics="registerInfo.business_license_pic"></Upload>
<div class="explain">营业执照</div>
</div>
<div class="zheng-jian">
<Upload @productImgs="getLicence" :editPics="registerInfo.school_license_pic"></Upload>
<div class="explain">办学许可证</div>
</div>
<div class="label">营业执照</div>
<Upload @productImgs="getBusiness" :editPics="registerInfo.business_license_pic"></Upload>
</div>
<div class="line-style">
<div class="label">办学许可证</div>
<Upload @productImgs="getLicence" :editPics="registerInfo.school_license_pic"></Upload>
</div>
<el-button class="register-save" @click="registerBtn">提交注册</el-button>
</div>
......@@ -204,20 +201,6 @@
phone: this.loginInfo.uname
});
this.$router.push("/position/list");
// switchMallMater({
// mtoken: mtoken?mtoken:"0854089c8fa538ab3dd3d2e311b32c92",
// password: '',
// unique_id: mtoken?mtoken:'0854089c8fa538ab3dd3d2e311b32c92'
// }).then(res => {
//
// setStoreMallInfo(res.data.mallInfo);
// setStoreMallToken(res.data.authorize.token);
//
// // setMallRoles(res.data.encryptString);
// Cookies.set('logType', 1, {domain: domain});
// this.$router.push("/position/list");
// });
});
}
......@@ -442,7 +425,6 @@
business_license_pic: this.registerInfo.get_business_license_pic[0],
school_license_pic: this.registerInfo.get_school_license_pic[0]
}
console.log(data);
// return
accountEdit(data).then(res => {
if(res.error == 0) {
......
<template>
<div class="conatiner">
<p>新建基地</p>
<p>企业信息</p>
<div class="line-style">
<div class="label">基地名称:</div>
<el-input class="input" placeholder="请输入基地名称" size="small" v-model="name"></el-input>
<div class="label">企业logo:</div>
<uploadimage @productImgs="getPortrait" :editPics="registerInfo.portrait"></uploadimage>
</div>
<div class="line-style">
<div class="label">基地编号:</div>
<el-input class="input" placeholder="请输入基地编号" size="small" v-model="code"></el-input>
<div class="label">企业名称:</div>
<el-input class="input" placeholder="请输入企业名称" size="small" v-model="registerInfo.enterprise_name"></el-input>
</div>
<div class="line-style">
<div class="label">基地面积(亩):</div>
<el-input class="input" placeholder="请输入基地面积" size="small" v-model="areas"></el-input>
<div class="label">企业规模:</div>
<el-input class="input" placeholder="请输入企业人数" size="small" v-model="registerInfo.enterprise_scale"></el-input>
</div>
<div class="line-style">
<div class="label">基地负责人:</div>
<el-input class="input" placeholder="请输入基地负责人" size="small" v-model="user"></el-input>
<div class="label">企业类型:</div>
<el-input class="input" placeholder="请输入企业类型" size="small" v-model="registerInfo.enterprise_type"></el-input>
</div>
<div class="line-style">
<div class="label">企业:</div>
<el-select placeholder="请选择生产企业" size="small" class="select-item" clearable v-model='enterprise_id'>
<el-option v-for="(item,index) in enterpriseList" :key="index" :label="item.label" :value="item.value"></el-option>
</el-select>
<div class="label">企业区域:</div>
<el-cascader class="input"
size="small"
:options="regionData"
v-model="registerInfo.enterprise_area"
>
</el-cascader>
</div>
<div class="line-style">
<div class="label">基地详情:</div>
<div style="width: 600px;">
<UE @callback="getEditorHtml" :richText="detail" v-model="detail"></UE>
</div>
<div class="label">企业地址:</div>
<el-input class="input" placeholder="请输入企业地址" size="small" v-model="registerInfo.enterprise_address"></el-input>
</div>
<div class="line-style">
<div class="label">基地位置:</div>
<el-input class="input" placeholder="请输入基地位置" size="small" v-model="address"></el-input>
<div class="label">营业执照:</div>
<uploadimage @productImgs="getBusiness" :editPics="registerInfo.business_license_pic"></uploadimage>
</div>
<div class="line-style">
<div class="label">备注:</div>
<el-input class="input" placeholder="请输入备注" size="small" v-model="remark"></el-input>
<div class="label">办学许可证:</div>
<uploadimage @productImgs="getLicence" :editPics="registerInfo.school_license_pic"></uploadimage>
</div>
<div class="line-style">
<div class="label">企业描述:</div>
<el-input style="width: 500px" rows="4" type="textarea" placeholder="请输入企业描述" size="small" v-model="registerInfo.enterprise_describe"></el-input>
</div>
<div class="opration">
<el-button size="small" @click="cancel">取消</el-button>
<el-button size="small" @click="save" type="primary" class="save">保存</el-button>
</div>
</div>
</template>
<script>
import uploadimage from '../../components/Upload/index'
import uploadimage from '../../components/Upload/upload'
import {accountGet, accountEdit} from "@/api/login"
import {provinceAndCityData,regionData, CodeToText, TextToCode} from 'element-china-area-data';
export default {
name: "newPoint",
components: {
......@@ -55,63 +60,70 @@
},
data() {
return {
producerId: '',
name: '',
code: '',
areas: '',
user: '',
detail: '',
address: '',
remark: '',
enterpriseList: [],
enterprise_id: ''
regionData: regionData,
registerInfo: {
portrait: [], //头像
getPortrait: [],
duty: '', //职务
email: '',//邮箱
enterprise_name: '', //企业名称
enterprise_scale: '', //企业规模
enterprise_type: '', //企业类型
enterprise_address: '', //企业地址
enterprise_describe: '', //企业描述
enterprise_area: '', //企业区域
business_license_pic: [], //营业执照
school_license_pic: [], //办学许可证
get_business_license_pic: [], //营业执照
get_school_license_pic: [], //办学许可证
},
}
},
methods: {
cancel() {
this.$router.go(-1);
//获取头像
getPortrait(data) {
this.registerInfo.getPortrait = data;
},
//获取富文本编辑器中的内容
getEditorHtml(data) {
// console.log(data);
this.detail= data;
//获取营业执照
getBusiness(data) {
this.registerInfo.get_business_license_pic = data;
},
//获取办学许可证
getLicence(data) {
this.registerInfo.get_school_license_pic = data;
},
getInfo() {
accountGet({
}).then(res => {
accountGet().then(res => {
if(res.error == 0) {
this.name = res.data.name;
this.code = res.data.code;
this.areas = res.data.areas;
this.user = res.data.user;
this.detail = res.data.detail;
this.address = res.data.address;
this.remark = res.data.remark;
this.enterprise_id = res.data.enterprise_id;
this.registerInfo.portrait.push(res.data.logo);
this.registerInfo.enterprise_name = res.data.name;
this.registerInfo.enterprise_scale = res.data.peoples;
this.registerInfo.enterprise_type = res.data.type;
this.registerInfo.enterprise_area = res.data.area_id;
this.registerInfo.enterprise_address = res.data.address;
this.registerInfo.enterprise_describe = res.data.remark;
this.registerInfo.business_license_pic.push(res.data.business_license_pic);
this.registerInfo.school_license_pic.push(res.data.school_license_pic);
}
})
},
save() {
let params = {
name: this.name,
code: this.code,
areas: this.areas,
user: this.user,
detail: this.detail,
address: this.address,
remark: this.remark,
enterprise_id: this.enterprise_id
}
if(this.producerId) {
params.id = this.producerId;
position_name: this.registerInfo.duty,
email: this.registerInfo.email,
logo: this.registerInfo.getPortrait[0],
name: this.registerInfo.enterprise_name,
peoples: Number(this.registerInfo.enterprise_scale),
type: this.registerInfo.enterprise_type,
area_id: this.registerInfo.enterprise_area[2],
address: this.registerInfo.enterprise_address,
remark: this.registerInfo.enterprise_describe,
business_license_pic: this.registerInfo.get_business_license_pic[0],
school_license_pic: this.registerInfo.get_school_license_pic[0]
}
accountEdit(params).then(res => {
if(res.error == 0) {
this.$message.success('操作成功!');
setTimeout(()=>{
window.close();
},1000)
}
})
}
......
......@@ -98,7 +98,8 @@
<script>
import {provinceAndCityData,regionData, CodeToText, TextToCode} from 'element-china-area-data';
import {positionEdit, positionDetail} from "@/api/position";
import {getAcademicQualifications, getWorkExperience, getJobClassify} from "@/api/common"
import {getAcademicQualifications, getWorkExperience, getJobClassify} from "@/api/common";
import {positionTtpe} from '@/utils/positionType'
export default {
data() {
return {
......@@ -399,41 +400,7 @@
JobClassify() {
return new Promise(resolve => {
getJobClassify().then(res => {
this.position_type = [];
for (let item in res.data['01']) {
this.position_type.push({
value: item,
label: res.data['01'][item]
})
}
this.position_type.forEach((v,i) => {
for(let item in res.data) {
if(v.value == item) {
v.children = [];
for(let item_1 in res.data[item]) {
v.children.push({
value: item_1,
label: res.data[item][item_1]
})
}
}
}
v.children.forEach((vv,ii)=>{
for(let item in res.data) {
if(vv.value == item) {
v.children[ii].children = [];
for(let item_1 in res.data[item]) {
v.children[ii].children.push({
value: item_1,
label: res.data[item][item_1]
})
}
}
}
})
})
this.position_type = positionTtpe(res);
})
resolve();
}).catch(error => {
......@@ -448,7 +415,6 @@
await this.getEduLevels();
await this.getWorkAges();
await this.JobClassify();
console.log(this.$route.params.id && this.$route.params.id != 0,'this.$route.params.id');
if (this.$route.params.id && this.$route.params.id != 0) {
console.log(9);
this.id = this.$route.params.id;
......
......@@ -43,7 +43,7 @@
</el-table-column>
<el-table-column align="center" prop="compensation" show-overflow-tooltip label="薪资">
<template slot-scope="scope">
<div class="compensation">{{scope.row.job_require_salary_min / 100000}}-{{scope.row.job_require_salary_max / 100000}}K</div>
<div class="compensation">{{(scope.row.job_require_salary_min / 100000).toFixed(1)}}~{{(scope.row.job_require_salary_max / 100000).toFixed(1)}}K</div>
</template>
</el-table-column>
<el-table-column align="center" prop="publishTime" show-overflow-tooltip label="发布时间">
......
......@@ -2,26 +2,23 @@
<div class="partner-supervise-container">
<div class="refresh">
<el-button @click="refresh" type="primary" size="small">立即刷新</el-button>
<span>今日剩余(0/10)</span>
<!-- <span>今日剩余(0/10)</span>-->
</div>
<el-form :inline="true" :model="queryForm" size="small" ref="queryForm" class="fiter-box" >
<el-form :inline="true" :model="queryForm" size="small" ref="queryForm" class="fiter-box">
<div class="fiter-col">
<el-form-item label="搜索内容:" prop="searchContent" class="order-item">
<el-input placeholder="请输入内容" v-model="queryForm.searchContent" class="order-input"> </el-input>
</el-form-item>
<el-form-item label="状态:" prop="searchContent" class="order-item">
<el-select v-model="queryForm.status" placeholder="请选择" class="input-style" size="small">
<el-option label="全部" value="0"></el-option>
<el-option label="正在招聘" value="1"></el-option>
<el-option label="已关闭" value="2"></el-option>
<el-option label="全部" value=""></el-option>
<el-option label="刚投递" value="1"></el-option>
<el-option label="已查看" value="2"></el-option>
<el-option label="通过初筛" value="3"></el-option>
<el-option label="已拒绝" value="4"></el-option>
</el-select>
</el-form-item>
</div>
<div class="fiter-col" style="margin-bottom: 0">
<el-button type="primary" size="small" style="margin-left: 20px" @click="search">搜索</el-button>
<el-button type="danger" size="small" @click="reset">清空搜索条件</el-button>
<el-form-item label="" prop="searchContent" class="order-item">
<el-button type="primary" size="small" style="" @click="search">搜索</el-button>
</el-form-item>
</div>
</el-form>
<div class="partner-supervise-table">
......@@ -29,39 +26,41 @@
<el-table-column align="center" prop="truename" label="职位信息" width="300">
<template slot-scope="scope">
<div class="position-info">
<div class="position"><span></span>{{scope.row.position}}</div>
<div class="position"><span>{{scope.row.job_type == 1 ? '全' : '兼'}}</span>{{scope.row.base_name}}</div>
<div class="info">
<div>{{scope.row.address}}</div>
<div>{{scope.row.education}}</div>
<div>{{scope.row.experience}}</div>
<div>{{scope.row.work_city}}-{{scope.row.work_area}}</div>
<div>{{scope.row.edu}}</div>
</div>
</div>
</template>
</el-table-column>
<el-table-column align="center" prop="compensation" show-overflow-tooltip label="薪资">
<template slot-scope="scope">
<div class="compensation">{{scope.row.compensation}}</div>
<div class="compensation">{{(scope.row.job_require_salary_min/100000).toFixed(1)}}~{{(scope.row.job_require_salary_max/100000).toFixed(1)}}K</div>
</template>
</el-table-column>
<el-table-column align="center" prop="publishTime" show-overflow-tooltip label="发布时间">
<el-table-column align="center" prop="publishTime" show-overflow-tooltip label="求职状态">
<template slot-scope="scope">
<span class="table-inf0-h3">{{scope.row.publishTime}}</span>
<div class="table-inf0-h3" v-if="scope.row.intention_current_status==1">待业-求职中</div>
<div class="table-inf0-h3" v-if="scope.row.intention_current_status==2">正常工作-寻求机会</div>
<div class="table-inf0-h3" v-if="scope.row.intention_current_status==3">在业-暂不考虑机会</div>
<div class="table-inf0-h3" v-if="scope.row.intention_current_status==4">学业中-寻找机会</div>
</template>
</el-table-column>
<el-table-column align="center" prop="refreshTime" show-overflow-tooltip label="刷新时间">
<el-table-column align="center" prop="refreshTime" show-overflow-tooltip label="职位名称">
<template slot-scope="scope">
<span class="table-inf0-h3">{{scope.row.refreshTime}}</span>
<span class="table-inf0-h3">{{scope.row.job_name}}</span>
</template>
</el-table-column>
<el-table-column align="center" prop="status" show-overflow-tooltip label="职位状态">
<el-table-column align="center" prop="status" show-overflow-tooltip label="处理时间">
<template slot-scope="scope">
<span class="table-inf0-h3">{{scope.row.status}}</span>
<span class="table-inf0-h3">{{scope.row.updated_at}}</span>
</template>
</el-table-column>
<el-table-column align="center" label="操作" width="160">
<template slot-scope="scope">
<div>
<el-button size="small" type="text" @click="checkPosition">查看简历</el-button>
<el-button size="small" type="text" @click="checkPosition(scope.row.cv_token_apply, scope.row.utoken)">查看简历</el-button>
</div>
</template>
</el-table-column>
......@@ -81,7 +80,8 @@
</div>
</template>
<script>
import {recommendList} from '@/api/recommend'
import {resumeList, resumePass, resumeRefuse} from "@/api/resume"
import {CodeToText} from 'element-china-area-data';
export default {
data() {
return {
......@@ -120,18 +120,44 @@
headerName() {
return 'header-class-title'
},
checkPosition() {
checkPosition(id,utoken) {
let routeUrl = this.$router.resolve({
path: this.$route.path + "/detail/" + 0,
path: this.$route.path + "/detail/",
query: {
utoken: utoken,
cv_token: id
}
});
window.open(routeUrl.href, '_blank');
},
refresh() {
this.getRcommendList();
},
//获取推荐列表
getRcommendList() {
let data = {
page: this.currentPage,
page_size: this.page_size,
apply_type: 'self'
}
if(this.queryForm.status) {
data.status = this.queryForm.status;
}
resumeList(data).then(res => {
if(res.error == 0 && res.data && res.data.info) {
this.list = res.data.info;
this.totalPages = res.data.total;
this.list= res.data.info.map(item=>{
let obj={
...item,
work_city: CodeToText[item.base_area_id.slice(0,4)+'00'],
work_area: CodeToText[item.base_area_id],
edu: item.edu_experiences[0].qualifications
}
return obj;
})
}
})
},
handleCurrentChange(page) {
this.currentPage = page;
......@@ -145,7 +171,7 @@
}
},
mounted() {
this.getRcommendList();
}
}
</script>
......
......@@ -27,8 +27,8 @@
<div class="position"><span>{{scope.row.job_type == 1 ? '全' : '兼'}}</span>{{scope.row.base_name}}</div>
<div class="info">
<div>{{scope.row.work_city}}-{{scope.row.work_area}}</div>
<div>{{scope.row.education}}</div>
<div>{{scope.row.experience}}</div>
<div>{{scope.row.edu_experiences[0].qualifications}}</div>
<!-- <div>{{scope.row.experience}}</div>-->
</div>
</div>
</template>
......@@ -43,24 +43,27 @@
</el-table-column>
<el-table-column align="center" prop="compensation" show-overflow-tooltip label="求职状态">
<template slot-scope="scope">
<div class="table-inf0-h3">{{scope.row.compensation}}</div>
<div class="table-inf0-h3" v-if="scope.row.intention_current_status==1">待业-求职中</div>
<div class="table-inf0-h3" v-if="scope.row.intention_current_status==2">正常工作-寻求机会</div>
<div class="table-inf0-h3" v-if="scope.row.intention_current_status==3">在业-暂不考虑机会</div>
<div class="table-inf0-h3" v-if="scope.row.intention_current_status==4">学业中-寻找机会</div>
</template>
</el-table-column>
<el-table-column align="center" prop="publishTime" show-overflow-tooltip label="职位名称">
<template slot-scope="scope">
<div class="compensation">{{scope.row.job_name}}</div>
<div class="table-inf0-h3">{{scope.row.job_name}}</div>
</template>
</el-table-column>
<el-table-column align="center" prop="refreshTime" show-overflow-tooltip label="处理时间">
<template slot-scope="scope">
<div class="table-inf0-h3">{{scope.row.publishTime}}</div>
<div class="table-inf0-h3">{{scope.row.updated_at}}</div>
</template>
</el-table-column>
<el-table-column align="center" label="操作" width="200" fixed="right">
<template slot-scope="scope">
<div>
<el-button size="small" type="text" @click="checkResume(scope.row.id)">查看简历</el-button>
<el-button size="small" type="text" @click="checkResume(scope.row.cv_token_apply, scope.row.utoken)">查看简历</el-button>
<span class="segmenting-line">|</span>
<el-button size="small" type="text" @click="passResume(scope.row.id)">通过</el-button>
<span class="segmenting-line">|</span>
......@@ -85,11 +88,7 @@
<el-dialog title="拒绝理由" :visible.sync="isShowRefuseResume" width="360px" center>
<div>
<el-select v-model="refuse_reason" placeholder="请选择" style="width: 100%;margin-bottom: 20px">
<el-option label="简历与职位不相符" value="简历与职位不相符"></el-option>
<el-option label="过往履历与职位不相符" value="过往履历与职位不相符"></el-option>
<el-option label="工作经验不足" value="工作经验不足"></el-option>
<el-option label="学历未达到职位要求" value="学历未达到职位要求"></el-option>
<el-option label="已招到合适人选" value="已招到合适人选"></el-option>
<el-option v-for="item in reasonList" :key="item.label" :label="item.label" :value="item.value"></el-option>
</el-select>
<div class="operation">
<el-button type="primary" size="small" @click="sureRefuseResume">确定</el-button>
......@@ -111,6 +110,8 @@
</template>
<script>
import {resumeList, resumePass, resumeRefuse} from "@/api/resume"
import {applyRefuseReasons} from "@/api/common";
import {CodeToText} from 'element-china-area-data';
export default {
data() {
return {
......@@ -125,10 +126,24 @@
isShowPassResume: false,
isShowRefuseResume: false,
refuse_reason: '',
checked_id: ''
checked_id: '',
reasonList: []
}
},
methods: {
//获取拒绝原因列表
getResonList() {
applyRefuseReasons().then(res => {
if(res.error == 0) {
res.data.forEach(v=>{
this.reasonList.push({
label: v,
value: v
})
})
}
})
},
//清空搜索条件
reset() {
this.queryForm.searchContent = '';
......@@ -143,9 +158,13 @@
return 'header-class-title'
},
checkResume() {
checkResume(id,utoken) {
let routeUrl = this.$router.resolve({
path: this.$route.path + "/detail/" + 0,
path: this.$route.path + "/detail/",
query: {
utoken: utoken,
cv_token: id
}
});
window.open(routeUrl.href, '_blank');
},
......@@ -173,7 +192,7 @@
sureRefuseResume() {
resumeRefuse({
apply_id: Number(this.checked_id),
handle: 'pass',
handle: 'refuse',
refuse_reason: this.refuse_reason
}).then(res => {
if(res.error == 0) {
......@@ -187,6 +206,7 @@
let data = {
page: this.currentPage,
page_size: this.page_size,
apply_type: 'self'
}
if(this.queryForm.status) {
data.status = this.queryForm.status;
......@@ -219,6 +239,7 @@
}
},
mounted() {
this.getResonList();
this.getResumeList();
}
}
......
Markdown is supported
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!