|
|
@ -1,155 +1,155 @@ |
|
|
|
import { FC, useEffect, useRef, useState } from 'react'; |
|
|
|
import { FC, useEffect, useRef, useState } from 'react' |
|
|
|
import { Button, ButtonGroup, Card, Col, Dropdown, DropdownButton, Form, ListGroup, Modal, Row } from 'react-bootstrap'; |
|
|
|
import { Button, ButtonGroup, Card, Col, Dropdown, DropdownButton, Form, ListGroup, Modal, Row } from 'react-bootstrap' |
|
|
|
import { useDispatch, useSelector } from 'react-redux'; |
|
|
|
import { useDispatch, useSelector } from 'react-redux' |
|
|
|
import DTOOpViajes from '../../../DTOs/Operaciones/DTOViajes'; |
|
|
|
import DTOOpViajes from '../../../DTOs/Operaciones/DTOViajes' |
|
|
|
import DSOpViajes from '../../../Services/Operaciones/OpViajes.Services'; |
|
|
|
import DSOpViajes from '../../../Services/Operaciones/OpViajes.Services' |
|
|
|
import { updateOpViajes } from '../../../store/features/Operaciones/OpViajesSlice'; |
|
|
|
import { updateOpViajes } from '../../../store/features/Operaciones/OpViajesSlice' |
|
|
|
import { RootState } from '../../../store/store'; |
|
|
|
import { RootState } from '../../../store/store' |
|
|
|
import { |
|
|
|
import { |
|
|
|
populateOpViajesServicios, |
|
|
|
populateOpViajesServicios, |
|
|
|
updateOpViajesServicios, |
|
|
|
updateOpViajesServicios, |
|
|
|
} from '../../../store/features/Operaciones/OpViajesServiciosSlice'; |
|
|
|
} from '../../../store/features/Operaciones/OpViajesServiciosSlice' |
|
|
|
import DTOViajesServicios from '../../../DTOs/Operaciones/DTOViajesServicios'; |
|
|
|
import DTOViajesServicios from '../../../DTOs/Operaciones/DTOViajesServicios' |
|
|
|
import { Servicios } from '../Viaje/Servicios/Servicios'; |
|
|
|
import { Servicios } from '../Viaje/Servicios/Servicios' |
|
|
|
import DatePicker from 'react-datepicker'; |
|
|
|
import DatePicker from 'react-datepicker' |
|
|
|
import 'react-datepicker/dist/react-datepicker.css'; |
|
|
|
import 'react-datepicker/dist/react-datepicker.css' |
|
|
|
import 'react-bootstrap-typeahead/css/Typeahead.css'; |
|
|
|
import 'react-bootstrap-typeahead/css/Typeahead.css' |
|
|
|
import 'react-bootstrap-typeahead/css/Typeahead.bs5.css'; |
|
|
|
import 'react-bootstrap-typeahead/css/Typeahead.bs5.css' |
|
|
|
import '../../../css/autoComplete.css'; |
|
|
|
import '../../../css/autoComplete.css' |
|
|
|
import { IconContext } from 'react-icons'; |
|
|
|
import { IconContext } from 'react-icons' |
|
|
|
import { FaCaretSquareDown, FaCaretSquareLeft } from 'react-icons/fa'; |
|
|
|
import { FaCaretSquareDown, FaCaretSquareLeft } from 'react-icons/fa' |
|
|
|
|
|
|
|
|
|
|
|
interface IProps { |
|
|
|
interface IProps { |
|
|
|
IDViaje: number; |
|
|
|
IDViaje: number |
|
|
|
} |
|
|
|
} |
|
|
|
|
|
|
|
|
|
|
|
interface IOpciones { |
|
|
|
interface IOpciones { |
|
|
|
value: string; |
|
|
|
value: string |
|
|
|
label: string; |
|
|
|
label: string |
|
|
|
} |
|
|
|
} |
|
|
|
|
|
|
|
|
|
|
|
export const Viaje: FC<IProps> = (props) => { |
|
|
|
export const Viaje: FC<IProps> = (props) => { |
|
|
|
const [selectedOption, setselectedOption] = useState<IOpciones | null>(); |
|
|
|
const [selectedOption, setselectedOption] = useState<IOpciones | null>() |
|
|
|
const dispatch = useDispatch(); |
|
|
|
const dispatch = useDispatch() |
|
|
|
const mAllTrips = useSelector((state: RootState) => state.OpViajes.OpViajes); |
|
|
|
const mAllTrips = useSelector((state: RootState) => state.OpViajes.OpViajes) |
|
|
|
const mAllTripServices = useSelector((state: RootState) => state.OpViajesServicios.OpViajesServicios); |
|
|
|
const mAllTripServices = useSelector((state: RootState) => state.OpViajesServicios.OpViajesServicios) |
|
|
|
const Info = JSON.parse(localStorage.getItem('tokenInfo') || '[]'); |
|
|
|
const Info = JSON.parse(localStorage.getItem('tokenInfo') || '[]') |
|
|
|
const UserID = Info.UserId; |
|
|
|
const UserID = Info.UserId |
|
|
|
const mCatClientes = useSelector((state: RootState) => state.CatClientes.CatClientes); |
|
|
|
const mCatClientes = useSelector((state: RootState) => state.CatClientes.CatClientes) |
|
|
|
const mCatProveedores = useSelector((state: RootState) => state.CatProveedores.CatProveedores); |
|
|
|
const mCatProveedores = useSelector((state: RootState) => state.CatProveedores.CatProveedores) |
|
|
|
const CatTipoUnidades = useSelector((state: RootState) => state.CatTipoUnidades.CatTipoUnidades); |
|
|
|
const CatTipoUnidades = useSelector((state: RootState) => state.CatTipoUnidades.CatTipoUnidades) |
|
|
|
const mCatUbicaciones = useSelector((state: RootState) => state.CatUbicaciones.CatUbicaciones); |
|
|
|
const mCatUbicaciones = useSelector((state: RootState) => state.CatUbicaciones.CatUbicaciones) |
|
|
|
const mCatServicios = useSelector((state: RootState) => state.CatServicios.CatServicios); |
|
|
|
const mCatServicios = useSelector((state: RootState) => state.CatServicios.CatServicios) |
|
|
|
const CatAduanas = useSelector((state: RootState) => state.CatAduanas.CatAduanas); |
|
|
|
const CatAduanas = useSelector((state: RootState) => state.CatAduanas.CatAduanas) |
|
|
|
const [NoCaja, setNoCaja] = useState(''); |
|
|
|
const [NoCaja, setNoCaja] = useState('') |
|
|
|
const [UltimaCaja, setUltimaCaja] = useState(''); |
|
|
|
const [UltimaCaja, setUltimaCaja] = useState('') |
|
|
|
const [IDViaje, setIDViaje] = useState(0); |
|
|
|
const [IDViaje, setIDViaje] = useState(0) |
|
|
|
const [IDDetail, setIDDetail] = useState(0); |
|
|
|
const [IDDetail, setIDDetail] = useState(0) |
|
|
|
const [IDCliente, setIDCliente] = useState(0); |
|
|
|
const [IDCliente, setIDCliente] = useState(0) |
|
|
|
const [Cliente, setCliente] = useState(''); |
|
|
|
const [Cliente, setCliente] = useState('') |
|
|
|
const [IDProveedor, setIDProveedor] = useState(0); |
|
|
|
const [IDProveedor, setIDProveedor] = useState(0) |
|
|
|
const [Proveedor, setProveedor] = useState(''); |
|
|
|
const [Proveedor, setProveedor] = useState('') |
|
|
|
const [IDServicio, setIDServicio] = useState(0); |
|
|
|
const [IDServicio, setIDServicio] = useState(0) |
|
|
|
const [Servicio, setServicio] = useState(''); |
|
|
|
const [Servicio, setServicio] = useState('') |
|
|
|
const [IDTipoUnidad, setIDTipoUnidad] = useState(0); |
|
|
|
const [IDTipoUnidad, setIDTipoUnidad] = useState(0) |
|
|
|
const [IDOrigen, setIDOrigen] = useState(0); |
|
|
|
const [IDOrigen, setIDOrigen] = useState(0) |
|
|
|
const [Origen, setOrigen] = useState(''); |
|
|
|
const [Origen, setOrigen] = useState('') |
|
|
|
const [IDDestino, setIDDestino] = useState(0); |
|
|
|
const [IDDestino, setIDDestino] = useState(0) |
|
|
|
const [Destino, setDestino] = useState(''); |
|
|
|
const [Destino, setDestino] = useState('') |
|
|
|
const [RefAA, setRefAA] = useState(''); |
|
|
|
const [RefAA, setRefAA] = useState('') |
|
|
|
const [PickUpNumber, setPickUpNumber] = useState(''); |
|
|
|
const [PickUpNumber, setPickUpNumber] = useState('') |
|
|
|
const [Hazmat, setHazmat] = useState(0); |
|
|
|
const [Hazmat, setHazmat] = useState(0) |
|
|
|
const [Pedimento, setPedimento] = useState(''); |
|
|
|
const [Pedimento, setPedimento] = useState('') |
|
|
|
const [TipoOperacion, setTipoOperacion] = useState(1); |
|
|
|
const [TipoOperacion, setTipoOperacion] = useState(1) |
|
|
|
const [Comentarios, setComentarios] = useState(''); |
|
|
|
const [Comentarios, setComentarios] = useState('') |
|
|
|
const [Aduana, setAduana] = useState(0); |
|
|
|
const [Aduana, setAduana] = useState(0) |
|
|
|
const [DisableAduana, setDisableAduana] = useState(true); |
|
|
|
const [DisableAduana, setDisableAduana] = useState(true) |
|
|
|
const [TotalServicios, setTotalServicios] = useState(0); |
|
|
|
const [TotalServicios, setTotalServicios] = useState(0) |
|
|
|
const [Cita, setCita] = useState<Date | null>(); |
|
|
|
const [Cita, setCita] = useState<Date | null>() |
|
|
|
const [SelectedClient, setSelectedClient] = useState(false); |
|
|
|
const [SelectedClient, setSelectedClient] = useState(false) |
|
|
|
const [SelectedOrigen, setSelectedOrigen] = useState(false); |
|
|
|
const [SelectedOrigen, setSelectedOrigen] = useState(false) |
|
|
|
const [SelectedDestino, setSelectedDestino] = useState(false); |
|
|
|
const [SelectedDestino, setSelectedDestino] = useState(false) |
|
|
|
const [SelectedServicio, setSelectedServicio] = useState(false); |
|
|
|
const [SelectedServicio, setSelectedServicio] = useState(false) |
|
|
|
const [SelectedProveedor, setSelectedProveedor] = useState(false); |
|
|
|
const [SelectedProveedor, setSelectedProveedor] = useState(false) |
|
|
|
const inputRef = useRef(); |
|
|
|
const inputRef = useRef() |
|
|
|
|
|
|
|
|
|
|
|
useEffect(() => { |
|
|
|
useEffect(() => { |
|
|
|
if (IDServicio > 0 && TotalServicios === 0) saveDetail(); |
|
|
|
if (IDServicio > 0 && TotalServicios === 0) saveDetail() |
|
|
|
let selectedRow = mAllTrips.filter((row) => { |
|
|
|
let selectedRow = mAllTrips.filter((row) => { |
|
|
|
if (row.id === props.IDViaje) { |
|
|
|
if (row.id === props.IDViaje) { |
|
|
|
setIDViaje(row.id); |
|
|
|
setIDViaje(row.id) |
|
|
|
setRefAA(row.refAgenciaAduanal); |
|
|
|
setRefAA(row.refAgenciaAduanal) |
|
|
|
setIDCliente(row.cliente); |
|
|
|
setIDCliente(row.cliente) |
|
|
|
setIDTipoUnidad(row.tipoUnidad); |
|
|
|
setIDTipoUnidad(row.tipoUnidad) |
|
|
|
setNoCaja(row.noCaja); |
|
|
|
setNoCaja(row.noCaja) |
|
|
|
setIDOrigen(row.origen); |
|
|
|
setIDOrigen(row.origen) |
|
|
|
setIDDestino(row.destino); |
|
|
|
setIDDestino(row.destino) |
|
|
|
setHazmat(row.hazmat); |
|
|
|
setHazmat(row.hazmat) |
|
|
|
setPickUpNumber(row.pickUpNumber); |
|
|
|
setPickUpNumber(row.pickUpNumber) |
|
|
|
setTipoOperacion(row.tipoOperacion); |
|
|
|
setTipoOperacion(row.tipoOperacion) |
|
|
|
setPedimento(row.pedimento); |
|
|
|
setPedimento(row.pedimento) |
|
|
|
setCliente(row.sCliente); |
|
|
|
setCliente(row.sCliente) |
|
|
|
setOrigen(row.sOrigen); |
|
|
|
setOrigen(row.sOrigen) |
|
|
|
setDestino(row.sDestino); |
|
|
|
setDestino(row.sDestino) |
|
|
|
setSelectedClient(false); |
|
|
|
setSelectedClient(true) |
|
|
|
setSelectedOrigen(true); |
|
|
|
setSelectedOrigen(true) |
|
|
|
setSelectedDestino(true); |
|
|
|
setSelectedDestino(true) |
|
|
|
setSelectedServicio(true); |
|
|
|
setSelectedServicio(true) |
|
|
|
setSelectedProveedor(true); |
|
|
|
setSelectedProveedor(true) |
|
|
|
return row; |
|
|
|
return row |
|
|
|
} |
|
|
|
} |
|
|
|
}); |
|
|
|
}) |
|
|
|
let totalServicios = mAllTripServices.filter((a) => { |
|
|
|
let totalServicios = mAllTripServices.filter((a) => { |
|
|
|
if (a.idViaje === IDViaje) { |
|
|
|
if (a.idViaje === IDViaje) { |
|
|
|
return a; |
|
|
|
return a |
|
|
|
} |
|
|
|
} |
|
|
|
}); |
|
|
|
}) |
|
|
|
setTotalServicios(totalServicios.length); |
|
|
|
setTotalServicios(totalServicios.length) |
|
|
|
}, [IDViaje]); |
|
|
|
}, [IDViaje]) |
|
|
|
|
|
|
|
|
|
|
|
useEffect(() => { |
|
|
|
useEffect(() => { |
|
|
|
if (IDServicio === 1 || IDServicio === 2 || IDServicio === 22) setDisableAduana(false); |
|
|
|
if (IDServicio === 1 || IDServicio === 2 || IDServicio === 22) setDisableAduana(false) |
|
|
|
else setDisableAduana(true); |
|
|
|
else setDisableAduana(true) |
|
|
|
if (IDServicio > 0) { |
|
|
|
if (IDServicio > 0) { |
|
|
|
let serviceFound = mCatServicios.filter((item) => { |
|
|
|
let serviceFound = mCatServicios.filter((item) => { |
|
|
|
if (item.id == IDServicio) { |
|
|
|
if (item.id == IDServicio) { |
|
|
|
return item; |
|
|
|
return item |
|
|
|
} |
|
|
|
} |
|
|
|
}); |
|
|
|
}) |
|
|
|
setServicio(serviceFound[0].servicio); |
|
|
|
setServicio(serviceFound[0].servicio) |
|
|
|
} |
|
|
|
} |
|
|
|
if (IDProveedor > 0) { |
|
|
|
if (IDProveedor > 0) { |
|
|
|
let providerFound = mCatProveedores.filter((item) => { |
|
|
|
let providerFound = mCatProveedores.filter((item) => { |
|
|
|
if (item.id == IDProveedor) { |
|
|
|
if (item.id == IDProveedor) { |
|
|
|
return item; |
|
|
|
return item |
|
|
|
} |
|
|
|
} |
|
|
|
}); |
|
|
|
}) |
|
|
|
setProveedor(providerFound[0].proveedor); |
|
|
|
setProveedor(providerFound[0].proveedor) |
|
|
|
} |
|
|
|
} |
|
|
|
}, [IDServicio]); |
|
|
|
}, [IDServicio]) |
|
|
|
|
|
|
|
|
|
|
|
useEffect(() => { |
|
|
|
useEffect(() => { |
|
|
|
DSOpViajes.GetLastTrailerBox(IDViaje) |
|
|
|
DSOpViajes.GetLastTrailerBox(IDViaje) |
|
|
|
.then((response) => { |
|
|
|
.then((response) => { |
|
|
|
const LastTrailerBox = response.data.ultimaCaja; |
|
|
|
const LastTrailerBox = response.data.ultimaCaja |
|
|
|
// console.log('lasttrailerbox=' + LastTrailerBox)
|
|
|
|
// console.log('lasttrailerbox=' + LastTrailerBox)
|
|
|
|
if (LastTrailerBox.length === 0) setUltimaCaja(NoCaja); |
|
|
|
if (LastTrailerBox.length === 0) setUltimaCaja(NoCaja) |
|
|
|
else setUltimaCaja(LastTrailerBox); |
|
|
|
else setUltimaCaja(LastTrailerBox) |
|
|
|
}) |
|
|
|
}) |
|
|
|
.catch((e: Error) => { |
|
|
|
.catch((e: Error) => { |
|
|
|
// console.log('currio un error')
|
|
|
|
// console.log('currio un error')
|
|
|
|
}); |
|
|
|
}) |
|
|
|
//console.log('nocaja=' + NoCaja)
|
|
|
|
//console.log('nocaja=' + NoCaja)
|
|
|
|
}, [NoCaja]); |
|
|
|
}, [NoCaja]) |
|
|
|
|
|
|
|
|
|
|
|
useEffect(() => { |
|
|
|
useEffect(() => { |
|
|
|
if (Hazmat === 1) setAduana(180); |
|
|
|
if (Hazmat === 1) setAduana(180) |
|
|
|
else setAduana(0); |
|
|
|
else setAduana(0) |
|
|
|
}, [Hazmat]); |
|
|
|
}, [Hazmat]) |
|
|
|
|
|
|
|
|
|
|
|
const saveDetail = () => { |
|
|
|
const saveDetail = () => { |
|
|
|
if (IDServicio === 0 || IDProveedor === 0) { |
|
|
|
if (IDServicio === 0 || IDProveedor === 0) { |
|
|
|
return false; |
|
|
|
return false |
|
|
|
} |
|
|
|
} |
|
|
|
const data: DTOViajesServicios = { |
|
|
|
const data: DTOViajesServicios = { |
|
|
|
id: IDDetail, |
|
|
|
id: IDDetail, |
|
|
@ -162,52 +162,52 @@ export const Viaje: FC<IProps> = (props) => { |
|
|
|
idProveedor: IDProveedor, |
|
|
|
idProveedor: IDProveedor, |
|
|
|
sProveedor: '', |
|
|
|
sProveedor: '', |
|
|
|
noCaja: UltimaCaja, |
|
|
|
noCaja: UltimaCaja, |
|
|
|
}; |
|
|
|
} |
|
|
|
DSOpViajes.AppendServices(data) |
|
|
|
DSOpViajes.AppendServices(data) |
|
|
|
.then((responsed) => { |
|
|
|
.then((responsed) => { |
|
|
|
if (IDDetail === 0) { |
|
|
|
if (IDDetail === 0) { |
|
|
|
dispatch(populateOpViajesServicios(responsed.data)); |
|
|
|
dispatch(populateOpViajesServicios(responsed.data)) |
|
|
|
setIDDetail(responsed.data[0].id); |
|
|
|
setIDDetail(responsed.data[0].id) |
|
|
|
} else { |
|
|
|
} else { |
|
|
|
dispatch(updateOpViajesServicios(responsed.data)); |
|
|
|
dispatch(updateOpViajesServicios(responsed.data)) |
|
|
|
} |
|
|
|
} |
|
|
|
clearDetailForm(); |
|
|
|
clearDetailForm() |
|
|
|
}) |
|
|
|
}) |
|
|
|
.catch((e: Error) => {}); |
|
|
|
.catch((e: Error) => {}) |
|
|
|
}; |
|
|
|
} |
|
|
|
|
|
|
|
|
|
|
|
const adjustTimeZone = (str: string): string => { |
|
|
|
const adjustTimeZone = (str: string): string => { |
|
|
|
if (str) { |
|
|
|
if (str) { |
|
|
|
const original: any = new Date(str); |
|
|
|
const original: any = new Date(str) |
|
|
|
const real = new Date(original - original.getTimezoneOffset() * 60 * 1000); |
|
|
|
const real = new Date(original - original.getTimezoneOffset() * 60 * 1000) |
|
|
|
return real.toISOString(); |
|
|
|
return real.toISOString() |
|
|
|
} else return ''; |
|
|
|
} else return '' |
|
|
|
}; |
|
|
|
} |
|
|
|
|
|
|
|
|
|
|
|
const loadService = (id: number) => { |
|
|
|
const loadService = (id: number) => { |
|
|
|
let found = mAllTripServices.filter((a) => { |
|
|
|
let found = mAllTripServices.filter((a) => { |
|
|
|
if (a.id === id) { |
|
|
|
if (a.id === id) { |
|
|
|
return a; |
|
|
|
return a |
|
|
|
} |
|
|
|
} |
|
|
|
}); |
|
|
|
}) |
|
|
|
if (found) { |
|
|
|
if (found) { |
|
|
|
setIDDetail(id); |
|
|
|
setIDDetail(id) |
|
|
|
setAduana(found[0].aduana); |
|
|
|
setAduana(found[0].aduana) |
|
|
|
setIDServicio(found[0].idServicio); |
|
|
|
setIDServicio(found[0].idServicio) |
|
|
|
setComentarios(found[0].comentarios); |
|
|
|
setComentarios(found[0].comentarios) |
|
|
|
setIDProveedor(found[0].idProveedor); |
|
|
|
setIDProveedor(found[0].idProveedor) |
|
|
|
|
|
|
|
} |
|
|
|
} |
|
|
|
} |
|
|
|
}; |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
const saveMaster = () => { |
|
|
|
const saveMaster = () => { |
|
|
|
if (TotalServicios === 0) { |
|
|
|
if (TotalServicios === 0) { |
|
|
|
if (IDServicio === 0) { |
|
|
|
if (IDServicio === 0) { |
|
|
|
alert('Para continuar, primero seleccione un servicio '); |
|
|
|
alert('Para continuar, primero seleccione un servicio ') |
|
|
|
return false; |
|
|
|
return false |
|
|
|
} |
|
|
|
} |
|
|
|
if (IDProveedor === 0) { |
|
|
|
if (IDProveedor === 0) { |
|
|
|
alert('Para continuar, primero seleccione un proveedor'); |
|
|
|
alert('Para continuar, primero seleccione un proveedor') |
|
|
|
return false; |
|
|
|
return false |
|
|
|
} |
|
|
|
} |
|
|
|
} |
|
|
|
} |
|
|
|
/* */ |
|
|
|
/* */ |
|
|
@ -232,44 +232,32 @@ export const Viaje: FC<IProps> = (props) => { |
|
|
|
pedimento: Pedimento, |
|
|
|
pedimento: Pedimento, |
|
|
|
max: true, |
|
|
|
max: true, |
|
|
|
status: 1, |
|
|
|
status: 1, |
|
|
|
}; |
|
|
|
} |
|
|
|
DSOpViajes.Append(data) |
|
|
|
DSOpViajes.Append(data) |
|
|
|
.then((response) => { |
|
|
|
.then((response) => { |
|
|
|
const data = response.data; |
|
|
|
const data = response.data |
|
|
|
data['max'] = false; |
|
|
|
data['max'] = false |
|
|
|
dispatch(updateOpViajes(data)); |
|
|
|
dispatch(updateOpViajes(data)) |
|
|
|
setIDViaje(data.id); |
|
|
|
setIDViaje(data.id) |
|
|
|
}) |
|
|
|
}) |
|
|
|
.catch((e: Error) => {}); |
|
|
|
.catch((e: Error) => {}) |
|
|
|
}; |
|
|
|
} |
|
|
|
|
|
|
|
|
|
|
|
const clearDetailForm = () => { |
|
|
|
const clearDetailForm = () => { |
|
|
|
setIDDetail(0); |
|
|
|
setIDDetail(0) |
|
|
|
setAduana(0); |
|
|
|
setAduana(0) |
|
|
|
setIDServicio(0); |
|
|
|
setIDServicio(0) |
|
|
|
setComentarios(''); |
|
|
|
setComentarios('') |
|
|
|
setIDProveedor(0); |
|
|
|
setIDProveedor(0) |
|
|
|
setUltimaCaja(''); |
|
|
|
setUltimaCaja('') |
|
|
|
setServicio(''); |
|
|
|
setServicio('') |
|
|
|
setProveedor(''); |
|
|
|
setProveedor('') |
|
|
|
setDisableAduana(true); |
|
|
|
setDisableAduana(true) |
|
|
|
}; |
|
|
|
} |
|
|
|
|
|
|
|
|
|
|
|
useEffect(() => { |
|
|
|
useEffect(() => { |
|
|
|
console.log(selectedOption); |
|
|
|
console.log(selectedOption) |
|
|
|
}, [selectedOption]); |
|
|
|
}, [selectedOption]) |
|
|
|
|
|
|
|
|
|
|
|
const [addrtype, setAddrtype] = useState(['Work', 'Home', 'school']); |
|
|
|
|
|
|
|
const Add = addrtype.map((Add) => Add); |
|
|
|
|
|
|
|
const handleAddrTypeChange = (e: any) => console.log(addrtype[e.target.value]); |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
const companies: string[] = ['Company1', 'Company2', 'Big Corp', 'Happy Toy Company']; |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
const lowerCasedCompanies = companies.map((language) => language.toLowerCase()); |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
function getSuggestions(value: string): string[] { |
|
|
|
|
|
|
|
return lowerCasedCompanies.filter((language) => language.startsWith(value.trim().toLowerCase())); |
|
|
|
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
const handleKeyDown = (e: any) => { |
|
|
|
const handleKeyDown = (e: any) => { |
|
|
|
// const { cursor, result } = this.state
|
|
|
|
// const { cursor, result } = this.state
|
|
|
@ -279,9 +267,9 @@ export const Viaje: FC<IProps> = (props) => { |
|
|
|
|
|
|
|
|
|
|
|
} else */ |
|
|
|
} else */ |
|
|
|
if (e.keyCode === 40) { |
|
|
|
if (e.keyCode === 40) { |
|
|
|
console.log('arrow down'); |
|
|
|
console.log('arrow down') |
|
|
|
|
|
|
|
} |
|
|
|
} |
|
|
|
} |
|
|
|
}; |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
return ( |
|
|
|
return ( |
|
|
|
<div className='tripField'> |
|
|
|
<div className='tripField'> |
|
|
@ -303,7 +291,7 @@ export const Viaje: FC<IProps> = (props) => { |
|
|
|
size='sm' |
|
|
|
size='sm' |
|
|
|
className='dialogLabel' |
|
|
|
className='dialogLabel' |
|
|
|
onChange={(e) => { |
|
|
|
onChange={(e) => { |
|
|
|
setRefAA(e.target.value); |
|
|
|
setRefAA(e.target.value) |
|
|
|
}} |
|
|
|
}} |
|
|
|
/> |
|
|
|
/> |
|
|
|
</Col> |
|
|
|
</Col> |
|
|
@ -322,11 +310,11 @@ export const Viaje: FC<IProps> = (props) => { |
|
|
|
size='sm' |
|
|
|
size='sm' |
|
|
|
className='pull-right' |
|
|
|
className='pull-right' |
|
|
|
onChange={(e) => { |
|
|
|
onChange={(e) => { |
|
|
|
setCliente(e.target.value); |
|
|
|
setCliente(e.target.value) |
|
|
|
setSelectedClient(false); |
|
|
|
setSelectedClient(false) |
|
|
|
}} |
|
|
|
}} |
|
|
|
onKeyDown={(e) => { |
|
|
|
onKeyDown={(e) => { |
|
|
|
handleKeyDown(e); |
|
|
|
handleKeyDown(e) |
|
|
|
}} |
|
|
|
}} |
|
|
|
/> |
|
|
|
/> |
|
|
|
<Dropdown className='d-inline mx-6' show={!SelectedClient}> |
|
|
|
<Dropdown className='d-inline mx-6' show={!SelectedClient}> |
|
|
@ -336,9 +324,9 @@ export const Viaje: FC<IProps> = (props) => { |
|
|
|
.map((result) => ( |
|
|
|
.map((result) => ( |
|
|
|
<Dropdown.Item |
|
|
|
<Dropdown.Item |
|
|
|
onClick={() => { |
|
|
|
onClick={() => { |
|
|
|
setIDCliente(result.id); |
|
|
|
setIDCliente(result.id) |
|
|
|
setCliente(result.cliente); |
|
|
|
setCliente(result.cliente) |
|
|
|
setSelectedClient(true); |
|
|
|
setSelectedClient(true) |
|
|
|
}} |
|
|
|
}} |
|
|
|
> |
|
|
|
> |
|
|
|
{result.cliente} |
|
|
|
{result.cliente} |
|
|
@ -369,7 +357,7 @@ export const Viaje: FC<IProps> = (props) => { |
|
|
|
<Form.Control |
|
|
|
<Form.Control |
|
|
|
as='select' |
|
|
|
as='select' |
|
|
|
onChange={(e) => { |
|
|
|
onChange={(e) => { |
|
|
|
setIDTipoUnidad(parseInt(e.target.value)); |
|
|
|
setIDTipoUnidad(parseInt(e.target.value)) |
|
|
|
}} |
|
|
|
}} |
|
|
|
value={IDTipoUnidad} |
|
|
|
value={IDTipoUnidad} |
|
|
|
className='form-select form-select-sm dialogLabel' |
|
|
|
className='form-select form-select-sm dialogLabel' |
|
|
@ -381,7 +369,7 @@ export const Viaje: FC<IProps> = (props) => { |
|
|
|
<option key={c.id} value={c.id}> |
|
|
|
<option key={c.id} value={c.id}> |
|
|
|
{c.tipoUnidad} |
|
|
|
{c.tipoUnidad} |
|
|
|
</option> |
|
|
|
</option> |
|
|
|
); |
|
|
|
) |
|
|
|
}) |
|
|
|
}) |
|
|
|
: null} |
|
|
|
: null} |
|
|
|
</Form.Control> |
|
|
|
</Form.Control> |
|
|
@ -397,7 +385,7 @@ export const Viaje: FC<IProps> = (props) => { |
|
|
|
size='sm' |
|
|
|
size='sm' |
|
|
|
className='dialogLabel' |
|
|
|
className='dialogLabel' |
|
|
|
onChange={(e) => { |
|
|
|
onChange={(e) => { |
|
|
|
setNoCaja(e.target.value); |
|
|
|
setNoCaja(e.target.value) |
|
|
|
}} |
|
|
|
}} |
|
|
|
/> |
|
|
|
/> |
|
|
|
</Col> |
|
|
|
</Col> |
|
|
@ -415,8 +403,8 @@ export const Viaje: FC<IProps> = (props) => { |
|
|
|
size='sm' |
|
|
|
size='sm' |
|
|
|
className='textBoxViaje' |
|
|
|
className='textBoxViaje' |
|
|
|
onChange={(e) => { |
|
|
|
onChange={(e) => { |
|
|
|
setOrigen(e.target.value); |
|
|
|
setOrigen(e.target.value) |
|
|
|
setSelectedOrigen(false); |
|
|
|
setSelectedOrigen(false) |
|
|
|
}} |
|
|
|
}} |
|
|
|
/> |
|
|
|
/> |
|
|
|
<Dropdown className='d-inline mx-6' show={!SelectedOrigen}> |
|
|
|
<Dropdown className='d-inline mx-6' show={!SelectedOrigen}> |
|
|
@ -430,9 +418,9 @@ export const Viaje: FC<IProps> = (props) => { |
|
|
|
.map((result) => ( |
|
|
|
.map((result) => ( |
|
|
|
<Dropdown.Item |
|
|
|
<Dropdown.Item |
|
|
|
onClick={() => { |
|
|
|
onClick={() => { |
|
|
|
setIDOrigen(result.id); |
|
|
|
setIDOrigen(result.id) |
|
|
|
setOrigen(result.ubicacion); |
|
|
|
setOrigen(result.ubicacion) |
|
|
|
setSelectedOrigen(true); |
|
|
|
setSelectedOrigen(true) |
|
|
|
}} |
|
|
|
}} |
|
|
|
> |
|
|
|
> |
|
|
|
{result.ubicacion} |
|
|
|
{result.ubicacion} |
|
|
@ -470,8 +458,8 @@ export const Viaje: FC<IProps> = (props) => { |
|
|
|
size='sm' |
|
|
|
size='sm' |
|
|
|
className='dialogLabel' |
|
|
|
className='dialogLabel' |
|
|
|
onChange={(e) => { |
|
|
|
onChange={(e) => { |
|
|
|
setDestino(e.target.value); |
|
|
|
setDestino(e.target.value) |
|
|
|
setSelectedDestino(false); |
|
|
|
setSelectedDestino(false) |
|
|
|
}} |
|
|
|
}} |
|
|
|
/> |
|
|
|
/> |
|
|
|
<Dropdown className='d-inline mx-6' show={!SelectedDestino}> |
|
|
|
<Dropdown className='d-inline mx-6' show={!SelectedDestino}> |
|
|
@ -485,9 +473,9 @@ export const Viaje: FC<IProps> = (props) => { |
|
|
|
.map((result) => ( |
|
|
|
.map((result) => ( |
|
|
|
<Dropdown.Item |
|
|
|
<Dropdown.Item |
|
|
|
onClick={() => { |
|
|
|
onClick={() => { |
|
|
|
setIDDestino(result.id); |
|
|
|
setIDDestino(result.id) |
|
|
|
setDestino(result.ubicacion); |
|
|
|
setDestino(result.ubicacion) |
|
|
|
setSelectedDestino(true); |
|
|
|
setSelectedDestino(true) |
|
|
|
}} |
|
|
|
}} |
|
|
|
> |
|
|
|
> |
|
|
|
{result.ubicacion} |
|
|
|
{result.ubicacion} |
|
|
@ -518,7 +506,7 @@ export const Viaje: FC<IProps> = (props) => { |
|
|
|
<Form.Control |
|
|
|
<Form.Control |
|
|
|
as='select' |
|
|
|
as='select' |
|
|
|
onChange={(e) => { |
|
|
|
onChange={(e) => { |
|
|
|
setHazmat(parseInt(e.target.value)); |
|
|
|
setHazmat(parseInt(e.target.value)) |
|
|
|
}} |
|
|
|
}} |
|
|
|
value={Hazmat} |
|
|
|
value={Hazmat} |
|
|
|
className='form-select form-select-sm dialogLabel' |
|
|
|
className='form-select form-select-sm dialogLabel' |
|
|
@ -534,7 +522,7 @@ export const Viaje: FC<IProps> = (props) => { |
|
|
|
<Form.Control |
|
|
|
<Form.Control |
|
|
|
as='select' |
|
|
|
as='select' |
|
|
|
onChange={(e) => { |
|
|
|
onChange={(e) => { |
|
|
|
setTipoOperacion(parseInt(e.target.value)); |
|
|
|
setTipoOperacion(parseInt(e.target.value)) |
|
|
|
}} |
|
|
|
}} |
|
|
|
value={TipoOperacion} |
|
|
|
value={TipoOperacion} |
|
|
|
className='form-select form-select-sm dialogLabel' |
|
|
|
className='form-select form-select-sm dialogLabel' |
|
|
@ -557,7 +545,7 @@ export const Viaje: FC<IProps> = (props) => { |
|
|
|
size='sm' |
|
|
|
size='sm' |
|
|
|
className='dialogLabel' |
|
|
|
className='dialogLabel' |
|
|
|
onChange={(e) => { |
|
|
|
onChange={(e) => { |
|
|
|
setPedimento(e.target.value); |
|
|
|
setPedimento(e.target.value) |
|
|
|
}} |
|
|
|
}} |
|
|
|
/> |
|
|
|
/> |
|
|
|
</Col> |
|
|
|
</Col> |
|
|
@ -570,7 +558,7 @@ export const Viaje: FC<IProps> = (props) => { |
|
|
|
size='sm' |
|
|
|
size='sm' |
|
|
|
className='dialogLabel' |
|
|
|
className='dialogLabel' |
|
|
|
onChange={(e) => { |
|
|
|
onChange={(e) => { |
|
|
|
setPickUpNumber(e.target.value); |
|
|
|
setPickUpNumber(e.target.value) |
|
|
|
}} |
|
|
|
}} |
|
|
|
/> |
|
|
|
/> |
|
|
|
</Col> |
|
|
|
</Col> |
|
|
@ -596,11 +584,11 @@ export const Viaje: FC<IProps> = (props) => { |
|
|
|
size='sm' |
|
|
|
size='sm' |
|
|
|
className='dialogLabel' |
|
|
|
className='dialogLabel' |
|
|
|
onChange={(e) => { |
|
|
|
onChange={(e) => { |
|
|
|
setServicio(e.target.value); |
|
|
|
setServicio(e.target.value) |
|
|
|
setSelectedServicio(false); |
|
|
|
setSelectedServicio(false) |
|
|
|
}} |
|
|
|
}} |
|
|
|
onKeyDown={(e) => { |
|
|
|
onKeyDown={(e) => { |
|
|
|
handleKeyDown(e); |
|
|
|
handleKeyDown(e) |
|
|
|
}} |
|
|
|
}} |
|
|
|
/> |
|
|
|
/> |
|
|
|
<Dropdown className='d-inline mx-6' show={!SelectedServicio}> |
|
|
|
<Dropdown className='d-inline mx-6' show={!SelectedServicio}> |
|
|
@ -610,9 +598,9 @@ export const Viaje: FC<IProps> = (props) => { |
|
|
|
.map((result) => ( |
|
|
|
.map((result) => ( |
|
|
|
<Dropdown.Item |
|
|
|
<Dropdown.Item |
|
|
|
onClick={() => { |
|
|
|
onClick={() => { |
|
|
|
setIDServicio(result.id); |
|
|
|
setIDServicio(result.id) |
|
|
|
setServicio(result.servicio); |
|
|
|
setServicio(result.servicio) |
|
|
|
setSelectedServicio(true); |
|
|
|
setSelectedServicio(true) |
|
|
|
}} |
|
|
|
}} |
|
|
|
> |
|
|
|
> |
|
|
|
{result.servicio} |
|
|
|
{result.servicio} |
|
|
@ -640,8 +628,8 @@ export const Viaje: FC<IProps> = (props) => { |
|
|
|
<Button |
|
|
|
<Button |
|
|
|
variant='primary' |
|
|
|
variant='primary' |
|
|
|
onClick={() => { |
|
|
|
onClick={() => { |
|
|
|
saveMaster(); |
|
|
|
saveMaster() |
|
|
|
saveDetail(); |
|
|
|
saveDetail() |
|
|
|
}} |
|
|
|
}} |
|
|
|
> |
|
|
|
> |
|
|
|
Guardar |
|
|
|
Guardar |
|
|
@ -662,8 +650,8 @@ export const Viaje: FC<IProps> = (props) => { |
|
|
|
size='sm' |
|
|
|
size='sm' |
|
|
|
className='dialogLabel' |
|
|
|
className='dialogLabel' |
|
|
|
onChange={(e) => { |
|
|
|
onChange={(e) => { |
|
|
|
setProveedor(e.target.value); |
|
|
|
setProveedor(e.target.value) |
|
|
|
setSelectedProveedor(false); |
|
|
|
setSelectedProveedor(false) |
|
|
|
}} |
|
|
|
}} |
|
|
|
/> |
|
|
|
/> |
|
|
|
<Dropdown className='d-inline mx-6' show={!SelectedProveedor}> |
|
|
|
<Dropdown className='d-inline mx-6' show={!SelectedProveedor}> |
|
|
@ -675,9 +663,9 @@ export const Viaje: FC<IProps> = (props) => { |
|
|
|
.map((result) => ( |
|
|
|
.map((result) => ( |
|
|
|
<Dropdown.Item |
|
|
|
<Dropdown.Item |
|
|
|
onClick={() => { |
|
|
|
onClick={() => { |
|
|
|
setIDProveedor(result.id); |
|
|
|
setIDProveedor(result.id) |
|
|
|
setProveedor(result.proveedor); |
|
|
|
setProveedor(result.proveedor) |
|
|
|
setSelectedProveedor(true); |
|
|
|
setSelectedProveedor(true) |
|
|
|
}} |
|
|
|
}} |
|
|
|
> |
|
|
|
> |
|
|
|
{result.proveedor} |
|
|
|
{result.proveedor} |
|
|
@ -710,7 +698,7 @@ export const Viaje: FC<IProps> = (props) => { |
|
|
|
rows={2} |
|
|
|
rows={2} |
|
|
|
value={Comentarios} |
|
|
|
value={Comentarios} |
|
|
|
onChange={(e) => { |
|
|
|
onChange={(e) => { |
|
|
|
setComentarios(e.target.value); |
|
|
|
setComentarios(e.target.value) |
|
|
|
}} |
|
|
|
}} |
|
|
|
/> |
|
|
|
/> |
|
|
|
</Col> |
|
|
|
</Col> |
|
|
@ -725,7 +713,7 @@ export const Viaje: FC<IProps> = (props) => { |
|
|
|
size='sm' |
|
|
|
size='sm' |
|
|
|
className='dialogLabel' |
|
|
|
className='dialogLabel' |
|
|
|
onChange={(e) => { |
|
|
|
onChange={(e) => { |
|
|
|
setUltimaCaja(e.target.value); |
|
|
|
setUltimaCaja(e.target.value) |
|
|
|
}} |
|
|
|
}} |
|
|
|
/> |
|
|
|
/> |
|
|
|
</Col> |
|
|
|
</Col> |
|
|
@ -743,7 +731,7 @@ export const Viaje: FC<IProps> = (props) => { |
|
|
|
<Form.Control |
|
|
|
<Form.Control |
|
|
|
as='select' |
|
|
|
as='select' |
|
|
|
onChange={(e) => { |
|
|
|
onChange={(e) => { |
|
|
|
setAduana(parseInt(e.target.value)); |
|
|
|
setAduana(parseInt(e.target.value)) |
|
|
|
}} |
|
|
|
}} |
|
|
|
value={Aduana} |
|
|
|
value={Aduana} |
|
|
|
disabled={DisableAduana} |
|
|
|
disabled={DisableAduana} |
|
|
@ -755,7 +743,7 @@ export const Viaje: FC<IProps> = (props) => { |
|
|
|
<option key={c.id} value={c.id}> |
|
|
|
<option key={c.id} value={c.id}> |
|
|
|
{c.Aduana} |
|
|
|
{c.Aduana} |
|
|
|
</option> |
|
|
|
</option> |
|
|
|
); |
|
|
|
) |
|
|
|
}) |
|
|
|
}) |
|
|
|
: null} |
|
|
|
: null} |
|
|
|
</Form.Control> |
|
|
|
</Form.Control> |
|
|
@ -769,7 +757,7 @@ export const Viaje: FC<IProps> = (props) => { |
|
|
|
IDMaster={IDViaje} |
|
|
|
IDMaster={IDViaje} |
|
|
|
key={IDViaje} |
|
|
|
key={IDViaje} |
|
|
|
onLoadDetail={function (id: number): void { |
|
|
|
onLoadDetail={function (id: number): void { |
|
|
|
loadService(id); |
|
|
|
loadService(id) |
|
|
|
}} |
|
|
|
}} |
|
|
|
actionButtons={true} |
|
|
|
actionButtons={true} |
|
|
|
/> |
|
|
|
/> |
|
|
@ -778,5 +766,5 @@ export const Viaje: FC<IProps> = (props) => { |
|
|
|
</Card> |
|
|
|
</Card> |
|
|
|
</Card> |
|
|
|
</Card> |
|
|
|
</div> |
|
|
|
</div> |
|
|
|
); |
|
|
|
) |
|
|
|
}; |
|
|
|
} |
|
|
|