diff --git a/components/CustomTabBar/CustomTabBar.vue b/components/CustomTabBar/CustomTabBar.vue index 5e21f93..410b1dc 100644 --- a/components/CustomTabBar/CustomTabBar.vue +++ b/components/CustomTabBar/CustomTabBar.vue @@ -200,6 +200,21 @@ const switchTab = (item, index) => { const storeUserInfo = userInfo.value || {}; const currentUserInfo = storeUserInfo.id ? storeUserInfo : cachedUserInfo; + // 检查是否有未处理的候选人(仅对企业用户生效) + const pendCount = Number(currentUserInfo.pendCount) || 0; + const isCompanyUser = Number(currentUserInfo.isCompanyUser) || 0; + if (isCompanyUser === 0 && pendCount > 0) { + // 企业用户且有未处理的候选人,提示用户 + uni.showModal({ + title: '提示', + content: '您已发布的岗位有未处理的候选人,请在后台处理后再发布岗位。', + showCancel: false, + confirmText: '我知道了', + }); + currentItem.value = item.id; + return; + } + // 判断企业信息字段company是否为null或undefined if (!currentUserInfo.company || currentUserInfo.company === null) { // 企业信息为空,跳转到企业信息补全页面 diff --git a/config.js b/config.js index 4f174da..dff82d2 100644 --- a/config.js +++ b/config.js @@ -6,8 +6,8 @@ */ export default { // baseUrl: 'http://39.98.44.136:8080', // 测试 - baseUrl: 'https://www.xjksly.cn/api/ks', // 正式环境 - // baseUrl: 'http://ks.zhaopinzao8dian.com/api/ks', // 测试 + // baseUrl: 'https://www.xjksly.cn/api/ks', // 正式环境 + baseUrl: 'http://ks.zhaopinzao8dian.com/api/ks', // 测试 // LCBaseUrl:'http://10.110.145.145:9100',//内网端口 // LCBaseUrlInner:'http://10.110.145.145:10100',//招聘、培训、帮扶 diff --git a/packageA/pages/post/post.vue b/packageA/pages/post/post.vue index 4ada270..ad5eb9d 100644 --- a/packageA/pages/post/post.vue +++ b/packageA/pages/post/post.vue @@ -157,7 +157,7 @@ 竞争力分析 - {{ JSON.stringify(raderData) }} + 三个月内共{{ raderData.totalApplicants }} 位求职者申请,你的简历匹配度为{{ raderData.matchScore }}分,排名位于第{{ raderData.rank }}位,超过{{ raderData.percentile }}%的竞争者,处在优秀位置。 @@ -469,7 +469,9 @@ function confirmAction() { if (jobInfo.value.isApply === 1) { // 取消投递 const cancelJobId = jobId.value || jobInfo.value.jobId; - $api.createRequest(`/app/job/applyJobCencal`, { jobId: cancelJobId }, 'DELETE').then((resData) => { + + console.log(jobInfo.value.jobId, 'jobInfo.value.jobId'); + $api.createRequest(`/app/job/applyJobCencal`, { jobId: jobInfo.value.jobId }, 'DELETE').then((resData) => { $api.msg('取消投递成功'); getDetail(encryptJobId); // 刷新职位信息 showConfirmDialog.value = false; diff --git a/utils/request.js b/utils/request.js index 6f9096f..ee495f7 100644 --- a/utils/request.js +++ b/utils/request.js @@ -35,17 +35,23 @@ const encryptPathPrefixes = [ '/app/phoneLogin', ]; +const noEncryptSet = new Set([ + 'DELETE:/app/job/applyJobCencal', +]); + const isEncryptNeeded = (method, url) => { - const key = `${method.toUpperCase()}:${url}`; + const pureUrl = url.split('?')[0]; + const key = `${method.toUpperCase()}:${pureUrl}`; + if (noEncryptSet.has(key)) return false; if (needToEncryptSet.has(key)) return true; for (const encryptKey of needToEncryptSet) { const [encryptMethod, encryptUrl] = encryptKey.split(':'); - if (encryptMethod === method.toUpperCase() && url.startsWith(encryptUrl.split('/{')[0])) { + if (encryptMethod === method.toUpperCase() && pureUrl.startsWith(encryptUrl.split('/{')[0])) { return true; } } for (const prefix of encryptPathPrefixes) { - if (url.startsWith(prefix)) { + if (pureUrl.startsWith(prefix)) { return true; } } @@ -55,7 +61,7 @@ const isEncryptNeeded = (method, url) => { const encryptRequestData = (data) => { const jsonData = JSON.stringify(data); // const jsonData = JSON.stringify({a: '1'}); - // console.log('[请求] 加密前:', jsonData) + console.log('[请求] 加密前:', jsonData) return { encrypted: true, encryptedData: sm4Encrypt(config.sm4Config.key, jsonData), @@ -175,6 +181,8 @@ export function createRequest(url, data = {}, method = 'GET', loading = false, h // 响应拦截 if (resData.statusCode === 200) { const responseData = handleResponseData(resData.data) + console.log('[请求] 接口地址:', config.baseUrl + url) + console.log('[请求] 解密后数据:', responseData) const { code, msg