flat: 修改零工问题
This commit is contained in:
@@ -379,3 +379,12 @@ export const jkWorksHistory = () => {
|
|||||||
method: 'get',
|
method: 'get',
|
||||||
})
|
})
|
||||||
}
|
}
|
||||||
|
|
||||||
|
// 零工岗位审核接口
|
||||||
|
export const missionReview = (params) => {
|
||||||
|
return request({
|
||||||
|
url: `/api/jobslink-api/missions/mission/missionReview`,
|
||||||
|
method: 'post',
|
||||||
|
data:params
|
||||||
|
})
|
||||||
|
}
|
||||||
@@ -190,6 +190,12 @@ export const wageUnitCategoryState = [
|
|||||||
// { value: 6, label: "元/人·件", disable: true },
|
// { value: 6, label: "元/人·件", disable: true },
|
||||||
];
|
];
|
||||||
|
|
||||||
|
export const wageUnitCategoryOther = [
|
||||||
|
{ value: 1, label: "计件", disable: false },
|
||||||
|
{ value: 2, label: "面议", disable: false },
|
||||||
|
];
|
||||||
|
|
||||||
|
|
||||||
export const wageOptionsMonth = [
|
export const wageOptionsMonth = [
|
||||||
{
|
{
|
||||||
value: "2000元(含)以下/月",
|
value: "2000元(含)以下/月",
|
||||||
|
|||||||
@@ -25,6 +25,7 @@ export default {
|
|||||||
type: String,
|
type: String,
|
||||||
default: "-"
|
default: "-"
|
||||||
},
|
},
|
||||||
|
city: Boolean, // 12月3号修改 下拉从市区开始
|
||||||
filterCity: Array
|
filterCity: Array
|
||||||
},
|
},
|
||||||
data() {
|
data() {
|
||||||
@@ -50,8 +51,10 @@ export default {
|
|||||||
if (district) {
|
if (district) {
|
||||||
nextProvince.children[0].children = nextProvince.children[0].children.find((area) => area.label === district)
|
nextProvince.children[0].children = nextProvince.children[0].children.find((area) => area.label === district)
|
||||||
}
|
}
|
||||||
return nextProvince
|
return this.city ? nextProvince.children : nextProvince
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
return this.area.labelData
|
return this.area.labelData
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
|
|||||||
@@ -23,7 +23,7 @@
|
|||||||
@refresh-change="refreshChange"
|
@refresh-change="refreshChange"
|
||||||
@on-load="onLoad"
|
@on-load="onLoad"
|
||||||
>
|
>
|
||||||
<template slot="menuLeft">
|
<!-- <template slot="menuLeft">
|
||||||
<el-button
|
<el-button
|
||||||
v-if="vaildData(permission.manage_mission_check, false)"
|
v-if="vaildData(permission.manage_mission_check, false)"
|
||||||
size="small"
|
size="small"
|
||||||
@@ -32,7 +32,7 @@
|
|||||||
>审核
|
>审核
|
||||||
</el-button
|
</el-button
|
||||||
>
|
>
|
||||||
</template>
|
</template> -->
|
||||||
<template slot="menuRight">
|
<template slot="menuRight">
|
||||||
<el-button size="small" :disabled="downloadButton" @click.stop="downRecords" type="primary"
|
<el-button size="small" :disabled="downloadButton" @click.stop="downRecords" type="primary"
|
||||||
>导出
|
>导出
|
||||||
@@ -46,8 +46,11 @@
|
|||||||
@click.stop="rowView(row)"
|
@click.stop="rowView(row)"
|
||||||
v-if="vaildData(permission.manage_mission_view, false)"
|
v-if="vaildData(permission.manage_mission_view, false)"
|
||||||
>详情
|
>详情
|
||||||
</el-button
|
</el-button>
|
||||||
>
|
<el-button :size="size" type="text"
|
||||||
|
@click="reviewStateClk(row)"
|
||||||
|
v-if="row.reviewState === 0" v-show="vaildData(permission.tenant_mission_review, false)">审核
|
||||||
|
</el-button>
|
||||||
<!-- <el-button
|
<!-- <el-button
|
||||||
type="text"
|
type="text"
|
||||||
size="small"
|
size="small"
|
||||||
@@ -78,6 +81,8 @@
|
|||||||
@onCancel="diaLogCancel"
|
@onCancel="diaLogCancel"
|
||||||
@onConfirm="diaLogConfirm"
|
@onConfirm="diaLogConfirm"
|
||||||
></PromptDialog>
|
></PromptDialog>
|
||||||
|
|
||||||
|
<reviewView :visible.sync="reviewState" @refreshChange="refreshChange" ref="reviewView" :model="reviewStateRow"></reviewView>
|
||||||
</basic-container>
|
</basic-container>
|
||||||
</template>
|
</template>
|
||||||
|
|
||||||
@@ -95,6 +100,7 @@ import {downloadEcxel} from '@/util/util'
|
|||||||
import {mapGetters} from "vuex";
|
import {mapGetters} from "vuex";
|
||||||
import missionView from "@/views/util/mission-view";
|
import missionView from "@/views/util/mission-view";
|
||||||
import zpView from "./zpView";
|
import zpView from "./zpView";
|
||||||
|
import reviewView from './reviewView.vue'
|
||||||
import {missionState, wageUnitCategoryState, recruitStatus, dataSourcesEnum, educationState} from "@/common/dic";
|
import {missionState, wageUnitCategoryState, recruitStatus, dataSourcesEnum, educationState} from "@/common/dic";
|
||||||
import {calcDate} from "@/util/date";
|
import {calcDate} from "@/util/date";
|
||||||
import {Message} from "element-ui";
|
import {Message} from "element-ui";
|
||||||
@@ -116,10 +122,12 @@ const message = lodash.throttle(
|
|||||||
);
|
);
|
||||||
|
|
||||||
export default {
|
export default {
|
||||||
components: {missionView, zpView, PromptDialog},
|
components: {missionView, zpView, PromptDialog, reviewView},
|
||||||
name: "manage_mission",
|
name: "manage_mission",
|
||||||
data() {
|
data() {
|
||||||
return {
|
return {
|
||||||
|
reviewState: false, // 审核弹框
|
||||||
|
reviewStateRow: {}, // 审核需要的数据
|
||||||
dialogFlag: false,
|
dialogFlag: false,
|
||||||
selectIdList: [],
|
selectIdList: [],
|
||||||
recruitStatus,
|
recruitStatus,
|
||||||
@@ -159,7 +167,7 @@ export default {
|
|||||||
searchMenuSpan: 5,
|
searchMenuSpan: 5,
|
||||||
menuWidth: 110,
|
menuWidth: 110,
|
||||||
border: true,
|
border: true,
|
||||||
selection: true,
|
// selection: true,
|
||||||
viewBtn: false,
|
viewBtn: false,
|
||||||
addBtn: false,
|
addBtn: false,
|
||||||
editBtn: false,
|
editBtn: false,
|
||||||
@@ -578,7 +586,12 @@ export default {
|
|||||||
this.downloadButton = false
|
this.downloadButton = false
|
||||||
})
|
})
|
||||||
},
|
},
|
||||||
|
// 点击审核
|
||||||
|
reviewStateClk(row) {
|
||||||
|
// this.reviewState = true
|
||||||
|
this.$refs.reviewView.refreshReview(true)
|
||||||
|
this.reviewStateRow = row
|
||||||
|
}
|
||||||
},
|
},
|
||||||
};
|
};
|
||||||
</script>
|
</script>
|
||||||
|
|||||||
400
src/views/manage/mission/reviewView.vue
Normal file
400
src/views/manage/mission/reviewView.vue
Normal file
@@ -0,0 +1,400 @@
|
|||||||
|
<template>
|
||||||
|
<el-drawer title="审核" :visible.sync="reviewState" @closed="closed" size="60%">
|
||||||
|
<div class="mission-view">
|
||||||
|
<el-form label-position="left" size="small">
|
||||||
|
<el-collapse v-model="activeNames" @change="handleChange" class="avue-group">
|
||||||
|
<el-collapse-item title="岗位信息" name="1" disabled="true">
|
||||||
|
<template slot="title">
|
||||||
|
<div class="avue-group__header">
|
||||||
|
<div class="avue-group__title">零工岗位信息</div>
|
||||||
|
</div>
|
||||||
|
</template>
|
||||||
|
<el-row>
|
||||||
|
<el-col span="12">
|
||||||
|
<el-form-item label="岗位名称:">{{
|
||||||
|
model.missionTitle
|
||||||
|
}}
|
||||||
|
</el-form-item>
|
||||||
|
</el-col>
|
||||||
|
<el-col span="12">
|
||||||
|
<el-form-item label="岗位编码:">{{
|
||||||
|
model.missionNo
|
||||||
|
}}
|
||||||
|
</el-form-item>
|
||||||
|
</el-col>
|
||||||
|
</el-row>
|
||||||
|
<el-row>
|
||||||
|
<el-col span="12">
|
||||||
|
<el-form-item label="发布时间:">{{ format(model.stime) }}</el-form-item>
|
||||||
|
</el-col>
|
||||||
|
<el-col span="12">
|
||||||
|
<el-form-item label="结束时间:">{{ format(model.etime) }}</el-form-item>
|
||||||
|
</el-col>
|
||||||
|
</el-row>
|
||||||
|
</el-collapse-item>
|
||||||
|
|
||||||
|
<el-collapse-item title="岗位要求" name="2" disabled="true">
|
||||||
|
<template slot="title">
|
||||||
|
<div class="avue-group__header">
|
||||||
|
<div class="avue-group__title">岗位要求</div>
|
||||||
|
</div>
|
||||||
|
</template>
|
||||||
|
<el-row>
|
||||||
|
<el-col span="12">
|
||||||
|
<el-form-item label="招聘人数:">{{ model.peopleNum }}人</el-form-item>
|
||||||
|
</el-col>
|
||||||
|
<el-col span="12">
|
||||||
|
<el-form-item label="参考工资:">{{
|
||||||
|
model.wageUnitCategory === 4 ? wageCategoryOtherEnum[model.wage] : model.wage
|
||||||
|
}}{{ model.wageUnitCategory !== 4 ? wageUnitCategory[model.wageUnitCategory] : '' }}
|
||||||
|
</el-form-item>
|
||||||
|
</el-col>
|
||||||
|
</el-row>
|
||||||
|
<el-row>
|
||||||
|
<el-col span="12">
|
||||||
|
<el-form-item label="行业类型:">{{
|
||||||
|
model.tradeNames
|
||||||
|
}}
|
||||||
|
</el-form-item>
|
||||||
|
</el-col>
|
||||||
|
<el-col span="12">
|
||||||
|
<el-form-item>
|
||||||
|
<label slot="label">零工工种:</label>
|
||||||
|
{{ model.worktypeNames }} /
|
||||||
|
{{ model.skillNames }}
|
||||||
|
</el-form-item>
|
||||||
|
</el-col>
|
||||||
|
</el-row>
|
||||||
|
<el-row>
|
||||||
|
<el-col span="24">
|
||||||
|
<el-form-item label="岗位描述:">{{
|
||||||
|
model.missionDesc
|
||||||
|
}}
|
||||||
|
</el-form-item>
|
||||||
|
</el-col>
|
||||||
|
</el-row>
|
||||||
|
</el-collapse-item>
|
||||||
|
|
||||||
|
<el-collapse-item title="人员要求" name="3" disabled="true">
|
||||||
|
<template slot="title">
|
||||||
|
<div class="avue-group__header">
|
||||||
|
<div class="avue-group__title">人员要求</div>
|
||||||
|
</div>
|
||||||
|
</template>
|
||||||
|
<el-row>
|
||||||
|
<!-- <el-col span="16">-->
|
||||||
|
<!-- <el-form-item label="人员属性:">{{-->
|
||||||
|
<!-- model.userNature-->
|
||||||
|
<!-- }}-->
|
||||||
|
<!-- </el-form-item>-->
|
||||||
|
<!-- </el-col>-->
|
||||||
|
<el-col span="16">
|
||||||
|
<el-form-item label="学历要求:">{{
|
||||||
|
education[model.education]
|
||||||
|
}}
|
||||||
|
</el-form-item>
|
||||||
|
</el-col>
|
||||||
|
<el-col span="8">
|
||||||
|
<el-form-item label="年龄要求:">{{
|
||||||
|
model.ageDesc
|
||||||
|
}}
|
||||||
|
</el-form-item>
|
||||||
|
</el-col>
|
||||||
|
</el-row>
|
||||||
|
<el-row>
|
||||||
|
<el-col span="8">
|
||||||
|
<el-form-item label="经验要求:">{{
|
||||||
|
model.experienceDesc
|
||||||
|
}}
|
||||||
|
</el-form-item>
|
||||||
|
</el-col>
|
||||||
|
</el-row>
|
||||||
|
</el-collapse-item>
|
||||||
|
|
||||||
|
<el-collapse-item title="联系人" name="4" disabled="true">
|
||||||
|
<template slot="title">
|
||||||
|
<div class="avue-group__header">
|
||||||
|
<div class="avue-group__title">用工单位信息</div>
|
||||||
|
</div>
|
||||||
|
</template>
|
||||||
|
<el-row>
|
||||||
|
<el-col span="12">
|
||||||
|
<el-form-item label="用工单位:">{{
|
||||||
|
model.missionCompanyName
|
||||||
|
}}
|
||||||
|
</el-form-item>
|
||||||
|
</el-col>
|
||||||
|
<el-col span="12">
|
||||||
|
<el-form-item label="单位信用代码:">{{
|
||||||
|
model.missionCompanyScale
|
||||||
|
}}
|
||||||
|
</el-form-item>
|
||||||
|
</el-col>
|
||||||
|
<el-col span="12">
|
||||||
|
<el-form-item label="单位性质:">{{
|
||||||
|
model.missionCompanyNature
|
||||||
|
}}
|
||||||
|
</el-form-item>
|
||||||
|
</el-col>
|
||||||
|
<el-col span="12">
|
||||||
|
<el-form-item label="所属行业:">{{
|
||||||
|
model.missionCompanyIndustry
|
||||||
|
}}
|
||||||
|
</el-form-item>
|
||||||
|
</el-col>
|
||||||
|
</el-row>
|
||||||
|
<el-row>
|
||||||
|
<el-col span="24">
|
||||||
|
<el-form-item label="单位介绍:">{{
|
||||||
|
model.missionCompanyDescription
|
||||||
|
}}
|
||||||
|
</el-form-item>
|
||||||
|
</el-col>
|
||||||
|
</el-row>
|
||||||
|
<el-row>
|
||||||
|
<el-col span="8">
|
||||||
|
<el-form-item label="联 系 人:">{{
|
||||||
|
model.callName
|
||||||
|
}}
|
||||||
|
</el-form-item>
|
||||||
|
</el-col>
|
||||||
|
<el-col span="8">
|
||||||
|
<el-form-item label="联系方式:">{{
|
||||||
|
model.callTel
|
||||||
|
}}
|
||||||
|
</el-form-item>
|
||||||
|
</el-col>
|
||||||
|
<el-col span="8">
|
||||||
|
<el-form-item>
|
||||||
|
<label slot="label">座 机:</label>
|
||||||
|
{{ model.callNumber }}
|
||||||
|
</el-form-item>
|
||||||
|
</el-col>
|
||||||
|
</el-row>
|
||||||
|
<el-row>
|
||||||
|
<el-col span="24">
|
||||||
|
<el-form-item label="工作地址:" v-if="model.cityId">{{ model.cityId }}</el-form-item>
|
||||||
|
</el-col>
|
||||||
|
</el-row>
|
||||||
|
<el-row>
|
||||||
|
<el-col span="24">
|
||||||
|
<el-form-item label="详细地址:">{{
|
||||||
|
model.address
|
||||||
|
}}
|
||||||
|
</el-form-item>
|
||||||
|
<!-- <select-map :lat="model.lat" :lng="model.lon" :isCanEdit="false" :type="'view'"></select-map>-->
|
||||||
|
<super-map-view
|
||||||
|
:isCanEdit="false"
|
||||||
|
:longitude="model.lon"
|
||||||
|
:latitude="model.lat"
|
||||||
|
:open="true"
|
||||||
|
:zoom="10"
|
||||||
|
:min-zoom="10"
|
||||||
|
:max-zoom="20"
|
||||||
|
:flag-tip="false"
|
||||||
|
placeholder="请输入详细地址"
|
||||||
|
:type="'edit'"
|
||||||
|
></super-map-view>
|
||||||
|
</el-col>
|
||||||
|
</el-row>
|
||||||
|
</el-collapse-item>
|
||||||
|
|
||||||
|
<el-collapse-item title="审核状态" name="5" disabled="true">
|
||||||
|
<template slot="title">
|
||||||
|
<div class="avue-group__header">
|
||||||
|
<div class="avue-group__title">审核信息</div>
|
||||||
|
</div>
|
||||||
|
</template>
|
||||||
|
<avue-form
|
||||||
|
:option="reviewOption"
|
||||||
|
ref="reviewFrom"
|
||||||
|
v-model="reviewValue"
|
||||||
|
@submit="submit"
|
||||||
|
>
|
||||||
|
<template slot="menuForm">
|
||||||
|
<el-button @click="refreshReview(false)">取消</el-button>
|
||||||
|
</template>
|
||||||
|
</avue-form>
|
||||||
|
</el-collapse-item>
|
||||||
|
</el-collapse>
|
||||||
|
</el-form>
|
||||||
|
</div>
|
||||||
|
</el-drawer>
|
||||||
|
</template>
|
||||||
|
|
||||||
|
<script>
|
||||||
|
import {mapGetters} from "vuex";
|
||||||
|
import {dateFormat} from "@/util/date";
|
||||||
|
import {
|
||||||
|
wageUnitCategoryState,
|
||||||
|
educationState,
|
||||||
|
genderState,
|
||||||
|
recruitStatus,
|
||||||
|
wageUnitCategoryOther
|
||||||
|
} from "@/common/dic";
|
||||||
|
import {missionReview} from "@/api/tenant/mission";
|
||||||
|
|
||||||
|
function getDic(arr) {
|
||||||
|
let rel = {};
|
||||||
|
arr.forEach((element) => {
|
||||||
|
rel[element.value] = element.label;
|
||||||
|
});
|
||||||
|
return rel;
|
||||||
|
}
|
||||||
|
|
||||||
|
export default {
|
||||||
|
props: {model: Object, visible:Boolean},
|
||||||
|
data() {
|
||||||
|
return {
|
||||||
|
activeNames: ["1", "2", "3", "4", "5"],
|
||||||
|
wageUnitCategory: getDic(wageUnitCategoryState),
|
||||||
|
education: getDic(educationState),
|
||||||
|
gender: getDic(genderState),
|
||||||
|
recruit: getDic(recruitStatus),
|
||||||
|
reject: false,
|
||||||
|
reviewValue: {},
|
||||||
|
wageCategoryOtherEnum: getDic(wageUnitCategoryOther),
|
||||||
|
reviewState: false
|
||||||
|
};
|
||||||
|
},
|
||||||
|
mounted() {
|
||||||
|
},
|
||||||
|
methods: {
|
||||||
|
getSkill(skillStr) {
|
||||||
|
return skillStr.split(",");
|
||||||
|
},
|
||||||
|
format(date) {
|
||||||
|
if (date) {
|
||||||
|
return dateFormat(new Date(date), "yyyy/MM/dd");
|
||||||
|
}
|
||||||
|
},
|
||||||
|
// 点击提交
|
||||||
|
submit(form,done) {
|
||||||
|
const params = {
|
||||||
|
id: this.model.id,
|
||||||
|
remarks: '',
|
||||||
|
reviewMsg: this.reviewValue.reviewMsg,
|
||||||
|
reviewState: this.reviewValue.reviewState
|
||||||
|
}
|
||||||
|
|
||||||
|
missionReview(params).then(res => {
|
||||||
|
if (res.data.code === 200) {
|
||||||
|
done();
|
||||||
|
this.refreshReview(false)
|
||||||
|
|
||||||
|
this.$message({
|
||||||
|
type: "success",
|
||||||
|
message: res.data.msg,
|
||||||
|
});
|
||||||
|
|
||||||
|
this.$emit('refreshChange')
|
||||||
|
|
||||||
|
} else {
|
||||||
|
this.$message({
|
||||||
|
type: "error",
|
||||||
|
message: res.data.msg,
|
||||||
|
});
|
||||||
|
}
|
||||||
|
})
|
||||||
|
},
|
||||||
|
// 点击清空
|
||||||
|
refreshReview(res) {
|
||||||
|
this.reviewState = res
|
||||||
|
}
|
||||||
|
},
|
||||||
|
computed: {
|
||||||
|
...mapGetters(["area"]),
|
||||||
|
city() {
|
||||||
|
return this.$store.getters.getAreaParents(this.model.cityId);
|
||||||
|
},
|
||||||
|
// reviewState: {
|
||||||
|
// get() {
|
||||||
|
// return this.visible;
|
||||||
|
// },
|
||||||
|
// set(val) {
|
||||||
|
// this.$emit("update:visible", val);
|
||||||
|
// },
|
||||||
|
// },
|
||||||
|
reviewOption(){
|
||||||
|
return {
|
||||||
|
// size: "small",
|
||||||
|
labelWidth: 150,
|
||||||
|
labelPosition: 'left',
|
||||||
|
emptyBtn: false,
|
||||||
|
// submitBtn: false,
|
||||||
|
emptyText: '取消',
|
||||||
|
column:[
|
||||||
|
{
|
||||||
|
label: '审核',
|
||||||
|
prop: 'reviewState',
|
||||||
|
type: 'select',
|
||||||
|
span: 18,
|
||||||
|
dicData: [{
|
||||||
|
label: '通过',
|
||||||
|
value: 1
|
||||||
|
}, {
|
||||||
|
label: '驳回',
|
||||||
|
value: 9
|
||||||
|
}],
|
||||||
|
rules: [
|
||||||
|
{
|
||||||
|
required: true,
|
||||||
|
message: "请选择审核结果",
|
||||||
|
trigger: "blur",
|
||||||
|
},
|
||||||
|
],
|
||||||
|
change:({column,value}) =>{
|
||||||
|
console.log(value, column)
|
||||||
|
if(value == 9){
|
||||||
|
this.reject = true
|
||||||
|
}else{
|
||||||
|
this.reject = false
|
||||||
|
}
|
||||||
|
}
|
||||||
|
},
|
||||||
|
{
|
||||||
|
label: '驳回原因',
|
||||||
|
prop: 'reviewMsg',
|
||||||
|
type: 'textarea',
|
||||||
|
rows: 5,
|
||||||
|
span: 18,
|
||||||
|
display: this.reject,
|
||||||
|
rules: [
|
||||||
|
{
|
||||||
|
required: true,
|
||||||
|
message: "请输入驳回原因",
|
||||||
|
trigger: "blur",
|
||||||
|
},
|
||||||
|
],
|
||||||
|
}
|
||||||
|
]
|
||||||
|
}
|
||||||
|
},
|
||||||
|
},
|
||||||
|
};
|
||||||
|
</script>
|
||||||
|
|
||||||
|
<style>
|
||||||
|
.mission-view .el-tag + .el-tag {
|
||||||
|
margin-left: 5px;
|
||||||
|
}
|
||||||
|
|
||||||
|
.mission-view .el-form {
|
||||||
|
padding: 0 20px;
|
||||||
|
}
|
||||||
|
|
||||||
|
.mission-view .el-form .el-col {
|
||||||
|
padding: 0 10px;
|
||||||
|
}
|
||||||
|
|
||||||
|
.mission-view .el-form .el-col .el-form-item {
|
||||||
|
margin-bottom: 18px;
|
||||||
|
}
|
||||||
|
|
||||||
|
.mission-view .el-collapse {
|
||||||
|
border-top: 0px;
|
||||||
|
}
|
||||||
|
.button {
|
||||||
|
text-align: center;
|
||||||
|
}
|
||||||
|
</style>
|
||||||
@@ -260,7 +260,9 @@ export default {
|
|||||||
userName: item.name
|
userName: item.name
|
||||||
}))
|
}))
|
||||||
}
|
}
|
||||||
let resData = await pushPostUserServe(params)
|
// 处理错误的时候 状态不会改
|
||||||
|
await pushPostUserServe(params).then(resData => {
|
||||||
|
// 成功的时候
|
||||||
if (resData.data.code === 200) {
|
if (resData.data.code === 200) {
|
||||||
const timed = createTime - Date.now() > 0 ? createTime - Date.now() : 0
|
const timed = createTime - Date.now() > 0 ? createTime - Date.now() : 0
|
||||||
setTimeout(() => {
|
setTimeout(() => {
|
||||||
@@ -268,8 +270,21 @@ export default {
|
|||||||
this.$refs.crud2.selectClear()
|
this.$refs.crud2.selectClear()
|
||||||
this.pushState = false
|
this.pushState = false
|
||||||
}, timed)
|
}, timed)
|
||||||
|
|
||||||
}
|
}
|
||||||
|
}).catch(err => {
|
||||||
|
this.pushState = false
|
||||||
|
console.log(err, 'err')
|
||||||
|
})
|
||||||
|
// let resData = await pushPostUserServe(params)
|
||||||
|
// if (resData.data.code === 200) {
|
||||||
|
// const timed = createTime - Date.now() > 0 ? createTime - Date.now() : 0
|
||||||
|
// setTimeout(() => {
|
||||||
|
// this.$message.success('岗位推送成功')
|
||||||
|
// this.$refs.crud2.selectClear()
|
||||||
|
// this.pushState = false
|
||||||
|
// }, timed)
|
||||||
|
|
||||||
|
// }
|
||||||
},
|
},
|
||||||
async pushPolicyAndUser() {
|
async pushPolicyAndUser() {
|
||||||
this.pushState = true
|
this.pushState = true
|
||||||
@@ -284,7 +299,8 @@ export default {
|
|||||||
userName: item.name
|
userName: item.name
|
||||||
}))
|
}))
|
||||||
}
|
}
|
||||||
let resData = await pushPolicyUserServe(params)
|
// 处理错误的时候 状态不会改
|
||||||
|
await pushPolicyUserServe(params).then(resData => {
|
||||||
if (resData.data.code === 200) {
|
if (resData.data.code === 200) {
|
||||||
const timed = createTime - Date.now() > 0 ? createTime - Date.now() : 0
|
const timed = createTime - Date.now() > 0 ? createTime - Date.now() : 0
|
||||||
setTimeout(() => {
|
setTimeout(() => {
|
||||||
@@ -293,6 +309,19 @@ export default {
|
|||||||
this.pushState = false
|
this.pushState = false
|
||||||
}, timed)
|
}, timed)
|
||||||
}
|
}
|
||||||
|
}).catch(err => {
|
||||||
|
this.pushState = false
|
||||||
|
console.log(err, 'err')
|
||||||
|
})
|
||||||
|
// let resData = await pushPolicyUserServe(params)
|
||||||
|
// if (resData.data.code === 200) {
|
||||||
|
// const timed = createTime - Date.now() > 0 ? createTime - Date.now() : 0
|
||||||
|
// setTimeout(() => {
|
||||||
|
// this.$message.success('政策推送成功')
|
||||||
|
// this.$refs.crud2.selectClear()
|
||||||
|
// this.pushState = false
|
||||||
|
// }, timed)
|
||||||
|
// }
|
||||||
},
|
},
|
||||||
async getRightSearch() {
|
async getRightSearch() {
|
||||||
this.progress = 0
|
this.progress = 0
|
||||||
|
|||||||
@@ -463,6 +463,19 @@ export default {
|
|||||||
searchLabelWidth: 100,
|
searchLabelWidth: 100,
|
||||||
searchSpan: 8,
|
searchSpan: 8,
|
||||||
},
|
},
|
||||||
|
{
|
||||||
|
label: "是否回访",
|
||||||
|
prop: "isBack",
|
||||||
|
dicData: [
|
||||||
|
{ value: 1, label: "是" },
|
||||||
|
{ value: 0, label: "否" },
|
||||||
|
],
|
||||||
|
type: 'select',
|
||||||
|
search: true,
|
||||||
|
hide: true,
|
||||||
|
searchLabelWidth: 100,
|
||||||
|
searchSpan: 8,
|
||||||
|
},
|
||||||
{
|
{
|
||||||
label: "毕业年份",
|
label: "毕业年份",
|
||||||
width: 100,
|
width: 100,
|
||||||
|
|||||||
@@ -24,6 +24,7 @@
|
|||||||
v-model="obj.cityId"
|
v-model="obj.cityId"
|
||||||
placeholder="请选择 工作地址"
|
placeholder="请选择 工作地址"
|
||||||
:filterCity="['四川省', '德阳市']"
|
:filterCity="['四川省', '德阳市']"
|
||||||
|
city
|
||||||
></jl-cityLabel-cascader>
|
></jl-cityLabel-cascader>
|
||||||
</template>
|
</template>
|
||||||
|
|
||||||
@@ -45,16 +46,15 @@
|
|||||||
<!-- :value="item.label">-->
|
<!-- :value="item.label">-->
|
||||||
<!-- </el-option>-->
|
<!-- </el-option>-->
|
||||||
<!-- </el-select>-->
|
<!-- </el-select>-->
|
||||||
<el-autocomplete
|
<!-- <el-autocomplete
|
||||||
style="'width:100%'"
|
style="'width:100%'"
|
||||||
class="inline-input"
|
class="inline-input"
|
||||||
v-model="obj.missionCompanyName"
|
v-model="obj.missionCompanyName"
|
||||||
:fetch-suggestions="remoteMethod"
|
:fetch-suggestions="remoteMethod"
|
||||||
placeholder="请输入用工单位"
|
placeholder="请输入用工单位"
|
||||||
@select="selectMissionCompany"
|
@select="selectMissionCompany"
|
||||||
></el-autocomplete>
|
></el-autocomplete> -->
|
||||||
</template>
|
</template>
|
||||||
|
|
||||||
<template slot-scope="{ disabled }" slot="skillIds">
|
<template slot-scope="{ disabled }" slot="skillIds">
|
||||||
<skill-select
|
<skill-select
|
||||||
ref="skillSelect"
|
ref="skillSelect"
|
||||||
@@ -97,12 +97,33 @@
|
|||||||
></super-map-view>
|
></super-map-view>
|
||||||
</template>
|
</template>
|
||||||
<template slot-scope="{ row }" slot="wage">
|
<template slot-scope="{ row }" slot="wage">
|
||||||
<el-input placeholder="请输入工资" type="number" v-model="obj.wage" class="input-with-select" @blur="wageBlur">
|
<!-- <el-input placeholder="请输入工资" type="number" v-model="obj.wage" class="input-with-select" @blur="wageBlur">
|
||||||
<el-select v-model="obj.wageUnitCategory" slot="append" placeholder="请选择" @change="getMaxAndMin">
|
<el-select v-model="obj.wageUnitCategory" slot="append" placeholder="请选择" @change="getMaxAndMin">
|
||||||
<el-option :label="item.label" v-for="item in wageUnitCategory" :key="item.value"
|
<el-option :label="item.label" v-for="item in wageUnitCategory" :key="item.value"
|
||||||
:value="item.value"></el-option>
|
:value="item.value"></el-option>
|
||||||
</el-select>
|
</el-select>
|
||||||
|
</el-input> -->
|
||||||
|
<div slot="append">
|
||||||
|
<div class="input-with-select-all">
|
||||||
|
<el-input placeholder="请输入工资" v-if="!other" type="number" v-model="obj.wage" class="input-with-select-all-a" @blur="wageBlur">
|
||||||
</el-input>
|
</el-input>
|
||||||
|
<el-select v-else v-model="obj.wage" class="input-with-select-all-c" placeholder="请选择" @change="wageOtherChange">
|
||||||
|
<el-option :label="item.label" v-for="item in wageUnitCategoryOther" :key="item.value"
|
||||||
|
:value="item.value"></el-option>
|
||||||
|
</el-select>
|
||||||
|
<el-select v-model="obj.wageUnitCategory" class="input-with-select-all-b" placeholder="请选择" @change="getMaxAndMin">
|
||||||
|
<el-option :label="item.label" v-for="item in wageUnitCategory" :key="item.value"
|
||||||
|
:value="item.value"></el-option>
|
||||||
|
</el-select>
|
||||||
|
</div>
|
||||||
|
<div class="info">
|
||||||
|
<p v-if="obj.wageUnitCategory === 2">日薪不低于0</p>
|
||||||
|
<p v-if="obj.wageUnitCategory === 1">时薪不低于22</p>
|
||||||
|
<p v-if="obj.wageUnitCategory === 3">月薪不低于2200</p>
|
||||||
|
</div>
|
||||||
|
|
||||||
|
</div>
|
||||||
|
|
||||||
</template>
|
</template>
|
||||||
<!-- 行业类型 -->
|
<!-- 行业类型 -->
|
||||||
<!-- <template slot="tradeId">
|
<!-- <template slot="tradeId">
|
||||||
@@ -175,6 +196,7 @@ import {mapGetters} from "vuex";
|
|||||||
import {
|
import {
|
||||||
wageUnitCategoryState,
|
wageUnitCategoryState,
|
||||||
wageOptionsWithNoMonth,
|
wageOptionsWithNoMonth,
|
||||||
|
wageUnitCategoryOther,
|
||||||
educationState,
|
educationState,
|
||||||
} from "@/common/dic";
|
} from "@/common/dic";
|
||||||
import {dateFormat} from "@/util/date";
|
import {dateFormat} from "@/util/date";
|
||||||
@@ -220,7 +242,7 @@ export default {
|
|||||||
tradeNames: null,
|
tradeNames: null,
|
||||||
userNature: "灵活用工",
|
userNature: "灵活用工",
|
||||||
lat: 31.126855,
|
lat: 31.126855,
|
||||||
lon: 104.397894
|
lon: 104.397894,
|
||||||
},
|
},
|
||||||
loading: false,
|
loading: false,
|
||||||
drawer: false,
|
drawer: false,
|
||||||
@@ -233,7 +255,9 @@ export default {
|
|||||||
endTimeFlag: true,
|
endTimeFlag: true,
|
||||||
stimeDate: null,
|
stimeDate: null,
|
||||||
wallMaxAndMin: [],
|
wallMaxAndMin: [],
|
||||||
dwlist: []
|
dwlist: [],
|
||||||
|
other: false,
|
||||||
|
wageUnitCategoryOther: wageUnitCategoryOther
|
||||||
};
|
};
|
||||||
},
|
},
|
||||||
components: {
|
components: {
|
||||||
@@ -243,7 +267,8 @@ export default {
|
|||||||
this.$store.dispatch("InitArea");
|
this.$store.dispatch("InitArea");
|
||||||
this.initData();
|
this.initData();
|
||||||
this.getMaxAndMin()
|
this.getMaxAndMin()
|
||||||
this.getHistroyCompanyList()
|
// 11.26号去掉 用工单位下拉框
|
||||||
|
// this.getHistroyCompanyList()
|
||||||
},
|
},
|
||||||
watch: {
|
watch: {
|
||||||
"obj.tradeId": function (val, oldval) {
|
"obj.tradeId": function (val, oldval) {
|
||||||
@@ -283,9 +308,9 @@ export default {
|
|||||||
case this.obj.wage < Math.min(...val):
|
case this.obj.wage < Math.min(...val):
|
||||||
this.obj.wage = Math.min(...val)
|
this.obj.wage = Math.min(...val)
|
||||||
return
|
return
|
||||||
case this.obj.wage > Math.max(...val):
|
// case this.obj.wage > Math.max(...val):
|
||||||
this.obj.wage = Math.max(...val)
|
// this.obj.wage = Math.max(...val)
|
||||||
return
|
// return
|
||||||
}
|
}
|
||||||
|
|
||||||
}
|
}
|
||||||
@@ -489,12 +514,12 @@ export default {
|
|||||||
labelslot: false,
|
labelslot: false,
|
||||||
errorslot: false,
|
errorslot: false,
|
||||||
// dicData: wageOptionsWithNoMonth,
|
// dicData: wageOptionsWithNoMonth,
|
||||||
// rules: [
|
rules: [
|
||||||
// {
|
{
|
||||||
// required: true,
|
required: true,
|
||||||
// trigger: "blur",
|
trigger: "blur",
|
||||||
// },
|
},
|
||||||
// ],
|
],
|
||||||
// span: 12,
|
// span: 12,
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
@@ -534,13 +559,13 @@ export default {
|
|||||||
trigger: "blur",
|
trigger: "blur",
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
min: 30,
|
min: 10,
|
||||||
max: 200,
|
max: 200,
|
||||||
message: "长度在 30 到 200 个字",
|
message: "长度在 10 到 200 个字",
|
||||||
trigger: "blur",
|
trigger: "blur",
|
||||||
},
|
},
|
||||||
],
|
],
|
||||||
placeholder: "请输入任务描述,字数30-200字以内",
|
placeholder: "请输入任务描述,字数10-200字以内",
|
||||||
span: 24,
|
span: 24,
|
||||||
maxlength: 200,
|
maxlength: 200,
|
||||||
showWordLimit: true,
|
showWordLimit: true,
|
||||||
@@ -651,7 +676,7 @@ export default {
|
|||||||
trigger: "blur",
|
trigger: "blur",
|
||||||
},
|
},
|
||||||
],
|
],
|
||||||
formslot: true,
|
// formslot: true,
|
||||||
span: 12,
|
span: 12,
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
@@ -877,11 +902,14 @@ export default {
|
|||||||
case this.obj.wage < Math.min(...val):
|
case this.obj.wage < Math.min(...val):
|
||||||
this.obj.wage = Math.min(...val)
|
this.obj.wage = Math.min(...val)
|
||||||
return
|
return
|
||||||
case this.obj.wage > Math.max(...val):
|
// case this.obj.wage > Math.max(...val):
|
||||||
this.obj.wage = Math.max(...val)
|
// this.obj.wage = Math.max(...val)
|
||||||
return
|
// return
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
|
wageOtherChange(e) {
|
||||||
|
this.obj.wage = e.target.value
|
||||||
|
},
|
||||||
async getMaxAndMin(id) {
|
async getMaxAndMin(id) {
|
||||||
let params = {
|
let params = {
|
||||||
code: `wages_limit_${this.obj.wageUnitCategory}`
|
code: `wages_limit_${this.obj.wageUnitCategory}`
|
||||||
@@ -892,7 +920,14 @@ export default {
|
|||||||
resData.data.data.map((item) => {
|
resData.data.data.map((item) => {
|
||||||
arr.push(Number(item.dictKey))
|
arr.push(Number(item.dictKey))
|
||||||
})
|
})
|
||||||
|
// 获取到最大值和最小值的一个数组
|
||||||
this.wallMaxAndMin = arr
|
this.wallMaxAndMin = arr
|
||||||
|
if (this.obj.wageUnitCategory === 4) {
|
||||||
|
this.other = true
|
||||||
|
this.obj.wage = Number(this.obj.wage) || 1
|
||||||
|
} else {
|
||||||
|
this.other = false
|
||||||
|
}
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
inputAddress(val) {
|
inputAddress(val) {
|
||||||
@@ -1050,6 +1085,7 @@ export default {
|
|||||||
closed() {
|
closed() {
|
||||||
this.tradeState = "";
|
this.tradeState = "";
|
||||||
this.workTypeState = "";
|
this.workTypeState = "";
|
||||||
|
this.other = false;
|
||||||
this.$refs.form.init();
|
this.$refs.form.init();
|
||||||
this.$refs.form.resetForm();
|
this.$refs.form.resetForm();
|
||||||
this.$refs.form.clearValidate();
|
this.$refs.form.clearValidate();
|
||||||
@@ -1290,6 +1326,12 @@ export default {
|
|||||||
res.cityId = ''
|
res.cityId = ''
|
||||||
}
|
}
|
||||||
this.obj = res;
|
this.obj = res;
|
||||||
|
if (res.wageUnitCategory === 4) {
|
||||||
|
this.other = true
|
||||||
|
this.obj.wage = Number(res.wage)
|
||||||
|
} else {
|
||||||
|
this.other = false
|
||||||
|
}
|
||||||
this.obj.workSkills = []
|
this.obj.workSkills = []
|
||||||
this.obj.workSkills.push(res.worktypeIds)
|
this.obj.workSkills.push(res.worktypeIds)
|
||||||
this.obj.workSkills.push(res.skillIds)
|
this.obj.workSkills.push(res.skillIds)
|
||||||
@@ -1310,11 +1352,49 @@ export default {
|
|||||||
.el-form-item {
|
.el-form-item {
|
||||||
margin-bottom: 0px;
|
margin-bottom: 0px;
|
||||||
}
|
}
|
||||||
|
::v-deep .avue-form .input-with-select-all-a .el-input__inner {
|
||||||
|
border: none;
|
||||||
|
border-top-right-radius: 0px;
|
||||||
|
border-bottom-right-radius: 0px;
|
||||||
|
border-right: 1px solid #DCDFE6;
|
||||||
|
}
|
||||||
|
::v-deep .avue-form .input-with-select-all-b .el-input__inner {
|
||||||
|
border: none;
|
||||||
|
}
|
||||||
|
::v-deep .avue-form .input-with-select-all-c .el-input__inner {
|
||||||
|
border: none;
|
||||||
|
border-top-right-radius: 0px;
|
||||||
|
border-bottom-right-radius: 0px;
|
||||||
|
border-right: 1px solid #DCDFE6;
|
||||||
|
}
|
||||||
|
|
||||||
|
.info {
|
||||||
|
font-size: 12px;
|
||||||
|
color: red;
|
||||||
|
margin-top: -20px;
|
||||||
|
}
|
||||||
|
|
||||||
</style>
|
</style>
|
||||||
<style>
|
<style>
|
||||||
|
.input-with-select-all {
|
||||||
|
width: 100%;
|
||||||
|
display: flex;
|
||||||
|
border: 1px solid #DCDFE6;
|
||||||
|
border-radius: 4px
|
||||||
|
}
|
||||||
|
.input-with-select-all-a {
|
||||||
|
width: 90%;
|
||||||
|
}
|
||||||
|
.input-with-select-all-b {
|
||||||
|
width: 10% !important;
|
||||||
|
}
|
||||||
.input-with-select {
|
.input-with-select {
|
||||||
width: 100%;
|
width: 100%;
|
||||||
}
|
}
|
||||||
|
.input-with-select-all-b .el-input__inner {
|
||||||
|
border: none !important;
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
.copy-form .el-input-group__append {
|
.copy-form .el-input-group__append {
|
||||||
background-color: #fff;
|
background-color: #fff;
|
||||||
|
|||||||
@@ -8,12 +8,14 @@
|
|||||||
<save-button type="warning" plain icon="el-icon-plus" size="small" @click="rowCopy('', 'add')"
|
<save-button type="warning" plain icon="el-icon-plus" size="small" @click="rowCopy('', 'add')"
|
||||||
v-show="vaildData(permission.tenant_mission_add, false)">发布任务
|
v-show="vaildData(permission.tenant_mission_add, false)">发布任务
|
||||||
</save-button>
|
</save-button>
|
||||||
<el-button type="success" size="small" plain icon="el-icon-plus" @click="handleImport"
|
<!-- <el-button type="success" size="small" plain icon="el-icon-plus" @click="handleImport"
|
||||||
v-show="vaildData(permission.tenant_mission_add, false)">批量导入
|
v-show="vaildData(permission.tenant_mission_add, false)">批量导入
|
||||||
</el-button>
|
</el-button> -->
|
||||||
</template>
|
</template>
|
||||||
<template slot="wage" slot-scope="{ row }">
|
<template slot="wage" slot-scope="{ row }">
|
||||||
<div>{{ row.wage }}{{ wageUnitCategoryStateEnum[row.wageUnitCategory] }}</div>
|
<!-- wageUnitCategoryOtherEnum -->
|
||||||
|
<div>{{row.wageUnitCategory === 4 ? wageCategoryOtherEnum[row.wage] : row.wage }}{{ row.wageUnitCategory !== 4 ? wageUnitCategoryStateEnum[row.wageUnitCategory] :'' }}</div>
|
||||||
|
<!-- <div>{{row.wage }}{{ wageUnitCategoryStateEnum[row.wageUnitCategory] }}</div> -->
|
||||||
</template>
|
</template>
|
||||||
<!--/自定义按钮-->
|
<!--/自定义按钮-->
|
||||||
<!--自定义列-->
|
<!--自定义列-->
|
||||||
@@ -59,15 +61,19 @@
|
|||||||
<el-button icon="el-icon-view" type="text" v-if="row.reviewState === 8" size="mini" @click="employmentNum(row)">
|
<el-button icon="el-icon-view" type="text" v-if="row.reviewState === 8" size="mini" @click="employmentNum(row)">
|
||||||
已录用
|
已录用
|
||||||
</el-button>
|
</el-button>
|
||||||
|
<!-- <el-button :size="size" :type="type"
|
||||||
|
@click="reviewStateClk(row)"
|
||||||
|
v-if="row.reviewState === 0" v-show="vaildData(permission.tenant_mission_review, false)">审核
|
||||||
|
</el-button> -->
|
||||||
<el-button icon="el-icon-view" :size="size" :type="type" @click.stop="rowView(row)"
|
<el-button icon="el-icon-view" :size="size" :type="type" @click.stop="rowView(row)"
|
||||||
v-show="vaildData(permission.tenant_mission_view, false)">查看
|
v-show="vaildData(permission.tenant_mission_view, false)">查看
|
||||||
</el-button>
|
</el-button>
|
||||||
<!-- <save-button icon="el-icon-check" :size="size" :type="type" @click="rowCopy(row, 'copy')">复制</save-button> -->
|
<!-- <save-button icon="el-icon-check" :size="size" :type="type" @click="rowCopy(row, 'copy')">复制</save-button> -->
|
||||||
<el-button icon="el-icon-edit" :size="size" :type="type" @click="rowCopy(row, 'edit')"
|
<el-button icon="el-icon-edit" :size="size" :type="type" @click="rowCopy(row, 'edit')"
|
||||||
v-if="row.reviewState === 0 || row.reviewState === 1"
|
v-if="row.reviewState === 0"
|
||||||
:disabled="row.signUpCount !== 0" v-show="vaildData(permission.tenant_mission_edit, false)">编辑
|
:disabled="row.signUpCount !== 0" v-show="vaildData(permission.tenant_mission_edit, false)">编辑
|
||||||
</el-button>
|
</el-button>
|
||||||
<el-button v-if="row.reviewState !== 9" icon="el-icon-delete" :size="size" :type="type"
|
<el-button v-if="state !==2 && row.reviewState !== 8" icon="el-icon-delete" :size="size" :type="type"
|
||||||
@click="$refs.crud.rowDel(row)"
|
@click="$refs.crud.rowDel(row)"
|
||||||
:disabled="row.signUpCount !== 0" v-show="vaildData(permission.tenant_mission_cancel, false)">取消
|
:disabled="row.signUpCount !== 0" v-show="vaildData(permission.tenant_mission_cancel, false)">取消
|
||||||
</el-button>
|
</el-button>
|
||||||
@@ -103,6 +109,9 @@
|
|||||||
</avue-form>
|
</avue-form>
|
||||||
</el-dialog>
|
</el-dialog>
|
||||||
<!--/批量导入-->
|
<!--/批量导入-->
|
||||||
|
<!--审核-->
|
||||||
|
<reviewView :visible.sync="reviewState" @refreshChange="refreshChange" ref="reviewView" :model="reviewStateRow"></reviewView>
|
||||||
|
<!--/审核-->
|
||||||
</div>
|
</div>
|
||||||
</template>
|
</template>
|
||||||
|
|
||||||
@@ -113,6 +122,7 @@ import CopyMission from "../Dialog/CopyMission";
|
|||||||
import Employ from "../Dialog/Employ";
|
import Employ from "../Dialog/Employ";
|
||||||
import employmentNum from "../Dialog/EmployNumber";
|
import employmentNum from "../Dialog/EmployNumber";
|
||||||
import Recommend from "../Dialog/Recommend";
|
import Recommend from "../Dialog/Recommend";
|
||||||
|
import reviewView from './reviewView.vue'
|
||||||
import Contrast from "../Dialog/Contrast"
|
import Contrast from "../Dialog/Contrast"
|
||||||
import SkillSelect from "../Dialog/Skill";
|
import SkillSelect from "../Dialog/Skill";
|
||||||
import missionView from "./missionView.vue";
|
import missionView from "./missionView.vue";
|
||||||
@@ -122,12 +132,23 @@ import {mapGetters} from "vuex";
|
|||||||
import {dateFormat} from "@/util/date";
|
import {dateFormat} from "@/util/date";
|
||||||
import {getTemplate} from "@/api/resource/template";
|
import {getTemplate} from "@/api/resource/template";
|
||||||
import saveButton from "./saveButton";
|
import saveButton from "./saveButton";
|
||||||
import {dataSourcesEnum, educationState, missionState, recruitStatus, wageUnitCategoryState} from "@/common/dic";
|
import {dataSourcesEnum, educationState, missionState, recruitStatus, wageUnitCategoryState,wageUnitCategoryOther} from "@/common/dic";
|
||||||
|
|
||||||
const wageUnitCategoryStateEnum = {}
|
const wageUnitCategoryStateEnum = {}
|
||||||
wageUnitCategoryState.map((item) => {
|
wageUnitCategoryState.map((item) => {
|
||||||
wageUnitCategoryStateEnum[item.value] = item.label
|
wageUnitCategoryStateEnum[item.value] = item.label
|
||||||
})
|
})
|
||||||
|
const wageCategoryOtherEnum = {}
|
||||||
|
wageUnitCategoryOther.map((item) => {
|
||||||
|
wageCategoryOtherEnum[item.value] = item.label
|
||||||
|
})
|
||||||
|
function getDic(arr) {
|
||||||
|
let rel = {};
|
||||||
|
arr.forEach((element) => {
|
||||||
|
rel[element.value] = element.label;
|
||||||
|
});
|
||||||
|
return rel;
|
||||||
|
}
|
||||||
export default {
|
export default {
|
||||||
components: {
|
components: {
|
||||||
CopyMission,
|
CopyMission,
|
||||||
@@ -138,7 +159,8 @@ export default {
|
|||||||
saveButton,
|
saveButton,
|
||||||
Contrast,
|
Contrast,
|
||||||
employmentNum,
|
employmentNum,
|
||||||
excelAccept
|
excelAccept,
|
||||||
|
reviewView
|
||||||
},
|
},
|
||||||
filters: {
|
filters: {
|
||||||
ellipsis(value) {
|
ellipsis(value) {
|
||||||
@@ -152,6 +174,8 @@ export default {
|
|||||||
data() {
|
data() {
|
||||||
return {
|
return {
|
||||||
wageUnitCategoryStateEnum,
|
wageUnitCategoryStateEnum,
|
||||||
|
wageCategoryOtherEnum,
|
||||||
|
education: getDic(educationState),
|
||||||
excelBox: false,
|
excelBox: false,
|
||||||
excelForm: {isCovered: 1},
|
excelForm: {isCovered: 1},
|
||||||
excelOption: {
|
excelOption: {
|
||||||
@@ -198,6 +222,10 @@ export default {
|
|||||||
data: [],
|
data: [],
|
||||||
obj: {},
|
obj: {},
|
||||||
missionNo: '',
|
missionNo: '',
|
||||||
|
reviewState: false, // 审核弹框
|
||||||
|
reviewStateRow: {}, // 审核需要的数据
|
||||||
|
reviewValue: {},
|
||||||
|
reject:false
|
||||||
};
|
};
|
||||||
},
|
},
|
||||||
created() {
|
created() {
|
||||||
@@ -379,6 +407,7 @@ export default {
|
|||||||
],
|
],
|
||||||
};
|
};
|
||||||
},
|
},
|
||||||
|
|
||||||
},
|
},
|
||||||
methods: {
|
methods: {
|
||||||
format(date) {
|
format(date) {
|
||||||
@@ -550,6 +579,12 @@ export default {
|
|||||||
this.templateLoading = false;
|
this.templateLoading = false;
|
||||||
});
|
});
|
||||||
},
|
},
|
||||||
|
// 点击审核
|
||||||
|
reviewStateClk(row) {
|
||||||
|
// this.reviewState = true
|
||||||
|
this.$refs.reviewView.refreshReview(true)
|
||||||
|
this.reviewStateRow = row
|
||||||
|
}
|
||||||
},
|
},
|
||||||
};
|
};
|
||||||
</script>
|
</script>
|
||||||
|
|||||||
400
src/views/tenant/mission/Table/reviewView.vue
Normal file
400
src/views/tenant/mission/Table/reviewView.vue
Normal file
@@ -0,0 +1,400 @@
|
|||||||
|
<template>
|
||||||
|
<el-drawer title="审核" :visible.sync="reviewState" @closed="closed" size="60%">
|
||||||
|
<div class="mission-view">
|
||||||
|
<el-form label-position="left" size="small">
|
||||||
|
<el-collapse v-model="activeNames" @change="handleChange" class="avue-group">
|
||||||
|
<el-collapse-item title="岗位信息" name="1" disabled="true">
|
||||||
|
<template slot="title">
|
||||||
|
<div class="avue-group__header">
|
||||||
|
<div class="avue-group__title">零工岗位信息</div>
|
||||||
|
</div>
|
||||||
|
</template>
|
||||||
|
<el-row>
|
||||||
|
<el-col span="12">
|
||||||
|
<el-form-item label="岗位名称:">{{
|
||||||
|
model.missionTitle
|
||||||
|
}}
|
||||||
|
</el-form-item>
|
||||||
|
</el-col>
|
||||||
|
<el-col span="12">
|
||||||
|
<el-form-item label="岗位编码:">{{
|
||||||
|
model.missionNo
|
||||||
|
}}
|
||||||
|
</el-form-item>
|
||||||
|
</el-col>
|
||||||
|
</el-row>
|
||||||
|
<el-row>
|
||||||
|
<el-col span="12">
|
||||||
|
<el-form-item label="发布时间:">{{ format(model.stime) }}</el-form-item>
|
||||||
|
</el-col>
|
||||||
|
<el-col span="12">
|
||||||
|
<el-form-item label="结束时间:">{{ format(model.etime) }}</el-form-item>
|
||||||
|
</el-col>
|
||||||
|
</el-row>
|
||||||
|
</el-collapse-item>
|
||||||
|
|
||||||
|
<el-collapse-item title="岗位要求" name="2" disabled="true">
|
||||||
|
<template slot="title">
|
||||||
|
<div class="avue-group__header">
|
||||||
|
<div class="avue-group__title">岗位要求</div>
|
||||||
|
</div>
|
||||||
|
</template>
|
||||||
|
<el-row>
|
||||||
|
<el-col span="12">
|
||||||
|
<el-form-item label="招聘人数:">{{ model.peopleNum }}人</el-form-item>
|
||||||
|
</el-col>
|
||||||
|
<el-col span="12">
|
||||||
|
<el-form-item label="参考工资:">{{
|
||||||
|
model.wageUnitCategory === 4 ? wageCategoryOtherEnum[model.wage] : model.wage
|
||||||
|
}}{{ model.wageUnitCategory !== 4 ? wageUnitCategory[model.wageUnitCategory] : '' }}
|
||||||
|
</el-form-item>
|
||||||
|
</el-col>
|
||||||
|
</el-row>
|
||||||
|
<el-row>
|
||||||
|
<el-col span="12">
|
||||||
|
<el-form-item label="行业类型:">{{
|
||||||
|
model.tradeNames
|
||||||
|
}}
|
||||||
|
</el-form-item>
|
||||||
|
</el-col>
|
||||||
|
<el-col span="12">
|
||||||
|
<el-form-item>
|
||||||
|
<label slot="label">零工工种:</label>
|
||||||
|
{{ model.worktypeNames }} /
|
||||||
|
{{ model.skillNames }}
|
||||||
|
</el-form-item>
|
||||||
|
</el-col>
|
||||||
|
</el-row>
|
||||||
|
<el-row>
|
||||||
|
<el-col span="24">
|
||||||
|
<el-form-item label="岗位描述:">{{
|
||||||
|
model.missionDesc
|
||||||
|
}}
|
||||||
|
</el-form-item>
|
||||||
|
</el-col>
|
||||||
|
</el-row>
|
||||||
|
</el-collapse-item>
|
||||||
|
|
||||||
|
<el-collapse-item title="人员要求" name="3" disabled="true">
|
||||||
|
<template slot="title">
|
||||||
|
<div class="avue-group__header">
|
||||||
|
<div class="avue-group__title">人员要求</div>
|
||||||
|
</div>
|
||||||
|
</template>
|
||||||
|
<el-row>
|
||||||
|
<!-- <el-col span="16">-->
|
||||||
|
<!-- <el-form-item label="人员属性:">{{-->
|
||||||
|
<!-- model.userNature-->
|
||||||
|
<!-- }}-->
|
||||||
|
<!-- </el-form-item>-->
|
||||||
|
<!-- </el-col>-->
|
||||||
|
<el-col span="16">
|
||||||
|
<el-form-item label="学历要求:">{{
|
||||||
|
education[model.education]
|
||||||
|
}}
|
||||||
|
</el-form-item>
|
||||||
|
</el-col>
|
||||||
|
<el-col span="8">
|
||||||
|
<el-form-item label="年龄要求:">{{
|
||||||
|
model.ageDesc
|
||||||
|
}}
|
||||||
|
</el-form-item>
|
||||||
|
</el-col>
|
||||||
|
</el-row>
|
||||||
|
<el-row>
|
||||||
|
<el-col span="8">
|
||||||
|
<el-form-item label="经验要求:">{{
|
||||||
|
model.experienceDesc
|
||||||
|
}}
|
||||||
|
</el-form-item>
|
||||||
|
</el-col>
|
||||||
|
</el-row>
|
||||||
|
</el-collapse-item>
|
||||||
|
|
||||||
|
<el-collapse-item title="联系人" name="4" disabled="true">
|
||||||
|
<template slot="title">
|
||||||
|
<div class="avue-group__header">
|
||||||
|
<div class="avue-group__title">用工单位信息</div>
|
||||||
|
</div>
|
||||||
|
</template>
|
||||||
|
<el-row>
|
||||||
|
<el-col span="12">
|
||||||
|
<el-form-item label="用工单位:">{{
|
||||||
|
model.missionCompanyName
|
||||||
|
}}
|
||||||
|
</el-form-item>
|
||||||
|
</el-col>
|
||||||
|
<el-col span="12">
|
||||||
|
<el-form-item label="单位信用代码:">{{
|
||||||
|
model.missionCompanyScale
|
||||||
|
}}
|
||||||
|
</el-form-item>
|
||||||
|
</el-col>
|
||||||
|
<el-col span="12">
|
||||||
|
<el-form-item label="单位性质:">{{
|
||||||
|
model.missionCompanyNature
|
||||||
|
}}
|
||||||
|
</el-form-item>
|
||||||
|
</el-col>
|
||||||
|
<el-col span="12">
|
||||||
|
<el-form-item label="所属行业:">{{
|
||||||
|
model.missionCompanyIndustry
|
||||||
|
}}
|
||||||
|
</el-form-item>
|
||||||
|
</el-col>
|
||||||
|
</el-row>
|
||||||
|
<el-row>
|
||||||
|
<el-col span="24">
|
||||||
|
<el-form-item label="单位介绍:">{{
|
||||||
|
model.missionCompanyDescription
|
||||||
|
}}
|
||||||
|
</el-form-item>
|
||||||
|
</el-col>
|
||||||
|
</el-row>
|
||||||
|
<el-row>
|
||||||
|
<el-col span="8">
|
||||||
|
<el-form-item label="联 系 人:">{{
|
||||||
|
model.callName
|
||||||
|
}}
|
||||||
|
</el-form-item>
|
||||||
|
</el-col>
|
||||||
|
<el-col span="8">
|
||||||
|
<el-form-item label="联系方式:">{{
|
||||||
|
model.callTel
|
||||||
|
}}
|
||||||
|
</el-form-item>
|
||||||
|
</el-col>
|
||||||
|
<el-col span="8">
|
||||||
|
<el-form-item>
|
||||||
|
<label slot="label">座 机:</label>
|
||||||
|
{{ model.callNumber }}
|
||||||
|
</el-form-item>
|
||||||
|
</el-col>
|
||||||
|
</el-row>
|
||||||
|
<el-row>
|
||||||
|
<el-col span="24">
|
||||||
|
<el-form-item label="工作地址:" v-if="model.cityId">{{ model.cityId }}</el-form-item>
|
||||||
|
</el-col>
|
||||||
|
</el-row>
|
||||||
|
<el-row>
|
||||||
|
<el-col span="24">
|
||||||
|
<el-form-item label="详细地址:">{{
|
||||||
|
model.address
|
||||||
|
}}
|
||||||
|
</el-form-item>
|
||||||
|
<!-- <select-map :lat="model.lat" :lng="model.lon" :isCanEdit="false" :type="'view'"></select-map>-->
|
||||||
|
<super-map-view
|
||||||
|
:isCanEdit="false"
|
||||||
|
:longitude="model.lon"
|
||||||
|
:latitude="model.lat"
|
||||||
|
:open="true"
|
||||||
|
:zoom="10"
|
||||||
|
:min-zoom="10"
|
||||||
|
:max-zoom="20"
|
||||||
|
:flag-tip="false"
|
||||||
|
placeholder="请输入详细地址"
|
||||||
|
:type="'edit'"
|
||||||
|
></super-map-view>
|
||||||
|
</el-col>
|
||||||
|
</el-row>
|
||||||
|
</el-collapse-item>
|
||||||
|
|
||||||
|
<el-collapse-item title="审核状态" name="5" disabled="true">
|
||||||
|
<template slot="title">
|
||||||
|
<div class="avue-group__header">
|
||||||
|
<div class="avue-group__title">审核信息</div>
|
||||||
|
</div>
|
||||||
|
</template>
|
||||||
|
<avue-form
|
||||||
|
:option="reviewOption"
|
||||||
|
ref="reviewFrom"
|
||||||
|
v-model="reviewValue"
|
||||||
|
@submit="submit"
|
||||||
|
>
|
||||||
|
<template slot="menuForm">
|
||||||
|
<el-button @click="refreshReview(false)">取消</el-button>
|
||||||
|
</template>
|
||||||
|
</avue-form>
|
||||||
|
</el-collapse-item>
|
||||||
|
</el-collapse>
|
||||||
|
</el-form>
|
||||||
|
</div>
|
||||||
|
</el-drawer>
|
||||||
|
</template>
|
||||||
|
|
||||||
|
<script>
|
||||||
|
import {mapGetters} from "vuex";
|
||||||
|
import {dateFormat} from "@/util/date";
|
||||||
|
import {
|
||||||
|
wageUnitCategoryState,
|
||||||
|
educationState,
|
||||||
|
genderState,
|
||||||
|
recruitStatus,
|
||||||
|
wageUnitCategoryOther
|
||||||
|
} from "@/common/dic";
|
||||||
|
import {missionReview} from "@/api/tenant/mission";
|
||||||
|
|
||||||
|
function getDic(arr) {
|
||||||
|
let rel = {};
|
||||||
|
arr.forEach((element) => {
|
||||||
|
rel[element.value] = element.label;
|
||||||
|
});
|
||||||
|
return rel;
|
||||||
|
}
|
||||||
|
|
||||||
|
export default {
|
||||||
|
props: {model: Object, visible:Boolean},
|
||||||
|
data() {
|
||||||
|
return {
|
||||||
|
activeNames: ["1", "2", "3", "4", "5"],
|
||||||
|
wageUnitCategory: getDic(wageUnitCategoryState),
|
||||||
|
education: getDic(educationState),
|
||||||
|
gender: getDic(genderState),
|
||||||
|
recruit: getDic(recruitStatus),
|
||||||
|
reject: false,
|
||||||
|
reviewValue: {},
|
||||||
|
wageCategoryOtherEnum: getDic(wageUnitCategoryOther),
|
||||||
|
reviewState: false
|
||||||
|
};
|
||||||
|
},
|
||||||
|
mounted() {
|
||||||
|
},
|
||||||
|
methods: {
|
||||||
|
getSkill(skillStr) {
|
||||||
|
return skillStr.split(",");
|
||||||
|
},
|
||||||
|
format(date) {
|
||||||
|
if (date) {
|
||||||
|
return dateFormat(new Date(date), "yyyy/MM/dd");
|
||||||
|
}
|
||||||
|
},
|
||||||
|
// 点击提交
|
||||||
|
submit(form,done) {
|
||||||
|
const params = {
|
||||||
|
id: this.model.id,
|
||||||
|
remarks: '',
|
||||||
|
reviewMsg: this.reviewValue.reviewMsg,
|
||||||
|
reviewState: this.reviewValue.reviewState
|
||||||
|
}
|
||||||
|
|
||||||
|
missionReview(params).then(res => {
|
||||||
|
if (res.data.code === 200) {
|
||||||
|
done();
|
||||||
|
this.refreshReview(false)
|
||||||
|
|
||||||
|
this.$message({
|
||||||
|
type: "success",
|
||||||
|
message: res.data.msg,
|
||||||
|
});
|
||||||
|
|
||||||
|
this.$emit('refreshChange')
|
||||||
|
|
||||||
|
} else {
|
||||||
|
this.$message({
|
||||||
|
type: "error",
|
||||||
|
message: res.data.msg,
|
||||||
|
});
|
||||||
|
}
|
||||||
|
})
|
||||||
|
},
|
||||||
|
// 点击清空
|
||||||
|
refreshReview(res) {
|
||||||
|
this.reviewState = res
|
||||||
|
}
|
||||||
|
},
|
||||||
|
computed: {
|
||||||
|
...mapGetters(["area"]),
|
||||||
|
city() {
|
||||||
|
return this.$store.getters.getAreaParents(this.model.cityId);
|
||||||
|
},
|
||||||
|
// reviewState: {
|
||||||
|
// get() {
|
||||||
|
// return this.visible;
|
||||||
|
// },
|
||||||
|
// set(val) {
|
||||||
|
// this.$emit("update:visible", val);
|
||||||
|
// },
|
||||||
|
// },
|
||||||
|
reviewOption(){
|
||||||
|
return {
|
||||||
|
// size: "small",
|
||||||
|
labelWidth: 150,
|
||||||
|
labelPosition: 'left',
|
||||||
|
emptyBtn: false,
|
||||||
|
// submitBtn: false,
|
||||||
|
emptyText: '取消',
|
||||||
|
column:[
|
||||||
|
{
|
||||||
|
label: '审核',
|
||||||
|
prop: 'reviewState',
|
||||||
|
type: 'select',
|
||||||
|
span: 18,
|
||||||
|
dicData: [{
|
||||||
|
label: '通过',
|
||||||
|
value: 1
|
||||||
|
}, {
|
||||||
|
label: '驳回',
|
||||||
|
value: 9
|
||||||
|
}],
|
||||||
|
rules: [
|
||||||
|
{
|
||||||
|
required: true,
|
||||||
|
message: "请选择审核结果",
|
||||||
|
trigger: "blur",
|
||||||
|
},
|
||||||
|
],
|
||||||
|
change:({column,value}) =>{
|
||||||
|
console.log(value, column)
|
||||||
|
if(value == 9){
|
||||||
|
this.reject = true
|
||||||
|
}else{
|
||||||
|
this.reject = false
|
||||||
|
}
|
||||||
|
}
|
||||||
|
},
|
||||||
|
{
|
||||||
|
label: '驳回原因',
|
||||||
|
prop: 'reviewMsg',
|
||||||
|
type: 'textarea',
|
||||||
|
rows: 5,
|
||||||
|
span: 18,
|
||||||
|
display: this.reject,
|
||||||
|
rules: [
|
||||||
|
{
|
||||||
|
required: true,
|
||||||
|
message: "请输入驳回原因",
|
||||||
|
trigger: "blur",
|
||||||
|
},
|
||||||
|
],
|
||||||
|
}
|
||||||
|
]
|
||||||
|
}
|
||||||
|
},
|
||||||
|
},
|
||||||
|
};
|
||||||
|
</script>
|
||||||
|
|
||||||
|
<style>
|
||||||
|
.mission-view .el-tag + .el-tag {
|
||||||
|
margin-left: 5px;
|
||||||
|
}
|
||||||
|
|
||||||
|
.mission-view .el-form {
|
||||||
|
padding: 0 20px;
|
||||||
|
}
|
||||||
|
|
||||||
|
.mission-view .el-form .el-col {
|
||||||
|
padding: 0 10px;
|
||||||
|
}
|
||||||
|
|
||||||
|
.mission-view .el-form .el-col .el-form-item {
|
||||||
|
margin-bottom: 18px;
|
||||||
|
}
|
||||||
|
|
||||||
|
.mission-view .el-collapse {
|
||||||
|
border-top: 0px;
|
||||||
|
}
|
||||||
|
.button {
|
||||||
|
text-align: center;
|
||||||
|
}
|
||||||
|
</style>
|
||||||
Reference in New Issue
Block a user