Browse Source

Gráfico Adicionado

master
andrebarros7201 5 years ago
parent
commit
dcfec8f0ee
8 changed files with 153000 additions and 15 deletions
  1. BIN
      dbs/dbmercearia.mv.db
  2. +152942
    -4
      public/scripts/main.js
  3. +1
    -1
      public/scripts/main.js.map
  4. +7
    -0
      server/services/stock/grafico.js
  5. +36
    -0
      ui/src/components/GraficoStock/index.jsx
  6. +5
    -2
      ui/src/components/TabelaLoja/JanelaStock/index.jsx
  7. +2
    -5
      ui/src/components/TabelaLoja/index.jsx
  8. +7
    -3
      ui/src/containers/DashboardContainer/index.jsx

BIN
dbs/dbmercearia.mv.db View File


+ 152942
- 4
public/scripts/main.js
File diff suppressed because it is too large
View File


+ 1
- 1
public/scripts/main.js.map
File diff suppressed because it is too large
View File


+ 7
- 0
server/services/stock/grafico.js View File

@ -0,0 +1,7 @@
const dbStock = _db.query(`
select produto.nome as "nome", produto.quantidade as "quantidade" from produto
`)
//java.lang.Thread.sleep(4000)
_out.json(dbStock)

+ 36
- 0
ui/src/components/GraficoStock/index.jsx View File

@ -0,0 +1,36 @@
import React, { useState, useEffect } from "react";
import PropTypes from "prop-types";
import Spin from 'antd/lib/spin';
import Typography from 'antd/lib/typography';
import { Chart, Interval } from 'bizcharts';
import Service from "../../utils/Service";
const { Title } = Typography;
const GraficoStock = () => {
const [ loading, setLoading ] = useState(false);
const [ data, setData ] = useState([]);
useEffect(() => {
Service.call({
url: `stock/grafico`,
method: "post",
setData,
setLoading,
errorTitle: 'Gráfico do Stock',
errorMessage: 'Houve uma falha ao carregar o gráfico do stock...'
})
}, []);
return <>
{ Service.spin(loading) }
<Chart height={300} autoFit data={data} >
<Interval position="nome*quantidade" />
</Chart>
</>;
};
GraficoStock.propTypes = {
};
export default GraficoStock;

+ 5
- 2
ui/src/components/TabelaLoja/JanelaStock/index.jsx View File

@ -17,10 +17,13 @@ const JanelaStock = ({ loja, onClose }) => {
useEffect(() => { useEffect(() => {
Service.call({ Service.call({
url: `lojas/produtos`,
method: "post",
url: `lojas/produtos/`,
method: "POST",
setData, setData,
setLoading, setLoading,
body: JSON.stringify({
id: loja.id
}),
errorTitle: 'Tabela de Stock', errorTitle: 'Tabela de Stock',
errorMessage: 'Houve uma falha ao carregar a tabela de Stock...' errorMessage: 'Houve uma falha ao carregar a tabela de Stock...'
}); });


+ 2
- 5
ui/src/components/TabelaLoja/index.jsx View File

@ -42,15 +42,12 @@ const TabelaLoja = () => {
return <>
return <>
{ !!produtosLoja && <JanelaStock { !!produtosLoja && <JanelaStock
loja={produtosLoja} loja={produtosLoja}
onClose={ () => setProdutosLoja(null) } onClose={ () => setProdutosLoja(null) }
/> } /> }
<Table dataSource={data} {... { columns, loading}} />
<Table dataSource={data} { ...{ columns, loading} } />
</>; </>;
}; };


+ 7
- 3
ui/src/containers/DashboardContainer/index.jsx View File

@ -8,6 +8,7 @@ import TabelaProduto from "../../components/TabelaProdutos/index.jsx";
import "./index.less"; import "./index.less";
import GraficoStock from "../../components/GraficoStock/index.jsx";
export default class DashboardContainer extends Component { export default class DashboardContainer extends Component {
constructor(props) { constructor(props) {
@ -86,9 +87,10 @@ export default class DashboardContainer extends Component {
const { counter } = this.state; const { counter } = this.state;
const styleh1 = { const styleh1 = {
color: "#5b5ce1",
color: "#5b5ce1",
font: "candara", font: "candara",
padding: "8px", padding: "8px",
textAlign: "center",
} }
return ( return (
<div className="my-dashboard"> <div className="my-dashboard">
@ -98,8 +100,10 @@ export default class DashboardContainer extends Component {
<h1 style={styleh1}>Produtos</h1> <h1 style={styleh1}>Produtos</h1>
<TabelaProduto/> <TabelaProduto/>
<h1 style={styleh1}>Categorias</h1> <h1 style={styleh1}>Categorias</h1>
<TabelaCategoria/>
{/* <MyButton mainRef={ this.button } text={ `ReactJS ⚡ Ant.Design 👉 Click me! ${ counter }` } click={ this.click } /> */}
<TabelaCategoria/>
<h1 style={styleh1}>Gráfico</h1>
<GraficoStock/>
</div> </div>
); );
} }


Loading…
Cancel
Save