diff --git a/pages/complete-info/company-info.vue b/pages/complete-info/company-info.vue
index f83f5fb..797fb37 100644
--- a/pages/complete-info/company-info.vue
+++ b/pages/complete-info/company-info.vue
@@ -718,11 +718,21 @@ const confirm = () => {
company: companyData
}
- $api.createRequest('/app/user/registerUser', submitData, 'post')
+ $api.createRequest('/registerUser', submitData, 'post')
.then(async (resData) => {
uni.hideLoading()
$api.msg('企业信息保存成功')
+ // 如果接口返回了token,需要重新保存token
+ if (resData.token) {
+ try {
+ await userStore.loginSetToken(resData.token)
+ console.log('Token已更新:', resData.token)
+ } catch (error) {
+ console.error('更新Token失败:', error)
+ }
+ }
+
// 保存成功后,重新获取用户信息并更新缓存
try {
await userStore.getUserResume()
diff --git a/pages/index/components/index-one.vue b/pages/index/components/index-one.vue
index ec01925..f4ae5a3 100644
--- a/pages/index/components/index-one.vue
+++ b/pages/index/components/index-one.vue
@@ -425,7 +425,7 @@ const companyInfo = reactive({
name: '',
avatar: '',
industry: '',
- size: '',
+ scale: '',
isVerified: false
});
@@ -583,7 +583,7 @@ const getCompanyInfo = () => {
companyInfo.name = company.name || '';
companyInfo.avatar = company.avatar || '';
companyInfo.industry = company.industryType || '互联网';
- companyInfo.size = company.companySize || '100-999人';
+ companyInfo.scale = company.scale || '100-999人';
// 判断是否实名:legalIdCard字段有值则表示已实名
companyInfo.isVerified = !!(company.legalIdCard && company.legalIdCard.trim());
@@ -591,7 +591,7 @@ const getCompanyInfo = () => {
console.log('企业信息:', {
name: companyInfo.name,
industry: companyInfo.industry,
- size: companyInfo.size,
+ size: companyInfo.scale,
isVerified: companyInfo.isVerified
});
} else {
diff --git a/pages/job/publishJob.vue b/pages/job/publishJob.vue
index ddae20d..988d621 100644
--- a/pages/job/publishJob.vue
+++ b/pages/job/publishJob.vue
@@ -19,21 +19,18 @@
招聘公司
-
+ {{formData.companyName}}
招聘公司
-
-
+
+ class="company-display"
+ >
+ {{ formData.companyName || '未设置企业名称' }}
+ (企业用户,不可修改)
+
import { ref, reactive, onMounted, onUnmounted } from 'vue';
+import { onShow } from '@dcloudio/uni-app';
import { storeToRefs } from 'pinia';
import { createRequest } from '@/utils/request';
import useDictStore from '@/stores/useDictStore';
@@ -295,6 +293,9 @@ onMounted(async () => {
calculateScrollViewHeight();
await initFormData();
+ // 获取企业信息
+ getCompanyInfo();
+
// 监听企业选择事件
uni.$on('companySelected', handleCompanySelected);
});
@@ -304,6 +305,35 @@ onUnmounted(() => {
uni.$off('companySelected', handleCompanySelected);
});
+// 页面显示时获取最新的企业信息(参考首页方法)
+onShow(() => {
+ getCompanyInfo();
+});
+
+// 获取企业信息(参考首页方法)
+const getCompanyInfo = () => {
+ try {
+ const cachedUserInfo = uni.getStorageSync('userInfo') || {};
+ console.log('缓存中的userInfo:', cachedUserInfo);
+
+ // 检查是否有company字段
+ if (cachedUserInfo.company) {
+ const company = cachedUserInfo.company;
+ formData.companyName = company.name || '';
+ console.log('从缓存获取企业名称:', company.name);
+ } else {
+ console.log('缓存中没有company字段');
+ // 如果company字段不存在,尝试从companyName字段获取(兼容旧数据)
+ if (cachedUserInfo.companyName) {
+ formData.companyName = cachedUserInfo.companyName;
+ console.log('从companyName字段获取企业名称:', cachedUserInfo.companyName);
+ }
+ }
+ } catch (error) {
+ console.error('获取企业信息失败:', error);
+ }
+};
+
// 初始化表单数据
const initFormData = async () => {
try {
@@ -331,6 +361,11 @@ const initFormData = async () => {
formData.companyId = userStore.userInfo.id;
}
+ // 如果是企业用户,获取企业信息
+ if (userType.value === 1) {
+ getCompanyInfo();
+ }
+
} catch (error) {
console.error('初始化表单数据失败:', error);
uni.showToast({
@@ -747,6 +782,27 @@ const validateForm = () => {
}
}
+// 企业名称显示样式
+.company-display {
+ display: flex;
+ flex-direction: column;
+ padding: 0 0 20rpx 0;
+ box-sizing: border-box;
+
+ .company-name {
+ font-size: 28rpx;
+ color: #333;
+ font-weight: 500;
+ margin-bottom: 8rpx;
+ }
+
+ .readonly-tip {
+ font-size: 24rpx;
+ color: #999;
+ font-style: italic;
+ }
+}
+
// 联系人管理样式
.contacts-container {
.contact-item {