|
|
@@ -13,51 +13,65 @@
|
|
|
<el-form v-loading="loadingPostpush" ref="formPost" size="large"
|
|
|
class="flex align-center justify-between" label-position="top" :inline="true" :model="postPushForm"
|
|
|
label-width="120px">
|
|
|
- <el-form-item prop="postType" :rules="[{required: true,message: '请选择招聘类型',trigger: 'blur',},]"
|
|
|
+ <el-form-item prop="isDue" :rules="[{ required: true, message: '请选择招聘模式', trigger: 'change', },]"
|
|
|
+ class="row45" label="招聘模式">
|
|
|
+ <el-radio-group v-model="postPushForm.isDue">
|
|
|
+ <el-radio :value="0">普通岗位招聘</el-radio>
|
|
|
+ <el-radio :value="1">急聘</el-radio>
|
|
|
+ </el-radio-group>
|
|
|
+ </el-form-item>
|
|
|
+ <el-form-item prop="postType" :rules="[{ required: true, message: '请选择招聘类型', trigger: 'blur', },]"
|
|
|
class="row45" label="招聘类型">
|
|
|
<el-select style="width: 100%;" v-model="postPushForm.postType" placeholder="请选择招聘类型">
|
|
|
<el-option v-for="item in postTypeList" :key="item.value" :label="item.value"
|
|
|
:value="item.value" />
|
|
|
</el-select>
|
|
|
</el-form-item>
|
|
|
- <el-form-item prop="stationName" :rules="[{required: true,message: '请输入岗位名称',trigger: 'blur',},]"
|
|
|
+ <!-- <el-form-item prop="stationName" :rules="[{ required: true, message: '请输入岗位名称', trigger: 'blur', },]"
|
|
|
class="row45" label="岗位名称">
|
|
|
<el-input placeholder="请输入岗位名称" class="inputClass" v-model="postPushForm.stationName" />
|
|
|
- </el-form-item>
|
|
|
+ </el-form-item> -->
|
|
|
<el-form-item prop="ruleClassifyName"
|
|
|
- :rules="[{required: true,message: '请选择岗位类型',trigger: 'blur',},]" class="row45" label="岗位类型">
|
|
|
- <el-input :disabled="type=='updata' && postPushForm.status!=3" @click.stop="openPostPush()"
|
|
|
+ :rules="[{ required: true, message: '请选择岗位类型', trigger: 'blur', },]" class="row45" label="岗位类型">
|
|
|
+ <el-input :disabled="type == 'updata' && postPushForm.status != 3" @click.stop="openPostPush()"
|
|
|
placeholder="请选择岗位类型" readonly class="inputClass" v-model="postPushForm.ruleClassifyName" />
|
|
|
</el-form-item>
|
|
|
- <el-form-item prop="address" :rules="[{required: true,message: '请输入工作地址',trigger: 'blur',},]"
|
|
|
+ <el-form-item prop="address" :rules="[{ required: true, message: '请输入工作地址', trigger: 'blur', },]"
|
|
|
class="row45" label="工作地址">
|
|
|
<el-autocomplete style="width: 100%;" @input="workInput" v-model="postPushForm.address"
|
|
|
:fetch-suggestions="querySearchAsync" placeholder="请输入工作地址" @select="handleSelect" />
|
|
|
</el-form-item>
|
|
|
- <el-form-item prop="experience" :rules="[{required: true,message: '请选择经验要求',trigger: 'blur',},]"
|
|
|
+ <el-form-item prop="experience" :rules="[{ required: true, message: '请选择经验要求', trigger: 'blur', },]"
|
|
|
class="row45" label="经验要求">
|
|
|
<el-select style="width: 100%;" v-model="postPushForm.experience" placeholder="请选择经验要求">
|
|
|
<el-option v-for="item in workList" :key="item.value" :label="item.value"
|
|
|
:value="item.value" />
|
|
|
</el-select>
|
|
|
</el-form-item>
|
|
|
- <el-form-item prop="education" :rules="[{required: true,message: '请选择学历要求',trigger: 'blur',},]"
|
|
|
+ <el-form-item prop="education" :rules="[{ required: true, message: '请选择学历要求', trigger: 'blur', },]"
|
|
|
class="row45" label="学历要求">
|
|
|
<el-select style="width: 100%;" v-model="postPushForm.education" placeholder="请选择学历要求">
|
|
|
<el-option v-for="item in schoolList" :key="item.value" :label="item.value"
|
|
|
:value="item.value" />
|
|
|
</el-select>
|
|
|
</el-form-item>
|
|
|
- <el-form-item prop="salaryRange" :rules="[{required: true,message: '请选择薪资范围',trigger: 'blur',},]"
|
|
|
- class="row45" label="薪资范围">
|
|
|
+ <el-form-item prop="salaryRange"
|
|
|
+ :rules="[{ required: true, message: '请选择薪资范围', trigger: 'blur', },]" class="row45" label="薪资范围">
|
|
|
<el-select style="width: 100%;" v-model="postPushForm.salaryRange" placeholder="请选择薪资范围">
|
|
|
<el-option v-for="item in moneyList" :key="item.value" :label="item.value"
|
|
|
:value="item.value" />
|
|
|
</el-select>
|
|
|
</el-form-item>
|
|
|
- <el-form-item prop="tag" :rules="[{required: true,message: '请添加岗位关键词',trigger: 'blur',},]"
|
|
|
+ <el-form-item prop="salaryTimes"
|
|
|
+ :rules="[{ required: true, message: '请选择薪资福利', trigger: 'blur', },]" class="row45" label="薪资福利">
|
|
|
+ <el-select style="width: 100%;" v-model="postPushForm.salaryTimes" placeholder="请选择薪资福利">
|
|
|
+ <el-option v-for="item in salaryTimesList" :key="item.value" :label="item.value"
|
|
|
+ :value="item.value" />
|
|
|
+ </el-select>
|
|
|
+ </el-form-item>
|
|
|
+ <el-form-item prop="tag" :rules="[{ required: true, message: '请添加岗位关键词', trigger: 'blur', },]"
|
|
|
class="row45" label="岗位关键词">
|
|
|
- <el-tag size="large" style="margin-right: 10px;" v-for="(item,index) in postPushForm.tag"
|
|
|
+ <el-tag size="large" style="margin-right: 10px;" v-for="(item, index) in postPushForm.tag"
|
|
|
:key="item" closable :disable-transitions="false" @close="handleClose(index)">
|
|
|
{{ item }}
|
|
|
</el-tag>
|
|
|
@@ -67,13 +81,13 @@
|
|
|
+ 新增
|
|
|
</el-button>
|
|
|
</el-form-item>
|
|
|
- <el-form-item prop="industry" :rules="[{required: true,message: '请选择行业要求',trigger: 'blur',},]"
|
|
|
+ <!-- <el-form-item prop="industry" :rules="[{ required: true, message: '请选择行业要求', trigger: 'blur', },]"
|
|
|
class="row45" label="行业要求">
|
|
|
<el-input @click="getIndustryList()" placeholder="请选择行业要求" readonly class="inputClass"
|
|
|
v-model="postPushForm.industry" />
|
|
|
- </el-form-item>
|
|
|
+ </el-form-item> -->
|
|
|
<el-form-item prop="positionWelfare"
|
|
|
- :rules="[{required: true,message: '请选择岗位福利',trigger: 'blur',},]" class="row45" label="岗位福利">
|
|
|
+ :rules="[{ required: true, message: '请选择岗位福利', trigger: 'blur', },]" class="row45" label="岗位福利">
|
|
|
<el-select v-model="postPushForm.positionWelfare" multiple placeholder="请选择岗位福利"
|
|
|
style="width: 100%">
|
|
|
<el-option v-for="item in flList" :key="item.value" :label="item.value"
|
|
|
@@ -81,7 +95,7 @@
|
|
|
</el-select>
|
|
|
</el-form-item>
|
|
|
<el-form-item prop="positionDetails"
|
|
|
- :rules="[{required: true,message: '请输入岗位介绍',trigger: 'blur',},]" class="row45" label="岗位介绍">
|
|
|
+ :rules="[{ required: true, message: '请输入岗位介绍', trigger: 'blur', },]" class="row45" label="岗位介绍">
|
|
|
<!-- <el-input v-model="postPushForm.positionDetails" :rows="4" type="textarea"
|
|
|
placeholder="请输入岗位介绍" /> -->
|
|
|
<Editor style="width: 100%;min-height: 200px;" v-model="postPushForm.positionDetails"
|
|
|
@@ -116,41 +130,41 @@
|
|
|
选择行业
|
|
|
</div>
|
|
|
<div class="my-header-title flex align-center" style="margin-left: 40px;width: 500px;">
|
|
|
- <el-select style="width: 300px;" @remove-tag="removeTag" :collapse-tags=" true"
|
|
|
+ <el-select style="width: 300px;" @remove-tag="removeTag" :collapse-tags="true"
|
|
|
:max-collapse-tags="2" class="my-header-title-se" multiple-limit="3"
|
|
|
v-model="industryArr" multiple placeholder="请选择行业">
|
|
|
<el-option v-for="item in industryArrList" :key="item.industryName"
|
|
|
:label="item.industryName" :value="item.industryName" />
|
|
|
</el-select>
|
|
|
- <span
|
|
|
- style="margin-left: 10px;font-size: 13px;color: #999999;">{{industryArr.length}}/3</span>
|
|
|
+ <span style="margin-left: 10px;font-size: 13px;color: #999999;">{{ industryArr.length
|
|
|
+ }}/3</span>
|
|
|
<el-button @click="addHangye()" style="margin-left: 10px;" type="primary">确定</el-button>
|
|
|
</div>
|
|
|
</div>
|
|
|
</template>
|
|
|
<div class="myHy flex align-center justify-center">
|
|
|
<div class="myHy-box">
|
|
|
- <div class="myHy-box-item flex justify-between" v-for="(item,index) in industryList"
|
|
|
+ <div class="myHy-box-item flex justify-between" v-for="(item, index) in industryList"
|
|
|
:key="index">
|
|
|
<div class="myHy-box-item-l">
|
|
|
- {{item.industryName}}
|
|
|
+ {{ item.industryName }}
|
|
|
</div>
|
|
|
<div class="myHy-box-item-r flex align-center justify-between flex-wrap">
|
|
|
- <div class="myHy-box-item-r-item" :style="ite.select?'color:#00DD9A':''"
|
|
|
- @click="addIndustry(ite)" v-for="(ite,ind) in item.childrenList" :key="ind">
|
|
|
- {{ite.industryName}}
|
|
|
+ <div class="myHy-box-item-r-item" :style="ite.select ? 'color:#00DD9A' : ''"
|
|
|
+ @click="addIndustry(ite)" v-for="(ite, ind) in item.childrenList" :key="ind">
|
|
|
+ {{ ite.industryName }}
|
|
|
</div>
|
|
|
<div class="myHy-box-item-r-item"></div>
|
|
|
<div class="myHy-box-item-r-item"></div>
|
|
|
</div>
|
|
|
</div>
|
|
|
- <el-empty v-if="industryList.length==0" description="暂无行业" />
|
|
|
+ <el-empty v-if="industryList.length == 0" description="暂无行业" />
|
|
|
</div>
|
|
|
</div>
|
|
|
</el-dialog>
|
|
|
</el-dialog>
|
|
|
<!-- 岗位选择 -->
|
|
|
- <el-dialog @close="type=false" class="workDialog" :draggable="true" destroy-on-close align-center center
|
|
|
+ <el-dialog @close="type = false" class="workDialog" :draggable="true" destroy-on-close align-center center
|
|
|
v-model="workDialog" title="工作地址">
|
|
|
<template #header>
|
|
|
<div class="my-header flex align-center">
|
|
|
@@ -168,8 +182,8 @@
|
|
|
<div class="work-left flex align-center justify-center">
|
|
|
<div class="work-left-box">
|
|
|
<ul class="work-left-box-list" style="overflow: auto">
|
|
|
- <li @click="workCurrent = index" :class="workCurrent==index?'workActive':''"
|
|
|
- v-for="(item,index) in workTypeList" :key="index"
|
|
|
+ <li @click="workCurrent = index" :class="workCurrent == index ? 'workActive' : ''"
|
|
|
+ v-for="(item, index) in workTypeList" :key="index"
|
|
|
class="work-left-box-list-item flex align-center justify-center">
|
|
|
<div class="work-left-box-list-items">
|
|
|
{{ item.ruleClassifyName }}
|
|
|
@@ -180,18 +194,18 @@
|
|
|
</div>
|
|
|
<div class="work-right flex align-center justify-center">
|
|
|
<div class="work-right-box">
|
|
|
- <div class="work-right-box-item" v-for="(item,index) in rightList" :key="index">
|
|
|
+ <div class="work-right-box-item" v-for="(item, index) in rightList" :key="index">
|
|
|
<div class="work-right-box-item-title">
|
|
|
- {{item.title}}
|
|
|
+ {{ item.title }}
|
|
|
</div>
|
|
|
<div class="work-right-box-item-name flex align-center flex-wrap">
|
|
|
<div @click="selectJob(ite)" class="work-right-box-item-names"
|
|
|
- v-for="(ite,ind) in item.childrens">
|
|
|
- {{ite.ruleClassifyName}}
|
|
|
+ v-for="(ite, ind) in item.childrens">
|
|
|
+ {{ ite.ruleClassifyName }}
|
|
|
</div>
|
|
|
</div>
|
|
|
</div>
|
|
|
- <el-empty v-if="rightList.length==0" description="暂无岗位" />
|
|
|
+ <el-empty v-if="rightList.length == 0" description="暂无岗位" />
|
|
|
</div>
|
|
|
</div>
|
|
|
</div>
|
|
|
@@ -201,773 +215,826 @@
|
|
|
</template>
|
|
|
|
|
|
<script>
|
|
|
- import {
|
|
|
- ElMessageBox,
|
|
|
- ElMessage,
|
|
|
- } from 'element-plus'
|
|
|
- import axios from 'axios';
|
|
|
- import jsonp from 'axios-jsonp'
|
|
|
- import agreement from '../agreement/agreement.vue'
|
|
|
- import '@wangeditor/editor/dist/css/style.css' // 引入 css
|
|
|
- import {
|
|
|
+import {
|
|
|
+ ElMessageBox,
|
|
|
+ ElMessage,
|
|
|
+} from 'element-plus'
|
|
|
+import axios from 'axios';
|
|
|
+import jsonp from 'axios-jsonp'
|
|
|
+import agreement from '../agreement/agreement.vue'
|
|
|
+import '@wangeditor/editor/dist/css/style.css' // 引入 css
|
|
|
+import {
|
|
|
+ Editor,
|
|
|
+ Toolbar
|
|
|
+} from '@wangeditor/editor-for-vue'
|
|
|
+export default {
|
|
|
+ components: {
|
|
|
+ agreement,
|
|
|
Editor,
|
|
|
Toolbar
|
|
|
- } from '@wangeditor/editor-for-vue'
|
|
|
- export default {
|
|
|
- components: {
|
|
|
- agreement,
|
|
|
- Editor,
|
|
|
- Toolbar
|
|
|
+ },
|
|
|
+ props: {
|
|
|
+ // 显示弹窗
|
|
|
+ dialogPostPushs: {
|
|
|
+ type: Boolean,
|
|
|
+ default: false
|
|
|
},
|
|
|
- props: {
|
|
|
- // 显示弹窗
|
|
|
- dialogPostPushs: {
|
|
|
- type: Boolean,
|
|
|
- default: false
|
|
|
- },
|
|
|
- //发布类型
|
|
|
- type: {
|
|
|
- type: String,
|
|
|
- default: 'save'
|
|
|
- },
|
|
|
- //岗位id
|
|
|
- postPushId: {
|
|
|
- type: String || Number,
|
|
|
- default: ''
|
|
|
- }
|
|
|
+ //发布类型
|
|
|
+ type: {
|
|
|
+ type: String,
|
|
|
+ default: 'save'
|
|
|
},
|
|
|
- data() {
|
|
|
- return {
|
|
|
- workTypeList: [], //岗位类型
|
|
|
- workCurrent: 0,
|
|
|
- workSearch: '', //岗位搜索
|
|
|
- workDialog: false, //是否打开岗位选择
|
|
|
- dialogAgreements: false, //协议弹窗
|
|
|
- checked: false, //是否同意协议
|
|
|
- industryArr: [],
|
|
|
- industryArrList: [], //可选择的行业列表
|
|
|
- industryDialog: false,
|
|
|
- inputValue: '',
|
|
|
- inputVisible: false,
|
|
|
- postTypeList: [],
|
|
|
- postPushForm: {
|
|
|
- postType: '', //岗位类型
|
|
|
- stationName: '', //岗位名称
|
|
|
- ruleClassifyName: '', //岗位类型
|
|
|
- ruleClassifyId: '', //岗位id
|
|
|
- address: '', //工作地址
|
|
|
- experience: '', //经验要求
|
|
|
- education: '', //学历要求
|
|
|
- salaryRange: '', //薪资范围
|
|
|
- tag: [], //岗位关键词
|
|
|
- industry: '', //行业要求
|
|
|
- positionWelfare: '', //岗位福利
|
|
|
- positionDetails: '', //岗位介绍
|
|
|
- province: '', //省
|
|
|
- city: '', //市
|
|
|
- county: '', //区
|
|
|
- lng: '',
|
|
|
- lat: '',
|
|
|
- companyId: localStorage.getItem('companyId')
|
|
|
+ //岗位id
|
|
|
+ postPushId: {
|
|
|
+ type: String || Number,
|
|
|
+ default: ''
|
|
|
+ }
|
|
|
+ },
|
|
|
+ data() {
|
|
|
+ return {
|
|
|
+ workTypeList: [], //岗位类型
|
|
|
+ workCurrent: 0,
|
|
|
+ workSearch: '', //岗位搜索
|
|
|
+ workDialog: false, //是否打开岗位选择
|
|
|
+ dialogAgreements: false, //协议弹窗
|
|
|
+ checked: false, //是否同意协议
|
|
|
+ industryArr: [],
|
|
|
+ industryArrList: [], //可选择的行业列表
|
|
|
+ industryDialog: false,
|
|
|
+ inputValue: '',
|
|
|
+ inputVisible: false,
|
|
|
+ postTypeList: [],
|
|
|
+ postPushForm: {
|
|
|
+ isDue: 0,//岗位招聘模式
|
|
|
+ postType: '', //岗位类型
|
|
|
+ stationName: '', //岗位名称
|
|
|
+ ruleClassifyName: '', //岗位类型
|
|
|
+ ruleClassifyId: '', //岗位id
|
|
|
+ address: '', //工作地址
|
|
|
+ experience: '', //经验要求
|
|
|
+ education: '', //学历要求
|
|
|
+ salaryRange: '', //薪资范围
|
|
|
+ salaryTimes: '',
|
|
|
+ tag: [], //岗位关键词
|
|
|
+ industry: '', //行业要求
|
|
|
+ positionWelfare: '', //岗位福利
|
|
|
+ positionDetails: '', //岗位介绍
|
|
|
+ province: '', //省
|
|
|
+ city: '', //市
|
|
|
+ county: '', //区
|
|
|
+ lng: '',
|
|
|
+ lat: '',
|
|
|
+ companyId: localStorage.getItem('companyId')
|
|
|
|
|
|
+ },
|
|
|
+ loadingPostpush: false,
|
|
|
+ dialogPostPush: false,
|
|
|
+ workList: [], //经验要求列表
|
|
|
+ schoolList: [], //学历列表
|
|
|
+ moneyList: [], //薪资列表
|
|
|
+ screenHeight: 0,
|
|
|
+ flList: [],
|
|
|
+ salaryTimesList: [
|
|
|
+ {
|
|
|
+ "value": "12薪",
|
|
|
+ "label": "12薪"
|
|
|
+ },
|
|
|
+ {
|
|
|
+ "value": "13薪",
|
|
|
+ "label": "13薪"
|
|
|
+ },
|
|
|
+ {
|
|
|
+ "value": "14薪",
|
|
|
+ "label": "14薪"
|
|
|
+ },
|
|
|
+ {
|
|
|
+ "value": "15薪",
|
|
|
+ "label": "15薪"
|
|
|
+ },
|
|
|
+ {
|
|
|
+ "value": "16薪",
|
|
|
+ "label": "16薪"
|
|
|
+ },
|
|
|
+ {
|
|
|
+ "value": "17薪",
|
|
|
+ "label": "17薪"
|
|
|
+ },
|
|
|
+ {
|
|
|
+ "value": "18薪",
|
|
|
+ "label": "18薪"
|
|
|
},
|
|
|
- loadingPostpush: false,
|
|
|
- dialogPostPush: false,
|
|
|
- workList: [], //经验要求列表
|
|
|
- schoolList: [], //学历列表
|
|
|
- moneyList: [], //薪资列表
|
|
|
- screenHeight: 0,
|
|
|
- flList: [],
|
|
|
- price: 0,
|
|
|
- editorRef: '',
|
|
|
- editorConfig: {
|
|
|
- placeholder: '请输入岗位介绍'
|
|
|
+ {
|
|
|
+ "value": "19薪",
|
|
|
+ "label": "19薪"
|
|
|
+ },
|
|
|
+ {
|
|
|
+ "value": "20薪",
|
|
|
+ "label": "20薪"
|
|
|
+ },
|
|
|
+ {
|
|
|
+ "value": "21薪",
|
|
|
+ "label": "21薪"
|
|
|
+ },
|
|
|
+ {
|
|
|
+ "value": "22薪",
|
|
|
+ "label": "22薪"
|
|
|
+ },
|
|
|
+ {
|
|
|
+ "value": "23薪",
|
|
|
+ "label": "23薪"
|
|
|
}
|
|
|
+ ],
|
|
|
+ price: 0,
|
|
|
+ editorRef: '',
|
|
|
+ editorConfig: {
|
|
|
+ placeholder: '请输入岗位介绍'
|
|
|
}
|
|
|
+ }
|
|
|
+ },
|
|
|
+ computed: {
|
|
|
+ rightList() {
|
|
|
+ return this.workTypeList.length > 0 ? this.workTypeList[this.workCurrent].childrens : []
|
|
|
+ }
|
|
|
+ },
|
|
|
+ mounted() {
|
|
|
+ this.screenHeight = window.innerHeight
|
|
|
+ this.dialogPostPush = this.dialogPostPushs
|
|
|
+ if (this.postPushId) {
|
|
|
+ this.getJobInfo()
|
|
|
+ }
|
|
|
+ this.getPostType()
|
|
|
+ this.IntentionChen()
|
|
|
+ this.getSchoolList()
|
|
|
+ this.getMoneyList()
|
|
|
+ this.getFuliList()
|
|
|
+ },
|
|
|
+ methods: {
|
|
|
+ selectJob(info) {
|
|
|
+ console.log(info)
|
|
|
+ this.postPushForm.ruleClassifyName = info.ruleClassifyName
|
|
|
+ this.postPushForm.ruleClassifyId = info.ruleClassifyId
|
|
|
+ this.price = info.price
|
|
|
+ this.workDialog = false
|
|
|
},
|
|
|
- computed: {
|
|
|
- rightList() {
|
|
|
- return this.workTypeList.length > 0 ? this.workTypeList[this.workCurrent].childrens : []
|
|
|
- }
|
|
|
+ //选择岗位
|
|
|
+ handleSelectWork(item) {
|
|
|
+ console.log(item)
|
|
|
+ this.postPushForm.ruleClassifyName = item.ruleClassifyName
|
|
|
+ this.postPushForm.ruleClassifyId = item.ruleClassifyId
|
|
|
+ this.price = item.price
|
|
|
+ this.workDialog = false
|
|
|
},
|
|
|
- mounted() {
|
|
|
- this.screenHeight = window.innerHeight
|
|
|
- this.dialogPostPush = this.dialogPostPushs
|
|
|
- if (this.postPushId) {
|
|
|
- this.getJobInfo()
|
|
|
+ // 岗位的搜索
|
|
|
+ querySearchAsyncWork(queryString, cd) {
|
|
|
+ if (!queryString) {
|
|
|
+ cd([])
|
|
|
+ return
|
|
|
}
|
|
|
- this.getPostType()
|
|
|
- this.IntentionChen()
|
|
|
- this.getSchoolList()
|
|
|
- this.getMoneyList()
|
|
|
- this.getFuliList()
|
|
|
- },
|
|
|
- methods: {
|
|
|
- selectJob(info) {
|
|
|
- console.log(info)
|
|
|
- this.postPushForm.ruleClassifyName = info.ruleClassifyName
|
|
|
- this.postPushForm.ruleClassifyId = info.ruleClassifyId
|
|
|
- this.price = info.price
|
|
|
- this.workDialog = false
|
|
|
- },
|
|
|
- //选择岗位
|
|
|
- handleSelectWork(item) {
|
|
|
- console.log(item)
|
|
|
- this.postPushForm.ruleClassifyName = item.ruleClassifyName
|
|
|
- this.postPushForm.ruleClassifyId = item.ruleClassifyId
|
|
|
- this.price = item.price
|
|
|
- this.workDialog = false
|
|
|
- },
|
|
|
- // 岗位的搜索
|
|
|
- querySearchAsyncWork(queryString, cd) {
|
|
|
- if (!queryString) {
|
|
|
- cd([])
|
|
|
- return
|
|
|
+ let data = {
|
|
|
+ ruleClassifyName: queryString
|
|
|
+ }
|
|
|
+ this.$Request.get('/app/rule/userGetClassify', {
|
|
|
+ params: data
|
|
|
+ }).then(res => {
|
|
|
+ if (res.code == 0) {
|
|
|
+ let arr = res.data
|
|
|
+ arr.map(item => {
|
|
|
+ item.value = item.ruleClassifyName
|
|
|
+ })
|
|
|
+ cd(arr)
|
|
|
}
|
|
|
- let data = {
|
|
|
- ruleClassifyName: queryString
|
|
|
+ })
|
|
|
+ },
|
|
|
+ //editor渲染完成后获取实例
|
|
|
+ handleCreated(editor) {
|
|
|
+ this.editorRef = editor
|
|
|
+ },
|
|
|
+ workInput() {
|
|
|
+ this.postPushForm.province = '' //省
|
|
|
+ this.postPushForm.city = '' //市
|
|
|
+ this.postPushForm.county = '' //区
|
|
|
+ this.postPushForm.lng = ''
|
|
|
+ this.postPushForm.lat = ''
|
|
|
+ },
|
|
|
+ openAgree() {
|
|
|
+ this.dialogAgreements = true
|
|
|
+ },
|
|
|
+ closeAgree(data) {
|
|
|
+ this.dialogAgreements = data
|
|
|
+ },
|
|
|
+ //发布岗位
|
|
|
+ pay(datas, postPushId) {
|
|
|
+ this.loadingPostpush = true
|
|
|
+ let data = datas;
|
|
|
+ if (postPushId) {
|
|
|
+ data.postPushId = postPushId
|
|
|
+ }
|
|
|
+ this.$Request.post('/app/postPush/savePostPush', data, {
|
|
|
+ type: 'json'
|
|
|
+ }).then(res => {
|
|
|
+ if (res.code == 0) {
|
|
|
+ ElMessage({
|
|
|
+ message: '发布成功',
|
|
|
+ type: 'success',
|
|
|
+ duration: 1500,
|
|
|
+ offset: this.screenHeight / 2
|
|
|
+ })
|
|
|
+ this.loadingPostpush = false
|
|
|
+ this.dialogPostPush = false
|
|
|
+
|
|
|
+ } else {
|
|
|
+ this.loadingPostpush = false
|
|
|
+ ElMessage({
|
|
|
+ message: res.msg,
|
|
|
+ type: 'error',
|
|
|
+ duration: 1500,
|
|
|
+ offset: this.screenHeight / 2
|
|
|
+ })
|
|
|
}
|
|
|
- this.$Request.get('/app/rule/userGetClassify', {
|
|
|
- params: data
|
|
|
- }).then(res => {
|
|
|
- if (res.code == 0) {
|
|
|
- let arr = res.data
|
|
|
- arr.map(item => {
|
|
|
- item.value = item.ruleClassifyName
|
|
|
- })
|
|
|
- cd(arr)
|
|
|
+ })
|
|
|
+ },
|
|
|
+ //获取岗位详情
|
|
|
+ getJobInfo() {
|
|
|
+ let data = {
|
|
|
+ postPushId: this.postPushId
|
|
|
+ }
|
|
|
+ this.$Request.get('/app/postPush/selectPostPushDetails', {
|
|
|
+ params: data
|
|
|
+ }).then(res => {
|
|
|
+ if (res.code == 0) {
|
|
|
+ let obj = res.data
|
|
|
+ this.postPushForm.postType = obj.postType
|
|
|
+ this.postPushForm.stationName = obj.stationName
|
|
|
+ this.postPushForm.ruleClassifyName = obj.ruleClassifyName
|
|
|
+ this.postPushForm.ruleClassifyId = obj.ruleClassifyId
|
|
|
+ this.postPushForm.address = obj.address
|
|
|
+ this.postPushForm.experience = obj.experience
|
|
|
+ this.postPushForm.education = obj.education
|
|
|
+ this.postPushForm.salaryRange = obj.salaryRange
|
|
|
+ this.postPushForm.tag = obj.tag.split(',')
|
|
|
+ this.postPushForm.industry = obj.industry
|
|
|
+ this.postPushForm.positionWelfare = obj.positionWelfare.split(',')
|
|
|
+ this.postPushForm.positionDetails = obj.positionDetails
|
|
|
+ this.postPushForm.province = obj.province
|
|
|
+ this.postPushForm.city = obj.city
|
|
|
+ this.postPushForm.county = obj.county
|
|
|
+ this.postPushForm.lng = obj.lng
|
|
|
+ this.postPushForm.lat = obj.lat
|
|
|
+ this.postPushForm.status = obj.status
|
|
|
+ if (this.type == 'save') {
|
|
|
+ this.getJobPrice(obj.ruleClassifyId)
|
|
|
+ } else if (this.postPushForm.status == 3) {
|
|
|
+ this.getJobPrice(obj.ruleClassifyId)
|
|
|
}
|
|
|
- })
|
|
|
- },
|
|
|
- //editor渲染完成后获取实例
|
|
|
- handleCreated(editor) {
|
|
|
- this.editorRef = editor
|
|
|
- },
|
|
|
- workInput() {
|
|
|
- this.postPushForm.province = '' //省
|
|
|
- this.postPushForm.city = '' //市
|
|
|
- this.postPushForm.county = '' //区
|
|
|
- this.postPushForm.lng = ''
|
|
|
- this.postPushForm.lat = ''
|
|
|
- },
|
|
|
- openAgree() {
|
|
|
- this.dialogAgreements = true
|
|
|
- },
|
|
|
- closeAgree(data) {
|
|
|
- this.dialogAgreements = data
|
|
|
- },
|
|
|
- //发布岗位
|
|
|
- pay(datas, postPushId) {
|
|
|
- this.loadingPostpush = true
|
|
|
- let data = datas;
|
|
|
- if (postPushId) {
|
|
|
- data.postPushId = postPushId
|
|
|
}
|
|
|
- this.$Request.post('/app/postPush/savePostPush', data, {
|
|
|
- type: 'json'
|
|
|
- }).then(res => {
|
|
|
- if (res.code == 0) {
|
|
|
+ })
|
|
|
+ },
|
|
|
+ //获取岗位价格
|
|
|
+ getJobPrice(ruleClassifyId) {
|
|
|
+ let data = {
|
|
|
+ ruleClassifyId: ruleClassifyId
|
|
|
+ }
|
|
|
+ this.$Request.get('/app/rule/ruleClassifyId', {
|
|
|
+ params: data
|
|
|
+ }).then(res => {
|
|
|
+ if (res.code == 0) {
|
|
|
+ this.price = res.data.price
|
|
|
+ }
|
|
|
+ })
|
|
|
+ },
|
|
|
+ //发布岗位
|
|
|
+ savePostPush() {
|
|
|
+ let obj = JSON.parse(JSON.stringify(this.postPushForm))
|
|
|
+ obj.positionWelfare = obj.positionWelfare.join(',')
|
|
|
+ obj.tag = obj.tag.join(',')
|
|
|
+ console.log(obj, '发布岗位')
|
|
|
+ let formPost = this.$refs.formPost
|
|
|
+ formPost.validate((valid) => {
|
|
|
+ if (valid) {
|
|
|
+ if (!obj.lng || !obj.lat) {
|
|
|
ElMessage({
|
|
|
- message: '发布成功',
|
|
|
- type: 'success',
|
|
|
+ message: '请选择搜索出来的地址',
|
|
|
+ type: 'info',
|
|
|
duration: 1500,
|
|
|
offset: this.screenHeight / 2
|
|
|
})
|
|
|
- this.loadingPostpush = false
|
|
|
- this.dialogPostPush = false
|
|
|
-
|
|
|
- } else {
|
|
|
- this.loadingPostpush = false
|
|
|
+ return
|
|
|
+ }
|
|
|
+ if (!this.checked) {
|
|
|
ElMessage({
|
|
|
- message: res.msg,
|
|
|
- type: 'error',
|
|
|
+ message: '请阅读并同意《岗位发布协议》',
|
|
|
+ type: 'info',
|
|
|
duration: 1500,
|
|
|
offset: this.screenHeight / 2
|
|
|
})
|
|
|
+ return
|
|
|
}
|
|
|
- })
|
|
|
- },
|
|
|
- //获取岗位详情
|
|
|
- getJobInfo() {
|
|
|
- let data = {
|
|
|
- postPushId: this.postPushId
|
|
|
- }
|
|
|
- this.$Request.get('/app/postPush/selectPostPushDetails', {
|
|
|
- params: data
|
|
|
- }).then(res => {
|
|
|
- if (res.code == 0) {
|
|
|
- let obj = res.data
|
|
|
- this.postPushForm.postType = obj.postType
|
|
|
- this.postPushForm.stationName = obj.stationName
|
|
|
- this.postPushForm.ruleClassifyName = obj.ruleClassifyName
|
|
|
- this.postPushForm.ruleClassifyId = obj.ruleClassifyId
|
|
|
- this.postPushForm.address = obj.address
|
|
|
- this.postPushForm.experience = obj.experience
|
|
|
- this.postPushForm.education = obj.education
|
|
|
- this.postPushForm.salaryRange = obj.salaryRange
|
|
|
- this.postPushForm.tag = obj.tag.split(',')
|
|
|
- this.postPushForm.industry = obj.industry
|
|
|
- this.postPushForm.positionWelfare = obj.positionWelfare.split(',')
|
|
|
- this.postPushForm.positionDetails = obj.positionDetails
|
|
|
- this.postPushForm.province = obj.province
|
|
|
- this.postPushForm.city = obj.city
|
|
|
- this.postPushForm.county = obj.county
|
|
|
- this.postPushForm.lng = obj.lng
|
|
|
- this.postPushForm.lat = obj.lat
|
|
|
- this.postPushForm.status = obj.status
|
|
|
- if (this.type == 'save') {
|
|
|
- this.getJobPrice(obj.ruleClassifyId)
|
|
|
- } else if (this.postPushForm.status == 3) {
|
|
|
- this.getJobPrice(obj.ruleClassifyId)
|
|
|
- }
|
|
|
- }
|
|
|
- })
|
|
|
- },
|
|
|
- //获取岗位价格
|
|
|
- getJobPrice(ruleClassifyId) {
|
|
|
- let data = {
|
|
|
- ruleClassifyId: ruleClassifyId
|
|
|
- }
|
|
|
- this.$Request.get('/app/rule/ruleClassifyId', {
|
|
|
- params: data
|
|
|
- }).then(res => {
|
|
|
- if (res.code == 0) {
|
|
|
- this.price = res.data.price
|
|
|
- }
|
|
|
- })
|
|
|
- },
|
|
|
- //发布岗位
|
|
|
- savePostPush() {
|
|
|
- let obj = JSON.parse(JSON.stringify(this.postPushForm))
|
|
|
- obj.positionWelfare = obj.positionWelfare.join(',')
|
|
|
- obj.tag = obj.tag.join(',')
|
|
|
- console.log(obj, '发布岗位')
|
|
|
- let formPost = this.$refs.formPost
|
|
|
- formPost.validate((valid) => {
|
|
|
- if (valid) {
|
|
|
- if (!obj.lng || !obj.lat) {
|
|
|
- ElMessage({
|
|
|
- message: '请选择搜索出来的地址',
|
|
|
- type: 'info',
|
|
|
- duration: 1500,
|
|
|
- offset: this.screenHeight / 2
|
|
|
- })
|
|
|
- return
|
|
|
- }
|
|
|
- if (!this.checked) {
|
|
|
- ElMessage({
|
|
|
- message: '请阅读并同意《岗位发布协议》',
|
|
|
- type: 'info',
|
|
|
- duration: 1500,
|
|
|
- offset: this.screenHeight / 2
|
|
|
- })
|
|
|
- return
|
|
|
- }
|
|
|
- if (this.type == 'save') {
|
|
|
+ if (this.type == 'save') {
|
|
|
+ // ElMessageBox.confirm(
|
|
|
+ // '发布该岗位需支付' + this.price + '钻石,确认发布吗?',
|
|
|
+ // '温馨提示', {
|
|
|
+ // confirmButtonText: '确认',
|
|
|
+ // cancelButtonText: '取消',
|
|
|
+ // type: 'warning',
|
|
|
+ // }
|
|
|
+ // ).then(() => {
|
|
|
+ // //发布岗位
|
|
|
+ // this.pay(obj)
|
|
|
+ // }).catch(() => {
|
|
|
+
|
|
|
+ // })
|
|
|
+ this.pay(obj)
|
|
|
+
|
|
|
+ } else if (this.type == 'updata') {
|
|
|
+ if (this.postPushForm.status == 3) { //拒绝重新发布
|
|
|
ElMessageBox.confirm(
|
|
|
- '发布该岗位需支付' + this.price + '钻石,确认发布吗?',
|
|
|
+ '发布该岗位为热门岗位,需支付' + this.price + '钻石,确认发布吗?',
|
|
|
'温馨提示', {
|
|
|
- confirmButtonText: '确认',
|
|
|
- cancelButtonText: '取消',
|
|
|
- type: 'warning',
|
|
|
- }
|
|
|
+ confirmButtonText: '确认',
|
|
|
+ cancelButtonText: '取消',
|
|
|
+ type: 'warning',
|
|
|
+ }
|
|
|
).then(() => {
|
|
|
//发布岗位
|
|
|
this.pay(obj)
|
|
|
}).catch(() => {
|
|
|
|
|
|
})
|
|
|
-
|
|
|
- } else if (this.type == 'updata') {
|
|
|
- if (this.postPushForm.status == 3) { //拒绝重新发布
|
|
|
- ElMessageBox.confirm(
|
|
|
- '发布该岗位为热门岗位,需支付' + this.price + '钻石,确认发布吗?',
|
|
|
- '温馨提示', {
|
|
|
- confirmButtonText: '确认',
|
|
|
- cancelButtonText: '取消',
|
|
|
- type: 'warning',
|
|
|
- }
|
|
|
- ).then(() => {
|
|
|
- //发布岗位
|
|
|
- this.pay(obj)
|
|
|
- }).catch(() => {
|
|
|
-
|
|
|
- })
|
|
|
- } else {
|
|
|
- ElMessageBox.confirm(
|
|
|
- '本次修改岗位信息免费,确认发布吗?',
|
|
|
- '温馨提示', {
|
|
|
- confirmButtonText: '确认',
|
|
|
- cancelButtonText: '取消',
|
|
|
- type: 'warning',
|
|
|
- }
|
|
|
- ).then(() => {
|
|
|
- //发布岗位
|
|
|
- this.pay(obj, this.postPushId)
|
|
|
- }).catch(() => {
|
|
|
-
|
|
|
- })
|
|
|
- }
|
|
|
} else {
|
|
|
ElMessageBox.confirm(
|
|
|
- '发布该岗位为热门岗位,需支付' + this.price + '钻石,确认发布吗?',
|
|
|
+ '本次修改岗位信息免费,确认发布吗?',
|
|
|
'温馨提示', {
|
|
|
- confirmButtonText: '确认',
|
|
|
- cancelButtonText: '取消',
|
|
|
- type: 'warning',
|
|
|
- }
|
|
|
+ confirmButtonText: '确认',
|
|
|
+ cancelButtonText: '取消',
|
|
|
+ type: 'warning',
|
|
|
+ }
|
|
|
).then(() => {
|
|
|
//发布岗位
|
|
|
- this.pay(obj)
|
|
|
+ this.pay(obj, this.postPushId)
|
|
|
}).catch(() => {
|
|
|
|
|
|
})
|
|
|
}
|
|
|
+ } else {
|
|
|
+ ElMessageBox.confirm(
|
|
|
+ '发布该岗位为热门岗位,需支付' + this.price + '钻石,确认发布吗?',
|
|
|
+ '温馨提示', {
|
|
|
+ confirmButtonText: '确认',
|
|
|
+ cancelButtonText: '取消',
|
|
|
+ type: 'warning',
|
|
|
+ }
|
|
|
+ ).then(() => {
|
|
|
+ //发布岗位
|
|
|
+ this.pay(obj)
|
|
|
+ }).catch(() => {
|
|
|
|
|
|
- }
|
|
|
- })
|
|
|
- },
|
|
|
- //福利列表
|
|
|
- getFuliList() {
|
|
|
- let data = {
|
|
|
- type: '项目福利'
|
|
|
- }
|
|
|
- this.$Request.get('/app/dict/list', {
|
|
|
- params: data
|
|
|
- }).then(res => {
|
|
|
- if (res.code == 0) {
|
|
|
- this.flList = res.data
|
|
|
- }
|
|
|
- })
|
|
|
- },
|
|
|
- // 添加行业
|
|
|
- addIndustry(ite) {
|
|
|
- if (ite.select == false) {
|
|
|
- if (this.industryArr.length == 3) {
|
|
|
- ElMessage({
|
|
|
- message: '最多添加三条',
|
|
|
- type: 'info',
|
|
|
- duration: 1500,
|
|
|
- offset: this.screenHeight / 2
|
|
|
})
|
|
|
- return
|
|
|
}
|
|
|
- this.industryArr.push(ite.industryName)
|
|
|
- } else {
|
|
|
- this.industryArr.splice(this.industryArr.indexOf(ite.industryName), 1)
|
|
|
+
|
|
|
}
|
|
|
- ite.select = !ite.select
|
|
|
- },
|
|
|
- //确认行业
|
|
|
- addHangye() {
|
|
|
- this.postPushForm.industry = this.industryArr.join(',')
|
|
|
- this.industryDialog = false
|
|
|
- },
|
|
|
- /**
|
|
|
- * 获取行业数据
|
|
|
- */
|
|
|
- getIndustryList() {
|
|
|
- this.$Request.get('/app/industry/getIndustryList').then(res => {
|
|
|
- if (res.code == 0) {
|
|
|
- let arr = JSON.parse(JSON.stringify(res.data))
|
|
|
- arr.map(item => {
|
|
|
- item.childrenList.map((ite, ind) => {
|
|
|
- ite.select = false
|
|
|
- if (ind < 6) {
|
|
|
- this.industryArrList.push(ite)
|
|
|
- }
|
|
|
- })
|
|
|
- })
|
|
|
- this.industryList = arr
|
|
|
- this.industryDialog = true
|
|
|
- } else {
|
|
|
- ElMessage({
|
|
|
- message: res.msg,
|
|
|
- type: 'error',
|
|
|
- duration: 1500,
|
|
|
- offset: this.screenHeight / 2
|
|
|
+ })
|
|
|
+ },
|
|
|
+ //福利列表
|
|
|
+ getFuliList() {
|
|
|
+ let data = {
|
|
|
+ type: '项目福利'
|
|
|
+ }
|
|
|
+ this.$Request.get('/app/dict/list', {
|
|
|
+ params: data
|
|
|
+ }).then(res => {
|
|
|
+ if (res.code == 0) {
|
|
|
+ this.flList = res.data
|
|
|
+ }
|
|
|
+ })
|
|
|
+ },
|
|
|
+ // 添加行业
|
|
|
+ addIndustry(ite) {
|
|
|
+ if (ite.select == false) {
|
|
|
+ if (this.industryArr.length == 3) {
|
|
|
+ ElMessage({
|
|
|
+ message: '最多添加三条',
|
|
|
+ type: 'info',
|
|
|
+ duration: 1500,
|
|
|
+ offset: this.screenHeight / 2
|
|
|
+ })
|
|
|
+ return
|
|
|
+ }
|
|
|
+ this.industryArr.push(ite.industryName)
|
|
|
+ } else {
|
|
|
+ this.industryArr.splice(this.industryArr.indexOf(ite.industryName), 1)
|
|
|
+ }
|
|
|
+ ite.select = !ite.select
|
|
|
+ },
|
|
|
+ //确认行业
|
|
|
+ addHangye() {
|
|
|
+ this.postPushForm.industry = this.industryArr.join(',')
|
|
|
+ this.industryDialog = false
|
|
|
+ },
|
|
|
+ /**
|
|
|
+ * 获取行业数据
|
|
|
+ */
|
|
|
+ getIndustryList() {
|
|
|
+ this.$Request.get('/app/industry/getIndustryList').then(res => {
|
|
|
+ if (res.code == 0) {
|
|
|
+ let arr = JSON.parse(JSON.stringify(res.data))
|
|
|
+ arr.map(item => {
|
|
|
+ item.childrenList.map((ite, ind) => {
|
|
|
+ ite.select = false
|
|
|
+ if (ind < 6) {
|
|
|
+ this.industryArrList.push(ite)
|
|
|
+ }
|
|
|
})
|
|
|
- }
|
|
|
- })
|
|
|
- },
|
|
|
- //删除关键词
|
|
|
- handleClose(index) {
|
|
|
- this.postPushForm.tag.splice(index, 1)
|
|
|
- },
|
|
|
- //确认
|
|
|
- handleInputConfirm() {
|
|
|
- if (this.inputValue) {
|
|
|
- this.postPushForm.tag.push(this.inputValue)
|
|
|
- this.inputVisible = false
|
|
|
- this.inputValue = ''
|
|
|
+ })
|
|
|
+ this.industryList = arr
|
|
|
+ this.industryDialog = true
|
|
|
} else {
|
|
|
- this.inputVisible = false
|
|
|
+ ElMessage({
|
|
|
+ message: res.msg,
|
|
|
+ type: 'error',
|
|
|
+ duration: 1500,
|
|
|
+ offset: this.screenHeight / 2
|
|
|
+ })
|
|
|
}
|
|
|
+ })
|
|
|
+ },
|
|
|
+ //删除关键词
|
|
|
+ handleClose(index) {
|
|
|
+ this.postPushForm.tag.splice(index, 1)
|
|
|
+ },
|
|
|
+ //确认
|
|
|
+ handleInputConfirm() {
|
|
|
+ if (this.inputValue) {
|
|
|
+ this.postPushForm.tag.push(this.inputValue)
|
|
|
+ this.inputVisible = false
|
|
|
+ this.inputValue = ''
|
|
|
+ } else {
|
|
|
+ this.inputVisible = false
|
|
|
+ }
|
|
|
|
|
|
- },
|
|
|
- //薪资列表
|
|
|
- getMoneyList() {
|
|
|
- let data = {
|
|
|
- type: '薪资'
|
|
|
+ },
|
|
|
+ //薪资列表
|
|
|
+ getMoneyList() {
|
|
|
+ let data = {
|
|
|
+ type: '薪资'
|
|
|
+ }
|
|
|
+ this.$Request.get('/app/dict/list', {
|
|
|
+ params: data
|
|
|
+ }).then(res => {
|
|
|
+ if (res.code == 0) {
|
|
|
+ this.moneyList = res.data
|
|
|
}
|
|
|
- this.$Request.get('/app/dict/list', {
|
|
|
- params: data
|
|
|
- }).then(res => {
|
|
|
- if (res.code == 0) {
|
|
|
- this.moneyList = res.data
|
|
|
- }
|
|
|
- })
|
|
|
- },
|
|
|
- // 工作经验
|
|
|
- getSchoolList() {
|
|
|
- let data = {
|
|
|
- type: '学历'
|
|
|
+ })
|
|
|
+ },
|
|
|
+ // 工作经验
|
|
|
+ getSchoolList() {
|
|
|
+ let data = {
|
|
|
+ type: '学历'
|
|
|
+ }
|
|
|
+ this.$Request.get('/app/dict/list', {
|
|
|
+ params: data
|
|
|
+ }).then(res => {
|
|
|
+ if (res.code == 0) {
|
|
|
+ this.schoolList = res.data
|
|
|
}
|
|
|
- this.$Request.get('/app/dict/list', {
|
|
|
- params: data
|
|
|
- }).then(res => {
|
|
|
- if (res.code == 0) {
|
|
|
- this.schoolList = res.data
|
|
|
- }
|
|
|
- })
|
|
|
- },
|
|
|
- // 工作经验
|
|
|
- IntentionChen() {
|
|
|
- let data = {
|
|
|
- type: '工作经验'
|
|
|
+ })
|
|
|
+ },
|
|
|
+ // 工作经验
|
|
|
+ IntentionChen() {
|
|
|
+ let data = {
|
|
|
+ type: '工作经验'
|
|
|
+ }
|
|
|
+ this.$Request.get('/app/dict/list', {
|
|
|
+ params: data
|
|
|
+ }).then(res => {
|
|
|
+ if (res.code == 0) {
|
|
|
+ this.workList = res.data
|
|
|
}
|
|
|
- this.$Request.get('/app/dict/list', {
|
|
|
- params: data
|
|
|
- }).then(res => {
|
|
|
- if (res.code == 0) {
|
|
|
- this.workList = res.data
|
|
|
+ })
|
|
|
+ },
|
|
|
+ //关闭组件
|
|
|
+ close() {
|
|
|
+ this.$emit('closePostPush', false)
|
|
|
+ },
|
|
|
+ //打开岗位选择弹窗
|
|
|
+ openPostPush() {
|
|
|
+ this.workSearch = ''
|
|
|
+ this.$Request.get('/app/rule/getClassifyList').then(res => {
|
|
|
+ if (res.code == 0) {
|
|
|
+ if (res.data) {
|
|
|
+ this.workTypeList = res.data
|
|
|
+ this.workDialog = true
|
|
|
}
|
|
|
- })
|
|
|
- },
|
|
|
- //关闭组件
|
|
|
- close() {
|
|
|
- this.$emit('closePostPush', false)
|
|
|
- },
|
|
|
- //打开岗位选择弹窗
|
|
|
- openPostPush() {
|
|
|
- this.workSearch = ''
|
|
|
- this.$Request.get('/app/rule/getClassifyList').then(res => {
|
|
|
- if (res.code == 0) {
|
|
|
- if (res.data) {
|
|
|
- this.workTypeList = res.data
|
|
|
- this.workDialog = true
|
|
|
- }
|
|
|
|
|
|
- }
|
|
|
- })
|
|
|
- },
|
|
|
- //选择地址
|
|
|
- handleSelect(item) {
|
|
|
- this.postPushForm.companyId = localStorage.getItem('companyId')
|
|
|
- this.postPushForm.province = item.province
|
|
|
- this.postPushForm.city = item.city
|
|
|
- this.postPushForm.county = item.district
|
|
|
- this.postPushForm.lng = item.location.lng
|
|
|
- this.postPushForm.lat = item.location.lat
|
|
|
- },
|
|
|
- //地址搜索
|
|
|
- querySearchAsync(queryString, cd) {
|
|
|
- if (!queryString) {
|
|
|
- cd([])
|
|
|
- return
|
|
|
}
|
|
|
- let data = {
|
|
|
- key: "ZBABZ-ZWECU-UQTVV-4LYDR-COK3F-5SF75", //申请的密钥
|
|
|
- keyword: queryString, //搜索内容
|
|
|
- output: 'jsonp',
|
|
|
- };
|
|
|
- let url =
|
|
|
- "https://apis.map.qq.com/ws/place/v1/suggestion"
|
|
|
- axios.get(url, {
|
|
|
- params: data,
|
|
|
- adapter: jsonp
|
|
|
- }).then(res => {
|
|
|
- if (res.data.status == 0) {
|
|
|
- let arr = res.data.data
|
|
|
- arr.map(item => {
|
|
|
- item.value = item.title
|
|
|
- })
|
|
|
- cd(arr)
|
|
|
- }
|
|
|
- }).catch(err => {
|
|
|
- console.log(err)
|
|
|
- })
|
|
|
- },
|
|
|
- //岗位类型
|
|
|
- getPostType() {
|
|
|
- let data = {
|
|
|
- type: '工作性质'
|
|
|
+ })
|
|
|
+ },
|
|
|
+ //选择地址
|
|
|
+ handleSelect(item) {
|
|
|
+ this.postPushForm.companyId = localStorage.getItem('companyId')
|
|
|
+ this.postPushForm.province = item.province
|
|
|
+ this.postPushForm.city = item.city
|
|
|
+ this.postPushForm.county = item.district
|
|
|
+ this.postPushForm.lng = item.location.lng
|
|
|
+ this.postPushForm.lat = item.location.lat
|
|
|
+ },
|
|
|
+ //地址搜索
|
|
|
+ querySearchAsync(queryString, cd) {
|
|
|
+ if (!queryString) {
|
|
|
+ cd([])
|
|
|
+ return
|
|
|
+ }
|
|
|
+ let data = {
|
|
|
+ key: "ZBABZ-ZWECU-UQTVV-4LYDR-COK3F-5SF75", //申请的密钥
|
|
|
+ keyword: queryString, //搜索内容
|
|
|
+ output: 'jsonp',
|
|
|
+ };
|
|
|
+ let url =
|
|
|
+ "https://apis.map.qq.com/ws/place/v1/suggestion"
|
|
|
+ axios.get(url, {
|
|
|
+ params: data,
|
|
|
+ adapter: jsonp
|
|
|
+ }).then(res => {
|
|
|
+ if (res.data.status == 0) {
|
|
|
+ let arr = res.data.data
|
|
|
+ arr.map(item => {
|
|
|
+ item.value = item.title
|
|
|
+ })
|
|
|
+ cd(arr)
|
|
|
}
|
|
|
- this.$Request.get('/app/dict/list', {
|
|
|
- params: data
|
|
|
- }).then(res => {
|
|
|
- if (res.code == 0) {
|
|
|
- this.postTypeList = res.data
|
|
|
- }
|
|
|
- })
|
|
|
- },
|
|
|
- }
|
|
|
+ }).catch(err => {
|
|
|
+ console.log(err)
|
|
|
+ })
|
|
|
+ },
|
|
|
+ //岗位类型
|
|
|
+ getPostType() {
|
|
|
+ let data = {
|
|
|
+ type: '工作性质'
|
|
|
+ }
|
|
|
+ this.$Request.get('/app/dict/list', {
|
|
|
+ params: data
|
|
|
+ }).then(res => {
|
|
|
+ if (res.code == 0) {
|
|
|
+ this.postTypeList = res.data
|
|
|
+ }
|
|
|
+ })
|
|
|
+ },
|
|
|
}
|
|
|
+}
|
|
|
</script>
|
|
|
|
|
|
<style lang="scss" scoped>
|
|
|
- .my-header {
|
|
|
- padding: 20px 20px 0 20px;
|
|
|
- background: linear-gradient(45deg, #f2fffa, #FFFFFF);
|
|
|
- border-radius: 18px 0 0 0;
|
|
|
- }
|
|
|
+.my-header {
|
|
|
+ padding: 20px 20px 0 20px;
|
|
|
+ background: linear-gradient(45deg, #f2fffa, #FFFFFF);
|
|
|
+ border-radius: 18px 0 0 0;
|
|
|
+}
|
|
|
|
|
|
- :deep(.el-dialog) {
|
|
|
- border-radius: 14px !important;
|
|
|
- padding: 0 !important;
|
|
|
- }
|
|
|
+:deep(.el-dialog) {
|
|
|
+ border-radius: 14px !important;
|
|
|
+ padding: 0 !important;
|
|
|
+}
|
|
|
|
|
|
- :deep(.el-dialog__body) {
|
|
|
- padding-top: 10px !important;
|
|
|
+:deep(.el-dialog__body) {
|
|
|
+ padding-top: 10px !important;
|
|
|
|
|
|
|
|
|
- }
|
|
|
+}
|
|
|
|
|
|
- :deep(.el-dialog__header) {
|
|
|
- // background: linear-gradient(45deg, #f2fffa, #FFFFFF);
|
|
|
- border-radius: 14px 14px 0 0;
|
|
|
- }
|
|
|
+:deep(.el-dialog__header) {
|
|
|
+ // background: linear-gradient(45deg, #f2fffa, #FFFFFF);
|
|
|
+ border-radius: 14px 14px 0 0;
|
|
|
+}
|
|
|
|
|
|
- :deep(.w-e-text-container) {
|
|
|
- background-color: #f5f5f5 !important;
|
|
|
- min-height: 200px !important;
|
|
|
- }
|
|
|
+:deep(.w-e-text-container) {
|
|
|
+ background-color: #f5f5f5 !important;
|
|
|
+ min-height: 200px !important;
|
|
|
+}
|
|
|
|
|
|
- :deep(.w-e-text-placeholder) {
|
|
|
- top: 5px !important;
|
|
|
- }
|
|
|
+:deep(.w-e-text-placeholder) {
|
|
|
+ top: 5px !important;
|
|
|
+}
|
|
|
+
|
|
|
+.row45 {
|
|
|
+ width: 45%;
|
|
|
+}
|
|
|
|
|
|
- .row45 {
|
|
|
- width: 45%;
|
|
|
+.myHy {
|
|
|
+ width: 100%;
|
|
|
+ height: 500px;
|
|
|
+
|
|
|
+ .myHy-box {
|
|
|
+ width: calc(100% - 40px);
|
|
|
+ height: calc(100% - 40px);
|
|
|
+ overflow: hidden;
|
|
|
+ overflow-y: scroll;
|
|
|
}
|
|
|
|
|
|
- .myHy {
|
|
|
+ .myHy-box-item {
|
|
|
width: 100%;
|
|
|
- height: 500px;
|
|
|
+ }
|
|
|
|
|
|
- .myHy-box {
|
|
|
- width: calc(100% - 40px);
|
|
|
- height: calc(100% - 40px);
|
|
|
- overflow: hidden;
|
|
|
- overflow-y: scroll;
|
|
|
- }
|
|
|
+ .myHy-box-item-l {
|
|
|
+ width: 200px;
|
|
|
+ line-height: 36px;
|
|
|
+ text-align: left;
|
|
|
+ color: #333;
|
|
|
+ font-size: 14px;
|
|
|
+ font-weight: bold;
|
|
|
+ }
|
|
|
|
|
|
- .myHy-box-item {
|
|
|
- width: 100%;
|
|
|
- }
|
|
|
+ .myHy-box-item-r {
|
|
|
+ width: calc(100% - 220px);
|
|
|
|
|
|
- .myHy-box-item-l {
|
|
|
- width: 200px;
|
|
|
+ .myHy-box-item-r-item {
|
|
|
+ width: calc((100% - 24px) / 4);
|
|
|
line-height: 36px;
|
|
|
- text-align: left;
|
|
|
- color: #333;
|
|
|
- font-size: 14px;
|
|
|
- font-weight: bold;
|
|
|
- }
|
|
|
-
|
|
|
- .myHy-box-item-r {
|
|
|
- width: calc(100% - 220px);
|
|
|
-
|
|
|
- .myHy-box-item-r-item {
|
|
|
- width: calc((100% - 24px) / 4);
|
|
|
- line-height: 36px;
|
|
|
- margin-bottom: 8px;
|
|
|
- cursor: pointer;
|
|
|
- // background-color: red;
|
|
|
- }
|
|
|
+ margin-bottom: 8px;
|
|
|
+ cursor: pointer;
|
|
|
+ // background-color: red;
|
|
|
}
|
|
|
}
|
|
|
+}
|
|
|
|
|
|
- .zhiwei {
|
|
|
- width: 400px;
|
|
|
- max-height: 400px;
|
|
|
- overflow: hidden;
|
|
|
- overflow-y: scroll;
|
|
|
-
|
|
|
- .zhiwei-item {
|
|
|
- width: 100%;
|
|
|
- }
|
|
|
-
|
|
|
- .zhiwei-item-l {
|
|
|
- width: 40%;
|
|
|
- font-weight: 500;
|
|
|
- }
|
|
|
+.zhiwei {
|
|
|
+ width: 400px;
|
|
|
+ max-height: 400px;
|
|
|
+ overflow: hidden;
|
|
|
+ overflow-y: scroll;
|
|
|
|
|
|
- .zhiwei-item-r {
|
|
|
- width: 60%;
|
|
|
- }
|
|
|
+ .zhiwei-item {
|
|
|
+ width: 100%;
|
|
|
+ }
|
|
|
|
|
|
- .zhiwei-item-r-txt {
|
|
|
- width: 100%;
|
|
|
- font-weight: 500;
|
|
|
- color: #999999;
|
|
|
- }
|
|
|
+ .zhiwei-item-l {
|
|
|
+ width: 40%;
|
|
|
+ font-weight: 500;
|
|
|
+ }
|
|
|
|
|
|
- .zhiwei-item-r-i {
|
|
|
+ .zhiwei-item-r {
|
|
|
+ width: 60%;
|
|
|
+ }
|
|
|
|
|
|
- margin-bottom: 10px;
|
|
|
- }
|
|
|
+ .zhiwei-item-r-txt {
|
|
|
+ width: 100%;
|
|
|
+ font-weight: 500;
|
|
|
+ color: #999999;
|
|
|
+ }
|
|
|
|
|
|
- .zhiwei-item-r-i-i {
|
|
|
- margin-top: 10px;
|
|
|
- margin-right: 10px;
|
|
|
- cursor: pointer;
|
|
|
- font-size: 14px;
|
|
|
- }
|
|
|
+ .zhiwei-item-r-i {
|
|
|
|
|
|
- .zhiwei-item-r-i-i:hover {
|
|
|
- color: #00DD9A;
|
|
|
- }
|
|
|
+ margin-bottom: 10px;
|
|
|
}
|
|
|
|
|
|
- ::-webkit-scrollbar {
|
|
|
- /* Chrome, Safari, Opera */
|
|
|
- width: 4px;
|
|
|
+ .zhiwei-item-r-i-i {
|
|
|
+ margin-top: 10px;
|
|
|
+ margin-right: 10px;
|
|
|
+ cursor: pointer;
|
|
|
+ font-size: 14px;
|
|
|
}
|
|
|
|
|
|
- ::-webkit-scrollbar-thumb {
|
|
|
- background-color: #cccccc;
|
|
|
- /* 滚动条颜色 */
|
|
|
+ .zhiwei-item-r-i-i:hover {
|
|
|
+ color: #00DD9A;
|
|
|
}
|
|
|
+}
|
|
|
|
|
|
- ::-webkit-scrollbar-track {
|
|
|
- background-color: #ffffff;
|
|
|
- /* 轨道颜色 */
|
|
|
- }
|
|
|
+::-webkit-scrollbar {
|
|
|
+ /* Chrome, Safari, Opera */
|
|
|
+ width: 4px;
|
|
|
+}
|
|
|
|
|
|
- .work {
|
|
|
- width: 100%;
|
|
|
- height: 500px;
|
|
|
+::-webkit-scrollbar-thumb {
|
|
|
+ background-color: #cccccc;
|
|
|
+ /* 滚动条颜色 */
|
|
|
+}
|
|
|
|
|
|
- .work-left {
|
|
|
- width: 160px;
|
|
|
- height: 100%;
|
|
|
- // border-right: 4px solid #F5f5f5;
|
|
|
+::-webkit-scrollbar-track {
|
|
|
+ background-color: #ffffff;
|
|
|
+ /* 轨道颜色 */
|
|
|
+}
|
|
|
|
|
|
- .work-left-box {
|
|
|
- width: 100%;
|
|
|
- height: 100%;
|
|
|
- // background-color: aqua;
|
|
|
- overflow: hidden;
|
|
|
+.work {
|
|
|
+ width: 100%;
|
|
|
+ height: 500px;
|
|
|
|
|
|
- }
|
|
|
+ .work-left {
|
|
|
+ width: 160px;
|
|
|
+ height: 100%;
|
|
|
+ // border-right: 4px solid #F5f5f5;
|
|
|
|
|
|
- .work-left-box-list {
|
|
|
- width: 100%;
|
|
|
- height: 100%;
|
|
|
- list-style: none;
|
|
|
- padding: 0;
|
|
|
- margin: 0;
|
|
|
- box-sizing: border-box;
|
|
|
- }
|
|
|
+ .work-left-box {
|
|
|
+ width: 100%;
|
|
|
+ height: 100%;
|
|
|
+ // background-color: aqua;
|
|
|
+ overflow: hidden;
|
|
|
|
|
|
- .workActive {
|
|
|
- background-color: #c9ffec !important;
|
|
|
- color: #00DD9A;
|
|
|
- font-weight: bold;
|
|
|
- }
|
|
|
+ }
|
|
|
|
|
|
- .work-left-box-list-item:hover {
|
|
|
- color: #00DD9A;
|
|
|
- }
|
|
|
+ .work-left-box-list {
|
|
|
+ width: 100%;
|
|
|
+ height: 100%;
|
|
|
+ list-style: none;
|
|
|
+ padding: 0;
|
|
|
+ margin: 0;
|
|
|
+ box-sizing: border-box;
|
|
|
+ }
|
|
|
|
|
|
- .work-left-box-list-item {
|
|
|
- width: calc(100% - 12px);
|
|
|
- height: 40px;
|
|
|
- margin: 0 6px;
|
|
|
- cursor: pointer;
|
|
|
- border-radius: 4px;
|
|
|
- margin-top: 10px;
|
|
|
- }
|
|
|
+ .workActive {
|
|
|
+ background-color: #c9ffec !important;
|
|
|
+ color: #00DD9A;
|
|
|
+ font-weight: bold;
|
|
|
+ }
|
|
|
|
|
|
- .work-left-box-list-items {
|
|
|
- width: calc(100% - 20px);
|
|
|
- height: 100%;
|
|
|
- overflow: hidden;
|
|
|
- white-space: nowrap;
|
|
|
- text-overflow: ellipsis;
|
|
|
- -o-text-overflow: ellipsis;
|
|
|
- line-height: 40px;
|
|
|
- }
|
|
|
+ .work-left-box-list-item:hover {
|
|
|
+ color: #00DD9A;
|
|
|
+ }
|
|
|
|
|
|
- .work-left-box-list::-webkit-scrollbar {
|
|
|
- width: 6px;
|
|
|
- /* 修改滚动条的宽度 */
|
|
|
- }
|
|
|
+ .work-left-box-list-item {
|
|
|
+ width: calc(100% - 12px);
|
|
|
+ height: 40px;
|
|
|
+ margin: 0 6px;
|
|
|
+ cursor: pointer;
|
|
|
+ border-radius: 4px;
|
|
|
+ margin-top: 10px;
|
|
|
+ }
|
|
|
|
|
|
- .work-left-box-list::-webkit-scrollbar-track {
|
|
|
- background: #f1f1f1;
|
|
|
- /* 修改滚动条轨道的背景色 */
|
|
|
- }
|
|
|
+ .work-left-box-list-items {
|
|
|
+ width: calc(100% - 20px);
|
|
|
+ height: 100%;
|
|
|
+ overflow: hidden;
|
|
|
+ white-space: nowrap;
|
|
|
+ text-overflow: ellipsis;
|
|
|
+ -o-text-overflow: ellipsis;
|
|
|
+ line-height: 40px;
|
|
|
+ }
|
|
|
|
|
|
- .work-left-box-list::-webkit-scrollbar-thumb {
|
|
|
- background: #ddd;
|
|
|
- border-radius: 10px;
|
|
|
- /* 修改滚动条的背景色 */
|
|
|
- }
|
|
|
+ .work-left-box-list::-webkit-scrollbar {
|
|
|
+ width: 6px;
|
|
|
+ /* 修改滚动条的宽度 */
|
|
|
+ }
|
|
|
|
|
|
- .work-left-box-list::-webkit-scrollbar-thumb:hover {
|
|
|
- background: #ddd;
|
|
|
- /* 修改滚动条悬停时的背景色 */
|
|
|
- }
|
|
|
+ .work-left-box-list::-webkit-scrollbar-track {
|
|
|
+ background: #f1f1f1;
|
|
|
+ /* 修改滚动条轨道的背景色 */
|
|
|
+ }
|
|
|
|
|
|
+ .work-left-box-list::-webkit-scrollbar-thumb {
|
|
|
+ background: #ddd;
|
|
|
+ border-radius: 10px;
|
|
|
+ /* 修改滚动条的背景色 */
|
|
|
}
|
|
|
|
|
|
- .work-right {
|
|
|
- width: calc(100% - 160px);
|
|
|
- height: 100%;
|
|
|
+ .work-left-box-list::-webkit-scrollbar-thumb:hover {
|
|
|
+ background: #ddd;
|
|
|
+ /* 修改滚动条悬停时的背景色 */
|
|
|
+ }
|
|
|
|
|
|
- .work-right-box::-webkit-scrollbar {
|
|
|
- /* Chrome, Safari, Opera */
|
|
|
- width: 0px;
|
|
|
- }
|
|
|
+ }
|
|
|
|
|
|
- .work-right-box::-webkit-scrollbar-thumb {
|
|
|
- background-color: #cccccc;
|
|
|
- /* 滚动条颜色 */
|
|
|
- }
|
|
|
+ .work-right {
|
|
|
+ width: calc(100% - 160px);
|
|
|
+ height: 100%;
|
|
|
|
|
|
- .work-right-box::-webkit-scrollbar-track {
|
|
|
- background-color: #ffffff;
|
|
|
- /* 轨道颜色 */
|
|
|
- }
|
|
|
+ .work-right-box::-webkit-scrollbar {
|
|
|
+ /* Chrome, Safari, Opera */
|
|
|
+ width: 0px;
|
|
|
+ }
|
|
|
|
|
|
- .work-right-box {
|
|
|
- width: calc(100% - 20px);
|
|
|
- height: calc(100% - 20px);
|
|
|
- overflow: hidden;
|
|
|
- overflow-y: scroll;
|
|
|
- }
|
|
|
+ .work-right-box::-webkit-scrollbar-thumb {
|
|
|
+ background-color: #cccccc;
|
|
|
+ /* 滚动条颜色 */
|
|
|
+ }
|
|
|
|
|
|
- .work-right-box-item {
|
|
|
- margin-bottom: 10px;
|
|
|
- color: #333;
|
|
|
- }
|
|
|
+ .work-right-box::-webkit-scrollbar-track {
|
|
|
+ background-color: #ffffff;
|
|
|
+ /* 轨道颜色 */
|
|
|
+ }
|
|
|
|
|
|
- .work-right-box-item-title {
|
|
|
- font-weight: bold;
|
|
|
- margin-bottom: 10px;
|
|
|
- }
|
|
|
+ .work-right-box {
|
|
|
+ width: calc(100% - 20px);
|
|
|
+ height: calc(100% - 20px);
|
|
|
+ overflow: hidden;
|
|
|
+ overflow-y: scroll;
|
|
|
+ }
|
|
|
|
|
|
- .work-right-box-item-names {
|
|
|
- margin-right: 10px;
|
|
|
- margin-bottom: 10px;
|
|
|
- cursor: pointer;
|
|
|
- }
|
|
|
+ .work-right-box-item {
|
|
|
+ margin-bottom: 10px;
|
|
|
+ color: #333;
|
|
|
+ }
|
|
|
|
|
|
- .work-right-box-item-names:hover {
|
|
|
- color: #00DD9A;
|
|
|
- }
|
|
|
+ .work-right-box-item-title {
|
|
|
+ font-weight: bold;
|
|
|
+ margin-bottom: 10px;
|
|
|
+ }
|
|
|
+
|
|
|
+ .work-right-box-item-names {
|
|
|
+ margin-right: 10px;
|
|
|
+ margin-bottom: 10px;
|
|
|
+ cursor: pointer;
|
|
|
+ }
|
|
|
+
|
|
|
+ .work-right-box-item-names:hover {
|
|
|
+ color: #00DD9A;
|
|
|
}
|
|
|
}
|
|
|
+}
|
|
|
</style>
|