diff --git a/components/renderJobs/renderJobs.vue b/components/renderJobs/renderJobs.vue
index 29ff2e8..3354ce2 100644
--- a/components/renderJobs/renderJobs.vue
+++ b/components/renderJobs/renderJobs.vue
@@ -77,7 +77,7 @@ function nextDetail(job) {
const recordData = recommedIndexDb.JobParameter(job);
recommedIndexDb.addRecord(recordData);
}
- navTo(`/packageA/pages/post/post?jobId=${encodeURIComponent(job.jobId)}`);
+ navTo(`/packageA/pages/post/post?jobId=${encodeURIComponent(job.jobId)}&encryptJobId=${encodeURIComponent(job.encryptJobId)}`);
}
diff --git a/components/renderJobs/renderJobsCheckBox.vue b/components/renderJobs/renderJobsCheckBox.vue
index c45a053..f163442 100644
--- a/components/renderJobs/renderJobsCheckBox.vue
+++ b/components/renderJobs/renderJobsCheckBox.vue
@@ -103,7 +103,7 @@ function nextDetail(job) {
const recordData = recommedIndexDb.JobParameter(job);
recommedIndexDb.addRecord(recordData);
}
- navTo(`/packageA/pages/post/post?jobId=${encodeURIComponent(job.jobId)}`);
+ navTo(`/packageA/pages/post/post?jobId=${encodeURIComponent(job.jobId)}&encryptJobId=${encodeURIComponent(job.encryptJobId)}`);
}
function toggleSelect(jobId) {
@@ -122,7 +122,7 @@ function handleCardClick(job, e) {
const recordData = recommedIndexDb.JobParameter(job);
recommedIndexDb.addRecord(recordData);
}
- navTo(`/packageA/pages/post/post?jobId=${encodeURIComponent(job.jobId)}`);
+ navTo(`/packageA/pages/post/post?jobId=${encodeURIComponent(job.jobId)}&encryptJobId=${encodeURIComponent(job.encryptJobId)}`);
}
// 新增:提供选中状态和切换方法给父组件
diff --git a/packageA/pages/Intendedposition/Intendedposition.vue b/packageA/pages/Intendedposition/Intendedposition.vue
index d70d315..a1dedbb 100644
--- a/packageA/pages/Intendedposition/Intendedposition.vue
+++ b/packageA/pages/Intendedposition/Intendedposition.vue
@@ -41,8 +41,8 @@ onReachBottom(() => {
getJobList();
});
-function navToPost(jobId) {
- navTo(`/packageA/pages/post/post?jobId=${encodeURIComponent(jobId)}`);
+function navToPost(job) {
+ navTo(`/packageA/pages/post/post?jobId=${encodeURIComponent(job.jobId)}&encryptJobId=${encodeURIComponent(job.encryptJobId)}`);
}
function getJobList(type = 'add') {
diff --git a/packageA/pages/browseJob/browseJob.vue b/packageA/pages/browseJob/browseJob.vue
index a130eb8..744f31d 100644
--- a/packageA/pages/browseJob/browseJob.vue
+++ b/packageA/pages/browseJob/browseJob.vue
@@ -83,8 +83,8 @@ function toSelectDate() {
});
}
-function navToPost(jobId) {
- navTo(`/packageA/pages/post/post?jobId=${encodeURIComponent(jobId)}`);
+function navToPost(job) {
+ navTo(`/packageA/pages/post/post?jobId=${encodeURIComponent(job.jobId)}&encryptJobId=${encodeURIComponent(job.encryptJobId)}`);
}
function searchCollection(e) {
diff --git a/packageA/pages/cancelApplication/cancelApplication.vue b/packageA/pages/cancelApplication/cancelApplication.vue
index d2a45d1..b590770 100644
--- a/packageA/pages/cancelApplication/cancelApplication.vue
+++ b/packageA/pages/cancelApplication/cancelApplication.vue
@@ -47,8 +47,8 @@ onReachBottom(() => {
getJobList();
});
-function navToPost(jobId) {
- navTo(`/packageA/pages/post/post?jobId=${encodeURIComponent(jobId)}`);
+function navToPost(job) {
+ navTo(`/packageA/pages/post/post?jobId=${encodeURIComponent(job.jobId)}&encryptJobId=${encodeURIComponent(job.encryptJobId)}`);
}
function getJobList(type = 'add') {
diff --git a/packageA/pages/post/component/radarMap.vue b/packageA/pages/post/component/radarMap.vue
index 012a53f..2cfa317 100644
--- a/packageA/pages/post/component/radarMap.vue
+++ b/packageA/pages/post/component/radarMap.vue
@@ -1,13 +1,12 @@
-
+
-
+
diff --git a/packageA/pages/post/post.vue b/packageA/pages/post/post.vue
index 82d3f5e..62ee99b 100644
--- a/packageA/pages/post/post.vue
+++ b/packageA/pages/post/post.vue
@@ -271,6 +271,7 @@ const jobInfo = ref({});
const state = reactive({});
const mapCovers = ref([]);
const jobIdRef = ref();
+const jobId = ref();
// 竞争力分析数据,初始化为包含默认值的完整结构,确保雷达图能正常渲染
const raderData = ref({
matchScore: 0,
@@ -293,7 +294,7 @@ const showConfirmDialog = ref(false);
onLoad((option) => {
console.log(option, 'option');
- if (option.jobId) {
+ if (option.encryptJobId) {
initLoad(option);
}
});
@@ -303,7 +304,7 @@ onShow(() => {
// #ifdef H5
try {
const option = parseQueryParams(); // 兼容微信内置浏览器
- if (option.jobId) {
+ if (option.encryptJobId) {
initLoad(option);
}
} catch (e) {
@@ -312,10 +313,13 @@ onShow(() => {
// #endif
});
function initLoad(option) {
- const jobId = decodeURIComponent(option.jobId);
- if (jobId !== jobIdRef.value) {
- jobIdRef.value = jobId;
- getDetail(jobId);
+ const encryptJobId = decodeURIComponent(option.encryptJobId);
+ if (option.jobId) {
+ jobId.value = decodeURIComponent(option.jobId);
+ }
+ if (encryptJobId !== jobIdRef.value) {
+ jobIdRef.value = encryptJobId;
+ getDetail(encryptJobId);
}
}
@@ -327,17 +331,17 @@ function seeExplain() {
}
}
-function getDetail(jobId) {
+function getDetail(encryptJobId) {
return new Promise((reslove, reject) => {
- $api.createRequest(`/app/job/${jobId}`).then((resData) => {
+ $api.createRequest(`/app/job/${encryptJobId}`).then((resData) => {
const { latitude, longitude, companyName, companyId } = resData.data;
jobInfo.value = resData.data;
reslove(resData.data);
getCompanyIsAJobs(companyId);
if (currentUserType.value !== 0) {
- getCompetivetuveness(jobId);
+ getCompetivetuveness(encryptJobId);
}
- // getCompetivetuveness(jobId);
+ // getCompetivetuveness(encryptJobId);
if (latitude && longitude) {
mapCovers.value = [
{
@@ -379,8 +383,8 @@ function getTextWidth(text, size = 12) {
return -(estimatedWidth / 2) - 20; // 计算文字中心点
}
-function getCompetivetuveness(jobId) {
- $api.createRequest(`/app/job/competitiveness/${jobId}`, {}, 'GET').then((resData) => {
+function getCompetivetuveness(encryptJobId) {
+ $api.createRequest(`/app/job/competitiveness/${encryptJobId}`, {}, 'GET').then((resData) => {
// 如果接口返回的数据为 null 或空,使用默认值0
if (resData && resData.data) {
// 确保 radarChart 字段存在,如果不存在则使用默认值
@@ -455,19 +459,20 @@ function hideDialog() {
// 确认操作
function confirmAction() {
- const jobId = jobInfo.value.jobId;
+ const encryptJobId = jobIdRef.value;
if (jobInfo.value.isApply === 1) {
// 取消投递
- $api.createRequest(`/app/job/applyJobCencal`, { jobId }, 'DELETE').then((resData) => {
+ const cancelJobId = jobId.value || jobInfo.value.jobId;
+ $api.createRequest(`/app/job/applyJobCencal`, { jobId: cancelJobId }, 'DELETE').then((resData) => {
$api.msg('取消投递成功');
- getDetail(jobId); // 刷新职位信息
+ getDetail(encryptJobId); // 刷新职位信息
showConfirmDialog.value = false;
});
} else {
// 确认投递
- $api.createRequest(`/app/job/apply/${jobId}`, {}, 'GET').then((resData) => {
+ $api.createRequest(`/app/job/apply/${encryptJobId}`, {}, 'GET').then((resData) => {
$api.msg('申请成功');
- getDetail(jobId); // 刷新职位信息
+ getDetail(encryptJobId); // 刷新职位信息
showConfirmDialog.value = false;
});
}
@@ -475,8 +480,8 @@ function confirmAction() {
// 确认投递
function confirmApply() {
- const jobId = jobInfo.value.jobId;
- $api.createRequest(`/app/job/apply/${jobId}`, {}, 'GET').then((resData) => {
+ const encryptJobId = jobIdRef.value;
+ $api.createRequest(`/app/job/apply/${encryptJobId}`, {}, 'GET').then((resData) => {
$api.msg('申请成功');
const jobUrl = jobInfo.value.jobUrl;
// return window.open(jobUrl);
@@ -486,8 +491,8 @@ function confirmApply() {
// 取消投递
function cancelApply() {
- const jobId = jobInfo.value.jobId;
- $api.createRequest(`/app/job/applyJobCencal`, { jobId }, 'DELETE').then((resData) => {
+ const cancelJobId = jobId.value || jobInfo.value.jobId;
+ $api.createRequest(`/app/job/applyJobCencal`, { jobId: cancelJobId }, 'DELETE').then((resData) => {
$api.msg('取消投递成功');
showConfirmDialog.value = false;
});
@@ -495,15 +500,15 @@ function cancelApply() {
// 取消/收藏岗位
function jobCollection() {
- const jobId = jobInfo.value.jobId;
+ const encryptJobId = jobIdRef.value;
if (jobInfo.value.isCollection) {
- $api.createRequest(`/app/job/collection/${jobId}`, {}, 'DELETE').then((resData) => {
- getDetail(jobId);
+ $api.createRequest(`/app/job/collection/${encryptJobId}`, {}, 'DELETE').then((resData) => {
+ getDetail(encryptJobId);
$api.msg('取消收藏成功');
});
} else {
- $api.createRequest(`/app/job/collection/${jobId}`, {}, 'POST').then((resData) => {
- getDetail(jobId);
+ $api.createRequest(`/app/job/collection/${encryptJobId}`, {}, 'POST').then((resData) => {
+ getDetail(encryptJobId);
$api.msg('收藏成功');
});
}
diff --git a/packageB/login2.vue b/packageB/login2.vue
index e861618..7f9c4d6 100644
--- a/packageB/login2.vue
+++ b/packageB/login2.vue
@@ -1,18 +1,64 @@
-
-
-
-
-
+
+
+
+
+
+
+
+ ✦
-
-
-
+ 欢迎回来
+ 请登录您的账号
+
+
+
+
+
+ 账号
+
+ 👤
+
+
-
+
+ 密码
+
+ 🔒
+
+
+
+
+
+ 验证码
+
+ ✧
+
+
+
+
+
+
+
+
+
+
+
+
+
@@ -49,15 +95,12 @@
code: '',
uuid: ''
})
- const jumpUrl=ref('')
+
onLoad((option) => {
- console.log("111",option)
+ console.log("111")
if(option.flag){
flag.value=option.flag
}
- if(option.jump){
- jumpUrl.value=option.jump
- }
})
onMounted(() => {
@@ -142,13 +185,11 @@
})
}else if(flag.value=='nw'){
$api.myRequest('/auth/login',form,'post',9100).then((res) => {
- uni.setStorageSync('Padmin-Token', res.data.access_token)
- // 临时修改,现在有多个跳转页面
- // uni.reLaunch({
- // url: '/packageB/priority/helpFilter'
- // })
+ uni.setStorageSync('inspur-admin-Token', res.data.access_token)
+ uni.setStorageSync('fourLevelLinkage-token', res.data.access_token)
+
uni.reLaunch({
- url:jumpUrl.value
+ url: '/packageB/priority/helpFilter'
})
codeUrl.value = 'data:image/gif;base64,' + res.img
}).catch(() => {
@@ -179,130 +220,220 @@
\ No newline at end of file
diff --git a/packageB/priority/helpFilter.vue b/packageB/priority/helpFilter.vue
index 480a906..5c58abe 100644
--- a/packageB/priority/helpFilter.vue
+++ b/packageB/priority/helpFilter.vue
@@ -158,7 +158,7 @@
-
+
@@ -267,7 +267,7 @@ function getTaskTypeLabelByValue(value) {
// 加载某一级的数据(parentId 为空表示根)
async function loadLevelData(parentId,node) {
let header = {
- 'Authorization': uni.getStorageSync('fourLevelLinkage-token'),
+ 'Authorization': 'Bearer ' + uni.getStorageSync('fourLevelLinkage-token'),
'Content-Type': "application/x-www-form-urlencoded"
};
let params = { parentId };
@@ -384,7 +384,7 @@ function getDataList(type = 'add') {
}
}
function goFollow(item) {
- navTo(`/packageB/priority/helpFollow?task_id=${item.task_id}&person_id=${item.person_id}&&name=${item.name}&&taskType=${getTaskTypeLabelByValue(item.task_type)}`);
+ navTo(`/packageB/priority/helpFollow?task_id=${item.task_id}&person_id=${item.person_id}&goal_person_id=${item.goal_person_id}&name=${item.name}&&taskType=${getTaskTypeLabelByValue(item.task_type)}`);
}
//智能推荐
const goRecommend = (item) => {
diff --git a/packageB/priority/helpFollow.vue b/packageB/priority/helpFollow.vue
index 7546523..8e701c2 100644
--- a/packageB/priority/helpFollow.vue
+++ b/packageB/priority/helpFollow.vue
@@ -162,7 +162,7 @@ const onDateChange = ( e) => {
}
function getFollowList(){
let header={
- 'Authorization':uni.getStorageSync('fourLevelLinkage-token'),
+ 'Authorization':'Bearer ' + uni.getStorageSync('fourLevelLinkage-token'),
'Content-Type': "application/x-www-form-urlencoded"
}
let params={
@@ -211,13 +211,14 @@ const handleSubmit = () => {
formRef.value?.validate()
.then(() => {
let header={
- 'Authorization':uni.getStorageSync('fourLevelLinkage-token')
+ 'Authorization':'Bearer ' + uni.getStorageSync('fourLevelLinkage-token')
}
formData.goalPersonId=personInfo.value.goalPersonId
$api.myRequest('/dispatch/assist/records/addRecords', formData,'post',9100,header).then((resData) => {
console.log("resData",resData)
if(resData && resData.code == 200){
handleReset()
+ getFollowList()
uni.showToast({
title: '保存成功',
icon: 'success',
@@ -247,6 +248,8 @@ const handleReset = () => {
formData.nextContactDate = '';
}
onLoad((options) => {
+ console.log(options)
+ personInfo.value.goalPersonId=options.goal_person_id
personInfo.value.person_id=options.person_id
personInfo.value.name=options.name
personInfo.value.taskType=options.taskType
diff --git a/pages/index/components/index-one.vue b/pages/index/components/index-one.vue
index cdf4c13..cced401 100644
--- a/pages/index/components/index-one.vue
+++ b/pages/index/components/index-one.vue
@@ -161,12 +161,12 @@
帮扶
-
+
@@ -304,8 +304,14 @@
:value="list"
>
-
-
+
+
{{ job.jobTitle }}
@@ -357,10 +363,13 @@
地区:{{ job.regionName }}
-
+
+
+
+ 未通过审核
-
+
@@ -401,8 +410,14 @@
:value="list"
>
-
-
+
+
{{ job.jobTitle }}
@@ -450,10 +465,13 @@
地区:{{ job.regionName }}
-
+
+
+
+ 未通过审核
-
+
@@ -578,6 +596,15 @@ const shouldShowCompanyCard = computed(() => {
return companyInfo.name && companyInfo.name.trim() !== '';
});
+// 计算当前用户类型
+const currentUserType = computed(() => {
+ // 优先从store获取,如果为空则从缓存获取
+ const storeIsCompanyUser = userInfo.value?.isCompanyUser;
+ const cachedUserInfo = uni.getStorageSync('userInfo') || {};
+ const cachedIsCompanyUser = cachedUserInfo.isCompanyUser;
+ return storeIsCompanyUser !== undefined ? Number(storeIsCompanyUser) : Number(cachedIsCompanyUser);
+});
+
// 计算是否显示企业用户内容
const shouldShowCompanyContent = computed(() => {
// 未登录时不显示企业内容
@@ -1065,7 +1092,7 @@ function clearfindJob(job) {
}
function nextDetail(job) {
- navTo(`/packageA/pages/post/post?jobId=${encodeURIComponent(job.jobId)}`);
+ navTo(`/packageA/pages/post/post?jobId=${encodeURIComponent(job.jobId)}&encryptJobId=${encodeURIComponent(job.encryptJobId)}`);
}
function navToService(serviceType) {
@@ -1216,7 +1243,6 @@ function getJobRecommend(type = 'add') {
sessionId: useUserStore().seesionId,
...pageState.search,
...conditionSearch.value,
- isPublish: 1,
};
// 当选中零工市场(4)或疆外(3)时,order参数传递0
if (pageState.search.order === 3 || pageState.search.order === 4) {
@@ -1231,9 +1257,11 @@ function getJobRecommend(type = 'add') {
// 只有企业用户(isCompanyUser=0)才添加current字段
if (userType === 0) {
params.current = pageNull.value;
+ // 企业用户不传递isPublish字段
} else {
- // 求职者只显示已上架的岗位(jobStatus=0)
+ // 求职者只显示已上架且通过审核的岗位(jobStatus=0, isPublish=1)
params.jobStatus = 0;
+ params.isPublish = 1;
}
let comd = { recommend: true, jobCategory: '', tip: '确认你的兴趣,为您推荐更多合适的岗位' };
$api.createRequest('/app/job/recommend', params).then((resData) => {
@@ -1315,9 +1343,10 @@ function getJobList(type = 'add') {
const cachedIsCompanyUser = cachedUserInfo.isCompanyUser;
const userType = storeIsCompanyUser !== undefined ? Number(storeIsCompanyUser) : Number(cachedIsCompanyUser);
- // 如果不是企业用户(求职者),只显示已上架的岗位
+ // 如果不是企业用户(求职者),只显示已上架且通过审核的岗位
if (userType !== 0) {
params.jobStatus = 0;
+ params.isPublish = 1;
}
$api.createRequest('/app/job/list', params).then((resData) => {
@@ -1344,7 +1373,7 @@ function getJobList(type = 'add') {
}
// 上架岗位
-const jobUp = (jobId) => {
+const jobUp = (encryptJobId) => {
if (!checkLogin()) return;
uni.showLoading({
@@ -1352,7 +1381,7 @@ const jobUp = (jobId) => {
mask: true
});
- $api.createRequest(`/app/job/jobUp/${jobId}`, {}, 'PUT', true).then((res) => {
+ $api.createRequest(`/app/job/jobUp/${encryptJobId}`, {}, 'PUT', true).then((res) => {
uni.hideLoading();
$api.msg('上架成功');
// 刷新数据
@@ -1369,7 +1398,7 @@ const jobUp = (jobId) => {
};
// 下架岗位
-const jobDown = (jobId) => {
+const jobDown = (encryptJobId) => {
if (!checkLogin()) return;
uni.showLoading({
@@ -1377,7 +1406,7 @@ const jobDown = (jobId) => {
mask: true
});
- $api.createRequest(`/app/job/jobDown/${jobId}`, {}, 'PUT', true).then((res) => {
+ $api.createRequest(`/app/job/jobDown/${encryptJobId}`, {}, 'PUT', true).then((res) => {
uni.hideLoading();
$api.msg('下架成功');
// 刷新数据
@@ -1404,14 +1433,14 @@ const toggleJobStatus = (job) => {
// 根据当前状态决定调用哪个接口
const isCurrentlyUp = Number(job.jobStatus) === 0; // 0: 已上架, 1: 已下架
- const apiUrl = isCurrentlyUp ? `/app/job/jobDown/${job.jobId}` : `/app/job/jobUp/${job.jobId}`;
+ const apiUrl = isCurrentlyUp ? `/app/job/jobDown/${job.encryptJobId}` : `/app/job/jobUp/${job.encryptJobId}`;
$api.createRequest(apiUrl, {}, 'PUT', true).then((res) => {
uni.hideLoading();
$api.msg(isCurrentlyUp ? '下架成功' : '上架成功');
// 更新本地数据状态,避免立即刷新整个列表
- const jobIndex = list.value.findIndex(item => item.jobId === job.jobId);
+ const jobIndex = list.value.findIndex(item => item.encryptJobId === job.encryptJobId);
if (jobIndex !== -1) {
// 更新状态
list.value[jobIndex].jobStatus = isCurrentlyUp ? 1 : 0;
@@ -2133,6 +2162,17 @@ defineExpose({ loadData });
margin: 4rpx 4rpx 0 0
height: 26rpx
width: 26rpx
+ // 未通过审核状态样式
+ .unpublished-badge
+ position: absolute
+ top: 0
+ right: 0
+ background-color: #FF4D4F
+ color: #FFFFFF
+ font-size: 20rpx
+ padding: 6rpx 12rpx
+ border-bottom-left-radius: 16rpx
+ z-index: 10
// 推荐卡片
.recommend-card::before
position: absolute
diff --git a/pages/search/search.vue b/pages/search/search.vue
index c3e0fe6..f7a26bc 100644
--- a/pages/search/search.vue
+++ b/pages/search/search.vue
@@ -134,7 +134,7 @@ function nextDetail(job) {
const recordData = recommedIndexDb.JobParameter(job);
recommedIndexDb.addRecord(recordData);
}
- navTo(`/packageA/pages/post/post?jobId=${encodeURIComponent(job.jobId)}`);
+ navTo(`/packageA/pages/post/post?jobId=${encodeURIComponent(job.jobId)}&encryptJobId=${encodeURIComponent(job.encryptJobId)}`);
}
function nextVideo(job) {