|
|
<template>
|
|
|
<div class="index-container" @click="isspecialboxshow = false">
|
|
|
<!-- title部分 -->
|
|
|
<div class="pagetitle" v-if="isLogin && routertitleindex != 0">
|
|
|
<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>
|
|
|
</router-link>
|
|
|
</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">
|
|
|
<li>
|
|
|
<router-link to="/" :class="routertitleindex == 0 ? 'titleactive' : ''" rel="opener">首页</router-link>
|
|
|
</li>
|
|
|
<li>
|
|
|
<router-link to="/list" @click.native="toList" :class="routertitleindex == 1 ? 'titleactive' : ''" rel="opener">稻田职位</router-link>
|
|
|
</li>
|
|
|
<li>
|
|
|
<router-link to="/mybill" :class="routertitleindex == 5 ? 'titleactive' : ''" rel="opener">我的报名</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 v-if="isLogin" class="logined fsa">
|
|
|
<div class v-if="loginValue.agencyName == '郑州一才工作' && (loginValue.agencyRole == 2 || loginValue.agencyRole == 1 )">
|
|
|
<a-dropdown overlayClassName="logindropdown" placement="bottomRight">
|
|
|
<div class="mr20">
|
|
|
<svg class="svg_icon f16" aria-hidden="true">
|
|
|
<use xlink:href="#icon-xiaoxi" />
|
|
|
</svg>
|
|
|
</div>
|
|
|
<div class="loginbox" slot="overlay">
|
|
|
<router-link to="/systemMsg">
|
|
|
<div>
|
|
|
<span>
|
|
|
<i class="iconfont icon-xitongtongzhi"></i>系统通知
|
|
|
</span>
|
|
|
<i class="iconfont icon-youjiantou"></i>
|
|
|
</div>
|
|
|
</router-link>
|
|
|
<router-link to="/teamMsg">
|
|
|
<div>
|
|
|
<span>
|
|
|
<i class="iconfont icon-tuanduitongzhi"></i>团队通知
|
|
|
</span>
|
|
|
<i class="iconfont icon-youjiantou"></i>
|
|
|
</div>
|
|
|
</router-link>
|
|
|
</div>
|
|
|
</a-dropdown>
|
|
|
</div>
|
|
|
<a-dropdown overlayClassName="logindropdown" placement="bottomRight">
|
|
|
<!-- <img :src="loginValue.imgSrc" alt="" v-if="loginValue.imgSrc !== ''" style="border-radius: 50%" />
|
|
|
<span v-else><i class="iconfont icon-morentouxiang" style="color:#ff4400"></i></span>-->
|
|
|
<span class="fsa">
|
|
|
<span class="iconfont icon-morentouxiang mr4 f32" v-if="!userbaseInfo.imgSrc"></span>
|
|
|
<img :src="userbaseInfo.imgSrc" class="mr4" style="border-radius:50%;width:32px;height:32px;" alt v-else />
|
|
|
<div class="ml4 f16 c6">{{ userbaseInfo.userName || '-' }}</div>
|
|
|
</span>
|
|
|
<div class="loginbox" slot="overlay">
|
|
|
<!-- <div>
|
|
|
<img :src="loginValue.imgSrc" alt v-if="loginValue.imgSrc !== ''" style="border-radius: 50%" />
|
|
|
<span v-else class="iconfont icon-morentouxiang avatar f32"></span>
|
|
|
<span class="username">{{loginValue.userName || loginValue.nickName || loginValue.tel}}</span>
|
|
|
</div>-->
|
|
|
<router-link to="/accountsetting">
|
|
|
<div>
|
|
|
<span>
|
|
|
<i class="iconfont icon-gerenzhongxin"></i>个人中心
|
|
|
</span>
|
|
|
<i class="iconfont icon-youjiantou"></i>
|
|
|
</div>
|
|
|
</router-link>
|
|
|
<router-link to="/merchantBack" v-if="loginValue.agencyName == '郑州一才工作' && (loginValue.agencyRole == 2 || loginValue.agencyRole == 1 )">
|
|
|
<div>
|
|
|
<span>
|
|
|
<i class="iconfont icon-shangjiahoutai"></i>商家后台and1.0
|
|
|
</span>
|
|
|
<i class="iconfont icon-youjiantou"></i>
|
|
|
</div>
|
|
|
</router-link>
|
|
|
<router-link to="###" v-if="loginValue.agencyName == '郑州一才工作' && (loginValue.agencyRole == 2 || loginValue.agencyRole == 1 )">
|
|
|
<div @click="goAdmin">
|
|
|
<span>
|
|
|
<i class="iconfont icon-shangjiahoutai"></i>商家后台and4.0
|
|
|
</span>
|
|
|
<i class="iconfont icon-youjiantou"></i>
|
|
|
</div>
|
|
|
</router-link>
|
|
|
<!-- <router-link to="/accountsetting"
|
|
|
><div>
|
|
|
<span
|
|
|
><i class="iconfont icon-zhanghaoshezhi"></i
|
|
|
>账号设置</span
|
|
|
><i class="iconfont icon-youjiantou"></i>
|
|
|
</div>
|
|
|
</router-link>-->
|
|
|
<button @click="logout">退出登录</button>
|
|
|
</div>
|
|
|
</a-dropdown>
|
|
|
</span>
|
|
|
<span class="loginbtn" v-else>
|
|
|
<!-- <router-link to="/register">注册</router-link>/ -->
|
|
|
<router-link to="/login">
|
|
|
<button style="cursor: pointer">登录</button>
|
|
|
</router-link>
|
|
|
</span>
|
|
|
</span>
|
|
|
<!-- <span class="navigationright">
|
|
|
<ul>
|
|
|
<li>
|
|
|
<router-link
|
|
|
to="/mytownsman"
|
|
|
:class="routertitleindex === 4 ? 'titleactiveafter' : ''"
|
|
|
>我的老乡
|
|
|
</router-link>
|
|
|
</li>
|
|
|
<li>
|
|
|
<router-link
|
|
|
to="/mybill"
|
|
|
:class="routertitleindex === 5 ? 'titleactiveafter' : ''"
|
|
|
>我的报名
|
|
|
</router-link>
|
|
|
</li>
|
|
|
</ul>
|
|
|
</span>-->
|
|
|
</div>
|
|
|
</div>
|
|
|
<div class="fsa titleSlogan w" v-if="routertitleindex == 0 ">
|
|
|
<!-- <div> -->
|
|
|
<svg class="svg_icon" aria-hidden="true">
|
|
|
<use xlink:href="#icon-daotian-logo" />
|
|
|
</svg>
|
|
|
<!-- </div> -->
|
|
|
<div v-if="!isLogin">
|
|
|
<router-link to="/list" style="display: inline-block; width: 100%">注册/登录</router-link>
|
|
|
</div>
|
|
|
<div v-else>
|
|
|
<router-link to="/list" style="display: inline-block; width: 100%">进入稻田</router-link>
|
|
|
</div>
|
|
|
<!-- <span class="logined">
|
|
|
<a-dropdown overlayClassName="logindropdown" placement="bottomRight">
|
|
|
<span class="fsa f14 cf shadow">
|
|
|
<span class="iconfont icon-morentouxiang mr4 f32" v-if="!userbaseInfo.imgSrc"></span>
|
|
|
<img :src="userbaseInfo.imgSrc" class="mr4" style="border-radius:50%;width:32px;height:32px;" alt v-else />
|
|
|
<span class="ml4">{{ userbaseInfo.userName }}</span>
|
|
|
</span>
|
|
|
<div class="loginbox" slot="overlay">
|
|
|
<router-link to="/accountsetting">
|
|
|
<div>
|
|
|
<span>
|
|
|
<i class="iconfont icon-gerenzhongxin"></i>个人中心
|
|
|
</span>
|
|
|
<i class="iconfont icon-youjiantou"></i>
|
|
|
</div>
|
|
|
</router-link>
|
|
|
<router-link to="/merchantBack" v-if="loginValue.agencyName == '郑州一才工作' && (loginValue.agencyRole == 2 || loginValue.agencyRole == 1 )">
|
|
|
<div>
|
|
|
<span>
|
|
|
<i class="iconfont icon-shangjiahoutai"></i>商家后台
|
|
|
</span>
|
|
|
<i class="iconfont icon-youjiantou"></i>
|
|
|
</div>
|
|
|
</router-link>
|
|
|
<button @click="logout">退出登录</button>
|
|
|
</div>
|
|
|
</a-dropdown>
|
|
|
</span>-->
|
|
|
</div>
|
|
|
<!-- 搜索栏 -->
|
|
|
|
|
|
<router-view :isspecialboxshow.sync="isspecialboxshow" :formvalue="formvalue" :jobMainList="jobMainList" :isspinning="isspinning"></router-view>
|
|
|
<!-- 老乡广告 -->
|
|
|
<!-- <div class="fellowtownsman" v-if="laoxiangshow">
|
|
|
<div class="w">
|
|
|
<div class="title">
|
|
|
<h1><span></span>老乡们都想去</h1>
|
|
|
</div>
|
|
|
<div class="main">
|
|
|
<div
|
|
|
class="jobinfobox"
|
|
|
v-for="(item, index) in fellowList"
|
|
|
:key="index"
|
|
|
>
|
|
|
<router-link :to="'/detail/' + item.id">
|
|
|
<a href="javascript:;" @click="resetpage">
|
|
|
<div class="imgbox">
|
|
|
<img v-if="item.logo" :src="item.logo" alt="" />
|
|
|
<img v-else src="../../../assets/nopicture.png" alt="" />
|
|
|
<span>服务费<i>1.3</i>元/小时</span>
|
|
|
</div>
|
|
|
<div class="jobname">{{ item.aliasName }}</div>
|
|
|
</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">
|
|
|
<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>-->
|
|
|
<!-- banner广告栏 -->
|
|
|
<!-- <div class="banner" v-if="isbannershow">
|
|
|
<div class="w">
|
|
|
<i class="iconfont icon-yigezhuanmenfuwudailidepingtai"></i>
|
|
|
</div>
|
|
|
</div>-->
|
|
|
<!-- footer部分 -->
|
|
|
<footer v-if="isfootershow" :class="loginPage ? 'footer_abs':''">
|
|
|
<div class="w">
|
|
|
<!-- <ul>
|
|
|
<li @click="totop"><router-link to="/list">一手职位</router-link></li>
|
|
|
<li></li>
|
|
|
<li @click="totop">
|
|
|
<router-link to="/serviceoutlets">服务网点</router-link>
|
|
|
</li>
|
|
|
<li></li>
|
|
|
<li @click="totop">
|
|
|
<router-link to="/aboutus">关于我们</router-link>
|
|
|
</li>
|
|
|
</ul>-->
|
|
|
<div>
|
|
|
<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.|
|
|
|
</span>
|
|
|
<a target="_blank" href="https://beian.miit.gov.cn/#/Integrated/index">豫ICP备2023001993号</a>
|
|
|
</div>
|
|
|
</div>
|
|
|
</footer>
|
|
|
</div>
|
|
|
</template>
|
|
|
|
|
|
<script>
|
|
|
// import joblist from "../components/firstjob/joblist.vue";
|
|
|
import Cookies from 'js-cookie'
|
|
|
import {
|
|
|
JobListApi,
|
|
|
// getCityApi,
|
|
|
} from '../api/job'
|
|
|
|
|
|
import { logoutApi } from '../api/login'
|
|
|
import { disposeJobListData } from '../utils/commonUtil'
|
|
|
|
|
|
export default {
|
|
|
inject: ['reload'],
|
|
|
provide() {
|
|
|
return {
|
|
|
getJobList: this.getJobList,
|
|
|
logout: this.logout,
|
|
|
}
|
|
|
},
|
|
|
// 组件名称
|
|
|
name: '',
|
|
|
// 局部注册的组件
|
|
|
components: {
|
|
|
// joblist,
|
|
|
},
|
|
|
// 组件参数 接收来自父组件的数据
|
|
|
props: {},
|
|
|
// 组件状态值
|
|
|
data() {
|
|
|
return {
|
|
|
fellowList: [],
|
|
|
isspinning: false,
|
|
|
isspecialboxshow: false,
|
|
|
isfootershow: true,
|
|
|
laoxiangshow: false,
|
|
|
isbannershow: true,
|
|
|
isLogin: false,
|
|
|
loginValue: {},
|
|
|
jobMainList: [],
|
|
|
formvalue: {
|
|
|
// 筛选的上传参数
|
|
|
district: [], // 城镇数据
|
|
|
monthlyPayStr: [], // 每月工资
|
|
|
ageStr: '', // 年龄数据
|
|
|
jobSpecialLabelIds: [], // 特色标签索引
|
|
|
aliasName: '',
|
|
|
sex: [],
|
|
|
pageNum: 1,
|
|
|
pageSize: 8,
|
|
|
total: null, //分页配置
|
|
|
},
|
|
|
userbaseInfo: JSON.parse(localStorage.getItem('LOGIN_DATA')),
|
|
|
loginPage: false,
|
|
|
routertitleindex: 0,
|
|
|
}
|
|
|
},
|
|
|
// 计算属性
|
|
|
computed: {
|
|
|
// routertitleindex: {
|
|
|
// set() {},
|
|
|
// get() {
|
|
|
// const path = this.$route.fullPath
|
|
|
// if (path.indexOf('serviceoutlets') > -1) {
|
|
|
// return 2
|
|
|
// } else if (path.indexOf('list') > -1 || path.indexOf('detail') > -1) {
|
|
|
// return 1
|
|
|
// } else if (path.indexOf('aboutus') > -1) {
|
|
|
// return 3
|
|
|
// } else if (path.indexOf('main') > -1) {
|
|
|
// return 0
|
|
|
// } else if (path.indexOf('mytownsman') > -1) {
|
|
|
// return 4
|
|
|
// } else if (path.indexOf('mybill') > -1) {
|
|
|
// return 5
|
|
|
// } else if (path.indexOf('dataStatistics') > -1) {
|
|
|
// return 6
|
|
|
// } else {
|
|
|
// return 7
|
|
|
// }
|
|
|
// },
|
|
|
// },
|
|
|
// isLogin() {
|
|
|
// return localStorage.getItem("LOGIN_DATA") !== null ? true : false;
|
|
|
// },
|
|
|
// loginValue() {
|
|
|
// return localStorage.getItem("LOGIN_DATA") !== null
|
|
|
// ? JSON.parse(localStorage.getItem("LOGIN_DATA"))
|
|
|
// : { tel: "" };
|
|
|
// return JSON.parse(data)
|
|
|
// },
|
|
|
},
|
|
|
// 侦听器
|
|
|
watch: {
|
|
|
routertitleindex() {
|
|
|
// 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.showfooter()
|
|
|
},
|
|
|
$route: {
|
|
|
handler(to) {
|
|
|
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
|
|
|
} else {
|
|
|
this.routertitleindex = 7
|
|
|
}
|
|
|
if (to.fullPath == '/login') {
|
|
|
this.loginPage = true
|
|
|
this.isLogin = false
|
|
|
} else {
|
|
|
this.loginPage = false
|
|
|
}
|
|
|
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)
|
|
|
},
|
|
|
deep: true,
|
|
|
immediate: true,
|
|
|
},
|
|
|
// isLogin() {
|
|
|
// this.isLogin = JSON.parse(localStorage.getItem("LOGIN_DATA"));
|
|
|
// console.log(this.isLogin);
|
|
|
// },
|
|
|
},
|
|
|
// 生命周期钩子 注:没用到的钩子请自行删除
|
|
|
/**
|
|
|
* 组件实例创建完成,属性已绑定,但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.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)
|
|
|
// console.log(document.querySelector(".ant-pagination-options-quick-jumper"));
|
|
|
},
|
|
|
// 组件方法
|
|
|
methods: {
|
|
|
/**
|
|
|
* 处理后台返回的职位列表
|
|
|
*/
|
|
|
// windowScroll() {
|
|
|
// // console.log(e);
|
|
|
// let scrollTop = window.pageYOffset || document.documentElement.scrollTop || document.body.scrollTop;
|
|
|
// // console.log(scrollTop); // 获取到页面滚动的值,
|
|
|
// let navigation = document.getElementById("navigation");
|
|
|
// let content = document.getElementById("maincontent");
|
|
|
// // let filterbox = document.querySelector(".w");
|
|
|
// // console.log(filterbox);
|
|
|
// // console.log(content);
|
|
|
// // let left = ("100vw" - "1200px") / 2;
|
|
|
// // console.log(navigator.userAgent);
|
|
|
// if (this.$route.fullPath == "/list") {
|
|
|
// if (scrollTop >= 81) {
|
|
|
// navigation.style.position = "fixed";
|
|
|
// navigation.style.top = "0px";
|
|
|
// navigation.style.boxShadow = "2px 2px 4px 0px rgba(0,0,0,0.05)";
|
|
|
// content.style.marginTop = "64px";
|
|
|
// if (navigator.userAgent.indexOf("Mac OS X") == -1) {
|
|
|
// navigation.style.paddingLeft = "35px";
|
|
|
// }
|
|
|
// } else {
|
|
|
// navigation.style.position = "relative";
|
|
|
// navigation.style.right = "0";
|
|
|
// content.style.marginTop = "16px";
|
|
|
// navigation.style.boxShadow = "none";
|
|
|
// if (navigator.userAgent.indexOf("Mac OS X") == -1) {
|
|
|
// navigation.style.paddingLeft = "0px";
|
|
|
// }
|
|
|
// }
|
|
|
// }
|
|
|
// },
|
|
|
navigationBarLocation() {
|
|
|
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 (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'
|
|
|
} 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'
|
|
|
}
|
|
|
}
|
|
|
},
|
|
|
// 获取工作列表
|
|
|
async getJobList(newdata) {
|
|
|
this.isspinning = true
|
|
|
console.log(this.formvalue)
|
|
|
try {
|
|
|
newdata = {
|
|
|
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() : ''
|
|
|
} else {
|
|
|
newdata[k] = this.formvalue[k]
|
|
|
}
|
|
|
}
|
|
|
// console.log(newdata);
|
|
|
// debugger;
|
|
|
// console.log(this.isLogin);
|
|
|
if (this.isLogin) {
|
|
|
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)
|
|
|
} else {
|
|
|
this.$message.info('数据获取失败')
|
|
|
}
|
|
|
}
|
|
|
this.totop()
|
|
|
// = data.data.recordList;
|
|
|
// console.log(this.formvalue);
|
|
|
} catch (error) {
|
|
|
console.log(error)
|
|
|
}
|
|
|
this.isspinning = false
|
|
|
},
|
|
|
|
|
|
totop() {
|
|
|
// console.log(window);
|
|
|
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
|
|
|
} else {
|
|
|
this.laoxiangshow = true
|
|
|
}
|
|
|
},
|
|
|
async getRecommendJob() {
|
|
|
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)
|
|
|
// console.log(this.fellowList);
|
|
|
}
|
|
|
// this.$emit("update:relationList", this.relationList);
|
|
|
} catch (error) {
|
|
|
console.log(error)
|
|
|
}
|
|
|
this.isspinning = false
|
|
|
},
|
|
|
async logout() {
|
|
|
// logoutApi().then((result) => {
|
|
|
// console.log(result);
|
|
|
// });
|
|
|
try {
|
|
|
const data = await logoutApi()
|
|
|
console.log(data)
|
|
|
if (data.status === 200) {
|
|
|
localStorage.removeItem('LOGIN_DATA')
|
|
|
this.reload()
|
|
|
this.$router.push('/main')
|
|
|
} else {
|
|
|
console.log(1)
|
|
|
}
|
|
|
|
|
|
// this.fellowList = disposeJobListData(data.data.recordList);
|
|
|
// this.isspinning = false;
|
|
|
// console.log(this.fellowList);
|
|
|
// this.$emit("update:relationList", this.relationList);
|
|
|
} catch (error) {
|
|
|
console.log(error)
|
|
|
this.$message.warning(error.message)
|
|
|
}
|
|
|
// console.log(data);
|
|
|
// if (data.status === 200) {
|
|
|
// localStorage.removeItem("LOGIN_DATA");
|
|
|
// }
|
|
|
},
|
|
|
resetpage() {
|
|
|
console.log(1)
|
|
|
setTimeout(() => {
|
|
|
this.reload()
|
|
|
document.body.scrollTop = 0
|
|
|
document.documentElement.scrollTop = 0
|
|
|
}, 1000)
|
|
|
},
|
|
|
showfooter() {
|
|
|
const path = this.$route.fullPath
|
|
|
|
|
|
if (path.indexOf('main') > -1) {
|
|
|
this.isbannershow = false
|
|
|
this.isfootershow = false
|
|
|
} else {
|
|
|
this.isbannershow = true
|
|
|
|
|
|
this.isfootershow = true
|
|
|
}
|
|
|
if (path.indexOf('login') > -1 && path.indexOf('loginpsw') == -1) {
|
|
|
this.isbannershow = false
|
|
|
}
|
|
|
},
|
|
|
toList() {
|
|
|
console.log(this.$router)
|
|
|
// this.$router.go(0);
|
|
|
// window.location.reload();
|
|
|
this.reload()
|
|
|
},
|
|
|
|
|
|
goAdmin() {
|
|
|
let obj = JSON.parse(localStorage.getItem('LOGIN_DATA'))
|
|
|
if (window.location.hostname == 'localhost') {
|
|
|
// 测试环境,通过URL获取token
|
|
|
window.location.href = 'http://localhost:3000/merchantManagement/homePage?token=' + obj.token + '&username=' + obj.user.userName + '&avatar=' + obj.imgSrc
|
|
|
} else {
|
|
|
// 正式环境,通过缓存获取
|
|
|
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)
|
|
|
window.location.href = 'http://idaotian.com/dist2.0.0/#/merchantManagement/homePage'
|
|
|
}
|
|
|
},
|
|
|
},
|
|
|
}
|
|
|
</script>
|
|
|
|
|
|
<style scoped lang="less">
|
|
|
.index-container {
|
|
|
height: 100%;
|
|
|
display: flex;
|
|
|
flex-direction: column;
|
|
|
justify-content: space-between;
|
|
|
& > div:nth-child(2) {
|
|
|
flex: 1;
|
|
|
}
|
|
|
.titleSlogan {
|
|
|
position: absolute;
|
|
|
left: 50%;
|
|
|
top: -6px;
|
|
|
// padding-top: 32px;
|
|
|
transform: translateX(-50%);
|
|
|
z-index: 9;
|
|
|
svg {
|
|
|
font-size: 120px;
|
|
|
}
|
|
|
div {
|
|
|
// width: 68px;
|
|
|
height: 32px;
|
|
|
padding: 0 16px;
|
|
|
font-size: 14px;
|
|
|
line-height: 30px;
|
|
|
text-align: center;
|
|
|
border-radius: 999px;
|
|
|
cursor: pointer;
|
|
|
color: #fff;
|
|
|
border: 1px solid #fff;
|
|
|
text-shadow: 3px 3px 10px rgba(0, 0, 0, 0.4);
|
|
|
background-color: rgba(255, 255, 255, 0);
|
|
|
transition: all 0.3s;
|
|
|
&:hover {
|
|
|
// background-color: rgba(255, 255, 255, 0.3);
|
|
|
background-color: #ff4400;
|
|
|
border-color: transparent;
|
|
|
}
|
|
|
}
|
|
|
}
|
|
|
/deep/ .pagetitle {
|
|
|
background-color: #f0f0f0;
|
|
|
padding: 0;
|
|
|
height: 64px;
|
|
|
display: flex;
|
|
|
align-items: center;
|
|
|
// height: 32px;
|
|
|
// width: 100vw;
|
|
|
// font-size: 16px;
|
|
|
.titleactive {
|
|
|
// font-size: 18px;
|
|
|
font-weight: bold;
|
|
|
// font-weight: normal;
|
|
|
color: #ff4400;
|
|
|
}
|
|
|
.w {
|
|
|
overflow: hidden;
|
|
|
// display: flex;
|
|
|
// justify-content: space-between;
|
|
|
// line-height: 36px;
|
|
|
|
|
|
.titleTag {
|
|
|
font-size: 16px;
|
|
|
display: flex;
|
|
|
margin-left: 150px;
|
|
|
li {
|
|
|
font-weight: normal;
|
|
|
color: #666;
|
|
|
margin-right: 32px;
|
|
|
line-height: 64px;
|
|
|
// text-shadow: 2px 2px 4px 0px rgba(0, 0, 0, 0.05);
|
|
|
|
|
|
a {
|
|
|
transition: none;
|
|
|
&:hover {
|
|
|
color: #ff4400;
|
|
|
}
|
|
|
}
|
|
|
}
|
|
|
}
|
|
|
.navigationright {
|
|
|
float: right;
|
|
|
margin-right: 24px;
|
|
|
font-size: 16px;
|
|
|
ul {
|
|
|
display: flex;
|
|
|
text-align: center;
|
|
|
line-height: 52px;
|
|
|
|
|
|
li {
|
|
|
cursor: pointer;
|
|
|
a.titleactiveafter {
|
|
|
font-size: 16px;
|
|
|
font-weight: bold;
|
|
|
color: #ff4400;
|
|
|
}
|
|
|
a:hover {
|
|
|
color: #ff4400;
|
|
|
}
|
|
|
&:first-child {
|
|
|
margin-right: 24px;
|
|
|
}
|
|
|
}
|
|
|
}
|
|
|
}
|
|
|
|
|
|
.login {
|
|
|
float: right;
|
|
|
// width: 36px;
|
|
|
line-height: 24px;
|
|
|
.loginbtn {
|
|
|
width: 70px;
|
|
|
}
|
|
|
.loginbtn {
|
|
|
margin-top: 02px;
|
|
|
button {
|
|
|
width: 70px;
|
|
|
height: 24px;
|
|
|
font-size: 12px;
|
|
|
margin-top: 5px;
|
|
|
background-color: #fff;
|
|
|
border: 1px solid #ff4400;
|
|
|
line-height: 22px;
|
|
|
border-radius: 999px;
|
|
|
color: #ff4400;
|
|
|
text-shadow: 2px 2px 4px 0px rgba(0, 0, 0, 0.05);
|
|
|
&:hover {
|
|
|
border-color: rgba(255, 68, 0, 0.8);
|
|
|
color: rgba(255, 68, 0, 0.8);
|
|
|
}
|
|
|
}
|
|
|
}
|
|
|
.logined {
|
|
|
// border-radius: 999px;
|
|
|
overflow: hidden;
|
|
|
border: 1px solid #eee;
|
|
|
line-height: 38px;
|
|
|
/*margin-top: 4px;*/
|
|
|
font-size: 14px;
|
|
|
cursor: default;
|
|
|
&:hover {
|
|
|
color: #ff4400;
|
|
|
}
|
|
|
// width: 24px;
|
|
|
// height: 24px;
|
|
|
img {
|
|
|
width: 24px;
|
|
|
height: 24px;
|
|
|
}
|
|
|
// span {
|
|
|
// width: 36px;
|
|
|
// height: 36px;
|
|
|
// margin-top: 4px;
|
|
|
// // margin-left: 33px;
|
|
|
// border-radius: 999px;
|
|
|
// // background-color: #ff4400;
|
|
|
// margin-right: -3px;
|
|
|
// text-align: center;
|
|
|
// }
|
|
|
|
|
|
// i {
|
|
|
// font-size: 32px;
|
|
|
// line-height: 30px;
|
|
|
// color: #ff4400;
|
|
|
// cursor: pointer;
|
|
|
// &:hover {
|
|
|
// color: #ff4400;
|
|
|
// }
|
|
|
// }
|
|
|
}
|
|
|
}
|
|
|
}
|
|
|
}
|
|
|
|
|
|
.fellowtownsman {
|
|
|
// height: 641px;
|
|
|
background: #ffffff;
|
|
|
.w {
|
|
|
padding: 30px 0;
|
|
|
.title {
|
|
|
font-size: 24px;
|
|
|
text-align: left;
|
|
|
color: #4d575e;
|
|
|
line-height: 56px;
|
|
|
h1 {
|
|
|
span {
|
|
|
display: inline-block;
|
|
|
vertical-align: middle;
|
|
|
margin-top: -4px;
|
|
|
width: 4px;
|
|
|
height: 25px;
|
|
|
margin-right: 8px;
|
|
|
background: #ff4400;
|
|
|
}
|
|
|
}
|
|
|
}
|
|
|
.main {
|
|
|
display: flex;
|
|
|
justify-content: start;
|
|
|
margin-top: 30px;
|
|
|
.jobinfobox {
|
|
|
width: 288px;
|
|
|
// height: 385px;
|
|
|
margin-bottom: 16px;
|
|
|
margin-right: 20px;
|
|
|
background: #ffffff;
|
|
|
border: 1px solid rgba(77, 87, 94, 0.1);
|
|
|
border-radius: 4px;
|
|
|
padding: 20px;
|
|
|
.imgbox {
|
|
|
position: relative;
|
|
|
width: 248px;
|
|
|
height: 186px;
|
|
|
img {
|
|
|
width: 100%;
|
|
|
height: 100%;
|
|
|
}
|
|
|
span {
|
|
|
position: absolute;
|
|
|
padding: 0 10px;
|
|
|
// width: 149px;
|
|
|
height: 28px;
|
|
|
left: 0;
|
|
|
bottom: 0;
|
|
|
background: #ff4400;
|
|
|
border-radius: 16px 16px 16px 0px;
|
|
|
font-size: 16px;
|
|
|
text-align: center;
|
|
|
color: #ffffff;
|
|
|
line-height: 28px;
|
|
|
}
|
|
|
}
|
|
|
.jobname {
|
|
|
height: 52px;
|
|
|
// margin: 12px 0;
|
|
|
font-size: 20px;
|
|
|
font-weight: normal;
|
|
|
text-align: left;
|
|
|
color: #4d575e;
|
|
|
line-height: 52px;
|
|
|
border-bottom: 1px solid #f2f0ec;
|
|
|
}
|
|
|
.jobinfo {
|
|
|
margin-top: 11px;
|
|
|
opacity: 0.5;
|
|
|
font-size: 18px;
|
|
|
text-align: left;
|
|
|
color: #4d575e;
|
|
|
line-height: 22px;
|
|
|
}
|
|
|
.jobtag {
|
|
|
margin-top: 12px;
|
|
|
text-align: left;
|
|
|
span:first-child {
|
|
|
color: #ff4400;
|
|
|
background: rgba(254, 97, 0, 0.1);
|
|
|
}
|
|
|
span {
|
|
|
margin-right: 8px;
|
|
|
font-size: 16px;
|
|
|
padding: 3px 8px;
|
|
|
background: rgba(51, 51, 51, 0.06);
|
|
|
border-radius: 4px;
|
|
|
}
|
|
|
}
|
|
|
.jobprice {
|
|
|
margin-top: 12px;
|
|
|
font-size: 18px;
|
|
|
font-weight: normal;
|
|
|
text-align: left;
|
|
|
color: #ff4400;
|
|
|
line-height: 25px;
|
|
|
span {
|
|
|
font-size: 22px;
|
|
|
}
|
|
|
}
|
|
|
}
|
|
|
}
|
|
|
}
|
|
|
}
|
|
|
.banner {
|
|
|
height: 72px;
|
|
|
margin-top: 20px;
|
|
|
background-color: #ff4400;
|
|
|
margin-bottom: -20px;
|
|
|
.w {
|
|
|
display: flex;
|
|
|
height: 100%;
|
|
|
justify-content: center;
|
|
|
align-items: center;
|
|
|
i {
|
|
|
font-size: 32px;
|
|
|
color: #fff;
|
|
|
}
|
|
|
img:last-child {
|
|
|
width: 173px;
|
|
|
height: 42px;
|
|
|
margin-right: 110px;
|
|
|
}
|
|
|
}
|
|
|
// background-color: black;
|
|
|
}
|
|
|
.footer_abs {
|
|
|
position: absolute;
|
|
|
left: 50%;
|
|
|
bottom: 0;
|
|
|
transform: translateX(-50%);
|
|
|
}
|
|
|
footer {
|
|
|
padding: 40px 30px;
|
|
|
margin-top: 20px;
|
|
|
.w {
|
|
|
ul {
|
|
|
display: flex;
|
|
|
justify-content: center;
|
|
|
li {
|
|
|
font-size: 16px;
|
|
|
text-align: center;
|
|
|
color: #4d575e;
|
|
|
line-height: 25px;
|
|
|
}
|
|
|
li:nth-of-type(2n) {
|
|
|
width: 1px;
|
|
|
height: 20px;
|
|
|
margin: 5px 54px;
|
|
|
background-color: #4d575e;
|
|
|
}
|
|
|
}
|
|
|
div {
|
|
|
text-align: center;
|
|
|
// margin-top: 16px;
|
|
|
color: #4d575e;
|
|
|
font-size: 12px;
|
|
|
i {
|
|
|
display: inline-block;
|
|
|
vertical-align: middle;
|
|
|
width: 1px;
|
|
|
height: 16px;
|
|
|
margin: 0 10px;
|
|
|
background-color: #4d575e;
|
|
|
}
|
|
|
}
|
|
|
}
|
|
|
}
|
|
|
}
|
|
|
.loginbox {
|
|
|
line-height: 36px;
|
|
|
> div:first-child {
|
|
|
display: flex;
|
|
|
align-items: center;
|
|
|
padding: 16px 0;
|
|
|
img {
|
|
|
width: 24px;
|
|
|
height: 24px;
|
|
|
margin-right: 8px;
|
|
|
}
|
|
|
}
|
|
|
.username {
|
|
|
max-width: 120px;
|
|
|
display: block;
|
|
|
overflow: hidden;
|
|
|
text-overflow: ellipsis;
|
|
|
white-space: nowrap;
|
|
|
}
|
|
|
.avatar {
|
|
|
display: block;
|
|
|
line-height: 24px;
|
|
|
font-size: 24px !important;
|
|
|
color: #ff4400;
|
|
|
margin-right: 8px;
|
|
|
}
|
|
|
|
|
|
a {
|
|
|
div {
|
|
|
padding: 10px 0;
|
|
|
align-items: center;
|
|
|
}
|
|
|
}
|
|
|
button {
|
|
|
line-height: 28px;
|
|
|
&:hover {
|
|
|
border-color: #ff4400;
|
|
|
}
|
|
|
}
|
|
|
}
|
|
|
.shadow:hover {
|
|
|
cursor: default;
|
|
|
// text-shadow: 4px 4px 4px #000;
|
|
|
transform: scale(1.05);
|
|
|
img {
|
|
|
// box-shadow: 3px 3px 3px 3px #00000033;
|
|
|
}
|
|
|
}
|
|
|
.f40 {
|
|
|
/deep/ .ant-table {
|
|
|
.ant-table-thead > tr > th .ant-table-column-sorter .ant-table-column-sorter-inner .ant-table-column-sorter-up.on,
|
|
|
.ant-table-thead > tr > th .ant-table-column-sorter .ant-table-column-sorter-inner .ant-table-column-sorter-down.on {
|
|
|
color: #ff4400;
|
|
|
}
|
|
|
.ant-table-thead > tr.ant-table-row-hover:not(.ant-table-expanded-row):not(.ant-table-row-selected) > td,
|
|
|
.ant-table-tbody > tr.ant-table-row-hover:not(.ant-table-expanded-row):not(.ant-table-row-selected) > td,
|
|
|
.ant-table-thead > tr:hover:not(.ant-table-expanded-row):not(.ant-table-row-selected) > td,
|
|
|
.ant-table-tbody > tr:hover:not(.ant-table-expanded-row):not(.ant-table-row-selected) > td {
|
|
|
background: #fff3ef;
|
|
|
}
|
|
|
.ant-radio-checked .ant-radio-inner {
|
|
|
border-color: #ff4400 !important;
|
|
|
box-shadow: none !important;
|
|
|
}
|
|
|
.ant-radio-checked .ant-radio-inner::after {
|
|
|
background-color: #ff4400 !important;
|
|
|
}
|
|
|
.ant-radio:hover .ant-radio-inner {
|
|
|
border-color: #ff4400 !important;
|
|
|
box-shadow: none;
|
|
|
}
|
|
|
.ant-radio-checked .ant-radio-inner::after {
|
|
|
background-color: #ff4400 !important;
|
|
|
}
|
|
|
.ant-radio-checked:hover .ant-radio-inner {
|
|
|
border-color: #ff4400 !important;
|
|
|
}
|
|
|
.ant-radio {
|
|
|
border-color: #ddd !important;
|
|
|
box-shadow: none !important;
|
|
|
}
|
|
|
.ant-btn-primary:hover {
|
|
|
border-color: #ff4400;
|
|
|
background-color: #ff5416;
|
|
|
color: #fff;
|
|
|
}
|
|
|
.ant-input:hover {
|
|
|
border-color: #ff4400;
|
|
|
}
|
|
|
}
|
|
|
}
|
|
|
</style>
|