fix:修改用户菜单接口,调整菜单页面、完成部分属性分组样式和组件

This commit is contained in:
风花一世月 2024-07-02 23:18:43 +08:00
parent 78e58d8ddc
commit 954f4bd920
3 changed files with 85 additions and 7 deletions

View File

@ -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) =>{

View File

@ -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;

View File

@ -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:[];