This commit is contained in:
冯辉
2025-10-27 12:39:33 +08:00
parent c71ad5f98c
commit 55cc52c046
6 changed files with 133 additions and 42 deletions

View File

@@ -3,7 +3,7 @@
<!-- 自定义tabbar -->
<CustomTabBar :currentPage="4" />
<!-- 企业用户信息卡片 -->
<view v-if="userInfo.isCompanyUser === 0" class="company-info-card btn-feel" @click="seeDetail">
<view v-if="userType === 0" class="company-info-card btn-feel" @click="seeDetail">
<view class="company-avatar">
<image class="company-avatar-img" :src="companyInfo.avatar || '/static/icon/company-default.png'"></image>
</view>
@@ -100,7 +100,8 @@
<view class="row-right">已开启</view>
</view>
</view>
<view class="card-back button-click" @click="logOut">退出登录</view>
<view v-if="userType === 2" class="card-help button-click" @click="goToJobHelper">求职帮</view>
<view class="card-back button-click" @click="logOut">退出登录</view>
<uni-popup ref="popup" type="dialog">
<uni-popup-dialog
mode="base"
@@ -120,7 +121,7 @@
</template>
<script setup>
import { reactive, inject, watch, ref, onMounted, onUnmounted } from 'vue';
import { reactive, inject, watch, ref, onMounted, onUnmounted, computed } from 'vue';
import { storeToRefs } from 'pinia';
import { onLoad, onShow } from '@dcloudio/uni-app';
const { $api, navTo } = inject('globalFunction');
@@ -130,6 +131,18 @@ const popup = ref(null);
const { userInfo, Completion } = storeToRefs(useUserStore());
const counts = ref({});
// 获取用户类型,参考首页的实现方式
const userType = computed(() => {
// 优先从store获取如果为空则从缓存获取
const storeIsCompanyUser = userInfo.value?.isCompanyUser;
const cachedUserInfo = uni.getStorageSync('userInfo') || {};
const cachedIsCompanyUser = cachedUserInfo.isCompanyUser;
// 获取用户类型优先使用store中的isCompanyUser如果store中没有使用缓存中的isCompanyUser
// 缓存中的值可能是字符串,需要转换为数值类型
return storeIsCompanyUser !== undefined ? Number(storeIsCompanyUser) : Number(cachedIsCompanyUser);
});
// 企业信息数据
const companyInfo = reactive({
name: '科里喀什分公司',
@@ -177,7 +190,7 @@ function getUserstatistics() {
});
}
function seeDetail() {
if (userInfo.isCompanyUser === 0) {
if (userType === 0) {
// 企业用户跳转到企业信息页面
navTo('/pages/mine/company-info');
} else {
@@ -185,6 +198,11 @@ function seeDetail() {
navTo('/packageA/pages/myResume/myResume');
}
}
function goToJobHelper() {
// 跳转到求职者信息补全页面
navTo('/pages/complete-info/complete-info');
}
</script>
<style lang="stylus" scoped>
@@ -284,6 +302,16 @@ function seeDetail() {
margin: 0
}
}
.card-help{
height: 96rpx;
background: #FFFFFF;
border-radius: 20rpx 20rpx 20rpx 20rpx;
text-align: center;
line-height: 96rpx;
font-size: 28rpx;
color: #256BFA;
margin-bottom: 20rpx;
}
.card-back{
height: 96rpx;
background: #FFFFFF;