|
@@ -1,7 +1,7 @@
|
|
|
import { useAjax } from "@/Hook/useAjax"
|
|
|
import TableData from "@/pages/launchSystemNew/components/TableData"
|
|
|
-import { getSysWarningRuleListApi } from "@/services/adMonitor/earlyWarning"
|
|
|
-import { Button, Drawer, Form, Input, Modal, Space } from "antd"
|
|
|
+import { delSysWarningRuleApi, getSysWarningRuleListApi, RuleProps } from "@/services/adMonitor/earlyWarning"
|
|
|
+import { Button, Drawer, Input, message, Space } from "antd"
|
|
|
import React, { useEffect, useState } from "react"
|
|
|
import AddEdit from "./addEdit"
|
|
|
import tableConfig from "./tableConfig"
|
|
@@ -15,11 +15,13 @@ import tableConfig from "./tableConfig"
|
|
|
const EarlyWarning: React.FC = () => {
|
|
|
|
|
|
/**************************/
|
|
|
- const [visible, setVisible] = useState<boolean>(true)
|
|
|
+ const [visible, setVisible] = useState<boolean>(false)
|
|
|
const [addVisible, setAddVisible] = useState<boolean>(false)
|
|
|
const [queryParams, setQueryParams] = useState<{ ruleName?: string }>({})
|
|
|
+ const [editData, setEditData] = useState<{ initialValues?: any }>({})
|
|
|
|
|
|
- const getSysWarningRuleList = useAjax((params) => getSysWarningRuleListApi(params))
|
|
|
+ const getSysWarningRuleList = useAjax((params) => getSysWarningRuleListApi(params), { formatResult: true })
|
|
|
+ const delSysWarningRule = useAjax((params) => delSysWarningRuleApi(params))
|
|
|
/**************************/
|
|
|
|
|
|
// 获取列表
|
|
@@ -31,8 +33,38 @@ const EarlyWarning: React.FC = () => {
|
|
|
getSysWarningRuleList.run(queryParams)
|
|
|
}
|
|
|
|
|
|
+ /** 修改 */
|
|
|
+ const edit = (data: any) => {
|
|
|
+ let newData = JSON.parse(JSON.stringify(data))
|
|
|
+ newData.defaultRule = newData.defaultRule ? true : false
|
|
|
+ newData.enable = newData.enable ? true : false
|
|
|
+ newData.rules = newData.rules.map((item: { rule: RuleProps[] }) => {
|
|
|
+ let field: string[] = []
|
|
|
+ let data: any = {}
|
|
|
+ item.rule.forEach(item => {
|
|
|
+ let { field: oldField, ...newItem } = item
|
|
|
+ field.push(oldField)
|
|
|
+ data[oldField] = { ...newItem }
|
|
|
+ })
|
|
|
+ return {
|
|
|
+ ...data,
|
|
|
+ field
|
|
|
+ }
|
|
|
+ })
|
|
|
+
|
|
|
+ setEditData({ initialValues: newData })
|
|
|
+ setAddVisible(true)
|
|
|
+ }
|
|
|
+ /** 删除 */
|
|
|
+ const del = (id: number) => {
|
|
|
+ delSysWarningRule.run(id).then(res => {
|
|
|
+ message.success('删除成功')
|
|
|
+ getSysWarningRuleList.refresh()
|
|
|
+ })
|
|
|
+ }
|
|
|
+
|
|
|
return <>
|
|
|
- <Button type="primary" onClick={() => setVisible(true)}>监控预警</Button>
|
|
|
+ <Button type="primary" onClick={() => { setVisible(true); setEditData({}) }}>监控预警</Button>
|
|
|
|
|
|
{/* 预警列表 */}
|
|
|
{visible && <Drawer
|
|
@@ -50,23 +82,21 @@ const EarlyWarning: React.FC = () => {
|
|
|
</Space>
|
|
|
|
|
|
<TableData
|
|
|
+ size="small"
|
|
|
isCard={false}
|
|
|
- columns={() => tableConfig()}
|
|
|
+ columns={() => tableConfig(edit, del)}
|
|
|
ajax={getSysWarningRuleList}
|
|
|
- dataSource={getSysWarningRuleList?.data}
|
|
|
+ dataSource={getSysWarningRuleList?.data?.data}
|
|
|
loading={getSysWarningRuleList?.loading}
|
|
|
- scroll={{ y: 560 }}
|
|
|
- total={getSysWarningRuleList?.data?.length}
|
|
|
+ total={getSysWarningRuleList?.data?.data?.length}
|
|
|
gutter={[0, 10]}
|
|
|
- leftChild={<Space direction='vertical'>
|
|
|
-
|
|
|
- </Space>}
|
|
|
+ leftChild={<Space direction='vertical'></Space>}
|
|
|
/>
|
|
|
</Space>
|
|
|
</Drawer>}
|
|
|
|
|
|
{/* 设置预警 */}
|
|
|
- {addVisible && <AddEdit visible={addVisible} onClose={() => setAddVisible(false)} />}
|
|
|
+ {addVisible && <AddEdit visible={addVisible} onChange={() => { setAddVisible(false); getSysWarningRuleList.refresh(); setEditData({}) }} onClose={() => { setAddVisible(false); setEditData({}) }} {...editData} />}
|
|
|
</>
|
|
|
}
|
|
|
|