cyl/dev
wangxia 2 years ago
parent 2234c176ee
commit 6fedd885fa

@ -57,22 +57,13 @@
<div style="height: 27px" v-if="!jobDetail.jobSpecialLabelNames" class="jobtag">
<a-tag style="backgroundcolor: #f5f5f5">暂无特色</a-tag>
</div>
<div style="
display: flex;
align-items: center;
height: 26px;
margin-top: 16px;
">
<div class="jobpricehour" v-html="
getSalaryClassifyValue(
jobDetail.salaryClassify,
jobDetail.salaryClassifyValue
)
"></div>
<div style="display: flex; align-items: center; height: 26px; margin-top: 16px">
<div class="jobpricehour" v-html="getSalaryClassifyValue(jobDetail.salaryClassify, jobDetail.salaryClassifyValue)"></div>
<span style="font-size: 16px">&nbsp;&nbsp;|&nbsp;&nbsp;</span>
<div class="jobpricemonth">
<span>{{ jobDetail.minMonthlyPay }}</span>-
<span>{{ jobDetail.maxMonthlyPay }}</span>/
<span>{{ jobDetail.minMonthlyPay }}</span
>- <span>{{ jobDetail.maxMonthlyPay }}</span
>/
</div>
</div>
</div>
@ -81,12 +72,13 @@
<div id="swiper">
<div class="swiper-wrapper">
<div class="swiper-slide" v-for="(item, index) in [...storeImage]" :key="index">
<img :src="item" alt v-if="isImg(item)" @click="showImage(index)" style="cursor:pointer;" />
<img :src="item" alt v-if="isImg(item)" @click="showImage(index)" style="cursor: pointer" />
<div v-if="!isImg(item)">
<div style="position: absolute;width: 78px;height: 78px; left: 0;top: 0;z-index: 99;background-color: transparent;cursor: pointer;" @click.stop="handlePreview(item)"></div>
<div style="position: absolute; width: 78px; height: 78px; left: 0; top: 0; z-index: 99; background-color: transparent; cursor: pointer" @click.stop="handlePreview(item)"></div>
<video class="imgSpan" style="width: 80px; height: 45px" controls>
<source :src="item" type="video/mp4" />
<source :src="item" type="video/ogg" />您的浏览器不支持 HTML5 video 标签
<source :src="item" type="video/ogg" />
您的浏览器不支持 HTML5 video 标签
</video>
</div>
</div>
@ -107,10 +99,12 @@
</div>
</div>
<div class="sub-bottombox">
<!-- <a-popover title="" trigger="click" placement="bottomRight">
<!-- <a-popover title="" trigger="click" placement="bottomRight"> -->
<a-button type="primary" class="jobDesp">职位详单</a-button>
</a-popover>-->
<button type="primary" class="jobDespBtn">
<a :href="customServiceUrl" target="_blank"> <i class="iconfont icon-kefu_lan mr6"></i>联系客服</a>
</button>
<!-- </a-popover> -->
<button class="dropdown bottombox1" @click="torecord()" v-if="jobDetail.recruitment == '1'"></button>
<button class="norecruitment bottombox1" v-else></button>
</div>
@ -195,9 +189,7 @@
<a-descriptions-item>
<span slot="label" class>薪资说明</span>
<span style="white-space: break-spaces">
{{
jobDetail.salaryDesp || "-"
}}
{{ jobDetail.salaryDesp || "-" }}
</span>
</a-descriptions-item>
<!-- <a-descriptions-item style="padding: 0">
@ -241,16 +233,11 @@
<span slot="label" class>性别年龄</span>
<span>
<span class="man" v-if="jobDetail.minAgeMan">
{{ jobDetail.minAgeMan }}
<span v-if="jobDetail.maxAgeMan">
{{
"- " + jobDetail.maxAgeMan
}}
</span>
{{ jobDetail.minAgeMan }} <span v-if="jobDetail.maxAgeMan"> {{ "- " + jobDetail.maxAgeMan }} </span>
</span>
<span class="woman" v-if="jobDetail.minAgeWoman">
{{ jobDetail.minAgeWoman }}
<span>{{ "- " + jobDetail.maxAgeWoman }}</span>
{{ jobDetail.minAgeWoman }} <span>{{ "- " + jobDetail.maxAgeWoman }}</span
>
</span>
</span>
</a-descriptions-item>
@ -452,15 +439,15 @@
<a-descriptions bordered size="small" :column="1" class="leftDesc">
<a-descriptions-item class="test1">
<span slot="label" class>面试时间</span>
<span>{{jobDetail.interviewDuration || '-'}}</span>
<span>{{ jobDetail.interviewDuration || "-" }}</span>
</a-descriptions-item>
<a-descriptions-item class="test1">
<span slot="label" class>面试地点</span>
<span>{{jobPoses.interview.posContent || '-'}}</span>
<span>{{ jobPoses.interview.posContent || "-" }}</span>
</a-descriptions-item>
<a-descriptions-item class="test1">
<span slot="label" class>宿舍地址</span>
<span>{{jobPoses.room.posContent ? jobPoses.room.posContent : '-'}}</span>
<span>{{ jobPoses.room.posContent ? jobPoses.room.posContent : "-" }}</span>
</a-descriptions-item>
<!-- <a-descriptions-item class="test1">
<span slot="label" class>总包驻场</span>
@ -468,15 +455,15 @@
</a-descriptions-item>-->
<a-descriptions-item class="test1">
<span slot="label" class>面试说明</span>
<span>{{jobDetail.interviewDesp || '-'}}</span>
<span>{{ jobDetail.interviewDesp || "-" }}</span>
</a-descriptions-item>
<a-descriptions-item class="test1">
<span slot="label" class>入职说明</span>
<span>{{jobDetail.entryDesp || '-'}}</span>
<span>{{ jobDetail.entryDesp || "-" }}</span>
</a-descriptions-item>
<a-descriptions-item class="test1">
<span slot="label" class>离职说明</span>
<span>{{jobDetail.leaveRequire || '-'}}</span>
<span>{{ jobDetail.leaveRequire || "-" }}</span>
</a-descriptions-item>
</a-descriptions>
</div>
@ -517,7 +504,7 @@
<a-descriptions-item>
<span slot="label">
<div class="c6">账单日</div>
<div class="c6">{{'(出名单时间)'}}</div>
<div class="c6">{{ "(出名单时间)" }}</div>
</span>
<span>{{ jobDetail.outListTime || "-" }}</span>
</a-descriptions-item>
@ -533,10 +520,10 @@
<div v-else-if="tabchange === 2">
<div class="pay" id="tip">
<div class="mb12 mt20 titlestyle">职位通告</div>
<div class="showInfo" style="width: unset;color: #000 !important;">
<div class="showInfo" style="width: unset; color: #000 !important">
<div class="copy" @click="copyText($event)"></div>
<!-- {{ jobDetail.jobDesp || "-" }}-->
<div class="copyInfo" style="border: none; padding: 0 0; width: unset;white-space: pre-line;">{{ jobDetail.jobDesp || "-" }}</div>
<div class="copyInfo" style="border: none; padding: 0 0; width: unset; white-space: pre-line">{{ jobDetail.jobDesp || "-" }}</div>
</div>
</div>
</div>
@ -554,7 +541,7 @@
<!-- <div class="fcsc"> -->
<!-- <p>0371-6611 3723</p> -->
<img style="width: 60px; height: 60px; border-radius: 50%" class="mt24" :src="managerInfo.avatar || 'https://matripe-cms.oss-cn-beijing.aliyuncs.com/1shoudan/service.jpg'" alt />
<p class="mt24 f16">{{managerInfo.workPhone}}</p>
<p class="mt24 f16">{{ managerInfo.workPhone || '-'}}</p>
<p class="f16">
{{ managerInfo.name }}
<i class="iconfont icon-dianhua1 ml4 f14" style="line-height: 24px; color: #ff4400"></i>
@ -576,8 +563,8 @@
</div>-->
</div>
<div class="companylocation" style="text-align: center; padding: 0 20px 20px" v-if="positionInfo.lng">
<h2 style="padding:16px 0;font-weight:600">{{store.storeName || '-'}}</h2>
<p style="padding-bottom:20px;border-bottom:1px solid #eee;font-size:16px;text-indent:16px;color:#4d575ecc;white-space:pre-line;text-align:left">{{store.storeInfo || '-' }}</p>
<h2 style="padding: 16px 0; font-weight: 600">{{ store.storeName || "-" }}</h2>
<p style="padding-bottom: 20px; border-bottom: 1px solid #eee; font-size: 16px; text-indent: 16px; color: #4d575ecc; white-space: pre-line; text-align: left">{{ store.storeInfo || "-" }}</p>
<!-- <h1 class="bottombox">
<i>企业位置</i>
</h1>-->
@ -603,19 +590,19 @@
</div>
</template>
<script>
import { getJobDetailApi } from '../../api/job'
import { disposeJobListData, getSalaryClassifyValue } from '../../utils/commonUtil'
import recommend from '../../components/FirstJob/components/recommend.vue'
import { nationlist } from '../../utils/datalist'
import { getUserManagerApi } from '../../api/userinfo'
import 'swiper/dist/css/swiper.css'
import Vue from 'vue'
import Viewer from 'v-viewer'
import 'viewerjs/dist/viewer.css'
import swiper from 'swiper'
import GDMap from '../map.vue'
import { getJobDetailApi } from "../../api/job";
import { disposeJobListData, getSalaryClassifyValue } from "../../utils/commonUtil";
import recommend from "../../components/FirstJob/components/recommend.vue";
import { nationlist } from "../../utils/datalist";
import { getUserManagerApi } from "../../api/userinfo";
import "swiper/dist/css/swiper.css";
import Vue from "vue";
import Viewer from "v-viewer";
import "viewerjs/dist/viewer.css";
import swiper from "swiper";
import GDMap from "../map.vue";
// import recordbill from "@/components/FirstJob/components/recordbill.vue";
import Clipboard from 'clipboard'
import Clipboard from "clipboard";
// import map from '../map.vue'
Vue.use(Viewer, {
defaultOptions: {
@ -628,7 +615,7 @@ Vue.use(Viewer, {
prev: true,
play: {
show: true,
size: 'large',
size: "large",
},
next: true,
rotateLeft: true,
@ -641,10 +628,10 @@ Vue.use(Viewer, {
initialViewIndex: 1,
isMeetting: false,
},
})
});
export default {
//
name: '',
name: "",
//
components: {
recommend,
@ -658,7 +645,7 @@ export default {
data() {
return {
previewVisible: false,
previewImage: '',
previewImage: "",
relationList: [],
jobDetail: {}, //
storeImage: [],
@ -675,20 +662,20 @@ export default {
tabchange: 1,
nationlist,
imgList: [], //
labelColor: ['pink', 'blue', 'purple', 'orange', 'green', 'cyan', 'red', 'purple'],
labelColor: ["pink", "blue", "purple", "orange", "green", "cyan", "red", "purple"],
form: {
//
name: '',
peoplecard: '',
gender: '',
nation: '',
location: '',
firm: '',
post: '',
pattern: '',
policy: '',
proxy: '',
facedate: '',
name: "",
peoplecard: "",
gender: "",
nation: "",
location: "",
firm: "",
post: "",
pattern: "",
policy: "",
proxy: "",
facedate: "",
},
storeJob: {},
// rules: {
@ -699,7 +686,8 @@ export default {
apply: {},
myswiper: null, // swiper
managerInfo: {},
}
customServiceUrl:'' //
};
},
//
computed: {},
@ -713,9 +701,9 @@ export default {
beforeCreate() {},
created() {
// console.log(this.$router.matcher.match());
this.getJobDetail()
console.log(this.$route) // params
this.getUserManager()
this.getJobDetail();
console.log(this.$route); // params
this.getUserManager();
// Object.defineProperties("window.opener", "sessionStorage", {
// LOGIN_DATA: {},
// });
@ -726,11 +714,11 @@ export default {
* 如果 root 实例挂载了一个文档内元素 mounted 被调用时 vm.el 也在文档内
*/
mounted() {
let that = this
let that = this;
// console.log(this.$refs.scrollimg);
// this.$refs.scrollimg.goTo(0, false);
setTimeout(() => {
this.myswiper = new swiper('#swiper', {
this.myswiper = new swiper("#swiper", {
// loop: true,
// loopAdditionalSlides: 3,
// speed: 500,
@ -746,9 +734,9 @@ export default {
// clickable: true,
// },
navigation: {
nextEl: '.swiper-button-next',
prevEl: '.swiper-button-prev',
disabledClass: 'swiper-button-disabled',
nextEl: ".swiper-button-next",
prevEl: ".swiper-button-prev",
disabledClass: "swiper-button-disabled",
},
// spaceBetween: 100,
// effect: 'fade',
@ -765,62 +753,65 @@ export default {
// that.progressPercent = 0
// },
},
})
}, 1000)
});
}, 1000);
},
//
methods: {
async getJobDetail() {
try {
const { data } = await getJobDetailApi(this.id)
console.log(data)
const { data } = await getJobDetailApi(this.id);
console.log('data',data);
if (data.status === 200) {
console.log(data)
this.jobDetail = disposeJobListData(data.data.storeJob)
this.positionInfo = data.data.store
this.jobPoses = data.data.jobPoses
this.store = data.data.store
this.positionInfo.desc = this.positionInfo.detailPosition
this.positionInfo.containerName = 'mapContainer'
this.positionInfo.name = this.positionInfo.aliasName
this.skeletonshow = false
this.jobDetail.district = disposeJobListData(data.data.store).district
console.log(this.jobDetail)
console.log(this.jobPoses)
console.log(data);
this.jobDetail = disposeJobListData(data.data.storeJob);
this.customServiceUrl = data.data.customServiceUrl
this.positionInfo = data.data.store;
this.jobPoses = data.data.jobPoses;
this.store = data.data.store;
this.positionInfo.desc = this.positionInfo.detailPosition;
this.positionInfo.containerName = "mapContainer";
this.positionInfo.name = this.positionInfo.aliasName;
this.skeletonshow = false;
this.jobDetail.district = disposeJobListData(data.data.store).district;
console.log(this.jobDetail);
console.log(this.jobPoses);
let newdata = {
id: data.data.storeJob.id,
aliasName: data.data.store.aliasName,
jobName: data.data.storeJob.jobName,
}
this.storeInfo = newdata
let regs = /\.(jpg|jpeg|png)(\?.*)?$/
};
this.storeInfo = newdata;
let regs = /\.(jpg|jpeg|png)(\?.*)?$/;
// data.data.storeImage.forEach((item) => {
// if (regs.test(item.url.toLowerCase())) {
// this.storeImage.push(item.url)
// }
// })
// console.log(this.storeImage);
let storeImage = []
let storeVideo = []
let storeImage = [];
let storeVideo = [];
data.data.storeImage.forEach((item) => {
console.log(item.url)
console.log(item.url);
if (regs.test(item.url.toLowerCase())) {
storeImage.push(item.url)
storeImage.push(item.url);
} else {
storeVideo.push(item.url)
storeVideo.push(item.url);
}
})
this.storeImage = [...storeImage, ...storeVideo]
});
this.storeImage = [...storeImage, ...storeVideo];
} else {
this.$message.warning('数据获取失败')
this.$message.warning("数据获取失败");
}
// = data.data.recordList;
// console.log(data);
// console.log(this.jobDetail);
} catch (error) {
console.log(error)
} catch (error
) {
console.log(error);
}
},
/**
@ -828,19 +819,19 @@ export default {
*/
getUserManager() {
getUserManagerApi().then(({ data }) => {
console.log(data)
console.log(data);
// this.$store.commit('setManagerInfo', data.data)
this.managerInfo = data.data
this.managerInfo = data.data;
// console.log('+++++++++++++++++++++++++', this.$store)
})
});
},
//
handleCancel() {
this.visible = false
this.previewVisible = false
let movie = document.querySelector('#movie')
console.dir(movie)
movie.pause()
this.visible = false;
this.previewVisible = false;
let movie = document.querySelector("#movie");
console.dir(movie);
movie.pause();
// this.form = {
// //
// name: '',
@ -854,17 +845,17 @@ export default {
this.$refs.ruleForm.validate((ispass, no) => {
// console.log(ispass);
if (ispass) {
this.confirmLoading = true
this.confirmLoading = true;
setTimeout(() => {
this.confirmLoading = false
this.visible = false
}, 2000)
this.confirmLoading = false;
this.visible = false;
}, 2000);
} else {
// console.log(123);
}
console.log(no)
})
console.log(no);
});
},
//
// showmodal() {
@ -872,41 +863,41 @@ export default {
// console.log(this.id);
// },
showmodal() {
this.visible = true
this.visible = true;
// this.apply = item;
// console.log(this.apply);
// console.log(id);
},
onClose() {
this.visible = false
this.visible = false;
this.form = {
//
name: '',
peoplecard: '',
gender: '', //
nation: '', //
location: '', //
firm: '', //
post: '', //
pattern: '', //
policy: '', //
proxy: '', //
facedate: '', //
}
name: "",
peoplecard: "",
gender: "", //
nation: "", //
location: "", //
firm: "", //
post: "", //
pattern: "", //
policy: "", //
proxy: "", //
facedate: "", //
};
},
torecord(item) {
//
console.log(item)
console.log(item);
// let userinfo = JSON.stringify(item);
console.log(this.jobDetail)
console.log(this.storeInfo)
this.storeInfo.currentPageNum = this.currentPageNum
console.log(this.storeInfo)
this.$router.push({ name: 'recordbill', params: this.storeInfo })
sessionStorage.setItem('CURRENT_FIRM', JSON.stringify(this.storeInfo))
console.log(this.jobDetail);
console.log(this.storeInfo);
this.storeInfo.currentPageNum = this.currentPageNum;
console.log(this.storeInfo);
this.$router.push({ name: "recordbill", params: this.storeInfo });
sessionStorage.setItem("CURRENT_FIRM", JSON.stringify(this.storeInfo));
},
getSalaryClassifyValue(salaryClassify, salaryClassifyValue) {
return getSalaryClassifyValue(salaryClassify, salaryClassifyValue)
return getSalaryClassifyValue(salaryClassify, salaryClassifyValue);
},
/**
* 图片预览点击
@ -914,57 +905,57 @@ export default {
*
*/
showImage(idx) {
var that = this
console.log(that.storeImage)
var that = this;
console.log(that.storeImage);
that.storeImage.forEach((item, index) => {
if (that.isImg(item)) {
that.imgList.push(item)
that.imgList.push(item);
}
})
});
this.$viewerApi({
options: { initialViewIndex: idx },
images: this.imgList,
})
});
// }
},
isImg(str) {
console.log(str)
let regs = /\.(jpg|jpeg|png)(\?.*)?$/
return regs.test(str)
console.log(str);
let regs = /\.(jpg|jpeg|png)(\?.*)?$/;
return regs.test(str);
},
copyText() {
console.log(123)
var clipboard = new Clipboard('.copy', {
console.log(123);
var clipboard = new Clipboard(".copy", {
// .copy
target: function () {
// target
return document.querySelector('.copyInfo') // .copyInfo
return document.querySelector(".copyInfo"); // .copyInfo
},
})
clipboard.on('success', (e) => {
});
clipboard.on("success", (e) => {
// success success => error
console.log(e)
this.$message.success('复制成功')
})
console.log(e);
this.$message.success("复制成功");
});
},
toList() {
//
this.$router.push({
name: 'JobList',
name: "JobList",
params: {
pagenum: this.currentPageNum,
},
})
});
},
handlePreview(file) {
this.previewImage = file
this.previewVisible = true
this.previewImage = file;
this.previewVisible = true;
},
},
}
};
</script>
<style scoped lang="less">
@ -1321,25 +1312,29 @@ export default {
background-color: #ff4400;
}
}
// .jobDesp {
// width: 116px;
// height: 32px;
// line-height: 30px;
// font-size: 16px;
// margin-right: 20px;
// // border: 1px solid rgba(77, 87, 94, 0.3);
// border-radius: 4px;
// border: 1px solid #ff4400;
// background-color: #fff;
// color: rgba(255, 106, 0, 1);
// transition: none;
// cursor: pointer;
// &:hover {
// color: #fff;
.jobDespBtn {
width: 116px;
height: 32px;
line-height: 30px;
font-size: 16px;
margin-right: 20px;
// border: 1px solid rgba(77, 87, 94, 0.3);
border-radius: 4px;
border: 1px solid #d9d9d9;
background-color: #fff;
color: #333;
transition: none;
cursor: pointer;
&:hover {
color: #ff4400;
border: 1px solid #ff4400;
// background-color: #ff791a;
// }
// }
}
i {
color: #ff4400;
}
}
.norecruitment {
border: 1px solid #ccc;
margin-left: 16px;

@ -63,8 +63,8 @@
<template v-if="jobDetail.minMonthlyPay">
<span style="font-size: 16px">&nbsp;&nbsp;|&nbsp;&nbsp;</span>
<div class="jobpricemonth">
<span>{{ jobDetail.minMonthlyPay }}</span
>- <span>{{ jobDetail.maxMonthlyPay }}</span
<span>{{ jobDetail.minMonthlyPayStr }}</span
>- <span>{{ jobDetail.maxMonthlyPayStr }}</span
>/
</div>
</template>
@ -306,6 +306,8 @@ export default {
console.log(data.data);
console.log(disposeJobListData(data.data));
this.jobDetail = disposeJobListData(data.data);
this.jobDetail.maxMonthlyPayStr = this.jobDetail.maxMonthlyPay / 100
this.jobDetail.minMonthlyPayStr = this.jobDetail.minMonthlyPay / 100
this.store = data.data;
this.jobDetail.district = disposeJobListData(data.data).district;
this.retrunFee = setReturnFee(data.data.returnFee, data.data.returnFeeType);

@ -404,7 +404,6 @@
<div class="subset" v-for="(item, index) in jobMainList" :key="index" :style="{
background: item.recruitment == '1' ? '#fff' : '#f5f5f5',
}">
<!-- v-if="signType == ''" -->
<router-link target="_blank" :to="signType == '' ? ('/detail?' + 'id=' + item.id + '&' + 'page=' + formvalue.pageNum) : ('/detailYicai?' + 'id=' + item.id)" rel="opener">
@ -441,8 +440,14 @@
<div class="jobpricemonth" v-if="item.minMonthlyPay">
<!-- :style="{ opacity: item.minMonthlyPay ? '1' : '0' }" -->
<template v-if="formvalue.signType != 1">
<span>{{ item.minMonthlyPay ? item.minMonthlyPay : "" }}</span>-
<span>{{ item.maxMonthlyPay ? item.maxMonthlyPay : "" }}</span>/
</template>
<template v-else>
<span>{{ item.minMonthlyPay ? item.minMonthlyPay / 100: "" }}</span>-
<span>{{ item.maxMonthlyPay ? item.maxMonthlyPay / 100: "" }}</span>/
</template>
</div>
<div class="jobpricehour" v-html="getSalaryClassifyValue(item.salaryClassify, item.salaryClassifyValue)">
<!-- <template v-if="item.hourlyPay"
@ -518,7 +523,7 @@
<!-- <p>0371-6611 3723</p> -->
<img style="width:60px;height:60px;border-radius:50%" class="mt24" :src="managerInfo.avatar || 'https://matripe-cms.oss-cn-beijing.aliyuncs.com/1shoudan/service.jpg'" alt />
<p class="mt24 f16">{{managerInfo.workPhone}}</p>
<p class="mt24 f16">{{managerInfo.workPhone || '-'}}</p>
<p class="f16">
{{managerInfo.name}}
<i class="iconfont icon-dianhua1 ml4 f14" style="line-height:24px;color:#ff4400"></i>
@ -827,7 +832,6 @@ export default {
}
if (this.signType == '') {
this.getJobList()
} else {
this.getJobListYicai()
}
@ -853,7 +857,6 @@ export default {
} else {
this.getPosition()
}
},
/**
* el 被新创建的 vm.el 替换并挂载到实例上去之后调用该钩子
@ -1087,7 +1090,6 @@ export default {
this.formvalue.pageNum = 1
this.getJobList()
}
}
},
async getJobSpecialList() {
@ -1357,7 +1359,6 @@ export default {
this.$router.push({ name: 'recordbillYicai', params: item })
sessionStorage.setItem('CURRENT_FIRM_YICAI', JSON.stringify(item))
}
},
getSalaryClassifyValue(salaryClassify, salaryClassifyValue) {
return getSalaryClassifyValue(salaryClassify, salaryClassifyValue)

@ -1,4 +1,4 @@
@import "http://at.alicdn.com/t/c/font_3135652_fo3hhgd9jw9.css";
@import "http://at.alicdn.com/t/c/font_3135652_nopyx9nvfil.css";
@font-face {
font-family: "DingTalk"; /* 这里的字体名称是自定义的 */
src: url("../assets/fonts/DingTalk\ Sans.ttf"); /* 服务器上ttf文件的路径记得配置域名权限 */

@ -53,50 +53,55 @@
</div>
<span v-if="isLogin" class="logined fsa">
<div class v-if="loginValue.agencyName == '郑州一才工作'">
<a-dropdown :trigger="['click']" v-if="false" overlayClassName="logindropdown" placement="bottomRight" :getPopupContainer="
<a-dropdown
:trigger="['click']"
v-if="false"
overlayClassName="logindropdown"
placement="bottomRight"
:getPopupContainer="
(triggerNode) => {
return triggerNode.parentNode || document.body;
}
">
"
>
<div class="mr20 user-box">
<i class="iconfont icon-xiaoxi"></i>
</div>
<div class="loginbox" slot="overlay">
<router-link to="/systemMsg">
<div>
<span>
<i class="iconfont icon-xitongtongzhi"></i>系统通知
</span>
<span> <i class="iconfont icon-xitongtongzhi"></i>系统通知 </span>
<i class="iconfont icon-youjiantou"></i>
</div>
</router-link>
<router-link to="/teamMsg">
<div style="border-bottom: none;">
<span>
<i class="iconfont icon-tuanduitongzhi"></i>团队通知
</span>
<div style="border-bottom: none">
<span> <i class="iconfont icon-tuanduitongzhi"></i>团队通知 </span>
<i class="iconfont icon-youjiantou"></i>
</div>
</router-link>
</div>
</a-dropdown>
</div>
<a-dropdown :trigger="['click']" overlayClassName="logindropdown" placement="bottomRight" :getPopupContainer="
<a-dropdown
:trigger="['click']"
overlayClassName="logindropdown"
placement="bottomRight"
:getPopupContainer="
(triggerNode) => {
return triggerNode.parentNode || document.body;
}
">
"
>
<span class="fsa fsa-box">
<span class="iconfont icon-morentouxiang mr4 f32" v-if="!userbaseInfo.imgSrc"></span>
<img :src="userbaseInfo.imgSrc" class="mr4" style="border-radius:50%;width:28px;height:28px;" alt v-else />
<div class="ml4 f14 c6">{{ userbaseInfo.userName || userbaseInfo.nickName || '-' }}</div>
<img :src="userbaseInfo.imgSrc" class="mr4" style="border-radius: 50%; width: 28px; height: 28px" alt v-else />
<div class="ml4 f14 c6">{{ userbaseInfo.userName || userbaseInfo.nickName || "-" }}</div>
</span>
<div class="loginbox" slot="overlay">
<router-link to="/accountsetting">
<div>
<span>
<i class="iconfont icon-gerenzhongxin"></i>个人中心
</span>
<span> <i class="iconfont icon-gerenzhongxin"></i>个人中心 </span>
<i class="iconfont icon-youjiantou"></i>
</div>
</router-link>
@ -111,20 +116,18 @@
<!-- 2023-11-29 注释该条件 && (loginValue.agencyRole == 2 || loginValue.agencyRole == 1 ) -->
<router-link to="###" v-if="loginValue.agencyName == '郑州一才工作' || loginValue.id == '116253'">
<div @click="goAdmin">
<span>
<i class="iconfont icon-shangjiahoutai"></i>商家后台
</span>
<span> <i class="iconfont icon-shangjiahoutai"></i>商家后台 </span>
<i class="iconfont icon-youjiantou"></i>
</div>
</router-link>
<router-link to="###" v-if="loginValue.agencyName == '郑州一才工作'">
<!-- <router-link to="###" v-if="loginValue.agencyName == '郑州一才工作'">
<div @click="goJiaofu">
<span>
<i class="iconfont icon-jiaofuzhushouicon"></i>交付助手
</span>
<i class="iconfont icon-youjiantou"></i>
</div>
</router-link>
</router-link> -->
<button @click="logout">退</button>
</div>
</a-dropdown>
@ -225,8 +228,8 @@
<span>
Powered by
<svg class="svg_icon ml4" style="font-size: 46px; margin-top: -2px" aria-hidden="true">
<use xlink:href="#icon-bocai2" />
</svg>Copyright © 2015-2023 Bocai. All Rights Reserved.
<use xlink:href="#icon-bocai2" /></svg
>Copyright © 2015-2023 Bocai. All Rights Reserved.
</span>
<a target="_blank" href="https://beian.miit.gov.cn/#/Integrated/index">豫ICP备2023001993号</a>
</div>
@ -237,27 +240,27 @@
<script>
// import joblist from "../components/firstjob/joblist.vue";
import Cookies from 'js-cookie'
import Cookies from "js-cookie";
import {
JobListApi,
JobListApiYicai
JobListApiYicai,
// getCityApi,
} from '../api/job'
} from "../api/job";
import { logoutApi } from '../api/login'
import { disposeJobListData,setReturnFee } from '../utils/commonUtil'
import { logoutApi } from "../api/login";
import { disposeJobListData, setReturnFee } from "../utils/commonUtil";
export default {
inject: ['reload'],
inject: ["reload"],
provide() {
return {
getJobList: this.getJobList,
getJobListYicai: this.getJobListYicai,
logout: this.logout,
}
};
},
//
name: '',
name: "",
//
components: {
// joblist,
@ -280,18 +283,18 @@ export default {
//
district: [], //
monthlyPayStr: [], //
ageStr: '', //
ageStr: "", //
jobSpecialLabelIds: [], //
aliasName: '',
aliasName: "",
sex: [],
pageNum: 1,
pageSize: 8,
total: null, //
},
userbaseInfo: JSON.parse(localStorage.getItem('LOGIN_DATA')),
userbaseInfo: JSON.parse(localStorage.getItem("LOGIN_DATA")),
loginPage: false,
routertitleindex: 0,
}
};
},
//
computed: {
@ -341,49 +344,49 @@ export default {
// } else {
// this.laoxiangshow = true
// }
this.showfooter()
this.showfooter();
},
$route: {
handler(to) {
console.log()
console.log();
// console.log("ischange");
// console.log(to);
// console.log(from);
// console.dir(this.navigationBarLocation);
window.addEventListener('scroll', this.navigationBarLocation)
window.addEventListener('scroll', this.windowScroll) //
if (to.fullPath.indexOf('serviceoutlets') > -1) {
this.routertitleindex = 2
} else if (to.fullPath.indexOf('list') > -1 || to.fullPath.indexOf('detail') > -1) {
this.routertitleindex = 1
} else if (to.fullPath.indexOf('aboutus') > -1) {
this.routertitleindex = 3
} else if (to.fullPath.indexOf('main') > -1) {
this.routertitleindex = 0
} else if (to.fullPath.indexOf('mytownsman') > -1) {
this.routertitleindex = 4
} else if (to.fullPath.indexOf('mybill') > -1) {
this.routertitleindex = 5
} else if (to.fullPath.indexOf('dataStatistics') > -1) {
this.routertitleindex = 6
window.addEventListener("scroll", this.navigationBarLocation);
window.addEventListener("scroll", this.windowScroll); //
if (to.fullPath.indexOf("serviceoutlets") > -1) {
this.routertitleindex = 2;
} else if (to.fullPath.indexOf("list") > -1 || to.fullPath.indexOf("detail") > -1) {
this.routertitleindex = 1;
} else if (to.fullPath.indexOf("aboutus") > -1) {
this.routertitleindex = 3;
} else if (to.fullPath.indexOf("main") > -1) {
this.routertitleindex = 0;
} else if (to.fullPath.indexOf("mytownsman") > -1) {
this.routertitleindex = 4;
} else if (to.fullPath.indexOf("mybill") > -1) {
this.routertitleindex = 5;
} else if (to.fullPath.indexOf("dataStatistics") > -1) {
this.routertitleindex = 6;
} else {
this.routertitleindex = 7
this.routertitleindex = 7;
}
if (to.fullPath == '/login' || !localStorage.getItem('LOGIN_DATA')) {
this.loginPage = true
this.isLogin = false
if (to.fullPath == "/login" || !localStorage.getItem("LOGIN_DATA")) {
this.loginPage = true;
this.isLogin = false;
} else {
this.loginPage = false
this.loginPage = false;
}
if (to.fullPath == '/list') {
window.removeEventListener('scroll', this.navigationBarLocation)
return
} else if (to.fullPath == '/main') {
window.removeEventListener('scroll', this.windowScroll)
return
if (to.fullPath == "/list") {
window.removeEventListener("scroll", this.navigationBarLocation);
return;
} else if (to.fullPath == "/main") {
window.removeEventListener("scroll", this.windowScroll);
return;
}
window.removeEventListener('scroll', this.navigationBarLocation)
window.removeEventListener('scroll', this.windowScroll)
window.removeEventListener("scroll", this.navigationBarLocation);
window.removeEventListener("scroll", this.windowScroll);
},
deep: true,
immediate: true,
@ -394,26 +397,26 @@ export default {
* 组件实例创建完成属性已绑定但DOM还未生成$ el属性还不存在
*/
created() {
console.log(this.$route)
if (this.$route.fullPath != '/login') {
this.loginPage = false
}
if (localStorage.getItem('LOGIN_DATA')) {
this.isLogin = true
}
this.getJobList()
this.getJobListYicai()
this.isLaoxiangshow()
this.getRecommendJob()
this.showfooter()
console.log(this.$route);
if (this.$route.fullPath != "/login") {
this.loginPage = false;
}
if (localStorage.getItem("LOGIN_DATA")) {
this.isLogin = true;
}
this.getJobList();
this.getJobListYicai();
this.isLaoxiangshow();
this.getRecommendJob();
this.showfooter();
},
/**
* el 被新创建的 vm.el 替换并挂载到实例上去之后调用该钩子
* 如果 root 实例挂载了一个文档内元素 mounted 被调用时 vm.el 也在文档内
*/
mounted() {
this.loginValue = localStorage.getItem('LOGIN_DATA') !== null ? JSON.parse(localStorage.getItem('LOGIN_DATA')) : { tel: '' }
console.log(this.loginValue)
this.loginValue = localStorage.getItem("LOGIN_DATA") !== null ? JSON.parse(localStorage.getItem("LOGIN_DATA")) : { tel: "" };
console.log(this.loginValue);
// console.log(document.querySelector(".ant-pagination-options-quick-jumper"));
},
//
@ -453,176 +456,172 @@ export default {
// }
// },
navigationBarLocation() {
let navigationBar = document.getElementById('navigationBar')
let aboutBill = document.getElementById('aboutBill')
let navigationBar = document.getElementById("navigationBar");
let aboutBill = document.getElementById("aboutBill");
// console.log(navigationBar.getBoundingClientRect().top);
// console.log(aboutBill);
// console.log(aboutBill.getBoundingClientRect().top);
if (this.$route.fullPath == '/main') {
if (this.$route.fullPath == "/main") {
if (navigationBar.getBoundingClientRect().top <= 0 && aboutBill.getBoundingClientRect().top < 84) {
navigationBar.style.position = 'fixed'
navigationBar.style.top = '0px'
navigationBar.style.boxShadow = '0 0 10px 0 #eee'
navigationBar.style.width = '1920px'
navigationBar.style.position = "fixed";
navigationBar.style.top = "0px";
navigationBar.style.boxShadow = "0 0 10px 0 #eee";
navigationBar.style.width = "1920px";
} else if (navigationBar.getBoundingClientRect().top == 0 && aboutBill.getBoundingClientRect().top >= 84) {
// console.log('isbig');
navigationBar.style.position = 'absolute'
navigationBar.style.top = 'unset'
navigationBar.style.bottom = '0px'
navigationBar.style.boxShadow = 'none'
navigationBar.style.width = '1200px'
navigationBar.style.position = "absolute";
navigationBar.style.top = "unset";
navigationBar.style.bottom = "0px";
navigationBar.style.boxShadow = "none";
navigationBar.style.width = "1200px";
}
}
},
//
async getJobList(newdata) {
this.isspinning = true
console.log(this.formvalue)
this.isspinning = true;
console.log(this.formvalue);
try {
newdata = {
district: '',
monthlyPayStr: '',
ageStr: '',
jobSpecialLabelIds: '',
aliasName: '',
district: "",
monthlyPayStr: "",
ageStr: "",
jobSpecialLabelIds: "",
aliasName: "",
pageNum: 1,
pageSize: 8,
total: null, //
}
};
for (var k in this.formvalue) {
// console.log(this.formvalue[k]);
if (Array.isArray(this.formvalue[k])) {
newdata[k] = this.formvalue[k].length > 0 ? this.formvalue[k].join() : ''
newdata[k] = this.formvalue[k].length > 0 ? this.formvalue[k].join() : "";
} else {
newdata[k] = this.formvalue[k]
newdata[k] = this.formvalue[k];
}
}
// console.log(newdata);
// debugger;
// console.log(this.isLogin);
if (this.isLogin) {
const { data } = await JobListApi(newdata)
const { data } = await JobListApi(newdata);
// console.log(data);
if (data.status === 200) {
this.jobMainList = disposeJobListData(data.data.recordList)
this.formvalue.total = data.data.recordCount
console.log(this.jobMainList)
this.jobMainList = disposeJobListData(data.data.recordList);
this.formvalue.total = data.data.recordCount;
console.log(this.jobMainList);
} else {
this.$message.info('数据获取失败')
this.$message.info("数据获取失败");
}
}
this.totop()
this.totop();
// = data.data.recordList;
// console.log(this.formvalue);
} catch (error) {
console.log(error)
console.log(error);
}
this.isspinning = false
this.isspinning = false;
},
//
async getJobListYicai(newdata) {
this.isspinning = true
console.log(this.formvalue)
this.isspinning = true;
console.log(this.formvalue);
try {
newdata = {
agencyId: '3087',
agencyId: "3087",
recruitment: "1",
keys: '',
keys: "",
pageNum: 1,
pageSize: 8,
total: null, //
}
};
for (var k in this.formvalue) {
// console.log(this.formvalue[k]);
if (Array.isArray(this.formvalue[k])) {
newdata[k] = this.formvalue[k].length > 0 ? this.formvalue[k].join() : ''
newdata[k] = this.formvalue[k].length > 0 ? this.formvalue[k].join() : "";
} else {
newdata[k] = this.formvalue[k]
newdata[k] = this.formvalue[k];
}
}
// console.log(newdata);
// debugger;
// console.log(this.isLogin);
if (this.isLogin) {
const { data } = await JobListApiYicai(newdata)
const { data } = await JobListApiYicai(newdata);
// console.log(data);
if (data.status === 200) {
this.jobMainList = disposeJobListData(data.data.recordList)
this.jobMainList = disposeJobListData(data.data.recordList);
this.jobMainList.forEach((item, index) => {
item['servetype'] = setReturnFee(item.returnFee,item.returnFeeType);
})
this.formvalue.total = data.data.recordCount
console.log(this.jobMainList)
item["servetype"] = setReturnFee(item.returnFee, item.returnFeeType);
});
this.formvalue.total = data.data.recordCount;
console.log(this.jobMainList);
} else {
this.$message.info('数据获取失败')
this.$message.info("数据获取失败");
}
}
this.totop()
this.totop();
// = data.data.recordList;
// console.log(this.formvalue);
} catch (error) {
console.log(error)
console.log(error);
}
this.isspinning = false
this.isspinning = false;
},
totop() {
// console.log(window);
document.body.scrollTop = 0
document.documentElement.scrollTop = 0
document.body.scrollTop = 0;
document.documentElement.scrollTop = 0;
// window.body.scrollY = 0;
},
isLaoxiangshow() {
const path = this.$route.fullPath
if (path.indexOf('serviceoutlets') > -1) {
this.laoxiangshow = true
} else if (path.indexOf('list') > -1 || path.indexOf('detail') > -1) {
this.laoxiangshow = true
} else if (path.indexOf('aboutus') > -1) {
this.laoxiangshow = false
const path = this.$route.fullPath;
if (path.indexOf("serviceoutlets") > -1) {
this.laoxiangshow = true;
} else if (path.indexOf("list") > -1 || path.indexOf("detail") > -1) {
this.laoxiangshow = true;
} else if (path.indexOf("aboutus") > -1) {
this.laoxiangshow = false;
} else {
this.laoxiangshow = true
this.laoxiangshow = true;
}
},
async getRecommendJob() {
this.isspinning = true
this.isspinning = true;
try {
if (this.isLogin) {
const { data } = await JobListApi({
pageNum: 1,
pageSize: 4,
jobCategory: 608,
})
});
// console.log(data);
this.fellowList = disposeJobListData(data.data.recordList)
this.fellowList = disposeJobListData(data.data.recordList);
// console.log(this.fellowList);
}
// this.$emit("update:relationList", this.relationList);
} catch (error) {
console.log(error)
console.log(error);
}
this.isspinning = false
this.isspinning = false;
},
async logout() {
// logoutApi().then((result) => {
// console.log(result);
// });
try {
const data = await logoutApi()
console.log(data)
const data = await logoutApi();
console.log(data);
if (data.status === 200) {
localStorage.removeItem('LOGIN_DATA')
localStorage.removeItem('DAOTIAN_token')
localStorage.removeItem('daotian_to_admin_token')
this.reload()
this.$router.push('/main')
localStorage.removeItem("LOGIN_DATA");
localStorage.removeItem("DAOTIAN_token");
localStorage.removeItem("daotian_to_admin_token");
this.reload();
this.$router.push("/main");
} else {
console.log(1)
console.log(1);
}
// this.fellowList = disposeJobListData(data.data.recordList);
@ -630,8 +629,8 @@ export default {
// console.log(this.fellowList);
// this.$emit("update:relationList", this.relationList);
} catch (error) {
console.log(error)
this.$message.warning(error.message)
console.log(error);
this.$message.warning(error.message);
}
// console.log(data);
// if (data.status === 200) {
@ -639,78 +638,78 @@ export default {
// }
},
resetpage() {
console.log(1)
console.log(1);
setTimeout(() => {
this.reload()
document.body.scrollTop = 0
document.documentElement.scrollTop = 0
}, 1000)
this.reload();
document.body.scrollTop = 0;
document.documentElement.scrollTop = 0;
}, 1000);
},
showfooter() {
const path = this.$route.fullPath
const path = this.$route.fullPath;
if (path.indexOf('main') > -1) {
this.isbannershow = false
this.isfootershow = false
if (path.indexOf("main") > -1) {
this.isbannershow = false;
this.isfootershow = false;
} else {
this.isbannershow = true
this.isbannershow = true;
this.isfootershow = true
this.isfootershow = true;
}
if (path.indexOf('login') > -1 && path.indexOf('loginpsw') == -1) {
this.isbannershow = false
if (path.indexOf("login") > -1 && path.indexOf("loginpsw") == -1) {
this.isbannershow = false;
}
},
toList() {
console.log(this.$router)
console.log(this.$router);
// this.$router.go(0);
// window.location.reload();
this.reload()
this.reload();
},
goAdmin() {
let obj = JSON.parse(localStorage.getItem('LOGIN_DATA'))
console.log(JSON.stringify(obj.user))
if (window.location.hostname == 'localhost') {
let obj = JSON.parse(localStorage.getItem("LOGIN_DATA"));
console.log(JSON.stringify(obj.user));
if (window.location.hostname == "localhost") {
// URLtoken
window.open('http://localhost:3000/#/main?token=' + obj.token + '&username=' + (obj.user.userName ? obj.user.userName : obj.user.nickName) + '&avatar=' + obj.imgSrc + '&roleid=' + obj.user.agencyRoleId + '&agencyid=' + obj.user.agencyId + '&userInfo=' + JSON.stringify(obj))
window.open("http://localhost:3000/#/login?token=" + obj.token + "&username=" + (obj.user.userName ? obj.user.userName : obj.user.nickName) + "&avatar=" + obj.imgSrc + "&roleid=" + obj.user.agencyRoleId + "&agencyid=" + obj.user.agencyId + "&userInfo=" + JSON.stringify(obj));
} else {
//
localStorage.setItem('daotian_to_admin', JSON.stringify(obj))
localStorage.setItem('daotian_to_admin_token', obj.token)
localStorage.setItem('daotian_to_admin_avatar', obj.imgSrc)
localStorage.setItem('daotian_to_admin_username', obj.user.userName ? obj.user.userName : obj.user.nickName)
localStorage.setItem('daotian_to_admin_roleid', obj.user.agencyRoleId)
localStorage.setItem('daotian_to_admin_agencyid', obj.user.agencyId)
if (window.location.origin.indexOf('www') > -1) {
window.open('http://www.idaotian.com/dist2.0.0/#/main')
localStorage.setItem("daotian_to_admin", JSON.stringify(obj));
localStorage.setItem("daotian_to_admin_token", obj.token);
localStorage.setItem("daotian_to_admin_avatar", obj.imgSrc);
localStorage.setItem("daotian_to_admin_username", obj.user.userName ? obj.user.userName : obj.user.nickName);
localStorage.setItem("daotian_to_admin_roleid", obj.user.agencyRoleId);
localStorage.setItem("daotian_to_admin_agencyid", obj.user.agencyId);
if (window.location.origin.indexOf("www") > -1) {
window.open("http://www.ibocai.cn/#/login?token=" + obj.token + "&username=" + (obj.user.userName ? obj.user.userName : obj.user.nickName) + "&avatar=" + obj.imgSrc + "&roleid=" + obj.user.agencyRoleId + "&agencyid=" + obj.user.agencyId + "&userInfo=" + JSON.stringify(obj));
} else {
window.open('http://idaotian.com/dist2.0.0/#/main')
window.open("http://ibocai.cn/#/login?token=" + obj.token + "&username=" + (obj.user.userName ? obj.user.userName : obj.user.nickName) + "&avatar=" + obj.imgSrc + "&roleid=" + obj.user.agencyRoleId + "&agencyid=" + obj.user.agencyId + "&userInfo=" + JSON.stringify(obj));
}
}
},
goJiaofu() {
let obj = JSON.parse(localStorage.getItem('LOGIN_DATA'))
if (window.location.hostname == 'localhost') {
let obj = JSON.parse(localStorage.getItem("LOGIN_DATA"));
if (window.location.hostname == "localhost") {
// URLtoken
window.open('http://localhost:3000/#/other/delivery?token=' + obj.token + '&username=' + (obj.user.userName ? obj.user.userName : obj.user.nickName) + '&avatar=' + obj.imgSrc + '&roleid=' + obj.user.agencyRoleId + '&agencyid=' + obj.user.agencyId + '&userInfo=' + JSON.stringify(obj))
window.open("http://localhost:3000/#/other/delivery?token=" + obj.token + "&username=" + (obj.user.userName ? obj.user.userName : obj.user.nickName) + "&avatar=" + obj.imgSrc + "&roleid=" + obj.user.agencyRoleId + "&agencyid=" + obj.user.agencyId + "&userInfo=" + JSON.stringify(obj));
} else {
//
localStorage.setItem('daotian_to_admin_token', obj.token)
localStorage.setItem('daotian_to_admin', JSON.stringify(obj))
localStorage.setItem('daotian_to_admin_avatar', obj.imgSrc)
localStorage.setItem('daotian_to_admin_username', obj.user.userName ? obj.user.userName : obj.user.nickName)
localStorage.setItem('daotian_to_admin_roleid', obj.user.agencyRoleId)
localStorage.setItem('daotian_to_admin_agencyid', obj.user.agencyId)
if (window.location.origin.indexOf('www') > -1) {
window.open('http://www.idaotian.com/dist2.0.0/#/other/delivery')
localStorage.setItem("daotian_to_admin_token", obj.token);
localStorage.setItem("daotian_to_admin", JSON.stringify(obj));
localStorage.setItem("daotian_to_admin_avatar", obj.imgSrc);
localStorage.setItem("daotian_to_admin_username", obj.user.userName ? obj.user.userName : obj.user.nickName);
localStorage.setItem("daotian_to_admin_roleid", obj.user.agencyRoleId);
localStorage.setItem("daotian_to_admin_agencyid", obj.user.agencyId);
if (window.location.origin.indexOf("www") > -1) {
window.open("http://www.ibocai.cn/#/other/delivery");
} else {
window.open('http://idaotian.com/dist2.0.0/#/other/delivery')
window.open("http://ibocai.cn/#/other/delivery");
}
}
},
},
}
};
</script>
<style scoped lang="less">

Loading…
Cancel
Save