This commit is contained in:
Jay
2017-03-24 11:22:18 +08:00
parent 7aed87a053
commit c5236f9ad3
6 changed files with 115 additions and 11 deletions
+9
View File
@@ -620,4 +620,13 @@ export const del_link = (data) => dispatch => {
}
export const sw_link_active = (data) => dispatch => {
dispatch(link_api('/api/link/swlinkactive', data));
}
export const get_dashboard = () => dispatch => {
return fetch('/api/system/dashboard', getRequest())
.then(response => response.json())
.then(json => {
if(json.status != 1) return dispatch(add_dialog_msg(json.message));
})
}
@@ -92,7 +92,7 @@ class UnitItem extends React.Component {
if(st == 'time') {
d.id = `${data.dev},${data.mode}`;
d.op = data.op;
d.value = `${data.min}/${data.hour}/${data.day}/${data.month}/${data.week}/${data.year}`;
d.value = `${data.min}|${data.hour}|${data.day}|${data.month}|${data.week}|${data.year}`;
}
updateData(this.props.unit, d);
+44
View File
@@ -0,0 +1,44 @@
import React from 'react';
import {Container, Segment, Divider, Grid, Label} from 'semantic-ui-react';
class DashBoardUnit extends React.Component {
tick = null;
runTick = () => {
}
componentDidMount(){
this.tick = setInterval(this.runTick, 1000)
}
render(){
let {i18n} = this.props;
return (
<Container style={{fontSize: '20px'}}>
<Segment>
<Divider horizontal>{i18n&&i18n.t ? i18n.t('dashboard.sysinfo') : ''}</Divider>
<Grid columns={3}>
<Grid.Column textAlign="center">
<Label basic size="large" content={i18n&&i18n.t?i18n.t('dashboard.systime') : ''} />
<br />
</Grid.Column>
<Grid.Column textAlign="center">
<Label basic size="large" content={i18n&&i18n.t?i18n.t('dashboard.sysip') : ''} />
<br />
</Grid.Column>
<Grid.Column textAlign="center">
<Label basic size="large" content={i18n&&i18n.t?i18n.t('dashboard.sysversion') : ''} />
<br />
</Grid.Column>
</Grid>
<Divider horizontal>{i18n&&i18n.t ? i18n.t('dashboard.devstats') : ''}</Divider>
</Segment>
</Container>
)
}
}
export default DashBoardUnit;
+12 -3
View File
@@ -1,7 +1,16 @@
const sysinfoReducer = (state = {
const defState = () => ({
network: {},
time: ''
}, action) => {
time: '',
dashboard: {
time: '',
ip: '',
version: '',
di: [],
leone: []
}
})
const sysinfoReducer = (state = defState(), action) => {
switch(action.type) {
case 'network_info':
return {...state, network: action.network};