|
@ -1,16 +1,25 @@ |
|
|
import React, { useState, useEffect } from "react"; |
|
|
import React, { useState, useEffect } from "react"; |
|
|
import { SideSheet, Tabs, TabPane } from "@douyinfe/semi-ui"; |
|
|
import { SideSheet, Tabs, TabPane } from "@douyinfe/semi-ui"; |
|
|
|
|
|
import copy from "copy-to-clipboard"; |
|
|
|
|
|
|
|
|
function SideSheets(props) { |
|
|
function SideSheets(props) { |
|
|
const { dispatch, actions, user, loading, visible, close, SETUPS } = props; |
|
|
const { |
|
|
const [checkeds, setCheckeds] = useState([]); |
|
|
dispatch, |
|
|
const [check, setCheck] = useState([]); |
|
|
actions, |
|
|
|
|
|
user, |
|
|
|
|
|
loading, |
|
|
|
|
|
visible, |
|
|
|
|
|
close, |
|
|
|
|
|
SETUPS, |
|
|
|
|
|
cameraSetup, |
|
|
|
|
|
} = props; |
|
|
|
|
|
const [clickStyle, setclickStyle] = useState(); |
|
|
const list = [ |
|
|
const list = [ |
|
|
{ |
|
|
{ |
|
|
name: "项目名称", |
|
|
name: "项目名称", |
|
|
a: "南昌县智慧环保", |
|
|
a: "南昌县智慧环保", |
|
|
b: "南昌县智慧环保", |
|
|
b: "南昌县智慧环保", |
|
|
c: "南昌市市政隧道综合管理平台", |
|
|
c: "南昌市市政隧道综合管理平台cbj次哦爱吃此课程实地考察大检查的吃点【", |
|
|
d: "C", |
|
|
d: "C", |
|
|
}, |
|
|
}, |
|
|
{ name: "关联结构物", a: "a", b: "B", c: "C", d: "C" }, |
|
|
{ name: "关联结构物", a: "a", b: "B", c: "C", d: "C" }, |
|
@ -18,35 +27,276 @@ function SideSheets(props) { |
|
|
{ name: "关联监测因素", a: "a", b: "B", c: "C", d: "C" }, |
|
|
{ name: "关联监测因素", a: "a", b: "B", c: "C", d: "C" }, |
|
|
]; |
|
|
]; |
|
|
const IFname = [ |
|
|
const IFname = [ |
|
|
"设备名称:", |
|
|
{ name: "设备名称:", value: "消火栓呼呼呼呼" }, |
|
|
"设备编号:", |
|
|
{ name: "设备编号:", value: "D50F2049010B" }, |
|
|
"接入方式:", |
|
|
{ name: "接入方式:", value: "NJBJ858G68H" }, |
|
|
"厂商:", |
|
|
{ name: "厂商:", value: "哇哇哇哇哇" }, |
|
|
"添加账号:", |
|
|
{ name: "添加账号:", value: "Superadmin" }, |
|
|
"添加时间:", |
|
|
{ name: "添加时间:", value: "2022-09-09" }, |
|
|
"行政区别:", |
|
|
{ name: "行政区别:", value: "江西省-南昌市-南昌县" }, |
|
|
"设备安装位置:", |
|
|
{ |
|
|
"SIP服务编号:", |
|
|
name: "设备安装位置:", |
|
|
"SIP域:", |
|
|
value: "江西省南昌县小蓝经开区江西飞尚科技有限公司", |
|
|
"SIP端口号:", |
|
|
}, |
|
|
"通道数量:", |
|
|
{ name: "SIP服务编号:", value: "1111111111" }, |
|
|
"心跳周期:", |
|
|
{ name: "SIP域:", value: "KGU876J87" }, |
|
|
"最大心跳次数:", |
|
|
{ name: "SIP端口号:", value: "KGU876J87" }, |
|
|
"注册密码:", |
|
|
{ name: "通道数量:", value: "16通道" }, |
|
|
"注册有效期::", |
|
|
{ name: "心跳周期:", value: "3600s" }, |
|
|
"接入识别模块:", |
|
|
{ name: "最大心跳次数:", value: "3次" }, |
|
|
|
|
|
{ name: "注册密码:", value: "**********" }, |
|
|
|
|
|
{ name: "注册有效期::", value: "3600s" }, |
|
|
|
|
|
{ name: "接入识别模块:", value: "sssss" }, |
|
|
|
|
|
{ |
|
|
|
|
|
name: "通道1", |
|
|
|
|
|
value1: "145641201564-1", |
|
|
|
|
|
value2: "哦哦哦我我我喔噢喔喔我", |
|
|
|
|
|
}, |
|
|
|
|
|
{ name: "通道2", value1: "145641201564-2", value2: "哦哦哦哦哦噢噢欧欧哦" }, |
|
|
|
|
|
]; |
|
|
|
|
|
const sewage = [ |
|
|
|
|
|
{ name: "设备名称:", value: "消火栓呼呼呼呼" }, |
|
|
|
|
|
{ name: "SIP编号/设备编号:", value: "D50F2049010B" }, |
|
|
|
|
|
{ name: "接入方式:", value: "NJBJ858G68H" }, |
|
|
|
|
|
{ name: "厂商:", value: "哇哇哇哇哇" }, |
|
|
|
|
|
{ name: "添加账号:", value: "Superadmin" }, |
|
|
|
|
|
{ name: "添加时间:", value: "2022-09-09" }, |
|
|
|
|
|
{ |
|
|
|
|
|
name: "设备安装位置:", |
|
|
|
|
|
value: "江西省南昌县小蓝经开区江西飞尚科技有限公司", |
|
|
|
|
|
}, |
|
|
|
|
|
{ name: "HLS地址", value: "" }, |
|
|
|
|
|
{ name: "FLV地址", value: "" }, |
|
|
|
|
|
{ name: "RTMP地址", value: "" }, |
|
|
|
|
|
{ name: "EZOPEN地址", value: "" }, |
|
|
|
|
|
{ name: "ONVIF地址", value: "" }, |
|
|
|
|
|
{ name: "云储存地址", value: "" }, |
|
|
|
|
|
{ name: "本地储存地址", value: "" }, |
|
|
]; |
|
|
]; |
|
|
console.log(IFname); |
|
|
function pp() { |
|
|
|
|
|
let str = []; |
|
|
|
|
|
for (let i = 0; i < (cameraSetup ? sewage : IFname).length; i++) { |
|
|
|
|
|
if (i === 0) { |
|
|
|
|
|
str.push( |
|
|
|
|
|
<div |
|
|
|
|
|
key="Basic_information" |
|
|
|
|
|
style={{ |
|
|
|
|
|
fontWeight: "600", |
|
|
|
|
|
color: "#1859C1", |
|
|
|
|
|
margin: "15px 0 0 40px", |
|
|
|
|
|
}} |
|
|
|
|
|
> |
|
|
|
|
|
基础信息 |
|
|
|
|
|
</div> |
|
|
|
|
|
); |
|
|
|
|
|
} |
|
|
|
|
|
if (cameraSetup ? i == 7 : i == 8) { |
|
|
|
|
|
str.push( |
|
|
|
|
|
<div key="Access_information"> |
|
|
|
|
|
<img |
|
|
|
|
|
src="/assets/images/background/straightline.png" |
|
|
|
|
|
alt="1" |
|
|
|
|
|
style={{ width: 872, display: "block", marginTop: 24 }} |
|
|
|
|
|
/> |
|
|
|
|
|
<div |
|
|
|
|
|
style={{ |
|
|
|
|
|
fontWeight: "600", |
|
|
|
|
|
color: "#1859C1", |
|
|
|
|
|
margin: "15px 0 0 40px", |
|
|
|
|
|
}} |
|
|
|
|
|
> |
|
|
|
|
|
{cameraSetup ? "复制直播地址" : "接入信息"} |
|
|
|
|
|
</div> |
|
|
|
|
|
</div> |
|
|
|
|
|
); |
|
|
|
|
|
} |
|
|
|
|
|
if (cameraSetup ? i == 12 : i == 17) { |
|
|
|
|
|
str.push( |
|
|
|
|
|
<div key="Camera_information"> |
|
|
|
|
|
<img |
|
|
|
|
|
src="/assets/images/background/straightline.png" |
|
|
|
|
|
alt="1" |
|
|
|
|
|
style={{ width: 872, display: "block", marginTop: 24 }} |
|
|
|
|
|
/> |
|
|
|
|
|
<div |
|
|
|
|
|
style={{ |
|
|
|
|
|
fontWeight: "600", |
|
|
|
|
|
color: "#1859C1", |
|
|
|
|
|
margin: "15px 0 0 40px", |
|
|
|
|
|
}} |
|
|
|
|
|
> |
|
|
|
|
|
{cameraSetup ? "复制回收地址" : "摄像头信息"} |
|
|
|
|
|
</div> |
|
|
|
|
|
</div> |
|
|
|
|
|
); |
|
|
|
|
|
} |
|
|
|
|
|
if ( |
|
|
|
|
|
cameraSetup ? 0 <= i && i < 6 : (0 <= i && i < 6) || (i > 7 && i <= 16) |
|
|
|
|
|
) { |
|
|
|
|
|
str.push( |
|
|
|
|
|
<div |
|
|
|
|
|
key={i} |
|
|
|
|
|
style={{ width: "50%", display: "inline-block", marginTop: 20 }} |
|
|
|
|
|
> |
|
|
|
|
|
<span |
|
|
|
|
|
style={{ |
|
|
|
|
|
width: 150, |
|
|
|
|
|
display: "inline-block", |
|
|
|
|
|
textAlign: "right", |
|
|
|
|
|
fontWeight: "600", |
|
|
|
|
|
color: "rgba(0, 0, 0, 0.45)", |
|
|
|
|
|
}} |
|
|
|
|
|
> |
|
|
|
|
|
{(cameraSetup ? sewage : IFname)[i].name} |
|
|
|
|
|
</span> |
|
|
|
|
|
<span style={{ fontWeight: "600", color: " #34383E" }}> |
|
|
|
|
|
{(cameraSetup ? sewage : IFname)[i].value} |
|
|
|
|
|
</span> |
|
|
|
|
|
</div> |
|
|
|
|
|
); |
|
|
|
|
|
} |
|
|
|
|
|
if (cameraSetup ? i == 6 : i > 5 && i < 8) { |
|
|
|
|
|
str.push( |
|
|
|
|
|
<div key={i} style={{ marginTop: 14 }}> |
|
|
|
|
|
<span |
|
|
|
|
|
style={{ |
|
|
|
|
|
width: 150, |
|
|
|
|
|
display: "inline-block", |
|
|
|
|
|
textAlign: "right", |
|
|
|
|
|
fontWeight: "600", |
|
|
|
|
|
color: "rgba(0, 0, 0, 0.45)", |
|
|
|
|
|
}} |
|
|
|
|
|
> |
|
|
|
|
|
{(cameraSetup ? sewage : IFname)[i].name} |
|
|
|
|
|
</span> |
|
|
|
|
|
<span style={{ fontWeight: "600", color: " #34383E" }}> |
|
|
|
|
|
{(cameraSetup ? sewage : IFname)[i].value} |
|
|
|
|
|
</span> |
|
|
|
|
|
</div> |
|
|
|
|
|
); |
|
|
|
|
|
} |
|
|
|
|
|
if (cameraSetup ? i > 6 && i < 14 : i > 16) { |
|
|
|
|
|
str.push( |
|
|
|
|
|
<div |
|
|
|
|
|
key={i} |
|
|
|
|
|
style={ |
|
|
|
|
|
cameraSetup |
|
|
|
|
|
? { |
|
|
|
|
|
width: 120, |
|
|
|
|
|
height: 130, |
|
|
|
|
|
display: "inline-block", |
|
|
|
|
|
borderRadius: 4, |
|
|
|
|
|
border: "1px solid #D9D9D9", |
|
|
|
|
|
margin: "20px 0 0 40px", |
|
|
|
|
|
textAlign: "center", |
|
|
|
|
|
color: clickStyle == sewage[i].name ? "white" : "", |
|
|
|
|
|
background: clickStyle == sewage[i].name ? "#1859C1" : "", |
|
|
|
|
|
} |
|
|
|
|
|
: { |
|
|
|
|
|
width: "40%", |
|
|
|
|
|
display: "inline-block", |
|
|
|
|
|
borderRadius: 4, |
|
|
|
|
|
border: "1px solid rgba(151, 151, 151, 0.2)", |
|
|
|
|
|
margin: "16px 0 0 36px", |
|
|
|
|
|
color: "rgba(0, 0, 0, 0.85)", |
|
|
|
|
|
fontWeight: "600", |
|
|
|
|
|
} |
|
|
|
|
|
} |
|
|
|
|
|
onClick={ |
|
|
|
|
|
cameraSetup |
|
|
|
|
|
? (e) => { |
|
|
|
|
|
copy(sewage[i].name); |
|
|
|
|
|
// alert("复制成功"); |
|
|
|
|
|
setclickStyle(sewage[i].name); |
|
|
|
|
|
} |
|
|
|
|
|
: "" |
|
|
|
|
|
} |
|
|
|
|
|
> |
|
|
|
|
|
<div |
|
|
|
|
|
style={ |
|
|
|
|
|
cameraSetup |
|
|
|
|
|
? {} |
|
|
|
|
|
: { |
|
|
|
|
|
padding: "8px 10px", |
|
|
|
|
|
borderBottom: "1px solid rgba(151, 151, 151, 0.2)", |
|
|
|
|
|
} |
|
|
|
|
|
} |
|
|
|
|
|
> |
|
|
|
|
|
<img |
|
|
|
|
|
src={`/assets/images/background/${ |
|
|
|
|
|
cameraSetup |
|
|
|
|
|
? i < 12 |
|
|
|
|
|
? clickStyle == sewage[i].name |
|
|
|
|
|
? "sewage_camera2" |
|
|
|
|
|
: "sewage_camera1" |
|
|
|
|
|
: clickStyle == sewage[i].name |
|
|
|
|
|
? "store2" |
|
|
|
|
|
: "store1" |
|
|
|
|
|
: "camera" |
|
|
|
|
|
}.png`} |
|
|
|
|
|
style={ |
|
|
|
|
|
cameraSetup ? { margin: "20px 0 8px 0" } : { marginRight: 10 } |
|
|
|
|
|
} |
|
|
|
|
|
/> |
|
|
|
|
|
<div |
|
|
|
|
|
style={ |
|
|
|
|
|
cameraSetup |
|
|
|
|
|
? {} |
|
|
|
|
|
: { |
|
|
|
|
|
display: "inline-block", |
|
|
|
|
|
} |
|
|
|
|
|
} |
|
|
|
|
|
> |
|
|
|
|
|
{cameraSetup ? ( |
|
|
|
|
|
<> |
|
|
|
|
|
{sewage[i].name} |
|
|
|
|
|
<img |
|
|
|
|
|
src={`/assets/images/background/${ |
|
|
|
|
|
clickStyle == sewage[i].name ? "copy2" : "copy1" |
|
|
|
|
|
}.png`} |
|
|
|
|
|
style={{ |
|
|
|
|
|
paddingBottom: 10, |
|
|
|
|
|
display: "inline-block", |
|
|
|
|
|
width: 10, |
|
|
|
|
|
height: 20, |
|
|
|
|
|
}} |
|
|
|
|
|
/> |
|
|
|
|
|
</> |
|
|
|
|
|
) : ( |
|
|
|
|
|
IFname[i].name |
|
|
|
|
|
)} |
|
|
|
|
|
</div> |
|
|
|
|
|
</div> |
|
|
|
|
|
{cameraSetup ? ( |
|
|
|
|
|
"" |
|
|
|
|
|
) : ( |
|
|
|
|
|
<> |
|
|
|
|
|
<p style={{ margin: "16px 0 0 30px " }}>{IFname[i].value1}</p> |
|
|
|
|
|
<p style={{ margin: "16px 0 20px 30px " }}> |
|
|
|
|
|
{IFname[i].value2} |
|
|
|
|
|
</p> |
|
|
|
|
|
</> |
|
|
|
|
|
)} |
|
|
|
|
|
</div> |
|
|
|
|
|
); |
|
|
|
|
|
} |
|
|
|
|
|
} |
|
|
|
|
|
return str; |
|
|
|
|
|
} |
|
|
const styles = { |
|
|
const styles = { |
|
|
width: 180, |
|
|
width: 180, |
|
|
|
|
|
height: 64, |
|
|
textAlign: "center", |
|
|
textAlign: "center", |
|
|
// background: "#FFFFFF", |
|
|
|
|
|
background: "url(/assets/images/background/backGround.png)", |
|
|
background: "url(/assets/images/background/backGround.png)", |
|
|
backgroundSize: "100% 100%", |
|
|
backgroundSize: "100% 100%", |
|
|
padding: "12px 17px", |
|
|
padding: "12px 17px 12px 17px", |
|
|
margin: "30px 0 0 10px", |
|
|
margin: "30px 0 0 10px", |
|
|
lineHeight: "20px", |
|
|
lineHeight: "24px", |
|
|
position: "relative", |
|
|
overflow: "hidden", |
|
|
|
|
|
textOverflow: "ellipsis", |
|
|
|
|
|
display: "-webkit-box", |
|
|
|
|
|
WebkitLineClamp: "2", |
|
|
|
|
|
WebkitBoxOrient: "vertical", |
|
|
zIndex: 5, |
|
|
zIndex: 5, |
|
|
}; |
|
|
}; |
|
|
|
|
|
|
|
@ -55,7 +305,7 @@ function SideSheets(props) { |
|
|
return ( |
|
|
return ( |
|
|
<SideSheet |
|
|
<SideSheet |
|
|
visible={visible} |
|
|
visible={visible} |
|
|
title="智慧设备NVR" |
|
|
title={cameraSetup ? "污水管理出出口" : "智慧设备NVR"} |
|
|
style={{ background: "#F9FBFF" }} |
|
|
style={{ background: "#F9FBFF" }} |
|
|
size="large" |
|
|
size="large" |
|
|
onCancel={() => { |
|
|
onCancel={() => { |
|
@ -65,7 +315,7 @@ function SideSheets(props) { |
|
|
<Tabs type="line"> |
|
|
<Tabs type="line"> |
|
|
<TabPane tab="项目信息" itemKey="1"> |
|
|
<TabPane tab="项目信息" itemKey="1"> |
|
|
<div style={{ display: "flex", justifyContent: "space-evenly" }}> |
|
|
<div style={{ display: "flex", justifyContent: "space-evenly" }}> |
|
|
{list.map((item) => { |
|
|
{list.map((item, index) => { |
|
|
return ( |
|
|
return ( |
|
|
<div |
|
|
<div |
|
|
key={item.name} |
|
|
key={item.name} |
|
@ -78,10 +328,15 @@ function SideSheets(props) { |
|
|
style={{ |
|
|
style={{ |
|
|
lineHeight: "32px", |
|
|
lineHeight: "32px", |
|
|
background: "#1859C1", |
|
|
background: "#1859C1", |
|
|
|
|
|
color: "#FFFFFF", |
|
|
borderRadius: 3, |
|
|
borderRadius: 3, |
|
|
textAlign: "center", |
|
|
textAlign: "center", |
|
|
}} |
|
|
}} |
|
|
> |
|
|
> |
|
|
|
|
|
<img |
|
|
|
|
|
src={`/assets/images/background/projectIcon${index}.png`} |
|
|
|
|
|
style={{ marginRight: 10 }} |
|
|
|
|
|
/> |
|
|
{item.name} |
|
|
{item.name} |
|
|
</div> |
|
|
</div> |
|
|
<div style={styles}>{item.a}</div> |
|
|
<div style={styles}>{item.a}</div> |
|
@ -94,9 +349,7 @@ function SideSheets(props) { |
|
|
</div> |
|
|
</div> |
|
|
</TabPane> |
|
|
</TabPane> |
|
|
<TabPane tab="设备信息" itemKey="2"> |
|
|
<TabPane tab="设备信息" itemKey="2"> |
|
|
{IFname.map((item, index) => { |
|
|
{pp()} |
|
|
return index; |
|
|
|
|
|
})} |
|
|
|
|
|
</TabPane> |
|
|
</TabPane> |
|
|
</Tabs> |
|
|
</Tabs> |
|
|
</SideSheet> |
|
|
</SideSheet> |
|
|