aded id
This commit is contained in:
@@ -26,10 +26,10 @@ export default function Page() {
|
||||
antiguedad: "MENORES DE 2",
|
||||
modelo: "",
|
||||
id_estado: "",
|
||||
id_adscripcion: "",
|
||||
id_adscripcion: 0,
|
||||
id_tipo_equipo: "",
|
||||
id_sistema_operativo: "",
|
||||
id_procesador: "",
|
||||
id_sistema_operativo: 0,
|
||||
id_procesador: 0,
|
||||
id_uso: "",
|
||||
id_marca: "",
|
||||
id_periferico: "",
|
||||
@@ -93,12 +93,16 @@ export default function Page() {
|
||||
>([]);
|
||||
const [procesadores, setProcesadores] = useState<Procesador[]>([]);
|
||||
const [perifericos, setPerifericos] = useState<Perifericos[]>([]);
|
||||
const [adscripcionLabel, setAdscripcionLabel] = useState("");
|
||||
|
||||
const [suggestions, setSuggestions] = useState({
|
||||
adscripcion: [] as string[],
|
||||
});
|
||||
|
||||
const mostrarCamposComputadora = formData.id_tipo_equipo !== "9";
|
||||
const mostrarCamposComputadora = Number(formData.id_tipo_equipo) !== 9;
|
||||
const tableta =
|
||||
Number(formData.id_tipo_equipo) !== 7 &&
|
||||
Number(formData.id_tipo_equipo) !== 8;
|
||||
const api_url = process.env.NEXT_PUBLIC_API_URL;
|
||||
|
||||
useEffect(() => {
|
||||
@@ -169,7 +173,7 @@ export default function Page() {
|
||||
|
||||
useEffect(() => {
|
||||
const fetchPerifericos = async () => {
|
||||
if (formData.id_tipo_equipo !== "9") return;
|
||||
if (Number(formData.id_tipo_equipo) != 9) return;
|
||||
|
||||
const token = Cookies.get("token");
|
||||
const headers = { Authorization: `Bearer ${token}` };
|
||||
@@ -189,9 +193,22 @@ export default function Page() {
|
||||
}, [formData.id_tipo_equipo]);
|
||||
|
||||
const handleInputChange = (field: string, value: any) => {
|
||||
if (field === "adscripcionLabel") {
|
||||
setAdscripcionLabel(value);
|
||||
|
||||
const matches = AREAS.filter((a) =>
|
||||
a.label.toLowerCase().includes(value.toLowerCase())
|
||||
).map((a) => a.label);
|
||||
|
||||
setSuggestions((prev) => ({
|
||||
...prev,
|
||||
adscripcion: matches.slice(0, 5),
|
||||
}));
|
||||
return;
|
||||
}
|
||||
|
||||
setFormData((prev) => {
|
||||
let newValue = value;
|
||||
|
||||
if (field.startsWith("id_")) {
|
||||
newValue = value ? Number(value) : "";
|
||||
}
|
||||
@@ -208,11 +225,6 @@ export default function Page() {
|
||||
});
|
||||
};
|
||||
|
||||
const handleSelectSuggestion = (field: string, value: string) => {
|
||||
setFormData((prev) => ({ ...prev, [field]: value }));
|
||||
setSuggestions((prev) => ({ ...prev, [field]: [] }));
|
||||
};
|
||||
|
||||
const handleGuardar = async () => {
|
||||
try {
|
||||
const token = Cookies.get("token");
|
||||
@@ -365,26 +377,30 @@ export default function Page() {
|
||||
)}
|
||||
</select>
|
||||
</div>
|
||||
|
||||
<div className="formGroup">
|
||||
<label>Sistema operativo</label>
|
||||
<select
|
||||
value={formData.id_sistema_operativo}
|
||||
onChange={(e) =>
|
||||
handleInputChange("id_sistema_operativo", e.target.value)
|
||||
}
|
||||
>
|
||||
<option value="">Selecciona sistema operativo</option>
|
||||
{SO_POR_EQUIPO[formData.id_tipo_equipo]?.map((so) => (
|
||||
<option
|
||||
key={so.id_sistema_operativo}
|
||||
value={so.id_sistema_operativo}
|
||||
>
|
||||
{so.sistema_operativo}
|
||||
</option>
|
||||
))}
|
||||
</select>
|
||||
</div>
|
||||
{tableta && (
|
||||
<div className="formGroup">
|
||||
<label>Sistema operativo</label>
|
||||
<select
|
||||
value={formData.id_sistema_operativo}
|
||||
onChange={(e) =>
|
||||
handleInputChange(
|
||||
"id_sistema_operativo",
|
||||
e.target.value
|
||||
)
|
||||
}
|
||||
>
|
||||
<option value="">Selecciona sistema operativo</option>
|
||||
{SO_POR_EQUIPO[formData.id_tipo_equipo]?.map((so) => (
|
||||
<option
|
||||
key={so.id_sistema_operativo}
|
||||
value={so.id_sistema_operativo}
|
||||
>
|
||||
{so.sistema_operativo}
|
||||
</option>
|
||||
))}
|
||||
</select>
|
||||
</div>
|
||||
)}
|
||||
</>
|
||||
)}
|
||||
|
||||
@@ -412,10 +428,10 @@ export default function Page() {
|
||||
<input
|
||||
required
|
||||
type="text"
|
||||
placeholder="Ingresa adscripcion"
|
||||
value={formData.id_adscripcion}
|
||||
placeholder="Ingresa adscripción"
|
||||
value={adscripcionLabel}
|
||||
onChange={(e) =>
|
||||
handleInputChange("id_adscripcion", e.target.value)
|
||||
handleInputChange("adscripcionLabel", e.target.value)
|
||||
}
|
||||
/>
|
||||
{suggestions.adscripcion.length > 0 && (
|
||||
@@ -423,7 +439,20 @@ export default function Page() {
|
||||
{suggestions.adscripcion.map((s) => (
|
||||
<li
|
||||
key={s}
|
||||
onClick={() => handleSelectSuggestion("adscripcion", s)}
|
||||
onClick={() => {
|
||||
const selected = AREAS.find((a) => a.label === s);
|
||||
if (selected) {
|
||||
setFormData((prev) => ({
|
||||
...prev,
|
||||
id_adscripcion: selected.id,
|
||||
}));
|
||||
setAdscripcionLabel(selected.label);
|
||||
setSuggestions((prev) => ({
|
||||
...prev,
|
||||
adscripcion: [],
|
||||
}));
|
||||
}
|
||||
}}
|
||||
>
|
||||
{s}
|
||||
</li>
|
||||
|
||||
@@ -2,7 +2,7 @@ export const PROCESADORES_POR_EQUIPO: Record<
|
||||
string,
|
||||
{ id_procesador: number; procesador: string }[]
|
||||
> = {
|
||||
"ESCRITORIO PC": [
|
||||
/*"ESCRITORIO PC"*/ 1: [
|
||||
{
|
||||
id_procesador: 1,
|
||||
procesador: "i7 o equivalentes (13a generación en adelante)",
|
||||
@@ -41,7 +41,18 @@ export const PROCESADORES_POR_EQUIPO: Record<
|
||||
{ id_procesador: 18, procesador: "Pentium Series J, G" },
|
||||
{ id_procesador: 19, procesador: "Celeron Serie J, G" },
|
||||
],
|
||||
"ESCRITORIO LINUX": [
|
||||
/*"ESCRITORIO MAC OS"*/ 2: [
|
||||
{ id_procesador: 20, procesador: "Familia M2" },
|
||||
{ id_procesador: 21, procesador: "Familia M1" },
|
||||
{ id_procesador: 2, procesador: "i7 o equivalentes (9a - 12a generación)" },
|
||||
{ id_procesador: 4, procesador: "i7 o equivalentes (1a - 4a generación)" },
|
||||
{ id_procesador: 6, procesador: "i5 o equivalentes (9a - 12a generación)" },
|
||||
{ id_procesador: 7, procesador: "i5 o equivalentes (5a - 8a generación)" },
|
||||
{ id_procesador: 8, procesador: "i5 o equivalentes (1a - 4a generación)" },
|
||||
{ id_procesador: 12, procesador: "i3 o equivalentes (1a - 4a generación)" },
|
||||
{ id_procesador: 22, procesador: "Core2 Mac, Quad Core o anteriores" },
|
||||
],
|
||||
/*"ESCRITORIO LINUX"*/ 3: [
|
||||
{
|
||||
id_procesador: 1,
|
||||
procesador: "i7 o equivalentes (13a generación en adelante)",
|
||||
@@ -69,7 +80,7 @@ export const PROCESADORES_POR_EQUIPO: Record<
|
||||
{ id_procesador: 13, procesador: "Pentium Silver O Gold" },
|
||||
{ id_procesador: 14, procesador: "Pentium Dual Core o anteriores" },
|
||||
],
|
||||
"PORTÁTILES WINDOWS": [
|
||||
/*"PORTÁTILES WINDOWS"*/ 4: [
|
||||
{
|
||||
id_procesador: 1,
|
||||
procesador: "i7 o equivalentes (13a generación en adelante)",
|
||||
@@ -97,7 +108,7 @@ export const PROCESADORES_POR_EQUIPO: Record<
|
||||
{ id_procesador: 13, procesador: "Pentium Silver O Gold" },
|
||||
{ id_procesador: 14, procesador: "Pentium Dual Core o anteriores" },
|
||||
],
|
||||
"PORTÁTILES CHROMEBOOK": [
|
||||
/*"PORTÁTILES CHROMEBOOK"*/ 5: [
|
||||
{
|
||||
id_procesador: 1,
|
||||
procesador: "i7 o equivalentes (13a generación en adelante)",
|
||||
@@ -123,7 +134,7 @@ export const PROCESADORES_POR_EQUIPO: Record<
|
||||
{ id_procesador: 11, procesador: "i3 o equivalentes (5a - 8a generación)" },
|
||||
{ id_procesador: 12, procesador: "i3 o equivalentes (1a - 4a generación)" },
|
||||
],
|
||||
"ESCRITORIO MAC OS": [
|
||||
/*"PORTÁTILES MAC OS"*/ 6: [
|
||||
{ id_procesador: 20, procesador: "Familia M2" },
|
||||
{ id_procesador: 21, procesador: "Familia M1" },
|
||||
{ id_procesador: 2, procesador: "i7 o equivalentes (9a - 12a generación)" },
|
||||
@@ -134,7 +145,35 @@ export const PROCESADORES_POR_EQUIPO: Record<
|
||||
{ id_procesador: 12, procesador: "i3 o equivalentes (1a - 4a generación)" },
|
||||
{ id_procesador: 22, procesador: "Core2 Mac, Quad Core o anteriores" },
|
||||
],
|
||||
"PORTÁTILES MAC OS": [
|
||||
/*"TABLETA ANDROID"*/ 7: [
|
||||
{
|
||||
id_procesador: 1,
|
||||
procesador: "i7 o equivalentes (13a generación en adelante)",
|
||||
},
|
||||
{ id_procesador: 2, procesador: "i7 o equivalentes (9a - 12a generación)" },
|
||||
{ id_procesador: 3, procesador: "i7 o equivalentes (5a - 8a generación)" },
|
||||
{ id_procesador: 4, procesador: "i7 o equivalentes (1a - 4a generación)" },
|
||||
{
|
||||
id_procesador: 5,
|
||||
procesador: "i5 o equivalentes (13a generación en adelante)",
|
||||
},
|
||||
{ id_procesador: 6, procesador: "i5 o equivalentes (9a - 12a generación)" },
|
||||
{ id_procesador: 7, procesador: "i5 o equivalentes (5a - 8a generación)" },
|
||||
{ id_procesador: 8, procesador: "i5 o equivalentes (1a - 4a generación)" },
|
||||
{
|
||||
id_procesador: 9,
|
||||
procesador: "i3 o equivalentes (13a generación en adelante)",
|
||||
},
|
||||
{
|
||||
id_procesador: 10,
|
||||
procesador: "i3 o equivalentes (9a - 12a generación)",
|
||||
},
|
||||
{ id_procesador: 11, procesador: "i3 o equivalentes (5a - 8a generación)" },
|
||||
{ id_procesador: 12, procesador: "i3 o equivalentes (1a - 4a generación)" },
|
||||
{ id_procesador: 13, procesador: "Pentium Silver O Gold" },
|
||||
{ id_procesador: 14, procesador: "Pentium Dual Core o anteriores" },
|
||||
],
|
||||
/*"TABLETA iPAD OS"*/ 8: [
|
||||
{ id_procesador: 20, procesador: "Familia M2" },
|
||||
{ id_procesador: 21, procesador: "Familia M1" },
|
||||
{ id_procesador: 2, procesador: "i7 o equivalentes (9a - 12a generación)" },
|
||||
@@ -145,7 +184,7 @@ export const PROCESADORES_POR_EQUIPO: Record<
|
||||
{ id_procesador: 12, procesador: "i3 o equivalentes (1a - 4a generación)" },
|
||||
{ id_procesador: 22, procesador: "Core2 Mac, Quad Core o anteriores" },
|
||||
],
|
||||
SERVIDOR: [
|
||||
/*SERVIDOR*/ 10: [
|
||||
{ id_procesador: 23, procesador: "Xeon Bronce, Plata, Oro 1a generación" },
|
||||
{ id_procesador: 24, procesador: "Xeon E3, E5, E7" },
|
||||
{ id_procesador: 25, procesador: "Xeon Phi" },
|
||||
|
||||
@@ -2,14 +2,14 @@ export const SO_POR_EQUIPO: Record<
|
||||
string,
|
||||
{ id_sistema_operativo: number; sistema_operativo: string }[]
|
||||
> = {
|
||||
"ESCRITORIO PC": [
|
||||
/*"ESCRITORIO PC"*/ 1: [
|
||||
{ id_sistema_operativo: 1, sistema_operativo: "Windows 11" },
|
||||
{ id_sistema_operativo: 2, sistema_operativo: "Windows 10" },
|
||||
{ id_sistema_operativo: 3, sistema_operativo: "Windows 7/8" },
|
||||
{ id_sistema_operativo: 4, sistema_operativo: "Windows XP/Vista" },
|
||||
{ id_sistema_operativo: 5, sistema_operativo: "Linux" },
|
||||
],
|
||||
"ESCRITORIO APPLE": [
|
||||
/*"ESCRITORIO MAC OS"*/ 2: [
|
||||
{
|
||||
id_sistema_operativo: 6,
|
||||
sistema_operativo: "Mac OS (13 - Ventura, 14 - Sonoma)",
|
||||
@@ -29,14 +29,28 @@ export const SO_POR_EQUIPO: Record<
|
||||
"Mac OS X (Snow Leopard, Lion, Mountain Lion, Mavericks)",
|
||||
},
|
||||
],
|
||||
"TABLETA ANDROID": [
|
||||
/*"ESCRITORIO LINUX"*/ 3: [
|
||||
{ id_sistema_operativo: 1, sistema_operativo: "Windows 11" },
|
||||
{ id_sistema_operativo: 2, sistema_operativo: "Windows 10" },
|
||||
{ id_sistema_operativo: 3, sistema_operativo: "Windows 7/8" },
|
||||
{ id_sistema_operativo: 4, sistema_operativo: "Windows XP/Vista" },
|
||||
{ id_sistema_operativo: 5, sistema_operativo: "Linux" },
|
||||
],
|
||||
/*"PORTÁTILES WINDOWS"*/ 4: [
|
||||
{ id_sistema_operativo: 1, sistema_operativo: "Windows 11" },
|
||||
{ id_sistema_operativo: 2, sistema_operativo: "Windows 10" },
|
||||
{ id_sistema_operativo: 3, sistema_operativo: "Windows 7/8" },
|
||||
{ id_sistema_operativo: 4, sistema_operativo: "Windows XP/Vista" },
|
||||
{ id_sistema_operativo: 10, sistema_operativo: "Chrome OS" },
|
||||
],
|
||||
"TABLETA iPAD OS": [
|
||||
/*"PORTÁTILES CHROMEBOOK"*/ 5: [
|
||||
{ id_sistema_operativo: 1, sistema_operativo: "Windows 11" },
|
||||
{ id_sistema_operativo: 2, sistema_operativo: "Windows 10" },
|
||||
{ id_sistema_operativo: 3, sistema_operativo: "Windows 7/8" },
|
||||
{ id_sistema_operativo: 4, sistema_operativo: "Windows XP/Vista" },
|
||||
{ id_sistema_operativo: 10, sistema_operativo: "Chrome OS" },
|
||||
],
|
||||
/*"PORTÁTILES MAC OS"*/ 6: [
|
||||
{
|
||||
id_sistema_operativo: 6,
|
||||
sistema_operativo: "Mac OS (13 - Ventura, 14 - Sonoma)",
|
||||
@@ -56,7 +70,7 @@ export const SO_POR_EQUIPO: Record<
|
||||
"Mac OS X (Snow Leopard, Lion, Mountain Lion, Mavericks)",
|
||||
},
|
||||
],
|
||||
SERVIDOR: [
|
||||
/*SERVIDOR*/ 10: [
|
||||
{
|
||||
id_sistema_operativo: 12,
|
||||
sistema_operativo:
|
||||
|
||||
Reference in New Issue
Block a user