import React, { useEffect, useState, useRef } from 'react';
import { connect } from 'react-redux';
import { Timeline, Card, Button, Modal, Form } from '@douyinfe/semi-ui';
import { push } from 'react-router-redux';
import '../style.less'
import PerfectScrollbar from "perfect-scrollbar";
import repairFQA from '../../means/containers/repairFQA';
import { Setup, OutHidden } from "$components";
const { Meta } = Card;
let newScrollbar;
let overviewScrollbar;
let memberScrollbar;
let equipmentScrollbar;
let webScrollbar;
let problemsScrollbar;
let alarmScrollbar;
const Control = (props) => {
const { dispatch, actions, user, loading, socket } = props
const { control } = actions
const stationList = [
'url(/assets/images/console/lan_1.png)',
'url(/assets/images/console/lv_1.png)',
'url(/assets/images/console/huang_1.png)',
'url(/assets/images/console/hong_1.png)',
]
const [timelineList, setTimelineList] = useState(['', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', ''])//最新动态列表
const [memberList, setMemberList] = useState(['', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', ''])//相关成员列表
const [equipmentList, setEquipmentList] = useState(['', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', ''])//平台设备接入列表
const [webList, setWebList] = useState(['', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', ''])//关联web应用列表
const [problemsList, setProblemsList] = useState(['', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', ''])//异常&问题列表
const [setup, setSetup] = useState(false); //设置是否显现
const [tableType, setTableType] = useState(''); //localStorage存储名
const [tool, setTool] = useState(false); //工具添加修改弹窗
const [alter, setAlter] = useState(false); //工具添加或编辑
const [compile, setCompile] = useState({}); //工具编辑的内容
const [toolShow, setToolShow] = useState([]); //工具展示
const [tableSetup, setTableSetup] = useState([]); //单一表格设置信息
const [exhibition, setExhibition] = useState({ workbench: [] }); //页面结构
const FormApi = useRef()
useEffect(() => {
consoleToollink()
//初始化表格显示设置
let data = ['workbench']
data.map(v => {
localStorage.getItem(v) == null
? localStorage.setItem(v, JSON.stringify(show[v]))
: "";
attribute(v)
})
}, [])
useEffect(() => {
// newScrollbar = new PerfectScrollbar("#news", {
// suppressScrollX: true,
// });
// const domProject = document.getElementById("news");
// if (domProject && newScrollbar) {
// newScrollbar.update();
// }
// overviewScrollbar = new PerfectScrollbar("#overview", {
// suppressScrollY: true,
// });
// const domProject1 = document.getElementById("overview");
// if (domProject1 && overviewScrollbar) {
// overviewScrollbar.update();
// }
// memberScrollbar = new PerfectScrollbar("#member", {
// suppressScrollX: true,
// });
// const domProject2 = document.getElementById("member");
// if (domProject2 && memberScrollbar) {
// memberScrollbar.update();
// }
// equipmentScrollbar = new PerfectScrollbar("#equipment", {
// suppressScrollX: true,
// });
// const domProject3 = document.getElementById("equipment");
// if (domProject3 && equipmentScrollbar) {
// equipmentScrollbar.update();
// }
// webScrollbar = new PerfectScrollbar("#web", {
// suppressScrollX: true,
// });
// const domProject4 = document.getElementById("web");
// if (domProject4 && webScrollbar) {
// webScrollbar.update();
// }
// problemsScrollbar = new PerfectScrollbar("#problems", {
// suppressScrollX: true,
// });
// const domProject5 = document.getElementById("problems");
// if (domProject5 && problemsScrollbar) {
// problemsScrollbar.update();
// }
// alarmScrollbar = new PerfectScrollbar("#alarm", {
// suppressScrollY: true,
// });
// const domProject6 = document.getElementById("alarm");
// if (domProject6 && alarmScrollbar) {
// alarmScrollbar.update();
// }
// ACTION 示例
// dispatch(actions.example.getMembers(user.orgId))
})
const consoleToollink = () => {
dispatch(control.getConsoleToollink()).then(res => {
if (res.success) setToolShow(res.payload.data)
})
}
let Select = {
workbench: ['project', 'data', 'app', 'device'],
statistical: [],
analyse: [],
dynamic: [],
}
let show = {
workbench: ['project', 'data', 'app', 'device'],
statistical: [],
analyse: [],
dynamic: [],
}
let listAll = [
{ name: '关注的项目', sort: 1, key: 'project', data: 1, img: 'url(/assets/images/console/lan_1.png)' },
{ name: '数据告警', sort: 2, key: 'data', data: 2, img: 'url(/assets/images/console/lv_1.png)' },
{ name: '应用告警', sort: 2, key: 'app', data: 3, img: 'url(/assets/images/console/hong_1.png)' },
{ name: '设备告警', sort: 2, key: 'device', data: 225, img: 'url(/assets/images/console/hong_1.png)' },
]
const attribute = (title) => {
let take = localStorage.getItem(title)
? JSON.parse(localStorage.getItem(title))
: [];
let data = Select[title].map(v => {
let dataTitle = listAll.find(vv => v == vv.key) || {}
console.log(dataTitle);
return { name: dataTitle.name, value: dataTitle.key }
})
console.log(data);
let TableDisplay = take?.map(v => listAll?.find(vv => v == vv.key))
TableDisplay.sort((a, b) => a.sort - b.sort)
setExhibition({ ...exhibition, [title]: TableDisplay })
setTableSetup([{ list: data }])
}
return (
11 ? :
<>