You cannot select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

3120 lines
130 KiB
Vue

This file contains ambiguous Unicode characters!

This file contains ambiguous Unicode characters that may be confused with others in your current locale. If your use case is intentional and legitimate, you can safely ignore this warning. Use the Escape button to highlight these characters.

<template>
<view>
<view
:class="'weui-search-bar weui-search-bar_focusing ' + (fromProject ? 'fff' : 'fff')"
id="searchBar"
style="line-height: 1; padding-left: 16px; padding-right: 16px;padding-bottom: 12px;"
v-if="!isFilterPage"
>
<view class="weui-search-bar__form flex-1 fsa">
<view class="weui-search-bar__box flex-1 fsa" style="background-color: #f5f5f5; border-radius: 17px">
<i class="iconfont icon-sousuo11"></i>
<input
type="text"
class="weui-search-bar__input flex-1 c3"
placeholder-style="color:#999;"
:value="inputVal"
:placeholder="placeholderText"
@input="inputTyping"
@confirm="searchKey"
auto-focus
confirm-type="search"
/>
<view class="iconfont icon-qingchu biggerSize" v-if="inputVal" @click.stop="clearInput"></view>
<view class="search" @tap="searchKey">搜索</view>
</view>
<!-- <view class="typeChange ml16" hover-class="none" hover-stop-propagation="false">
<image class catchtap="choosenTop" data-id="{{toped == 2 ? 1 : 2}}" style="width:60px;height: 40px;" src="{{toped == 1 ? 'https://matripe-cms.oss-cn-beijing.aliyuncs.com/1shoudan/biaog.svg' : '../../assets/images/jiang.svg'}}" mode="aspectFit|aspectFill|widthFix" lazy-load="false" binderror bindload></image>
</view>-->
</view>
</view>
<!-- wx:if="{{isWannaShow}}" -->
<view class="wannaSearch pl16 mt20 c9 f14" hover-class="none" v-if="isWannaShow && historyList.length > 0" :hover-stop-propagation="false">
<view class>最近搜索</view>
<view class="laji biggerSize f14 iconfont icon-lajitong" @tap="clearNearSearch" hover-class="none" :hover-stop-propagation="false"></view>
<view class="wannaList c6 f16" style>
<view class="subset" hover-class="hcb" @tap="setKey" :data-key="item" v-for="(item, index) in historyList" :key="index">
{{ item }}
<!-- <view class="clearIcon iconfont icon-qingchu" hover-class="none" hover-stop-propagation="false">
</view>-->
</view>
</view>
</view>
<view class="wannaSearch pl16 mt20 c9 f14" v-if="isWannaShow" hover-class="none" :hover-stop-propagation="false">
<view>猜你想搜</view>
<view class="wannaList c6 f16" hover-class="none" :hover-stop-propagation="false">
<view class="subset" hover-class="thover" :data-key="item" @tap="setKey" v-for="(item, index) in wannaList" :key="index">{{ item }}</view>
</view>
</view>
<view style class="container" @touchstart="touchStart" v-if="!isWannaShow">
<view class="navigator">
<!-- <view class="quickapply">
<button class="text" size="mini" hover-class="none" catchgetphonenumber="getPhoneNumber" open-type="getPhoneNumber" catchtap="emptyMethod" hover-stop-propagation="false" wx:if="{{!isLogin}}">
<view class hover-class="thover" hover-stop-propagation="false" bindtap="changeRecordBillType" data-type="photo">
<view class="info">
<view class="fw500 f18">拍照报名</view>
<view class="f12 c9">自动识别</view>
</view>
<view class="t-icon t-icon-paizhao"></view>
</view>
<view class hover-class="thover" hover-stop-propagation="false" bindtap="changeRecordBillType" data-type="record">
<view class="info">
<view class="fw500">报名录单</view>
<view class="f12 c9">快速报名</view>
</view>
<view class="t-icon t-icon-ludan"></view>
</view>
</button>
<button wx:else hover-class="none" style="width: calc(100vw - 20px);">
<view class hover-class="thover" hover-stop-propagation="false" catchtap="chooseIdCard">
<view class="info">
<view class="fw500">拍照报名</view>
<view class="f12 c9">自动识别</view>
</view>
<view class="t-icon t-icon-paizhao" />
</view>
<view class hover-class="thover" hover-stop-propagation="false" catchtap="navigatorToRecord">
<view class="info">
<view class="fw500">报名录单</view>
<view class="f12 c9">快速报名</view>
</view>
<view class="t-icon t-icon-ludan" />
</view>
</button>
</view>-->
</view>
<view class="sticky" hover-class="none" :hover-stop-propagation="false" v-if="!isFilterPage">
<!-- <view class="fsa searchBar">
<view class="fsa" hover-class="none" hover-stop-propagation="false">
<view class="tarbar" bindtap="collectChange" data-id="0">
<view class="tarbarText {{choiceCollect == '0'?'collectActive':''}}">全部</view>
</view>
<view class="tarbar" style="margin-left: 24px;" bindtap="collectChange" data-id="1">
<view class="tarbarText {{choiceCollect == '1'?'collectActive':''}}">收藏</view>
</view>
</view>
<form class="weui-search-bar__form">
<view class="weui-search-bar__box" catchtap="goSearch">
<i class="iconfont icon-sousuo"></i>
<view class="weui-search-bar__input f14 oelps {{!chaShowed ? 'c9' : 'c3'}}" style="max-width: 70px;">{{inputVal}}</view>
<view class="iconfont icon-guanbi11 f10 c9" wx:if="{{chaShowed}}" style="color:#333" catchtap="clearInput"></view>
<view class="search f14" catchtap="searchKey" style="color: var(--color-ysd);">搜索</view>
</view>
</form>
<view class="typeChange" hover-class="none" hover-stop-propagation="false">
<image class catchtap="choosenTop" data-id="{{toped == 2 ? 1 : 2}}" style="width:60px;height: 32px;" src="{{toped == 1 ? '../../assets/images/biao.svg' : '../../assets/images/jian.svg'}}" mode="aspectFit|aspectFill|widthFix" lazy-load="false" binderror bindload></image>
</view>
</view>-->
<view class="xgxg p012" id="menu" v-if="!isWannaShow && !isFilterPage">
<view class="display-flex" style="justify-content: space-beteween; height: 36px">
<view class="csbf v-center p0" style="background-color: #fff" hover-class="thover" @tap="goCity">
<view class="f16 fw500 dib">{{ searchCityParamStorage.name == '' ? '全国' : searchCityParamStorage.shortName }}</view>
<i class="iconfont icon-zhankai f12" style="margin: 1px 0px 0 6px"></i>
</view>
<!-- <view class="csbf f14 c6 {{whichOneShow == 'gj' ?'active':''}} {{ activez!='' && activez!='all'?'activecolor':''}}" bindtap="chooseNl" data-type="gj">
{{firstMenu}}
<i class="iconfont icon-shouqi f12 {{ activez=='zuigao' || activez=='zuijin' ?'cf40':'c9'}} fst ml4" wx:if="{{whichOneShow == 'gj'}}"></i>
<i class="iconfont icon-zhankai f12 {{ activez=='zuigao' || activez=='zuijin' ?'cf40':'c9'}} fst ml4" wx:else data-type="gj"></i>
<scroll-view class="gjFixed" catchtouchmove="cc" wx:if="{{ whichOneShow == 'gj' }}">
<view class="bgf tl c3 por filter filterprice sort" style="height:240px">
<view class="f16 fw500 p016 {{activez=='all'?'cf00 b1 ':''}}" data-id="all" bindtap="choiceFilter" style="line-height: 42px" hover-class="thover">综合排序</view>
<view class="f16 fw500 p016 {{activez=='zuigao'?'cf00 b1 ':''}}" data-id="zuigao" bindtap="choiceFilter" style="line-height: 42px" hover-class="thover">工价优先</view>
<view class="f16 fw500 p016 bb1 {{activez=='zuijin'?'cf00 b1':''}}" data-id="zuijin" bindtap="choiceFilter" style="line-height: 42px" hover-class="thover">距离优先</view>
</view>
</scroll-view>
</view>-->
<view
:class="'csbf c6 f14 ' + (whichOneShow == 'sex' ? 'active' : '') + ' ' + (sexid != '' && sexid != '-1' ? 'activecolor' : '')"
@tap="chooseNl"
data-type="sex"
style
>
{{ secondMenu }}
<i :class="'iconfont icon-shouqi f12 ' + (sexid != '-1' ? 'cf40' : 'c9') + ' fst ml4'" v-if="whichOneShow == 'sex'"></i>
<i :class="'iconfont icon-zhankai f12 ' + (sexid != '-1' ? 'cf40' : 'c9') + ' fst ml4'" v-else data-type="sex"></i>
<scroll-view class="gjFixed" @touchmove.stop.prevent="cc" v-if="whichOneShow == 'sex'">
<view class="bgf tl c3 filter filterprice sort" style="height: 240px">
<view
:class="'f16 fw500 p016 ' + (sexid == '-1' ? 'cf00 b1' : '')"
data-id="-1"
@tap="choiceSex"
style="line-height: 42px"
hover-class="thover"
>
男女不限
</view>
<view :class="'f16 fw500 p016 ' + (sexid == '1' ? 'cf00 b1' : '')" data-id="1" @tap="choiceSex" style="line-height: 42px" hover-class="thover">
男生
</view>
<view :class="'f16 fw500 p016 ' + (sexid == '2' ? 'cf00 b1' : '')" data-id="2" @tap="choiceSex" style="line-height: 42px" hover-class="thover">
女生
</view>
</view>
</scroll-view>
</view>
<view
:class="'csbf f14 c6 fsa ' + (whichOneShow == 'brand' ? 'active' : '') + ' ' + (selectBrandList.length > 0 ? 'activecolor' : '')"
@tap="chooseNl"
data-type="brand"
>
分类
<i class="iconfont icon-shouqi f12 c9 fst ml4" v-if="whichOneShow == 'brand' && selectBrandList.length <= 0"></i>
<i class="iconfont icon-zhankai f12 c9 fst ml4" v-if="whichOneShow != 'brand' && selectBrandList.length <= 0" data-type="brand"></i>
<view v-if="selectBrandList.length > 0" class="specialnum ml4" data-type="brand">{{ selectBrandList.length }}</view>
<scroll-view class="gjFixed" v-if="whichOneShow == 'brand'">
<view class="bgf tl c3 filterprice brand" @click.stop="cc">
<view class="display-flex content">
<block v-for="(item, index) in brandList" :key="index">
<view @tap="selectBrand" :data-index="index" :class="item.checked ? 'brandactive' : ''">
<!-- <image class src="{{item.logo}}" mode lazy-load="false" binderror bindload wx:if="{{item.logo}}"></image>
<image class wx:else mode="aspectFit" src="https://matripe.oss-cn-beijing.aliyuncs.com/default.png"></image>-->
{{ item.name }}
</view>
</block>
</view>
<view class="btmFix display-flex" style="justify-content: center">
<view class>
<button class="resetBtn" style @click.stop="reset" data-type="2">重置</button>
</view>
<view class>
<button type="primary" class="loginOut ysd-basebg-color" hover-class="thover" style @click.stop="loginOut">确定</button>
</view>
</view>
</view>
</scroll-view>
</view>
<!-- <view class="csbf f14 c6 {{whichOneShow == 'brand' ?'active':''}} {{ selectBrandList.length > 0 ?'activecolor':''}}" bindtap="chooseNl" data-type="brand">
品牌
<i class="iconfont icon-shouqi f12 c9 fst ml4" wx:if="{{whichOneShow == 'brand' && selectBrandList.length <= 0}}"></i>
<i class="iconfont icon-zhankai f12 c9 fst ml4" wx:if="{{whichOneShow != 'brand' && selectBrandList.length <= 0}}" data-type="brand"></i>
<span wx:if="{{selectBrandList.length > 0}}" class="specialnum ml4" data-type="brand">{{selectBrandList.length}}</span>
<scroll-view class="gjFixed" wx:if="{{whichOneShow == 'brand'}}">
<view class="bgf tl c3 filterprice brand" catchtap="cc">
<view class="display-flex content">
<block wx:for="{{brandList}}" wx:for-item="item">
<view bindtap="selectBrand" data-index="{{index}}" class="{{item.checked ? 'brandactive' : ''}}">
<image class src="{{item.logo}}" mode lazy-load="false" binderror bindload wx:if="{{item.logo}}"></image>
<image class wx:else mode="aspectFit" src="https://matripe.oss-cn-beijing.aliyuncs.com/default.png"></image>
{{item.name}}
</view>
</block>
</view>
<view class="btmFix display-flex" style="justify-content: center;">
<view class>
<button class="resetBtn" style catchtap="reset" data-type="2">重置</button>
</view>
<view class>
<button type="primary" class="loginOut ysd-basebg-color" hover-class="thover" style catchtap="loginOut">确定</button>
</view>
</view>
</view>
</scroll-view>
</view>-->
<view
:class="'csbf f14 c6 fsa ' + (whichOneShow == 'special' ? 'active' : '') + ' ' + (selectJobList.length > 0 ? 'activecolor' : '')"
@tap="chooseNl"
data-type="special"
>
筛选
<i class="iconfont icon-shouqi f12 c9 fst ml4" v-if="whichOneShow == 'special' && selectJobList.length <= 0"></i>
<i class="iconfont icon-zhankai f12 c9 fst ml4" v-if="whichOneShow != 'special' && selectJobList.length <= 0" data-type="special"></i>
<view v-if="selectJobList.length > 0" class="specialnum ml4" data-type="special">{{ selectJobList.length }}</view>
<scroll-view class="gjFixed" v-if="whichOneShow == 'special'">
<view class="bgf tl c3 filterprice filterBox" @click.stop="cc">
<scroll-view :scroll-y="true" class="specialtag">
<view class="f18 c3 fw500 mt12" style="text-align: start">薪资福利</view>
<view class="mt10 tagBox">
<block v-for="(item, index) in tagArray1" :key="index">
<view @tap="selectJobSpecialLabel" data-index-tag="1" :data-index="index" :class="'bgAc ' + (item.checked ? 'active' : '')">
{{ item.name }}
</view>
</block>
</view>
<view class="f18 c3 fw500 mt16">食宿保障</view>
<view class="mt10 tagBox">
<block v-for="(item, index) in tagArray3" :key="index">
<view @tap="selectJobSpecialLabel" data-index-tag="3" :data-index="index" :class="'bgAc ' + (item.checked ? 'active' : '')">
{{ item.name }}
</view>
</block>
</view>
<view class="f18 c3 fw500 mt16">班制特色</view>
<view class="mt10 tagBox">
<block v-for="(item, index) in tagArray0" :key="index">
<view @tap="selectJobSpecialLabel" data-index-tag="0" :data-index="index" :class="'bgAc ' + (item.checked ? 'active' : '')">
{{ item.name }}
</view>
</block>
</view>
<view class="f18 c3 fw500 mt16">其它特色</view>
<view class="mt10 tagBox">
<block v-for="(item, index) in tagArray2" :key="index">
<view @tap="selectJobSpecialLabel" data-index-tag="2" :data-index="index" :class="'bgAc ' + (item.checked ? 'active' : '')">
{{ item.name }}
</view>
</block>
</view>
</scroll-view>
<view class="btmFix display-flex" style="justify-content: center">
<view class>
<button class="resetBtn" style @click.stop="reset" data-type="1">重置</button>
</view>
<view class>
<button type="primary" class="loginOut ysd-basebg-color" hover-class="thover" style @click.stop="loginOut">确定</button>
</view>
</view>
</view>
</scroll-view>
</view>
</view>
<scroll-view
class="filterTag display-flex"
:scroll-x="true"
:scroll-y="false"
scroll-top="0"
scroll-left="0"
scroll-into-view
:scroll-with-animation="false"
enable-flex
:enable-back-to-top="false"
v-if="selectBrandList.length > 0 || selectJobList.length > 0 || activez != 'all' || sexid != '-1'"
>
<view class="display-flex" hover-class="none" :hover-stop-propagation="false">
<view
:class="
'tc genderTag f14 por ' + (activez != 'all' && (selectJobList.length > 0 || selectBrandList.length > 0 || sexid != '-1') ? 'hascontent' : '')
"
style="min-width: 60px"
v-if="activez != 'all'"
hover-class="none"
:hover-stop-propagation="false"
>
<view class hover-class="none" :hover-stop-propagation="false">{{ firstMenu }}</view>
</view>
<view
:class="'tc genderTag f14 por ' + (sexid != '-1' && (selectJobList.length > 0 || selectBrandList.length > 0) ? 'hascontent' : '')"
style="min-width: 60px"
v-if="sexid != '-1'"
hover-class="none"
:hover-stop-propagation="false"
>
<view class hover-class="none" :hover-stop-propagation="false">{{ secondMenu }}</view>
</view>
<view :class="'brandTag ml8 ' + (selectBrandList.length > 0 && selectJobList.length > 0 ? 'hascontent' : '')" v-if="selectBrandList.length > 0">
<block v-for="(item, index) in selectBrandList" :key="index">
<view class>{{ item.name }}</view>
</block>
</view>
<view class="specialTag" v-if="selectJobList.length > 0">
<block v-for="(item, index) in selectJobList" :key="index">
<view class>{{ item.name }}</view>
</block>
</view>
</view>
<view class="clear" @click.stop="clearFilter" hover-class="none" :hover-stop-propagation="false">
<i class="iconfont icon-qingkong1 f14"></i>
清除
</view>
</scroll-view>
</view>
</view>
<!-- 标准列表 -->
<block v-if="toped == 1">
<view v-if="recordList != null && recordList.length > 0" class="standardList" style="padding-top: 0">
<scroll-view
:scroll-y="true"
:enable-back-to-top="true"
@scrolltolower="onScrollToLower"
@refresherrefresh="onScrollRefresh"
:refresher-enabled="!isScrollTop"
:refresher-triggered="isTrigger"
class="jobCenterActive"
:scroll-with-animation="true"
:scroll-into-view="siv"
:style="
'height:calc(100vh - ' +
(selectBrandList.length > 0 || selectJobList.length > 0 || activez != 'all' || sexid != '-1'
? navigatorBarHeight + 151
: navigatorBarHeight + (!isFilterPage ? 103 : 95)) +
'px);'
"
>
<view :x:if="recordList != null && recordList.length > 0" class style="padding-top: 0">
<view class="jcenter bgf br8">
<view class="listcontainer" style="border-top: 1px solid #f3f3f3">
<view
class="jobOne"
hover-start-time="50"
hover-stay-time="0"
:data-id="item.id"
@tap="goDetail"
:hover-class="item.recruitment == '1' ? 'ahover' : ''"
:style="
'background-color:' +
(item.recruitment == '1' ? '#fff' : '#f5f5f5') +
';border-bottom: ' +
(item.recruitment == '1' ? '' : '1px solid #ddd') +
';'
"
v-for="(item, index) in recordList"
:key="index"
>
<view class="p1020 jobIn" hover-class="none">
<image
class="markImg"
style="width: 80px; height: 80px; position: absolute; right: 100px"
src="http://matripe-cms.oss-cn-beijing.aliyuncs.com/1shoudan/tingzhao.svg"
v-if="item.status == 1 && item.recruitment == 2"
></image>
<image
class="markImg"
style="width: 72px; height: 72px; position: absolute; right: 100px"
src="http://matripe-cms.oss-cn-beijing.aliyuncs.com/1shoudan/weishangxian.svg"
v-if="item.status == 0"
></image>
<view class="display-flex">
<view class="prImg">
<image :src="item.logo" v-if="item.logo != null && item.logo != ''" mode="aspectFit" class="logoClass" alt></image>
<image class="logoClass" v-else mode="aspectFit" src="https://matripe.oss-cn-beijing.aliyuncs.com/default.png"></image>
<button
v-if="isLogin"
:class="'collect biggerSize v-center ' + (item.collected - 1 == 0 ? 'collectred' : '')"
@click.stop="collectPaste"
style="width: 52px"
:data-collected="item.collected"
:data-jobid="item.id"
hover-stop-propagation
>
<i class="iconfont icon-shoucang lh12" style="color: #888" v-if="item.collected == 0"></i>
<i class="iconfont icon-yishoucang lh12 color-f40" style v-else></i>
<text :class="'f10 ' + (item.collected - 1 == 0 ? 'color-f40' : 'c8')" style="line-height: 12px; margin-left: 2px">
{{ item.collected == 0 ? '收藏' : '已收藏' }}
</text>
</button>
<button
v-if="!isLogin"
style="width: 52px"
class="collect biggerSize"
open-type="getPhoneNumber"
@getphonenumber.stop.prevent="getPhoneNumber"
@click.stop="emptyMethod"
:data-collected="item.collected"
:data-jobid="item.id"
hover-stop-propagation
>
<i class="iconfont icon-shoucang" style="color: #888"></i>
<text class="f10 c8" style="line-height: 18px; margin-left: 2px">收藏</text>
</button>
</view>
<view class="flex-1 vsb">
<view class="display-flex">
<view class="storeName" v-if="item.jobName != null && item.jobName != ''">{{ item.jobName }}</view>
<view class="storeName" v-else>{{ item.aliasName }}</view>
<!-- <view class="hourPay">{{item.salaryClassifyValue}}</view> -->
<view class="hourPay" v-if="item.salaryClassify == 7">月薪</view>
<view class="hourPay" v-else>{{ item.salaryClassifyValue }}</view>
</view>
<view class="v-center mt12 mb12">
<view class="f14s c045 flex-1 display-flex">
<view class="overflowOmit" hover-class="none" :hover-stop-propagation="false" style="max-width: 220px">
{{ item.district == '' ? '' : item.district + ' | ' }}
<block v-if="item.distance != null && item.distance != '' && storeJobListSearchForm.sortTag == 2">
{{ item.distanceKm }}
</block>
<block v-else>{{ item.age }}</block>
</view>
<!-- <view class="fr f14s c633 fw400">{{item.monthlyPay}}</view> -->
<view class="fr f14s fw400" v-if="item.jobType != 2 || item.salaryClassify == 7" style="color: var(--color-f40)">
{{ item.monthlyPay }}
</view>
</view>
</view>
<view class="display-flex">
<scroll-view
:scroll-x="true"
@scroll.stop.prevent="scroll"
@click.stop="stoptap"
:class="'tttg ' + (item.isTagShow == true ? 'isTagShow' : '')"
>
<!-- <view class="t-icon t-icon-ziying1 " wx:if="{{item.signType == 1}}" style="background-repeat:no-repeat"></view> -->
<view class="tagsLi" v-for="(item1, index1) in item.jobSpecialLabelNameArray" :key="index1">{{ item1 }}</view>
<view class="tagsLi" v-if="item.jobSpecialLabelNameArray.length <= 0">暂无特色</view>
</scroll-view>
<block v-if="item.status == 1 && item.recruitment == 2">
<view class="miniBtn disabled" :hover-stop-propagation="false">立即报名</view>
</block>
<block v-else>
<view
class="miniBtn"
@click.stop="recordBill"
:data-job="item"
hover-class="thover"
:hover-stop-propagation="false"
>
立即报名
</view>
</block>
<!-- <view class="fsa bz f12 fee" wx:if="{{agencyStatus == 1 || corpUserFlag == true}}">
<view class="inner" hover-class="none" hover-stop-propagation="false">费</view>{{item.fuWuFei ? item.fuWuFei : '-' }}
</view>-->
<!-- <view class="fsa bz f12 fee">
<view class="inner" hover-class="none" hover-stop-propagation="false">费</view>
{{!isLogin ? '登录查看' : (agencyStatus == 1 ? (item.fuWuFei ? item.fuWuFei : '-') : '仅代理可见')}}
</view>-->
</view>
</view>
</view>
</view>
</view>
</view>
</view>
<block v-if="(recordList == null || recordList.length == 0) && storeJobListSearchForm.keys != null && storeJobListSearchForm.keys != ''">
<view class="tc p20 f12 c045">没有符合条件的职位</view>
</block>
<block v-else>
<block v-if="isLogin">
<view class="tc p20 f12 c045" v-if="!hasMoreData || recordList.length == 0">已经到底啦~</view>
<view class="tc p20 f12 c045" v-else>上滑加载更多</view>
</block>
</block>
</view>
</scroll-view>
</view>
<view v-if="recordList == null || (recordList.length == 0 && pageShow && !isWannaShow)" style="height: calc(100vh - 95px)" class="tc">
<view class="t-icon t-icon-zanwu" style="width: 80px; height: 80px; margin: 120px auto 20px"></view>
<view class="tc f14 c045">没有符合条件的职位</view>
</view>
</block>
<view class="bottomBox" v-if="isFilterPage" hover-class="none" :hover-stop-propagation="false">
<button class="normalBtn backIndex" @tap="backIndex"></button>
</view>
</view>
<bottom-drawer
:show="recordShow"
:info="currentInfo"
drawerType="recordShow"
:cancerShow="false"
:touchClose="true"
@hidedrawer="hidedrawershow"
class="bottomDrawer"
height="494px"
></bottom-drawer>
</view>
</template>
<script>
import bottomDrawer from '../../components/bottom-drawer/index';
const app = getApp();
const commonUtil = require('../../utils/commonUtil.js');
export default {
components: {
bottomDrawer
},
data() {
return {
currentInfo: {},
recordShow: false,
toped: '1',
chaShowed: false,
isTrigger: false,
// background: ["../../assets/images/banner1.jpg", "../../assets/images/banner2.jpg", "../../assets/images/banner3.jpg", "../../assets/images/banner4.jpg"],
pullNum: 0,
//下拉次数
tabs: [],
activeTab: 0,
systemInfo: {},
getMenuButtonBoundingClientRect: {},
// 手机基础信息
tabs2: [],
loadMore: '',
loadContent: ['马不停蹄加载更多数据中...', '-- 已经到底了,加不了咯 --'],
statusBarHeight: uni.getStorageSync('statusBarHeight'),
// 状态栏高度
navigationBarHeight: uni.getStorageSync('navigationBarHeight'),
// 导航栏高度
menuButtonHeight: uni.getStorageSync('menuButtonHeight'),
// 胶囊按钮高度
menuButton: uni.getStorageSync('menuButtonInfo'),
// 胶囊信息
navigatorHeight: 60,
activeTab2: 0,
contentIndex: 0,
latestClass: 0,
zoneClass: 0,
recordList: [],
jobSpecialLabelNames: [],
wannaList: ['电子厂', '大龄工', '日结', '保底', '返费', '短期工', '新能源', '富士康', '暑假工', '焊工', '食品', '学生'],
storeJobListSearchForm: {
pageNum: 1,
pageSize: 20,
classify: 1,
sex: -1,
workTypeStr: '',
lat: '',
lng: '',
jobClassify: '',
sortTag: 0,
jobSpecialLabelIds: '',
cityName: '',
brandIds: '',
ujc: 0,
keys: ''
},
loading: true,
topJobList: [],
hasLocation: false,
chooseActive: false,
//筛选是否高亮
labelItems: [],
checkedlabelItems: [],
hasMoreData: true,
//下拉是否还有更多数据
inputShowed: false,
inputVal: '',
wxCode: '',
isCollect: false,
collectTxt: '收藏',
isLogin: app.globalData.isLogin,
hasUserInfo: 0,
searchCityParamStorage: {
name: '',
shortName: ''
},
iosDialog1: false,
iosDialog2: false,
phoneDialog: false,
triggered: false,
pageShow: false,
whichOneShow: '',
siv: '',
activez: 'all',
sexid: '-1',
// 性别筛选的id
dialog1: false,
dialog2: false,
jobSpecialLabelList: [],
brandList: [],
firstMenu: '排序',
// 工价筛选tab显示
secondMenu: '性别',
// 性别筛选tab显示
selectBrandList: [],
// 选中的品牌标签
selectJobList: [],
// 选中的特色标签
tagArray0: [],
tagArray1: [],
tagArray2: [],
tagArray3: [],
recordBillType: '',
// 报名类型(拍照或者直接报名)
signType: 0,
// 职位类型(自营 三方)
recordCount: 0,
totalPage: 0,
currPage: 0,
currentJobDrawer: {},
// 当前简版职位抽屉信息
drawerShow: false,
// 简版职位抽屉显隐
choiceCollect: 0,
//收藏的筛选
corpUserFlag: app.globalData.loginUserInfo.corpUserFlag,
// 内部成员的判断
agencyStatus: app.globalData.loginUserInfo.agencyStatus,
// 是否是代理的判断
serviceInfo: {},
// 代理信息
navigatorBarHeight: 0,
// 头部整体高度信息
iosDialog: false,
// 成为代理弹窗
isLoading: true,
// 成为代理图片加载loading效果
isScrollTop: false,
// 控制职位列表的滚动
isWannaShow: false,
// 猜你想搜是否显示
historyList: [],
// 最近搜索列表
from: '',
// 来自哪个页面
placeholderText: '请输入关键词',
isFilterPage: false,
userInfo: '',
age: false,
isShow: false,
fromProject: false
};
},
onLoad(options) {
var that = this;
console.log(options);
console.log(that.menuButton);
// let query = wx.createSelectorQuery()
// console.log(query.select('#searchBar'));
console.log(app.globalData.isLogin);
console.log(app.globalData.loginUserInfo.agencyStatus);
console.log();
this.getListByTypeAndIndustry();
this.getBrandNameAllList();
// 查看是否授权
uni.getSetting({
success(res) {
if (res.authSetting['scope.userInfo']) {
// 已经授权,可以直接调用 getUserInfo 获取头像昵称
uni.getUserInfo({
success: function (res) {
console.log(res.userInfo);
}
});
}
}
});
// 检查从哪个页面进来的
console.log(options);
if (options.from) {
if (options.from != 'filter') {
this.setData({
isWannaShow: true
});
if (options.listtype) {
this.setData({
toped: options.listtype
});
}
}
this.setData({
from: options.from
});
}
if (options.data) {
console.log(JSON.parse(options.data));
that.storeJobListSearchForm = JSON.parse(options.data);
}
if (options.key) {
this.setData({
placeholderText: options.key
});
}
if (app.globalData.isNotEmptyCheck(options.fromSearchPage) && options.fromSearchPage == 1) {
// try {
// var searchCityParamStorage = wx.getStorageSync("searchCityParamStorage");
// var searchValue = wx.getStorageSync("SEARCH_VAL");
// console.log(searchValue);
// if (searchCityParamStorage) {
// console.log("searchCityParamStorage======", searchCityParamStorage);
// that.data.storeJobListSearchForm.cityName = searchCityParamStorage.name;
// if (app.isEmptyCheck(searchCityParamStorage.name)) {
// that.data.storeJobListSearchForm.cityName = "全国";
// }
// console.log(that.data.storeJobListSearchForm);
// console.log(searchValue);
// if (searchValue) {
// that.data.storeJobListSearchForm.keys = searchValue;
// that.data.inputVal = searchValue;
// }
// that.setData({
// searchCityParamStorage: searchCityParamStorage,
// storeJobListSearchForm: that.data.storeJobListSearchForm,
// inputVal: that.data.inputVal,
// });
// this.getJobList();
// }
// } catch (e) {
// console.log("获取缓存设置的查询职位列表参数错误:", e);
// }
} else {
try {
uni.removeStorageSync('searchJobListParamStorage');
} catch (e) {
console.log('CatchClause', e);
console.log('CatchClause', e);
console.log('删除缓存设置的查询职位列表参数错误:', e);
}
try {
uni.removeStorageSync('searchCityParamStorage');
} catch (e) {
console.log('CatchClause', e);
console.log('CatchClause', e);
console.log('删除缓存设置的查询职位列表参数错误:', e);
}
}
try {
if (app.globalData.isScanQRCodes - 1 == 0) {
uni.showToast({
title: '欢迎查看好工作',
icon: 'success',
duration: 2000
});
if (!getApp().globalData.isLogin) {
setTimeout(function () {
if (!getApp().globalData.isLogin) {
that.openIOS2();
}
}, 5000);
}
}
} catch (e) {
console.log('CatchClause', e);
console.log('CatchClause', e);
console.log('获取缓存设置的查询职位列表参数错误:', e);
}
console.log('options==============================1');
console.log(options);
console.log('options==============================2');
if (app.globalData.isNotEmptyCheck(options.scene)) {
//扫小程序码携带参数
var sceneStr = decodeURIComponent(options.scene);
var sceneJson = commonUtil.sceneToJson(sceneStr);
console.log('sceneJson===', sceneJson);
if (sceneJson.fromType == 1) {
app.globalData.isCommission = 1;
uni.setStorageSync('storageSyncAgencyUserId', sceneJson.userId);
}
//先设置代理人缓存人再登录
app.globalData.getLoginUserTokenInfo();
} else if (app.globalData.isNotEmptyCheck(options.fromType)) {
//扫小程序普通二维码携带参数-来源ID
console.log('options.fromType========' + options.fromType);
if (options.fromType == 0) {
console.log('options.id========' + options.id);
console.log('options.userId========' + options.userId);
try {
app.globalData.isCommission = 1;
uni.setStorageSync('fromQrCodeChannelContactId', options.id);
that.getAgencyUserId(options.id);
} catch (e) {
console.log('CatchClause', e);
console.log('CatchClause', e);
console.log('0-扫描微信二维码,设置参数错误:', e);
}
} else if (options.fromType.indexOf('0&id=') >= 0) {
//兼容2021-9-9之前的二维码
var paramsTempId = options.fromType.replace('0&id=', '');
console.log('&paramsTempId========' + paramsTempId);
try {
app.globalData.isCommission = 1;
uni.setStorageSync('fromQrCodeChannelContactId', paramsTempId);
that.getAgencyUserId(paramsTempId);
} catch (e) {
console.log('CatchClause', e);
console.log('CatchClause', e);
console.log('0-扫描微信二维码,设置参数错误:', e);
}
} else {
//兼容2021-9-9之前的二维码
var paramsTempId = options.fromType.replace('0,id=', '');
console.log('=paramsTempId========' + paramsTempId);
try {
app.globalData.isCommission = 1;
uni.setStorageSync('fromQrCodeChannelContactId', paramsTempId);
that.getAgencyUserId(paramsTempId);
} catch (e) {
console.log('CatchClause', e);
console.log('CatchClause', e);
console.log('0-扫描微信二维码,设置参数错误:', e);
}
}
} else {
console.log('options.fromType===else=====' + options);
}
//this.wxLogin();
let res = uni.getStorageSync('storeJobId'); //详情页返回
console.log(res);
if (app.globalData.isEmptyCheck(res.data)) {
this.setData({
recordList: []
});
} else {
uni.removeStorageSync({
key: 'storeJobId'
});
}
console.log('on show');
//登录=================================start
if (app.globalData.isLogin) {
this.setData({
isLogin: app.globalData.isLogin,
hasUserInfo: app.globalData.hasUserInfo,
agencyStatus: app.globalData.loginUserInfo.agencyStatus,
corpUserFlag: app.globalData.loginUserInfo.corpUserFlag,
userInfo: app.globalData.loginUserInfo,
serviceInfo: app.globalData.serviceInfo,
isLoading: true
});
} else {
// 由于 userLogin 是网络请求,可能会在 Page.onLoad 之后才返回
// 所以此处加入 callback 以防止这种情况
app.globalData.userLoginCallback = (res) => {
this.setData({
isLogin: app.globalData.isLogin,
hasUserInfo: app.globalData.hasUserInfo,
agencyStatus: app.globalData.loginUserInfo.agencyStatus,
corpUserFlag: app.globalData.loginUserInfo.corpUserFlag,
userInfo: app.globalData.loginUserInfo,
serviceInfo: app.globalData.serviceInfo
});
console.log(that.serviceInfo);
};
console.log(that.serviceInfo);
}
//登录=================================end
this.getHopeJobLabels();
let agencyUserId = options.agencyUserId;
if (agencyUserId) {
uni.setStorageSync('storageSyncAgencyUserId', agencyUserId);
console.log('agencyUserId', agencyUserId);
app.globalData.isCommission = 1;
}
},
onReady() {
let that = this;
},
onShow() {
let that = this;
that.storeJobListSearchForm.pageNum = 1;
console.log(that.from);
if (uni.getStorageSync('FROMCITY')) {
try {
var searchCityParamStorage = uni.getStorageSync('searchCityParamStorage');
if (searchCityParamStorage) {
console.log('searchCityParamStorage======', searchCityParamStorage);
that.storeJobListSearchForm.cityName = searchCityParamStorage.name;
if (app.globalData.isEmptyCheck(searchCityParamStorage.name)) {
that.storeJobListSearchForm.cityName = '';
}
that.setData({
searchCityParamStorage: searchCityParamStorage,
storeJobListSearchForm: that.storeJobListSearchForm
});
that.setData({
recordList: []
});
this.getJobList();
}
} catch (e) {
console.log('CatchClause', e);
console.log('CatchClause', e);
console.log('获取缓存设置的查询职位列表参数错误:', e);
}
uni.removeStorageSync('FROMCITY');
} else {
// that.setData({
// recordList: [],
// });
// that.getJobList();
}
if (app.globalData.isNotEmptyCheck(uni.getStorageSync('projectSearch')) && that.from == 'project') {
console.log(uni.getStorageSync('projectSearch'));
that.setData({
historyList: uni.getStorageSync('projectSearch')
});
}
if (that.from == 'filter') {
console.log(123);
that.storeJobListSearchForm.keys = '1';
that.setData({
isFilterPage: true,
recordList: []
});
that.getJobList();
uni.setNavigationBarTitle({
title: '职位匹配'
});
}
this.setData({
storeJobListSearchForm: that.storeJobListSearchForm,
isLogin: app.globalData.isLogin,
iosDialog2: app.globalData.isLogin ? false : that.iosDialog2,
recordBillType: ''
});
console.log(app.globalData);
setTimeout(() => {
if (app.globalData.isLogin) {
that.setData({
agencyStatus: app.globalData.loginUserInfo.agencyStatus,
corpUserFlag: app.globalData.loginUserInfo.corpUserFlag,
userInfo: app.globalData.loginUserInfo,
serviceInfo: app.globalData.serviceInfo
});
console.log(app.globalData.loginUserInfo);
} else {
that.setData({
serviceInfo: app.globalData.serviceInfo
});
this.wxLogin();
}
}, 100);
console.log(app.globalData.headers);
// if (that.data.inputVal != "") {
// console.log(that.data.inputVal);
// that.setData({
// recordList: [],
// });
// that.getJobList();
// }
uni.removeStorage({
key: 'townsManInfo'
});
uni.removeStorage({
key: 'townsManInfoJob'
});
/*this.wxLogin();
let res = wx.getStorageSync({
key: "storeJobId"
}); //详情页返回
if (app.isEmptyCheck(res.data)) {
this.setData({
recordList: []
});
} else {
wx.removeStorageSync({
key: "storeJobId"
});
}
console.log("on show");
this.getHopeJobLabels();
var reset = true;*/
},
onHide() {
console.log('hide');
uni.removeStorageSync('searchJobListParamStorage');
uni.removeStorageSync('searchCityParamStorage');
this.setData({
whichOneShow: ''
});
},
onUnload() {
console.log('destory');
},
methods: {
// onPullDownRefresh:function(){
// this.getJobList();
// console.log(123);
// wx.stopPullDownRefresh({
// success() {
// app.refreshSuccess();
// }
// });
// },
goLogin() {
uni.setStorageSync('comeFromPage', 'index');
uni.navigateTo({
url: '/pages/login/index'
});
},
close() {
let that = this;
let brandList = that.brandList;
let selectBrandList = that.selectBrandList;
if (selectBrandList.length > 0) {
for (let i = 0; i < brandList.length; i++) {
console.log('level1');
for (let j = 0; j < selectBrandList.length; j++) {
console.log('level2');
if (brandList[i].id == selectBrandList[j].id) {
return (brandList[i].checked = true);
} else {
brandList[i].checked = false;
}
}
}
} else {
brandList.forEach((item) => {
item.checked = false;
});
}
return brandList;
},
closeFix: function () {
var that = this;
// let brandList = that.close()
// that.data.brandList.forEach((item) => {
// if (that.data.selectBrandList.length > 0) {
// that.data.selectBrandList.forEach((item1) => {
// if (item.id != item1.id) {
// console.log("isSame");
// item.checked = false;
// console.log(item.checked);
// } else {
// item.checked = true;
// }
// });
// } else {
// item.checked = false;
// }
// });
// console.log(that.data.brandList);
// console.log(that.data.selectBrandList);
console.log('isout');
},
touchStart(e) {
// console.log("滚起来", e);
// this.setData({
// scrollStop: false
// })
this.setData({
// whichOneShow: mark,
siv: ''
});
},
choosenTop(e) {
var that = this;
// that.data.storeJobListSearchForm.pageNum = 1;
let id = e.currentTarget.dataset.id;
console.log(id);
that.setData({
toped: id
// isScrollTop: false,
});
// 切换标准 简版 重新查询列表
// that.data.storeJobListSearchForm.pageNum = 1;
// that.setData({
// toped: id,
// recordList: [],
// });
// that.getJobList();
},
chooseNl: function (e) {
var that = this;
console.log(e);
let mark = '';
let type = e.target.dataset.type;
let whichOneShow = that.whichOneShow;
if (!that.isLogin) {
uni.navigateTo({
url: '/pages/login/index'
});
return;
}
if (type == 'gj') {
if (whichOneShow == 'gj') {
mark = '';
} else {
mark = 'gj';
}
} else if (type == 'sex') {
if (whichOneShow == 'sex') {
mark = '';
} else {
mark = 'sex';
}
} else if (type == 'brand') {
if (whichOneShow == 'brand') {
mark = '';
} else {
mark = 'brand';
}
} else if (type == 'special') {
if (whichOneShow == 'special') {
mark = '';
} else {
mark = 'special';
}
}
if (that.siv != 'menu') {
setTimeout(() => {
that.setData({
whichOneShow: mark
// siv:'menu'
});
console.log(this.whichOneShow);
}, 0);
that.setData({
siv: 'menu'
});
}
},
toSpecialArea: function (e) {
var id = e.currentTarget.dataset.id;
uni.navigateTo({
url: '../specialArea/index?id=' + id
});
},
chooseM: function (e) {
var str = e.currentTarget.dataset.id;
console.log(str);
this.setData({
activez: str
});
},
watch() {},
choosen: function (e) {
var str = e.currentTarget.dataset.id;
// var ageStr = e.currentTarget.dataset.str;
this.setData({
sexid: str
});
},
choiceSex(e) {
var that = this;
// let str = that.data.sexid
console.log(e);
let str = e.currentTarget.dataset.id;
console.log(str);
if (str == '1') {
this.secondMenu = '男生';
} else if (str == '2') {
this.secondMenu = '女生';
} else if (str == '-1') {
this.secondMenu = '不限';
}
that.setData({
sexid: str,
secondMenu: this.secondMenu
});
that.storeJobListSearchForm.pageNum = 1;
that.storeJobListSearchForm.sex = str;
that.setData({
storeJobListSearchForm: that.storeJobListSearchForm,
recordList: []
});
that.getJobList().then(() => {
that.setData({
siv: 'menu',
whichOneShow: ''
});
});
},
onScrollRefresh: function () {
var that = this;
that.storeJobListSearchForm.pageNum = 1;
that.setData({
recordList: []
});
that.getJobList();
// setTimeout(function(){
// that.setData({
// recordList: [],: false,
// })
// },2000);
},
cc: function () {},
close: function () {
this.setData({
dialog1: false,
dialog2: false,
iosDialog1: false,
iosDialog2: false,
phoneDialog: false
});
},
openIOS1: function () {
this.setData({
iosDialog1: true
});
},
openIOS2: function () {
this.setData({
iosDialog2: true
});
},
showphone: function () {
this.setData({
phoneDialog: true
});
},
searchKey: function (e) {
console.log(e);
if (this.inputVal.trim() == '' && this.placeholderText == '请输入关键词') {
uni.showToast({
title: '请输入内容',
icon: 'none'
});
} else {
this.setData({
isWannaShow: false,
recordList: []
});
console.log(this.placeholderText);
this.storeJobListSearchForm.pageNum = 1;
this.storeJobListSearchForm.keys = this.inputVal || this.placeholderText;
this.setData({
inputVal: this.inputVal || this.placeholderText
});
this.getJobList();
this.setHistoryList();
}
},
setHistoryList() {
let that = this;
if (app.globalData.isNotEmptyCheck(uni.getStorageSync('projectSearch'))) {
that.historyList = uni.getStorageSync('projectSearch');
}
if (that.historyList.indexOf(that.inputVal) > -1) {
that.historyList.splice(that.historyList.indexOf(that.inputVal), 1);
that.historyList.unshift(that.inputVal);
} else {
that.historyList.unshift(that.inputVal);
}
if (that.historyList.length > 10) {
that.historyList = that.historyList.splice(0, 10);
}
that.setData({
historyList: that.historyList
});
uni.setStorageSync('projectSearch', that.funQC(that.historyList));
},
showInput: function () {
this.setData({
inputShowed: true
});
},
hideInput: function () {
this.setData({
inputVal: '',
inputShowed: false
});
},
onShareAppMessage1: function () {
var path = commonUtil.getCurrentPageUrlWithArgs();
if (app.globalData.isLogin && app.globalData.agencyStatus - 0 != 0) {
//当前用户是代理人
path += (path.indexOf('?') >= 0 ? '&' : '?') + 'agencyUserId=' + app.globalData.loginUserInfo.id;
}
console.log(path);
return {
title: '伯才',
path: path
};
},
clearInput: function () {
this.setData({
inputVal: '',
chaShowed: false,
inputShowed: false,
hasMoreData: true,
recordList: [],
isWannaShow: true,
placeholderText: '请输入关键词'
});
this.inputBlur();
this.clearFilter();
this.storeJobListSearchForm.pageNum = 1;
this.storeJobListSearchForm.keys = '';
},
inputTyping: function (e) {
this.setData({
inputVal: e.detail.value
});
console.log(this.inputVal == '');
if (this.inputVal == '') {
this.setData({
recordList: [],
isWannaShow: true
});
this.storeJobListSearchForm.pageNum = 1;
this.storeJobListSearchForm.keys = '';
// this.getJobList();
}
},
clear() {
uni.clearStorage();
console.log('清除成功');
},
inputBlur() {},
getListByTypeAndIndustry: function () {
var that = this;
uni.request({
url: app.globalData.ip + '/labels/getListByTypeAndIndustry',
data: {
type: 90,
industry: 2
},
header: app.globalData.header,
method: 'GET',
success: function (res) {
console.log(res.data.data);
// that.setData({
// tagArray0: [],
// tagArray1: [],
// tagArray2: [],
// tagArray3: [],
// });
res.data.data.forEach((item) => {
if (item.typeClassify == '0') {
that.tagArray0.push(item);
} else if (item.typeClassify == '1') {
that.tagArray1.push(item);
} else if (item.typeClassify == '2') {
that.tagArray2.push(item);
} else if (item.typeClassify == '3') {
that.tagArray3.push(item);
}
});
that.setData({
tagArray0: that.tagArray0,
tagArray1: that.tagArray1,
tagArray2: that.tagArray2,
tagArray3: that.tagArray3
});
var jobSpecialLabelIdArray = that.storeJobListSearchForm.jobSpecialLabelIds.split(',');
res.data.data.forEach((item) => {
item['checked'] = false;
jobSpecialLabelIdArray.forEach((item1) => {
if (item.id == item1) {
item['checked'] = true;
}
});
});
that.setData({
jobSpecialLabelList: res.data.data
});
}
});
},
getBrandNameAllList: function () {
var that = this;
uni.request({
url: app.globalData.ip + '/labels/type/95',
// 分类列表获取接口
header: app.globalData.header,
method: 'GET',
success: function (res) {
console.log(res);
if (res.data.status == 200) {
if (that.storeJobListSearchForm.brandIds) {
var brandIdArray = that.storeJobListSearchForm.brandIds.split(',');
}
console.log(res.data.data.labels);
res.data.data.labels.forEach((item) => {
item['checked'] = false;
if (brandIdArray) {
brandIdArray.forEach((item1) => {
if (item.id == item1) {
item['checked'] = true;
}
});
}
});
that.setData({
brandList: res.data.data.labels
});
}
}
});
// wx.request({
// url: app.globalData.ip + "/brand/getBrandNameAllList",
// data: {},
// header: app.globalData.header,
// method: "GET",
// success: function (res) {
// console.log(res);
// var brandIdArray = that.data.storeJobListSearchForm.brandIds.split(",");
// res.data.data.pageBean.forEach((item) => {
// item["checked"] = false;
// brandIdArray.forEach((item1) => {
// if (item.id == item1) {
// item["checked"] = true;
// }
// });
// });
// that.setData({
// brandList: res.data.data,
// });
// },
// });
},
selectJobSpecialLabel: function (e) {
var that = this;
var index = e.currentTarget.dataset.index;
var indexTag = e.currentTarget.dataset.indexTag;
console.log(e);
console.log(indexTag);
// debugger;
if (indexTag == '0') {
if (that.tagArray0[index].checked) {
that.tagArray0[index].checked = false;
// index1 = that.data.selectJobList.indexOf(that.data.tagArray0[index]);
// that.data.selectJobList.splice(index1, 1);
} else {
that.tagArray0[index].checked = true;
// that.data.selectJobList.push(that.data.tagArray0[index]);
}
this.setData({
tagArray0: that.tagArray0
});
} else if (indexTag == '1') {
console.log('indexTag == "1"');
if (that.tagArray1[index].checked) {
that.tagArray1[index].checked = false;
// index1 = that.data.selectJobList.indexOf(that.data.tagArray1[index]);
// that.data.selectJobList.splice(index1, 1);
} else {
that.tagArray1[index].checked = true;
// that.data.selectJobList.push(that.data.tagArray1[index]);
}
this.setData({
tagArray1: that.tagArray1
});
} else if (indexTag == '2') {
if (that.tagArray2[index].checked) {
that.tagArray2[index].checked = false;
// index1 = that.data.selectJobList.indexOf(that.data.tagArray2[index]);
// that.data.selectJobList.splice(index1, 1);
} else {
that.tagArray2[index].checked = true;
// that.data.selectJobList.push(that.data.tagArray2[index]);
}
this.setData({
tagArray2: that.tagArray2
});
} else if (indexTag == '3') {
if (that.tagArray3[index].checked) {
that.tagArray3[index].checked = false;
// index1 = that.data.selectJobList.indexOf(that.data.tagArray3[index]);
// that.data.selectJobList.splice(index1, 1);
} else {
that.tagArray3[index].checked = true;
// that.data.selectJobList.push(that.data.tagArray3[index]);
}
this.setData({
tagArray3: that.tagArray3
});
}
this.setData({
selectJobList: that.selectJobList
});
// jobSpecialLabelList
// if(that.data.jobSpecialLabelList[index].checked) {
// that.data.jobSpecialLabelList[index].checked = false;
// } else {
// that.data.jobSpecialLabelList[index].checked = true;
// }
// this.setData({
// jobSpecialLabelList: that.data.jobSpecialLabelList
// });
},
selectBrand: function (e) {
var that = this;
var index = e.currentTarget.dataset.index;
if (that.brandList[index].checked) {
that.brandList[index].checked = false;
// let index1 = that.data.selectBrandList.indexOf(that.data.brandList[index])
// that.data.selectBrandList.splice(index1,1)
} else {
that.brandList[index].checked = true;
}
console.log(that.selectBrandList);
this.setData({
brandList: that.brandList
});
},
reset: function (e) {
var that = this;
console.log(e);
if (e.target.dataset.type == 1) {
//特色
that.jobSpecialLabelList.forEach((item) => {
// console.log(item);
if (item.checked) {
item.checked = false;
}
});
that.setData({
jobSpecialLabelList: that.jobSpecialLabelList,
tagArray0: that.tagArray0,
tagArray1: that.tagArray1,
tagArray2: that.tagArray2,
tagArray3: that.tagArray3,
selectJobList: [],
whichOneShow: ''
});
that.storeJobListSearchForm.jobSpecialLabelIds = '';
} else if (e.target.dataset.type == 2) {
//品牌
that.brandList.forEach((item) => {
if (item.checked) {
item.checked = false;
}
});
that.setData({
brandList: that.brandList,
selectBrandList: [],
whichOneShow: ''
});
that.storeJobListSearchForm.jobCategoryLabelIds = '';
// that.data.storeJobListSearchForm.brandIds = "";
} else if (e.target.dataset.type == 4) {
that.setData({
activez: ''
});
}
that.storeJobListSearchForm.pageNum = 1;
that.setData({
recordList: []
});
that.getJobList();
},
loginOut: function () {
var that = this;
var jobSpecialLabelIdArray = [];
that.jobSpecialLabelList.forEach((item) => {
if (item.checked) {
jobSpecialLabelIdArray.push(item.id);
}
});
if (jobSpecialLabelIdArray.length > 0) {
that.storeJobListSearchForm.jobSpecialLabelIds = jobSpecialLabelIdArray.join(',');
} else {
that.storeJobListSearchForm.jobSpecialLabelIds = '';
}
var brandIdArray = [];
that.selectBrandList = [];
that.brandList.forEach((item) => {
if (item.checked) {
if (that.selectBrandList.indexOf(item) == -1) {
that.selectBrandList.push(item);
}
brandIdArray.push(item.id);
}
});
that.selectJobList = [];
let jobList = that.tagArray0.concat(that.tagArray1, that.tagArray2, that.tagArray3);
jobList.forEach((item) => {
if (item.checked) {
if (that.selectJobList.indexOf(item) == -1) {
that.selectJobList.push(item);
}
}
});
if (brandIdArray.length > 0) {
// that.data.storeJobListSearchForm.brandIds = brandIdArray.join(",");
that.storeJobListSearchForm.jobCategoryLabelIds = brandIdArray.join(',');
} else {
// that.data.storeJobListSearchForm.brandIds = "";
that.storeJobListSearchForm.jobCategoryLabelIds = '';
}
that.storeJobListSearchForm.pageNum = 1;
that.setData({
recordList: [],
siv: '',
whichOneShow: '',
selectBrandList: that.selectBrandList,
selectJobList: that.selectJobList
});
that.getJobList();
},
onTabClick(e) {
const index = e.detail.index;
this.setData({
activeTab: index
});
},
onChange(e) {
const index = e.detail.index;
this.setData({
activeTab: index
});
},
findLocation() {
var that = this;
uni.getLocation({
type: 'gcj02',
success(res1) {
console.log('获取位置2');
console.log(res1);
app.globalData.lng = res1.longitude;
app.globalData.lat = res1.latitude;
},
fail() {}
});
},
emptyMethod(e) {
console.log(e);
},
chooseIdCard() {
var that = this;
if (that.agencyStatus != 1) {
this.setData({
iosDialog: true
});
return;
}
uni.chooseImage({
count: 1,
sizeType: ['original', 'compressed'],
sourceType: ['album', 'camera'],
success(res) {
console.log(res);
uni.navigateTo({
url: `../newEnroll/enroll/index?applyType=1&imgUrl=${res.tempFilePaths[0]}`
});
// that.uploadIdcardImg(res);
}
});
},
navigatorToRecord() {
if (this.agencyStatus != 1) {
this.setData({
iosDialog: true
});
return;
}
uni.navigateTo({
url: `../newEnroll/enroll/index?applyType=1`
});
},
PageScroll(e) {
let that = this;
const query = uni.createSelectorQuery().in(this);
query
.select('.sticky')
.boundingClientRect(function (res) {
console.log(res);
if (res.top <= 5) {
that.setData({
isScrollTop: true
});
} else if (res.top > 0 && res.top < 90) {
that.setData({
isScrollTop: false
});
} else if (res.top >= 90) {
that.setData({
isScrollTop: false
});
}
})
.exec();
},
collectedStoreJobList() {
var that = this;
uni.request({
url: app.globalData.ip + '/store/job/collected/list?ujc=1',
method: 'GET',
data: {},
header: app.globalData.headers,
success: function (res) {
console.log(res);
let collectList = res.data.data.pageBean.recordList;
let jobs = that.recordList;
if (
collectList != null &&
collectList != '' &&
collectList != undefined &&
collectList.length != 0 &&
jobs != null &&
jobs != '' &&
jobs != undefined &&
jobs.length != 0
) {
for (var j = 0; j != jobs.length; ++j) {
jobs[j].collected = 2;
}
for (var i = 0; i != collectList.length; ++i) {
for (var j = 0; j != jobs.length; ++j) {
if (collectList[i].storeJobId - jobs[j].id == 0) {
jobs[j].collected = 1;
break;
}
}
}
that.setData({
recordList: jobs
});
}
},
fail: function (res) {}
});
},
getHopeJobLabels() {
var that = this;
uni.request({
url: app.globalData.ip + '/labels/findAllHopeJobLabels',
// ?category=4
method: 'GET',
data: {},
success: function (res0) {
console.log('感兴趣职位 ↓↓↓');
console.log(res0);
if (res0.data.data != null) {
res0.data.data.forEach((item, index) => {
item['title'] = item.name;
item['checked'] = false;
if (index == 0 || index == 1) {
item['checked'] = true;
}
});
}
that.setData({
labelItems: res0.data.data == null ? [] : res0.data.data
});
that.initData();
console.log('感兴趣职位 赋值title↓↓↓');
console.log(res0);
},
fail: function (res) {
console.log(res);
uni.showToast({
title: '获取失败',
icon: 'none',
duration: 2000
});
}
});
},
makePhoneCall() {
var that = this;
uni.makePhoneCall({
phoneNumber: '13937184434'
});
},
goScreen() {
uni.navigateTo({
url: '../screen/index'
});
},
goCity() {
let that = this;
console.log('search');
if (!that.isLogin) {
uni.navigateTo({
url: '/pages/login/index'
});
return;
}
uni.navigateTo({
url: '../city/index?from=search'
});
uni.setStorageSync('SEARCH_VAL', that.storeJobListSearchForm.keys);
},
initData() {
var that = this;
try {
// 获取手机基础信息(头状态栏和标题栏高度)
let systemInfo = uni.getSystemInfoSync();
let getMenuButtonBoundingClientRect = uni.getMenuButtonBoundingClientRect();
console.log(uni.getMenuButtonBoundingClientRect());
this.setData({
systemInfo,
getMenuButtonBoundingClientRect
});
} catch (e) {
console.log('CatchClause', e);
console.log('CatchClause', e);
console.log(e);
uni.alert({
title: '温馨提示',
content: 'onLoad 执行异常'
});
}
let res0 = uni.getStorageSync('checkedlabelItems');
console.log(app.globalData.isNotEmptyCheck(res0.data));
that.tabs2 = [
{
name: '打勾推荐',
category: -1,
id: 406,
checked: true,
title: '打勾推荐'
}
];
if (app.globalData.isNotEmptyCheck(res0.data)) {
for (var i = 0; i < res0.data.length; i++) {
res0.data[i]['title'] = res0.data[i].name;
// that.data.tabs2.push(res0.data[i]);
}
console.log('获取缓存'); // res0.data.unshift();
// console.log(res.data.unshift({name: "打勾推荐", category: 3, id: 406, checked: true, title: "打勾推荐"}));
} else {
console.log('无感兴趣职位 push两个职位 ↓↓↓');
console.log(that.labelItems);
that.labelItems.forEach((item) => {
if (item.name == '理货员' || item.name == '餐饮服务员') {
// that.data.tabs2.push(item);
}
}); // that.data.tabs2.push(that.data.labelItems[0], that.data.labelItems[1])
}
that.setData({
tabs2: that.tabs2
});
let res = uni.getStorageSync('sex'); //性别
if (app.globalData.isNotEmptyCheck(res.data)) {
that.storeJobListSearchForm.sex = res.data;
that.storeJobListSearchForm.pageNum = 1;
} else {
// res.data = [];
}
let res2 = uni.getStorageSync('checkedJobItems'); //筛选职位
let workTypeStrCurr = '';
if (app.globalData.isNotEmptyCheck(res2.data)) {
res2.data.forEach((item, index) => {
workTypeStrCurr += item.value + ',';
});
if (workTypeStrCurr.length > 0) {
workTypeStrCurr = workTypeStrCurr.substr(0, workTypeStrCurr.length - 1);
}
that.storeJobListSearchForm.workTypeStr = workTypeStrCurr;
that.storeJobListSearchForm.pageNum = 1;
} else {
that.storeJobListSearchForm.workTypeStr = '';
that.storeJobListSearchForm.pageNum = 1;
}
console.log(res.data + '===' + res2.data);
if (res.data == -1 && (res2.data == null || res2.data == '')) {
that.setData({
chooseActive: false
});
} else {
that.setData({
chooseActive: true
});
}
// this.getJobList();
},
getJobList(e) {
console.log(e);
var that = this;
// debugger
return new Promise(function (resolve, reject) {
if (that.storeJobListSearchForm.sortTag == 2) {
//如果按照距离排序,拼接上坐标
that.storeJobListSearchForm.lng = app.globalData.lng;
that.storeJobListSearchForm.lat = app.globalData.lat;
}
console.log(that.inputVal);
console.log(that.searchCityParamStorage);
that.storeJobListSearchForm.cityName = that.searchCityParamStorage.name;
if (app.globalData.isEmptyCheck(that.searchCityParamStorage.name)) {
that.storeJobListSearchForm.cityName = '';
}
that.storeJobListSearchForm.keys = that.inputVal == '' ? '' : that.inputVal;
// debugger;
uni.showLoading({
title: '加载中...'
});
console.log(that.storeJobListSearchForm);
uni.request({
url: app.globalData.ip + '/yishoudan/custom/job/listApp',
method: 'POST',
header: app.globalData.headers,
data: that.storeJobListSearchForm,
success: function (res) {
console.log('职位列表↓↓↓↓');
console.log(res);
that.setData({
totalPage: res.data.data.pageBean.pageCount,
currPage: res.data.data.pageBean.currentPage
});
setTimeout(function () {
that.setData({
triggered: false
});
}, 1000);
if (
res.data.data.pageBean.recordList == null ||
res.data.data.pageBean.recordList.length == 0 ||
res.data.data.pageBean.recordList.length < that.storeJobListSearchForm.pageSize
) {
var jobListTemp = commonUtil.disposeJobListData(res.data.data.pageBean.recordList);
that.recordList = that.recordList.concat(jobListTemp);
that.setData({
recordList: that.recordList,
hasMoreData: false,
isTrigger: false
});
} else {
var jobListTemp = commonUtil.disposeJobListData(res.data.data.pageBean.recordList);
that.recordList = that.recordList.concat(jobListTemp);
that.setData({
recordList: that.recordList,
hasMoreData: true,
isTrigger: false
});
}
uni.hideLoading({
success: (res) => {}
});
that.setData({
loading: false,
pageShow: true,
storeJobListSearchForm: that.storeJobListSearchForm
});
resolve();
that.getTag();
that.recordList.forEach((item, index) => {
if (app.globalData.isNotEmptyCheck(item.returnFeeType) || item.returnFeeType == '0' || item.returnFee == '0') {
item['fuWuFei'] = commonUtil.getReturnFeeTypeName1ById(item.returnFeeType, item.returnFee);
} else {
item['fuWuFei'] = '';
}
});
that.setData({
recordList: that.recordList,
isWannaShow: that.searchCityParamStorage ? false : true
});
setTimeout(() => {
var query = uni.createSelectorQuery();
query.select('.navigator').boundingClientRect();
query.exec(function (res) {
//res就是 所有标签为v1的元素的信息 的数组
console.log(res);
//取高度
console.log(res[0].height);
that.setData({
navigatorBarHeight: res[0].height
});
console.log(that.navigatorBarHeight);
});
}, 300);
// if (that.data.recordList.length < res.data.data.pageBean.recordCount) {
// that.setData({
// hasMoreData: true,
// });
// } else {
// that.setData({
// hasMoreData: false,
// });
// }
}
});
});
},
onScrollRefresh() {
this.recordList = [];
this.storeJobListSearchForm.pageNum = 1;
this.getJobList();
},
getTag() {
let that = this;
let query = uni.createSelectorQuery().in(that);
query
.selectAll('.tttg')
.boundingClientRect()
.exec(function (res) {
res.forEach((item) => {
item.forEach((element, index) => {
if (element.width > 200) {
// that.data.recordList[index].isTagShow = true;
var age = 'recordList[' + index + '].isTagShow';
that.setData({
[age]: true
});
}
});
});
// if(){
// }
// console.log(res);
});
},
// 下拉加载更多
onScrollToLower() {
console.log('====================================================');
var that = this;
if (app.globalData.isLogin) {
that.storeJobListSearchForm.pageNum = that.storeJobListSearchForm.pageNum + 1;
if (that.hasMoreData) {
that.getJobList();
}
// 根据实际数据加载情况设定 loadMore 的值即可,分别为 load 和 over
this.setData({
loadMore: 'load'
// loading:true
});
} else {
// if (that.data.pullNum == 0) {
// that.openIOS1();
// }
}
that.pullNum = that.pullNum + 1;
},
handleTabClick(e) {
var that = this;
var index = e.detail.index;
console.log(e.detail.index);
let categoryCurr = that.tabs2[index].category; // that.data.tabs2.forEach((item,index2) => {
// if (index == index2) {
// categoryCurr = item.category
// }
// if( index == 0){
// categoryCurr = -1
// }
// })
this.setData({
// [tabsName]: index,
contentIndex: index
});
console.log(categoryCurr);
that.storeJobListSearchForm.jobClassify = categoryCurr;
that.storeJobListSearchForm.pageNum = 1;
that.setData({
recordList: []
});
that.getJobList();
},
/**
* 标准详情
*
*
*/
goDetail(e) {
console.log(e);
var that = this;
if (this.isLogin) {
uni.navigateTo({
url: '../detail/index?storeJobId=' + e.currentTarget.dataset.id + '&wxCode=' + that.wxCode
});
} else {
uni.navigateTo({
url: '../login/index'
});
}
},
backIndex() {
console.log(123);
uni.reLaunch({
url: '/pages/firstBill/index',
success: (result) => {},
fail: () => {},
complete: () => {}
});
},
/**
* 简版抽屉
*
*
*/
goDrawer(event) {
let that = this;
console.log(event.currentTarget.dataset.item);
event.currentTarget.dataset.item['jobDesp'] = event.currentTarget.dataset.item.jobDesp.replace(/\*\*\*\*\*/g, '').split('————————')[0];
event.currentTarget.dataset.item['jobDesp1'] = event.currentTarget.dataset.item.jobDesp.replace(
'⚠',
"<i class='t-icon t-icon-zhuyi' style='margin-bottom:-2px;width:17px;height:17px;background-repeat:no-repeat;background-size:100% 100%'></i>"
);
event.currentTarget.dataset.item['jobDesp1'] = event.currentTarget.dataset.item.jobDesp1.replace(
'[红包]',
"<i class='t-icon t-icon-hongbao' style='margin-bottom:-2px;width:17px;height:17px;background-repeat:no-repeat;background-size:100% 100%'></i>"
);
that.setData({
currentJobDrawer: {
...event.currentTarget.dataset.item,
index: event.currentTarget.dataset.index
},
drawerShow: true
});
console.log(this.currentJobDrawer);
},
copyClose() {
var that = this;
var contentInfo;
const query = uni.createSelectorQuery().in(this);
query
.select('.contactInfo')
.boundingClientRect(function (res) {
contentInfo = res.dataset.info;
var text = that.currentJobDrawer.jobDesp + contentInfo;
uni.setClipboardData({
data: text,
success(res) {
uni.getClipboardData({
success(res) {
console.log(res.data); // data
uni.showToast({
title: '内容已复制',
icon: 'none',
duration: 1500
});
}
});
}
});
})
.exec();
},
// showDrawer() {
// this.setData({
// });
// },
hideDrawer() {
let that = this;
that.setData({
drawerShow: false
});
setTimeout(() => {
uni.showTabBar({
success(e) {}
});
}, 300);
},
goEnroll(e) {
console.log(e);
// wx.navigateTo({
// url: "../newEnroll/index?applyType=0"
// });
var that = this;
uni.removeStorageSync('townsManInfo');
uni.removeStorageSync('townsManInfoJob');
uni.removeStorageSync('storeInfoJob');
// if(app.isNotEmptyCheck(wx.getStorage('townsManInfo'))){
// wx.removeStorageSync('townsManInfo')
// }
// if(app.isNotEmptyCheck(wx.getStorage('townsManInfoJob'))){
// wx.removeStorageSync('townsManInfoJob')
// }
// if(app.isNotEmptyCheck(wx.getStorage('storeInfoJob'))){
// wx.removeStorageSync('storeInfoJob')
// }
// wx.removeStorageSync('townsManInfoJob')
console.log(app.globalData.loginUserInfo.tel);
uni.setStorageSync('jobDetailStorage', that.recordList[e.currentTarget.dataset.idx]);
let argument;
argument = JSON.stringify(e.currentTarget.dataset.info).replace(/\=|\&/g, '3D');
uni.navigateTo({
url: `../newEnroll/enroll/index?applyType=1&info=${argument}`
});
},
wxLogin() {
var that = this;
uni.login({
success(res) {
if (res.code) {
that.setData({
wxCode: res.code
});
} else {
console.log('获取code失败' + res.errMsg);
}
}
});
},
changeRecordBillType(e) {
let that = this;
console.log(e);
that.setData({
recordBillType: e.currentTarget.dataset.type
});
},
getPhoneNumber(e) {
var that = this;
console.log(e);
console.log(e.detail.errMsg);
/*wx.setStorageSync({
key: "jobDetailStorage",
data: that.data.recordList[e.currentTarget.dataset.idx]
});*/
uni.setStorageSync('jobDetailStorage', that.recordList[e.currentTarget.dataset.idx]);
// console.log(e);
// console.log(e.detail.errMsg)
// console.log(e.detail.iv)
// console.log(e.detail.encryptedData)
if ('getPhoneNumber:ok' == e.detail.errMsg) {
//同意
var iv = e.detail.iv;
var encryptedData = e.detail.encryptedData;
console.log(iv, '=-=========', encryptedData);
uni.checkSession({
success() {
//session_key 未过期,并且在本生命周期一直有效
uni.request({
url: app.globalData.ip + '/getWechatTel',
data: {
code: that.wxCode,
iv: iv,
encryptedData: encryptedData,
type: 'yishoudan'
},
success: function (res) {
console.log(res);
app.globalData.openId = res.data.data.pageBean.openId;
let promise = app.globalData.setLoginUserTokenInfo(res.data.data.pageBean.phoneNumber, null);
var collected = e.currentTarget.dataset.collected;
if (collected) {
promise.then((res) => {
that.setData({
isLogin: app.globalData.isLogin
});
that.doCollected(collected, e.currentTarget.dataset.jobid);
// that.collectedStoreJobList();
});
} else {
if (that.recordBillType == 'photo' || that.recordBillType == 'record') {
promise.then((res) => {
if (that.recordBillType == 'photo') {
that.chooseIdCard();
} else {
that.navigatorToRecord();
}
});
} else {
promise.then((res) => {
let argument;
argument = JSON.stringify(e.currentTarget.dataset.info).replace(/\=|\&/g, '3D');
uni.navigateTo({
url: `../newEnroll/enroll/index?applyType=1&info=${argument}`
});
});
}
}
},
fail: function (res) {
console.log('获取用户手机号错误');
}
});
},
fail() {
// session_key 已经失效,需要重新执行登录流程
uni.login({
success(res) {
if (res.code) {
console.log(res.code);
//发起网络请求
uni.request({
url: app.globalData.ip + '/getWechatTel',
data: {
code: res.code,
iv: iv,
encryptedData: encryptedData,
type: 'yishoudan'
},
success: function (res) {
console.log(res);
let promise = app.globalData.setLoginUserTokenInfo(res.data.data.pageBean.phoneNumber, null);
var collected = e.currentTarget.dataset.collected;
if (collected) {
promise.then((res) => {
that.setData({
isLogin: app.globalData.isLogin
});
that.doCollected(collected, e.currentTarget.dataset.jobid);
});
} else {
promise.then((res) => {
uni.navigateTo({
url: '../enroll/index?applyType=1'
//url: "../enroll/index?applyType=1&tel=" + res.data.data.pageBean.phoneNumber
});
});
}
},
fail: function (res) {
console.log('获取用户手机号错误');
}
});
} else {
console.log('获取手机号失败!' + res.errMsg);
}
}
});
}
});
} else {
//拒绝
var collected = e.currentTarget.dataset.collected;
if (collected) {
try {
uni.setStorageSync('comeFromPage', 'index');
} catch (e) {
console.log('CatchClause', e);
console.log('CatchClause', e);
console.log('index-页面跳转,设置参数错误:', e);
}
uni.navigateTo({
url: '/pages/login/index'
});
} else {
uni.navigateTo({
url: '../enroll/index?applyType=1'
});
}
}
return false;
},
getPhoneNumber1(e) {
var that = this;
console.log(e);
console.log(e.detail.errMsg);
that.close();
// console.log(e);
// console.log(e.detail.errMsg)
// console.log(e.detail.iv)
// console.log(e.detail.encryptedData)
if ('getPhoneNumber:ok' == e.detail.errMsg) {
//同意
var iv = e.detail.iv;
var encryptedData = e.detail.encryptedData;
uni.checkSession({
success() {
//session_key 未过期,并且在本生命周期一直有效
uni.request({
url: app.globalData.ip + '/getWechatTel',
data: {
code: that.wxCode,
iv: iv,
encryptedData: encryptedData,
type: 'yishoudan'
},
success: function (res) {
console.log(res);
let promise = app.globalData.setLoginUserTokenInfo(res.data.data.pageBean.phoneNumber, null);
promise.then((res) => {
that.setData({
isLogin: app.globalData.isLogin
});
that.onScrollToLower();
});
},
fail: function (res) {
console.log('获取用户手机号错误');
}
});
},
fail() {
// session_key 已经失效,需要重新执行登录流程
uni.login({
success(res) {
if (res.code) {
console.log(res.code);
//发起网络请求
uni.request({
url: app.globalData.ip + '/getWechatTel',
data: {
code: res.code,
iv: iv,
encryptedData: encryptedData,
type: 'yishoudan'
},
success: function (res) {
console.log(res);
let promise = app.globalData.setLoginUserTokenInfo(res.data.data.pageBean.phoneNumber, null);
promise.then((res) => {
that.setData({
isLogin: app.globalData.isLogin
});
});
},
fail: function (res) {
console.log('获取用户手机号错误');
}
});
} else {
console.log('获取手机号失败!' + res.errMsg);
}
}
});
}
});
} else {
//拒绝
if (e.currentTarget.dataset.type != 'close') {
try {
uni.setStorageSync('comeFromPage', 'index');
} catch (e) {
console.log('CatchClause', e);
console.log('CatchClause', e);
console.log('index-页面跳转,设置参数错误:', e);
}
uni.navigateTo({
url: '/pages/login/index'
});
} else {
that.close();
}
}
return false;
},
getAgencyUserId(id) {
var that = this;
uni.request({
url: app.globalData.ip + '/channel/contact/getAgencyUserId',
method: 'GET',
header: app.globalData.header,
data: {
channelContactId: id
},
success: function (res) {
console.log('获取来源对应的代理人来源ID', id);
console.log(res);
try {
if (app.globalData.isNotEmptyCheck(res.data.data)) {
uni.setStorageSync('storageSyncAgencyUserId', res.data.data);
}
//先设置代理人缓存人再登录
app.globalData.getLoginUserTokenInfo();
} catch (e) {
console.log('CatchClause', e);
console.log('CatchClause', e);
console.log('0-扫描微信二维码,设置参数错误:', e);
//先设置代理人缓存人再登录
app.globalData.getLoginUserTokenInfo();
}
},
fail: function (res0) {
console.log('获取来源对应的代理人错误', id);
}
});
},
collectPaste(e) {
var txt;
var that = this;
if (!this.isLogin) {
uni.navigateTo({
url: '/pages/login/index'
});
return;
}
var collected = e.currentTarget.dataset.collected;
var storeJobId = e.currentTarget.dataset.jobid;
that.doCollected(collected, storeJobId);
// console.log(collected);
// if(!this.data.isCollect){
// that.setData({
// isCollect: true,
// collectTxt:'已收藏'
// })
// txt = '收藏成功'
// }else{
// that.setData({
// isCollect: false,
// collectTxt:'收藏'
// })
// }
},
doCollected(collected, storeJobId) {
var that = this;
var url = '/yishoudan/custom/job/collect/' + storeJobId;
// if (collected - 1 == 0) {
// url = "/user/collect/job/remove";
// }
// console.log(app.globalData.headers);
//发起网络请求
uni.request({
url: app.globalData.ip + url,
// data: {
// jobId: storeJobId,
// classify:0
// },
header: app.globalData.headers,
method: 'GET',
success: function (res) {
var txt;
if (collected - 1 == 0) {
//取消收藏
for (var i = 0; i != that.recordList.length; ++i) {
if (that.recordList[i].id - storeJobId == 0) {
that.recordList[i].collected = 0;
break;
}
}
txt = '取消收藏';
} else {
//收藏
for (var i = 0; i != that.recordList.length; ++i) {
if (that.recordList[i].id - storeJobId == 0) {
that.recordList[i].collected = 1;
break;
}
}
txt = '收藏成功';
}
that.setData({
recordList: that.recordList,
currentJobDrawer: that.currentJobDrawer,
isLogin: app.globalData.isLogin
});
uni.showToast({
icon: 'none',
title: txt
});
},
fail: function (res) {
console.log('操作失败');
}
});
},
getUserInfoBtn: function (e) {
console.log(e);
let that = this;
let type = e.currentTarget.dataset.type;
var collected = e.currentTarget.dataset.collected;
var storeJobId = e.currentTarget.dataset.jobid;
let idx = e.currentTarget.dataset.idx;
console.log(type);
uni.getUserProfile({
desc: '用于完善会员资料',
// 声明获取用户个人信息后的用途,后续会展示在弹窗中,请谨慎填写
success: (res) => {
console.log(res);
//发起网络请求
uni.request({
url: app.globalData.ip + '/updateUserWechatInfo',
data: {
nickName: res.userInfo.nickName,
avatarUrl: res.userInfo.avatarUrl,
gender: res.userInfo.gender,
country: res.userInfo.country,
province: res.userInfo.province,
city: res.userInfo.city
},
method: 'POST',
header: app.globalData.headers,
success: function (res) {
console.log(res);
app.globalData.hasUserInfo = 1;
that.setData({
hasUserInfo: 1
});
that.doMenuClick(type, collected, storeJobId, idx);
},
fail: function (res) {
that.doMenuClick(type, collected, storeJobId, idx);
}
});
},
fail: (res) => {
console.log(res);
that.doMenuClick(type, collected, storeJobId, idx);
}
});
},
doMenuClick: function (_type, _collected, _storeJobId, _idx) {
let that = this;
if (_type - 1 == 0) {
//点击全国
that.goCity();
} else if (_type - 2 == 0) {
//搜索
that.showInput();
} else if (_type - 3 == 0) {
//筛选
that.goScreen();
} else if (_type - 4 == 0) {
//收藏
that.doCollected(_collected, _storeJobId);
} else if (_type - 5 == 0) {
//报名
uni.setStorageSync('jobDetailStorage', that.recordList[_idx]);
uni.navigateTo({
url: '../enroll/index?applyType=1&tel=' + app.globalData.loginUserInfo.tel
});
}
},
changSign(e) {
let that = this;
console.log(e);
that.storeJobListSearchForm.pageNum = 1;
if (e.target.dataset.type == 0 && that.signType != 0) {
that.storeJobListSearchForm.signType = '';
that.setData({
signType: e.target.dataset.type,
recordList: [],
storeJobListSearchForm: that.storeJobListSearchForm
});
that.getJobList();
} else if (e.target.dataset.type == 1 && that.signType != 1) {
that.storeJobListSearchForm.signType = 1;
that.setData({
signType: e.target.dataset.type,
recordList: [],
storeJobListSearchForm: that.storeJobListSearchForm
});
that.getJobList();
} else if (e.target.dataset.type == 2 && that.signType != 2) {
that.storeJobListSearchForm.signType = 2;
that.setData({
signType: e.target.dataset.type,
recordList: [],
storeJobListSearchForm: that.storeJobListSearchForm
});
that.getJobList();
}
},
/**
* 收藏的切换
*
*
*/
collectChange(e) {
let that = this;
if (that.isLogin || (!that.isLogin && e.currentTarget.dataset.id == 0)) {
if (e.currentTarget.dataset.id) {
that.choiceCollect = e.currentTarget.dataset.id;
that.storeJobListSearchForm.ujc = e.currentTarget.dataset.id;
that.storeJobListSearchForm.pageNum = 1;
that.setData({
choiceCollect: that.choiceCollect,
storeJobListSearchForm: that.storeJobListSearchForm,
recordList: [],
hasMoreData: true
});
that.getJobList();
}
} else {
// if(e.currentTarget.dataset.id == 1){
that.setData({
recordList: [],
choiceCollect: 1
});
// }
}
},
choiceFilter(e) {
var that = this;
// let str = that.data.activez
let str = e.currentTarget.dataset.id;
if (str == 'all') {
that.storeJobListSearchForm.sortTag = 0;
that.setData({
firstMenu: '排序',
// storeJobListSearchForm: that.data.storeJobListSearchForm,
recordList: []
});
that.getJobList().then(() => {
that.setData({
siv: 'menu'
});
});
} else if (str == 'zuijin') {
//距离最近
if (that.storeJobListSearchForm.lng && that.storeJobListSearchForm.lat) {
that.storeJobListSearchForm.sortTag = 2;
that.setData({
firstMenu: '距离',
// storeJobListSearchForm: tha t.data.storeJobListSearchForm,
recordList: []
});
that.getJobList().then(() => {
that.setData({
siv: 'menu'
});
});
} else {
uni.getLocation({
type: 'gcj02',
success(res1) {
console.log('获取位置1');
app.globalData.lng = res1.longitude;
app.globalData.lat = res1.latitude;
that.storeJobListSearchForm.lng = res1.longitude;
that.storeJobListSearchForm.lat = res1.latitude;
that.storeJobListSearchForm.sortTag = 2;
that.storeJobListSearchForm.pageNum = 1;
that.setData({
firstMenu: '距离',
storeJobListSearchForm: that.storeJobListSearchForm,
recordList: []
});
that.getJobList().then(() => {
that.setData({
siv: 'menu'
});
});
},
fail() {
console.log('获取位置失败,打开位置设置界面');
}
});
}
} else if (str == 'zuigao') {
//工价最高
that.storeJobListSearchForm.sortTag = 1;
that.storeJobListSearchForm.pageNum = 1;
that.setData({
storeJobListSearchForm: that.storeJobListSearchForm,
firstMenu: '工价',
recordList: []
});
that.getJobList().then(() => {
that.setData({
siv: 'menu'
});
});
}
that.setData({
activez: str
});
that.setData({
whichOneShow: '',
siv: ''
});
// setTimeout(() => {
// that.setData({
// whichOneShow: "",
// });
// console.log(this.data.whichOneShow);
// console.log("112233");
// }, 1);
},
/**
* 清除所有的筛选项
*
*
*/
clearFilter() {
let that = this;
that.jobSpecialLabelList.forEach((item) => {
// console.log(item);
if (item.checked) {
item.checked = false;
}
});
that.brandList.forEach((item) => {
if (item.checked) {
item.checked = false;
}
});
that.storeJobListSearchForm.jobSpecialLabelIds = '';
// that.data.storeJobListSearchForm.ujc =
// that.data.storeJobListSearchForm.brandIds = "";
that.storeJobListSearchForm.jobCategoryLabelIds = '';
that.storeJobListSearchForm.pageNum = 1;
that.storeJobListSearchForm.sortTag = 0;
that.storeJobListSearchForm.sex = -1;
that.setData({
jobSpecialLabelList: that.jobSpecialLabelList,
tagArray0: that.tagArray0,
tagArray1: that.tagArray1,
tagArray2: that.tagArray2,
tagArray3: that.tagArray3,
brandList: that.brandList,
selectJobList: [],
selectBrandList: [],
recordList: [],
whichOneShow: '',
firstMenu: '排序',
secondMenu: '不限',
sexid: -1,
activez: 'all'
});
if (!that.isWannaShow) {
// that.choiceFilter({
// currentTarget: {
// dataset: {
// id: "all",
// },
// },
// });
// that.choiceSex({
// currentTarget: {
// dataset: {
// id: "-1",
// },
// },
// });
that.getJobList('isWannaShow');
}
},
scroll(e) {
e.preventDefault();
e.stopPropagation();
},
stoptap(e) {
e.preventDefault();
e.stopPropagation();
},
changeContact() {
console.log(2123);
uni.navigateTo({
url: `/pages/configAnnunciate/index`
});
},
/**
* 简版报名
*
*
*/
hidedrawershow(e) {
console.log(e);
this.setData({
[e.detail.type]: false
});
uni.showTabBar({
animation: false,
success: (result) => {},
fail: () => {},
complete: () => {}
});
},
hideDrawer() {
let that = this;
this.getTabBar().setData({
isShow: true
});
that.setData({
drawerShow: false
});
// this.getJobList();
// setTimeout(() => {
// wx.showTabBar({
// success(e) {},
// });
// }, 300);
},
recordBill(e) {
// if (!this.data.isLogin) {
// wx.navigateTo({
// url: "/pages/login/index",
// });
// return;
// }
console.log(e.currentTarget.dataset.job);
this.setData({
recordShow: true,
currentInfo: e.currentTarget.dataset.job
});
console.log(this.recordShow);
uni.hideTabBar({
animation: false,
success: (result) => {},
fail: () => {},
complete: () => {}
});
return;
console.log(e.currentTarget.dataset.job);
console.log(123);
let middleInfo = e.currentTarget.dataset.job;
let info = JSON.stringify({
id: middleInfo.id,
jobName: middleInfo.jobName,
storeName: middleInfo.storeName,
aliasName: middleInfo.aliasName,
storeId: middleInfo.storeId
});
console.log(info);
uni.navigateTo({
url: `../../newEnroll/enroll/index?applyType=1&info=${info}`
});
// wx.navigateTo({
// url: `../newEnroll/enroll/index?applyType=1&info=${info}`,
// });
},
imageLoad() {
this.setData({
isLoading: false
});
},
setKey(e) {
console.log(e);
let data = e.currentTarget.dataset.key;
this.storeJobListSearchForm.keys = data;
this.setData({
inputVal: data,
isWannaShow: false
});
this.setHistoryList();
this.getJobList();
},
/**
* 存最近搜索调用的函数
*
*
*/
funQC(arr) {
let newsArr = [];
for (let i = 0; i < arr.length; i++) {
if (app.globalData.isEmptyCheck(arr[i])) {
continue;
}
if (newsArr.indexOf(arr[i]) === -1) {
newsArr.push(arr[i]);
}
}
return newsArr;
},
/**
* 删除最近搜索
*
*
*/
closeDialog() {
this.setData({
iosDialog: false
});
},
/**
* 阻止滑动穿透
*
*
*/
clearNearSearch() {
let that = this;
uni.showModal({
title: '删除最近搜索',
content: '确定删除所有的最近搜索吗?',
contentColor: '#ccc',
confirmColor: '#ff4400',
confirmText: '确定',
cancelText: '取消',
success(res) {
console.log(res);
if (res.confirm) {
that.setData({
historyList: []
});
uni.removeStorageSync('projectSearch');
uni.showToast({
title: '已删除',
icon: 'none'
});
}
}
});
},
modalMove() {
return false;
}
}
};
</script>
<style>
@import './index.css';
</style>