From 6b3944277daa4a2756b129f44724320e412feefc Mon Sep 17 00:00:00 2001 From: Pasq G Date: Thu, 30 Jan 2025 00:31:43 +0100 Subject: [PATCH] =?UTF-8?q?codis=20quasi=20del=20tot=20b=C3=A9.=20Cal=20re?= =?UTF-8?q?passar=20les=20dates=20condicionals=20d'inici=20i=20fi?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- imports/ui/Codis.jsx | 254 +++++++++++++++---------------------------- 1 file changed, 89 insertions(+), 165 deletions(-) diff --git a/imports/ui/Codis.jsx b/imports/ui/Codis.jsx index 1478c25..8f9ed70 100644 --- a/imports/ui/Codis.jsx +++ b/imports/ui/Codis.jsx @@ -10,20 +10,12 @@ import { Roles } from 'meteor/roles'; // import { useUserId } from 'meteor/react-meteor-accounts'; import Select from 'react-select'; -// import CreatableSelect from 'react-select/creatable'; -// import AsyncCreatableSelect from 'react-select/async-creatable'; -// import { BarraNav } from "./BarraNav/BarraNav"; - -// import InfiniteCalendar from 'react-infinite-calendar'; -// import 'react-infinite-calendar/styles.css'; - function generaCodi() { return Random.id().slice(0, 5).toUpperCase(); } export const Codis = () => { - // const [permes, setPermes] = useState(false); const [esEditor, setEsEditor] = useState(false); const userId = Meteor.userId(); @@ -36,10 +28,6 @@ export const Codis = () => { })(); }, []); - // console.log("isAdmin: ", isAdmin) ; - - // const [ambitSeleccionat, setAmbitSeleccionat] = useState(null); - const [confecCodObj, setConfecCodObj] = useState({ codi: generaCodi(), ambit: null, @@ -50,9 +38,6 @@ export const Codis = () => { condFi: null }); - // useSubscribe('necessitats'); - // const necessitats = useTracker("necessitats", () => NecessitatsCollection.find().fetchAsync()); - useSubscribe('codis'); const codis = useTracker("codis", () => CodisCollection.find().fetchAsync()); @@ -60,29 +45,10 @@ export const Codis = () => { const pobles = useTracker("pobles", () => PoblesCollection.find().fetchAsync()); const ambits = pobles?.map(p => p?.ambitAssociat); - // console.log("ambits: ", ambits); - - // useSubscribe('tipus'); - // const ambits = useTracker("ambits", () => Collection.find().fetchAsync()); - - // console.log("tipus: ", tipus); - // console.log("necessitats: ", necessitats); - - // console.log("tipusSeleccionat: ", tipusSeleccionat); - - - // const filterAmbit = (inputValue) => { - // return ambits.filter((i) => - // i.toLowerCase().includes(inputValue.toLowerCase()) - // ); - // }; - // const [ambitGeneral, setAmbitGeneral] = useState(ambitSeleccionat === "GENERAL"); const codiDoc = useTracker("valsFormDoc", () => CodisCollection.findOneAsync(codiSeleccionat?._id)); - // let selRolVal = codiDoc?.rol || "usuari"; const SelectorDeRol = () => { - // const [docRol, setDocRol] = useState(codiDoc?.rol) return <> @@ -90,7 +56,7 @@ export const Codis = () => { required key={Math.random()} name="selRol" - // filterOption={(opts) => necessitats.find(nec => nec.tipus === tipusSeleccionat._id)} + defaultValue={ codiSeleccionat ? { @@ -99,26 +65,19 @@ export const Codis = () => { } : confecCodObj?.rol || null - // ? { - // label: confecCodObj.rol, - // value: confecCodObj.rol - // } - // : null - // docRol && {label: docRol, value: docRol} } onChange={v => { - console.log("v: ", v); + // console.log("v: ", v); - console.log("cCO abans: ", confecCodObj); - // setDocRol(v); + // console.log("cCO abans: ", confecCodObj); setConfecCodObj({ ...confecCodObj, rol: v }); - console.log("cCO despres: ", confecCodObj); + // console.log("cCO despres: ", confecCodObj); }} options={ @@ -162,8 +121,8 @@ export const Codis = () => { const codSelAbsActChecked = codiDoc ? {checked: codiDoc.absActiu} : {defaultChecked: confecCodObj.absActiu}; - console.log("cS: ", codiSeleccionat); - console.log("cCO: ", confecCodObj); + // console.log("cS: ", codiSeleccionat); + // console.log("cCO: ", confecCodObj); return
{ outline: `${codiSeleccionat?._id ? '5px solid black' : 'none'}` }}> - {/* {ambitSeleccionat &&

{ambitSeleccionat?.value}

} */}

Codis

- {/* */}
{
{ - // if (d.get('selTipus')) try { Meteor.callAsync('editaOAfigCodi', { ...codiGenerat || [], @@ -216,7 +165,6 @@ export const Codis = () => { ambit: d.get('selAmbit') || "", rol: d.get('selRol'), - // act_abs: d.get('activAbs'), absCond, absActiu: d.get('absActiu'), condIni: d.get('condIni'), @@ -235,17 +183,11 @@ export const Codis = () => { }} > - {/* Si - l'usuari és ADMINISTRADOR o té permisos de responsabilitat, podrà crear nous Tipus al CREAR o a l'EDITAR - si no - tansols podrà assignar a un tipus predefinit o al de ALTRES - */} - - - - - - */}
- {/* {... {ambitSeleccionat, selRolVal}} /> */} +

@@ -304,52 +234,82 @@ export const Codis = () => { backgroundColor: `lightslategray` }}> {/*

TEMPS REAL:

*/} - setAbsCond('abs')} +
- {/* L'activació condicionada desactivada fa que no siguen 'required' les dates d'inici i final */} +

@@ -370,6 +330,8 @@ export const Codis = () => { confecCodObj?.absCond === 'abs' ) && + codiSeleccionat?.absCond !== 'cond' + && <> @@ -382,8 +344,6 @@ export const Codis = () => { ev.preventDefault(); ev.stopPropagation(); - // console.log("ev: ", ev); - if (codiSeleccionat) { Meteor.callAsync('modActivacioAbsolutaCodi', codiSeleccionat); setCodiSeleccionat({ @@ -400,18 +360,20 @@ export const Codis = () => { }} /> - // codiDoc && - // Meteor.callAsync('modActivacioAbsolutaCodi', codiDoc); } { - codiSeleccionat + (codiSeleccionat && codiSeleccionat.absCond === 'cond' || confecCodObj?.absCond === 'cond' + ) && + codiSeleccionat?.absCond !== 'abs' + && + <>

{ name="condIni" onChange={v => { - console.log("dataIni: ", v.currentTarget.value); + // console.log("dataIni: ", v.currentTarget.value); setConfecCodObj({ ...confecCodObj, condIni: v.currentTarget.value @@ -440,7 +402,7 @@ export const Codis = () => { type="date" name="condFi" onChange={v => { - console.log("dataFi: ", v.currentTarget.value); + // console.log("dataFi: ", v.currentTarget.value); setConfecCodObj({ ...confecCodObj, condFi: v.currentTarget.value @@ -453,26 +415,9 @@ export const Codis = () => { }

- - {/* */} - - - - {/* {ambitSeleccionat && esEditor && } */} ; }; @@ -482,24 +427,12 @@ export const Codis = () => { lastWeek = new Date(today.getFullYear(), today.getMonth(), today.getDate() - 7) ; - // console.log("codis: ", codis); - - return Carregant...} >

- {/* ({value: v, label: v.titol})) } - loadOptions={tipus.map((v,i) => ({value: v, label: v.titol}))} - /> */} - - {/* */} - -
    { alignContent: `space-around` }}>{ codis - // .reverse() - // .sort((a,b) => a?.codi?.editedAt < b?.codi?.editedAt) + .map(cod =>
  • { ev.preventDefault(); ev.stopPropagation(); - // console.log("codSel: ", codiSeleccionat); setCodiSeleccionat(codiSeleccionat?._id === cod._id ? null : cod); }} > @@ -550,16 +481,9 @@ export const Codis = () => { }} /> {cod.codi} - {/* {esEditor && } */} +
  • ) }
- {/* */}
; }; \ No newline at end of file