Compare commits
5 Commits
bc48d7fff0
...
CareerMap
| Author | SHA1 | Date | |
|---|---|---|---|
|
|
d78382ba08 | ||
|
|
a74cdcc850 | ||
| d89b566ad3 | |||
| 3c66e16e49 | |||
| ccbb5008bd |
@@ -81,10 +81,16 @@ const fromValue = reactive({
|
|||||||
area: '',
|
area: '',
|
||||||
jobTitleId: [],
|
jobTitleId: [],
|
||||||
});
|
});
|
||||||
onLoad(async () => {
|
const needSkill = ref(false);
|
||||||
|
|
||||||
|
onLoad(async (options) => {
|
||||||
// 初始化字典数据
|
// 初始化字典数据
|
||||||
await getDictData();
|
await getDictData();
|
||||||
initLoad();
|
initLoad();
|
||||||
|
// 检查是否需要继续跳转到技能页面
|
||||||
|
if (options && options.needSkill === 'true') {
|
||||||
|
needSkill.value = true;
|
||||||
|
}
|
||||||
});
|
});
|
||||||
const confirm = () => {
|
const confirm = () => {
|
||||||
if (!fromValue.jobTitleId) {
|
if (!fromValue.jobTitleId) {
|
||||||
@@ -94,7 +100,12 @@ const confirm = () => {
|
|||||||
$api.msg('完成');
|
$api.msg('完成');
|
||||||
state.disbleDate = true;
|
state.disbleDate = true;
|
||||||
getUserResume().then(() => {
|
getUserResume().then(() => {
|
||||||
navBack();
|
// 如果需要继续跳转到技能页面,则跳转到个人信息页面(携带 needSkill 标记,便于返回两级)
|
||||||
|
if (needSkill.value) {
|
||||||
|
navTo('/packageA/pages/personalInfo/personalInfo?needSkill=true');
|
||||||
|
} else {
|
||||||
|
navBack();
|
||||||
|
}
|
||||||
});
|
});
|
||||||
});
|
});
|
||||||
};
|
};
|
||||||
|
|||||||
@@ -150,6 +150,8 @@ const openSelectPopup = (config) => {
|
|||||||
};
|
};
|
||||||
|
|
||||||
const percent = ref('0%');
|
const percent = ref('0%');
|
||||||
|
// 当从“先职位后技能”链路进入时,提交后需直接返回职业规划页
|
||||||
|
const needGoBackTwoStep = ref(false);
|
||||||
const state = reactive({
|
const state = reactive({
|
||||||
educationText: '',
|
educationText: '',
|
||||||
politicalAffiliationText: '',
|
politicalAffiliationText: '',
|
||||||
@@ -168,7 +170,10 @@ const fromValue = reactive({
|
|||||||
// 移除重复的onLoad定义,已在上方实现
|
// 移除重复的onLoad定义,已在上方实现
|
||||||
|
|
||||||
// 在onLoad中初始化数据,确保页面加载时就能获取技能信息
|
// 在onLoad中初始化数据,确保页面加载时就能获取技能信息
|
||||||
onLoad(() => {
|
onLoad((options = {}) => {
|
||||||
|
if (options.needSkill === 'true') {
|
||||||
|
needGoBackTwoStep.value = true;
|
||||||
|
}
|
||||||
// 初始化页面数据
|
// 初始化页面数据
|
||||||
initLoad();
|
initLoad();
|
||||||
});
|
});
|
||||||
@@ -369,7 +374,12 @@ const confirm = () => {
|
|||||||
$api.createRequest('/app/user/resume', params, 'post').then((resData) => {
|
$api.createRequest('/app/user/resume', params, 'post').then((resData) => {
|
||||||
$api.msg('完成');
|
$api.msg('完成');
|
||||||
getUserResume().then(() => {
|
getUserResume().then(() => {
|
||||||
navBack();
|
// 如果从“缺职位+技能”链路进入,回退两层直接返回职业规划页
|
||||||
|
if (needGoBackTwoStep.value) {
|
||||||
|
navBack({ delta: 2 });
|
||||||
|
} else {
|
||||||
|
navBack();
|
||||||
|
}
|
||||||
});
|
});
|
||||||
});
|
});
|
||||||
};
|
};
|
||||||
|
|||||||
@@ -1,7 +1,7 @@
|
|||||||
<!--
|
<!--
|
||||||
* @Date: 2025-10-16 15:15:47
|
* @Date: 2025-10-16 15:15:47
|
||||||
* @LastEditors: lip
|
* @LastEditors: shirlwang
|
||||||
* @LastEditTime: 2025-11-19 18:22:34
|
* @LastEditTime: 2025-12-08 16:10:47
|
||||||
-->
|
-->
|
||||||
<template>
|
<template>
|
||||||
<!-- @scroll="handleScroll" @scrolltolower="scrollBottom" -->
|
<!-- @scroll="handleScroll" @scrolltolower="scrollBottom" -->
|
||||||
@@ -66,7 +66,7 @@
|
|||||||
<view class="title-item active"><view>政策专区</view></view>
|
<view class="title-item active"><view>政策专区</view></view>
|
||||||
<view @click="toPolicyList">{{'查看更多 >'}}</view>
|
<view @click="toPolicyList">{{'查看更多 >'}}</view>
|
||||||
</view>
|
</view>
|
||||||
<view v-for="(item, index) in policyList" :key="index" class="job-list" @click="toPolicyDetail">
|
<view v-for="(item, index) in policyList" :key="index" class="job-list" @click="toPolicyDetail(item)">
|
||||||
<view class="sign">推荐</view>
|
<view class="sign">推荐</view>
|
||||||
<view class="title">
|
<view class="title">
|
||||||
<image src="../../../packageRc/static/zcLeft.png"/>
|
<image src="../../../packageRc/static/zcLeft.png"/>
|
||||||
@@ -100,7 +100,7 @@ function getPolicy() {
|
|||||||
function toPolicyList() {
|
function toPolicyList() {
|
||||||
navTo(`/packageRc/pages/policy/policyList`)
|
navTo(`/packageRc/pages/policy/policyList`)
|
||||||
}
|
}
|
||||||
function toPolicyDetail() {
|
function toPolicyDetail(item) {
|
||||||
navTo(`/packageRc/pages/policy/policyDetail?id=${item.id}`)
|
navTo(`/packageRc/pages/policy/policyDetail?id=${item.id}`)
|
||||||
}
|
}
|
||||||
let activeTab = ref(1)
|
let activeTab = ref(1)
|
||||||
|
|||||||
@@ -106,7 +106,7 @@
|
|||||||
<view class="service-icon service-icon-4">
|
<view class="service-icon service-icon-4">
|
||||||
<IconfontIcon name="zhengce" :size="48" color="#FFFFFF" />
|
<IconfontIcon name="zhengce" :size="48" color="#FFFFFF" />
|
||||||
</view>
|
</view>
|
||||||
<view class="service-title">劳动政策指引</view>
|
<view class="service-title">政策指引</view>
|
||||||
</view>
|
</view>
|
||||||
<view class="service-item press-button" @click="handleServiceClick('skill-training')">
|
<view class="service-item press-button" @click="handleServiceClick('skill-training')">
|
||||||
<view class="service-icon service-icon-5">
|
<view class="service-icon service-icon-5">
|
||||||
@@ -856,7 +856,7 @@ function navToService(serviceType) {
|
|||||||
'service-guidance': '/pages/service/guidance',
|
'service-guidance': '/pages/service/guidance',
|
||||||
'public-recruitment': '/pages/service/public-recruitment',
|
'public-recruitment': '/pages/service/public-recruitment',
|
||||||
'resume-creation': '/pages/resume-guide/resume-guide',
|
'resume-creation': '/pages/resume-guide/resume-guide',
|
||||||
'labor-policy': '/pages/service/labor-policy',
|
'labor-policy': '/packageRc/pages/policy/policyList',
|
||||||
'skill-training': '/packageB/train/video/videoList',
|
'skill-training': '/packageB/train/video/videoList',
|
||||||
'skill-evaluation': '/packageB/train/index',
|
'skill-evaluation': '/packageB/train/index',
|
||||||
// 'skill-evaluation': '/pages/service/skill-evaluation',
|
// 'skill-evaluation': '/pages/service/skill-evaluation',
|
||||||
@@ -1065,7 +1065,6 @@ import storeRc from '@/utilsRc/store/index.js';
|
|||||||
function goRc(){
|
function goRc(){
|
||||||
if (checkLogin()) {
|
if (checkLogin()) {
|
||||||
let userInfo = uni.getStorageSync('userInfo')
|
let userInfo = uni.getStorageSync('userInfo')
|
||||||
console.log(uni.getStorageSync('userInfo'), "uni.getStorageSync('userInfo')");
|
|
||||||
storeRc.dispatch('LoginByUserInfo', userInfo).then(res => {
|
storeRc.dispatch('LoginByUserInfo', userInfo).then(res => {
|
||||||
// console.log(res, "'res");
|
// console.log(res, "'res");
|
||||||
navTo('/packageRc/pages/index/index');
|
navTo('/packageRc/pages/index/index');
|
||||||
|
|||||||
@@ -143,6 +143,11 @@ function openRemindPopup() {
|
|||||||
|
|
||||||
// 检查用户是否完善了个人信息(调用接口获取)
|
// 检查用户是否完善了个人信息(调用接口获取)
|
||||||
let hasCheckedRemindInfo = false;
|
let hasCheckedRemindInfo = false;
|
||||||
|
// 保存缺失信息的标识
|
||||||
|
const missingInfo = ref({
|
||||||
|
hasJobInfo: false,
|
||||||
|
hasSkills: false
|
||||||
|
});
|
||||||
|
|
||||||
async function getRemindInfo() {
|
async function getRemindInfo() {
|
||||||
if (hasCheckedRemindInfo) {
|
if (hasCheckedRemindInfo) {
|
||||||
@@ -186,6 +191,10 @@ async function getRemindInfo() {
|
|||||||
return skillName && skillName.trim() !== '';
|
return skillName && skillName.trim() !== '';
|
||||||
});
|
});
|
||||||
|
|
||||||
|
// 保存缺失信息标识(只保存职位信息和技能标签,身份证信息跳转到个人信息页面)
|
||||||
|
missingInfo.value.hasJobInfo = hasJobInfo;
|
||||||
|
missingInfo.value.hasSkills = hasSkills;
|
||||||
|
|
||||||
// 判断信息是否完整(idCard、职位信息、技能标签都必须有)
|
// 判断信息是否完整(idCard、职位信息、技能标签都必须有)
|
||||||
const isComplete = hasIdCard && hasJobInfo && hasSkills;
|
const isComplete = hasIdCard && hasJobInfo && hasSkills;
|
||||||
|
|
||||||
@@ -250,6 +259,10 @@ async function getRemindInfo() {
|
|||||||
return skillName && skillName.trim() !== '';
|
return skillName && skillName.trim() !== '';
|
||||||
});
|
});
|
||||||
|
|
||||||
|
// 保存缺失信息标识
|
||||||
|
missingInfo.value.hasJobInfo = hasJobInfo;
|
||||||
|
missingInfo.value.hasSkills = hasSkills;
|
||||||
|
|
||||||
// 判断信息是否完整(idCard、职位信息、技能标签都必须有)
|
// 判断信息是否完整(idCard、职位信息、技能标签都必须有)
|
||||||
const isComplete = hasIdCard && hasJobInfo && hasSkills;
|
const isComplete = hasIdCard && hasJobInfo && hasSkills;
|
||||||
|
|
||||||
@@ -299,8 +312,25 @@ function handleCancel() {
|
|||||||
async function handleConfirm() {
|
async function handleConfirm() {
|
||||||
remindPopup.value?.close();
|
remindPopup.value?.close();
|
||||||
|
|
||||||
// 跳转到完善信息页面
|
const { hasJobInfo, hasSkills } = missingInfo.value;
|
||||||
navTo('/packageA/pages/personalInfo/personalInfo');
|
|
||||||
|
// 如果同时缺少职位信息和技能标签:先跳转到职位信息页面,并传递参数表示完成后需要继续跳转到技能页面
|
||||||
|
if (!hasJobInfo && !hasSkills) {
|
||||||
|
// 跳转到职位信息页面,传递参数表示完成后需要继续跳转到技能页面
|
||||||
|
navTo('/packageA/pages/jobExpect/jobExpect?needSkill=true');
|
||||||
|
}
|
||||||
|
// 如果只缺少技能标签:直接跳转到技能页面(个人信息页面的技能部分)
|
||||||
|
else if (!hasSkills) {
|
||||||
|
navTo('/packageA/pages/personalInfo/personalInfo');
|
||||||
|
}
|
||||||
|
// 如果只缺少职位信息:直接跳转到职位信息页面
|
||||||
|
else if (!hasJobInfo) {
|
||||||
|
navTo('/packageA/pages/jobExpect/jobExpect');
|
||||||
|
}
|
||||||
|
// 如果只缺少身份证信息:跳转到个人信息页面
|
||||||
|
else {
|
||||||
|
navTo('/packageA/pages/personalInfo/personalInfo');
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
// 切换tab
|
// 切换tab
|
||||||
|
|||||||
Reference in New Issue
Block a user