Add support for different report components, and create revenue report component.
This commit is contained in:
parent
bc084b7302
commit
652fdd8be1
|
@ -0,0 +1,42 @@
|
|||
/** @format */
|
||||
/**
|
||||
* External dependencies
|
||||
*/
|
||||
import { __ } from '@wordpress/i18n';
|
||||
import { Component, Fragment } from '@wordpress/element';
|
||||
|
||||
/**
|
||||
* Internal dependencies
|
||||
*/
|
||||
import Header from 'components/header';
|
||||
import { SummaryList, SummaryNumber } from 'components/summary';
|
||||
|
||||
export default class extends Component {
|
||||
render() {
|
||||
return (
|
||||
<Fragment>
|
||||
<Header
|
||||
sections={ [
|
||||
[ '/analytics', __( 'Analytics', 'woo-dash' ) ],
|
||||
__( 'Report Title', 'woo-dash' ),
|
||||
] }
|
||||
/>
|
||||
<SummaryList>
|
||||
<SummaryNumber
|
||||
value={ '$829.40' }
|
||||
label={ __( 'Gross Revenue', 'woo-dash' ) }
|
||||
delta={ 29 }
|
||||
/>
|
||||
<SummaryNumber
|
||||
value={ '$24.00' }
|
||||
label={ __( 'Refunds', 'woo-dash' ) }
|
||||
delta={ -10 }
|
||||
selected
|
||||
/>
|
||||
<SummaryNumber value={ '$49.90' } label={ __( 'Coupons', 'woo-dash' ) } delta={ 15 } />
|
||||
<SummaryNumber value={ '$66.39' } label={ __( 'Tax', 'woo-dash' ) } />
|
||||
</SummaryList>
|
||||
</Fragment>
|
||||
);
|
||||
}
|
||||
}
|
|
@ -2,41 +2,31 @@
|
|||
/**
|
||||
* External dependencies
|
||||
*/
|
||||
import { __ } from '@wordpress/i18n';
|
||||
import { Component, Fragment } from '@wordpress/element';
|
||||
import { Component } from '@wordpress/element';
|
||||
import PropTypes from 'prop-types';
|
||||
|
||||
/**
|
||||
* Internal dependencies
|
||||
*/
|
||||
import Header from 'components/header';
|
||||
import { SummaryList, SummaryNumber } from 'components/summary';
|
||||
import ExampleReport from './example';
|
||||
import RevenueReport from './revenue';
|
||||
|
||||
export default class extends Component {
|
||||
class Report extends Component {
|
||||
render() {
|
||||
return (
|
||||
<Fragment>
|
||||
<Header
|
||||
sections={ [
|
||||
[ '/analytics', __( 'Analytics', 'woo-dash' ) ],
|
||||
__( 'Report Title', 'woo-dash' ),
|
||||
] }
|
||||
/>
|
||||
<SummaryList>
|
||||
<SummaryNumber
|
||||
value={ '$829.40' }
|
||||
label={ __( 'Gross Revenue', 'woo-dash' ) }
|
||||
delta={ 29 }
|
||||
/>
|
||||
<SummaryNumber
|
||||
value={ '$24.00' }
|
||||
label={ __( 'Refunds', 'woo-dash' ) }
|
||||
delta={ -10 }
|
||||
selected
|
||||
/>
|
||||
<SummaryNumber value={ '$49.90' } label={ __( 'Coupons', 'woo-dash' ) } delta={ 15 } />
|
||||
<SummaryNumber value={ '$66.39' } label={ __( 'Tax', 'woo-dash' ) } />
|
||||
</SummaryList>
|
||||
</Fragment>
|
||||
);
|
||||
const { params } = this.props;
|
||||
switch ( params.report ) {
|
||||
case 'revenue':
|
||||
return <RevenueReport { ...this.props } />;
|
||||
default:
|
||||
return <ExampleReport />;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
Report.propTypes = {
|
||||
params: PropTypes.object.isRequired,
|
||||
path: PropTypes.string.isRequired,
|
||||
query: PropTypes.object.isRequired,
|
||||
};
|
||||
|
||||
export default Report;
|
||||
|
|
|
@ -0,0 +1,55 @@
|
|||
/** @format */
|
||||
/**
|
||||
* External dependencies
|
||||
*/
|
||||
import { __ } from '@wordpress/i18n';
|
||||
import { Component, Fragment } from '@wordpress/element';
|
||||
import PropTypes from 'prop-types';
|
||||
|
||||
/**
|
||||
* Internal dependencies
|
||||
*/
|
||||
import DatePicker from 'components/date-picker';
|
||||
import Header from 'components/header';
|
||||
import { SummaryList, SummaryNumber } from 'components/summary';
|
||||
|
||||
class RevenueReport extends Component {
|
||||
render() {
|
||||
const { path, query } = this.props;
|
||||
return (
|
||||
<Fragment>
|
||||
<Header
|
||||
sections={ [
|
||||
[ '/analytics', __( 'Analytics', 'woo-dash' ) ],
|
||||
__( 'Revenue', 'woo-dash' ),
|
||||
] }
|
||||
/>
|
||||
<DatePicker query={ query } path={ path } />
|
||||
|
||||
<SummaryList>
|
||||
<SummaryNumber
|
||||
value={ '$829.40' }
|
||||
label={ __( 'Gross Revenue', 'woo-dash' ) }
|
||||
delta={ 29 }
|
||||
/>
|
||||
<SummaryNumber
|
||||
value={ '$24.00' }
|
||||
label={ __( 'Refunds', 'woo-dash' ) }
|
||||
delta={ -10 }
|
||||
selected
|
||||
/>
|
||||
<SummaryNumber value={ '$49.90' } label={ __( 'Coupons', 'woo-dash' ) } delta={ 15 } />
|
||||
<SummaryNumber value={ '$66.39' } label={ __( 'Taxes', 'woo-dash' ) } />
|
||||
</SummaryList>
|
||||
</Fragment>
|
||||
);
|
||||
}
|
||||
}
|
||||
|
||||
RevenueReport.propTypes = {
|
||||
params: PropTypes.object.isRequired,
|
||||
path: PropTypes.string.isRequired,
|
||||
query: PropTypes.object.isRequired,
|
||||
};
|
||||
|
||||
export default RevenueReport;
|
|
@ -48,6 +48,15 @@ function woo_dash_register_pages(){
|
|||
'woodash#/analytics/test',
|
||||
'woo_dash_page'
|
||||
);
|
||||
|
||||
add_submenu_page(
|
||||
'woodash#/analytics',
|
||||
__( 'Revenue', 'woo-dash' ),
|
||||
__( 'Revenue', 'woo-dash' ),
|
||||
'manage_options',
|
||||
'woodash#/analytics/revenue',
|
||||
'woo_dash_page'
|
||||
);
|
||||
}
|
||||
add_action( 'admin_menu', 'woo_dash_register_pages' );
|
||||
|
||||
|
|
Loading…
Reference in New Issue