diff --git a/index.html b/index.html index e624d5a..1487f6a 100644 --- a/index.html +++ b/index.html @@ -4,9 +4,7 @@ - 机具租赁商城 - - + 安徽机械化施工装备管理平台
diff --git a/src/App.vue b/src/App.vue index 7a60d5e..82e8afc 100644 --- a/src/App.vue +++ b/src/App.vue @@ -11,7 +11,7 @@ const store = useStore() const router = useRouter() // 监听来自A项目的 postMessage -const handleMessage = (event: MessageEvent) => { +const handleMessage = async (event: MessageEvent) => { // 安全检查:验证消息来源 // 在生产环境中,建议验证 event.origin 是否为可信来源 // 例如: if (event.origin !== 'https://your-a-project-domain.com') return @@ -29,6 +29,19 @@ const handleMessage = (event: MessageEvent) => { userStore.setToken(token) console.log('✅ Token已成功保存到localStorage和Pinia store') + + // 3. 获取用户信息(重要!避免页面访问 userInfo.dept 时报错) + try { + const result: any = await getUserInfoAPI() + if (result && result.user) { + userStore.setUserInfo(result.user) + userStore.setPermissionsInfo(result?.permissions) + console.log('✅ 用户信息已成功加载') + } + } catch (error) { + console.error('❌ 获取用户信息失败:', error) + } + console.log('✅ 后续请求将自动携带Authorization头,路由守卫也会放行') // 可选:向A项目发送确认消息 diff --git a/src/views/cart/index.vue b/src/views/cart/index.vue index a7e991a..5e61a0f 100644 --- a/src/views/cart/index.vue +++ b/src/views/cart/index.vue @@ -546,8 +546,8 @@ const areaList = ref([]) // 省 const areaCityList = ref([]) // 市 const areaCountyList = ref([]) // 区/县 const queryForm: any = reactive({ - useUnit: store.userInfo.dept.deptId, // 需求单位 - useUnitName: store.userInfo.dept.deptName, + useUnit: store.userInfo?.dept?.deptId || '', // 需求单位(使用可选链避免报错) + useUnitName: store.userInfo?.dept?.deptName || '', // 需求单位名称(使用可选链避免报错) proCode: '', // 项目编号 proName: '', // 项目名称 proType: '', // 项目类型 diff --git a/src/views/order/index.vue b/src/views/order/index.vue index 5ac11f1..b4bcced 100644 --- a/src/views/order/index.vue +++ b/src/views/order/index.vue @@ -5,7 +5,7 @@
- 首页 + 首页 提交订单 @@ -371,8 +371,8 @@ const orderList = ref([]) const addressTitle = ref('请选择收货地址') const addressList = ref([]) const queryForm: any = reactive({ - useUnit: store.userInfo.dept.deptId, // 需求单位 - useUnitName: store.userInfo.dept.deptName, + useUnit: store.userInfo?.dept?.deptId || '', // 需求单位(使用可选链避免报错) + useUnitName: store.userInfo?.dept?.deptName || '', // 需求单位名称(使用可选链避免报错) proCode: '', // 项目编号 proName: '', // 项目名称 proType: '', // 项目类型