|
@@ -11,11 +11,16 @@ import DeviceModal from './components/deviceModal';
|
|
import styles from './index.less';
|
|
import styles from './index.less';
|
|
import mapstyles from '@/assets/css/map.less';
|
|
import mapstyles from '@/assets/css/map.less';
|
|
import { Spin } from 'antd';
|
|
import { Spin } from 'antd';
|
|
|
|
+import moment from 'moment';
|
|
|
|
|
|
import { equipImageMap } from '@/config/image.js';
|
|
import { equipImageMap } from '@/config/image.js';
|
|
import Icon from '@/tenants-ui/Icon';
|
|
import Icon from '@/tenants-ui/Icon';
|
|
import type { navigatorItem } from '@/pages/Environment/index';
|
|
import type { navigatorItem } from '@/pages/Environment/index';
|
|
-import { getMapList, queryEquipStatistics } from '@/services/ant-design-pro/environment';
|
|
|
|
|
|
+import {
|
|
|
|
+ getMapList,
|
|
|
|
+ queryEquipStatistics,
|
|
|
|
+ queryDeviceTimeManage,
|
|
|
|
+} from '@/services/ant-design-pro/environment';
|
|
|
|
|
|
//设备状态
|
|
//设备状态
|
|
type equipStatus = {
|
|
type equipStatus = {
|
|
@@ -33,7 +38,7 @@ const Environment: React.FC = () => {
|
|
|
|
|
|
const [searchText, setSearchText] = useState<{ text: any }>();
|
|
const [searchText, setSearchText] = useState<{ text: any }>();
|
|
const [showModal, setShowModal] = useState<boolean>(false);
|
|
const [showModal, setShowModal] = useState<boolean>(false);
|
|
- const [showSpace, setShowSpace] = useState<API.MapInfo>({});
|
|
|
|
|
|
+ const [showSpace, setShowSpace] = useState<API.MapInfo>({}); //当前弹框选中的空间
|
|
const [navigatorList, setNavigatorList] = useState<navigatorItem[]>([
|
|
const [navigatorList, setNavigatorList] = useState<navigatorItem[]>([
|
|
{
|
|
{
|
|
name: '全部设备',
|
|
name: '全部设备',
|
|
@@ -70,6 +75,7 @@ const Environment: React.FC = () => {
|
|
]);
|
|
]);
|
|
const [mapList, setMapList] = useState<API.MapInfo[]>([]);
|
|
const [mapList, setMapList] = useState<API.MapInfo[]>([]);
|
|
const [equipMapList, setEquipMapList] = useState<any[]>([]);
|
|
const [equipMapList, setEquipMapList] = useState<any[]>([]);
|
|
|
|
+ const [timeMapList, setTimeMapList] = useState<any[]>([]);
|
|
const [selNav, setSelNav] = useState<navigatorItem>(navigatorList[0]);
|
|
const [selNav, setSelNav] = useState<navigatorItem>(navigatorList[0]);
|
|
const [selFloorId, setSelFloorId] = useState<string>();
|
|
const [selFloorId, setSelFloorId] = useState<string>();
|
|
const [mapCombineList, setMapCombineList] = useState<any[]>([]);
|
|
const [mapCombineList, setMapCombineList] = useState<any[]>([]);
|
|
@@ -126,6 +132,7 @@ const Environment: React.FC = () => {
|
|
});
|
|
});
|
|
}
|
|
}
|
|
}, [selFloorId]);
|
|
}, [selFloorId]);
|
|
|
|
+ //获取设备状态 设备种类
|
|
useEffect(() => {
|
|
useEffect(() => {
|
|
if (selFloorId) {
|
|
if (selFloorId) {
|
|
setLoading(true);
|
|
setLoading(true);
|
|
@@ -161,20 +168,44 @@ const Environment: React.FC = () => {
|
|
});
|
|
});
|
|
}
|
|
}
|
|
}, [selFloorId]);
|
|
}, [selFloorId]);
|
|
|
|
+
|
|
|
|
+ //获取时间列表 spaceTimeList
|
|
|
|
+ useEffect(() => {
|
|
|
|
+ if (selFloorId) {
|
|
|
|
+ setLoading(true);
|
|
|
|
+ queryDeviceTimeManage({
|
|
|
|
+ //floorId: selFloorId,
|
|
|
|
+ floorId: 'Fl11010802593241ec348ecb4148806b9034c8957454',
|
|
|
|
+ date: moment().format('YYYYMMDD'),
|
|
|
|
+ })
|
|
|
|
+ .then(function (res) {
|
|
|
|
+ setLoading(false);
|
|
|
|
+ var resList = res.content || [];
|
|
|
|
+ setTimeMapList(resList);
|
|
|
|
+ })
|
|
|
|
+ .catch(() => {
|
|
|
|
+ setLoading(false);
|
|
|
|
+ });
|
|
|
|
+ }
|
|
|
|
+ }, [selFloorId]);
|
|
|
|
+
|
|
//合并空间环境数据 和 空间数据
|
|
//合并空间环境数据 和 空间数据
|
|
useEffect(() => {
|
|
useEffect(() => {
|
|
var combineList: any = [];
|
|
var combineList: any = [];
|
|
mapList.map(function (mitem) {
|
|
mapList.map(function (mitem) {
|
|
var spaceId = mitem.spaceId;
|
|
var spaceId = mitem.spaceId;
|
|
- var filterSpace = equipMapList.filter((ele) => {
|
|
|
|
|
|
+ var filterSpace1 = equipMapList.filter((ele) => {
|
|
|
|
+ return ele.id == spaceId;
|
|
|
|
+ });
|
|
|
|
+ var filterSpace2 = timeMapList.filter((ele) => {
|
|
return ele.id == spaceId;
|
|
return ele.id == spaceId;
|
|
});
|
|
});
|
|
|
|
+ var combine = Object.assign({}, mitem, filterSpace1[0], filterSpace2[0]);
|
|
|
|
|
|
- var combine = Object.assign({}, mitem, filterSpace[0]);
|
|
|
|
combineList.push(combine);
|
|
combineList.push(combine);
|
|
});
|
|
});
|
|
setMapCombineList(combineList);
|
|
setMapCombineList(combineList);
|
|
- }, [equipMapList, mapList]);
|
|
|
|
|
|
+ }, [equipMapList, mapList, timeMapList]);
|
|
return (
|
|
return (
|
|
<>
|
|
<>
|
|
<PageHeader
|
|
<PageHeader
|
|
@@ -260,7 +291,7 @@ const Environment: React.FC = () => {
|
|
<Icon
|
|
<Icon
|
|
className=""
|
|
className=""
|
|
type={ditem.equipType}
|
|
type={ditem.equipType}
|
|
- style={{ color: '#ffffff' }}
|
|
|
|
|
|
+ style={{ color: '#ffffff', fontWeight: 'bold' }}
|
|
></Icon>
|
|
></Icon>
|
|
</div>
|
|
</div>
|
|
);
|
|
);
|