parent
4a112b8c14
commit
62bfd90979
@ -0,0 +1,144 @@ |
|||||||
|
import { useState } from 'react' |
||||||
|
import { Button, Col, Form, Modal, Row } from 'react-bootstrap' |
||||||
|
import * as CurrencyFormat from 'react-currency-format' |
||||||
|
import { MsgInformativo } from '../../../../Utils/Toast/msgInformativo' |
||||||
|
import DTO2096Fraccion from '../../DTO/DTO2096Fraccion' |
||||||
|
import DSAmazon from '../../Services/Amazon.Services' |
||||||
|
|
||||||
|
export interface IComboFraccionProps { |
||||||
|
IDDetail: number |
||||||
|
FraccionOriginal: string |
||||||
|
} |
||||||
|
|
||||||
|
export function ComboFraccion (props: IComboFraccionProps) { |
||||||
|
const [Validacion, setValidacion] = useState(0) |
||||||
|
const [showModal, setShowModal] = useState(false) |
||||||
|
const [Fraccion, setFraccion] = useState('') |
||||||
|
const [header, setHeader] = useState('') |
||||||
|
const [show, setShowMsg] = useState(false) |
||||||
|
const [msg, setMsg] = useState('') |
||||||
|
const msgColor = 'primary' |
||||||
|
|
||||||
|
const changeValidacion = (e: number) => { |
||||||
|
setValidacion(e) |
||||||
|
if (e === 2) { |
||||||
|
setShowModal(true) |
||||||
|
} |
||||||
|
if (e === 1) { |
||||||
|
const data: DTO2096Fraccion = { |
||||||
|
id: props.IDDetail, |
||||||
|
fraccion: props.FraccionOriginal |
||||||
|
} |
||||||
|
DSAmazon.SetFraccion(data) |
||||||
|
.then((response) => { |
||||||
|
setShowModal(false) |
||||||
|
setHeader('Confirmacion') |
||||||
|
setMsg('La descripcion se ha guardado correctamente') |
||||||
|
setShowMsg(true) |
||||||
|
return |
||||||
|
}) |
||||||
|
.catch((e: Error) => { |
||||||
|
alert('Ocurrio un error' + e.message.toString()) |
||||||
|
}) |
||||||
|
} |
||||||
|
} |
||||||
|
|
||||||
|
const saveFraccion = () => { |
||||||
|
DSAmazon.GetValidaFraccion(Fraccion) |
||||||
|
.then((response) => { |
||||||
|
if (response.data.respuesta === 'Si') { |
||||||
|
const data: DTO2096Fraccion = { |
||||||
|
id: props.IDDetail, |
||||||
|
fraccion: Fraccion |
||||||
|
} |
||||||
|
DSAmazon.SetFraccion(data) |
||||||
|
.then((response) => { |
||||||
|
setShowModal(false) |
||||||
|
setHeader('Confirmacion') |
||||||
|
setMsg('La descripcion se ha guardado correctamente') |
||||||
|
setShowMsg(true) |
||||||
|
return |
||||||
|
}) |
||||||
|
.catch((e: Error) => { |
||||||
|
alert('Ocurrio un error' + e.message.toString()) |
||||||
|
}) |
||||||
|
} else { |
||||||
|
alert( |
||||||
|
'Esa fraccion no existe, favor de verificarla antes de poder guardar...' |
||||||
|
) |
||||||
|
return |
||||||
|
} |
||||||
|
}) |
||||||
|
.catch((e: Error) => { |
||||||
|
alert('Ocurrio un error' + e.message.toString()) |
||||||
|
}) |
||||||
|
} |
||||||
|
|
||||||
|
return ( |
||||||
|
<div> |
||||||
|
<Form.Control |
||||||
|
as="select" |
||||||
|
className="form-select form-select-sm" |
||||||
|
onChange={(e) => changeValidacion(parseInt(e.target.value))} |
||||||
|
value={Validacion} |
||||||
|
> |
||||||
|
<option value="0"> </option> |
||||||
|
<option value="1"> = </option> |
||||||
|
<option value="2"> != </option> |
||||||
|
</Form.Control> |
||||||
|
<Modal |
||||||
|
show={showModal} |
||||||
|
onHide={() => { |
||||||
|
setShowModal(false) |
||||||
|
}} |
||||||
|
size={'sm'} |
||||||
|
dialogClassName={'modal-50w'} |
||||||
|
> |
||||||
|
<Modal.Body> |
||||||
|
<Row> |
||||||
|
<Col xs={2}></Col> |
||||||
|
<Col xs={4}>Proporcione la facccion GEMCO</Col> |
||||||
|
<Col xs={3}> |
||||||
|
<CurrencyFormat |
||||||
|
onValueChange={(values: any) => { |
||||||
|
const { value } = values |
||||||
|
setFraccion(value) |
||||||
|
}} |
||||||
|
format={'######## ##'} |
||||||
|
value={Fraccion} |
||||||
|
displayType={'input'} |
||||||
|
style={{ |
||||||
|
fontSize: '18px', |
||||||
|
backgroundColor: '#F1EEF9', |
||||||
|
border: '2px solid #5923F6', |
||||||
|
color: '#5923F6', |
||||||
|
width: '120px', |
||||||
|
textAlign: 'right', |
||||||
|
borderRadius: '10px' |
||||||
|
}} |
||||||
|
/> |
||||||
|
</Col> |
||||||
|
<Col xs={3}> |
||||||
|
<Button |
||||||
|
onClick={() => { |
||||||
|
saveFraccion() |
||||||
|
}} |
||||||
|
> |
||||||
|
Guardar |
||||||
|
</Button> |
||||||
|
</Col> |
||||||
|
</Row> |
||||||
|
</Modal.Body> |
||||||
|
</Modal> |
||||||
|
<MsgInformativo |
||||||
|
show={show} |
||||||
|
msg={msg} |
||||||
|
header={header} |
||||||
|
msgColor={msgColor} |
||||||
|
closeToast={() => { |
||||||
|
setShowMsg(false) |
||||||
|
}} |
||||||
|
/> |
||||||
|
</div> |
||||||
|
) |
||||||
|
} |
@ -0,0 +1,29 @@ |
|||||||
|
import { useState } from 'react'; |
||||||
|
import * as CurrencyFormat from 'react-currency-format' |
||||||
|
|
||||||
|
export interface ITextBoxDescripcionProps { |
||||||
|
Descripcion: string | null |
||||||
|
} |
||||||
|
|
||||||
|
export function TextBoxDescripcion (props: ITextBoxDescripcionProps) { |
||||||
|
const [Descripcion, setDescripcion] = useState(props.Descripcion) |
||||||
|
return ( |
||||||
|
<div> |
||||||
|
<CurrencyFormat |
||||||
|
value={Descripcion} |
||||||
|
disabled={true} |
||||||
|
displayType={'input'} |
||||||
|
style={{ |
||||||
|
fontSize: '18px', |
||||||
|
backgroundColor: '#F1EEF9', |
||||||
|
border: '2px solid #5923F6', |
||||||
|
color: '#5923F6', |
||||||
|
width: '115px', |
||||||
|
textAlign: 'right', |
||||||
|
borderRadius: '10px' |
||||||
|
}} |
||||||
|
/> |
||||||
|
</div> |
||||||
|
); |
||||||
|
} |
||||||
|
|
@ -0,0 +1,4 @@ |
|||||||
|
export default interface DTO2096Descripcion { |
||||||
|
id: number, |
||||||
|
descripcion: string |
||||||
|
} |
@ -0,0 +1,47 @@ |
|||||||
|
export default interface DTO2096PrevioExcel { |
||||||
|
Consecutivo: string |
||||||
|
ClaveCliente: string |
||||||
|
Parte: string |
||||||
|
ClaveProveedor: string |
||||||
|
TipoOperacion: string |
||||||
|
Fraccion: string |
||||||
|
SubDivisión: string |
||||||
|
DescripcionTIGIE: string |
||||||
|
DescripcionFactura: string |
||||||
|
DescripcionAgenteAduanal: string |
||||||
|
UMFactura: string |
||||||
|
UMComercial: string |
||||||
|
UMTarifa: string |
||||||
|
PrecioUnitario: string |
||||||
|
PaisOrigenDestino: string |
||||||
|
PaisCompradorVendedor: string |
||||||
|
CodigoBarras: string |
||||||
|
CodigoControlInterno: string |
||||||
|
FamiliaProducto: string |
||||||
|
Vinculacion: string |
||||||
|
CodigoPreferencial: string |
||||||
|
MetodoValoración: string |
||||||
|
AplicaTLC: string |
||||||
|
MontoDesgravacion: string |
||||||
|
TipoArancel: string |
||||||
|
TasaArancelEspecifico: string |
||||||
|
TasaMaximaAdvalorem: string |
||||||
|
UM: string |
||||||
|
ES: string |
||||||
|
Peso: string |
||||||
|
Observaciones: string |
||||||
|
ValorMinimo: string |
||||||
|
UMCove: string |
||||||
|
ClaveModificacion: string |
||||||
|
DescripcionCertificado: string |
||||||
|
TipoUsoMercancia: string |
||||||
|
Exotico: string |
||||||
|
Registro: string |
||||||
|
TipoRegistro: string |
||||||
|
FechaEmision: string |
||||||
|
FechaVencimiento: string |
||||||
|
Producto: string |
||||||
|
UMCFDI: string |
||||||
|
UMEmbalaje: string |
||||||
|
IdParte99Update: string |
||||||
|
} |
Loading…
Reference in new issue