# Conflicts:
#	package-lock.json
cyl/dev
zsk 1 year ago
commit 3ac6b4fe72

@ -1,4 +1,11 @@
## yishoudan
## 伯才供应链
```
访问网址https://ibocai.cn
FTP文件夹
1webapp/yishoudan
2删除并重新上传staticindex.htmlfavicon.ico
```

@ -8,7 +8,7 @@
<script>
import zhCn from "ant-design-vue/lib/locale-provider/zh_CN";
let sp = document.createElement('script')
sp.src = '//at.alicdn.com/t/c/font_3135652_34tw0b78y6p.js'
sp.src = '//at.alicdn.com/t/c/font_3135652_w51b50q5ata.js'
document.body.appendChild(sp)
export default {
provide() {
@ -66,6 +66,7 @@ body {
position: inherit !important;
width: auto !important;
overflow: revert !important;
background-color: #f0f0f0 !important;
}
</style>

@ -0,0 +1,287 @@
<template>
<div class="recommend-container">
<div class="recommendposition">
<!-- :class="isdetail ? 'showborder' : ''" -->
<h1 class="bottombox g_flex_row_between g_pl_16 g_pr_16" style="padding-left: 16px;padding-right: 16px;">
<div>
<i>代理佣金</i>
</div>
<div class="g_flex_column_center" @click="isSee = !isSee" style="cursor: pointer;">
<i class="iconfont icon-zhengyan11" style="font-size: 22px;color: #ff4400;line-height: 0.1;" v-if="isSee"></i>
<i class="iconfont icon-biyan11" style="font-size: 22px;color: #ff4400;line-height: 0.1;margin-top: -4px;" v-if="!isSee"></i>
</div>
</h1>
<div style="text-align: center">
<a-spin tip="加载中..." :spinning="isspinning"></a-spin>
</div>
<div class="jobBox" v-if="false">
<div class="jobinfobox" v-for="(item, index) in relationList" :key="index">
<router-link target="_blank" :to="'/detail?id=' + item.id +'&jobClassify='+item.jobClassify" @click.prevent="resetpage">
<!-- <a href="javascript:;" > -->
<!-- <div class="imgbox">
<img v-if="item.logo" :src="item.logo" alt />
<img v-else src="../../../../static/img/nopicture.png" alt />
<span>服务费{{ item.servetype }}</span>
</div> -->
<div class="jobname">{{item.jobName || '-' }}</div>
<span style=" padding: 0 10px;
height: 20px;
background: #ff4400;
border-radius: 16px;
font-size: 12px;
font-weight: 500;
text-align: center;
color: #ffffff;
line-height: 20px;">服务费{{ item.servetype }}</span>
<!-- </a> -->
</router-link>
<div class="jobinfo">
<span>{{ item.district }}</span>
<span>{{ item.gender }}</span>
<span>{{ item.age }}</span>
</div>
<div class="jobtag">
<!-- <span>返费</span> -->
<span v-for="(item1, index) in item.jobSpecialLabelNames" :key="index">{{ item1 }}</span>
</div>
<div class="jobprice" v-html="
getSalaryClassifyValue(
item.salaryClassify,
item.salaryClassifyValue
)
">
<!-- <template v-if="item.hourlyPay"
><span>{{ item.hourlyPayTemp / 100 }}</span
>/小时</template
>
<template v-else-if="item.dayPay"
><span>{{ item.hourlyPayTemp / 100 }}</span
>/</template
>-->
</div>
</div>
</div>
</div>
</div>
</template>
<script>
import { disposeJobListData, getSalaryClassifyValue } from '../../../utils/commonUtil'
import {
JobListApi,
// getCityApi,
} from '../../../api/job'
export default {
inject: ['reload'],
//
name: '',
//
components: {},
//
props: {},
//
data() {
return {
isSee:true,
isspinning: false,
isdetail: false,
relationList: [],
}
},
//
computed: {},
//
watch: {},
//
/**
* 组件实例创建完成属性已绑定但DOM还未生成$ el属性还不存在
*/
created() {
this.getRecommendJob()
},
/**
* el 被新创建的 vm.el 替换并挂载到实例上去之后调用该钩子
* 如果 root 实例挂载了一个文档内元素 mounted 被调用时 vm.el 也在文档内
*/
mounted() {
// console.log(this.$route.fullPath);
if (this.$route.fullPath.indexOf('detail') > -1) {
this.isdetail = true
}
console.log(this.isdetail)
},
//
methods: {
async getRecommendJob() {
this.isspinning = true
try {
const { data } = await JobListApi({
pageNum: 1,
pageSize: 3,
jobCategory: 608,
})
console.log(data)
this.relationList = disposeJobListData(data.data.recordList)
console.log(this.relationList)
// this.relationList.forEach((item) => {
// item.age = ''
// })
// this.$emit("update:relationList", this.relationList);
} catch (error) {
console.log(error)
}
this.isspinning = false
},
resetpage() {
console.log(1)
setTimeout(() => {
this.reload()
document.body.scrollTop = 0
document.documentElement.scrollTop = 0
}, 1000)
},
getSalaryClassifyValue(salaryClassify, salaryClassifyValue) {
return getSalaryClassifyValue(salaryClassify, salaryClassifyValue)
},
},
}
</script>
<style scoped lang="less">
.showborder {
border: 1px solid rgba(77, 87, 94, 0.1);
}
.recommendposition {
// width: 270px;
// height: 1008px;
overflow: hidden;
background: #ffffff;
border-radius: 6px;
// padding: 0px 20px 0px 20px;
h1 {
// margin-bottom: 12px;
font-size: 16px;
text-align: left;
&::after {
// display: none;
}
i {
display: inline-block;
line-height: 20px;
// border-bottom: 2px solid #1890ff;
// padding: 6px 0;
}
span {
display: inline-block;
vertical-align: middle;
margin-top: -4px;
width: 4px;
height: 20px;
margin-right: 8px;
background: #1890ff;
}
}
.jobBox {
padding: 16px 20px 0 20px;
border-radius: 0 0 6px 6px;
overflow: hidden;
.jobinfobox:last-of-type {
border-bottom: none;
}
.jobinfobox {
// width: 240px;
// height: 298px;
// margin-bottom: 16px;
background: #ffffff;
// border: 1px solid rgba(77, 87, 94, 0.1);
border-radius: 4px;
// padding: 20px;
border-bottom: 1px solid #f2f0ec;
margin-bottom: 10px;
.imgbox {
width: 200px;
height: 200px;
position: relative;
img {
width: 100%;
height: 100%;
border-radius: 6px;
}
span {
position: absolute;
// width: 118px;
padding: 0 10px;
height: 20px;
left: 0;
bottom: 0;
background: #1890ff;
border-radius: 16px 16px 16px 0px;
font-size: 12px;
font-weight: 500;
text-align: center;
color: #ffffff;
line-height: 20px;
}
}
.jobname {
// height: 45px;
// margin: 12px 0;
font-size: 18px;
font-weight: bold;
text-align: left;
color: #4d575e;
line-height: 18px;
margin-bottom: 8px;
// margin-top: 16px;
// border-bottom: 1px solid #f2f0ec;
}
.jobinfo {
margin-top: 8px;
font-size: 14px;
font-weight: 400;
text-align: left;
color: #999;
line-height: 18px;
}
.jobtag {
margin-top: 12px;
text-align: left;
// span:first-child {
// color: #1890ff;
// background: rgba(254, 97, 0, 0.1);
// }
span {
margin-right: 12px;
font-size: 14px;
padding: 2px 5px;
background: rgba(51, 51, 51, 0.06);
border-radius: 4px;
}
span:nth-of-type(n + 3) {
display: none;
}
}
/deep/ .jobprice {
margin-top: 8px;
margin-bottom:8px;
font-size: 14px;
text-align: left;
color: #ff4400;
line-height: 18px;
font-weight: 600;
span {
font-weight: 600 !important;
}
i {
font-size: 18px;
line-height: 28px;
}
}
}
}
}
</style>

@ -1,7 +1,8 @@
<template>
<div class="detail-container">
<div style="height: 56px"></div>
<!-- 面包屑 -->
<a-breadcrumb class="w">
<a-breadcrumb class="w" style="width: 960px; min-width: 960px">
<a-breadcrumb-item href>
<router-link to="/main">
<a-icon type="home" />
@ -9,135 +10,118 @@
</a-breadcrumb-item>
<a-breadcrumb-item href>
<a @click="toList">
<span>{{ "伯才职位" }}</span>
<span>{{ "职位列表" }}</span>
</a>
</a-breadcrumb-item>
<a-breadcrumb-item href>
<span style="color: #333">{{ from == "vocational" ? "详情" : "职位详情" }}</span>
<span style="color: #333">{{ "职位详情" }}</span>
</a-breadcrumb-item>
</a-breadcrumb>
<!-- 主体区域 -->
<div class="maincontent w">
<!-- 职教 -->
<div class="maincontentleft" v-if="from == 'vocational'">
<div class="subset">
<a-skeleton avatar active class="skeleton1" v-show="skeletonshow" :paragraph="{ rows: 4 }" />
<div class="subsetleft" v-show="!skeletonshow">
<div class="info">
<!-- <div class="imgbox">
<img v-if="jobDetail.logo" :src="jobDetail.logo" alt />
<div v-else class="default_avatar">{{ jobDetail.vocationalName }}</div>
</div> -->
<div class="jobinfobox">
<div>
<div class="jobname">{{ jobDetail.vocationalName }}</div>
<div class="jobinfo">
<span>{{ jobDetail.district || "河南省 | 郑州市 | 16-35岁" }}</span>
<!-- <span>{{ jobDetail.district }}</span>
<span>{{ jobDetail.gender }}</span>
<span>{{ jobDetail.age }}</span> -->
</div>
<div class="jobpricemonth" style="margin-top: 12px">
<span style="color: #ff4d4f; background: rgba(255, 77, 79, 0.1); padding: 1px 6px"> 工作薪资{{ jobDetail.salary }} </span>
</div>
</div>
<div style="margin-top: 8px; font-size: 14px; font-weight: normal; text-align: left; color: #1890ff; font-weight: 600">
<span class="" style="font-size: 24px">学费{{ jobDetail.tuition }}</span>
<span style="font-size: 16px"> | 课期{{ jobDetail.semester }}</span>
</div>
</div>
</div>
<div class="swiperBox">
<div id="swiper">
<div class="swiper-wrapper">
<div class="swiper-slide" v-for="(item, index) in [...vocationalImgList]" :key="index">
<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>
<video class="imgSpan" style="width: 80px; height: 45px" controls>
<source :src="item" type="video/mp4" />
<source :src="item" type="video/ogg" />
您的浏览器不支持 HTML5 video 标签
</video>
</div>
</div>
</div>
</div>
<div class="swiper-button-next"></div>
<div class="swiper-button-prev"></div>
</div>
<a-modal :visible="previewVisible" wrapClassName="spic" centered :footer="null" @cancel="handleCancel">
<video style="width: 100%; max-height: calc(100vh - 40px)" id="movie" autoplay :src="previewImage" controls="controls" />
</a-modal>
</div>
<div class="subsetright">
<div class="topbox">
<div>服务费</div>
<div>
<span>{{ jobDetail.serviceCharge }}</span>
</div>
</div>
<div class="sub-bottombox">
<!-- <button type="primary" class="jobDespBtn">
<a :href="customServiceUrl" target="_blank"> <i class="iconfont icon-kefu_lan mr6"></i>联系客服</a>
</button> -->
<button class="dropdown bottombox1" @click="showRecord"></button>
<!-- <button class="norecruitment bottombox1" v-else></button> -->
</div>
<div class="maincontent w g_flex_row_between">
<div class="m-money-obj g_mb_20 g_p_20 g_flex_row_between" style="background-color: #fff; border-radius: 6px; width: 800px; margin: 0 auto 20px" v-if="false">
<div class="g_flex_row_start">
<div style="font-size: 16px; font-weight: 600; margin-right: 4px">代理佣金</div>
<div class="g_flex_column_center" @click="isSee = !isSee" style="cursor: pointer">
<i class="iconfont icon-zhengyan11" style="font-size: 22px; color: #ff4400; line-height: 0.1" v-if="isSee"></i>
<i class="iconfont icon-biyan11" style="font-size: 22px; color: #ff4400; line-height: 0.1; margin-top: -4px" v-if="!isSee"></i>
</div>
</div>
<div style="padding: 0 16px">
<div class="" style="color: #333; font-size: 20px; font-weight: 600; margin: 32px 0 16px">职教描述</div>
<div class="c7" style="white-space: pre-line; font-size: 16px">
{{ jobDetail.desp }}
<div class="g_flex_row_end" @click="viewDetail" style="cursor: pointer">
<div class="g_flex_column_center g_fs_14">
<span v-if="isSee">
{{ jobDetail.servetype }}
</span>
<span v-if="!isSee"> *** </span>
</div>
<div class="g_flex_column_center">
<i class="iconfont icon-xiangyou1"></i>
</div>
</div>
</div>
<!-- 非职教 -->
<div class="maincontentleft" v-else>
<div class="maincontentleft">
<div class="mask" v-if="!(jobDetail.recruitment == '1')"></div>
<div class="subset">
<a-skeleton avatar active class="skeleton1" v-show="skeletonshow" :paragraph="{ rows: 4 }" />
<div class="subsetleft" v-show="!skeletonshow">
<div class="subsetleft" v-show="!skeletonshow" style="border-bottom: 1px solid rgb(237, 237, 237);padding-bottom: 20px;">
<div class="info">
<!-- <div class="imgbox">
<img v-if="jobDetail.logo || store.logo" :src="jobDetail.logo || store.logo" alt />
<img v-else src="../../../static/img/nopicture.png" alt />
</div> -->
<div class="jobinfobox">
<div class="jobname">{{ jobDetail.jobName }}
<span class="hotTag" v-if="jobDetail.hotJob == 1">
<div class="g_flex_row_between">
<div class="jobname">
{{ jobDetail.jobName }}
<span class="hotTag" v-if="jobDetail.hotJob == 1">
<i class="iconfont icon-dianzan1 mr0" style="font-size: 12px"></i>
主推
</span>
</div>
</div>
<div style="color: #a1a1a1; font-size: 14px; margin-left: 15px">{{ jobDetail.up_time }}</div>
</div>
<div class="jobinfo">
<span>{{ jobDetail.storeAddr }} </span>
<span>{{ jobDetail.district ? jobDetail.district + " | " : "" }} </span>
<span>{{ jobDetail.gender }}</span>
<span>{{ jobDetail.age }}</span>
</div>
<!-- <div class="jobtag">
<a-tag :color="labelColor[index % labelColor.length]" v-for="(item, index) in jobDetail.jobRequestLabelNames" :key="index">{{ item }}</a-tag>
<div class="jobtag" v-if="jobDetail && jobDetail.jobRequestLabelNames && jobDetail.jobRequestLabelNames.length > 0">
<a-tag :color="labelColor[index % labelColor.length]" style="margin-bottom: 8px" v-for="(item, index) in jobDetail.jobRequestLabelNames" :key="index">
{{ item }}
</a-tag>
</div>
<div style="height: 27px" v-if="!jobDetail.jobRequestLabelNames" class="jobtag">
<!-- <div style="height: 27px" v-if="!jobDetail.jobRequestLabelNames" class="jobtag">
<a-tag :color="labelColor[1]">暂无要求</a-tag>
</div>
<div class="jobtag1">
</div> -->
<!-- <div class="jobtag1">
<a-tag v-for="(item, index) in jobDetail.jobSpecialLabelNames" :key="index">{{ item }}</a-tag>
</div>
<div style="height: 27px" v-if="!jobDetail.jobSpecialLabelNames" class="jobtag">
<a-tag style="background-color: #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>
<span style="font-size: 16px">&nbsp;&nbsp;|&nbsp;&nbsp;</span>
<div class="jobpricemonth">
<span>{{ jobDetail.minMonthlyPay/100 }}</span
>-<span>{{ jobDetail.maxMonthlyPay/100 }}</span
>/
<div class="g_flex_row_between g_mt_12">
<div style="display: flex; align-items: center; height: 26px; margin-top: 8px">
<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 / 100 }}</span
>-<span>{{ jobDetail.maxMonthlyPay / 100 }}</span
>/
</div>
</div>
<div class="sub-bottombox fss">
<button type="primary" class="jobDespBtn g_fs_14" style="padding: 0 5px; width: 100px">
<a :href="jobDetail.customServiceUrl || 'javascript:;'" target="_blank" v-if="jobDetail.customServiceUrl">
<a-icon class="g_fs_14" type="message" />
联系客服
</a>
<a href="javascript:;" v-else @click="noCustom">
<a-icon class="g_fs_14" type="message" />
联系客服
</a>
</button>
<!-- <a-dropdown :trigger="['click']" overlayClassName="special-dropdown" v-else>
<button type="primary" class="jobDespBtn"
style="padding: 0 15px;width: 116px;"
>
<a href="javascript:;" target="_blank"
style="font-size: 14px;"
>
<i class="iconfont icon-kefu_lan mr6"></i>
联系客服
</a>
</button>
<a-menu slot="overlay" style="padding: 0 10px">
<a-menu-item v-for="(item, index) in customServiceUsers" :key="index"> <i class="iconfont icon-dianhua1 mr4 f14" style="color: #1890ff"></i>{{ item.aliasName }} {{ item.tel }} </a-menu-item>
</a-menu>
</a-dropdown> -->
<a-button class="" @click="torecord()" v-if="jobDetail.recruitment == '1'" type="primary" style="font-size: 14px;width: 100px;"></a-button>
<button class="norecruitment bottombox1" v-else></button>
</div>
</div>
</div>
@ -167,45 +151,26 @@
</a-modal>
</div>
<div class="subsetright">
<div class="topbox">
<div class="topbox" v-if="false">
<div>服务费</div>
<div>
<span>{{ jobDetail.servetype }}</span>
</div>
</div>
<div class="sub-bottombox fss">
<button type="primary" class="jobDespBtn" v-if="jobClassify == 1">
<a :href="jobDetail.customServiceUrl || 'javascript:;'" target="_blank" v-if="jobDetail.customServiceUrl"> <i class="iconfont icon-kefu_lan mr6"></i>联系客服</a>
<a href="javascript:;" v-else @click="noCustom"> <i class="iconfont icon-kefu_lan mr6"></i>联系客服</a>
</button>
<a-dropdown :trigger="['click']" overlayClassName="special-dropdown" v-else>
<button type="primary" class="jobDespBtn">
<a href="javascript:;" target="_blank"> <i class="iconfont icon-kefu_lan mr6"></i>联系客服</a>
</button>
<a-menu slot="overlay" style="padding: 0 10px">
<a-menu-item v-for="(item, index) in customServiceUsers" :key="index"> <i class="iconfont icon-dianhua1 mr4 f14" style="color: #1890ff"></i>{{ item.aliasName }} {{ item.tel }} </a-menu-item>
</a-menu>
</a-dropdown>
<button class="dropdown bottombox1" @click="torecord()" v-if="jobDetail.recruitment == '1'"></button>
<button class="norecruitment bottombox1" v-else></button>
</div>
</div>
</div>
<div class="jobinformationbox">
<div class="jobinformationbox" style="padding-left: 20px; padding-top: 4px">
<h1>
<div class="infotitle">
<span @click="tabchange = 1" :class="tabchange === 1 ? 'active' : ''">基本信息</span>
<span @click="tabchange = 0" :class="tabchange === 0 ? 'active' : ''">财务结</span>
<span @click="tabchange = 0" :class="tabchange === 0 ? 'active' : ''" v-if="false"></span>
<span @click="tabchange = 2" :class="tabchange === 2 ? 'active' : ''">职位描述</span>
</div>
</h1>
<div class="pay" id="tip" v-show="tabchange === 1">
<div class="mb12 mt20 titlestyle">温馨提示</div>
<div class="showInfo" style="width: unset">{{ jobDetail.notes || "-" }}</div>
<div class="showInfo" style="width: unset; color: #ff4400 !important">{{ jobDetail.notes || "-" }}</div>
</div>
<div v-if="tabchange === 1" style="display: flex">
<!-- 薪资 -->
@ -250,7 +215,6 @@
</a-descriptions-item>
</template> -->
<!-- <a-descriptions-item>
<span slot="label" class>福利待遇</span>
<span>{{ jobDetail.boon || "-" }}</span>
@ -277,7 +241,7 @@
{{ jobDetail.minAgeWoman }}<span>{{ "- " + jobDetail.maxAgeWoman }}</span
>
</span>
{{jobDetail.genderRemark || ''}}
{{ jobDetail.genderRemark || "" }}
</span>
</a-descriptions-item>
<!-- <a-descriptions-item>
@ -365,7 +329,7 @@
<span slot="label" class>面试地点</span>
<span>{{ jobDetail.interviewAddr || "-" }}</span>
</a-descriptions-item>
<a-descriptions-item class="test1">
<a-descriptions-item class="test1">
<span slot="label" class>面试说明</span>
<span>{{ jobDetail.interviewDesp || "-" }}</span>
</a-descriptions-item>
@ -422,44 +386,43 @@
<div class="mb12 mt20 titlestyle">职位通告</div>
<div class="showInfo" style="width: unset; color: #000 !important">
<div class="copy" @click="copyText($event)"></div>
<div class="copyInfo" style="border: none; padding: 0 0; width: unset; white-space: pre-line">{{ jobDetail.jobInfo.split('————————')[0] || "-" }}</div>
<div class="copyInfo" style="border: none; padding: 0 0; width: unset; white-space: pre-line">{{ jobDetail.jobInfo.split("————————")[0] || "-" }}</div>
</div>
</div>
</div>
</div>
</div>
<div class="maincontentright">
<!-- <div class="hotphone">
<h1 class="bottombox" style>
<i>项目方</i>
</h1>
<template v-if="agency.supplierName == '江西人海'">
<img style="width: 60px; height: 60px; border-radius: 50%; display: block; margin: 24px auto 0" src="https://matripe-cms.oss-cn-beijing.aliyuncs.com/1shoudan/renhai.jpg" alt />
</template>
<template v-else>
<img style="width: 60px; height: 60px; border-radius: 50%; display: block; margin: 24px auto 0" :src="agency.logo || 'https://matripe-cms.oss-cn-beijing.aliyuncs.com/1shoudan/moren.svg'" alt />
</template>
<div style="color: #333">
<p class="f14" style="margin-top: 10px; margin-bottom: 0">
{{ agency.supplierName || "-" }}
</p>
<div class="card-top g_flex_row_between" style="padding-left: 16px; padding-right: 16px; font-size: 16px; background-color: #1890ff; height: 40px; border-top-left-radius: 6px; border-top-right-radius: 6px">
<div class="g_flex_column_center">
<i style="color: #fff; font-weight: 600">代理佣金</i>
</div>
</div> -->
<!-- <div class="companyinfo" v-if="from != 'vocational'">
<div class="companydetail">
<h1 class="bottombox">
<i>企业详情</i>
</h1>
<div class="g_flex_column_center" @click="isSee = !isSee" style="cursor: pointer">
<i class="iconfont icon-zhengyan11" style="font-size: 22px; color: #fff; line-height: 0.1" v-if="isSee"></i>
<i class="iconfont icon-biyan11" style="font-size: 22px; color: #fff; line-height: 0.1; margin-top: -4px" v-if="!isSee"></i>
</div>
<div class="companylocation" style="text-align: center; padding: 0 20px 20px" v-if="positionInfo.lng || positionInfo.storeLng">
<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>
<div class="imgbox">
<GDMap :positionInfo="positionInfo"></GDMap>
</div>
<div class="card-bottom" style="background-color: #fff; border-bottom-right-radius: 6px; border-bottom-left-radius: 6px; padding: 16px">
<div class="box" style="border-radius: 6px; border: 1px solid #ededed; min-height: 288px">
<div class="title g_flex_row_start" style="height: 40px; border-bottom: 1px solid #ededed; padding: 0 16px">
<div style="font-size: 14px; height: 100%; font-weight: 600" class="g_flex_column_center">佣金</div>
<div class="g_flex_column_center" style="font-size: 14px; height: 100%; color: #333">
<span v-if="isSee">
{{ jobDetail.servetype }}
</span>
<span v-if="!isSee"> *** </span>
</div>
</div>
<div class="content g_p_16">
<div class="con" style="white-space: pre-wrap; font-size: 14px; color: #333">
<span v-if="isSee">
{{ jobDetail.returnFeeDesp || "-" }}
</span>
<span v-if="!isSee"> *** </span>
</div>
</div>
</div>
</div> -->
<recommend />
</div>
</div>
</div>
<recordModal :show.sync="recordShow" :jobDetail="jobDetail"></recordModal>
@ -467,8 +430,8 @@
</template>
<script>
import { getJobDetailApi } from "../../api/job";
import { disposeJobListData, getSalaryClassifyValue } from "../../utils/commonUtil";
import recommend from "../../components/FirstJob/components/recommend.vue";
import { disposeJobListData, getSalaryClassifyValue, setJobInfoPosition } from "../../utils/commonUtil";
import mserve from "../../components/FirstJob/components/servre.vue";
import { nationlist } from "../../utils/datalist";
import { getUserManagerApi } from "../../api/userinfo";
import "swiper/dist/css/swiper.css";
@ -513,7 +476,7 @@ export default {
name: "",
//
components: {
recommend,
mserve,
GDMap,
recordModal,
// GDMap
@ -524,6 +487,7 @@ export default {
//
data() {
return {
isSee: true,
agency: {},
onSiteUsersInfo: "",
customServiceUsers: [],
@ -573,7 +537,6 @@ export default {
customServiceUrl: "", //
from: null, //
recordShow: false,
vocationalImgList: ["https://matripe-cms.oss-cn-beijing.aliyuncs.com/zhijiao/job1.png", "https://matripe-cms.oss-cn-beijing.aliyuncs.com/zhijiao/job2.png", "https://matripe-cms.oss-cn-beijing.aliyuncs.com/zhijiao/job3.png", "https://matripe-cms.oss-cn-beijing.aliyuncs.com/zhijiao/job4.png", "https://matripe-cms.oss-cn-beijing.aliyuncs.com/zhijiao/job5.png", "https://matripe-cms.oss-cn-beijing.aliyuncs.com/zhijiao/job6.png"],
zhijiaoList: [
//
{
@ -759,9 +722,9 @@ export default {
console.log("PAGE_TYPE", JSON.parse(sessionStorage.getItem("PAGE_TYPE")));
}
if(this.$route.query.jobClassify){
this.jobClassify = this.$route.query.jobClassify
}
if (this.$route.query.jobClassify) {
this.jobClassify = this.$route.query.jobClassify;
}
if (this.$route.query.id) {
this.id = this.$route.query.id;
}
@ -830,9 +793,9 @@ export default {
},
//
methods: {
noCustom() {
this.$message.error('此职位暂未接入客服');
},
noCustom() {
this.$message.error("此职位暂未接入客服");
},
async getJobDetail() {
console.log("this.id", this.id);
try {
@ -857,7 +820,7 @@ export default {
this.positionInfo.desc = this.positionInfo.detailPosition;
this.positionInfo.containerName = "mapContainer";
this.positionInfo.name = this.positionInfo.aliasName;
this.jobDetail.district = disposeJobListData(data.data.store).district;
this.jobDetail.district = setJobInfoPosition(disposeJobListData(data.data.store).district);
} else {
this.positionInfo = data.data.record;
this.store = data.data.record;
@ -866,7 +829,8 @@ export default {
this.positionInfo.name = this.positionInfo.storeName;
this.positionInfo.lat = this.positionInfo.storeLat;
this.positionInfo.lng = this.positionInfo.storeLng;
this.jobDetail.district = this.positionInfo.storeDistrict;
this.jobDetail.district = setJobInfoPosition(this.positionInfo.storeDistrict);
console.log("this.jobDetail", this.jobDetail);
}
if (data.data.onSiteUsers) {
this.onSiteUsersInfo = data.data.onSiteUsers.map((item) => `${item.aliasName} ${item.tel}`).join(", ");
@ -922,7 +886,7 @@ export default {
}
});
}
this.jobDetail.up_time = this.timeShowXXX2(this.jobDetail.updateTime);
this.storeImage = [...storeImage, ...storeVideo];
console.log("this.storeImage", this.storeImage);
} else {
@ -936,6 +900,27 @@ export default {
console.log(error);
}
},
timeShowXXX2(val) {
const now = Date.now();
const diff = now - val;
const seconds = Math.floor(diff / 1000);
const minutes = Math.floor(seconds / 60);
const hours = Math.floor(minutes / 60);
const days = Math.floor(hours / 24);
if (days < 2) {
if (hours > 0) {
return `${hours}小时前`;
} else if (minutes > 0) {
return `${minutes}分钟前`;
} else {
return `${seconds}秒前`;
}
} else {
return `${days}天前`;
}
},
/**
* 获取登录人对应的客户经理信息
*/
@ -1038,21 +1023,13 @@ export default {
showImage(idx, type) {
var that = this;
console.log(that.storeImage);
if (this.from == "vocational") {
that.vocationalImgList.forEach((item, index) => {
if (that.isImg(item)) {
that.imgList.push(item);
}
});
} else {
that.storeImage.forEach((item, index) => {
if (that.isImg(item)) {
that.imgList.push(item);
}
});
if (type == "logo") {
that.imgList.unshift(that.jobDetail.logo || that.jobDetail.store.logo);
that.storeImage.forEach((item, index) => {
if (that.isImg(item)) {
that.imgList.push(item);
}
});
if (type == "logo") {
that.imgList.unshift(that.jobDetail.logo || that.jobDetail.store.logo);
}
this.$viewerApi({
@ -1086,7 +1063,7 @@ export default {
toList() {
//
this.$router.push({
path: this.from == "vocational" ? "/list?type=vocational" : "/list?",
path: "/list",
// query: {
// pagenum: this.currentPageNum || "",
// },
@ -1096,6 +1073,16 @@ export default {
this.previewImage = file;
this.previewVisible = true;
},
viewDetail() {
let that = this;
console.log("ces", that.jobDetail.returnFeeDesp);
const h = this.$createElement;
this.$info({
title: that.jobDetail.returnFeeDesp || "-",
onOk() {},
});
},
},
};
</script>
@ -1113,6 +1100,7 @@ export default {
}
.detail-container {
background-color: #f0f0f0;
// overflow: hidden;
// border-top: 1px solid #eeefef;
@ -1201,13 +1189,17 @@ export default {
// }
// }
/deep/ .maincontent {
display: flex;
justify-content: space-between;
// display: flex;
// justify-content: space-between;
margin-top: 12px;
.maincontentleft {
width: 704px;
margin-right: 16px;
width: 640px;
text-align: left;
background-color: #ffffff;
border-radius: 6px;
// margin: 0 auto;
overflow: hidden;
margin-bottom: 20px;
.subset {
padding: 20px;
// margin-bottom: 16px;
@ -1215,7 +1207,7 @@ export default {
background-color: #fff;
// height: 302px;
border-radius: 6px;
border: 1px solid #ededed;
// border: 1px solid #ededed;
display: flex;
justify-content: space-between;
.subsetleft {
@ -1289,37 +1281,38 @@ export default {
.jobinfobox {
display: flex;
flex-direction: column;
width: 600px;
justify-content: space-between;
// .hotTag {
// display: flex;
// line-height: 44px;
// margin-left: 18px;
// div {
// font-size: 14px;
// }
// li {
// margin-right: 12px;
// color: #ff6a00;
// font-size: 14px;
// cursor: pointer;
// }
// > .active {
// text-decoration: underline;
// }
// }
.hotTag {
background-color: #1890ff;
// .hotTag {
// display: flex;
// line-height: 44px;
// margin-left: 18px;
// div {
// font-size: 14px;
// }
// li {
// margin-right: 12px;
// color: #ff6a00;
// font-size: 14px;
// cursor: pointer;
// }
// > .active {
// text-decoration: underline;
// }
// }
.hotTag {
background-color: #1890ff;
color: #fff;
font-size: 12px;
padding: 2px 4px;
border-radius: 2px;
position: relative;
top: -3px;
i {
margin-right: 4px;
color: #fff;
font-size: 12px;
padding:2px 4px;
border-radius: 2px;
position: relative;
top: -3px;
i {
margin-right: 4px;
color: #fff;
}
}
}
.jobname {
// margin: 12px 0;
font-size: 20px;
@ -1343,6 +1336,9 @@ export default {
.jobtag1 {
margin-top: 12px;
text-align: left;
max-width: 80%;
overflow: hidden;
height: 34px;
// span:first-child {
// color: #1890ff;
// background: rgba(254, 97, 0, 0.1);
@ -1371,6 +1367,7 @@ export default {
text-align: left;
color: #666;
line-height: 26px;
margin-top: 6px;
}
.jobpricehour {
// margin-top: 16px;
@ -1437,48 +1434,7 @@ export default {
}
}
}
}
.subsetright {
display: flex;
flex-direction: column;
justify-content: space-between;
align-items: flex-end;
.topbox {
width: 116px;
height: 54px;
text-align: center;
overflow: hidden;
border-radius: 4px;
line-height: 30px;
div {
// font-weight: normal;
font-size: 16px;
span:first-of-type {
font-size: 20px;
// font-weight: normal;
}
}
div:first-child {
height: 24px;
background: #ff4400;
line-height: 21px;
font-size: 14px;
color: #ffffff;
border: 1px solid #ff4400;
border-radius: 4px 4px 0px 0px;
}
div:last-child {
font-weight: normal;
background-color: #ff6a001a;
color: #ff4400;
font-size: 18px;
span:last-child {
font-size: 16px;
}
}
}
.sub-bottombox {
.sub-bottombox {
font-size: 16px;
.bottombox1 {
@ -1499,10 +1455,10 @@ export default {
}
}
.jobDespBtn {
width: 116px;
// width: 116px;
height: 32px;
line-height: 30px;
font-size: 16px;
font-size: 14px;
margin-right: 20px;
// border: 1px solid rgba(77, 87, 94, 0.3);
border-radius: 4px;
@ -1534,6 +1490,48 @@ export default {
}
}
}
.subsetright {
display: flex;
flex-direction: column;
justify-content: space-between;
align-items: flex-end;
.topbox {
width: 116px;
height: 54px;
text-align: center;
overflow: hidden;
border-radius: 4px;
line-height: 30px;
div {
// font-weight: normal;
font-size: 16px;
span:first-of-type {
font-size: 20px;
// font-weight: normal;
}
}
div:first-child {
height: 24px;
background: #ff4400;
line-height: 21px;
font-size: 14px;
color: #ffffff;
border: 1px solid #ff4400;
border-radius: 4px 4px 0px 0px;
}
div:last-child {
font-weight: normal;
background-color: #ff6a001a;
color: #ff4400;
font-size: 18px;
span:last-child {
font-size: 16px;
}
}
}
}
}
.proxy {
margin-bottom: 16px;
@ -1544,7 +1542,7 @@ export default {
}
.jobinformationbox,
.proxy {
width: 704px;
width: 620px;
// border: 1px solid #eeefef;
overflow: hidden;
border-radius: 4px;
@ -1576,10 +1574,12 @@ export default {
border-bottom: none;
cursor: pointer;
border-radius: 4px 4px 0 0;
font-size: 16px;
color: #333;
}
.active {
background-color: #fafafa;
// font-weight: bold;0
font-weight: bold;
color: #1890ff;
}
}
@ -1673,7 +1673,7 @@ export default {
}
.baseInfoContent {
width: 748px;
width: 600px;
> div {
> div:first-child {
font-size: 16px;
@ -1732,12 +1732,13 @@ export default {
.maincontentright {
// position: sticky;
// top: 0;
width: 240px;
width: 300px;
> div {
margin-bottom: 16px;
// margin-bottom: 16px;
// padding: 16px;
}
.jobDetailInfo {
width: 240px;
width: 300px;
overflow: hidden;
// height: 114px;
// padding: 0 20px 0px 20px;
@ -1765,7 +1766,7 @@ export default {
.hotphone {
overflow: hidden;
position: relative;
width: 240px;
width: 300px;
height: 200px;
// height: 114px;
// padding: 0 20px 20px 20px;
@ -1850,7 +1851,7 @@ export default {
}
.leftDesc {
.ant-descriptions-view {
width: 640px;
width: 600px;
border-radius: 6px;
// border: 0 !important;
}

File diff suppressed because it is too large Load Diff

@ -1,5 +1,6 @@
<template>
<div class="recordBill-container f40 w">
<div class="recordBill-container f40 w baoming-obj" style="width: 800px;min-width: 800px;">
<div class="g_h_56"></div>
<!-- 面包屑 -->
<a-breadcrumb class="w">
<a-breadcrumb-item href>
@ -9,7 +10,7 @@
</a-breadcrumb-item>
<a-breadcrumb-item href>
<a @click="toList">
<span>伯才职位</span>
<span>职位列表</span>
</a>
</a-breadcrumb-item>
<a-breadcrumb-item>
@ -131,7 +132,7 @@
/>-->
<div v-if="fileList.length == 0" style="display: flex; justify-content: center; align-items: center" class="nloding">
<a-icon type="plus" />
<div class="ant-upload-text">拖拽上传</div>
<div class="ant-upload-text" style="font-size: 14px;">拖拽上传</div>
</div>
</a-upload>
<div v-if="loading" style="display: flex; justify-content: center; align-items: center" class="uploading">
@ -1254,7 +1255,7 @@ export default {
text-align: left;
.ant-form {
width: 640px;
width: 560px;
}
}
@ -1265,7 +1266,7 @@ export default {
margin-top: 12px;
> div {
margin-left: 107px;
margin-left: 93px;
display: flex;
justify-content: start;
@ -1342,11 +1343,12 @@ export default {
.idCardUpload {
//
position: relative;
margin-top: 4px;
.icon-guanbi {
position: absolute;
top: -3px;
right: 52px;
top: -6px;
right: 36px;
height: 16px;
width: 16px;
text-align: center;
@ -1371,7 +1373,7 @@ export default {
/deep/ .ant-upload-picture-card-wrapper {
width: 100px !important;
height: 40px !important;
height: 32px !important;
// border: 1px solid #ddd !important;
// box-sizing: border-box;
@ -1379,14 +1381,15 @@ export default {
.ant-upload-list-item,
.ant-upload-list-picture-card-container {
width: 100px !important;
height: 40px !important;
height: 32px !important;
min-width: 100px !important;
min-height: 40px !important;
min-height: 32px !important;
font-size: 12px;
padding: 0;
border-color: #dddddd !important;
box-sizing: border-box;
border-radius: 0px;
// margin-top: 4px !important;
&:hover {
border-color: #1890ff !important;
@ -1415,9 +1418,9 @@ export default {
.ant-upload-list-item-uploading-text {
// display: none;
text-align: center !important;
line-height: 40px !important;
line-height: 32px !important;
width: 100px !important;
height: 40px !important;
height: 32px !important;
margin-top: 0;
// overflow: hidden;
}
@ -1441,7 +1444,7 @@ export default {
.uploading {
position: absolute;
width: 98px !important;
height: 38px !important;
height: 32px !important;
top: 1px;
left: -49px;
background-color: #f5f5f5;
@ -1478,7 +1481,7 @@ export default {
.ant-form-item-children {
.pzbox {
// display: flex !important;
color: #666;
color: #000;
span {
display: inline-block;
@ -1509,9 +1512,9 @@ export default {
.ant-input {
// width: 430px;
height: 38px;
height: 32px;
// color: rgba(77, 87, 94, 0.7);
color: #666;
color: #000;
// border: none;
border: 1px solid #dddddd;
box-shadow: none !important;
@ -1525,8 +1528,8 @@ export default {
.ant-select-selection__rendered,
.ant-select-selection--single,
.ant-select {
height: 38px;
line-height: 38px;
height: 32px;
line-height: 32px;
// border: none;
// border: 1px solid #dddddd;
box-shadow: none !important;
@ -1538,8 +1541,8 @@ export default {
}
.ant-select-selection-selected-value {
line-height: 37px;
color: #666;
line-height: 32px;
color: #000;
}
&:hover {
@ -1597,6 +1600,7 @@ export default {
border-radius: 4px;
overflow: hidden;
line-height: 2;
color: #000;
}
.openContral {
@ -1896,4 +1900,13 @@ export default {
.policyRadios {
flex-wrap: wrap;
}
.baoming-obj{
.ant-form-item .ant-input{
height: 32px !important;
}
.ant-upload-list-picture-card-container{
margin: 0 !important;
}
}
</style>

@ -262,7 +262,7 @@ export default {
margin-bottom: 30px;
}
i:nth-of-type(2) {
font-size: 96px;
font-size: 80px;
line-height: 1;
}
div {

@ -1,5 +1,5 @@
<template>
<div class="accountsetting-container">
<div class="accountsetting-container" >
<a-modal v-model="visible" title="设置图标" @cancel="modalcancel" on-ok="handleOk">
<div class="container">
<div class="cropper-content">

@ -1,5 +1,5 @@
<template>
<div class="accountsetting-container">
<div class="accountsetting-container" style="background-color: #f0f0f0;">
<a-modal v-model="visible" title="设置图标" @cancel="modalcancel" on-ok="handleOk">
<div class="container">
<div class="cropper-content">
@ -27,7 +27,7 @@
<template slot="footer">{{ &nbsp; }}</template>
</a-modal>
<div class="accountcontent w">
<div class="accountSetList">
<div class="accountSetList" >
<div class="userinfobox">
<div class="avatarbox">
<i @click="uploadavatar" style="cursor: pointer">
@ -73,7 +73,7 @@
</li>
</ul>
</div>
<ul>
<ul style="margin: 0 auto;width: 288px;">
<li @click="pushto('/accountsetting/boundtel')" :class="{ tagactive: activelist === 1 }">
<span>
<i class="iconfont icon-gerenzhongxin-bangdingshouji"></i>绑定手机
@ -473,18 +473,20 @@ export default {
// background-color: pink;
display: flex;
.accountSetList {
width: 346px;
width: 320px;
// height: 500px;
// background-color: skyblue;
margin-right: 16px;
background-color: #fff;
border-radius: 6px;
overflow: hidden;
margin-right: 20px;
.userinfobox {
width: 346px;
width: 320px;
height: 158px;
background: #ffffff;
border-radius: 6px;
padding: 24px 0;
text-align: center;
border: 1px solid #ededed;
// border: 1px solid #ededed;
.avatarbox {
margin: 0 auto;
width: 64px;
@ -549,8 +551,10 @@ export default {
// margin-top: 16px;
// padding: 0 16px;
background-color: #fff;
border-radius: 6px;
border-radius: 6px;
overflow: hidden;
width: calc(100% - 32px);
margin: 0 auto !important;
li {
position: relative;
display: flex;
@ -680,7 +684,7 @@ export default {
}
}
.rightcontent {
width: 838px;
width: 620px;
min-height: 600px;
padding: 0 16px;
background-color: #fff;

@ -1,7 +1,9 @@
<template>
<div class="mybill-container f40 w">
<div class="contenttitle">
<ul @click="resetpag">
<div class="mybill-container f40 w" style="background-color: #f0f0f0;width: 100vw;min-width: 100vw;">
<div style="height: 56px;"></div>
<div class=" " style="width: 960px;min-width: 960px;margin: 20px auto 20px;background-color: #fff;border-radius: 6px;padding: 20px;">
<div class="contenttitle">
<ul @click="resetpag">
<li @click="pagination.status = -1" :class="{ townsmanactive: pagination.status === -1 }">
全部
<span>{{ billNumber.num }}</span>
@ -87,7 +89,9 @@
<a-spin tip="加载中..." :spinning="isspinning"></a-spin>
</div>
<template v-if="billList.length === 0 && isspinning === false">
<a-empty class="nodata" description="暂无数据" />
<div style="height: 222px;" class="g_flex_c g_w_all">
<a-empty class="nodata" description="暂无数据" />
</div>
</template>
<div class="subsetbox" v-if="!isspinning">
<div class="infoSubset" v-for="(item, index) in billList" :key="item.id" :class="item.isDown ? '' : 'isDownstyle'">
@ -203,8 +207,8 @@
</template>
</div>
<div class="f12 c9 mt8">
{{ item.creator }}
<span class="ml8">{{ formatDateYMDHM(item.createTime) }}</span>
<!-- {{ item.creator }} -->
<span class="">{{ formatDateYMDHM(item.createTime) }}</span>
</div>
</div>
</div>
@ -279,10 +283,11 @@
</a-modal>
</template>
</div>
<div v-else>
<div v-else >
<a-empty class="nodata" description="暂无数据" style="padding: 40px" />
</div>
</a-modal>
</div>
</div>
</template>
@ -1105,12 +1110,12 @@ export default {
align-items: center;
font-size: 14px;
> div {
margin-left: 50px;
margin-left: 10px;
width: 70px;
}
}
.ant-input {
width: 400px;
width: 348px;
// width: 300px;
position: relative;
height: 32px;
@ -1174,7 +1179,7 @@ export default {
padding-left: 0;
justify-content: center;
// margin-left: 20px;
width: 260px;
width: 180px;
border-color: #ccc;
// border-radius: 4px;
// border: none;
@ -1182,14 +1187,14 @@ export default {
border-color: #1890ff;
}
.ant-calendar-range-picker-input {
width: 95px;
width: 78px;
font-size: 14px;
}
.ant-calendar-range-picker-separator {
margin-right: 10px;
margin-right: 6px;
}
.ant-calendar-picker-clear {
margin-right: 10px;
margin-right: 6px;
}
}
}
@ -1228,11 +1233,11 @@ export default {
// li {
// }
li:first-child {
width: 263px;
width: 188px;
padding-left: 60px;
}
li:nth-child(2) {
width: 246px;
width: 220px;
// line-height: 100px;
// background-color: red;
}
@ -1305,14 +1310,20 @@ export default {
border: 1px solid #ccc;
border-radius: 6px 6px 0 0;
li {
flex: 1;
width: 25%;
font-size: 12px;
text-align: center !important;
&:nth-child(1) {
width: 23%;
}
&:nth-child(2) {
margin-left: 5px;
}
&:nth-child(3) {
// margin-left: 100px;
position: relative;
transform: translateX(52px);
transform: translateX(0px);
width: 27%;
}
&:last-child {
text-align: right;

@ -1,4 +1,4 @@
@import "//at.alicdn.com/t/c/font_3135652_nd5ivglbv4.css";
@import "//at.alicdn.com/t/c/font_3135652_w51b50q5ata.css";
@font-face {
font-family: "DingTalk";
/* 这里的字体名称是自定义的 */

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

@ -1779,4 +1779,21 @@ export function getDateYMD () {
let prevMonth = date.getMonth() + 1;
let prevDay = date.getDate() < 10 ? "0" + date.getDate() : date.getDate();
return prevYear + "-" + (prevMonth >= 10 ? prevMonth : "0" + prevMonth) + "-" + prevDay;
}
/*
处理详情地址
*/
export function setJobInfoPosition (pos) {
let city = [];
let citys = [];
if (isNotEmptyCheck(pos)) {
city = pos.split(",");
}
city.forEach((i) => {
if (isNotEmptyCheck(i)) {
citys.push(i);
}
});
citys = citys.join(",").replace(/,/g, " | ");
return citys ;
}

@ -2,24 +2,108 @@
<div class="index-container" @click="isspecialboxshow = false">
<!-- title部分 -->
<div class="pagetitle" v-if="isLogin && routertitleindex != 0"
:class="pagrTitle == 'list' ? 'page-title-list-active' : ''"
:class="pagrTitle == 'list' || pagrTitle == 'detail' || pagrTitle == 'mybill' || pagrTitle == 'recordbill' ? 'page-title-list-active' : ''"
>
<div class="w fsa">
<div class="fss">
<router-link to="/main">
<!-- <svg class="svg_icon f64" aria-hidden="true">
<use xlink:href="#icon-daotian2" />
</svg> -->
<img src="../../static/img/logo.svg" style="width: 40px" alt="" />
<span style="font-size: 16px">伯才供应链平台</span>
<router-link to="/main" class="g_flex_row_start">
<div class="g_flex_column_center">
<img src="../../static/img/gyl.png" style="width: 40px;margin-right: 12px;" alt="" />
</div>
<div class="g_flex_column_center">
<!-- <div class="g_h_38 g_flex_column_between">
<div style="height: 16px;line-height: 16px;overflow: hidden;">
<span style="font-size: 16px">伯才供应链</span>
</div>
<div class="g_fs_12" style="zoom: 0.9;color: #999;">
人力资源供应链平台
</div>
</div> -->
<i class="iconfont icon-bocaigongyinglian-chunwenzilogo" style="font-size: 18.8px;color: #1890ff;"></i>
<div class="g_fs_12" style="zoom: 0.85;color: #999;">
人力资源供应链平台
</div>
</div>
</router-link>
<ul class="fsa titleTag" style="margin-left: 40px;">
<li style="margin-right: 24px;">
<router-link to="/" :class="routertitleindex == 0 ? 'titleactive' : ''" rel="opener" style="font-size: 16px;">首页</router-link>
</li>
<li style="margin-right: 24px;">
<router-link to="/list" @click.native="toList" :class="routertitleindex == 1 ? 'titleactive' : ''" rel="opener" style="font-size: 16px;">职位列表</router-link>
</li>
<li v-if="false">
<router-link to="/list?type=vocational" :class="routertitleindex == 8 ? 'titleactive' : ''" rel="opener">职教职培</router-link>
</li>
<li v-if="false">
<a-dropdown
overlayClassName="logindropdown"
placement="bottomRight"
:getPopupContainer="
(triggerNode) => {
return triggerNode.parentNode || document.body;
}
"
>
<span class="" style="cursor: pointer">
<div :class="routertitleindex == 5 ? 'titleactive' : ''">报名工单</div>
</span>
<div class="loginbox" style="" slot="overlay">
<router-link to="/mybill">
<div>
<span>报名工单</span>
<i class="iconfont icon-youjiantou"></i>
</div>
</router-link>
<router-link to="/vocationalBill">
<div>
<span>职教报名</span>
<i class="iconfont icon-youjiantou"></i>
</div>
</router-link>
</div>
</a-dropdown>
</li>
<li v-else>
<router-link to="/mybill" :class="routertitleindex == 5 ? 'titleactive' : ''">
<!-- <div> -->
<span style="font-size: 16px;">报名工单</span>
<!-- <i class="iconfont icon-youjiantou"></i> -->
<!-- </div> -->
</router-link>
</li>
<!--<li>
<router-link to="/mytownsman" :class="routertitleindex == 4 ? 'titleactive' : ''">我的老乡</router-link>
</li>-->
<!-- <li>
<router-link to="/dataStatistics" :class="routertitleindex == 6 ? 'titleactive' : ''">团队数据</router-link>
</li>-->
<!-- <li>
<router-link to="/serviceoutlets"
><a
href="javascript:;"
:class="routertitleindex === 2 ? 'titleactive' : ''"
>服务网点</a
>
</router-link>
</li>
<li>
<router-link to="/aboutus">
<a
href="javascript:;"
:class="routertitleindex === 3 ? 'titleactive' : ''"
>关于我们</a
>
</router-link>
</li>-->
</ul>
</div>
<span class="login fsa">
<div class="f14 pr16 mr16" style="line-height: 1; border-right: 1px solid #979797; cursor: pointer">
<!-- <i class="iconfont icon-qiehuan cf4 f12 mr4"></i>切换到公开版 -->
</div>
<div>
<ul class="fsa titleTag">
<ul class="fsa titleTag" v-if="false">
<li>
<router-link to="/" :class="routertitleindex == 0 ? 'titleactive' : ''" rel="opener">首页</router-link>
</li>
@ -168,7 +252,7 @@
<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" style="width: 224px">
<div class="loginbox" slot="overlay" style="width: 240px">
<router-link to="/accountsetting">
<div class="hover-blue br4" style="padding: 12px 12px">
<span> <i class="iconfont icon-gerenzhongxin"></i>个人中心 </span>
@ -210,7 +294,7 @@
<img v-if="item.logo" class="mr8" :src="item.logo" style="width: 16px; height: 16px" alt="" />
<div v-else class="logo mr8">{{ item.fullName && item.fullName.charAt(0) }}</div>
</div>
<div class="tl" style="width: 98px">{{ item.fullName || item.agencyName }}</div>
<div class="tl esl" style="width: 98px">{{ item.fullName || item.agencyName }}</div>
</div>
<div class="ml12 f12 cf4" v-if="item.checked"></div>
</div>
@ -238,9 +322,14 @@
</div>
<div class="fsa titleSlogan w" v-if="routertitleindex == 0">
<!-- <div> -->
<div>
<img src="../../static/img/logo.svg" style="width: 40px" alt="" />
<span style="font-size: 16px;color: #fff;">伯才供应链平台</span>
<div class="g_flex_row_start">
<div class="g_flex_column_center">
<img src="../../static/img/gyl.png" style="width: 40px;margin-right: 12px;" alt="" />
<!-- <span style="font-size: 16px;color: #fff;">伯才供应链平台</span> -->
</div>
<div class="g_flex_column_center">
<i class="iconfont icon-bocaigongyinglian-chunwenzilogo" style="font-size: 18.8px;color: #fff;"></i>
</div>
</div>
<!-- </div> -->
<div v-if="!isLogin" class="loginBtn">
@ -308,7 +397,13 @@
</div>
</div>-->
<!-- footer部分 -->
<footer v-if="isfootershow" :class="loginPage ? 'footer_abs' : ''">
<footer v-if="isfootershow" :class="loginPage ? 'footer_abs' : ''"
:style="{
'background-color': pagrTitle == 'detail' || pagrTitle == 'mybill' || pagrTitle == 'boundtel' || pagrTitle == 'recordbill' ? '#f0f0f0' : '#ffffff',
'padding-top': '20px',
'margin-top': 0
}"
>
<div class="w">
<!-- <ul>
<li @click="totop"><router-link to="/list">一手职位</router-link></li>
@ -448,6 +543,7 @@ export default {
$route: {
handler(to) {
this.init()
this.showfooter();
console.log();
// console.log("ischange");
// console.log(to);
@ -529,8 +625,20 @@ export default {
// pagrTitle
console.log('-----------------------',this.$route,)
let that = this;
if(that.$route.name == 'JobList'){
if(that.$route.name == 'JobList'){
that.pagrTitle = 'list'
}else if(that.$route.name == 'Detail'){
that.pagrTitle = 'detail'
}else if(that.$route.name == 'mybill'){
that.pagrTitle = 'mybill'
}else if(that.$route.name == 'boundtel'){
that.pagrTitle = 'boundtel'
}else if(that.$route.name == 'loginpsw'){
that.pagrTitle = 'boundtel'
}else if(that.$route.name == 'boundwx'){
that.pagrTitle = 'boundtel'
}else if(that.$route.name == 'recordbill'){
that.pagrTitle = 'recordbill'
}else{
that.pagrTitle = ''
}
@ -705,7 +813,7 @@ export default {
showfooter() {
const path = this.$route.fullPath;
if (path.indexOf("main") > -1) {
if (path.indexOf("main") > -1 || this.pagrTitle == 'list') {
this.isbannershow = false;
this.isfootershow = false;
} else {
@ -713,6 +821,9 @@ export default {
this.isfootershow = true;
}
if (this.pagrTitle == 'list') {
this.isfootershow = false;
}
if (path.indexOf("login") > -1 && path.indexOf("loginpsw") == -1) {
this.isbannershow = false;
}
@ -951,7 +1062,8 @@ export default {
left: 0;
top: 0;
width: 100vw;
z-index: 999999;
z-index: 1000;
box-shadow: 3px 3px 6px 0px rgba(77, 87, 94, 0.1);
}
.fellowtownsman {
@ -1277,7 +1389,7 @@ export default {
}
/deep/.setPosition {
padding: 4px;
left: -218px !important;
left: -240px !important;
border-radius: 4px;
background-color: #fff;
box-shadow: 0px 2px 4px 0px rgba(229, 229, 229, 0.5), 0px 4px 12px 0px rgba(0, 0, 0, 0.15);

Binary file not shown.

After

Width:  |  Height:  |  Size: 22 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 21 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 471 B

10169
yarn.lock

File diff suppressed because it is too large Load Diff
Loading…
Cancel
Save