From c23c764238caf3661c4c4f9794be0c5a5c41a31c Mon Sep 17 00:00:00 2001 From: wenlele Date: Fri, 6 May 2022 09:36:56 +0800 Subject: [PATCH] =?UTF-8?q?=E8=A1=A8=E6=A0=BC=E5=8A=9F=E8=83=BD=E5=AE=8C?= =?UTF-8?q?=E6=88=90?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../assets/images/background/backGround.png | Bin 0 -> 3832 bytes .../equipmentWarehouse/actions/nvr.js | 12 +++ .../components/sideSheet.jsx | 90 ++++++++++++------ .../equipmentWarehouse/containers/nvr.jsx | 85 ++++++++--------- .../web/client/src/utils/webapi.js | 2 + 5 files changed, 113 insertions(+), 76 deletions(-) create mode 100644 code/VideoAccess-VCMP/web/client/assets/images/background/backGround.png diff --git a/code/VideoAccess-VCMP/web/client/assets/images/background/backGround.png b/code/VideoAccess-VCMP/web/client/assets/images/background/backGround.png new file mode 100644 index 0000000000000000000000000000000000000000..a01c0fe84cfa3438854773bbcdf769328a7879c2 GIT binary patch literal 3832 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 y0J9;(I3|nj%Z%)+1w&xOdGuDE#>S basicAction({ + type: 'get', + dispatch: dispatch, + actionType: 'GET_NVR', + query:query, + url: `${ApiTable.getNvr}`, + msg: { option: '获取nvr列表信息' }, + reducer: { name: 'equipmentWarehouseNvr' } + }); +} \ No newline at end of file diff --git a/code/VideoAccess-VCMP/web/client/src/sections/equipmentWarehouse/components/sideSheet.jsx b/code/VideoAccess-VCMP/web/client/src/sections/equipmentWarehouse/components/sideSheet.jsx index 2eb8d1f..cdff1ca 100644 --- a/code/VideoAccess-VCMP/web/client/src/sections/equipmentWarehouse/components/sideSheet.jsx +++ b/code/VideoAccess-VCMP/web/client/src/sections/equipmentWarehouse/components/sideSheet.jsx @@ -6,19 +6,48 @@ function SideSheets(props) { const [checkeds, setCheckeds] = useState([]); const [check, setCheck] = useState([]); const list = [ - { name: "1111", a: "a", b: "B", c: "C", d: "C" }, - { name: "2222", a: "a", b: "B", c: "C", d: "C" }, - { name: "3333", a: "a", b: "B", c: "C", d: "C" }, - { name: "4444", a: "a", b: "B", c: "C", d: "C" }, + { + name: "项目名称", + a: "南昌县智慧环保", + b: "南昌县智慧环保", + c: "南昌市市政隧道综合管理平台", + d: "C", + }, + { name: "关联结构物", a: "a", b: "B", c: "C", d: "C" }, + { name: "关联测点", a: "a", b: "B", c: "C", d: "C" }, + { name: "关联监测因素", a: "a", b: "B", c: "C", d: "C" }, ]; + const IFname = [ + "设备名称:", + "设备编号:", + "接入方式:", + "厂商:", + "添加账号:", + "添加时间:", + "行政区别:", + "设备安装位置:", + "SIP服务编号:", + "SIP域:", + "SIP端口号:", + "通道数量:", + "心跳周期:", + "最大心跳次数:", + "注册密码:", + "注册有效期::", + "接入识别模块:", + ]; + console.log(IFname); const styles = { width: 180, textAlign: "center", - background: "#FFFFFF", + // background: "#FFFFFF", + background: "url(/assets/images/background/backGround.png)", + backgroundSize: "100% 100%", padding: "12px 17px", margin: "30px 0 0 10px", lineHeight: "20px", - + position: "relative", + zIndex: 5, }; useEffect(() => {}, []); @@ -35,36 +64,39 @@ function SideSheets(props) { > - {list.map((item) => { - return ( -
+
+ {list.map((item) => { + return (
- {item.name} +
+ {item.name} +
+
{item.a}
+
{item.b}
+
{item.c}
+
{item.d}
-
{item.a}
-
{item.b}
-
{item.c}
-
{item.d}
-
- ); - })} + ); + })} +
- 快速起步 + {IFname.map((item, index) => { + return index; + })}
diff --git a/code/VideoAccess-VCMP/web/client/src/sections/equipmentWarehouse/containers/nvr.jsx b/code/VideoAccess-VCMP/web/client/src/sections/equipmentWarehouse/containers/nvr.jsx index 6663347..284cb6e 100644 --- a/code/VideoAccess-VCMP/web/client/src/sections/equipmentWarehouse/containers/nvr.jsx +++ b/code/VideoAccess-VCMP/web/client/src/sections/equipmentWarehouse/containers/nvr.jsx @@ -1,31 +1,31 @@ import React, { useState, useEffect } from "react"; import { connect } from "react-redux"; -import { Button, Form, Input, Row, Table } from "@douyinfe/semi-ui"; +import { Button, Form, Input, Row, Table, Pagination } from "@douyinfe/semi-ui"; import "../style.less"; import NvrModal from "../components/nvrModal"; import Setup from "../components/setup"; import SideSheets from "../components/sideSheet"; const NvrHeader = (props) => { - const { dispatch, actions, user, loading } = props; + const { dispatch, actions, user, loading, equipmentWarehouseNvr } = props; + const { equipmentWarehouse } = actions; const [setup, setSetup] = useState(false); const [sideSheet, setSideSheet] = useState(false); const [setupp, setSetupp] = useState([]); + const [pagination, setPagination] = useState({limit:10,page:0}); + const SETUPS = "setups"; const columns = [ { title: "序号", - render: (text, record, index) => { return index + 1; }, }, { title: "设备名称", - // dataIndex: "name",/// - width: 200, - background: "red", + dataIndex: "name", render: (text, record, index) => { return (
@@ -74,9 +74,15 @@ const NvrHeader = (props) => { }, ]; + useEffect(() => { + localStorage.setItem(SETUPS, JSON.stringify(["a", "c", "d", "e"])); + dispatch(equipmentWarehouse.getNvr(pagination)); + }, [pagination]); +console.log(equipmentWarehouseNvr); useEffect(() => { attribute(); }, []); + //获取表格属性设置 function attribute() { const arr = localStorage.getItem(SETUPS) @@ -86,22 +92,22 @@ const NvrHeader = (props) => { const column = [ { title: "设备厂家", - dataIndex: "size", + dataIndex: "venderId", key: "a", }, { - title: "添加张账号", - dataIndex: "size", + title: "添加账号", + dataIndex: "createUserId", key: "b", }, { title: "通道数", - dataIndex: "size", + dataIndex: "channelCount", key: "c", }, { title: "端口", - dataIndex: "size", + dataIndex: "port", key: "d", }, { @@ -111,7 +117,7 @@ const NvrHeader = (props) => { }, { title: "创建时间", - dataIndex: "size", + dataIndex: "createTime", key: "f", }, { @@ -139,6 +145,7 @@ const NvrHeader = (props) => { setSetupp(columns); } + //条件赛选样式 const screen = { width: 193, marginRight: 20, @@ -146,35 +153,6 @@ const NvrHeader = (props) => { color: "rgba(0, 0, 0, 0.65)", }; - const data = [ - { - key: "1", - name: "智能设备NVR1", - nameIconSrc: "12", - size: "飞尚科技1", - owner: "192.168.1.1", - updateTime: "5000", - avatarBg: "red", - }, - { - key: "2", - name: "智能设备NVR2", - nameIconSrc: "8", - size: "飞尚科技2", - owner: "192.168.1.3", - updateTime: "5001", - avatarBg: "green", - }, - { - key: "3", - name: "智能设备NVR3", - nameIconSrc: "9", - size: "飞尚科技3", - owner: "192.168.1.2", - updateTime: "5002", - avatarBg: "green", - }, - ]; return ( <>
@@ -386,14 +364,29 @@ const NvrHeader = (props) => {
+
+ 共{equipmentWarehouseNvr.total}个设备 + { + setPagination({limit:pageSize,page:currentPage-1}) + console.log(currentPage,pageSize); + }} /> +
+ + {setup ? ( { close={() => { setSetup(false); attribute(); - // setEditData(null) }} - // reportType={reportType} - // editData={editData} /> ) : ( "" @@ -426,12 +416,13 @@ const NvrHeader = (props) => { }; function mapStateToProps(state) { - const { auth, global, members } = state; + const { auth, global, members, equipmentWarehouseNvr } = state; return { loading: members.isRequesting, user: auth.user, actions: global.actions, members: members.data, + equipmentWarehouseNvr: equipmentWarehouseNvr.data || [], }; } diff --git a/code/VideoAccess-VCMP/web/client/src/utils/webapi.js b/code/VideoAccess-VCMP/web/client/src/utils/webapi.js index e05f516..2b0a9b1 100644 --- a/code/VideoAccess-VCMP/web/client/src/utils/webapi.js +++ b/code/VideoAccess-VCMP/web/client/src/utils/webapi.js @@ -8,6 +8,8 @@ export const ApiTable = { logout: 'logout', getEnterprisesMembers: 'enterprises/{enterpriseId}/members', + + getNvr:'nvr', }; export const RouteTable = {