|
|
@ -49,15 +49,13 @@ export default function CatTabuladores (props: IProps) { |
|
|
|
const [show, setShowMsg] = useState(false) |
|
|
|
const [show, setShowMsg] = useState(false) |
|
|
|
const [msg, setMsg] = useState('') |
|
|
|
const [msg, setMsg] = useState('') |
|
|
|
const [DialogTabs, setDialogTabs] = useState(false) |
|
|
|
const [DialogTabs, setDialogTabs] = useState(false) |
|
|
|
const [ConceptoDialogTabs, setConceptoDialogTabs] = useState(false) |
|
|
|
|
|
|
|
const [Corresponsal, setCorresponsal] = useState(0) |
|
|
|
const [Corresponsal, setCorresponsal] = useState(0) |
|
|
|
const [Corresponsales, setCorresponsales] = useState<ICatCorresponsales[]>([]) |
|
|
|
const [Corresponsales, setCorresponsales] = useState<ICatCorresponsales[]>([]) |
|
|
|
const [Tipo, setTipo] = useState(0) |
|
|
|
|
|
|
|
const [Moneda, setMoneda] = useState(0) |
|
|
|
|
|
|
|
const columnsConcepts = [ |
|
|
|
const columnsConcepts = [ |
|
|
|
{ |
|
|
|
{ |
|
|
|
name: 'Concepto', |
|
|
|
name: 'Concepto', |
|
|
|
width: '55%', |
|
|
|
width: '85%', |
|
|
|
selector: (row: ITabuladorConceptos) => row.concepto, |
|
|
|
selector: (row: ITabuladorConceptos) => row.concepto, |
|
|
|
sortable: true, |
|
|
|
sortable: true, |
|
|
|
}, |
|
|
|
}, |
|
|
@ -69,7 +67,7 @@ export default function CatTabuladores (props: IProps) { |
|
|
|
id={row.id} |
|
|
|
id={row.id} |
|
|
|
value={row.costo} |
|
|
|
value={row.costo} |
|
|
|
postCost={(id, value) => { |
|
|
|
postCost={(id, value) => { |
|
|
|
postCost(id, value, row.costoCorresponsal, row.idConcepto) |
|
|
|
postCost(id, value, row.costoCorresponsal) |
|
|
|
}} |
|
|
|
}} |
|
|
|
/> |
|
|
|
/> |
|
|
|
), |
|
|
|
), |
|
|
@ -82,28 +80,11 @@ export default function CatTabuladores (props: IProps) { |
|
|
|
id={row.id} |
|
|
|
id={row.id} |
|
|
|
value={row.costoCorresponsal} |
|
|
|
value={row.costoCorresponsal} |
|
|
|
postCost={(id, value) => { |
|
|
|
postCost={(id, value) => { |
|
|
|
postCost(id, row.costo, value, row.idConcepto) |
|
|
|
postCost(id, row.costo, value) |
|
|
|
}} |
|
|
|
}} |
|
|
|
/> |
|
|
|
/> |
|
|
|
), |
|
|
|
), |
|
|
|
}, |
|
|
|
}, |
|
|
|
{ |
|
|
|
|
|
|
|
name: 'Elimina', |
|
|
|
|
|
|
|
width: '15%', |
|
|
|
|
|
|
|
cell: (row: ITabuladorConceptos) => ( |
|
|
|
|
|
|
|
<div |
|
|
|
|
|
|
|
style={{ textAlign: 'center', cursor: 'pointer' }} |
|
|
|
|
|
|
|
onClick={() => { |
|
|
|
|
|
|
|
setConcepto(row.id) |
|
|
|
|
|
|
|
setConceptoDialogTabs(true) |
|
|
|
|
|
|
|
}} |
|
|
|
|
|
|
|
> |
|
|
|
|
|
|
|
<IconContext.Provider value={{ color: 'red', size: '25px' }}> |
|
|
|
|
|
|
|
<FaTimesCircle /> |
|
|
|
|
|
|
|
</IconContext.Provider> |
|
|
|
|
|
|
|
</div> |
|
|
|
|
|
|
|
), |
|
|
|
|
|
|
|
}, |
|
|
|
|
|
|
|
] |
|
|
|
] |
|
|
|
|
|
|
|
|
|
|
|
const columnsTabs = [ |
|
|
|
const columnsTabs = [ |
|
|
@ -119,7 +100,7 @@ export default function CatTabuladores (props: IProps) { |
|
|
|
}, |
|
|
|
}, |
|
|
|
{ |
|
|
|
{ |
|
|
|
name: 'Editar', |
|
|
|
name: 'Editar', |
|
|
|
width: '15%', |
|
|
|
width: '10%', |
|
|
|
cell: (row: ITabulador) => ( |
|
|
|
cell: (row: ITabulador) => ( |
|
|
|
<div |
|
|
|
<div |
|
|
|
style={{ textAlign: 'center', cursor: 'pointer' }} |
|
|
|
style={{ textAlign: 'center', cursor: 'pointer' }} |
|
|
@ -127,8 +108,6 @@ export default function CatTabuladores (props: IProps) { |
|
|
|
setTabulador(row.id) |
|
|
|
setTabulador(row.id) |
|
|
|
setNombreTabulador(row.nombre) |
|
|
|
setNombreTabulador(row.nombre) |
|
|
|
setCorresponsal(row.idCorresponsal!) |
|
|
|
setCorresponsal(row.idCorresponsal!) |
|
|
|
setTipo(row.tipo) |
|
|
|
|
|
|
|
setMoneda(row.moneda) |
|
|
|
|
|
|
|
}} |
|
|
|
}} |
|
|
|
> |
|
|
|
> |
|
|
|
<IconContext.Provider value={{ color: 'blue', size: '25px' }}> |
|
|
|
<IconContext.Provider value={{ color: 'blue', size: '25px' }}> |
|
|
@ -139,7 +118,6 @@ export default function CatTabuladores (props: IProps) { |
|
|
|
}, |
|
|
|
}, |
|
|
|
{ |
|
|
|
{ |
|
|
|
name: 'Elimina', |
|
|
|
name: 'Elimina', |
|
|
|
width: '15%', |
|
|
|
|
|
|
|
cell: (row: ITabulador) => ( |
|
|
|
cell: (row: ITabulador) => ( |
|
|
|
<div |
|
|
|
<div |
|
|
|
style={{ textAlign: 'center', cursor: 'pointer' }} |
|
|
|
style={{ textAlign: 'center', cursor: 'pointer' }} |
|
|
@ -157,11 +135,11 @@ export default function CatTabuladores (props: IProps) { |
|
|
|
}, |
|
|
|
}, |
|
|
|
] |
|
|
|
] |
|
|
|
|
|
|
|
|
|
|
|
const postCost = (id: number, costoCliente: number, costoCorresponsal: number, idConcepto: number) => { |
|
|
|
const postCost = (id: number, costoCliente: number, costoCorresponsal: number) => { |
|
|
|
const data: ITabuladorConceptos = { |
|
|
|
const data: ITabuladorConceptos = { |
|
|
|
id: id, |
|
|
|
id: id, |
|
|
|
idTabulador: Tabulador, |
|
|
|
idTabulador: Tabulador, |
|
|
|
idConcepto: idConcepto, |
|
|
|
idConcepto: Concepto, |
|
|
|
concepto: '', |
|
|
|
concepto: '', |
|
|
|
costo: costoCliente, |
|
|
|
costo: costoCliente, |
|
|
|
activo: 1, |
|
|
|
activo: 1, |
|
|
@ -204,19 +182,6 @@ export default function CatTabuladores (props: IProps) { |
|
|
|
}) |
|
|
|
}) |
|
|
|
} |
|
|
|
} |
|
|
|
|
|
|
|
|
|
|
|
const deleteConcepto = () => { |
|
|
|
|
|
|
|
CTabDetDataService.Delete(Concepto) |
|
|
|
|
|
|
|
.then((resp) => { |
|
|
|
|
|
|
|
if(resp.status === 200){ |
|
|
|
|
|
|
|
setHeader('Informativo') |
|
|
|
|
|
|
|
setMsg(resp.data.respuesta) |
|
|
|
|
|
|
|
setShowMsg(true) |
|
|
|
|
|
|
|
setConceptoDialogTabs(false) |
|
|
|
|
|
|
|
setDetalleConceptos(DetalleConceptos.filter(concepto => concepto.id != Concepto)) |
|
|
|
|
|
|
|
} |
|
|
|
|
|
|
|
}) |
|
|
|
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
useEffect(() => { |
|
|
|
useEffect(() => { |
|
|
|
CTabDetDataService.getAllConcepts() |
|
|
|
CTabDetDataService.getAllConcepts() |
|
|
|
.then((response) => { |
|
|
|
.then((response) => { |
|
|
@ -300,9 +265,7 @@ export default function CatTabuladores (props: IProps) { |
|
|
|
id: Tabulador, |
|
|
|
id: Tabulador, |
|
|
|
idCliente: Cliente, |
|
|
|
idCliente: Cliente, |
|
|
|
nombre: NombreTabulador, |
|
|
|
nombre: NombreTabulador, |
|
|
|
idCorresponsal:Corresponsal, |
|
|
|
idCorresponsal:Corresponsal |
|
|
|
tipo: Tipo, |
|
|
|
|
|
|
|
moneda: Moneda |
|
|
|
|
|
|
|
} |
|
|
|
} |
|
|
|
CTabDataService.Append(data) |
|
|
|
CTabDataService.Append(data) |
|
|
|
.then((response) => { |
|
|
|
.then((response) => { |
|
|
@ -340,20 +303,20 @@ export default function CatTabuladores (props: IProps) { |
|
|
|
} |
|
|
|
} |
|
|
|
} |
|
|
|
} |
|
|
|
|
|
|
|
|
|
|
|
const addConcept = (idConcepto: number) => { |
|
|
|
const addConcept = () => { |
|
|
|
if (Tabulador === 0) { |
|
|
|
if (Tabulador === 0) { |
|
|
|
setHeader('Error') |
|
|
|
setHeader('Error') |
|
|
|
setMsg('Por favor, primero seleccione el tabulador') |
|
|
|
setMsg('Por favor, primero seleccione el tabulador') |
|
|
|
setShowMsg(true) |
|
|
|
setShowMsg(true) |
|
|
|
return |
|
|
|
return |
|
|
|
} |
|
|
|
} |
|
|
|
if (idConcepto === 0) { |
|
|
|
if (Concepto === 0) { |
|
|
|
setHeader('Error') |
|
|
|
setHeader('Error') |
|
|
|
setMsg('Por favor, primero seleccione el concepto') |
|
|
|
setMsg('Por favor, primero seleccione el concepto') |
|
|
|
setShowMsg(true) |
|
|
|
setShowMsg(true) |
|
|
|
return |
|
|
|
return |
|
|
|
} |
|
|
|
} |
|
|
|
postCost(0, 0, 0, idConcepto) |
|
|
|
postCost(0, 0, 0) |
|
|
|
} |
|
|
|
} |
|
|
|
|
|
|
|
|
|
|
|
const clearForm = () => { |
|
|
|
const clearForm = () => { |
|
|
@ -368,6 +331,7 @@ export default function CatTabuladores (props: IProps) { |
|
|
|
<Card> |
|
|
|
<Card> |
|
|
|
<Card.Body> |
|
|
|
<Card.Body> |
|
|
|
<Card style={{ height: '100%' }}> |
|
|
|
<Card style={{ height: '100%' }}> |
|
|
|
|
|
|
|
<Card.Header as='h4'>Tabuladores Clientes</Card.Header> |
|
|
|
<Card.Body> |
|
|
|
<Card.Body> |
|
|
|
<Container fluid> |
|
|
|
<Container fluid> |
|
|
|
<Alert variant='primary'> |
|
|
|
<Alert variant='primary'> |
|
|
@ -401,9 +365,8 @@ export default function CatTabuladores (props: IProps) { |
|
|
|
</Row> |
|
|
|
</Row> |
|
|
|
</Alert> |
|
|
|
</Alert> |
|
|
|
<Row> |
|
|
|
<Row> |
|
|
|
<Col xs={5}> |
|
|
|
<Col xs={6}> |
|
|
|
<Card style={{}}> |
|
|
|
<Card style={{}}> |
|
|
|
<Card.Header><h5>Tabuladores</h5></Card.Header> |
|
|
|
|
|
|
|
<Card.Body> |
|
|
|
<Card.Body> |
|
|
|
<Card.Subtitle className='mb-2 text-muted'> |
|
|
|
<Card.Subtitle className='mb-2 text-muted'> |
|
|
|
<Row> |
|
|
|
<Row> |
|
|
@ -416,7 +379,12 @@ export default function CatTabuladores (props: IProps) { |
|
|
|
<FaEraser /> |
|
|
|
<FaEraser /> |
|
|
|
</IconContext.Provider> |
|
|
|
</IconContext.Provider> |
|
|
|
</Col> |
|
|
|
</Col> |
|
|
|
<Col xs={10}> |
|
|
|
<Col xs={2} style={{ paddingTop: '5px' }}> |
|
|
|
|
|
|
|
<div> |
|
|
|
|
|
|
|
<h5>Tabulador</h5> |
|
|
|
|
|
|
|
</div> |
|
|
|
|
|
|
|
</Col> |
|
|
|
|
|
|
|
<Col xs={8}> |
|
|
|
<h4> |
|
|
|
<h4> |
|
|
|
<Form.Control |
|
|
|
<Form.Control |
|
|
|
type='text' |
|
|
|
type='text' |
|
|
@ -431,7 +399,7 @@ export default function CatTabuladores (props: IProps) { |
|
|
|
/> |
|
|
|
/> |
|
|
|
</h4> |
|
|
|
</h4> |
|
|
|
</Col> |
|
|
|
</Col> |
|
|
|
<Col xs={1} style={{ paddingTop: '5px' }}> |
|
|
|
<Col style={{ paddingTop: '5px' }}> |
|
|
|
<IconContext.Provider value={{ color: 'green', size: '30px' }}> |
|
|
|
<IconContext.Provider value={{ color: 'green', size: '30px' }}> |
|
|
|
<FaSave onClick={() => saveForm()} style={{ cursor: 'pointer' }}/> |
|
|
|
<FaSave onClick={() => saveForm()} style={{ cursor: 'pointer' }}/> |
|
|
|
</IconContext.Provider> |
|
|
|
</IconContext.Provider> |
|
|
@ -450,14 +418,13 @@ export default function CatTabuladores (props: IProps) { |
|
|
|
</Card.Body> |
|
|
|
</Card.Body> |
|
|
|
</Card> |
|
|
|
</Card> |
|
|
|
</Col> |
|
|
|
</Col> |
|
|
|
<Col xs={7}> |
|
|
|
<Col xs={6}> |
|
|
|
<Card style={{}}> |
|
|
|
<Card style={{}}> |
|
|
|
<Card.Header><h5>Datos del Tabulador: {NombreTabulador}</h5></Card.Header> |
|
|
|
|
|
|
|
<Card.Body> |
|
|
|
<Card.Body> |
|
|
|
<Card.Subtitle className='mb-2 text-muted'> |
|
|
|
<Card.Subtitle className='mb-2 text-muted'> |
|
|
|
<Row> |
|
|
|
<Row> |
|
|
|
<Col xs={3} style={{ paddingTop: '5px' }}>Corresponsal</Col> |
|
|
|
<Col xs={3} style={{ paddingTop: '5px' }}>Corresponsal:</Col> |
|
|
|
<Col xs={8}> |
|
|
|
<Col xs={9}> |
|
|
|
<Form.Control |
|
|
|
<Form.Control |
|
|
|
disabled={Tabulador===0} |
|
|
|
disabled={Tabulador===0} |
|
|
|
as='select' |
|
|
|
as='select' |
|
|
@ -480,86 +447,17 @@ export default function CatTabuladores (props: IProps) { |
|
|
|
: null} |
|
|
|
: null} |
|
|
|
</Form.Control> |
|
|
|
</Form.Control> |
|
|
|
</Col> |
|
|
|
</Col> |
|
|
|
<Col style={{ paddingTop: '5px' }}> |
|
|
|
|
|
|
|
<IconContext.Provider value={{ color: 'green', size: '30px' }}> |
|
|
|
|
|
|
|
<FaSave onClick={() => saveForm()} style={{ cursor: 'pointer' }}/> |
|
|
|
|
|
|
|
</IconContext.Provider> |
|
|
|
|
|
|
|
</Col> |
|
|
|
|
|
|
|
</Row> |
|
|
|
|
|
|
|
<Row style={{ paddingTop: '5px' }}> |
|
|
|
|
|
|
|
<Col xs={6}> |
|
|
|
|
|
|
|
<Row> |
|
|
|
|
|
|
|
<Col xs={3}>Tipo: </Col> |
|
|
|
|
|
|
|
<Col xs={9}> |
|
|
|
|
|
|
|
<Form> |
|
|
|
|
|
|
|
<Form.Check |
|
|
|
|
|
|
|
type='radio' |
|
|
|
|
|
|
|
id='radio-Impo' |
|
|
|
|
|
|
|
value={1} |
|
|
|
|
|
|
|
label='Impo' |
|
|
|
|
|
|
|
inline |
|
|
|
|
|
|
|
name='grupo' |
|
|
|
|
|
|
|
onChange={e => setTipo(parseInt(e.target.value))} |
|
|
|
|
|
|
|
checked={Tipo === 1} |
|
|
|
|
|
|
|
disabled={Tabulador===0} |
|
|
|
|
|
|
|
/> |
|
|
|
|
|
|
|
<Form.Check
|
|
|
|
|
|
|
|
type='radio'
|
|
|
|
|
|
|
|
id='radio-Expo'
|
|
|
|
|
|
|
|
value={2}
|
|
|
|
|
|
|
|
label='Expo'
|
|
|
|
|
|
|
|
inline
|
|
|
|
|
|
|
|
name='grupo'
|
|
|
|
|
|
|
|
onChange={e => setTipo(parseInt(e.target.value))}
|
|
|
|
|
|
|
|
checked={Tipo === 2} |
|
|
|
|
|
|
|
disabled={Tabulador===0} |
|
|
|
|
|
|
|
/> |
|
|
|
|
|
|
|
</Form> |
|
|
|
|
|
|
|
</Col> |
|
|
|
|
|
|
|
</Row> |
|
|
|
|
|
|
|
</Col> |
|
|
|
|
|
|
|
<Col xs={6}> |
|
|
|
|
|
|
|
<Row> |
|
|
|
|
|
|
|
<Col xs={4}>Moneda:</Col> |
|
|
|
|
|
|
|
<Col xs={8}> |
|
|
|
|
|
|
|
<Form> |
|
|
|
|
|
|
|
<Form.Check
|
|
|
|
|
|
|
|
type='radio'
|
|
|
|
|
|
|
|
id='radio-USD'
|
|
|
|
|
|
|
|
value={1}
|
|
|
|
|
|
|
|
label='USD'
|
|
|
|
|
|
|
|
inline
|
|
|
|
|
|
|
|
name='grupo'
|
|
|
|
|
|
|
|
onChange={e => setMoneda(parseInt(e.target.value))}
|
|
|
|
|
|
|
|
checked={Moneda === 1} |
|
|
|
|
|
|
|
disabled={Tabulador===0} |
|
|
|
|
|
|
|
/> |
|
|
|
|
|
|
|
<Form.Check
|
|
|
|
|
|
|
|
type='radio'
|
|
|
|
|
|
|
|
id='radio-MXN'
|
|
|
|
|
|
|
|
value={2}
|
|
|
|
|
|
|
|
label='MXN'
|
|
|
|
|
|
|
|
inline
|
|
|
|
|
|
|
|
name='grupo'
|
|
|
|
|
|
|
|
onChange={e => setMoneda(parseInt(e.target.value))}
|
|
|
|
|
|
|
|
checked={Moneda === 2} |
|
|
|
|
|
|
|
disabled={Tabulador===0} |
|
|
|
|
|
|
|
/> |
|
|
|
|
|
|
|
</Form> |
|
|
|
|
|
|
|
</Col> |
|
|
|
|
|
|
|
</Row> |
|
|
|
|
|
|
|
</Col> |
|
|
|
|
|
|
|
</Row> |
|
|
|
</Row> |
|
|
|
<hr /> |
|
|
|
<hr /> |
|
|
|
<Row> |
|
|
|
<Row> |
|
|
|
<Col xs={2} style={{ paddingTop: '8px' }}> |
|
|
|
<Col xs={2} style={{ paddingTop: '8px' }}> |
|
|
|
Conceptos |
|
|
|
Conceptos |
|
|
|
</Col> |
|
|
|
</Col> |
|
|
|
<Col xs={10}> |
|
|
|
<Col xs={9}> |
|
|
|
<Form.Control |
|
|
|
<Form.Control |
|
|
|
disabled={Tabulador===0} |
|
|
|
disabled={Tabulador===0} |
|
|
|
as='select' |
|
|
|
as='select' |
|
|
|
onChange={(e) => addConcept(parseInt(e.target.value))} |
|
|
|
onChange={(e) => setConcepto(parseInt(e.target.value))} |
|
|
|
className='form-select form-select-sm' |
|
|
|
className='form-select form-select-sm' |
|
|
|
style={{ fontSize: '17px' }} |
|
|
|
style={{ fontSize: '17px' }} |
|
|
|
value={Concepto} |
|
|
|
value={Concepto} |
|
|
@ -576,7 +474,7 @@ export default function CatTabuladores (props: IProps) { |
|
|
|
: null} |
|
|
|
: null} |
|
|
|
</Form.Control> |
|
|
|
</Form.Control> |
|
|
|
</Col> |
|
|
|
</Col> |
|
|
|
{/* <Col style={{ paddingTop: '5px' }}> |
|
|
|
<Col style={{ paddingTop: '5px' }}> |
|
|
|
<Form.Label |
|
|
|
<Form.Label |
|
|
|
onClick={() => { |
|
|
|
onClick={() => { |
|
|
|
addConcept() |
|
|
|
addConcept() |
|
|
@ -587,7 +485,7 @@ export default function CatTabuladores (props: IProps) { |
|
|
|
<BsPlusSquareFill /> |
|
|
|
<BsPlusSquareFill /> |
|
|
|
</IconContext.Provider> |
|
|
|
</IconContext.Provider> |
|
|
|
</Form.Label> |
|
|
|
</Form.Label> |
|
|
|
</Col> */} |
|
|
|
</Col> |
|
|
|
</Row> |
|
|
|
</Row> |
|
|
|
</Card.Subtitle> |
|
|
|
</Card.Subtitle> |
|
|
|
<DataTable |
|
|
|
<DataTable |
|
|
@ -645,42 +543,6 @@ export default function CatTabuladores (props: IProps) { |
|
|
|
</Row> |
|
|
|
</Row> |
|
|
|
</Modal.Footer> |
|
|
|
</Modal.Footer> |
|
|
|
</Modal> |
|
|
|
</Modal> |
|
|
|
<Modal |
|
|
|
|
|
|
|
show={ConceptoDialogTabs} |
|
|
|
|
|
|
|
onHide={() => { |
|
|
|
|
|
|
|
setConceptoDialogTabs(false) |
|
|
|
|
|
|
|
}} |
|
|
|
|
|
|
|
size='sm' |
|
|
|
|
|
|
|
> |
|
|
|
|
|
|
|
<Modal.Body> |
|
|
|
|
|
|
|
¿Esta seguro de eliminar este concepto? |
|
|
|
|
|
|
|
</Modal.Body> |
|
|
|
|
|
|
|
<Modal.Footer> |
|
|
|
|
|
|
|
<Row> |
|
|
|
|
|
|
|
<Col xs={6} style={{ textAlign: 'left', paddingRight: '100px' }}> |
|
|
|
|
|
|
|
<Button |
|
|
|
|
|
|
|
variant='danger' |
|
|
|
|
|
|
|
onClick={deleteConcepto} |
|
|
|
|
|
|
|
size='sm' |
|
|
|
|
|
|
|
style={{ paddingRight: '20px', paddingLeft: '20px' }} |
|
|
|
|
|
|
|
> |
|
|
|
|
|
|
|
Si |
|
|
|
|
|
|
|
</Button> |
|
|
|
|
|
|
|
</Col> |
|
|
|
|
|
|
|
<Col xs={6} style={{ textAlign: 'right' }}> |
|
|
|
|
|
|
|
<Button |
|
|
|
|
|
|
|
variant='secondary' |
|
|
|
|
|
|
|
onClick={() => { |
|
|
|
|
|
|
|
setConceptoDialogTabs(false) |
|
|
|
|
|
|
|
}} |
|
|
|
|
|
|
|
size='sm' |
|
|
|
|
|
|
|
> |
|
|
|
|
|
|
|
Cerrar |
|
|
|
|
|
|
|
</Button> |
|
|
|
|
|
|
|
</Col> |
|
|
|
|
|
|
|
</Row> |
|
|
|
|
|
|
|
</Modal.Footer> |
|
|
|
|
|
|
|
</Modal> |
|
|
|
|
|
|
|
<MsgInformativo |
|
|
|
<MsgInformativo |
|
|
|
show={show} |
|
|
|
show={show} |
|
|
|
msg={msg} |
|
|
|
msg={msg} |
|
|
|