<style>
|
.content {
|
/* display: flex;
|
flex-direction: column;
|
align-items: center;
|
justify-content: center; */
|
width: 100vw;
|
height: 100vh;
|
background: #EAEAEA;
|
padding: 1rpx 0rpx;
|
}
|
.v-area{
|
border-radius: 12rpx;
|
margin: 30rpx;
|
padding: 10rpx;
|
background: #FFFFFF;
|
}
|
.areaList{
|
padding: 0;
|
}
|
.areaList li{
|
/* border: 1px solid #0062CC; */
|
list-style: none;
|
/* width: 120rpx; */
|
display: inline-block;
|
padding: 30rpx 16rpx 16rpx 20rpx;
|
text-align: center;
|
font-size: 14px;
|
}
|
.logo {
|
height: 120rpx;
|
width: 120rpx;
|
border-radius: 20rpx;
|
display: inline-block;
|
text-align: center;
|
padding: 18rpx;
|
color: #000000;
|
border: 0px solid rgb(221, 221, 221);
|
}
|
.logo i{
|
color: #000000;
|
font-size: 40px;
|
line-height: 53px;
|
}
|
|
</style>
|
|
<template>
|
<view class="content">
|
<view class="v-area" v-for="(area,index) in data">
|
<p :data-key="area.ID?area.ID:area.id">{{ area.Name?area.Name:area.name }}</p>
|
<ul class="areaList">
|
<!-- Mobox2 -->
|
<li v-for="(app,key) in area.App">
|
<a @tap="appCreate(app)" class="logo" :style="{'background-color':app.BkColor,'color':app.BkColor}">
|
<i :class="app.ImgFontStyle" :style="{'color':app.TxtColor}"></i>
|
</a>
|
<p :data-key="app.ID">{{ app.Name }}</p>
|
</li>
|
<!-- Mobox3 -->
|
<li v-for="(app,key) in area.app_list">
|
<a @tap="appCreate(app)" class="logo" :style="{'background-color':app.bk_color,'color':app.bk_color}">
|
<i :class="app.img_font_style" :style="{'color':app.txt_color}"></i>
|
</a>
|
<p :data-key="app.id">{{ app.name }}</p>
|
</li>
|
|
</ul>
|
</view>
|
|
<!-- <image class="logo" src="/static/logo.png"></image>
|
<view class="text-area">
|
<text class="title">{{title}}</text>
|
</view>
|
<view class="" v-for="(v,index) in data">
|
<input type="text" :value="v" @focus="ontap" :data-key="index" :key="index"/>
|
</view> -->
|
</view>
|
</template>
|
|
<script>
|
import Base64 from '../../components/js-base64/base64.js'
|
export default {
|
modules:{
|
Base64,
|
},
|
onNavigationBarButtonTap(e) {
|
// console.log(e.text);
|
// console.log(e.fontSize);
|
this.$store.state.areaFunc='';
|
this.$store.commit("classAttrList",null);
|
this.$store.commit("classGridStyleInfo",null);
|
this.$store.commit("dicValueInfo",null);
|
this.$store.commit("subClassAttrList",null);
|
this.$store.commit("subClassGridStyleInfo",null);
|
//刷新当前页面
|
// location.reload();
|
uni.redirectTo({
|
url:'../index/index?args=9999999999'
|
});
|
},
|
data() {
|
return {
|
title: 'Hello',
|
data:[]
|
}
|
},
|
onLoad(options) {
|
console.log(options);
|
// 获取所有AppType="MES",ClientType="2"(PDA)的引用领域功能点信息
|
if(this.$store.state.areaFunc)
|
this.data = this.$store.state.areaFunc.data;
|
else
|
this.$store.dispatch('areaFunc',{}).then(success=>{
|
console.log(success);
|
if (success.code=='00000' || success.err_code == 0) {
|
this.data = success.data;
|
if(success.err_code!=undefined){ //判断是否是Mobox3
|
success.result.forEach(async (area,index) => {
|
if(area.client_type==2){ //判断类型是否是PDA类型
|
await this.GetFuncTree(index,area);
|
}
|
});
|
}
|
}else{
|
uni.showModal({title:"错误",content:success.msg,showCancel:false,confirmText:"取消"});
|
}
|
}).catch(ex=>{
|
// console.log(ex);
|
uni.showModal({title:"错误",content:ex.errMsg,showCancel:false,confirmText:"取消"});
|
});
|
|
// var data = {
|
// in1:"ll1",
|
// in2:"ll2",
|
// in3:"ll3",
|
// in4:"ll4",
|
// in5:"ll5",
|
// in6:"ll6",
|
// };
|
// for(var i in data)
|
// this.$data.keys.push(i)
|
// this.$data.data = data;
|
// console.log(this.$data.keys);
|
},
|
methods: {
|
async GetFuncTree(index,area){ //Mobox3获取应用领域的功能点
|
this.data=[];
|
var $this = this;
|
var json ={
|
app_type: "MES",
|
area_id: area.id,
|
area_client_type: area.client_type,
|
need_ace: '0',
|
};
|
this.$store.dispatch('GetFuncTree',json).then(success=>{
|
console.log(success);
|
if (success.err_code == 0) {
|
$this.data.push(success.result[0]);
|
this.$store.commit("areaFunc", $this.data);
|
}else{
|
uni.showModal({title:"错误",content:success.msg,showCancel:false,confirmText:"取消"});
|
}
|
}).catch(ex=>{
|
// console.log(ex);
|
uni.showModal({title:"错误",content:ex.errMsg,showCancel:false,confirmText:"取消"});
|
});
|
},
|
appCreate(app){ //点击功能点跳转页面
|
console.log(app);
|
var paramStr = this.$store.state.OIMoboxSAPI?app.param:app.Param;
|
var appName = this.$store.state.OIMoboxSAPI?app.name:app.Name;
|
var defCode = this.$store.state.OIMoboxSAPI?app.def_code:app.DefCode;
|
var param = "";
|
if(paramStr){
|
//mobox2的param是json字符串
|
param = paramStr.replace(/\\/g,"");
|
//mobox3的param是base64字符串
|
if(!paramStr.includes('"')) param = Base64.decode(paramStr);
|
}
|
|
if(!param){
|
uni.showModal({title:"提示",content:"该功能点未配置参数,请重新配置参数!",showCancel:false,confirmText:"取消"});
|
return;
|
}
|
if(defCode == '3018'){
|
if(this.$store.state.OIMoboxSAPI){ //Mobox3
|
uni.navigateTo({
|
// url:'../modal/3018?param='+param+"&titlename="+appName
|
url:'../modal/3018_2?param='+param+"&titlename="+appName
|
});
|
}else{ //Mobox2
|
uni.navigateTo({
|
url:'../modal/classAttr?param='+param+"&titlename="+appName
|
});
|
}
|
} else if(defCode == '3037'){
|
if(this.$store.state.OIMoboxSAPI){ //Mobox3
|
uni.navigateTo({
|
// url:'../modal/3037?param='+param+"&titlename="+appName
|
url:'../modal/3037_2?param='+param+"&titlename="+appName
|
});
|
}else{ //Mobox2
|
uni.navigateTo({
|
url:'../modal/ms_classAttr?param='+param+"&titlename="+appName
|
});
|
}
|
} else if(defCode == '3200'){
|
if(this.$store.state.OIMoboxSAPI){ //Mobox3
|
uni.navigateTo({
|
url:'../modal/3200?param='+param+"&titlename="+appName
|
});
|
}
|
} else if(defCode == '5600'){ //码盘
|
if(this.$store.state.OIMoboxSAPI){ //Mobox3
|
uni.navigateTo({
|
url:'../modal/5600?param='+param+"&titlename="+appName
|
});
|
}
|
} else if(defCode == '5602'){ //分拣
|
if(this.$store.state.OIMoboxSAPI){ //Mobox3
|
uni.navigateTo({
|
url:'../modal/5602?param='+param+"&titlename="+appName
|
});
|
}
|
}
|
|
// uni.redirectTo({
|
// url:'../index/index?args=9999999999'
|
// });
|
},
|
ontap(e){ //扫码功能
|
// console.log(e.target)
|
getApp().onScan((result)=>{
|
// console.log(result.decodedata);
|
this.$data.data[e.target.dataset['key']]=result.decodedata;
|
})
|
}
|
|
}
|
}
|
</script>
|