|
@ -45,29 +45,27 @@ const Control = (props) => { |
|
|
const [appBI, setAppBI] = useState([]); //查询BI分析数据-应用 |
|
|
const [appBI, setAppBI] = useState([]); //查询BI分析数据-应用 |
|
|
const [efficiencyBI, setEfficiencyBI] = useState({}); //查询BI分析数据-问题处置 |
|
|
const [efficiencyBI, setEfficiencyBI] = useState({}); //查询BI分析数据-问题处置 |
|
|
const [query, setQuery] = useState({ limit: 10, page: 0, projectCorrelationId: '', types: '1,2,3,4' }); //最新动态 |
|
|
const [query, setQuery] = useState({ limit: 10, page: 0, projectCorrelationId: '', types: '1,2,3,4' }); //最新动态 |
|
|
const [querydata, setQueryData] = useState([]); //最新动态数据 |
|
|
const [querydata1, setQueryData1] = useState([]); //最新动态数据 |
|
|
const [long, setLong] = useState(''); //最新动态设置 |
|
|
const [long, setLong] = useState(''); //最新动态设置 |
|
|
const [pomsList, setPomsList] = useState([]); //项目 |
|
|
const [pomsList, setPomsList] = useState([]); //项目 |
|
|
const [projectId, setProjectId] = useState(''); //项目id |
|
|
const [projectId, setProjectId] = useState(''); //项目id |
|
|
|
|
|
const [ask, setASk] = useState(true); //是否继续请求 |
|
|
|
|
|
const [setData, setSetData] = useState(); //设置总数 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
const exhibition = useRef({ workbench: [], statistical: [] }) //页面结构 |
|
|
const exhibition = useRef({ workbench: [], statistical: [] }) //页面结构 |
|
|
const FormApi = useRef() |
|
|
const FormApi = useRef() |
|
|
|
|
|
const querydata = useRef([])//最新动态数据 |
|
|
// const query={ limit: 10, page: 0, projectCorrelationId: '', types: '1,2,3,4' } //最新动态 |
|
|
// const query={ limit: 10, page: 0, projectCorrelationId: '', types: '1,2,3,4' } //最新动态 |
|
|
|
|
|
|
|
|
// websocket 使用测试 |
|
|
// websocket 使用测试 |
|
|
useEffect(() => { |
|
|
useEffect(() => { |
|
|
if (socket) { |
|
|
if (socket) { |
|
|
socket.on('alarmSendSocket', function (msg) { |
|
|
socket.on('alarmSendSocket', function (msg) { |
|
|
console.info(msg); |
|
|
// console.info(msg); |
|
|
if (msg.type == "alarmAppear") {//告警出现 |
|
|
|
|
|
|
|
|
|
|
|
} else if (msg.type == "alarmConfirm") {//告警确认 |
|
|
|
|
|
|
|
|
|
|
|
} else if (msg.type == "alarmNotice") {//通知 |
|
|
|
|
|
|
|
|
|
|
|
} |
|
|
|
|
|
// console.info(msg); |
|
|
// console.info(msg); |
|
|
|
|
|
console.log(msg); |
|
|
let a = msg; |
|
|
let a = msg; |
|
|
}); |
|
|
}); |
|
|
return () => { |
|
|
return () => { |
|
@ -87,13 +85,6 @@ const Control = (props) => { |
|
|
: "" |
|
|
: "" |
|
|
attribute(v) |
|
|
attribute(v) |
|
|
}) |
|
|
}) |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
}, []) |
|
|
|
|
|
|
|
|
|
|
|
useEffect(() => { |
|
|
|
|
|
if (pepProjectId) setProjectId('') |
|
|
|
|
|
if (!pepProjectId) { |
|
|
|
|
|
dispatch(install.getProjectPoms({ global: 1 })).then((res) => { //获取已绑定项目 |
|
|
dispatch(install.getProjectPoms({ global: 1 })).then((res) => { //获取已绑定项目 |
|
|
if (res.success) { |
|
|
if (res.success) { |
|
|
let data = res.payload.data?.rows?.filter(v => v.pepProjectIsDelete !== 1)?.map(v => ({ pepProjectId: v.id, pepProjectName: v.pepProjectName || v.name })) |
|
|
let data = res.payload.data?.rows?.filter(v => v.pepProjectIsDelete !== 1)?.map(v => ({ pepProjectId: v.id, pepProjectName: v.pepProjectName || v.name })) |
|
@ -101,22 +92,28 @@ const Control = (props) => { |
|
|
setProjectId(data[0]?.pepProjectId) |
|
|
setProjectId(data[0]?.pepProjectId) |
|
|
} |
|
|
} |
|
|
}) |
|
|
}) |
|
|
|
|
|
return () => { |
|
|
|
|
|
|
|
|
} |
|
|
} |
|
|
|
|
|
}, []) |
|
|
|
|
|
|
|
|
|
|
|
useEffect(() => { |
|
|
|
|
|
if (pepProjectId) setProjectId(pepProjectId) |
|
|
if (!projectId) { |
|
|
if (!projectId) { |
|
|
// 工作台数据请求 |
|
|
工作台数据请求 |
|
|
dispatch(control.getConsoleCount({ pepProjectId: pepProjectId })).then(res => { |
|
|
dispatch(control.getConsoleCount({ pepProjectId: pepProjectId })).then(res => { |
|
|
if (res.success) setWorkData(res.payload.data) |
|
|
if (res.success) setWorkData(res.payload.data) |
|
|
}) |
|
|
}) |
|
|
|
|
|
|
|
|
// 查询BI分析数据-数据 |
|
|
查询BI分析数据-数据 |
|
|
dispatch(control.getDataAlarmsAggDay({ pepProjectId: pepProjectId })).then(res => { |
|
|
dispatch(control.getDataAlarmsAggDay({ pepProjectId: pepProjectId })).then(res => { |
|
|
if (res.success) setDataBI(res.payload.data) |
|
|
if (res.success) setDataBI(res.payload.data) |
|
|
}) |
|
|
}) |
|
|
//查询BI分析数据-视频异常 |
|
|
查询BI分析数据-视频异常 |
|
|
dispatch(control.getVideoAlarmsAggDay({ pepProjectId: pepProjectId })).then(res => { |
|
|
dispatch(control.getVideoAlarmsAggDay({ pepProjectId: pepProjectId })).then(res => { |
|
|
if (res.success) setVideoBI(res.payload.data) |
|
|
if (res.success) setVideoBI(res.payload.data) |
|
|
}) |
|
|
}) |
|
|
//查询BI分析数据-应用 |
|
|
查询BI分析数据-应用 |
|
|
dispatch(control.getAppAlarmsAggDay({ pepProjectId: pepProjectId })).then(res => { |
|
|
dispatch(control.getAppAlarmsAggDay({ pepProjectId: pepProjectId })).then(res => { |
|
|
if (res.success) setAppBI(res.payload.data) |
|
|
if (res.success) setAppBI(res.payload.data) |
|
|
}) |
|
|
}) |
|
@ -125,12 +122,13 @@ const Control = (props) => { |
|
|
}) |
|
|
}) |
|
|
} |
|
|
} |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
// 统计概览--异常&问题 |
|
|
// 统计概览--异常&问题 |
|
|
dispatch(control.getConsoleAbnormal({ pepProjectId: pepProjectId || projectId })).then(res => { |
|
|
dispatch(control.getConsoleAbnormal({ pepProjectId: pepProjectId || projectId })).then(res => { |
|
|
if (res.success) { |
|
|
if (res.success) { |
|
|
if (res.payload.data?.length > 4) { |
|
|
if (res.payload.data?.length > 4) { |
|
|
setProblemsList([...res.payload.data, ...res.payload.data]) |
|
|
setProblemsList([...res.payload.data, ...res.payload.data]) |
|
|
startmarquee(500, 2000, 'problems') |
|
|
startmarquee('problems') |
|
|
} else { |
|
|
} else { |
|
|
setProblemsList(res.payload.data) |
|
|
setProblemsList(res.payload.data) |
|
|
} |
|
|
} |
|
@ -141,13 +139,13 @@ const Control = (props) => { |
|
|
if (res.success) { |
|
|
if (res.success) { |
|
|
if (res.payload.data?.personnel?.length > 5) { |
|
|
if (res.payload.data?.personnel?.length > 5) { |
|
|
setMemberList([...res.payload.data?.personnel, ...res.payload.data?.personnel]) |
|
|
setMemberList([...res.payload.data?.personnel, ...res.payload.data?.personnel]) |
|
|
startmarquee(600, 2000, 'member') |
|
|
startmarquee('member') |
|
|
} else { |
|
|
} else { |
|
|
setMemberList(res.payload.data?.personnel) |
|
|
setMemberList(res.payload.data?.personnel) |
|
|
} |
|
|
} |
|
|
if (res.payload.data?.webApp?.length > 3) { |
|
|
if (res.payload.data?.webApp?.length > 3) { |
|
|
setWebList([...res.payload.data?.webApp, ...res.payload.data?.webApp]) |
|
|
setWebList([...res.payload.data?.webApp, ...res.payload.data?.webApp]) |
|
|
startmarquee(600, 2000, 'web') |
|
|
startmarquee('web') |
|
|
} else { |
|
|
} else { |
|
|
setWebList(res.payload.data?.webApp) |
|
|
setWebList(res.payload.data?.webApp) |
|
|
} |
|
|
} |
|
@ -159,8 +157,11 @@ const Control = (props) => { |
|
|
useEffect(() => { |
|
|
useEffect(() => { |
|
|
//查询最新动态 |
|
|
//查询最新动态 |
|
|
if (exhibition?.current?.dynamic?.length > 0) { |
|
|
if (exhibition?.current?.dynamic?.length > 0) { |
|
|
|
|
|
console.log(query?.page); |
|
|
dispatch(control.getLatestDynamic({ ...query, projectCorrelationId: pepProjectId })).then(res => { |
|
|
dispatch(control.getLatestDynamic({ ...query, projectCorrelationId: pepProjectId })).then(res => { |
|
|
let data = querydata |
|
|
// console.log(res.payload.data); |
|
|
|
|
|
if (res.payload.data?.appear?.length || 0 + res.payload.data?.confirm?.length + res.payload.data?.notice?.length < 10) setASk(false) |
|
|
|
|
|
let data = [] |
|
|
if (res.success) { |
|
|
if (res.success) { |
|
|
if (exhibition?.current?.dynamic?.find(v => v.key == 'discovery')) { |
|
|
if (exhibition?.current?.dynamic?.find(v => v.key == 'discovery')) { |
|
|
res.payload.data?.appear?.map(v => data.push({ |
|
|
res.payload.data?.appear?.map(v => data.push({ |
|
@ -169,6 +170,7 @@ const Control = (props) => { |
|
|
sources: v.alarmInfo?.sourceName, |
|
|
sources: v.alarmInfo?.sourceName, |
|
|
type: v.type, |
|
|
type: v.type, |
|
|
time: v.time, |
|
|
time: v.time, |
|
|
|
|
|
id: v.id, |
|
|
})) |
|
|
})) |
|
|
} |
|
|
} |
|
|
if (exhibition?.current?.dynamic?.find(v => v.key == 'confirm')) { |
|
|
if (exhibition?.current?.dynamic?.find(v => v.key == 'confirm')) { |
|
@ -179,7 +181,7 @@ const Control = (props) => { |
|
|
type: v.alarmInfo?.type, |
|
|
type: v.alarmInfo?.type, |
|
|
time: v.confirmTime, |
|
|
time: v.confirmTime, |
|
|
userName: v.userName, |
|
|
userName: v.userName, |
|
|
// confirmContent:v.confirmContent, |
|
|
id: v.id, |
|
|
})) |
|
|
})) |
|
|
} |
|
|
} |
|
|
if (exhibition?.current?.dynamic?.find(v => v.key == 'notice')) { |
|
|
if (exhibition?.current?.dynamic?.find(v => v.key == 'notice')) { |
|
@ -192,6 +194,7 @@ const Control = (props) => { |
|
|
tactics: v.tactics, |
|
|
tactics: v.tactics, |
|
|
interval: v.tacticsParams?.interval, |
|
|
interval: v.tacticsParams?.interval, |
|
|
deviceProportion: v.tacticsParams?.deviceProportion, |
|
|
deviceProportion: v.tacticsParams?.deviceProportion, |
|
|
|
|
|
id: v.id, |
|
|
})) |
|
|
})) |
|
|
} |
|
|
} |
|
|
data.sort((a, b) => { |
|
|
data.sort((a, b) => { |
|
@ -201,23 +204,79 @@ const Control = (props) => { |
|
|
return -1 |
|
|
return -1 |
|
|
} |
|
|
} |
|
|
}) |
|
|
}) |
|
|
setQueryData(data) |
|
|
console.log(data) |
|
|
|
|
|
querydata.current = data |
|
|
|
|
|
setQueryData1(data) |
|
|
} |
|
|
} |
|
|
}) |
|
|
}) |
|
|
} |
|
|
} |
|
|
|
|
|
|
|
|
|
|
|
}, [pepProjectId, exhibition.current]) |
|
|
|
|
|
|
|
|
|
|
|
useEffect(() => { |
|
|
const line = document.getElementById("line") |
|
|
const line = document.getElementById("line") |
|
|
const news = document.getElementById("news") |
|
|
const news = document.getElementById("news") |
|
|
if (line && news) { |
|
|
if (line && news) { |
|
|
news.onscroll = () => { |
|
|
news.onscroll = () => { |
|
|
// console.log(news.scrollTop) |
|
|
|
|
|
// console.log(line.clientHeight) |
|
|
|
|
|
if ((line.clientHeight - 600) < news.scrollTop) { |
|
|
if ((line.clientHeight - 600) < news.scrollTop) { |
|
|
setQuery({ ...query, page: query.page + 1 }) |
|
|
setQuery({ ...query, page: query.page + 1 }) |
|
|
|
|
|
if (exhibition?.current?.dynamic?.length > 0) { |
|
|
|
|
|
dispatch(control.getLatestDynamic({ ...query, projectCorrelationId: pepProjectId, page: query.page + 1 })).then(res => { |
|
|
|
|
|
console.log(res.payload.data) |
|
|
|
|
|
let data = querydata.current |
|
|
|
|
|
if (res.success) { |
|
|
|
|
|
if (exhibition?.current?.dynamic?.find(v => v.key == 'discovery')) { |
|
|
|
|
|
res.payload.data?.appear?.map(v => data.push({ |
|
|
|
|
|
seed: 'discovery', |
|
|
|
|
|
project: v.projectName, |
|
|
|
|
|
sources: v.alarmInfo?.sourceName, |
|
|
|
|
|
type: v.type, |
|
|
|
|
|
time: v.time, |
|
|
|
|
|
id: v.id, |
|
|
|
|
|
})) |
|
|
|
|
|
} |
|
|
|
|
|
if (exhibition?.current?.dynamic?.find(v => v.key == 'confirm')) { |
|
|
|
|
|
res.payload.data?.confirm?.map(v => data.push({ |
|
|
|
|
|
seed: 'confirm', |
|
|
|
|
|
project: v.projectName, |
|
|
|
|
|
sources: v.alarmInfo?.source, |
|
|
|
|
|
type: v.alarmInfo?.type, |
|
|
|
|
|
time: v.confirmTime, |
|
|
|
|
|
userName: v.userName, |
|
|
|
|
|
id: v.id, |
|
|
|
|
|
})) |
|
|
|
|
|
} |
|
|
|
|
|
if (exhibition?.current?.dynamic?.find(v => v.key == 'notice')) { |
|
|
|
|
|
res.payload.data?.notice?.map(v => data.push({ |
|
|
|
|
|
seed: 'notice', |
|
|
|
|
|
time: v.time, |
|
|
|
|
|
project: v.projectName, |
|
|
|
|
|
userName: v.userName?.map(u => u.name), |
|
|
|
|
|
alarmPushConfig: v.alarmPushConfig?.name, |
|
|
|
|
|
tactics: v.tactics, |
|
|
|
|
|
interval: v.tacticsParams?.interval, |
|
|
|
|
|
deviceProportion: v.tacticsParams?.deviceProportion, |
|
|
|
|
|
id: v.id, |
|
|
|
|
|
})) |
|
|
|
|
|
} |
|
|
|
|
|
data.sort((a, b) => { |
|
|
|
|
|
if (moment(a.time).isBefore(b.time)) { |
|
|
|
|
|
return 1 |
|
|
|
|
|
} else { |
|
|
|
|
|
return -1 |
|
|
|
|
|
} |
|
|
|
|
|
}) |
|
|
|
|
|
console.log(data) |
|
|
|
|
|
querydata.current = data |
|
|
|
|
|
setQueryData1(data) |
|
|
|
|
|
} |
|
|
|
|
|
}) |
|
|
|
|
|
} |
|
|
} |
|
|
} |
|
|
} |
|
|
} |
|
|
} |
|
|
} |
|
|
}, [pepProjectId, query, exhibition.current]) |
|
|
|
|
|
|
|
|
}, [query]) |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
useEffect(() => { |
|
|
useEffect(() => { |
|
@ -312,7 +371,9 @@ const Control = (props) => { |
|
|
if (res.success) setToolShow(res.payload.data) |
|
|
if (res.success) setToolShow(res.payload.data) |
|
|
}) |
|
|
}) |
|
|
} |
|
|
} |
|
|
function startmarquee (speed, delay, name) { |
|
|
|
|
|
|
|
|
//轮播 |
|
|
|
|
|
function startmarquee (name) { |
|
|
/* |
|
|
/* |
|
|
函数startmarquee的参数: |
|
|
函数startmarquee的参数: |
|
|
lh:文字一次向上滚动的距离或高度; |
|
|
lh:文字一次向上滚动的距离或高度; |
|
@ -320,22 +381,22 @@ const Control = (props) => { |
|
|
delay:滚动停顿的时间间隔; |
|
|
delay:滚动停顿的时间间隔; |
|
|
index:可以使封装后的函数应用于页面当中不同的元素; |
|
|
index:可以使封装后的函数应用于页面当中不同的元素; |
|
|
*/ |
|
|
*/ |
|
|
var t; |
|
|
let t; |
|
|
var p = false; |
|
|
let p = false |
|
|
let top = 0 |
|
|
let top = 0 |
|
|
var o = document.getElementById(name); |
|
|
let o = document.getElementById(name); |
|
|
if (o) { |
|
|
if (o) { |
|
|
o.onmouseover = () => p = true |
|
|
|
|
|
o.onmouseout = () => p = false |
|
|
function start () { |
|
|
o.scrollTop = 0; |
|
|
|
|
|
const start = () => { |
|
|
|
|
|
t = setInterval(() => { |
|
|
t = setInterval(() => { |
|
|
if (!p) (top += 10, o.scrollTop = top) |
|
|
top += 5 |
|
|
if (p) (clearInterval(t), setTimeout(start, delay)) |
|
|
o.scrollTop = top |
|
|
if (o.scrollTop >= o.scrollHeight / 2) (top = 0, o.scrollTop = 0) |
|
|
if (o.scrollTop >= o.scrollHeight / 2) top = 0, o.scrollTop = top |
|
|
}, speed); |
|
|
}, 500); |
|
|
|
|
|
o.onmouseover = () => clearInterval(t) |
|
|
} |
|
|
} |
|
|
setTimeout(start, 1000); |
|
|
o.onmouseout = () => start() |
|
|
|
|
|
setTimeout(start(), 1000); |
|
|
} |
|
|
} |
|
|
} |
|
|
} |
|
|
|
|
|
|
|
@ -384,7 +445,7 @@ const Control = (props) => { |
|
|
{ name: '确认:完结状态的信息动态', sort: 4, key: 'confirm', }, |
|
|
{ name: '确认:完结状态的信息动态', sort: 4, key: 'confirm', }, |
|
|
|
|
|
|
|
|
{ name: '我的工作台', sort: 1, key: 'workbench', }, |
|
|
{ name: '我的工作台', sort: 1, key: 'workbench', }, |
|
|
{ name: '项目概览', sort: 2, key: 'statistical', }, |
|
|
{ name: '统计概览', sort: 2, key: 'statistical', }, |
|
|
{ name: 'BI分析模块', sort: 3, key: 'analyse', }, |
|
|
{ name: 'BI分析模块', sort: 3, key: 'analyse', }, |
|
|
{ name: '最新动态', sort: 4, key: 'dynamic', }, |
|
|
{ name: '最新动态', sort: 4, key: 'dynamic', }, |
|
|
{ name: '我常用的工具', sort: 5, key: 'tool', }, |
|
|
{ name: '我常用的工具', sort: 5, key: 'tool', }, |
|
@ -429,6 +490,7 @@ const Control = (props) => { |
|
|
setSetup(true) |
|
|
setSetup(true) |
|
|
setTableType('overall') |
|
|
setTableType('overall') |
|
|
attribute('overall') |
|
|
attribute('overall') |
|
|
|
|
|
setSetData(5) |
|
|
}} /> |
|
|
}} /> |
|
|
</div> |
|
|
</div> |
|
|
</div> |
|
|
</div> |
|
@ -450,6 +512,7 @@ const Control = (props) => { |
|
|
setSetup(true) |
|
|
setSetup(true) |
|
|
setTableType('workbench') |
|
|
setTableType('workbench') |
|
|
attribute('workbench') |
|
|
attribute('workbench') |
|
|
|
|
|
setSetData(4) |
|
|
}} /> |
|
|
}} /> |
|
|
</div> |
|
|
</div> |
|
|
</div> |
|
|
</div> |
|
@ -496,7 +559,7 @@ const Control = (props) => { |
|
|
<span style={{ fontSize: 12, color: '#4A4A4A' }}>{item.name == '关注的项目' ? ' ( 个 )' : ' ( 条 )'}</span> |
|
|
<span style={{ fontSize: 12, color: '#4A4A4A' }}>{item.name == '关注的项目' ? ' ( 个 )' : ' ( 条 )'}</span> |
|
|
</div> |
|
|
</div> |
|
|
<div style={{ marginTop: 15, display: 'flex', alignItems: 'center' }}> |
|
|
<div style={{ marginTop: 15, display: 'flex', alignItems: 'center' }}> |
|
|
<div onClick={() => dispatch(push(item.url))} style={{ fontSize: 32, color: index == 0 ? '#0F7EFB' : index == 1 ? '#0091A1' : index == 2 ? '#FE9812' : '#FF7575', fontFamily: 'YouSheBiaoTiHei' }}>{item.data}</div> |
|
|
<div onClick={() => dispatch(push(item.url))} style={{ fontSize: 32, color: index == 0 ? '#0F7EFB' : index == 1 ? '#0091A1' : index == 2 ? '#FE9812' : '#FF7575', fontFamily: 'YouSheBiaoTiHei', cursor: 'pointer', }}>{item.data}</div> |
|
|
{item.name == '关注的项目' ? '' : <div style={{ fontSize: 12, color: '#969799', marginLeft: 4 }}>待处理</div>} |
|
|
{item.name == '关注的项目' ? '' : <div style={{ fontSize: 12, color: '#969799', marginLeft: 4 }}>待处理</div>} |
|
|
</div> |
|
|
</div> |
|
|
</div> |
|
|
</div> |
|
@ -521,6 +584,7 @@ const Control = (props) => { |
|
|
setSetup(true) |
|
|
setSetup(true) |
|
|
setTableType('statistical') |
|
|
setTableType('statistical') |
|
|
attribute('statistical') |
|
|
attribute('statistical') |
|
|
|
|
|
setSetData(5) |
|
|
}} /> |
|
|
}} /> |
|
|
</div> |
|
|
</div> |
|
|
</div> |
|
|
</div> |
|
@ -532,7 +596,7 @@ const Control = (props) => { |
|
|
{pomsList?.map((v, index) => { |
|
|
{pomsList?.map((v, index) => { |
|
|
return <div key={'pomsList' + index} title={v.pepProjectName} |
|
|
return <div key={'pomsList' + index} title={v.pepProjectName} |
|
|
style={{ |
|
|
style={{ |
|
|
width: 400, lineHeight: '30px', whiteSpace: 'nowrap', overflow: 'hidden', textOverflow: 'ellipsis', fontSize: 14, color: '#969799', |
|
|
width: 400, cursor: 'pointer', lineHeight: '30px', whiteSpace: 'nowrap', overflow: 'hidden', textOverflow: 'ellipsis', fontSize: 14, color: '#969799', |
|
|
background: projectId == v.pepProjectId ? 'linear-gradient(252deg, #F9FBFF 0%, rgb(185 202 236) 100%)' : "", |
|
|
background: projectId == v.pepProjectId ? 'linear-gradient(252deg, #F9FBFF 0%, rgb(185 202 236) 100%)' : "", |
|
|
}} |
|
|
}} |
|
|
onClick={() => setProjectId(v.pepProjectId)}>{v.pepProjectName}</div> |
|
|
onClick={() => setProjectId(v.pepProjectId)}>{v.pepProjectName}</div> |
|
@ -745,6 +809,7 @@ const Control = (props) => { |
|
|
setSetup(true) |
|
|
setSetup(true) |
|
|
setTableType('analyse') |
|
|
setTableType('analyse') |
|
|
attribute('analyse') |
|
|
attribute('analyse') |
|
|
|
|
|
setSetData(10) |
|
|
}} /> |
|
|
}} /> |
|
|
</div> |
|
|
</div> |
|
|
</div> |
|
|
</div> |
|
@ -795,7 +860,7 @@ const Control = (props) => { |
|
|
}, |
|
|
}, |
|
|
grid: { |
|
|
grid: { |
|
|
show: false, |
|
|
show: false, |
|
|
left: '5%', |
|
|
left: '10%', |
|
|
// right: '4%', |
|
|
// right: '4%', |
|
|
// bottom: '3%', |
|
|
// bottom: '3%', |
|
|
// containLabel: true |
|
|
// containLabel: true |
|
@ -937,13 +1002,14 @@ const Control = (props) => { |
|
|
setTableType('dynamic') |
|
|
setTableType('dynamic') |
|
|
attribute('dynamic') |
|
|
attribute('dynamic') |
|
|
setLong('long') |
|
|
setLong('long') |
|
|
|
|
|
setSetData(4) |
|
|
}} /> |
|
|
}} /> |
|
|
</div> |
|
|
</div> |
|
|
</div> |
|
|
</div> |
|
|
<div id='news' style={{ height: 578, position: 'relative', marginTop: 10, }}> |
|
|
<div id='news' style={{ height: 578, position: 'relative', marginTop: 10, }}> |
|
|
<div id='line' style={{ width: '100%' }}> |
|
|
<div id='line' style={{ width: '100%' }}> |
|
|
<Timeline mode="center" style={{ marginLeft: '-56px', width: 400 }}> |
|
|
<Timeline mode="center" style={{ marginLeft: '-56px', width: 400 }}> |
|
|
{querydata?.map((v, index) => { |
|
|
{querydata.current?.map((v, index) => { |
|
|
let title = '' |
|
|
let title = '' |
|
|
if (v.seed == 'discovery') { |
|
|
if (v.seed == 'discovery') { |
|
|
title = v.project + v.sources + ',诊断为' + v.type |
|
|
title = v.project + v.sources + ',诊断为' + v.type |
|
@ -1022,7 +1088,7 @@ const Control = (props) => { |
|
|
onClick={() => { |
|
|
onClick={() => { |
|
|
setTool(true) |
|
|
setTool(true) |
|
|
setAlter(true) |
|
|
setAlter(true) |
|
|
setCompile({ id: v.id, name: v.name, link: v.link, }) |
|
|
setCompile({ linkId: v.id, name: v.name, link: v.link, }) |
|
|
}} |
|
|
}} |
|
|
>编辑</div> |
|
|
>编辑</div> |
|
|
<div style={{ lineHeight: '30px' }} |
|
|
<div style={{ lineHeight: '30px' }} |
|
@ -1065,6 +1131,7 @@ const Control = (props) => { |
|
|
tableType={tableType} |
|
|
tableType={tableType} |
|
|
tableList={tableSetup} |
|
|
tableList={tableSetup} |
|
|
layout={long} |
|
|
layout={long} |
|
|
|
|
|
data={setData} |
|
|
close={() => { |
|
|
close={() => { |
|
|
setSetup(false); |
|
|
setSetup(false); |
|
|
attribute(tableType); |
|
|
attribute(tableType); |
|
@ -1089,7 +1156,7 @@ const Control = (props) => { |
|
|
onOk={() => { |
|
|
onOk={() => { |
|
|
FormApi.current.validate().then((v) => { |
|
|
FormApi.current.validate().then((v) => { |
|
|
console.log(v); |
|
|
console.log(v); |
|
|
dispatch(control.putConsoleToollink({ id: compile?.id, name: v.name, link: v.link })).then(res => { |
|
|
dispatch(control.putConsoleToollink({ linkId: compile?.linkId, name: v.name, link: v.link })).then(res => { |
|
|
if (res.success) { |
|
|
if (res.success) { |
|
|
setTool(false) |
|
|
setTool(false) |
|
|
setAlter(false) |
|
|
setAlter(false) |
|
|