|
|
|
|
@ -191,11 +191,13 @@
|
|
|
|
|
</ul>-->
|
|
|
|
|
<div class="searchBox" @blur="hidedownHotStore" @focus="showHotStore" tabindex="0" outline="0" hidefocus="true">
|
|
|
|
|
<a-input placeholder="搜索职位、企业名称、年龄要求" @keyup.enter="onSearch" @input="resetsearch" @blur="hidedownHotStore" @focus="showHotStore" tabindex="0" v-model="searchValue" class="searchinput" style allow-clear>
|
|
|
|
|
<div slot="prefix" @focus.stop tabindex="0" @click.stop="visible = true">
|
|
|
|
|
<span>{{ currentCity }}</span>
|
|
|
|
|
<div slot="prefix" class="fsa w100" @focus.stop tabindex="0" @click.stop="visible = true">
|
|
|
|
|
<span class="dpib esl" style="width:60px">{{ currentCity }}</span>
|
|
|
|
|
<div>
|
|
|
|
|
<i class="iconfont icon-sousuoxiala"></i>
|
|
|
|
|
<i class="iconfont icon-guanbishixin" v-show="currentCity != '全国'" @click.stop="resetCity"></i>
|
|
|
|
|
</div>
|
|
|
|
|
</div>
|
|
|
|
|
<button slot="suffix" @click="onSearch" style>搜索</button>
|
|
|
|
|
</a-input>
|
|
|
|
|
<!-- v-show="isdownHotStoreShow" -->
|
|
|
|
|
@ -254,6 +256,10 @@
|
|
|
|
|
{{ filterObj.gender }}
|
|
|
|
|
<i class="iconfont icon-guanbi2" v-show="filterObj.gender"></i>
|
|
|
|
|
</span>
|
|
|
|
|
<span @click="delFilter($event, 'age')" v-show="filterObj.age">
|
|
|
|
|
{{ filterObj.age }}
|
|
|
|
|
<i class="iconfont icon-guanbi2" v-show="filterObj.age"></i>
|
|
|
|
|
</span>
|
|
|
|
|
<span @click="delFilter($event, 'special', item)" v-for="(item, index) in filterObj.specialactive" :key="index">
|
|
|
|
|
{{ item.name }}
|
|
|
|
|
<i class="iconfont icon-guanbi2"></i>
|
|
|
|
|
@ -291,13 +297,13 @@
|
|
|
|
|
<dd>
|
|
|
|
|
<div class="ageinputbox">
|
|
|
|
|
<!-- <div> -->
|
|
|
|
|
<a-input class="ageinput" v-model="minMonthlyPay" type="text" allow-clear prefix="¥" @input="resetAgeSearch" @click.stop="
|
|
|
|
|
<a-input class="ageinput" v-model="minMonthlyPay" :maxLength="5" type="text" allow-clear prefix="¥" @input="resetPriceSearch" @click.stop="
|
|
|
|
|
() => {
|
|
|
|
|
return false;
|
|
|
|
|
}
|
|
|
|
|
"></a-input>
|
|
|
|
|
<span class="middle-line">-</span>
|
|
|
|
|
<a-input class="ageinput" v-model="maxMonthlyPay" type="text" allow-clear prefix="¥" @input="resetAgeSearch" @click.stop="
|
|
|
|
|
<a-input class="ageinput" v-model="maxMonthlyPay" :maxLength="5" type="text" allow-clear prefix="¥" @input="resetPriceSearch" @click.stop="
|
|
|
|
|
() => {
|
|
|
|
|
return false;
|
|
|
|
|
}
|
|
|
|
|
@ -323,6 +329,29 @@
|
|
|
|
|
</i>
|
|
|
|
|
</dd>
|
|
|
|
|
</dl>
|
|
|
|
|
<dl class="price">
|
|
|
|
|
<dt>年龄:</dt>
|
|
|
|
|
<dd>
|
|
|
|
|
<div class="ageinputbox">
|
|
|
|
|
<!-- <div> -->
|
|
|
|
|
<a-input class="ageinput age" v-model="minAge" :maxLength="3" type="text" allow-clear suffix="岁" @input="resetAgeSearch" @click.stop="
|
|
|
|
|
() => {
|
|
|
|
|
return false;
|
|
|
|
|
}
|
|
|
|
|
"></a-input>
|
|
|
|
|
<span class="middle-line">-</span>
|
|
|
|
|
<a-input class="ageinput age" v-model="maxAge" :maxLength="3" type="text" allow-clear suffix="岁" @input="resetAgeSearch" @click.stop="
|
|
|
|
|
() => {
|
|
|
|
|
return false;
|
|
|
|
|
}
|
|
|
|
|
"></a-input>
|
|
|
|
|
<div class="confirm">
|
|
|
|
|
<button @click="searchAge">确定</button>
|
|
|
|
|
</div>
|
|
|
|
|
<!-- </div> -->
|
|
|
|
|
</div>
|
|
|
|
|
</dd>
|
|
|
|
|
</dl>
|
|
|
|
|
<dl>
|
|
|
|
|
<dt>性别:</dt>
|
|
|
|
|
<dd @click="searchGender">
|
|
|
|
|
@ -401,7 +430,8 @@
|
|
|
|
|
<div class="subsetleft" @click="totop">
|
|
|
|
|
<div class="imgbox">
|
|
|
|
|
<img v-if="item.logo.length !== 0" :src="item.logo" />
|
|
|
|
|
<img v-else src="../../../static/img/nopicture.png" />
|
|
|
|
|
<div v-else class="default_avatar">{{item.brandName}}</div>
|
|
|
|
|
<!-- <img v-else src="../../../static/img/nopicture.png" /> -->
|
|
|
|
|
</div>
|
|
|
|
|
<div class="jobinfobox">
|
|
|
|
|
<!-- <router-link
|
|
|
|
|
@ -677,6 +707,8 @@ export default {
|
|
|
|
|
relationList: [],
|
|
|
|
|
lng: '',
|
|
|
|
|
lat: '',
|
|
|
|
|
minAge: '',
|
|
|
|
|
maxAge: '',
|
|
|
|
|
}
|
|
|
|
|
},
|
|
|
|
|
// 计算属性
|
|
|
|
|
@ -904,6 +936,24 @@ export default {
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
},
|
|
|
|
|
/**
|
|
|
|
|
* 搜索年龄
|
|
|
|
|
*/
|
|
|
|
|
searchAge() {
|
|
|
|
|
console.log(this.minAge)
|
|
|
|
|
console.log(this.maxAge)
|
|
|
|
|
if (this.minAge.length != 0 && this.maxAge.length != 0 && typeof +this.minAge == 'number' && typeof +this.maxAge == 'number' && !isNaN(+this.minAge) && !isNaN(+this.maxAge)) {
|
|
|
|
|
let list = [this.minAge, this.maxAge]
|
|
|
|
|
list.sort(function (a, b) {
|
|
|
|
|
return a - b
|
|
|
|
|
})
|
|
|
|
|
console.log(list)
|
|
|
|
|
this.formvalue.ageRangeStr = list[0] + '-' + list[1]
|
|
|
|
|
this.filterObj.age = this.formvalue.ageRangeStr
|
|
|
|
|
console.log(this.filterObj.age)
|
|
|
|
|
this.getJobList()
|
|
|
|
|
}
|
|
|
|
|
},
|
|
|
|
|
// 搜索性别
|
|
|
|
|
searchGender(e) {
|
|
|
|
|
console.log(e)
|
|
|
|
|
@ -1187,9 +1237,16 @@ export default {
|
|
|
|
|
if (value == 'price') {
|
|
|
|
|
this.filterObj.price = ''
|
|
|
|
|
this.formvalue.monthlyPayStr = ''
|
|
|
|
|
this.minMonthlyPay = ''
|
|
|
|
|
this.maxMonthlyPay = ''
|
|
|
|
|
} else if (value == 'gender') {
|
|
|
|
|
this.filterObj.gender = ''
|
|
|
|
|
this.formvalue.sex = ''
|
|
|
|
|
} else if (value == 'age') {
|
|
|
|
|
this.filterObj.age = ''
|
|
|
|
|
this.formvalue.ageRangeStr = ''
|
|
|
|
|
this.minAge = ''
|
|
|
|
|
this.maxAge = ''
|
|
|
|
|
} else {
|
|
|
|
|
this.filterObj.specialactive.splice(this.filterObj.specialactive.indexOf(items), 1)
|
|
|
|
|
if (this.classifyvalue.indexOf(items.id) != -1) {
|
|
|
|
|
@ -1205,7 +1262,7 @@ export default {
|
|
|
|
|
}
|
|
|
|
|
this.getJobList()
|
|
|
|
|
},
|
|
|
|
|
resetAgeSearch(e) {
|
|
|
|
|
resetPriceSearch(e) {
|
|
|
|
|
// console.log(e.target.value);
|
|
|
|
|
// console.log(+e.target.value);
|
|
|
|
|
if (this.minMonthlyPay.length == 0 && this.maxMonthlyPay.length == 0) {
|
|
|
|
|
@ -1216,6 +1273,17 @@ export default {
|
|
|
|
|
this.$message.warning('请输入正确的价格')
|
|
|
|
|
}
|
|
|
|
|
},
|
|
|
|
|
resetAgeSearch(e) {
|
|
|
|
|
console.log(this.minAge)
|
|
|
|
|
console.log(this.maxAge)
|
|
|
|
|
if (this.minAge.length == 0 && this.maxAge.length == 0) {
|
|
|
|
|
this.formvalue.ageRangeStr = ''
|
|
|
|
|
this.filterObj.age = ''
|
|
|
|
|
this.getJobList()
|
|
|
|
|
} else if (typeof +e.target.value != 'number' || isNaN(+e.target.value)) {
|
|
|
|
|
this.$message.warning('请输入正确的价格')
|
|
|
|
|
}
|
|
|
|
|
},
|
|
|
|
|
cityModalClose() {
|
|
|
|
|
// 城市选择弹出框关闭
|
|
|
|
|
this.cityValue = ''
|
|
|
|
|
@ -1454,6 +1522,7 @@ export default {
|
|
|
|
|
this.currentCity = '全国'
|
|
|
|
|
this.formvalue.cityName = ''
|
|
|
|
|
this.formvalue.levelType = ''
|
|
|
|
|
this.formvalue.provinceName = ''
|
|
|
|
|
this.getJobList()
|
|
|
|
|
},
|
|
|
|
|
// todetail(item) {
|
|
|
|
|
@ -1797,6 +1866,7 @@ export default {
|
|
|
|
|
width: 80px;
|
|
|
|
|
left: 2px;
|
|
|
|
|
top: 50%;
|
|
|
|
|
padding: 0 8px;
|
|
|
|
|
background-color: #fff;
|
|
|
|
|
transform: translateY(-50%);
|
|
|
|
|
cursor: pointer;
|
|
|
|
|
@ -1982,6 +2052,7 @@ export default {
|
|
|
|
|
> li:not(.ageinputbox) {
|
|
|
|
|
padding-top: 4px;
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
.ageinputbox {
|
|
|
|
|
position: relative;
|
|
|
|
|
|
|
|
|
|
@ -1989,7 +2060,7 @@ export default {
|
|
|
|
|
display: block;
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
.ageinput {
|
|
|
|
|
.ageinput.age {
|
|
|
|
|
position: relative;
|
|
|
|
|
z-index: 3;
|
|
|
|
|
padding: 0;
|
|
|
|
|
@ -2405,7 +2476,7 @@ export default {
|
|
|
|
|
display: block;
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
.ageinput {
|
|
|
|
|
.ageinput:not(.age) {
|
|
|
|
|
position: relative;
|
|
|
|
|
z-index: 3;
|
|
|
|
|
padding: 0;
|
|
|
|
|
@ -2446,6 +2517,47 @@ export default {
|
|
|
|
|
right: 3px;
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
.ageinput {
|
|
|
|
|
position: relative;
|
|
|
|
|
z-index: 3;
|
|
|
|
|
padding: 0;
|
|
|
|
|
// margin: 0 5px;
|
|
|
|
|
height: 26px;
|
|
|
|
|
width: 80px;
|
|
|
|
|
border-color: #ddd;
|
|
|
|
|
.ant-input-prefix {
|
|
|
|
|
left: 3px;
|
|
|
|
|
top: 51%;
|
|
|
|
|
}
|
|
|
|
|
&:hover {
|
|
|
|
|
input {
|
|
|
|
|
border-color: #ff4400;
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
input {
|
|
|
|
|
border-radius: 0px;
|
|
|
|
|
text-indent: 10px;
|
|
|
|
|
height: 26px;
|
|
|
|
|
padding: 0;
|
|
|
|
|
padding-right: unset;
|
|
|
|
|
border-color: #ddd;
|
|
|
|
|
&::placeholder {
|
|
|
|
|
// text-indent: 30px;
|
|
|
|
|
font-size: 14px !important;
|
|
|
|
|
}
|
|
|
|
|
&:hover {
|
|
|
|
|
border-color: #ff4400;
|
|
|
|
|
box-shadow: none;
|
|
|
|
|
}
|
|
|
|
|
&:focus {
|
|
|
|
|
border-color: #ff4400;
|
|
|
|
|
box-shadow: none;
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
.ant-input-suffix {
|
|
|
|
|
right: 3px;
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
.confirm {
|
|
|
|
|
position: absolute;
|
|
|
|
|
display: none;
|
|
|
|
|
@ -2550,6 +2662,17 @@ export default {
|
|
|
|
|
// width: 100%;
|
|
|
|
|
height: 100%;
|
|
|
|
|
}
|
|
|
|
|
.default_avatar {
|
|
|
|
|
width: 156px;
|
|
|
|
|
height: 156px;
|
|
|
|
|
display: flex;
|
|
|
|
|
align-items: center;
|
|
|
|
|
text-align: center;
|
|
|
|
|
background-color: #d85043;
|
|
|
|
|
color: #fff;
|
|
|
|
|
font-size: 44px;
|
|
|
|
|
line-height: 1.3;
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
.jobinfobox {
|
|
|
|
|
.jobname {
|
|
|
|
|
|