flat: 基础修改

This commit is contained in:
Apcallover
2024-04-14 14:32:17 +08:00
parent c4f62b6efb
commit 05686b2bba
11 changed files with 4459 additions and 4193 deletions

View File

@@ -93,14 +93,10 @@ export const findTradeList = () => {
}) })
} }
export const addInviteCompanyAuth = ({ export const addInviteCompanyAuth = (params) => {
params,
data
}) => {
return request({ return request({
url: '/api/jobslink-api/tenant/company/app/inviteCompany/auth', url: '/api/jobslink-api/tenant/company/app/inviteCompany/auth',
method: 'post', method: 'post',
data,
params params
}) })
} }

View File

@@ -65,10 +65,15 @@
</template> </template>
<script> <script>
import {classifyData, classifyData2} from './classifyData.js'; import {
console.log(classifyData, classifyData2) classifyData,
import { getTrade } from '@/api/resume.js' classifyData2
export default { } from './classifyData.js';
console.log(classifyData, classifyData2)
import {
getTrade
} from '@/api/resume.js'
export default {
props: { props: {
closePopUp: { closePopUp: {
type: Function, type: Function,
@@ -114,7 +119,9 @@ export default {
}, },
industryModal: { industryModal: {
industry: "", industry: "",
industryList: [[]], industryList: [
[]
],
industryShow: false, industryShow: false,
isClickIndustry: false, isClickIndustry: false,
}, },
@@ -124,8 +131,8 @@ export default {
} }
}, },
created: function () { created: function() {
if(!this.isTask) { if (!this.isTask) {
this.tabbar = classifyData2 this.tabbar = classifyData2
} }
this.getData() this.getData()
@@ -134,7 +141,7 @@ export default {
methods: { methods: {
getData: function () { getData: function() {
getTrade().then(res => { getTrade().then(res => {
console.log(res.data.data); console.log(res.data.data);
const newData = this.tabbar; const newData = this.tabbar;
@@ -272,7 +279,11 @@ export default {
}).exec() }).exec()
}) })
}, },
clickFunc({ type, bigObj, smallObj }) { clickFunc({
type,
bigObj,
smallObj
}) {
this.canSubmit = true; this.canSubmit = true;
switch (type) { switch (type) {
case "industry": case "industry":
@@ -333,56 +344,60 @@ export default {
this.industryModal.industry = ""; this.industryModal.industry = "";
} }
console.log(this.submitData, this.areaModal, this.industryModal); console.log(this.submitData, this.areaModal, this.industryModal);
this.subMitPopUp({ submitData: this.submitData, areaModal: this.areaModal, industryModal: this.industryModal }) this.subMitPopUp({
submitData: this.submitData,
areaModal: this.areaModal,
industryModal: this.industryModal
})
} }
} }
} }
</script> </script>
<style lang="scss" scoped> <style lang="scss" scoped>
.u-wrap { .u-wrap {
height: calc(100vh); height: calc(100vh);
/* #ifdef H5 */ /* #ifdef H5 */
height: calc(100vh - var(--window-top)); height: calc(100vh - var(--window-top));
/* #endif */ /* #endif */
display: flex; display: flex;
flex-direction: column; flex-direction: column;
} }
.u-search-box { .u-search-box {
padding: 18rpx 30rpx; padding: 18rpx 30rpx;
} }
.u-menu-wrap { .u-menu-wrap {
flex: 100; flex: 100;
display: flex; display: flex;
overflow: hidden; overflow: hidden;
} }
.u-search-inner { .u-search-inner {
background-color: rgb(234, 234, 234); background-color: rgb(234, 234, 234);
border-radius: 100rpx; border-radius: 100rpx;
display: flex; display: flex;
align-items: center; align-items: center;
padding: 10rpx 16rpx; padding: 10rpx 16rpx;
} }
.u-search-text { .u-search-text {
font-size: 26rpx; font-size: 26rpx;
color: #ccc; color: #ccc;
margin-left: 10rpx; margin-left: 10rpx;
} }
.u-tab-view { .u-tab-view {
width: 200rpx; width: 200rpx;
height: 100%; height: 100%;
} }
.u-tab-item { .u-tab-item {
height: 110rpx; height: 110rpx;
background: #f6f6f6; background: #f6f6f6;
box-sizing: border-box; box-sizing: border-box;
@@ -393,66 +408,66 @@ export default {
color: #444; color: #444;
font-weight: 400; font-weight: 400;
line-height: 1; line-height: 1;
} }
.u-tab-item-active { .u-tab-item-active {
position: relative; position: relative;
color: #000; color: #000;
font-size: 30rpx; font-size: 30rpx;
font-weight: 600; font-weight: 600;
background: #fff; background: #fff;
} }
.u-tab-item-active::before { .u-tab-item-active::before {
content: ""; content: "";
position: absolute; position: absolute;
border-left: 4px solid skyblue; border-left: 4px solid skyblue;
height: 32rpx; height: 32rpx;
left: 0; left: 0;
top: 39rpx; top: 39rpx;
} }
.u-tab-view { .u-tab-view {
height: 100%; height: 100%;
} }
.right-box { .right-box {
background-color: rgb(250, 250, 250); background-color: rgb(250, 250, 250);
} }
.page-view { .page-view {
padding: 8rpx; padding: 8rpx;
padding-left: 4rpx; padding-left: 4rpx;
} }
.class-item { .class-item {
margin-bottom: 10rpx; margin-bottom: 10rpx;
background-color: #fff; background-color: #fff;
padding: 16rpx; padding: 16rpx;
border-radius: 8rpx; border-radius: 8rpx;
} }
.class-item:last-child { .class-item:last-child {
min-height: 100vh; min-height: 100vh;
} }
.item-title { .item-title {
font-size: 28rpx; font-size: 28rpx;
font-weight: bold; font-weight: bold;
} }
.item-menu-name { .item-menu-name {
font-weight: normal; font-weight: normal;
font-size: 26rpx; font-size: 26rpx;
} }
.item-container { .item-container {
display: flex; display: flex;
flex-wrap: wrap; flex-wrap: wrap;
} }
.thumb-box { .thumb-box {
width: 43%; width: 43%;
line-height: 80rpx; line-height: 80rpx;
display: flex; display: flex;
@@ -465,49 +480,49 @@ export default {
background-color: #f3f4f8; background-color: #f3f4f8;
border: 1px solid #f3f4f8; border: 1px solid #f3f4f8;
color: #666666; color: #666666;
} }
.thumb-box1 { .thumb-box1 {
width: 90%; width: 90%;
} }
.selected-box { .selected-box {
background-color: #e3eafe; background-color: #e3eafe;
border: 1px solid #92adfb; border: 1px solid #92adfb;
color: #92adfb !important; color: #92adfb !important;
} }
.item-menu-image { .item-menu-image {
width: 120rpx; width: 120rpx;
height: 120rpx; height: 120rpx;
} }
.buttonWrapper { .buttonWrapper {
// position: absolute; // position: absolute;
// bottom: 10px; // bottom: 10px;
display: flex; display: flex;
justify-content: space-around; justify-content: space-around;
margin-bottom: -10px; margin-bottom: -10px;
margin-top: 10px; margin-top: 10px;
} }
.cancelButton { .cancelButton {
padding: 15rpx 30rpx; padding: 15rpx 120rpx;
background-color: #f3f4f8; background-color: #f3f4f8;
border-radius: 5px; border-radius: 5px;
color: #9b9b9b; color: #9b9b9b;
} }
.sureButton { .sureButton {
padding: 15rpx 150rpx; padding: 15rpx 120rpx;
background-color: #4171f9; background-color: #4171f9;
color: #fff; color: #fff;
border-radius: 5px; border-radius: 5px;
} }
.noSubMitButton { .noSubMitButton {
background-color: #f3f4f8; background-color: #f3f4f8;
color: #9b9b9b; color: #9b9b9b;
} }
</style> </style>

View File

@@ -51,7 +51,7 @@
<view class="jobinfo"> <view class="jobinfo">
<view <view
v-bind:class="['jobAddress', { 'input-error': !myResume.city.id && !myResume.city.workplace && isShowBorder }]"> v-bind:class="['jobAddress', { 'input-error': !myResume.city.id && !myResume.city.workplace && isShowBorder }]">
想工作的地点 想工作的地点
</view> </view>
<view v-bind:class="['jobText']"> <view v-bind:class="['jobText']">
{{ myResume.city !== "{}" ? myResume.city.id ? getCity(myResume.city.id) : myResume.city.workplace : {{ myResume.city !== "{}" ? myResume.city.id ? getCity(myResume.city.id) : myResume.city.workplace :
@@ -64,7 +64,7 @@
<view class="jobcontent" @click="showPickerFunc('education')"> <view class="jobcontent" @click="showPickerFunc('education')">
<view class="jobinfo"> <view class="jobinfo">
<view v-bind:class="['jobAddress', { 'input-error': !myResume.education.label && isShowBorder }]"> <view v-bind:class="['jobAddress', { 'input-error': !myResume.education.label && isShowBorder }]">
的学历 的学历
</view> </view>
<view v-bind:class="['jobText']"> <view v-bind:class="['jobText']">
{{ myResume.education !== "{}" ? myResume.education.label : '请选择' }} {{ myResume.education !== "{}" ? myResume.education.label : '请选择' }}
@@ -75,7 +75,7 @@
<view class="jobcontent" @click="showPickerFunc('wage')"> <view class="jobcontent" @click="showPickerFunc('wage')">
<view class="jobinfo"> <view class="jobinfo">
<view v-bind:class="['jobAddress', { 'input-error': !myResume.wage && isShowBorder }]"> <view v-bind:class="['jobAddress', { 'input-error': !myResume.wage && isShowBorder }]">
的期望薪资 的期望薪资
</view> </view>
<view v-bind:class="['jobText']"> <view v-bind:class="['jobText']">
{{ myResume.wage ? myResume.wage : '请选择' }} {{ myResume.wage ? myResume.wage : '请选择' }}
@@ -86,7 +86,7 @@
<view class="jobcontent"> <view class="jobcontent">
<view class="jobinfo"> <view class="jobinfo">
<view v-bind:class="['jobAddress', { 'input-error': !myResume.phone && isShowBorder }]"> <view v-bind:class="['jobAddress', { 'input-error': !myResume.phone && isShowBorder }]">
的联系方式 的联系方式
</view> </view>
<u--input :value="myResume.phone" @focus="setPhoneFunc1" @change="setPhoneFunc" type="number" <u--input :value="myResume.phone" @focus="setPhoneFunc1" @change="setPhoneFunc" type="number"
placeholder="请输入您的电话" border="none" clearable></u--input> placeholder="请输入您的电话" border="none" clearable></u--input>
@@ -113,21 +113,21 @@
</template> </template>
<script> <script>
import { import {
mapGetters mapGetters
} from 'vuex' } from 'vuex'
import { import {
mySkills, mySkills,
myResume, myResume,
removeSkills, removeSkills,
setCity, setCity,
setLearn, setLearn,
setResume setResume
} from '@/api/resume.js'; } from '@/api/resume.js';
import mSlideList from '@/components/mark-slide-list/mark-slide-list.vue'; import mSlideList from '@/components/mark-slide-list/mark-slide-list.vue';
import controller from '@/components/mark-slide-list/controller'; import controller from '@/components/mark-slide-list/controller';
export default { export default {
components: { components: {
mSlideList mSlideList
}, },
@@ -150,7 +150,9 @@ export default {
}], }],
showPicker: false, showPicker: false,
showType: "", showType: "",
columns: [[]], columns: [
[]
],
canSubMit: false, canSubMit: false,
isShowButton: false, isShowButton: false,
@@ -180,7 +182,7 @@ export default {
}, },
watch: { watch: {
myResume: { myResume: {
handler: function (newVal, oldVal) { handler: function(newVal, oldVal) {
if (newVal.city && newVal.education && newVal.wage && newVal.phone) { if (newVal.city && newVal.education && newVal.wage && newVal.phone) {
this.canSubMit = true; this.canSubMit = true;
} else { } else {
@@ -195,15 +197,19 @@ export default {
myResume().then(res => { myResume().then(res => {
const data = res.data.data const data = res.data.data
this.myResume = { this.myResume = {
city: { workplace: data.workplace }, city: {
education: { label: data.education }, workplace: data.workplace
},
education: {
label: data.education
},
wage: data.wage, wage: data.wage,
phone: data.telephone phone: data.telephone
} }
this.isShowButton = false; this.isShowButton = false;
if (data && data.id) { if (data && data.id) {
this.id = data.id this.id = data.id
console.log(this.id,'-----------------------------'); console.log(this.id, '-----------------------------');
} }
}); });
}, },
@@ -212,7 +218,7 @@ export default {
this.mySkills = res.data.data; this.mySkills = res.data.data;
}) })
}, },
goWantSkill: function () { goWantSkill: function() {
uni.$off('getWantSkill') uni.$off('getWantSkill')
uni.$once('getWantSkill', (cb) => { uni.$once('getWantSkill', (cb) => {
cb(this.myResume.learnSkill) cb(this.myResume.learnSkill)
@@ -233,9 +239,11 @@ export default {
url: './setWskill?id=' + this.id url: './setWskill?id=' + this.id
}) })
}, },
goSetCity: function () { goSetCity: function() {
uni.$off('setCity') uni.$off('setCity')
uni.$on('setCity', ({ detail }) => { uni.$on('setCity', ({
detail
}) => {
console.log(detail, '---------------'); console.log(detail, '---------------');
this.isShowButton = true this.isShowButton = true
this.myResume.city = detail this.myResume.city = detail
@@ -248,18 +256,18 @@ export default {
url: `/pages/setCity/setCity?maxLayer=2` url: `/pages/setCity/setCity?maxLayer=2`
}) })
}, },
goAdd: function () { goAdd: function() {
uni.navigateTo({ uni.navigateTo({
url: './addSkill' url: './addSkill'
}) })
}, },
goUserBase: function () { goUserBase: function() {
uni.navigateTo({ uni.navigateTo({
url: '../userBase' url: '../userBase'
}) })
}, },
getCity: function (val) { getCity: function(val) {
if (val) { if (val) {
let areas = this.$store.getters.getAreaParents(val) let areas = this.$store.getters.getAreaParents(val)
if (areas.length) { if (areas.length) {
@@ -267,7 +275,7 @@ export default {
} }
} }
}, },
removeSkills: function (id, index) { removeSkills: function(id, index) {
removeSkills(id).then(res => { removeSkills(id).then(res => {
uni.showToast({ uni.showToast({
title: '操作成功', title: '操作成功',
@@ -280,18 +288,49 @@ export default {
this.showType = type; this.showType = type;
switch (type) { switch (type) {
case "education": case "education":
this.columns = this.columns = [
[[ [{
{ label: 'MBA/EMBA', value: 0 }, { label: '博士', value: 1 }, { label: '硕士', value: 2 }, { label: '本科', value: 3 }, label: 'MBA/EMBA',
{ label: '大专', value: 4 }, { label: '高中', value: 5 }, { label: '中专/中技', value: 6 }, { label: '初中及以下,', value: 7 }, value: 0
{ label: '不限', value: 8 } }, {
]] label: '博士',
value: 1
}, {
label: '硕士',
value: 2
}, {
label: '本科',
value: 3
},
{
label: '大专',
value: 4
}, {
label: '高中',
value: 5
}, {
label: '中专/中技',
value: 6
}, {
label: '初中及以下,',
value: 7
},
{
label: '不限',
value: 8
}
]
]
break; break;
case "wage": case "wage":
this.columns = [['10-15元/小时', '16-20元/小时', '21-25元/小时', '26-30元/小时', '30元/小时以上', '100-150元/天', '151-200元/天' this.columns = [
, '201-250元/天', '251-300元/', "300元/天以上", "2000元以下/月", "2000-5000元/月", "5000-8000元/月", ['10-15元/小时', '16-20元/小时', '21-25元/小时', '26-30元/小时', '30元/小时以上', '100-150元/天',
"8000-10000元/月", "10000-15000元/月", "15000-20000元/月", "20000-25000元/月", "25000-30000元/月", "30000元以上/月", "面议、暂无要求" '151-200元/天', '201-250元/天', '251-300元/天', "300元/天以上", "2000元以下/月",
]] "2000-5000元/月", "5000-8000元/月",
"8000-10000元/月", "10000-15000元/月", "15000-20000元/月", "20000-25000元/月",
"25000-30000元/月", "30000元以上/月", "面议、暂无要求"
]
]
break; break;
@@ -328,7 +367,12 @@ export default {
console.log(this.myResume); console.log(this.myResume);
this.isShowBorder = true; this.isShowBorder = true;
if (!this.canSubMit) return; if (!this.canSubMit) return;
const { city, education, phone, wage } = this.myResume const {
city,
education,
phone,
wage
} = this.myResume
// 中国大陆手机号码正则表达式 // 中国大陆手机号码正则表达式
const mobileRegex = /\b(1[3-9]\d{9})\b/; const mobileRegex = /\b(1[3-9]\d{9})\b/;
// 中国大陆座机号码正则表达式 // 中国大陆座机号码正则表达式
@@ -339,7 +383,11 @@ export default {
// 电话号码格式正确 // 电话号码格式正确
console.log(phone, "电话号码格式正确"); console.log(phone, "电话号码格式正确");
setResume({ setResume({
id: this.id, education: education.label, workplace: city.workplace ? city.workplace : city.parentLabel + '-' + city.label, telephone: phone, wage id: this.id,
education: education.label,
workplace: city.workplace ? city.workplace : city.parentLabel + '-' + city.label,
telephone: phone,
wage
}).then(res => { }).then(res => {
this.isShowButton = false; this.isShowButton = false;
this.getResume() this.getResume()
@@ -366,36 +414,36 @@ export default {
this.areaModal.addressShow = false this.areaModal.addressShow = false
}, },
} }
} }
</script> </script>
<style> <style>
.border { .border {
margin-left: 30rpx; margin-left: 30rpx;
width: 720rpx; width: 720rpx;
border: 1rpx solid #f2f2f2; border: 1rpx solid #f2f2f2;
/* height: 1rpx; /* height: 1rpx;
background-color: #ddd; */ background-color: #ddd; */
} }
.jobText { .jobText {
font-family: PingFangSC-Regular; font-family: PingFangSC-Regular;
font-size: 32rpx; font-size: 32rpx;
color: #666666; color: #666666;
} }
.jobAddress { .jobAddress {
font-family: PingFangSC-Regular; font-family: PingFangSC-Regular;
font-size: 28rpx; font-size: 28rpx;
color: #999999; color: #999999;
} }
.nochoose { .nochoose {
/* color: #ccc; */ /* color: #ccc; */
} }
.jobcontent { .jobcontent {
padding: 30rpx; padding: 30rpx;
background: #fff; background: #fff;
display: flex; display: flex;
@@ -403,16 +451,16 @@ export default {
justify-content: space-between; justify-content: space-between;
line-height: 63rpx; line-height: 63rpx;
border: 1px solid #fff; border: 1px solid #fff;
} }
.jobcontent image { .jobcontent image {
width: 40rpx; width: 40rpx;
height: 40rpx; height: 40rpx;
} }
.listBody {} .listBody {}
.list_text { .list_text {
font-family: PingFangSC-Regular; font-family: PingFangSC-Regular;
font-size: 32rpx; font-size: 32rpx;
color: #666666; color: #666666;
@@ -421,15 +469,15 @@ export default {
/* white-space: nowrap; */ /* white-space: nowrap; */
overflow-wrap: break-word; overflow-wrap: break-word;
word-wrap: break-word; word-wrap: break-word;
} }
.list image { .list image {
width: 40rpx; width: 40rpx;
height: 40rpx; height: 40rpx;
margin-left: auto; margin-left: auto;
} }
.list { .list {
padding: 0 15px 0 30rpx; padding: 0 15px 0 30rpx;
height: 126rpx; height: 126rpx;
/* line-height: 126rpx; */ /* line-height: 126rpx; */
@@ -437,14 +485,14 @@ export default {
border-bottom: 1px solid #f2f2f2; border-bottom: 1px solid #f2f2f2;
display: flex; display: flex;
align-items: center; align-items: center;
} }
.title image { .title image {
width: 40rpx; width: 40rpx;
height: 40rpx; height: 40rpx;
} }
.title { .title {
font-family: PingFangSC-Regular; font-family: PingFangSC-Regular;
font-size: 28rpx; font-size: 28rpx;
color: #999999; color: #999999;
@@ -455,55 +503,55 @@ export default {
align-items: center; align-items: center;
justify-content: space-between; justify-content: space-between;
border: 1rpx solid #f2f2f2; border: 1rpx solid #f2f2f2;
} }
.userInfo { .userInfo {
font-family: PingFangSC-Regular; font-family: PingFangSC-Regular;
font-size: 24rpx; font-size: 24rpx;
color: #999999; color: #999999;
} }
.name { .name {
margin-left: 20rpx; margin-left: 20rpx;
font-family: PingFangSC-Medium; font-family: PingFangSC-Medium;
font-size: 36rpx; font-size: 36rpx;
color: #333333; color: #333333;
line-height: 50rpx; line-height: 50rpx;
} }
.head image:last-child { .head image:last-child {
width: 40rpx; width: 40rpx;
height: 40rpx; height: 40rpx;
margin-left: auto; margin-left: auto;
} }
.head image { .head image {
width: 100rpx; width: 100rpx;
height: 100rpx; height: 100rpx;
} }
page { page {
background-color: #FFFFFF; background-color: #FFFFFF;
} }
.head { .head {
padding: 30rpx; padding: 30rpx;
width: 690rpx; width: 690rpx;
background-color: #fff; background-color: #fff;
display: flex; display: flex;
align-items: center; align-items: center;
justify-content: flex-start; justify-content: flex-start;
} }
.saveWrapper { .saveWrapper {
width: 80%; width: 80%;
padding: 20rpx; padding: 20rpx;
margin: 0 auto; margin: 0 auto;
padding-bottom: 60rpx; padding-bottom: 60rpx;
} }
.input-error { .input-error {
color: red; color: red;
} }
</style> </style>

View File

@@ -57,7 +57,7 @@
{ {
"path": "pages/project/project", "path": "pages/project/project",
"style": { "style": {
"navigationBarTitleText": "德阳市灵活就业平台", "navigationBarTitleText": "招聘",
"navigationBarBackgroundColor": "#FFFFFF", "navigationBarBackgroundColor": "#FFFFFF",
"enablePullDownRefresh": true "enablePullDownRefresh": true
} }
@@ -131,7 +131,7 @@
{ {
"path": "pages/seach/seach", "path": "pages/seach/seach",
"style": { "style": {
"navigationBarTitleText": "德阳市灵活就业平台", "navigationBarTitleText": "搜索",
"navigationBarBackgroundColor": "#FFFFFF" "navigationBarBackgroundColor": "#FFFFFF"
} }
}, },
@@ -226,12 +226,14 @@
"path": "pages/recruit/recruit", "path": "pages/recruit/recruit",
"style": { "style": {
"navigationBarTitleText": "我要招工", "navigationBarTitleText": "我要招工",
"navigationBarBackgroundColor": "#FFFFFF",
"enablePullDownRefresh": false "enablePullDownRefresh": false
} }
}, },
{ {
"path": "pages/recruit/reform", "path": "pages/recruit/reform",
"style": { "style": {
"navigationBarBackgroundColor": "#FFFFFF",
"navigationBarTitleText": "个体招工", "navigationBarTitleText": "个体招工",
"enablePullDownRefresh": false "enablePullDownRefresh": false
} }
@@ -241,6 +243,7 @@
"style": { "style": {
"navigationBarTitleText": "招工列表", "navigationBarTitleText": "招工列表",
"enablePullDownRefresh": false, "enablePullDownRefresh": false,
"navigationBarBackgroundColor": "#FFFFFF",
"navigationStyle": "custom" "navigationStyle": "custom"
} }
}, },
@@ -248,6 +251,7 @@
"path": "pages/recruit/subPage/MessageList", "path": "pages/recruit/subPage/MessageList",
"style": { "style": {
"navigationBarTitleText": "申请消息", "navigationBarTitleText": "申请消息",
"navigationBarBackgroundColor": "#FFFFFF",
"enablePullDownRefresh": false, "enablePullDownRefresh": false,
"navigationStyle": "custom" "navigationStyle": "custom"
} }
@@ -256,6 +260,7 @@
"path": "pages/recruit/subPage/jobProjectList", "path": "pages/recruit/subPage/jobProjectList",
"style": { "style": {
"navigationBarTitleText": "推送岗位", "navigationBarTitleText": "推送岗位",
"navigationBarBackgroundColor": "#FFFFFF",
"enablePullDownRefresh": false "enablePullDownRefresh": false
} }
}, },
@@ -278,6 +283,7 @@
"path": "pages/recruit/subPage/taskProjectList", "path": "pages/recruit/subPage/taskProjectList",
"style": { "style": {
"navigationBarTitleText": "推送任务", "navigationBarTitleText": "推送任务",
"navigationBarBackgroundColor": "#FFFFFF",
"enablePullDownRefresh": false "enablePullDownRefresh": false
} }
}, },
@@ -285,6 +291,7 @@
"path": "pages/recruit/subPage/policyList", "path": "pages/recruit/subPage/policyList",
"style": { "style": {
"navigationBarTitleText": "推送政策", "navigationBarTitleText": "推送政策",
"navigationBarBackgroundColor": "#FFFFFF",
"enablePullDownRefresh": false "enablePullDownRefresh": false
} }
}, },
@@ -292,6 +299,7 @@
"path": "pages/recruit/subPage/recruit", "path": "pages/recruit/subPage/recruit",
"style": { "style": {
"navigationBarTitleText": "发布招工", "navigationBarTitleText": "发布招工",
"navigationBarBackgroundColor": "#FFFFFF",
"enablePullDownRefresh": false, "enablePullDownRefresh": false,
"navigationStyle": "custom" "navigationStyle": "custom"
} }
@@ -300,6 +308,7 @@
"path": "pages/recruit/subPage/task", "path": "pages/recruit/subPage/task",
"style": { "style": {
"navigationBarTitleText": "", "navigationBarTitleText": "",
"navigationBarBackgroundColor": "#FFFFFF",
"enablePullDownRefresh": false "enablePullDownRefresh": false
} }
}, },
@@ -307,6 +316,7 @@
"path": "pages/recruit/subPage/work", "path": "pages/recruit/subPage/work",
"style": { "style": {
"navigationBarTitleText": "", "navigationBarTitleText": "",
"navigationBarBackgroundColor": "#FFFFFF",
"enablePullDownRefresh": false "enablePullDownRefresh": false
} }
}, },
@@ -314,6 +324,7 @@
"path": "pages/recruit/subPage/person", "path": "pages/recruit/subPage/person",
"style": { "style": {
"navigationBarTitleText": "", "navigationBarTitleText": "",
"navigationBarBackgroundColor": "#FFFFFF",
"enablePullDownRefresh": false "enablePullDownRefresh": false
} }
}, },
@@ -342,6 +353,7 @@
"path": "pages/news/jobProjectList", "path": "pages/news/jobProjectList",
"style": { "style": {
"navigationBarTitleText": "推送岗位", "navigationBarTitleText": "推送岗位",
"navigationBarBackgroundColor": "#FFFFFF",
"enablePullDownRefresh": false "enablePullDownRefresh": false
} }
}, },
@@ -349,6 +361,7 @@
"path": "pages/news/taskProjectList", "path": "pages/news/taskProjectList",
"style": { "style": {
"navigationBarTitleText": "推送任务", "navigationBarTitleText": "推送任务",
"navigationBarBackgroundColor": "#FFFFFF",
"enablePullDownRefresh": false "enablePullDownRefresh": false
} }
}, },
@@ -356,6 +369,7 @@
"path": "pages/news/policyList", "path": "pages/news/policyList",
"style": { "style": {
"navigationBarTitleText": "推送政策", "navigationBarTitleText": "推送政策",
"navigationBarBackgroundColor": "#FFFFFF",
"enablePullDownRefresh": false "enablePullDownRefresh": false
} }
}, },
@@ -371,19 +385,17 @@
} }
}, },
{ {
"path" : "pages/recruit/subPage/enterpriceCertification/enterpriceCertification", "path": "pages/recruit/subPage/enterpriceCertification/enterpriceCertification",
"style" : "style": {
{ "navigationBarTitleText": "企业认证",
"navigationBarTitleText" : "企业认证", "navigationBarBackgroundColor": "#FFFFFF",
"enablePullDownRefresh" : false "enablePullDownRefresh": false
} }
} }
], ],
"subPackages": [ "subPackages": [{
{
"root": "pageMy", "root": "pageMy",
"pages": [ "pages": [{
{
"path": "federation/forMembership/password", "path": "federation/forMembership/password",
"style": { "style": {
"navigationBarTitleText": "", "navigationBarTitleText": "",
@@ -694,8 +706,7 @@
} }
} }
] ]
} }],
],
"globalStyle": { "globalStyle": {
"navigationBarTextStyle": "black", "navigationBarTextStyle": "black",
"navigationBarTitleText": "", "navigationBarTitleText": "",
@@ -712,8 +723,7 @@
"fontSize": "12px", "fontSize": "12px",
"iconWidth": "24px", "iconWidth": "24px",
"selectedColor": "#1B66FF", "selectedColor": "#1B66FF",
"list": [ "list": [{
{
"pagePath": "pages/index/index", "pagePath": "pages/index/index",
"iconPath": "static/img/tabbar/home.png", "iconPath": "static/img/tabbar/home.png",
"selectedIconPath": "static/img/tabbar/homeactive.png", "selectedIconPath": "static/img/tabbar/homeactive.png",

View File

@@ -8,7 +8,7 @@
<view class="headd_left"> <view class="headd_left">
<u-icon name="search" color="#2297fa" size="24"></u-icon> <u-icon name="search" color="#2297fa" size="24"></u-icon>
<input placeholder-class="search_style" type="text" confirm-type="搜索" v-model="keywords" <input placeholder-class="search_style" type="text" confirm-type="搜索" v-model="keywords"
placeholder="搜任务/搜岗位/搜个体户招工/搜政策" /> placeholder="搜任务/搜岗位/搜政策" />
</view> </view>
<view class="headd_right"> <view class="headd_right">
搜索 搜索

View File

@@ -93,22 +93,24 @@
</template> </template>
<script> <script>
import vTabs from '@/components/v-tabs/v-tabs.vue'; import vTabs from '@/components/v-tabs/v-tabs.vue';
import testData from '@/common/textdata.js'; import testData from '@/common/textdata.js';
import companyList from '@/components/companyList/companyList.vue'; import companyList from '@/components/companyList/companyList.vue';
import workList from '@/components/companyList/workList.vue' import workList from '@/components/companyList/workList.vue'
import { import {
newMissionAll, newMissionAll,
recommendMission, recommendMission,
nearMission nearMission
} from '@/api/mission.js'; } from '@/api/mission.js';
import { getPolicyContent } from '@/api/newIndex.js' import {
import { getPolicyContent
} from '@/api/newIndex.js'
import {
getcoder getcoder
} from "@/api/map.js"; } from "@/api/map.js";
import verticalMenu from '@/components/vertical-menu/vertical-menu.vue'; import verticalMenu from '@/components/vertical-menu/vertical-menu.vue';
export default { export default {
components: { components: {
vTabs, vTabs,
companyList, companyList,
@@ -151,14 +153,22 @@ export default {
nonReactiveArray: ["最新任务", "最新岗位", "政策资讯"], nonReactiveArray: ["最新任务", "最新岗位", "政策资讯"],
} }
}, },
onLoad: function (option) { onLoad: function(option) {
if (option.tabIndex) { if (option.tabIndex) {
this.activeTab = option.tabIndex this.activeTab = option.tabIndex
} }
this.getData() this.getData()
this.getPolicy() this.getPolicy()
}, },
onShow: function () { onShow: function() {
const enumTitle = {
"0": '最新任务',
"1": '最新岗位',
"2": '最新政策',
}
uni.setNavigationBarTitle({
title: enumTitle[this.activeTab]
})
if (this.$store.state.user.token) { if (this.$store.state.user.token) {
this.$store.dispatch('refreshAuthState').then((e) => { this.$store.dispatch('refreshAuthState').then((e) => {
var auth = this.$store.state.auth var auth = this.$store.state.auth
@@ -175,11 +185,11 @@ export default {
} }
}, },
/*页面滚动到底部 换页*/ /*页面滚动到底部 换页*/
onReachBottom: function () { onReachBottom: function() {
this.upLoad() this.upLoad()
}, },
/*下拉刷新*/ /*下拉刷新*/
onPullDownRefresh: function () { onPullDownRefresh: function() {
if (!this.$store.state.user.token) { if (!this.$store.state.user.token) {
uni.redirectTo({ uni.redirectTo({
url: "/pages/login/login" url: "/pages/login/login"
@@ -197,7 +207,7 @@ export default {
content: `检查到您还未实名认证,实名认证之后才可进行操作哦`, content: `检查到您还未实名认证,实名认证之后才可进行操作哦`,
showCancel: false, showCancel: false,
confirmText: '立即认证', confirmText: '立即认证',
success: function (res) { success: function(res) {
if (res.confirm) { if (res.confirm) {
that.goSign(0) that.goSign(0)
} else if (res.cancel) { } else if (res.cancel) {
@@ -213,17 +223,17 @@ export default {
url: `/pages/projectInfo/signContract?active=${active}` url: `/pages/projectInfo/signContract?active=${active}`
}) })
}, },
goResume: function () { goResume: function() {
uni.navigateTo({ uni.navigateTo({
url: '/pageMy/my/resume/addSkill' url: '/pageMy/my/resume/addSkill'
}) })
}, },
/*定位*/ /*定位*/
getLocation: function () { getLocation: function() {
var that = this; var that = this;
uni.getLocation({ uni.getLocation({
type: 'gcj02', type: 'gcj02',
success: function (res) { success: function(res) {
that.currentPoint = { that.currentPoint = {
latitude: res.latitude, latitude: res.latitude,
longitude: res.longitude longitude: res.longitude
@@ -231,23 +241,23 @@ export default {
that.getAddrByPoint(res); that.getAddrByPoint(res);
that.getNearList(that.currentPoint) that.getNearList(that.currentPoint)
}, },
complete: function (e) { } complete: function(e) {}
}); });
}, },
/*逆地址解析*/ /*逆地址解析*/
getAddrByPoint: function (point) { getAddrByPoint: function(point) {
var that = this; var that = this;
var location = point.latitude + ',' + point.longitude var location = point.latitude + ',' + point.longitude
getcoder(location, encodeURI(that.key), 0).then(res => { getcoder(location, encodeURI(that.key), 0).then(res => {
that.currentAddress = res.data.result.address that.currentAddress = res.data.result.address
}); });
}, },
goSeach: function () { goSeach: function() {
uni.navigateTo({ uni.navigateTo({
url: '../seach/seach' url: '../seach/seach'
}) })
}, },
gomap: function () { gomap: function() {
uni.navigateTo({ uni.navigateTo({
url: '../mapSeach/mapSeach' url: '../mapSeach/mapSeach'
}) })
@@ -257,11 +267,11 @@ export default {
this.policyContentList = res.data.data.records this.policyContentList = res.data.data.records
}) })
}, },
changeTab: function (e) { changeTab: function(e) {
this.activeTab = e; this.activeTab = e;
}, },
//附近任务; //附近任务;
getNearList: function (point) { getNearList: function(point) {
nearMission(this.nearPage.current, this.nearPage.size).then(res => { nearMission(this.nearPage.current, this.nearPage.size).then(res => {
if (this.nearPage.current === 1) { if (this.nearPage.current === 1) {
this.companyList = []; this.companyList = [];
@@ -281,8 +291,7 @@ export default {
url: `/pages/user/policyContent?id=${data}` url: `/pages/user/policyContent?id=${data}`
}) })
} } else {
else {
// uni.showToast({ // uni.showToast({
// title:'暂无内容', // title:'暂无内容',
// icon:'none' // icon:'none'
@@ -290,7 +299,7 @@ export default {
} }
}, },
//推荐任务; //推荐任务;
getRecommendList: function () { getRecommendList: function() {
recommendMission(this.recommendPage.current, this.recommendPage.size, '').then(res => { recommendMission(this.recommendPage.current, this.recommendPage.size, '').then(res => {
if (this.recommendPage.current === 1) { if (this.recommendPage.current === 1) {
this.recommendList = []; this.recommendList = [];
@@ -303,7 +312,7 @@ export default {
}) })
}, },
//最新任务; //最新任务;
getNewList: function () { getNewList: function() {
newMissionAll(this.newPage.current, this.newPage.size, '').then(res => { newMissionAll(this.newPage.current, this.newPage.size, '').then(res => {
if (this.newPage.current === 1) { if (this.newPage.current === 1) {
this.newList = []; this.newList = [];
@@ -316,7 +325,7 @@ export default {
}) })
}, },
//上拉加载 //上拉加载
upLoad: function () { upLoad: function() {
if (this.activeTab === 0) { if (this.activeTab === 0) {
if (this.nearPage.current <= Math.ceil(this.nearPage.total / this.nearPage.size)) { if (this.nearPage.current <= Math.ceil(this.nearPage.total / this.nearPage.size)) {
this.getNearList(this.currentPoint); this.getNearList(this.currentPoint);
@@ -329,7 +338,8 @@ export default {
return return
} }
if (this.activeTab === 1) { if (this.activeTab === 1) {
if (this.recommendPage.current <= Math.ceil(this.recommendPage.total / this.recommendPage.size)) { if (this.recommendPage.current <= Math.ceil(this.recommendPage.total / this.recommendPage
.size)) {
this.getRecommendList(); this.getRecommendList();
} else { } else {
uni.showToast({ uni.showToast({
@@ -352,13 +362,13 @@ export default {
} }
}, },
//下拉刷新 //下拉刷新
download: function () { download: function() {
console.log(this.activeTab) console.log(this.activeTab)
if (this.activeTab === '0') { if (this.activeTab === '0') {
this.nearPage.current = 1; this.nearPage.current = 1;
console.log('123123') console.log('123123')
this.getLocation(); this.getLocation();
setTimeout(function () { setTimeout(function() {
uni.stopPullDownRefresh(); uni.stopPullDownRefresh();
}, 1000); }, 1000);
return return
@@ -366,7 +376,7 @@ export default {
if (this.activeTab === '1') { if (this.activeTab === '1') {
this.recommendPage.current = 1; this.recommendPage.current = 1;
this.getRecommendList(); this.getRecommendList();
setTimeout(function () { setTimeout(function() {
uni.stopPullDownRefresh(); uni.stopPullDownRefresh();
}, 1000); }, 1000);
return return
@@ -374,13 +384,13 @@ export default {
if (this.activeTab === '2') { if (this.activeTab === '2') {
this.newPage.current = 1; this.newPage.current = 1;
this.getNewList(); this.getNewList();
setTimeout(function () { setTimeout(function() {
uni.stopPullDownRefresh(); uni.stopPullDownRefresh();
}, 1000); }, 1000);
return return
} }
}, },
getData: function () { getData: function() {
if (!this.$store.state.user.token) { if (!this.$store.state.user.token) {
uni.redirectTo({ uni.redirectTo({
url: "/pages/login/login" url: "/pages/login/login"
@@ -401,39 +411,43 @@ export default {
closePopUp() { closePopUp() {
this.showPopUp = false this.showPopUp = false
}, },
subMitPopUp({ submitData, areaModal, industryModal }) { subMitPopUp({
submitData,
areaModal,
industryModal
}) {
console.log(submitData, areaModal, industryModal, "------确定"); console.log(submitData, areaModal, industryModal, "------确定");
this.showPopUp = false this.showPopUp = false
} }
} }
} }
</script> </script>
<style scoped> <style scoped>
.titleSearch { .titleSearch {
display: flex; display: flex;
width: 80%; width: 80%;
margin: 0 auto; margin: 0 auto;
font-size: 22px; font-size: 22px;
font-weight: bold; font-weight: bold;
padding: 20rpx; padding: 20rpx;
} }
.searchName { .searchName {
margin-right: 28rpx; margin-right: 28rpx;
} }
.content { .content {
background-color: #f3f4f8; background-color: #f3f4f8;
padding-top: 20rpx; padding-top: 20rpx;
min-height: 80vh; min-height: 80vh;
} }
.screenButton { .screenButton {
/* position: absolute; /* position: absolute;
top: 10px; top: 10px;
z-index: 1; z-index: 1;
@@ -444,34 +458,34 @@ export default {
line-height: 30px; line-height: 30px;
font-size: 14px; font-size: 14px;
background-color: #fff; background-color: #fff;
} }
.typeButtonWrapper { .typeButtonWrapper {
width: 92%; width: 92%;
margin: 0 auto; margin: 0 auto;
display: flex; display: flex;
justify-content: space-between; justify-content: space-between;
/* margin-bottom: 10rpx; */ /* margin-bottom: 10rpx; */
} }
.typeButtonLeft { .typeButtonLeft {
display: flex; display: flex;
} }
.typeButton { .typeButton {
font-size: 14px; font-size: 14px;
padding: 10rpx 40rpx; padding: 10rpx 40rpx;
background: #fff; background: #fff;
border-radius: 50px; border-radius: 50px;
margin-right: 10rpx; margin-right: 10rpx;
} }
.activeButton { .activeButton {
color: #4171f9; color: #4171f9;
background-color: #cfdaf8; background-color: #cfdaf8;
} }
.arrow-up-right { .arrow-up-right {
width: 0; width: 0;
height: 0; height: 0;
border-left: 10px solid transparent; border-left: 10px solid transparent;
@@ -482,28 +496,28 @@ export default {
top: 3px; top: 3px;
right: 3px; right: 3px;
} }
.topseach { .topseach {
width: 25px; width: 25px;
height: 25px; height: 25px;
position: absolute; position: absolute;
top: 10px; top: 10px;
right: 30rpx; right: 30rpx;
} }
.location image:last-child { .location image:last-child {
margin-left: auto; margin-left: auto;
} }
.location image { .location image {
width: 40rpx; width: 40rpx;
height: 40rpx; height: 40rpx;
margin-right: 10rpx; margin-right: 10rpx;
} }
.location { .location {
padding: 20rpx 30rpx; padding: 20rpx 30rpx;
display: flex; display: flex;
align-items: center; align-items: center;
@@ -511,9 +525,9 @@ export default {
font-family: PingFangSC-Regular; font-family: PingFangSC-Regular;
font-size: 28rpx; font-size: 28rpx;
color: #333333; color: #333333;
} }
.btn { .btn {
margin: 0 auto; margin: 0 auto;
color: #999; color: #999;
border: 1rpx solid #999; border: 1rpx solid #999;
@@ -524,34 +538,34 @@ export default {
width: 180rpx; width: 180rpx;
border-radius: 5rpx; border-radius: 5rpx;
margin-top: 30rpx; margin-top: 30rpx;
} }
.nothing_text { .nothing_text {
font-family: PingFangSC-Regular; font-family: PingFangSC-Regular;
font-size: 28rpx; font-size: 28rpx;
color: #666666; color: #666666;
text-align: center; text-align: center;
} }
.nothingContnt { .nothingContnt {
font-family: PingFangSC-Regular; font-family: PingFangSC-Regular;
font-size: 28rpx; font-size: 28rpx;
color: #333333; color: #333333;
margin-top: 30rpx; margin-top: 30rpx;
text-align: center; text-align: center;
} }
.nothing { .nothing {
width: 400rpx; width: 400rpx;
height: 200rpx; height: 200rpx;
display: block; display: block;
margin: 0 auto; margin: 0 auto;
margin-top: 300rpx; margin-top: 300rpx;
} }
.popUpWrapper { .popUpWrapper {
width: 100%; width: 100%;
} }
</style> </style>

View File

@@ -3,7 +3,7 @@
<view class="titleSearch"> <view class="titleSearch">
<view class="searchName"> </view> <view class="searchName"> </view>
<u-search placeholder="搜任务/搜岗位/搜个体户招工/搜政策" @focus="goSeach" shape="round" :showAction="false"></u-search> <u-search placeholder="搜任务/搜岗位/搜政策" @focus="goSeach" shape="round" :showAction="false"></u-search>
</view> </view>
<view class="navPosition" @click="navTo('/pages/project/projectList')"> <view class="navPosition" @click="navTo('/pages/project/projectList')">
<u-icon name="map" color="#2979ff" size="16"></u-icon> <u-icon name="map" color="#2979ff" size="16"></u-icon>
@@ -102,27 +102,31 @@
</template> </template>
<script> <script>
import vTabs from '@/components/v-tabs/v-tabs.vue'; import vTabs from '@/components/v-tabs/v-tabs.vue';
import testData from '@/common/textdata.js'; import testData from '@/common/textdata.js';
import companyList from '@/components/companyList/companyList.vue'; import companyList from '@/components/companyList/companyList.vue';
import workList from '@/components/companyList/workList.vue' import workList from '@/components/companyList/workList.vue'
import userrecruitList from './userrecruitList.vue' import userrecruitList from './userrecruitList.vue'
import { import {
newMissionAll, newMissionAll,
recommendMission, recommendMission,
nearMission, nearMission,
newMissionAllSearch, newMissionAllSearch,
recommendMissionSearch, recommendMissionSearch,
nearMissionSearch, nearMissionSearch,
} from '@/api/mission.js'; } from '@/api/mission.js';
import { getPolicyContent } from '@/api/newIndex.js' import {
import { getPushListByUserId } from '@/api/userrecruit.js' getPolicyContent
import { } from '@/api/newIndex.js'
import {
getPushListByUserId
} from '@/api/userrecruit.js'
import {
getcoder getcoder
} from "@/api/map.js"; } from "@/api/map.js";
import verticalMenu from '@/components/vertical-menu/vertical-menu.vue'; import verticalMenu from '@/components/vertical-menu/vertical-menu.vue';
export default { export default {
components: { components: {
vTabs, vTabs,
companyList, companyList,
@@ -173,11 +177,11 @@ export default {
nonReactiveArray: ["推荐任务", "推荐岗位", "个体户招工"], nonReactiveArray: ["推荐任务", "推荐岗位", "个体户招工"],
} }
}, },
onLoad: function () { onLoad: function() {
this.getData() this.getData()
this.getPolicy() this.getPolicy()
}, },
onShow: function () { onShow: function() {
if (this.$store.state.user.token) { if (this.$store.state.user.token) {
this.$store.dispatch('refreshAuthState').then((e) => { this.$store.dispatch('refreshAuthState').then((e) => {
var auth = this.$store.state.auth var auth = this.$store.state.auth
@@ -194,11 +198,11 @@ export default {
} }
}, },
/*页面滚动到底部 换页*/ /*页面滚动到底部 换页*/
onReachBottom: function () { onReachBottom: function() {
this.upLoad() this.upLoad()
}, },
/*下拉刷新*/ /*下拉刷新*/
onPullDownRefresh: function () { onPullDownRefresh: function() {
if (!this.$store.state.user.token) { if (!this.$store.state.user.token) {
uni.redirectTo({ uni.redirectTo({
url: "/pages/login/login" url: "/pages/login/login"
@@ -216,7 +220,7 @@ export default {
content: `检查到您还未实名认证,实名认证之后才可进行操作哦`, content: `检查到您还未实名认证,实名认证之后才可进行操作哦`,
showCancel: false, showCancel: false,
confirmText: '立即认证', confirmText: '立即认证',
success: function (res) { success: function(res) {
if (res.confirm) { if (res.confirm) {
that.goSign(0) that.goSign(0)
} else if (res.cancel) { } else if (res.cancel) {
@@ -232,17 +236,17 @@ export default {
url: `/pages/projectInfo/signContract?active=${active}` url: `/pages/projectInfo/signContract?active=${active}`
}) })
}, },
goResume: function () { goResume: function() {
uni.navigateTo({ uni.navigateTo({
url: '/pageMy/my/resume/addSkill' url: '/pageMy/my/resume/addSkill'
}) })
}, },
/*定位*/ /*定位*/
getLocation: function () { getLocation: function() {
var that = this; var that = this;
uni.getLocation({ uni.getLocation({
type: 'gcj02', type: 'gcj02',
success: function (res) { success: function(res) {
that.currentPoint = { that.currentPoint = {
latitude: res.latitude, latitude: res.latitude,
longitude: res.longitude longitude: res.longitude
@@ -250,23 +254,23 @@ export default {
that.getAddrByPoint(res); that.getAddrByPoint(res);
that.getNearList(that.currentPoint) that.getNearList(that.currentPoint)
}, },
complete: function (e) { } complete: function(e) {}
}); });
}, },
/*逆地址解析*/ /*逆地址解析*/
getAddrByPoint: function (point) { getAddrByPoint: function(point) {
var that = this; var that = this;
var location = point.latitude + ',' + point.longitude var location = point.latitude + ',' + point.longitude
getcoder(location, encodeURI(that.key), 0).then(res => { getcoder(location, encodeURI(that.key), 0).then(res => {
that.currentAddress = res.data.result.address that.currentAddress = res.data.result.address
}); });
}, },
goSeach: function () { goSeach: function() {
uni.navigateTo({ uni.navigateTo({
url: '../seach/seach' url: '../seach/seach'
}) })
}, },
gomap: function () { gomap: function() {
uni.navigateTo({ uni.navigateTo({
url: '../mapSeach/mapSeach' url: '../mapSeach/mapSeach'
}) })
@@ -279,7 +283,12 @@ export default {
} }
getPushListByUserId(params).then((res) => { getPushListByUserId(params).then((res) => {
if (res.data.code === 200) { if (res.data.code === 200) {
const { records, current, total, size } = res.data.data const {
records,
current,
total,
size
} = res.data.data
console.log('个体招工', records, current, total, size) console.log('个体招工', records, current, total, size)
if (!records.length) { if (!records.length) {
return uni.showToast({ return uni.showToast({
@@ -300,12 +309,12 @@ export default {
// this.policyContentList=res.data.data.records // this.policyContentList=res.data.data.records
// }) // })
}, },
changeTab: function (e) { changeTab: function(e) {
this.isSearch = false; this.isSearch = false;
this.activeTab = e; this.activeTab = e;
}, },
getNearList: function (point) { getNearList: function(point) {
nearMission(this.nearPage.current, this.nearPage.size).then(res => { nearMission(this.nearPage.current, this.nearPage.size).then(res => {
if (this.nearPage.current === 1) { if (this.nearPage.current === 1) {
@@ -327,8 +336,7 @@ export default {
url: `/pages/user/policyContent?id=${data}` url: `/pages/user/policyContent?id=${data}`
}) })
} } else {
else {
// uni.showToast({ // uni.showToast({
// title:'暂无内容', // title:'暂无内容',
// icon:'none' // icon:'none'
@@ -336,7 +344,7 @@ export default {
} }
}, },
//推荐岗位; //推荐岗位;
getRecommendList: function () { getRecommendList: function() {
recommendMission(this.recommendPage.current, this.recommendPage.size, '').then(res => { recommendMission(this.recommendPage.current, this.recommendPage.size, '').then(res => {
if (this.recommendPage.current === 1) { if (this.recommendPage.current === 1) {
this.recommendList = []; this.recommendList = [];
@@ -351,7 +359,7 @@ export default {
}) })
}, },
//推荐任务; //推荐任务;
getNewList: function () { getNewList: function() {
newMissionAll(this.newPage.current, this.newPage.size, '').then(res => { newMissionAll(this.newPage.current, this.newPage.size, '').then(res => {
if (this.newPage.current === 1) { if (this.newPage.current === 1) {
this.newList = []; this.newList = [];
@@ -365,7 +373,7 @@ export default {
}) })
}, },
//上拉加载 //上拉加载
upLoad: function () { upLoad: function() {
if (this.activeTab === 0) { if (this.activeTab === 0) {
if (this.newPage.current <= Math.ceil(this.newPage.total / this.newPage.size)) { if (this.newPage.current <= Math.ceil(this.newPage.total / this.newPage.size)) {
@@ -416,14 +424,14 @@ export default {
} }
}, },
//下拉刷新 //下拉刷新
download: function () { download: function() {
this.isSearch = false; this.isSearch = false;
if (this.activeTab === 0) { if (this.activeTab === 0) {
this.nearPage.current = 1; this.nearPage.current = 1;
this.newPage.current = 1; this.newPage.current = 1;
this.getLocation(); this.getLocation();
this.getNewList(); this.getNewList();
setTimeout(function () { setTimeout(function() {
uni.stopPullDownRefresh(); uni.stopPullDownRefresh();
}, 1000); }, 1000);
return return
@@ -433,7 +441,7 @@ export default {
// this.getRecommendList(); // this.getRecommendList();
this.nearPage.current === 1 this.nearPage.current === 1
this.getNearList(); this.getNearList();
setTimeout(function () { setTimeout(function() {
uni.stopPullDownRefresh(); uni.stopPullDownRefresh();
}, 1000); }, 1000);
return return
@@ -441,13 +449,13 @@ export default {
if (this.activeTab === 2) { if (this.activeTab === 2) {
this.policyPage.current = 1; this.policyPage.current = 1;
this.getPolicy() this.getPolicy()
setTimeout(function () { setTimeout(function() {
uni.stopPullDownRefresh(); uni.stopPullDownRefresh();
}, 1000); }, 1000);
return return
} }
}, },
getData: function () { getData: function() {
if (!this.$store.state.user.token) { if (!this.$store.state.user.token) {
uni.redirectTo({ uni.redirectTo({
url: "/pages/login/login" url: "/pages/login/login"
@@ -468,8 +476,16 @@ export default {
closePopUp() { closePopUp() {
this.showPopUp = false this.showPopUp = false
}, },
subMitPopUp({ submitData, areaModal, industryModal }) { subMitPopUp({
this.searchData = { submitData, areaModal, industryModal } submitData,
areaModal,
industryModal
}) {
this.searchData = {
submitData,
areaModal,
industryModal
}
if (submitData || areaModal || industryModal) { if (submitData || areaModal || industryModal) {
this.isSearch = true; this.isSearch = true;
} }
@@ -496,8 +512,12 @@ export default {
//个体户招工搜索; //个体户招工搜索;
getPolicySearch: function () { getPolicySearch: function() {
const { submitData, areaModal, industryModal } = this.searchData; const {
submitData,
areaModal,
industryModal
} = this.searchData;
nearMissionSearch(this.policyPage.current, this.policyPage.size, submitData["学历"], nearMissionSearch(this.policyPage.current, this.policyPage.size, submitData["学历"],
submitData["工资"], industryModal?.industry, areaModal?.address1[0], areaModal?.address1[1] submitData["工资"], industryModal?.industry, areaModal?.address1[0], areaModal?.address1[1]
@@ -516,8 +536,12 @@ export default {
}) })
}, },
//推荐岗位搜索; //推荐岗位搜索;
getNearListSearch: function () { getNearListSearch: function() {
const { submitData, areaModal, industryModal } = this.searchData; const {
submitData,
areaModal,
industryModal
} = this.searchData;
newMissionAllSearch(this.nearPage.current, this.nearPage.size, submitData["学历"], newMissionAllSearch(this.nearPage.current, this.nearPage.size, submitData["学历"],
submitData["工资"], industryModal?.industry, areaModal?.address1[0], areaModal?.address1[1] submitData["工资"], industryModal?.industry, areaModal?.address1[0], areaModal?.address1[1]
).then(res => { ).then(res => {
@@ -532,8 +556,12 @@ export default {
}) })
}, },
//推荐任务搜索; //推荐任务搜索;
getNewListSearch: function () { getNewListSearch: function() {
const { submitData, areaModal, industryModal } = this.searchData; const {
submitData,
areaModal,
industryModal
} = this.searchData;
recommendMissionSearch(this.newPage.current, this.newPage.size, submitData["学历"], recommendMissionSearch(this.newPage.current, this.newPage.size, submitData["学历"],
submitData["工资"], industryModal?.industry, areaModal?.address1[0], areaModal?.address1[1] submitData["工资"], industryModal?.industry, areaModal?.address1[0], areaModal?.address1[1]
).then(res => { ).then(res => {
@@ -549,11 +577,11 @@ export default {
}) })
}, },
} }
} }
</script> </script>
<style scoped> <style scoped>
.navPosition { .navPosition {
padding: 0 24rpx 20rpx 30rpx; padding: 0 24rpx 20rpx 30rpx;
display: flex; display: flex;
align-item: center; align-item: center;
@@ -562,32 +590,32 @@ export default {
.positionText { .positionText {
margin: 0 10rpx; margin: 0 10rpx;
} }
} }
.titleSearch { .titleSearch {
display: flex; display: flex;
width: 80%; width: 80%;
margin: 0 auto; margin: 0 auto;
font-size: 22px; font-size: 22px;
font-weight: bold; font-weight: bold;
padding: 20rpx; padding: 20rpx;
} }
.searchName { .searchName {
margin-right: 28rpx; margin-right: 28rpx;
} }
.content { .content {
background-color: #f3f4f8; background-color: #f3f4f8;
padding-top: 20rpx; padding-top: 20rpx;
min-height: 80vh; min-height: 80vh;
} }
.screenButton { .screenButton {
/* position: absolute; /* position: absolute;
top: 10px; top: 10px;
z-index: 1; z-index: 1;
@@ -598,36 +626,36 @@ export default {
line-height: 30px; line-height: 30px;
font-size: 14px; font-size: 14px;
background-color: #fff; background-color: #fff;
} }
.typeButtonWrapper { .typeButtonWrapper {
width: 92%; width: 92%;
margin: 0 auto; margin: 0 auto;
display: flex; display: flex;
justify-content: space-between; justify-content: space-between;
/* margin-bottom: 10rpx; */ /* margin-bottom: 10rpx; */
} }
.typeButtonLeft { .typeButtonLeft {
display: flex; display: flex;
} }
.typeButton { .typeButton {
font-size: 14px; font-size: 14px;
padding: 10rpx 30rpx; padding: 10rpx 30rpx;
background: #fff; background: #fff;
border-radius: 50px; border-radius: 50px;
margin-right: 10rpx; margin-right: 10rpx;
white-space: nowrap; white-space: nowrap;
} }
.activeButton { .activeButton {
color: #4171f9; color: #4171f9;
background-color: #cfdaf8; background-color: #cfdaf8;
} }
.arrow-up-right { .arrow-up-right {
width: 0; width: 0;
height: 0; height: 0;
border-left: 10px solid transparent; border-left: 10px solid transparent;
@@ -638,28 +666,28 @@ export default {
top: 3px; top: 3px;
right: 3px; right: 3px;
} }
.topseach { .topseach {
width: 25px; width: 25px;
height: 25px; height: 25px;
position: absolute; position: absolute;
top: 10px; top: 10px;
right: 30rpx; right: 30rpx;
} }
.location image:last-child { .location image:last-child {
margin-left: auto; margin-left: auto;
} }
.location image { .location image {
width: 40rpx; width: 40rpx;
height: 40rpx; height: 40rpx;
margin-right: 10rpx; margin-right: 10rpx;
} }
.location { .location {
padding: 20rpx 30rpx; padding: 20rpx 30rpx;
display: flex; display: flex;
align-items: center; align-items: center;
@@ -667,9 +695,9 @@ export default {
font-family: PingFangSC-Regular; font-family: PingFangSC-Regular;
font-size: 28rpx; font-size: 28rpx;
color: #333333; color: #333333;
} }
.btn { .btn {
margin: 0 auto; margin: 0 auto;
color: #999; color: #999;
border: 1rpx solid #999; border: 1rpx solid #999;
@@ -680,34 +708,34 @@ export default {
width: 180rpx; width: 180rpx;
border-radius: 5rpx; border-radius: 5rpx;
margin-top: 30rpx; margin-top: 30rpx;
} }
.nothing_text { .nothing_text {
font-family: PingFangSC-Regular; font-family: PingFangSC-Regular;
font-size: 28rpx; font-size: 28rpx;
color: #666666; color: #666666;
text-align: center; text-align: center;
} }
.nothingContnt { .nothingContnt {
font-family: PingFangSC-Regular; font-family: PingFangSC-Regular;
font-size: 28rpx; font-size: 28rpx;
color: #333333; color: #333333;
margin-top: 30rpx; margin-top: 30rpx;
text-align: center; text-align: center;
} }
.nothing { .nothing {
width: 400rpx; width: 400rpx;
height: 200rpx; height: 200rpx;
display: block; display: block;
margin: 0 auto; margin: 0 auto;
margin-top: 300rpx; margin-top: 300rpx;
} }
.popUpWrapper { .popUpWrapper {
width: 100%; width: 100%;
} }
</style> </style>

View File

@@ -3,7 +3,7 @@
<view class="titleSearch"> <view class="titleSearch">
<view class="searchName"> </view> <view class="searchName"> </view>
<u-search placeholder="搜任务/搜岗位/搜个体户招工/搜政策" @focus="goSeach" shape="round" :showAction="false"></u-search> <u-search placeholder="搜任务/搜岗位/搜政策" @focus="goSeach" shape="round" :showAction="false"></u-search>
</view> </view>
<view class="navPosition" @click="navTo('/pages/project/projectList')"> <view class="navPosition" @click="navTo('/pages/project/projectList')">
<u-icon name="map" color="#2979ff" size="16"></u-icon> <u-icon name="map" color="#2979ff" size="16"></u-icon>
@@ -102,27 +102,31 @@
</template> </template>
<script> <script>
import vTabs from '@/components/v-tabs/v-tabs.vue'; import vTabs from '@/components/v-tabs/v-tabs.vue';
import testData from '@/common/textdata.js'; import testData from '@/common/textdata.js';
import companyList from '@/components/companyList/companyList.vue'; import companyList from '@/components/companyList/companyList.vue';
import workList from '@/components/companyList/workList.vue' import workList from '@/components/companyList/workList.vue'
import userrecruitList from './userrecruitList.vue' import userrecruitList from './userrecruitList.vue'
import { import {
newMissionAll, newMissionAll,
recommendMission, recommendMission,
nearMission, nearMission,
newMissionAllSearch, newMissionAllSearch,
recommendMissionSearch, recommendMissionSearch,
nearMissionSearch, nearMissionSearch,
} from '@/api/mission.js'; } from '@/api/mission.js';
import { getPolicyContent } from '@/api/newIndex.js' import {
import { getPushListByUserId } from '@/api/userrecruit.js' getPolicyContent
import { } from '@/api/newIndex.js'
import {
getPushListByUserId
} from '@/api/userrecruit.js'
import {
getcoder getcoder
} from "@/api/map.js"; } from "@/api/map.js";
import verticalMenu from '@/components/vertical-menu/vertical-menu.vue'; import verticalMenu from '@/components/vertical-menu/vertical-menu.vue';
export default { export default {
components: { components: {
vTabs, vTabs,
companyList, companyList,
@@ -174,16 +178,24 @@ export default {
nonReactiveArray: ["推荐零工任务", "推荐企业岗位"], nonReactiveArray: ["推荐零工任务", "推荐企业岗位"],
} }
}, },
onLoad: function () { onLoad: function() {
this.getData() this.getData()
// this.getPolicy() // this.getPolicy()
}, },
onShow: function () { onShow: function() {
switch (this.activeTab) { switch (this.activeTab) {
case 0: this.getNewList(); break; case 0:
case 1: this.getNearList(); break; this.getNewList();
case 2: this.getPolicy(); break; break;
default: this.getNewList(); break; case 1:
this.getNearList();
break;
case 2:
this.getPolicy();
break;
default:
this.getNewList();
break;
} }
if (this.$store.state.user.token) { if (this.$store.state.user.token) {
@@ -202,11 +214,11 @@ export default {
} }
}, },
/*页面滚动到底部 换页*/ /*页面滚动到底部 换页*/
onReachBottom: function () { onReachBottom: function() {
this.upLoad() this.upLoad()
}, },
/*下拉刷新*/ /*下拉刷新*/
onPullDownRefresh: function () { onPullDownRefresh: function() {
if (!this.$store.state.user.token) { if (!this.$store.state.user.token) {
uni.redirectTo({ uni.redirectTo({
url: "/pages/login/login" url: "/pages/login/login"
@@ -224,7 +236,7 @@ export default {
content: `检查到您还未实名认证,实名认证之后才可进行操作哦`, content: `检查到您还未实名认证,实名认证之后才可进行操作哦`,
showCancel: false, showCancel: false,
confirmText: '立即认证', confirmText: '立即认证',
success: function (res) { success: function(res) {
if (res.confirm) { if (res.confirm) {
that.goSign(0) that.goSign(0)
} else if (res.cancel) { } else if (res.cancel) {
@@ -240,17 +252,17 @@ export default {
url: `/pages/projectInfo/signContract?active=${active}` url: `/pages/projectInfo/signContract?active=${active}`
}) })
}, },
goResume: function () { goResume: function() {
uni.navigateTo({ uni.navigateTo({
url: '/pageMy/my/resume/addSkill' url: '/pageMy/my/resume/addSkill'
}) })
}, },
/*定位*/ /*定位*/
getLocation: function () { getLocation: function() {
var that = this; var that = this;
uni.getLocation({ uni.getLocation({
type: 'gcj02', type: 'gcj02',
success: function (res) { success: function(res) {
that.currentPoint = { that.currentPoint = {
latitude: res.latitude, latitude: res.latitude,
longitude: res.longitude longitude: res.longitude
@@ -258,29 +270,29 @@ export default {
that.getAddrByPoint(res); that.getAddrByPoint(res);
that.getNearList(that.currentPoint) that.getNearList(that.currentPoint)
}, },
complete: function (e) { } complete: function(e) {}
}); });
}, },
/*逆地址解析*/ /*逆地址解析*/
getAddrByPoint: function (point) { getAddrByPoint: function(point) {
var that = this; var that = this;
var location = point.latitude + ',' + point.longitude var location = point.latitude + ',' + point.longitude
getcoder(location, encodeURI(that.key), 0).then(res => { getcoder(location, encodeURI(that.key), 0).then(res => {
that.currentAddress = res.data.result.address that.currentAddress = res.data.result.address
}); });
}, },
goSeach: function () { goSeach: function() {
uni.navigateTo({ uni.navigateTo({
url: '../seach/seach' url: '../seach/seach'
}) })
}, },
gomap: function () { gomap: function() {
uni.navigateTo({ uni.navigateTo({
url: '../mapSeach/mapSeach' url: '../mapSeach/mapSeach'
}) })
}, },
changeTab: function (e) { changeTab: function(e) {
this.isSearch = false; this.isSearch = false;
this.activeTab = e; this.activeTab = e;
}, },
@@ -293,8 +305,7 @@ export default {
url: `/pages/user/policyContent?id=${data}` url: `/pages/user/policyContent?id=${data}`
}) })
} } else {
else {
// uni.showToast({ // uni.showToast({
// title:'暂无内容', // title:'暂无内容',
// icon:'none' // icon:'none'
@@ -310,7 +321,12 @@ export default {
} }
getPushListByUserId(params).then((res) => { getPushListByUserId(params).then((res) => {
if (res.data.code === 200) { if (res.data.code === 200) {
const { records, current, total, size } = res.data.data const {
records,
current,
total,
size
} = res.data.data
console.log('个体招工', records, current, total, size) console.log('个体招工', records, current, total, size)
if (!records.length) { if (!records.length) {
return uni.showToast({ return uni.showToast({
@@ -332,7 +348,7 @@ export default {
// }) // })
}, },
//推荐岗位; //推荐岗位;
getNearList: function (point) { getNearList: function(point) {
nearMission(this.nearPage.current, this.nearPage.size).then(res => { nearMission(this.nearPage.current, this.nearPage.size).then(res => {
if (this.nearPage.current === 1) { if (this.nearPage.current === 1) {
this.companyList = []; this.companyList = [];
@@ -346,7 +362,7 @@ export default {
}, },
//推荐任务; //推荐任务;
getNewList: function () { getNewList: function() {
newMissionAll(this.newPage.current, this.newPage.size, '').then(res => { newMissionAll(this.newPage.current, this.newPage.size, '').then(res => {
if (this.newPage.current === 1) { if (this.newPage.current === 1) {
this.newList = []; this.newList = [];
@@ -360,7 +376,7 @@ export default {
}) })
}, },
//上拉加载 //上拉加载
upLoad: function () { upLoad: function() {
if (this.activeTab === 0) { if (this.activeTab === 0) {
if (this.newPage.current <= Math.ceil(this.newPage.total / this.newPage.size)) { if (this.newPage.current <= Math.ceil(this.newPage.total / this.newPage.size)) {
@@ -410,14 +426,14 @@ export default {
} }
}, },
//下拉刷新 //下拉刷新
download: function () { download: function() {
this.isSearch = false; this.isSearch = false;
if (this.activeTab === 0) { if (this.activeTab === 0) {
this.nearPage.current = 1; this.nearPage.current = 1;
this.newPage.current = 1; this.newPage.current = 1;
this.getLocation(); this.getLocation();
this.getNewList(); this.getNewList();
setTimeout(function () { setTimeout(function() {
uni.stopPullDownRefresh(); uni.stopPullDownRefresh();
}, 1000); }, 1000);
return return
@@ -425,7 +441,7 @@ export default {
if (this.activeTab === 1) { if (this.activeTab === 1) {
this.nearPage.current === 1 this.nearPage.current === 1
this.getNearList(); this.getNearList();
setTimeout(function () { setTimeout(function() {
uni.stopPullDownRefresh(); uni.stopPullDownRefresh();
}, 1000); }, 1000);
return return
@@ -433,13 +449,13 @@ export default {
if (this.activeTab === 2) { if (this.activeTab === 2) {
this.policyPage.current = 1; this.policyPage.current = 1;
this.getPolicy() this.getPolicy()
setTimeout(function () { setTimeout(function() {
uni.stopPullDownRefresh(); uni.stopPullDownRefresh();
}, 1000); }, 1000);
return return
} }
}, },
getData: function () { getData: function() {
if (!this.$store.state.user.token) { if (!this.$store.state.user.token) {
uni.redirectTo({ uni.redirectTo({
url: "/pages/login/login" url: "/pages/login/login"
@@ -460,9 +476,17 @@ export default {
closePopUp() { closePopUp() {
this.showPopUp = false this.showPopUp = false
}, },
subMitPopUp({ submitData, areaModal, industryModal }) { subMitPopUp({
this.searchData = { submitData, areaModal, industryModal } submitData,
console.log(this.searchData,'------'); areaModal,
industryModal
}) {
this.searchData = {
submitData,
areaModal,
industryModal
}
console.log(this.searchData, '------');
if (submitData || areaModal || industryModal) { if (submitData || areaModal || industryModal) {
this.isSearch = true; this.isSearch = true;
} }
@@ -489,8 +513,12 @@ export default {
//个体户招工搜索; //个体户招工搜索;
getPolicySearch: function () { getPolicySearch: function() {
const { submitData, areaModal, industryModal } = this.searchData; const {
submitData,
areaModal,
industryModal
} = this.searchData;
nearMissionSearch(this.policyPage.current, this.policyPage.size, submitData["学历"], nearMissionSearch(this.policyPage.current, this.policyPage.size, submitData["学历"],
submitData["工资"], industryModal?.industry, areaModal?.address1[0], areaModal?.address1[1] submitData["工资"], industryModal?.industry, areaModal?.address1[0], areaModal?.address1[1]
).then(res => { ).then(res => {
@@ -506,8 +534,12 @@ export default {
}) })
}, },
//推荐岗位搜索; //推荐岗位搜索;
getNearListSearch: function () { getNearListSearch: function() {
const { submitData, areaModal, industryModal } = this.searchData; const {
submitData,
areaModal,
industryModal
} = this.searchData;
newMissionAllSearch(this.nearPage.current, this.nearPage.size, submitData["学历"], newMissionAllSearch(this.nearPage.current, this.nearPage.size, submitData["学历"],
submitData["工资"], industryModal?.industry, areaModal?.address1[0], areaModal?.address1[1] submitData["工资"], industryModal?.industry, areaModal?.address1[0], areaModal?.address1[1]
).then(res => { ).then(res => {
@@ -522,8 +554,12 @@ export default {
}) })
}, },
//推荐任务搜索; //推荐任务搜索;
getNewListSearch: function () { getNewListSearch: function() {
const { submitData, areaModal, industryModal } = this.searchData; const {
submitData,
areaModal,
industryModal
} = this.searchData;
recommendMissionSearch(this.newPage.current, this.newPage.size, submitData["学历"], recommendMissionSearch(this.newPage.current, this.newPage.size, submitData["学历"],
submitData["工资"], industryModal?.industry, areaModal?.address1[0], areaModal?.address1[1] submitData["工资"], industryModal?.industry, areaModal?.address1[0], areaModal?.address1[1]
).then(res => { ).then(res => {
@@ -539,11 +575,11 @@ export default {
}) })
}, },
} }
} }
</script> </script>
<style scoped> <style scoped>
.navPosition { .navPosition {
padding: 0 24rpx 20rpx 30rpx; padding: 0 24rpx 20rpx 30rpx;
display: flex; display: flex;
align-item: center; align-item: center;
@@ -552,32 +588,32 @@ export default {
.positionText { .positionText {
margin: 0 10rpx; margin: 0 10rpx;
} }
} }
.titleSearch { .titleSearch {
display: flex; display: flex;
width: 80%; width: 80%;
margin: 0 auto; margin: 0 auto;
font-size: 22px; font-size: 22px;
font-weight: bold; font-weight: bold;
padding: 20rpx; padding: 20rpx;
} }
.searchName { .searchName {
margin-right: 28rpx; margin-right: 28rpx;
} }
.content { .content {
background-color: #f3f4f8; background-color: #f3f4f8;
padding-top: 20rpx; padding-top: 20rpx;
min-height: 80vh; min-height: 80vh;
} }
.screenButton { .screenButton {
/* position: absolute; /* position: absolute;
top: 10px; top: 10px;
z-index: 1; z-index: 1;
@@ -588,36 +624,36 @@ export default {
line-height: 30px; line-height: 30px;
font-size: 14px; font-size: 14px;
background-color: #fff; background-color: #fff;
} }
.typeButtonWrapper { .typeButtonWrapper {
width: 92%; width: 92%;
margin: 0 auto; margin: 0 auto;
display: flex; display: flex;
justify-content: space-between; justify-content: space-between;
/* margin-bottom: 10rpx; */ /* margin-bottom: 10rpx; */
} }
.typeButtonLeft { .typeButtonLeft {
display: flex; display: flex;
} }
.typeButton { .typeButton {
font-size: 14px; font-size: 14px;
padding: 10rpx 30rpx; padding: 10rpx 30rpx;
background: #fff; background: #fff;
border-radius: 50px; border-radius: 50px;
margin-right: 10rpx; margin-right: 10rpx;
white-space: nowrap; white-space: nowrap;
} }
.activeButton { .activeButton {
color: #4171f9; color: #4171f9;
background-color: #cfdaf8; background-color: #cfdaf8;
} }
.arrow-up-right { .arrow-up-right {
width: 0; width: 0;
height: 0; height: 0;
border-left: 10px solid transparent; border-left: 10px solid transparent;
@@ -628,28 +664,28 @@ export default {
top: 3px; top: 3px;
right: 3px; right: 3px;
} }
.topseach { .topseach {
width: 25px; width: 25px;
height: 25px; height: 25px;
position: absolute; position: absolute;
top: 10px; top: 10px;
right: 30rpx; right: 30rpx;
} }
.location image:last-child { .location image:last-child {
margin-left: auto; margin-left: auto;
} }
.location image { .location image {
width: 40rpx; width: 40rpx;
height: 40rpx; height: 40rpx;
margin-right: 10rpx; margin-right: 10rpx;
} }
.location { .location {
padding: 20rpx 30rpx; padding: 20rpx 30rpx;
display: flex; display: flex;
align-items: center; align-items: center;
@@ -657,9 +693,9 @@ export default {
font-family: PingFangSC-Regular; font-family: PingFangSC-Regular;
font-size: 28rpx; font-size: 28rpx;
color: #333333; color: #333333;
} }
.btn { .btn {
margin: 0 auto; margin: 0 auto;
color: #999; color: #999;
border: 1rpx solid #999; border: 1rpx solid #999;
@@ -670,34 +706,34 @@ export default {
width: 180rpx; width: 180rpx;
border-radius: 5rpx; border-radius: 5rpx;
margin-top: 30rpx; margin-top: 30rpx;
} }
.nothing_text { .nothing_text {
font-family: PingFangSC-Regular; font-family: PingFangSC-Regular;
font-size: 28rpx; font-size: 28rpx;
color: #666666; color: #666666;
text-align: center; text-align: center;
} }
.nothingContnt { .nothingContnt {
font-family: PingFangSC-Regular; font-family: PingFangSC-Regular;
font-size: 28rpx; font-size: 28rpx;
color: #333333; color: #333333;
margin-top: 30rpx; margin-top: 30rpx;
text-align: center; text-align: center;
} }
.nothing { .nothing {
width: 400rpx; width: 400rpx;
height: 200rpx; height: 200rpx;
display: block; display: block;
margin: 0 auto; margin: 0 auto;
margin-top: 300rpx; margin-top: 300rpx;
} }
.popUpWrapper { .popUpWrapper {
width: 100%; width: 100%;
} }
</style> </style>

View File

@@ -1,7 +1,7 @@
<template> <template>
<view class=""> <view class="">
<view class="content"> <view class="content">
<u--form labelPosition="left" :model="formData" :rules="rules" ref="uForm"> <u--form labelPosition="left" :model="formData" :rules="rules" ref="formOne">
<view class="card"> <view class="card">
<view class="card_title">企业信息</view> <view class="card_title">企业信息</view>
<u-form-item label="企业名称" labelWidth="100" prop="comname" borderBottom ref="item1"> <u-form-item label="企业名称" labelWidth="100" prop="comname" borderBottom ref="item1">
@@ -40,7 +40,8 @@
</u-form-item> </u-form-item>
<u-form-item label="企业介绍" labelWidth="100" labelPosition="top" prop="companyDesc" borderBottom <u-form-item label="企业介绍" labelWidth="100" labelPosition="top" prop="companyDesc" borderBottom
ref="item1"> ref="item1">
<u--textarea v-model="formData.companyDesc" placeholder="请输入内容"></u--textarea> <u--textarea v-model="formData.companyDesc" placeholder="请输入企业介绍" count
maxlength="200"></u--textarea>
</u-form-item> </u-form-item>
</view> </view>
<view class="card"> <view class="card">
@@ -56,11 +57,18 @@
<view class="card"> <view class="card">
<view class="card_title">相关资料</view> <view class="card_title">相关资料</view>
<view class="card_content"> <view class="card_content">
<u-form-item labelWidth="100" prop="identityUrl4Id">
<UploadIdNumber v-model="formData.identityUrl4Id" backImg="/static/img/idcard.png"> <UploadIdNumber v-model="formData.identityUrl4Id" backImg="/static/img/idcard.png">
</UploadIdNumber> </UploadIdNumber>
</u-form-item>
<u-form-item labelWidth="100" prop="identityUrl5Id">
<UploadIdNumber v-model="formData.identityUrl5Id" backImg="/static/img/backidcard1.png"> <UploadIdNumber v-model="formData.identityUrl5Id" backImg="/static/img/backidcard1.png">
</UploadIdNumber> </UploadIdNumber>
<UploadIdNumber v-model="formData.authUrlId" backImg="/static/img/idcard.png"></UploadIdNumber> </u-form-item>
<u-form-item labelWidth="100" prop="authUrlId">
<UploadIdNumber v-model="formData.authUrlId" backImg="/static/img/idcard.png">
</UploadIdNumber>
</u-form-item>
</view> </view>
</view> </view>
@@ -80,10 +88,98 @@
import { import {
addInviteCompanyAuth addInviteCompanyAuth
} from '@/api/userrecruit.js' } from '@/api/userrecruit.js'
const rules = []
import { import {
mapState mapState
} from 'vuex' } from 'vuex'
const rules = {
comname: {
type: 'string',
required: true,
message: '请输入企业名称',
trigger: ['change']
},
companyTid: {
type: 'string',
required: true,
message: '请输入统一信用代码',
trigger: ['change']
},
masterName: {
type: 'string',
required: true,
message: '请输入法人姓名',
trigger: ['change']
},
masterIdentity: {
type: 'string',
required: true,
pattern: /^[1-9]\d{5}(19|20)\d{2}((0[1-9])|(1[0-2]))(([0-2][1-9])|10|20|30|31)\d{3}[Xx\d]$/,
message: '请输入法人身份证号',
trigger: ['change']
},
cityId: {
type: 'string',
required: true,
message: '请选择所在地区',
trigger: ['change']
},
companyAddress: {
type: 'string',
required: true,
message: '请输入详细地址',
trigger: ['change']
},
nature: {
type: 'string',
required: true,
message: '请选择企业性质',
trigger: ['change']
},
tradeId: {
type: 'string',
required: true,
message: '请选择行业',
trigger: ['change']
},
companyDesc: {
type: 'string',
min: 20,
required: true,
message: '请输入企业介绍最少20个字符',
trigger: ['change']
},
manager: {
type: 'string',
required: true,
message: '请输入联系人',
trigger: ['change']
},
telphone: {
type: 'string',
required: true,
pattern: /^1[3-9]{1}[0-9]{9}$/,
message: '请输入手机号码',
trigger: ['change']
},
identityUrl4Id: {
type: 'string',
required: true,
message: '请上传法人身份证(人像)',
trigger: ['change']
},
identityUrl5Id: {
type: 'string',
required: true,
message: '请上传法人身份证(国徽)',
trigger: ['change']
},
authUrlId: {
type: 'string',
required: true,
message: '请上传企业营业执照',
trigger: ['change']
},
}
export default { export default {
components: { components: {
UploadIdNumber, UploadIdNumber,
@@ -108,28 +204,29 @@
created() { created() {
this.formData.manager = this.authInfo.realName this.formData.manager = this.authInfo.realName
this.formData.idNumber = this.authInfo.idNumber this.formData.idNumber = this.authInfo.idNumber
console.log(this.authInfo)
console.log(this.userInfo)
}, },
methods: { methods: {
hideKeyboard() { hideKeyboard() {
uni.hideKeyboard() uni.hideKeyboard()
}, },
async submit() { async submit() {
let data = { const _this = this
...this.formData, this.$refs.formOne.validate().then(res => {
nature: Number(this.formData.nature), _this.$api.msg('提交数据')
cityId: Number(this.formData.cityId), }).catch(errors => {
tradeId: Number(this.formData.tradeId), _this.$api.msg('请完善内容')
}
let params = {
// auth: this.authInfo.authValue
}
let resData = await addInviteCompanyAuth({
params,
data
}) })
console.log(resData) // let params = {
// ...this.formData,
// nature: Number(this.formData.nature),
// cityId: Number(this.formData.cityId),
// tradeId: Number(this.formData.tradeId),
// }
// let resData = await addInviteCompanyAuth(params)
// console.log(resData)
// if (resData.data.code === 200) {
// _this.$api.msg('已完成企业信息认证')
// }
}, },
reset() { reset() {
const _this = this const _this = this

View File

@@ -5,8 +5,10 @@
<view class="search-item"> <view class="search-item">
<image src="../../static/img/search.svg" style="width: 32rpx;height: 32rpx;" mode=""></image> <image src="../../static/img/search.svg" style="width: 32rpx;height: 32rpx;" mode=""></image>
<input type="text" confirm-type="搜索" v-model="keywords" @confirm="getNewList('search')" <input type="text" confirm-type="搜索" v-model="keywords" @confirm="getNewList('search')"
placeholder="搜任务/搜岗位/搜个体户招工/搜政策" /> placeholder="搜任务/搜岗位/搜政策" />
<view @click="getNewList('search')" style="width: 80rpx;height: 50rpx;color:#fff;background-color: #0091ff;font-size:24rpx;text-align: center;line-height: 50rpx;border-radius: 25rpx;;">搜索</view> <view @click="getNewList('search')"
style="width: 80rpx;height: 50rpx;color:#fff;background-color: #0091ff;font-size:24rpx;text-align: center;line-height: 50rpx;border-radius: 25rpx;;">
搜索</view>
</view> </view>
<!-- <view class="close" @click="closeBack"> <!-- <view class="close" @click="closeBack">
取消 取消
@@ -20,7 +22,8 @@
<!-- <input type="text" confirm-type="搜索" v-model="keywords" @confirm="getNewList('search')" <!-- <input type="text" confirm-type="搜索" v-model="keywords" @confirm="getNewList('search')"
placeholder="搜任务/搜岗位/搜政策" /> --> placeholder="搜任务/搜岗位/搜政策" /> -->
<!-- <view @click="getNewList('search')" style="width: 80rpx;height: 50rpx;color:#fff;background-color: #0091ff;font-size:24rpx;text-align: center;line-height: 50rpx;border-radius: 25rpx;;">搜索</view> --> <!-- <view @click="getNewList('search')" style="width: 80rpx;height: 50rpx;color:#fff;background-color: #0091ff;font-size:24rpx;text-align: center;line-height: 50rpx;border-radius: 25rpx;;">搜索</view> -->
<view style="font-size: 24rpx;height: 50rpx;background-color: #ddd;border-radius: 25rpx;line-height: 50rpx;padding: 0 20rpx;padding-right: 40rpx;position:relative;"> <view
style="font-size: 24rpx;height: 50rpx;background-color: #ddd;border-radius: 25rpx;line-height: 50rpx;padding: 0 20rpx;padding-right: 40rpx;position:relative;">
{{ keywords }} {{ keywords }}
<u-icon name="close" size="14" style="position:absolute;right:10rpx;top:13rpx;"></u-icon> <u-icon name="close" size="14" style="position:absolute;right:10rpx;top:13rpx;"></u-icon>
</view> </view>
@@ -32,15 +35,18 @@
<view v-show="searchResultShow" class="search-result"> <view v-show="searchResultShow" class="search-result">
<view class="title">搜索结果</view> <view class="title">搜索结果</view>
<view v-for="(item, index) in searchResultList" class="search-item" @click="toDetail(item)"> <view v-for="(item, index) in searchResultList" class="search-item" @click="toDetail(item)">
<image src="../../static/img/search.svg" style="width: 32rpx;height: 32rpx;margin-right: 10rpx;" mode=""></image> <image src="../../static/img/search.svg" style="width: 32rpx;height: 32rpx;margin-right: 10rpx;"
mode=""></image>
<view style="flex:1;overflow:hidden;white-space:nowrap;text-overflow:ellipsis;">{{ item.name }}</view> <view style="flex:1;overflow:hidden;white-space:nowrap;text-overflow:ellipsis;">{{ item.name }}</view>
<view class="type" v-if="item.type == 0">任务</view> <view class="type" v-if="item.type == 0">任务</view>
<view class="type" v-else-if="item.type == 1">岗位</view> <view class="type" v-else-if="item.type == 1">岗位</view>
<view class="type" v-else-if="item.type == 2">政策</view> <view class="type" v-else-if="item.type == 2">政策</view>
<view class="type" v-else-if="item.type == 3">招工</view> <view class="type" v-else-if="item.type == 3">招工</view>
</view> </view>
<view v-if="searchResultList.length > 0" style="text-align: center;font-size: 26rpx;margin-top: 20rpx;color:#999;">没有更多数据了</view> <view v-if="searchResultList.length > 0"
<view v-if="searchResultList.length == 0" style="text-align: center;font-size: 26rpx;margin-top: 20rpx;">暂无数据</view> style="text-align: center;font-size: 26rpx;margin-top: 20rpx;color:#999;">没有更多数据</view>
<view v-if="searchResultList.length == 0" style="text-align: center;font-size: 26rpx;margin-top: 20rpx;">
暂无数据</view>
</view> </view>
<view v-show="!searchResultShow" class="search-history"> <view v-show="!searchResultShow" class="search-history">
<view class="title">搜索记录</view> <view class="title">搜索记录</view>
@@ -55,8 +61,8 @@
</view> </view>
<view v-else class="empty">暂无历史记录</view> <view v-else class="empty">暂无历史记录</view>
</view> </view>
<v-tabs v-show="!searchResultShow" :tabs="['推荐任务', '推荐岗位', '推荐政策']" height="45px" v-model="activeTab" color="#999" activeColor="#000" <v-tabs v-show="!searchResultShow" :tabs="['推荐任务', '推荐岗位', '推荐政策']" height="45px" v-model="activeTab"
fontSize="30rpx" activeFontSize="31rpx" @change='changeTab' /> color="#999" activeColor="#000" fontSize="30rpx" activeFontSize="31rpx" @change='changeTab' />
<block v-if="(activeTab == 0)&&!searchResultShow"> <block v-if="(activeTab == 0)&&!searchResultShow">
@@ -120,11 +126,16 @@
</template> </template>
<script> <script>
import { newMissionAll, getSearchKeyWordsList, clearSearchKeyWords, getListByKeyWords } from '@/api/mission.js'; import {
import companyList from '@/components/companyList/companyList.vue'; newMissionAll,
import vTabs from '@/components/v-tabs/v-tabs.vue'; getSearchKeyWordsList,
import testData from '@/common/textdata.js'; clearSearchKeyWords,
export default { getListByKeyWords
} from '@/api/mission.js';
import companyList from '@/components/companyList/companyList.vue';
import vTabs from '@/components/v-tabs/v-tabs.vue';
import testData from '@/common/textdata.js';
export default {
components: { components: {
companyList, companyList,
vTabs, vTabs,
@@ -146,16 +157,16 @@ export default {
searchResultList: [] searchResultList: []
}; };
}, },
onLoad: function (option) { onLoad: function(option) {
this.keywords = option.keywords ? option.keywords : '' this.keywords = option.keywords ? option.keywords : ''
}, },
onShow: function () { onShow: function() {
this.getList('search'); this.getList('search');
this.getKeyWordsList() this.getKeyWordsList()
}, },
/*页面滚动到底部*/ /*页面滚动到底部*/
onReachBottom: function () { onReachBottom: function() {
this.upLoad() this.upLoad()
}, },
methods: { methods: {
@@ -181,7 +192,7 @@ export default {
getKeyWordsList() { getKeyWordsList() {
getSearchKeyWordsList().then(res => { getSearchKeyWordsList().then(res => {
let response = res.data let response = res.data
if(response.code == 200) { if (response.code == 200) {
this.searchHistoryList = response.data this.searchHistoryList = response.data
} }
}) })
@@ -193,7 +204,7 @@ export default {
this.getNewList(); this.getNewList();
}, },
//最新任务; //最新任务;
getList: function (type) { getList: function(type) {
//改变搜索条件页码值变为1 //改变搜索条件页码值变为1
if (type === 'search') { if (type === 'search') {
this.page.current = 1; this.page.current = 1;
@@ -221,7 +232,7 @@ export default {
}, },
//上拉加载 //上拉加载
upLoad: function () { upLoad: function() {
if (this.page.current <= Math.ceil(this.page.total / this.page.size)) { if (this.page.current <= Math.ceil(this.page.total / this.page.size)) {
this.getList(); this.getList();
} else { } else {
@@ -244,7 +255,7 @@ export default {
*/ */
getInf(str, key) { getInf(str, key) {
if (str && key) { if (str && key) {
let replaceReg = new RegExp(key, 'g')// 匹配关键字正则 let replaceReg = new RegExp(key, 'g') // 匹配关键字正则
let replaceString = "<span style='color: #1b66ff;'>" + key + "</span>" // 高亮替换 let replaceString = "<span style='color: #1b66ff;'>" + key + "</span>" // 高亮替换
return str.replace(replaceReg, replaceString); return str.replace(replaceReg, replaceString);
} }
@@ -253,48 +264,49 @@ export default {
toDetail(item) { toDetail(item) {
const no = item.id const no = item.id
// 判断是岗位还是任务 0任务1岗位2政策 // 判断是岗位还是任务 0任务1岗位2政策
if(item.type == 0) { if (item.type == 0) {
uni.navigateTo({ uni.navigateTo({
url: `/pages/projectInfo/projectInfo?missionNo=${encodeURIComponent(no)}&isCan=1` url: `/pages/projectInfo/projectInfo?missionNo=${encodeURIComponent(no)}&isCan=1`
}) })
} else if(item.type == 1) { } else if (item.type == 1) {
uni.navigateTo({ uni.navigateTo({
url: `/pages/projectInfo/workInfo?workId=${encodeURIComponent(no)}&isCan=1` url: `/pages/projectInfo/workInfo?workId=${encodeURIComponent(no)}&isCan=1`
}) })
} else if(item.type == 2) { } else if (item.type == 2) {
uni.navigateTo({ uni.navigateTo({
url:`/pages/user/policyContent?id=${no}` url: `/pages/user/policyContent?id=${no}`
}) })
} }
}, },
changeTab: function (e) { changeTab: function(e) {
this.activeTab = e; this.activeTab = e;
}, },
// 清空搜索历史 // 清空搜索历史
clearKeyWords() { clearKeyWords() {
clearSearchKeyWords().then(res => { clearSearchKeyWords().then(res => {
if(res.data.code == 200) { if (res.data.code == 200) {
this.getKeyWordsList() this.getKeyWordsList()
} }
}) })
} }
} }
}; };
</script> </script>
<style scoped> <style scoped>
.mainWrapper{ .mainWrapper {
background-color: #f3f4f8; background-color: #f3f4f8;
min-height: 95vh; min-height: 95vh;
} }
.baddd {
.baddd {
background-color: #f6f6f6; background-color: #f6f6f6;
height: 20rpx; height: 20rpx;
} }
.close { .close {
position: absolute; position: absolute;
right: 24rpx; right: 24rpx;
top: 6rpx; top: 6rpx;
@@ -304,15 +316,15 @@ export default {
font-family: PingFangSC-Regular; font-family: PingFangSC-Regular;
font-size: 32rpx; font-size: 32rpx;
color: #333333; color: #333333;
} }
.headSearch .search-view { .headSearch .search-view {
border-bottom: 1rpx solid #dddddd; border-bottom: 1rpx solid #dddddd;
padding: 14rpx 32rpx; padding: 14rpx 32rpx;
background: rgba(255, 255, 255, 1); background: rgba(255, 255, 255, 1);
} }
.headSearch .search-item { .headSearch .search-item {
display: flex; display: flex;
padding: 0 10rpx; padding: 0 10rpx;
height: 60rpx; height: 60rpx;
@@ -321,9 +333,9 @@ export default {
border-radius: 200px; border-radius: 200px;
align-items: center; align-items: center;
border: 1px solid #0091ff; border: 1px solid #0091ff;
} }
.headSearch .search-item input { .headSearch .search-item input {
padding: 0 24rpx; padding: 0 24rpx;
height: 80rpx; height: 80rpx;
font-weight: 400; font-weight: 400;
@@ -332,42 +344,45 @@ export default {
font-size: 28rpx; font-size: 28rpx;
font-family: PingFang-SC-Bold, PingFang-SC; font-family: PingFang-SC-Bold, PingFang-SC;
color: rgba(51, 51, 51, 1); color: rgba(51, 51, 51, 1);
} }
.headSearch .search-item .placeholderClass { .headSearch .search-item .placeholderClass {
color: #CCCCCC; color: #CCCCCC;
} }
.headSearch .search-item image { .headSearch .search-item image {
height: 32rpx; height: 32rpx;
width: 32rpx; width: 32rpx;
} }
.nothing { .nothing {
width: 400rpx; width: 400rpx;
height: 200rpx; height: 200rpx;
display: block; display: block;
margin: 0 auto; margin: 0 auto;
margin-top: 50%; margin-top: 50%;
} }
.nothingContnt { .nothingContnt {
font-family: PingFangSC-Regular; font-family: PingFangSC-Regular;
font-size: 28rpx; font-size: 28rpx;
color: #333333; color: #333333;
margin-top: 30rpx; margin-top: 30rpx;
text-align: center; text-align: center;
} }
.search-history {
.search-history {
background-color: #fff; background-color: #fff;
padding: 10rpx 40rpx; padding: 10rpx 40rpx;
position: relative; position: relative;
} }
.search-history .title {
.search-history .title {
font-size: 28rpx; font-size: 28rpx;
font-weight: bold; font-weight: bold;
} }
.search-history .clear {
.search-history .clear {
position: absolute; position: absolute;
right: 40rpx; right: 40rpx;
top: 10rpx; top: 10rpx;
@@ -375,37 +390,43 @@ export default {
display: flex; display: flex;
align-items: center; align-items: center;
color: #707070; color: #707070;
} }
.search-history .empty {
.search-history .empty {
font-size: 24rpx; font-size: 24rpx;
text-align: center; text-align: center;
color: #707070; color: #707070;
} }
.search-history .wrapper {
.search-history .wrapper {
display: flex; display: flex;
flex-wrap: wrap; flex-wrap: wrap;
margin-top: 10rpx; margin-top: 10rpx;
} }
.search-history .wrapper .item {
.search-history .wrapper .item {
font-size: 24rpx; font-size: 24rpx;
background-color: #f6f6f6; background-color: #f6f6f6;
padding: 8rpx 12rpx; padding: 8rpx 12rpx;
border-radius: 20rpx; border-radius: 20rpx;
margin-right: 10rpx; margin-right: 10rpx;
} }
.search-result {
.search-result {
padding: 20rpx 30rpx; padding: 20rpx 30rpx;
background-color: #fff; background-color: #fff;
height: 100vh; height: 100vh;
} }
.search-result .title {
.search-result .title {
font-size: 26rpx; font-size: 26rpx;
font-weight: bold; font-weight: bold;
border-bottom: 1rpx solid #ddd; border-bottom: 1rpx solid #ddd;
height: 60rpx; height: 60rpx;
line-height: 60rpx; line-height: 60rpx;
} }
.search-result .search-item {
.search-result .search-item {
display: flex; display: flex;
align-items: center; align-items: center;
font-size: 26rpx; font-size: 26rpx;
@@ -413,8 +434,9 @@ export default {
height: 80rpx; height: 80rpx;
line-height: 80rpx; line-height: 80rpx;
} }
.search-result .search-item .type {
.search-result .search-item .type {
font-size: 20rpx; font-size: 20rpx;
color: #707070; color: #707070;
background-color: #dddddd; background-color: #dddddd;
@@ -422,5 +444,5 @@ export default {
height: 30rpx; height: 30rpx;
line-height: 30rpx; line-height: 30rpx;
padding: 0 20rpx; padding: 0 20rpx;
} }
</style> </style>

View File

@@ -3,7 +3,7 @@ module.exports = {
port: 1887, port: 1887,
proxy: { proxy: {
'/api': { '/api': {
target: 'http://192.168.1.106:8000', target: 'http://10.165.0.173:8000',
ws: true, ws: true,
pathRewrite: { pathRewrite: {
'^/api': '/' '^/api': '/'