qa-prevention-xgf-app/pages/index/index.vue

144 lines
4.1 KiB
Vue

<template>
<view class="page">
<!-- #ifdef APP-PLUS -->
<view class="status_bar">
<view class="top_view"></view>
</view>
<!-- #endif -->
<view class="wui_banner">
<view class="wui-bar">
<view class="icon-ui">
<u-icon name="scan" color="#fff" size="28" @click="fnScan"></u-icon>
</view>
</view>
<view class="banner_img">
<image src="../../static/home-bg.png" mode=""></image>
</view>
</view>
<view class="home-apps">
<view class="home-apps-item" @click="fnScan">
<view class="home-apps-item-img">
<image src="../../static/icon-apps/app_icons6.png" mode=""></image>
</view>
<view class="text">
<text>扫码</text>
</view>
</view>
<view class="home-apps-item" v-for="(item,index) in baseList" :key="index" @click="fnNavigator(index)">
<view class="home-apps-item-img">
<image :src="item.img" mode=""></image>
</view>
<view class="text">
<text>{{ item.title }}</text>
</view>
</view>
</view>
<u-modal :show="updateVersion.modalShow" title="温馨提示" :showConfirmButton="updateVersion.showConfirmButton"
:showCancelButton="updateVersion.showCancelButton" :confirmText="updateVersion.confirmText" :cancelText="updateVersion.cancelText"
@cancel="modalCancel" @confirm="modalConfirm">
<view style="text-align: center;color:#606266">
<rich-text :nodes="updateVersion.modalContent"></rich-text>
</view>
</u-modal>
</view>
</template>
<script>
import updateVersion from "../../utils/updateVersion";
import {setRelatedPartyScanning} from "../../api";
export default {
mixins:[updateVersion],
data() {
return {
baseList: [
{
img: require('../../static/icon-apps/app_icons.png'),
title: '电子工牌',
url: '/pages/electronic_work_card/index'
},
{
img: require('../../static/icon-apps/app_icons2.png'),
title: '服务单位 管理',
url: '/pages/service_unit_management/index'
},
{
img: require('../../static/icon-apps/app_icons3.png'),
title: '我的信息',
url: '/pages/mine/information/index'
},
{
img: require('../../static/icon-apps/app_icons4.png'),
title: '证书信息',
url: '/pages/certificate_information/index'
},
{
img: require('../../static/icon-apps/app_icons5.png'),
title: '就职单位',
url: '/pages/employed_by/index'
},
{
img: require('../../static/icon-apps/app_icons6.png'),
title: '高危作业',
url: '/pages/eight_assignments/index'
},
],
}
},
computed: {
userInfo() {
return this.$store.getters.getUserInfo
}
},
onLoad() {
this.fnUpdateVersion(false)
},
methods: {
fnScan(){
uni.scanCode({
success: async (res) => {
let obj =JSON.parse(res.result)
let type = obj[0].CODE_TYPE
if (type === '0') {
// type=0时跳转注册相关方企业页面
await setRelatedPartyScanning({CORPINFO_ID:obj[0].CORPINFO_ID})
uni.$u.route({
url: '/pages/related_party_units/add',
params:{
CORPINFO_ID:obj[0].CORPINFO_ID,
RELEVANT_UNIT_NAME: obj[0].RELEVANT_UNIT_NAME
}
})
} else if (type === '1') {
// type=1时跳转电子工牌页面
uni.$u.route({
url: '/pages/electronic_work_card/index',
params:{
USER_ID:obj[0].USER_ID,
CODE_TYPE:obj[0].CODE_TYPE
}
})
}
}
});
},
fnIsShow(index){
if(index === 5) return !!this.userInfo.CORPINFO_ID
return true
},
fnNavigator(e) {
uni.$u.route({
url: this.baseList[e].url
})
},
},
}
</script>
<style lang="scss" scoped>
.page {
background-color: #f7f9ff;
min-height: 100vh;
}
</style>