fix:修改用户菜单接口,调整菜单页面、完成部分属性分组样式和组件
This commit is contained in:
parent
78e58d8ddc
commit
954f4bd920
|
@ -87,7 +87,7 @@ export default {
|
||||||
getUserMenu(data){
|
getUserMenu(data){
|
||||||
return new Promise((resolve, reject) => {
|
return new Promise((resolve, reject) => {
|
||||||
request.TokenRequest({
|
request.TokenRequest({
|
||||||
url: '/user/admin/menu/list',
|
url: '/user/admin/role/header',
|
||||||
method: 'GET',
|
method: 'GET',
|
||||||
},data)
|
},data)
|
||||||
.then((res) =>{
|
.then((res) =>{
|
||||||
|
|
|
@ -34,6 +34,18 @@
|
||||||
<view class="iconfont icon-reload"></view>{{wsStatus?'刷新':'已断连'}}
|
<view class="iconfont icon-reload"></view>{{wsStatus?'刷新':'已断连'}}
|
||||||
</view> -->
|
</view> -->
|
||||||
</view>
|
</view>
|
||||||
|
<view class="group-list">
|
||||||
|
<view class="group-list-label">
|
||||||
|
属性分组:
|
||||||
|
</view>
|
||||||
|
<uni-data-select
|
||||||
|
style="min-width: 200rpx;max-width: 500rpx;"
|
||||||
|
v-model="selectGroup"
|
||||||
|
:localdata="groupList"
|
||||||
|
:clear="false"
|
||||||
|
@change="changeGroup"
|
||||||
|
></uni-data-select>
|
||||||
|
</view>
|
||||||
<view class="attr-list">
|
<view class="attr-list">
|
||||||
<view class="attr-list-item" v-for="(item,index) in dataList" :key="index">
|
<view class="attr-list-item" v-for="(item,index) in dataList" :key="index">
|
||||||
<!-- 选择器 -->
|
<!-- 选择器 -->
|
||||||
|
@ -158,7 +170,7 @@
|
||||||
:disabled="true"
|
:disabled="true"
|
||||||
:name="item.name"
|
:name="item.name"
|
||||||
v-model="item.value"
|
v-model="item.value"
|
||||||
:unit="item.ioObj.unit"
|
:unit="item.ioObj?item.ioObj.unit?item.ioObj.unit:'':''"
|
||||||
@change="downData($event,index)"
|
@change="downData($event,index)"
|
||||||
@clickLog="clickLog(index)"
|
@clickLog="clickLog(index)"
|
||||||
></iots-input>
|
></iots-input>
|
||||||
|
@ -320,6 +332,7 @@
|
||||||
import IotsInput from '@/components/iot-components/input/iots-input.vue'
|
import IotsInput from '@/components/iot-components/input/iots-input.vue'
|
||||||
import IotsSelectTime from '@/components/iot-components/select-time/iots-select-time.vue'
|
import IotsSelectTime from '@/components/iot-components/select-time/iots-select-time.vue'
|
||||||
import IotsImg from '@/components/iot-components/img/iots-img.vue'
|
import IotsImg from '@/components/iot-components/img/iots-img.vue'
|
||||||
|
import uniDataSelect from "@/components/iot-components/uni-data-select/uni-data-select.vue"
|
||||||
|
|
||||||
export default{
|
export default{
|
||||||
data(){
|
data(){
|
||||||
|
@ -347,7 +360,18 @@
|
||||||
|
|
||||||
},
|
},
|
||||||
scrollTop:0,
|
scrollTop:0,
|
||||||
// 设备属性
|
selectGroup:0,
|
||||||
|
// 属性分组
|
||||||
|
groupList:[{
|
||||||
|
value:0,
|
||||||
|
label:'全部',
|
||||||
|
groupKey:'all',
|
||||||
|
groupName:'全部',
|
||||||
|
ioRelKey:[]
|
||||||
|
}],
|
||||||
|
// 全部设备属性用于属性分组(不变)
|
||||||
|
dataAllData:[],
|
||||||
|
// 设备属性用于属性分组后数据(会变)
|
||||||
dataList:[],
|
dataList:[],
|
||||||
dataIndex: 0,
|
dataIndex: 0,
|
||||||
// 设备功能
|
// 设备功能
|
||||||
|
@ -418,7 +442,8 @@
|
||||||
IotsPie,
|
IotsPie,
|
||||||
IotsGauge,
|
IotsGauge,
|
||||||
IotsInput,
|
IotsInput,
|
||||||
IotsImg
|
IotsImg,
|
||||||
|
uniDataSelect
|
||||||
},
|
},
|
||||||
onLoad(option) {
|
onLoad(option) {
|
||||||
console.log("option",option)
|
console.log("option",option)
|
||||||
|
@ -453,6 +478,10 @@
|
||||||
url:'./device-control?dataList=' + dataList + '&devId=' + this.deviceInfo.devId + '&pk=' + this.deviceInfo.pk + '&devName=' + this.deviceInfo.devName
|
url:'./device-control?dataList=' + dataList + '&devId=' + this.deviceInfo.devId + '&pk=' + this.deviceInfo.pk + '&devName=' + this.deviceInfo.devName
|
||||||
})
|
})
|
||||||
},
|
},
|
||||||
|
// 选择分组
|
||||||
|
changeGroup(e){
|
||||||
|
console.log("选择分组",e)
|
||||||
|
},
|
||||||
getChartData(type,data){
|
getChartData(type,data){
|
||||||
if(type == 'charts_dashboard'){
|
if(type == 'charts_dashboard'){
|
||||||
let min = 0;
|
let min = 0;
|
||||||
|
@ -530,8 +559,43 @@
|
||||||
item.time = 0;
|
item.time = 0;
|
||||||
return item;
|
return item;
|
||||||
})
|
})
|
||||||
|
this.dataAllData = this.dataList;
|
||||||
}else{
|
}else{
|
||||||
this.dataList = [];
|
this.dataList = [];
|
||||||
|
this.dataAllData = [];
|
||||||
|
}
|
||||||
|
if(thingModel.contents.groups.length){
|
||||||
|
let groupList = [{
|
||||||
|
value:0,
|
||||||
|
label:'全部',
|
||||||
|
groupKey:'all',
|
||||||
|
groupName:'全部',
|
||||||
|
ioRelKey:[]
|
||||||
|
}];
|
||||||
|
thingModel.contents.groups.forEach((item,index)=>{
|
||||||
|
groupList.push({
|
||||||
|
value:index+1,
|
||||||
|
label:item.groupName,
|
||||||
|
...item
|
||||||
|
})
|
||||||
|
})
|
||||||
|
this.groupList = groupList;
|
||||||
|
// this.$nextTick(()=>{
|
||||||
|
// this.$set(this,'groupList',groupList)
|
||||||
|
// })
|
||||||
|
}else{
|
||||||
|
this.groupList = [{
|
||||||
|
value:0,
|
||||||
|
label:'全部',
|
||||||
|
groupKey:'all',
|
||||||
|
groupName:'全部',
|
||||||
|
ioRelKey:[]
|
||||||
|
}];
|
||||||
|
}
|
||||||
|
if(thingModel.contents.server.length){
|
||||||
|
this.abilityList = thingModel.contents.server;
|
||||||
|
}else{
|
||||||
|
this.abilityList = [];
|
||||||
}
|
}
|
||||||
if(thingModel.contents.server.length){
|
if(thingModel.contents.server.length){
|
||||||
this.abilityList = thingModel.contents.server;
|
this.abilityList = thingModel.contents.server;
|
||||||
|
@ -893,6 +957,20 @@
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
.group-list{
|
||||||
|
display: flex;
|
||||||
|
// justify-content: space-between;
|
||||||
|
align-items: center;
|
||||||
|
margin: 0 20rpx;
|
||||||
|
margin-top: 20rpx;
|
||||||
|
padding: 20rpx;
|
||||||
|
background-color: #fff;
|
||||||
|
border-radius: 20rpx;
|
||||||
|
.group-list-label{
|
||||||
|
margin-right: 10rpx;
|
||||||
|
font-weight: bold;
|
||||||
|
}
|
||||||
|
}
|
||||||
// 设备详情弹窗
|
// 设备详情弹窗
|
||||||
.detail-model{
|
.detail-model{
|
||||||
padding: 30rpx;
|
padding: 30rpx;
|
||||||
|
|
|
@ -42,9 +42,9 @@
|
||||||
<view v-else-if="item.iconImg" class="item-img" :class="item.iconImg">
|
<view v-else-if="item.iconImg" class="item-img" :class="item.iconImg">
|
||||||
<image :src="item.iconImg" mode=""></image>
|
<image :src="item.iconImg" mode=""></image>
|
||||||
</view>
|
</view>
|
||||||
<view v-else class="item-txt">{{item.label[0]}}</view>
|
<view v-else class="item-txt">{{item.title[0]}}</view>
|
||||||
</view>
|
</view>
|
||||||
<text class="item-name">{{item.label}}</text>
|
<text class="item-name">{{item.title}}</text>
|
||||||
</view>
|
</view>
|
||||||
<view class="marauto" v-if="!commonList.length">
|
<view class="marauto" v-if="!commonList.length">
|
||||||
<u-empty
|
<u-empty
|
||||||
|
@ -137,7 +137,7 @@
|
||||||
})
|
})
|
||||||
},
|
},
|
||||||
getUserMenu(){
|
getUserMenu(){
|
||||||
this.$api.getUserMenu({page:1,pageSize:999,clientType:2}).then(res => {
|
this.$api.getUserMenu({clientType:2}).then(res => {
|
||||||
console.log("获取用户菜单",res)
|
console.log("获取用户菜单",res)
|
||||||
if(res.code == 0){
|
if(res.code == 0){
|
||||||
this.commonList = res.data.list?res.data.list:[];
|
this.commonList = res.data.list?res.data.list:[];
|
||||||
|
|
Loading…
Reference in New Issue