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,9 +65,14 @@
</template> </template>
<script> <script>
import {classifyData, classifyData2} from './classifyData.js'; import {
classifyData,
classifyData2
} from './classifyData.js';
console.log(classifyData, classifyData2) console.log(classifyData, classifyData2)
import { getTrade } from '@/api/resume.js' import {
getTrade
} from '@/api/resume.js'
export default { export default {
props: { props: {
closePopUp: { closePopUp: {
@@ -114,7 +119,9 @@ export default {
}, },
industryModal: { industryModal: {
industry: "", industry: "",
industryList: [[]], industryList: [
[]
],
industryShow: false, industryShow: false,
isClickIndustry: false, isClickIndustry: false,
}, },
@@ -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,7 +344,11 @@ 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
})
} }
@@ -493,14 +508,14 @@ export default {
} }
.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;

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>
@@ -150,7 +150,9 @@ export default {
}], }],
showPicker: false, showPicker: false,
showType: "", showType: "",
columns: [[]], columns: [
[]
],
canSubMit: false, canSubMit: false,
isShowButton: false, isShowButton: false,
@@ -195,8 +197,12 @@ 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
} }
@@ -235,7 +241,9 @@ export default {
}, },
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
@@ -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()

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
} }
}, },
@@ -372,18 +386,16 @@
}, },
{ {
"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

@@ -102,7 +102,9 @@ import {
recommendMission, recommendMission,
nearMission nearMission
} from '@/api/mission.js'; } from '@/api/mission.js';
import { getPolicyContent } from '@/api/newIndex.js' import {
getPolicyContent
} from '@/api/newIndex.js'
import { import {
getcoder getcoder
} from "@/api/map.js"; } from "@/api/map.js";
@@ -159,6 +161,14 @@ export default {
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
@@ -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'
@@ -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({
@@ -401,7 +411,11 @@ 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
} }

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>
@@ -115,8 +115,12 @@ import {
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
} from '@/api/newIndex.js'
import {
getPushListByUserId
} from '@/api/userrecruit.js'
import { import {
getcoder getcoder
} from "@/api/map.js"; } from "@/api/map.js";
@@ -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({
@@ -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'
@@ -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;
} }
@@ -497,7 +513,11 @@ 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]
@@ -517,7 +537,11 @@ 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 => {
@@ -533,7 +557,11 @@ 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 => {

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>
@@ -115,8 +115,12 @@ import {
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
} from '@/api/newIndex.js'
import {
getPushListByUserId
} from '@/api/userrecruit.js'
import { import {
getcoder getcoder
} from "@/api/map.js"; } from "@/api/map.js";
@@ -180,10 +184,18 @@ export default {
}, },
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) {
@@ -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({
@@ -460,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
}
console.log(this.searchData, '------'); console.log(this.searchData, '------');
if (submitData || areaModal || industryModal) { if (submitData || areaModal || industryModal) {
this.isSearch = true; this.isSearch = true;
@@ -490,7 +514,11 @@ 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 => {
@@ -507,7 +535,11 @@ 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 => {
@@ -523,7 +555,11 @@ 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 => {

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,7 +126,12 @@
</template> </template>
<script> <script>
import { newMissionAll, getSearchKeyWordsList, clearSearchKeyWords, getListByKeyWords } from '@/api/mission.js'; import {
newMissionAll,
getSearchKeyWordsList,
clearSearchKeyWords,
getListByKeyWords
} from '@/api/mission.js';
import companyList from '@/components/companyList/companyList.vue'; import companyList from '@/components/companyList/companyList.vue';
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';
@@ -289,6 +300,7 @@ export default {
background-color: #f3f4f8; background-color: #f3f4f8;
min-height: 95vh; min-height: 95vh;
} }
.baddd { .baddd {
background-color: #f6f6f6; background-color: #f6f6f6;
height: 20rpx; height: 20rpx;
@@ -358,15 +370,18 @@ export default {
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;
@@ -376,16 +391,19 @@ export default {
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;
@@ -393,11 +411,13 @@ export default {
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;
@@ -405,6 +425,7 @@ export default {
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;
@@ -414,6 +435,7 @@ export default {
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;

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': '/'