From 11c9ce01291832e8ffeeb9dc30cb0b8247117f5b Mon Sep 17 00:00:00 2001 From: Vanesa Rimada <80859025+vrimada@users.noreply.github.com> Date: Wed, 22 Jul 2026 15:49:58 -0300 Subject: [PATCH 1/7] Mejoras ABM Determinaciones --- Business/Data/Laboratorio/ResultadoItem.cs | 23 ++- .../Data/Laboratorio/ResultadoItem.hbm.xml | 2 +- WebLab/Items/ItemEdit2.aspx | 145 ++++++++++++------ WebLab/Items/ItemEdit2.aspx.cs | 35 +++-- WebLab/Items/ItemEdit2.aspx.designer.cs | 36 +++++ 5 files changed, 177 insertions(+), 64 deletions(-) diff --git a/Business/Data/Laboratorio/ResultadoItem.cs b/Business/Data/Laboratorio/ResultadoItem.cs index 65070ac7..fe439134 100644 --- a/Business/Data/Laboratorio/ResultadoItem.cs +++ b/Business/Data/Laboratorio/ResultadoItem.cs @@ -25,6 +25,7 @@ public sealed class ResultadoItem : Business.BaseDataAccess private DateTime m_fecharegistro; private int m_idefectorderiva; private bool m_resultadoDefecto; + private string m_estadoValidacion; #endregion #region Default ( Empty ) Class Constuctor @@ -42,7 +43,9 @@ public ResultadoItem() m_fecharegistro = DateTime.MinValue; m_idefectorderiva = 0; m_resultadoDefecto = false; - } + m_estadoValidacion = "D"; + + } #endregion // End of Default ( Empty ) Class Constuctor #region Required Fields Only Constructor @@ -69,7 +72,8 @@ bool resultadoDefecto m_fecharegistro = fecharegistro; m_idefectorderiva = idefectorderiva; m_resultadoDefecto = resultadoDefecto; - } + m_estadoValidacion = "D"; + } #endregion // End Required Fields Only Constructor #region Public Properties @@ -205,7 +209,18 @@ public bool IsChanged { get { return m_isChanged; } } - - #endregion + + + public string EstadoValidacion + { + get { return m_estadoValidacion; } + set + { + m_isChanged |= (m_estadoValidacion != value); + m_estadoValidacion = value; + } + + } + #endregion } } diff --git a/Business/Data/Laboratorio/ResultadoItem.hbm.xml b/Business/Data/Laboratorio/ResultadoItem.hbm.xml index 164b44f7..a89202c4 100644 --- a/Business/Data/Laboratorio/ResultadoItem.hbm.xml +++ b/Business/Data/Laboratorio/ResultadoItem.hbm.xml @@ -18,6 +18,6 @@ - + diff --git a/WebLab/Items/ItemEdit2.aspx b/WebLab/Items/ItemEdit2.aspx index 934dcbe3..11e48f4b 100644 --- a/WebLab/Items/ItemEdit2.aspx +++ b/WebLab/Items/ItemEdit2.aspx @@ -75,7 +75,7 @@
  • Diagrama
  • Resultados Predefinidos
  • Recomendaciones
  • -
  • Muestras
  • +
  • Muestras
  • Mas opciones
  • Turnos
  • AutoAnalizadores
  • @@ -649,8 +649,9 @@ --%> -
    - Sección habilitada para Servicio Microbiologia +
    + + Sección habilitada para Servicio Microbiologia @@ -706,6 +707,8 @@
    Muestra:
    +
    +
    @@ -1121,8 +1124,19 @@ - + + + + + Estado + + + + + + + @@ -1134,18 +1148,28 @@ - +<%-- - +--%> +
     Resultados Predefinidos
    + + - - + + + + + + + + + @@ -1491,11 +1515,13 @@ var filas; function CrearFila() { var nombre = document.getElementById('<%= Page.Master.FindControl("ContentPlaceHolder1").FindControl("txtNombreRP").ClientID %>').value; - var idEfector= document.getElementById('<%= Page.Master.FindControl("ContentPlaceHolder1").FindControl("ddlEfectorItemDeriva").ClientID %>').value; - + var idEfector = document.getElementById('<%= Page.Master.FindControl("ContentPlaceHolder1").FindControl("ddlEfectorItemDeriva").ClientID %>').value; + var opcionesEstado = document.getElementById('<%= Page.Master.FindControl("ContentPlaceHolder1").FindControl("ddlEstadoPredefinido").ClientID %>'); + var estado = opcionesEstado.options[opcionesEstado.selectedIndex].text; + if (nombre!='') { - NuevaFila(nombre, idEfector); + NuevaFila(nombre, idEfector, estado); document.getElementById('<%= Page.Master.FindControl("ContentPlaceHolder1").FindControl("txtNombreRP").ClientID %>').value = ''; document.getElementById('<%= Page.Master.FindControl("ContentPlaceHolder1").FindControl("ddlEfectorItemDeriva").ClientID %>').value=''; } @@ -1518,7 +1544,7 @@ if (nombre!='') } } -function NuevaFila(nom , efector) +function NuevaFila(nom , efector, estado) { Grilla = document.getElementById('cuerpo'); @@ -1564,22 +1590,41 @@ oCodigo1.runat = 'server'; //oCodigo1.onblur = function () { CargarDatos() }; oCodigo1.className = 'form-control input-sm'; oCodigo1.width = '200px'; -oCodigo1.value = efector; +oCodigo1.value = (efector == 0) ? "" : efector; celdaEfector.appendChild(oCodigo1); fila.appendChild(celdaEfector); ///////////////////// + //Estado + celdaEstado = document.createElement('td'); + oEstado = document.createElement('input'); + oEstado.type = 'text'; + oEstado.runat = 'server'; + oEstado.className = 'form-control input-sm'; + oEstado.width = '200px'; + oEstado.value = estado; + + celdaEstado.appendChild(oEstado); + fila.appendChild(celdaEstado); + + ///////////////////// + + + + var idEfector = $("#<%= HFEfector.ClientID %>").val(); + if (idEfector == 227) { + celda6 = document.createElement('td'); + celda6.className = "orden"; + celda6.width = "60px"; + oBoton = document.createElement('img'); + // oBoton.name= "pru"; + oBoton.src = "../script/moverfilas/eliminar.gif"; + oBoton.alt = "eliminar fila"; + oBoton.onclick = function () { borrarfila(this, 'cuerpo') }; + celda6.appendChild(oBoton); + fila.appendChild(celda6); + } -celda6 = document.createElement('td'); -celda6.className= "orden"; -celda6.width="60px"; -oBoton= document.createElement('img'); -// oBoton.name= "pru"; -oBoton.src="../script/moverfilas/eliminar.gif"; -oBoton.alt="eliminar fila"; -oBoton.onclick = function () {borrarfila(this,'cuerpo')}; -celda6.appendChild(oBoton); -fila.appendChild(celda6); Grilla.appendChild(fila); @@ -1641,18 +1686,19 @@ celdaNombre.appendChild(oNombre); fila.appendChild(celdaNombre); /////////////////////////////////// - -celda6 = document.createElement('td'); -celda6.className= "orden"; -celda6.width="60px"; -oBoton= document.createElement('img'); -// oBoton.name= "pru"; -oBoton.src="../script/moverfilas/eliminar.gif"; -oBoton.alt="eliminar fila"; -oBoton.onclick = function () {borrarfila(this,'cuerpoDiagrama')}; -celda6.appendChild(oBoton); -fila.appendChild(celda6); - + var idEfector = $("#<%= HFEfector.ClientID %>").val(); + if (idEfector == 227) { + celda6 = document.createElement('td'); + celda6.className = "orden"; + celda6.width = "60px"; + oBoton = document.createElement('img'); + // oBoton.name= "pru"; + oBoton.src = "../script/moverfilas/eliminar.gif"; + oBoton.alt = "eliminar fila"; + oBoton.onclick = function () { borrarfila(this, 'cuerpoDiagrama') }; + celda6.appendChild(oBoton); + fila.appendChild(celda6); + } Grilla.appendChild(fila); iniciarTabla('cuerpoDiagrama'); CargarDatosDiagrama(); @@ -1671,8 +1717,9 @@ for (i=0; ele = filas[i]; i++) { var codigo = ele.getElementsByTagName('input')[0].value; var efector = ele.getElementsByTagName('input')[1].value; + var estado = ele.getElementsByTagName('input')[2].value; if (codigo!='') - str = str + codigo + '#'+ efector+ '@'; + str = str + codigo + '#'+ efector+'#'+estado+ '@'; } document.getElementById('<%= Page.Master.FindControl("ContentPlaceHolder1").FindControl("TxtDatosResultados").ClientID %>').value = str; @@ -1698,21 +1745,20 @@ for (i=0; ele = filas[i]; i++) document.getElementById('<%= Page.Master.FindControl("ContentPlaceHolder1").FindControl("TxtDatosDiagrama").ClientID %>').value = str; } -function CargarDetalle() -{ -var datos= document.getElementById('<%= Page.Master.FindControl("ContentPlaceHolder1").FindControl("TxtDatosResultados").ClientID %>').value ; -if (datos!="") -{ - var sTab = datos.split('@'); - for (var i=0; i<(sTab.length-1); i++) - { - var sFi = sTab[i].split('#'); - if (sFi[0]!="") - { - NuevaFila(sFi[0], sFi[1]); +function CargarDetalle() { + var datos = document.getElementById('<%= Page.Master.FindControl("ContentPlaceHolder1").FindControl("TxtDatosResultados").ClientID %>').value; + if (datos != "") { + var sTab = datos.split('@'); + for (var i = 0; i < (sTab.length - 1); i++) { + var sFi = sTab[i].split('#'); + if (sFi[0] != "") { + NuevaFila(sFi[0], sFi[1], sFi[2]); + } } } -} + var tResultados = document.getElementById("tabla"); + + tResultados.style.display = (datos != "") ? "" : "none"; //si no hay datos que no salgan los encabezados } function CargarDetalleDiagrama() @@ -1779,6 +1825,7 @@ return false; } + 0) //22.07.26 Este mensaje debe aparecer solo cuando hay datos en el combo “Presentacion por Defecto”: + lblPresentacionDefecto.Text = "No se ha determinado una presentación por defecto"; } else { @@ -340,7 +347,7 @@ private void MostrarDatosResultadosPredefinidos(Item oItem) // dtDeterminaciones = (System.Data.DataTable)(Session["Tabla1"]); - ResultadoItem oDetalle = new ResultadoItem(); + //ResultadoItem oDetalle = new ResultadoItem(); ISession m_session = NHibernateHttpModule.CurrentSession; ICriteria crit = m_session.CreateCriteria(typeof(ResultadoItem)); crit.Add(Expression.Eq("IdItem", oItem)); @@ -361,9 +368,9 @@ private void MostrarDatosResultadosPredefinidos(Item oItem) } if (sDatos == "") - sDatos = oDet.Resultado + "#" + efe + "@"; + sDatos = oDet.Resultado + "#" + efe + "#" + (oDet.EstadoValidacion == "D" ? "Definitivo" : "Preliminar") + "@"; else - sDatos += oDet.Resultado + "#" + efe + "@"; + sDatos += oDet.Resultado + "#" + efe + "#" + (oDet.EstadoValidacion == "D" ? "Definitivo" : "Preliminar") + "@"; if (oDet.ResultadoDefecto) ddlResultadoPorDefecto.SelectedValue = oDet.IdResultadoItem.ToString(); @@ -451,13 +458,14 @@ private void GuardarRP() string resultado = ""; string efector = "0"; string[] det = tabla[i].ToString().Split('#'); - + string estado = "D"; if (det.Length > 1) { resultado = det[0].ToString(); string[] e = det[1].ToString().Split('-'); if (e.Length > 1) efector = e[1].ToString(); + estado = (det[2].ToString() == "Definitivo") ? "D" : "P"; } else resultado = det[0].ToString(); @@ -468,7 +476,7 @@ private void GuardarRP() oRegistro.IdUsuarioRegistro = oUser; oRegistro.FechaRegistro = DateTime.Now; - + oRegistro.EstadoValidacion = estado; oRegistro.Save(); oItem.GrabarAuditoriaDetalleItem("Guarda", oUser, "Resultado PreDefinido", resultado, ""); } @@ -556,6 +564,7 @@ private void CargarListasRPDefecto() oUtil.CargarCombo(ddlResultadoPorDefecto, m_ssql, "idResultadoItem", "nombre"); ddlResultadoPorDefecto.Items.Insert(0, new ListItem(" ", "0")); ddlResultadoPorDefecto.UpdateAfterCallBack = true; + //ViewState["resultadosPorDefecto"] = ddlResultadoPorDefecto.DataSource; } //////////////////////////////*****************///Fin de Resultados Predefinidos*************************************// /// @@ -1671,14 +1680,20 @@ private void MostrarDatos(Item oItem) { // tabMuestra.Visible = true; btnAgregarMuestra.Visible = true; + tituloMuestra.Visible = true; + pnlMuestra.Visible = true; - } else { // tabMuestra.Visible = false; btnAgregarMuestra.Visible = false; - + + //22.07.26 La solapa Muestras mostrar solo cuando la determinación corresponde al servicio de microbiología. + tituloMuestra.Visible = false; + pnlMuestra.Visible = false; + tab8.Style["Display"] = "none"; //para que no se vea el borde cuando se oculta tituloMuestra y pnlMuestra + } if (oItem.Tipo == "P") rdbTipo.Items[0].Selected = true; @@ -1874,7 +1889,7 @@ private object LeerDatosMuestraItem(string v) string m_strSQL = @" select iditemMuestra, M.nombre as muestra from LAB_ItemMuestra I inner join Lab_muestra M on I.idmuestra = M.idMuestra - where I.iditem = " + Request["id"].ToString(); + where I.iditem = " + Request["id"].ToString() + " order by M.nombre "; //22.07.2026 En la solapa Muestras mostrar la lista de la grilla ordenada alfabéticamente. DataSet Ds = new DataSet(); diff --git a/WebLab/Items/ItemEdit2.aspx.designer.cs b/WebLab/Items/ItemEdit2.aspx.designer.cs index 8a0d97b4..4299f639 100644 --- a/WebLab/Items/ItemEdit2.aspx.designer.cs +++ b/WebLab/Items/ItemEdit2.aspx.designer.cs @@ -41,6 +41,15 @@ public partial class ItemEdit2 /// protected global::System.Web.UI.WebControls.Label txtEfector; + /// + /// tituloMuestra control. + /// + /// + /// Auto-generated field. + /// To modify move field declaration from designer file to code-behind file. + /// + protected global::System.Web.UI.HtmlControls.HtmlGenericControl tituloMuestra; + /// /// rfvCodigo control. /// @@ -536,6 +545,24 @@ public partial class ItemEdit2 /// protected global::Anthem.GridView gvAutoAnalizadores; + /// + /// tab8 control. + /// + /// + /// Auto-generated field. + /// To modify move field declaration from designer file to code-behind file. + /// + protected global::System.Web.UI.HtmlControls.HtmlGenericControl tab8; + + /// + /// pnlMuestra control. + /// + /// + /// Auto-generated field. + /// To modify move field declaration from designer file to code-behind file. + /// + protected global::System.Web.UI.WebControls.Panel pnlMuestra; + /// /// lblMensajeMuestra1 control. /// @@ -1031,6 +1058,15 @@ public partial class ItemEdit2 /// protected global::Anthem.DropDownList ddlEfectorItemDeriva; + /// + /// ddlEstadoPredefinido control. + /// + /// + /// Auto-generated field. + /// To modify move field declaration from designer file to code-behind file. + /// + protected global::System.Web.UI.WebControls.DropDownList ddlEstadoPredefinido; + /// /// btnGuardarRP control. /// From a6ec10cfe37a498a5e6bd5badd48f304a3d97479 Mon Sep 17 00:00:00 2001 From: Vanesa Rimada <80859025+vrimada@users.noreply.github.com> Date: Thu, 23 Jul 2026 15:14:48 -0300 Subject: [PATCH 2/7] mejora: poner grid view para usuario efector y dejar la grrilla dinamica para usuario efector (tabs Diagrama y resultados prefedinidos) --- WebLab/Items/ItemEdit2.aspx | 405 ++++++++++++++---------- WebLab/Items/ItemEdit2.aspx.cs | 253 ++++++++------- WebLab/Items/ItemEdit2.aspx.designer.cs | 54 ++++ 3 files changed, 433 insertions(+), 279 deletions(-) diff --git a/WebLab/Items/ItemEdit2.aspx b/WebLab/Items/ItemEdit2.aspx index 11e48f4b..3f8166e7 100644 --- a/WebLab/Items/ItemEdit2.aspx +++ b/WebLab/Items/ItemEdit2.aspx @@ -1098,6 +1098,25 @@
     Resultado PredefinidoEfector DerivanteEstado 
    + +

    Diagrama

    + + + + + + + + + + + + + + +
    @@ -1146,30 +1165,29 @@ - -<%-- + ---%> -
     Resultados Predefinidos
    + +--%> - + + + + + + + + +
     Resultado Predefinido Efector DerivanteEstado 
    - - - - - - - - - + style="font-size:.9em; margin-left:1%; " cellpadding="0" cellspacing="0" > + @@ -1209,7 +1227,28 @@ -
     Resultado PredefinidoEfector DerivanteEstado 
    + +

    Resultados Predefinidos

    + + + + + + + + + + + + + + + + +
    +
    @@ -1505,7 +1544,7 @@ alert(document.all.getElementById('txtEdadDesde').value); -CargarDetalle(); +CargarDetalle(); CargarDetalleDiagrama(); // var contadorfilas = 0; var tab; @@ -1519,12 +1558,12 @@ function CrearFila() var opcionesEstado = document.getElementById('<%= Page.Master.FindControl("ContentPlaceHolder1").FindControl("ddlEstadoPredefinido").ClientID %>'); var estado = opcionesEstado.options[opcionesEstado.selectedIndex].text; -if (nombre!='') -{ - NuevaFila(nombre, idEfector, estado); - document.getElementById('<%= Page.Master.FindControl("ContentPlaceHolder1").FindControl("txtNombreRP").ClientID %>').value = ''; - document.getElementById('<%= Page.Master.FindControl("ContentPlaceHolder1").FindControl("ddlEfectorItemDeriva").ClientID %>').value=''; -} + if (nombre!='') + { + NuevaFila(nombre, idEfector, estado); + document.getElementById('<%= Page.Master.FindControl("ContentPlaceHolder1").FindControl("txtNombreRP").ClientID %>').value = ''; + document.getElementById('<%= Page.Master.FindControl("ContentPlaceHolder1").FindControl("ddlEfectorItemDeriva").ClientID %>').value=''; + } } @@ -1546,54 +1585,54 @@ if (nombre!='') function NuevaFila(nom , efector, estado) { -Grilla = document.getElementById('cuerpo'); - -fila = document.createElement('tr'); - -celdaflecha1= document.createElement('td'); -celdaflecha1.className= "orden"; - -////crea la primera flecha -oFlecha1= document.createElement('img'); -oFlecha1.name= "pru"; -oFlecha1.src="../script/moverfilas/arriba.gif"; -oFlecha1.alt="subir fila"; -////crea la segunda flecha -oFlecha2= document.createElement('img'); -oFlecha2.src="../script/moverfilas/abajo.gif"; -oFlecha2.alt="bajar fila"; - -celdaflecha1.appendChild(oFlecha1); -celdaflecha2= document.createElement('td'); -celdaflecha2.className= "orden"; -celdaflecha2.appendChild(oFlecha2); -fila.appendChild(celdaflecha1); -fila.appendChild(celdaflecha2); - -/////////////////////////////////// -celdaCodigo = document.createElement('td'); -oCodigo = document.createElement('input'); -oCodigo.type = 'text'; -oCodigo.runat = 'server'; -oCodigo.onblur= function () {CargarDatos()}; -oCodigo.className = 'form-control input-sm'; -oCodigo.width = '300px'; -oCodigo.value= nom; - -celdaCodigo.appendChild(oCodigo); -fila.appendChild(celdaCodigo); - /////////////////////////////////// -celdaEfector = document.createElement('td'); -oCodigo1 = document.createElement('input'); -oCodigo1.type = 'text'; -oCodigo1.runat = 'server'; -//oCodigo1.onblur = function () { CargarDatos() }; -oCodigo1.className = 'form-control input-sm'; -oCodigo1.width = '200px'; -oCodigo1.value = (efector == 0) ? "" : efector; - -celdaEfector.appendChild(oCodigo1); -fila.appendChild(celdaEfector); + Grilla = document.getElementById('cuerpo'); + + fila = document.createElement('tr'); + + celdaflecha1= document.createElement('td'); + celdaflecha1.className= "orden"; + + ////crea la primera flecha + oFlecha1= document.createElement('img'); + oFlecha1.name= "pru"; + oFlecha1.src="../script/moverfilas/arriba.gif"; + oFlecha1.alt="subir fila"; + ////crea la segunda flecha + oFlecha2= document.createElement('img'); + oFlecha2.src="../script/moverfilas/abajo.gif"; + oFlecha2.alt="bajar fila"; + + celdaflecha1.appendChild(oFlecha1); + celdaflecha2= document.createElement('td'); + celdaflecha2.className= "orden"; + celdaflecha2.appendChild(oFlecha2); + fila.appendChild(celdaflecha1); + fila.appendChild(celdaflecha2); + + /////////////////////////////////// + celdaCodigo = document.createElement('td'); + oCodigo = document.createElement('input'); + oCodigo.type = 'text'; + oCodigo.runat = 'server'; + oCodigo.onblur= function () {CargarDatos()}; + oCodigo.className = 'form-control input-sm'; + oCodigo.width = '300px'; + oCodigo.value= nom; + + celdaCodigo.appendChild(oCodigo); + fila.appendChild(celdaCodigo); + /////////////////////////////////// + celdaEfector = document.createElement('td'); + oCodigo1 = document.createElement('input'); + oCodigo1.type = 'text'; + oCodigo1.runat = 'server'; + //oCodigo1.onblur = function () { CargarDatos() }; + oCodigo1.className = 'form-control input-sm'; + oCodigo1.width = '200px'; + oCodigo1.value = (efector == 0) ? "" : efector; + + celdaEfector.appendChild(oCodigo1); + fila.appendChild(celdaEfector); ///////////////////// //Estado celdaEstado = document.createElement('td'); @@ -1611,117 +1650,113 @@ fila.appendChild(celdaEfector); - var idEfector = $("#<%= HFEfector.ClientID %>").val(); - if (idEfector == 227) { - celda6 = document.createElement('td'); - celda6.className = "orden"; - celda6.width = "60px"; - oBoton = document.createElement('img'); - // oBoton.name= "pru"; - oBoton.src = "../script/moverfilas/eliminar.gif"; - oBoton.alt = "eliminar fila"; - oBoton.onclick = function () { borrarfila(this, 'cuerpo') }; - celda6.appendChild(oBoton); - fila.appendChild(celda6); - } - + celda6 = document.createElement('td'); + celda6.className = "orden"; + celda6.width = "60px"; + oBoton = document.createElement('img'); + // oBoton.name= "pru"; + oBoton.src = "../script/moverfilas/eliminar.gif"; + oBoton.alt = "eliminar fila"; + oBoton.onclick = function () { borrarfila(this, 'cuerpo') }; + celda6.appendChild(oBoton); + fila.appendChild(celda6); + -Grilla.appendChild(fila); -iniciarTabla('cuerpo'); -CargarDatos(); + Grilla.appendChild(fila); + iniciarTabla('cuerpo'); + CargarDatos(); + MostrarOcultarTitulos(); } function NuevaFilaDiagrama(cod,nom) { -Grilla = document.getElementById('cuerpoDiagrama'); - -fila = document.createElement('tr'); - -celdaflecha1= document.createElement('td'); -celdaflecha1.className= "orden"; - -////crea la primera flecha -oFlecha1= document.createElement('img'); -oFlecha1.name= "pru"; -oFlecha1.src="../script/moverfilas/arriba.gif"; -oFlecha1.alt="subir fila"; -////crea la segunda flecha -oFlecha2= document.createElement('img'); -oFlecha2.src="../script/moverfilas/abajo.gif"; -oFlecha2.alt="bajar fila"; - -celdaflecha1.appendChild(oFlecha1); -celdaflecha2= document.createElement('td'); -celdaflecha2.className= "orden"; -celdaflecha2.appendChild(oFlecha2); -fila.appendChild(celdaflecha1); -fila.appendChild(celdaflecha2); - -/////////////////////////////////// -///celda para el codigo -celdaCodigo = document.createElement('td'); -oCodigo = document.createElement('input'); -oCodigo.type = 'text'; -oCodigo.runat = 'server'; -oCodigo.className = 'textoCorto'; -oCodigo.value= cod; - -celdaCodigo.appendChild(oCodigo); -fila.appendChild(celdaCodigo); -/////////////////////////////////// + Grilla = document.getElementById('cuerpoDiagrama'); + + fila = document.createElement('tr'); + + celdaflecha1= document.createElement('td'); + celdaflecha1.className= "orden"; + + ////crea la primera flecha + oFlecha1= document.createElement('img'); + oFlecha1.name= "pru"; + oFlecha1.src="../script/moverfilas/arriba.gif"; + oFlecha1.alt="subir fila"; + ////crea la segunda flecha + oFlecha2= document.createElement('img'); + oFlecha2.src="../script/moverfilas/abajo.gif"; + oFlecha2.alt="bajar fila"; + + celdaflecha1.appendChild(oFlecha1); + celdaflecha2= document.createElement('td'); + celdaflecha2.className= "orden"; + celdaflecha2.appendChild(oFlecha2); + fila.appendChild(celdaflecha1); + fila.appendChild(celdaflecha2); + + /////////////////////////////////// + ///celda para el codigo + celdaCodigo = document.createElement('td'); + oCodigo = document.createElement('input'); + oCodigo.type = 'text'; + oCodigo.runat = 'server'; + oCodigo.className = 'textoCorto'; + oCodigo.value= cod; + + celdaCodigo.appendChild(oCodigo); + fila.appendChild(celdaCodigo); + /////////////////////////////////// -/////////////////////////////////// -///celda para el NOMBRE -celdaNombre = document.createElement('td'); -oNombre = document.createElement('input'); -oNombre.type = 'text'; -oNombre.runat = 'server'; -oNombre.className = 'textoLargo'; -oNombre.value= nom; + /////////////////////////////////// + ///celda para el NOMBRE + celdaNombre = document.createElement('td'); + oNombre = document.createElement('input'); + oNombre.type = 'text'; + oNombre.runat = 'server'; + oNombre.className = 'textoLargo'; + oNombre.value= nom; -celdaNombre.appendChild(oNombre); -fila.appendChild(celdaNombre); + celdaNombre.appendChild(oNombre); + fila.appendChild(celdaNombre); /////////////////////////////////// - var idEfector = $("#<%= HFEfector.ClientID %>").val(); - if (idEfector == 227) { - celda6 = document.createElement('td'); - celda6.className = "orden"; - celda6.width = "60px"; - oBoton = document.createElement('img'); - // oBoton.name= "pru"; - oBoton.src = "../script/moverfilas/eliminar.gif"; - oBoton.alt = "eliminar fila"; - oBoton.onclick = function () { borrarfila(this, 'cuerpoDiagrama') }; - celda6.appendChild(oBoton); - fila.appendChild(celda6); - } -Grilla.appendChild(fila); -iniciarTabla('cuerpoDiagrama'); -CargarDatosDiagrama(); + celda6 = document.createElement('td'); + celda6.className = "orden"; + celda6.width = "60px"; + oBoton = document.createElement('img'); + // oBoton.name= "pru"; + oBoton.src = "../script/moverfilas/eliminar.gif"; + oBoton.alt = "eliminar fila"; + oBoton.onclick = function () { borrarfila(this, 'cuerpoDiagrama') }; + celda6.appendChild(oBoton); + fila.appendChild(celda6); + + Grilla.appendChild(fila); + iniciarTabla('cuerpoDiagrama'); + CargarDatosDiagrama(); } function CargarDatos() { -var str = ''; -var tab; -var filas; - -tab = document.getElementById('cuerpo'); -filas = tab.getElementsByTagName('tr'); -for (i=0; ele = filas[i]; i++) -{ - var codigo = ele.getElementsByTagName('input')[0].value; - var efector = ele.getElementsByTagName('input')[1].value; - var estado = ele.getElementsByTagName('input')[2].value; - if (codigo!='') - str = str + codigo + '#'+ efector+'#'+estado+ '@'; -} -document.getElementById('<%= Page.Master.FindControl("ContentPlaceHolder1").FindControl("TxtDatosResultados").ClientID %>').value = str; + var str = ''; + var tab; + var filas; + + tab = document.getElementById('cuerpo'); + filas = tab.getElementsByTagName('tr'); + for (i=0; ele = filas[i]; i++) + { + var codigo = ele.getElementsByTagName('input')[0].value; + var efector = ele.getElementsByTagName('input')[1].value; + var estado = ele.getElementsByTagName('input')[2].value; + if (codigo!='') + str = str + codigo + '#'+ efector+'#'+estado+ '@'; + } + document.getElementById('<%= Page.Master.FindControl("ContentPlaceHolder1").FindControl("TxtDatosResultados").ClientID %>').value = str; } @@ -1756,9 +1791,7 @@ function CargarDetalle() { } } } - var tResultados = document.getElementById("tabla"); - - tResultados.style.display = (datos != "") ? "" : "none"; //si no hay datos que no salgan los encabezados + MostrarOcultarTitulos(); } function CargarDetalleDiagrama() @@ -1822,9 +1855,43 @@ if (confirm('¿Está seguro de eliminar el registro?')) return true; else return false; + } + +function MostrarOcultarTitulos() { + var datos = document.getElementById('<%= Page.Master.FindControl("ContentPlaceHolder1").FindControl("TxtDatosResultados").ClientID %>').value; + + var tResultados = document.getElementById("tablaTitulos"); + + tResultados.style.display = (datos != "") ? "" : "none"; //si no hay datos que no salgan los encabezados + AlinearTitulos(); } +function AlinearTitulos() { + var fila = document.querySelector("#cuerpo tr"); + if (!fila) return; + var titulos = document.querySelector("#tablaTitulos tr").cells; + var celdas = fila.cells; + + // El primer td del título tiene colspan=2 + titulos[0].style.width = (celdas[0].offsetWidth + celdas[1].offsetWidth) + "px"; + titulos[1].style.width = celdas[2].offsetWidth + "px"; + titulos[2].style.width = celdas[3].offsetWidth + "px"; + titulos[3].style.width = celdas[4].offsetWidth + "px"; + + if (celdas.length > 5) titulos[4].style.width = celdas[5].offsetWidth + "px"; +} + +//si borro todas las filas de Resultados Predefinidos quiero que se oculten sus titulos +var _borrarfila = borrarfila; + +borrarfila = function (obj, cuerpo) { + _borrarfila(obj, cuerpo); + + if (cuerpo == "cuerpo") { + MostrarOcultarTitulos(); + } + }; = 2) //si no es numerico muestra los predefinidos MostrarDatosResultadosPredefinidos(oItem); + else + { + tResultadoDefecto.Visible = false; + lblResultadosPredefinidos.Visible = true; + lblResultadosPredefinidos.Text = "La determinacion no tiene resultados de tipo Predefinidos"; + } + MostrarDatosRecomendaciones(); btnGuardarLimiteTurno.Enabled = true; } @@ -173,8 +182,23 @@ private void HabilitarDatos() gvListaVR.Columns[7].Visible = false; //efectores no puedan eliminar valores de referencia de la grilla NO pacientes gvListaVRNP.Columns[5].Visible = false; + + //Efectores no ven la grilla dinamica de Resultados Predefinidos, ven su propia grilla en un nuevo panel + pnlPredefinidosEfector.Visible = true; + pnlPredefinidos.Visible = false; + //Efectores no ven la grilla dinamica de Diagramas, ven su propia grilla en un nuevo panel + pnlDiagrama.Visible = false; + pnlDiagramaEfector.Visible = true; } + else + { + //Para usuario administrador muestro el panel para agregar Resultados Predefinidos, sino muestro grilla de consulta + pnlPredefinidosEfector.Visible = false; + pnlPredefinidos.Visible = true; + pnlDiagrama.Visible = true; + pnlDiagramaEfector.Visible = false; + } } @@ -335,53 +359,64 @@ protected void gvListaRecomendacion_RowDataBound(object sender, GridViewRowEvent ///******************************************Inicio de Resultados Predefinidos***************************************************// private void MostrarDatosResultadosPredefinidos(Item oItem) { - - if (oItem != null) + CargarListasRPDefecto(); //Para todos los usuarios cargo el combo donde se eligie que resultado es por defecto + + if (pnlPredefinidos.Visible) //23.07.26- Usuario Admin: Cargo la grilla dinamica que permite agregar/borrar/subir/bajar resultados predefinidos { - //lblItem.Text = oItem.Codigo + " - " + oItem.Nombre; - Efector oEfector = new Efector(); - oEfector = (Efector)oEfector.Get(typeof(Efector), int.Parse(Request["idEfector"].ToString())); - if (oEfector != null) + if (oItem != null) { - CargarListasRPDefecto(); - - - // dtDeterminaciones = (System.Data.DataTable)(Session["Tabla1"]); - //ResultadoItem oDetalle = new ResultadoItem(); - ISession m_session = NHibernateHttpModule.CurrentSession; - ICriteria crit = m_session.CreateCriteria(typeof(ResultadoItem)); - crit.Add(Expression.Eq("IdItem", oItem)); - crit.Add(Expression.Eq("Baja", false)); - crit.Add(Expression.Eq("IdEfector", oEfector)); + + Efector oEfector = new Efector(); + oEfector = (Efector)oEfector.Get(typeof(Efector), int.Parse(Request["idEfector"].ToString())); + if (oEfector != null) + { + ISession m_session = NHibernateHttpModule.CurrentSession; + ICriteria crit = m_session.CreateCriteria(typeof(ResultadoItem)); + crit.Add(Expression.Eq("IdItem", oItem)); + crit.Add(Expression.Eq("Baja", false)); + crit.Add(Expression.Eq("IdEfector", oEfector)); - string sDatos = ""; - IList items = crit.List(); + string sDatos = ""; + IList items = crit.List(); - foreach (ResultadoItem oDet in items) - { - string efe = "0"; - if (oDet.IdEfectorDeriva > 0) + foreach (ResultadoItem oDet in items) { - Efector oEfectorDer = new Efector(); - oEfectorDer = (Efector)oEfectorDer.Get(typeof(Efector), oDet.IdEfectorDeriva); - efe = oEfectorDer.Nombre + "-" + oEfectorDer.IdEfector.ToString(); + string efe = "0"; + if (oDet.IdEfectorDeriva > 0) + { + Efector oEfectorDer = new Efector(); + oEfectorDer = (Efector)oEfectorDer.Get(typeof(Efector), oDet.IdEfectorDeriva); + efe = oEfectorDer.Nombre + "-" + oEfectorDer.IdEfector.ToString(); + } + + if (sDatos == "") + sDatos = oDet.Resultado + "#" + efe + "#" + (oDet.EstadoValidacion == "D" ? "Definitivo" : "Preliminar") + "@"; + else + sDatos += oDet.Resultado + "#" + efe + "#" + (oDet.EstadoValidacion == "D" ? "Definitivo" : "Preliminar") + "@"; + + if (oDet.ResultadoDefecto) + ddlResultadoPorDefecto.SelectedValue = oDet.IdResultadoItem.ToString(); } - if (sDatos == "") - sDatos = oDet.Resultado + "#" + efe + "#" + (oDet.EstadoValidacion == "D" ? "Definitivo" : "Preliminar") + "@"; - else - sDatos += oDet.Resultado + "#" + efe + "#" + (oDet.EstadoValidacion == "D" ? "Definitivo" : "Preliminar") + "@"; + TxtDatosResultados.Value = sDatos; - if (oDet.ResultadoDefecto) - ddlResultadoPorDefecto.SelectedValue = oDet.IdResultadoItem.ToString(); - } + if (Request["idEfector"].ToString() != "227") + { + if (ddlResultadoPorDefecto.Items.Count == 0) + { + tResultadoDefecto.Visible = false; - TxtDatosResultados.Value = sDatos; - // LeerDatosRP(); - //CargarListasRPDefecto(); - //ddlResultadoPorDefecto.SelectedValue = oItem.IdResultadoPorDefecto.ToString(); + } + } + + } } } + else //23.07.26 - Usuario Efector: cargo una grilla de solo lectura + { + gvResultadosPredefinidos.DataSource = LeerDatosRP(); + gvResultadosPredefinidos.DataBind(); + } } @@ -394,23 +429,21 @@ private void CargarGrillaRP() //gvLista.DataBind(); } - //private object LeerDatosRP() - //{ - // string m_strSQL = " SELECT idResultadoItem, resultado" + - // " FROM LAB_ResultadoItem " + - // " WHERE (baja = 0) and idItem=" + Request["id"].ToString() + - // " ORDER BY idResultadoItem"; // SE PONE EL ORDEN EN QUE SE FUE AGREGANDO - - // DataSet Ds = new DataSet(); - // SqlConnection conn = (SqlConnection)NHibernateHttpModule.CurrentSession.Connection; - // SqlDataAdapter adapter = new SqlDataAdapter(); - // adapter.SelectCommand = new SqlCommand(m_strSQL, conn); - // adapter.Fill(Ds); - - + private object LeerDatosRP() + { + string m_strSQL = " SELECT idResultadoItem, resultado, isnull(e.nombre,'') as efectorDeriva,case when estadoValidacion = 'D' then 'Definitivo' else 'Preliminar' end as Estado " + + " FROM LAB_ResultadoItem rI with (nolock) " + + " LEFT JOIN Sys_efector e with (nolock) ON e.idEfector=rI.idEfectorDeriva "+ + " WHERE (baja = 0) and idItem=" + Request["id"].ToString() + " and rI.idEfector = " + Request["idEfector"].ToString() + + " ORDER BY idResultadoItem"; // SE PONE EL ORDEN EN QUE SE FUE AGREGANDO - // return Ds.Tables[0]; - //} + DataSet Ds = new DataSet(); + SqlConnection conn = (SqlConnection)NHibernateHttpModule.CurrentSession.Connection; + SqlDataAdapter adapter = new SqlDataAdapter(); + adapter.SelectCommand = new SqlCommand(m_strSQL, conn); + adapter.Fill(Ds); + return Ds.Tables[0]; + } //protected void btnAgregar_Click(object sender, EventArgs e) //{ @@ -549,7 +582,7 @@ private void GuardarRPTodoslosEfectores(Item oItem) oRegistro.IdUsuarioRegistro = oUser; oRegistro.FechaRegistro = DateTime.Now; - + oRegistro.EstadoValidacion = oDetNew.EstadoValidacion; oRegistro.Save(); } @@ -560,11 +593,10 @@ private void CargarListasRPDefecto() { Utility oUtil = new Utility(); string m_ssql = @"select idResultadoItem, resultado as nombre -from Lab_ResultadoItem with (nolock) where baja=0 and idItem= " + Request["id"].ToString() + " and idEfector=" + Request["idEfector"].ToString() + " order by idResultadoItem"; + from Lab_ResultadoItem with (nolock) where baja=0 and idItem= " + Request["id"].ToString() + " and idEfector=" + Request["idEfector"].ToString() + " order by idResultadoItem"; oUtil.CargarCombo(ddlResultadoPorDefecto, m_ssql, "idResultadoItem", "nombre"); ddlResultadoPorDefecto.Items.Insert(0, new ListItem(" ", "0")); ddlResultadoPorDefecto.UpdateAfterCallBack = true; - //ViewState["resultadosPorDefecto"] = ddlResultadoPorDefecto.DataSource; } //////////////////////////////*****************///Fin de Resultados Predefinidos*************************************// /// @@ -576,52 +608,54 @@ private void CargarListasRPDefecto() /// private void MostrarDatosDiagrama() { - txtCodigoDiagrama.Text = ""; - // ddlItemDiagrama.SelectedValue = "0"; - txtNombreDiagrama.Text = ""; - // txtTitulo.Text = ""; - - //gvListaDiagrama.AutoGenerateColumns = false; - //gvListaDiagrama.DataSource = LeerDatosDiagrama(); - //gvListaDiagrama.DataBind(); - Item oItem = new Item(); - oItem = (Item)oItem.Get(typeof(Item), int.Parse(Request["id"].ToString())); - //lblItem.Text = oItem.Codigo + " - " + oItem.Nombre; - - Efector oEfector = new Efector(); - oEfector = (Efector)oEfector.Get(typeof(Efector), int.Parse(Request["idEfector"].ToString())); - + if (pnlDiagrama.Visible) //23.07.26 - Usuario administrador: cargo grilla dinamica + { + txtCodigoDiagrama.Text = ""; + // ddlItemDiagrama.SelectedValue = "0"; + txtNombreDiagrama.Text = ""; + // txtTitulo.Text = ""; - // dtDeterminaciones = (System.Data.DataTable)(Session["Tabla1"]); - ResultadoItem oDetalle = new ResultadoItem(); - ISession m_session = NHibernateHttpModule.CurrentSession; - ICriteria crit = m_session.CreateCriteria(typeof(PracticaDeterminacion)); - crit.Add(Expression.Eq("IdItemPractica", oItem)); - crit.Add(Expression.Eq("IdEfector", oEfector)); - crit.Add(Expression.Eq("Orden", 1)); + //gvListaDiagrama.AutoGenerateColumns = false; + //gvListaDiagrama.DataSource = LeerDatosDiagrama(); + //gvListaDiagrama.DataBind(); + Item oItem = new Item(); + oItem = (Item)oItem.Get(typeof(Item), int.Parse(Request["id"].ToString())); + //lblItem.Text = oItem.Codigo + " - " + oItem.Nombre; - string sDatos = ""; - IList items = crit.List(); + Efector oEfector = new Efector(); + oEfector = (Efector)oEfector.Get(typeof(Efector), int.Parse(Request["idEfector"].ToString())); - foreach (PracticaDeterminacion oDet in items) - { - Item oItemDeterminacion = new Item(); - oItemDeterminacion = (Item)oItemDeterminacion.Get(typeof(Item), oDet.IdItemDeterminacion); - if (sDatos == "") - sDatos = oItemDeterminacion.Codigo + "#" + oDet.Titulo + "@"; - else - sDatos += oItemDeterminacion.Codigo + "#" + oDet.Titulo + "@"; + // dtDeterminaciones = (System.Data.DataTable)(Session["Tabla1"]); + ResultadoItem oDetalle = new ResultadoItem(); + ISession m_session = NHibernateHttpModule.CurrentSession; + ICriteria crit = m_session.CreateCriteria(typeof(PracticaDeterminacion)); + crit.Add(Expression.Eq("IdItemPractica", oItem)); + crit.Add(Expression.Eq("IdEfector", oEfector)); + crit.Add(Expression.Eq("Orden", 1)); - } + string sDatos = ""; + IList items = crit.List(); - TxtDatosDiagrama.Value = sDatos; - //LeerDatosRP(); - //CargarListasRPDefecto(); - //ddlResultadoPorDefecto.SelectedValue = oItem.IdResultadoPorDefecto.ToString(); + foreach (PracticaDeterminacion oDet in items) + { + Item oItemDeterminacion = new Item(); + oItemDeterminacion = (Item)oItemDeterminacion.Get(typeof(Item), oDet.IdItemDeterminacion); + if (sDatos == "") + sDatos = oItemDeterminacion.Codigo + "#" + oDet.Titulo + "@"; + else + sDatos += oItemDeterminacion.Codigo + "#" + oDet.Titulo + "@"; + } + TxtDatosDiagrama.Value = sDatos; + } + else + { //23.07.26 usuario efector: muestro una grilla de solo lectura + gvDiagrama.DataSource = LeerDatosDiagrama(); + gvDiagrama.DataBind(); + } } @@ -714,26 +748,26 @@ private void GuardarDiagramaTodoslosEfectores(Item oItem) { } } - //private object LeerDatosDiagrama() - //{ - // string m_strSQL = " SELECT PD.idPracticaDeterminacion as idDiagrama, " + - // " CASE WHEN PD.iditemdeterminacion = 0 THEN PD.titulo ELSE I.codigo + ' - ' + I.nombre END AS nombre," + - // " PD.titulo as textoimprimir" + - // " FROM LAB_PracticaDeterminacion AS PD " + - // " left JOIN LAB_Item AS I ON PD.idItemDeterminacion = I.idItem" + - // " WHERE PD.iditempractica=" + Request["id"].ToString() + - // " ORDER BY PD.idPracticaDeterminacion"; // SE PONE EL ORDEN EN QUE SE FUE AGREGANDO + private object LeerDatosDiagrama() + { + string m_strSQL = " SELECT PD.idPracticaDeterminacion as idDiagrama, " + + " CASE WHEN PD.iditemdeterminacion = 0 THEN PD.titulo ELSE I.codigo END AS nombre," + + " PD.titulo as textoimprimir" + + " FROM LAB_PracticaDeterminacion AS PD " + + " left JOIN LAB_Item AS I ON PD.idItemDeterminacion = I.idItem" + + " WHERE PD.iditempractica=" + Request["id"].ToString() + " and PD.IdEfector = " + Request["idEfector"].ToString() + + " ORDER BY PD.idPracticaDeterminacion"; // SE PONE EL ORDEN EN QUE SE FUE AGREGANDO - // DataSet Ds = new DataSet(); - // SqlConnection conn = (SqlConnection)NHibernateHttpModule.CurrentSession.Connection; - // SqlDataAdapter adapter = new SqlDataAdapter(); - // adapter.SelectCommand = new SqlCommand(m_strSQL, conn); - // adapter.Fill(Ds); + DataSet Ds = new DataSet(); + SqlConnection conn = (SqlConnection)NHibernateHttpModule.CurrentSession.Connection; + SqlDataAdapter adapter = new SqlDataAdapter(); + adapter.SelectCommand = new SqlCommand(m_strSQL, conn); + adapter.Fill(Ds); - // return Ds.Tables[0]; - //} + return Ds.Tables[0]; + } @@ -1787,7 +1821,6 @@ private void MostrarDatos(Item oItem) txtCodigoNomenclador.Text = oItem.CodigoNomenclador; MostrarItemNomenclador(); - if (oItem.IdTipoResultado == 0) /// compuesta { pnlVR.Enabled = false; diff --git a/WebLab/Items/ItemEdit2.aspx.designer.cs b/WebLab/Items/ItemEdit2.aspx.designer.cs index 4299f639..72ec309b 100644 --- a/WebLab/Items/ItemEdit2.aspx.designer.cs +++ b/WebLab/Items/ItemEdit2.aspx.designer.cs @@ -1022,6 +1022,24 @@ public partial class ItemEdit2 /// protected global::System.Web.UI.WebControls.Button btnGuardarDiagrama; + /// + /// pnlDiagramaEfector control. + /// + /// + /// Auto-generated field. + /// To modify move field declaration from designer file to code-behind file. + /// + protected global::System.Web.UI.WebControls.Panel pnlDiagramaEfector; + + /// + /// gvDiagrama control. + /// + /// + /// Auto-generated field. + /// To modify move field declaration from designer file to code-behind file. + /// + protected global::System.Web.UI.WebControls.GridView gvDiagrama; + /// /// pnlPredefinidos control. /// @@ -1094,6 +1112,42 @@ public partial class ItemEdit2 /// protected global::System.Web.UI.HtmlControls.HtmlInputHidden TxtDatosResultados; + /// + /// pnlPredefinidosEfector control. + /// + /// + /// Auto-generated field. + /// To modify move field declaration from designer file to code-behind file. + /// + protected global::System.Web.UI.WebControls.Panel pnlPredefinidosEfector; + + /// + /// lblResultadosPredefinidos control. + /// + /// + /// Auto-generated field. + /// To modify move field declaration from designer file to code-behind file. + /// + protected global::System.Web.UI.WebControls.Label lblResultadosPredefinidos; + + /// + /// gvResultadosPredefinidos control. + /// + /// + /// Auto-generated field. + /// To modify move field declaration from designer file to code-behind file. + /// + protected global::System.Web.UI.WebControls.GridView gvResultadosPredefinidos; + + /// + /// tResultadoDefecto control. + /// + /// + /// Auto-generated field. + /// To modify move field declaration from designer file to code-behind file. + /// + protected global::System.Web.UI.HtmlControls.HtmlTable tResultadoDefecto; + /// /// ddlResultadoPorDefecto control. /// From eb62d4be51595162b2d86e72dd31dcd19a86d297 Mon Sep 17 00:00:00 2001 From: Vanesa Rimada <80859025+vrimada@users.noreply.github.com> Date: Fri, 24 Jul 2026 14:23:45 -0300 Subject: [PATCH 3/7] mejora: carteles cuando no carga diagramas o resultados predefinidos --- WebLab/Items/ItemEdit2.aspx | 79 +++++++------------------ WebLab/Items/ItemEdit2.aspx.cs | 16 ++--- WebLab/Items/ItemEdit2.aspx.designer.cs | 17 ++++-- 3 files changed, 41 insertions(+), 71 deletions(-) diff --git a/WebLab/Items/ItemEdit2.aspx b/WebLab/Items/ItemEdit2.aspx index 3f8166e7..9195568c 100644 --- a/WebLab/Items/ItemEdit2.aspx +++ b/WebLab/Items/ItemEdit2.aspx @@ -1117,6 +1117,8 @@ + + @@ -1174,17 +1176,16 @@
    Resultado por Defecto:
    --%> - - - - - - - - - -
     Resultado Predefinido Efector DerivanteEstado 
    + + + + + + + + +
     Resultado PredefinidoEfector DerivanteEstado 
    @@ -1196,13 +1197,12 @@ - + + + - +
    - - - -  
    +
    @@ -1229,7 +1229,6 @@

    Resultados Predefinidos

    - @@ -1248,6 +1247,8 @@
    + +
    @@ -1616,7 +1617,7 @@ function NuevaFila(nom , efector, estado) oCodigo.runat = 'server'; oCodigo.onblur= function () {CargarDatos()}; oCodigo.className = 'form-control input-sm'; - oCodigo.width = '300px'; + oCodigo.style.width = '300px'; oCodigo.value= nom; celdaCodigo.appendChild(oCodigo); @@ -1628,7 +1629,7 @@ function NuevaFila(nom , efector, estado) oCodigo1.runat = 'server'; //oCodigo1.onblur = function () { CargarDatos() }; oCodigo1.className = 'form-control input-sm'; - oCodigo1.width = '200px'; + oCodigo1.style.width = '300px'; oCodigo1.value = (efector == 0) ? "" : efector; celdaEfector.appendChild(oCodigo1); @@ -1640,7 +1641,7 @@ function NuevaFila(nom , efector, estado) oEstado.type = 'text'; oEstado.runat = 'server'; oEstado.className = 'form-control input-sm'; - oEstado.width = '200px'; + oEstado.style.width = '100px'; oEstado.value = estado; celdaEstado.appendChild(oEstado); @@ -1652,7 +1653,7 @@ function NuevaFila(nom , efector, estado) celda6 = document.createElement('td'); celda6.className = "orden"; - celda6.width = "60px"; + celda6.style.width = "60px"; oBoton = document.createElement('img'); // oBoton.name= "pru"; oBoton.src = "../script/moverfilas/eliminar.gif"; @@ -1667,7 +1668,6 @@ function NuevaFila(nom , efector, estado) iniciarTabla('cuerpo'); CargarDatos(); - MostrarOcultarTitulos(); } @@ -1791,7 +1791,6 @@ function CargarDetalle() { } } } - MostrarOcultarTitulos(); } function CargarDetalleDiagrama() @@ -1857,41 +1856,7 @@ else return false; } -function MostrarOcultarTitulos() { - var datos = document.getElementById('<%= Page.Master.FindControl("ContentPlaceHolder1").FindControl("TxtDatosResultados").ClientID %>').value; - - var tResultados = document.getElementById("tablaTitulos"); - - tResultados.style.display = (datos != "") ? "" : "none"; //si no hay datos que no salgan los encabezados - AlinearTitulos(); -} - -function AlinearTitulos() { - var fila = document.querySelector("#cuerpo tr"); - if (!fila) return; - - var titulos = document.querySelector("#tablaTitulos tr").cells; - var celdas = fila.cells; - // El primer td del título tiene colspan=2 - titulos[0].style.width = (celdas[0].offsetWidth + celdas[1].offsetWidth) + "px"; - titulos[1].style.width = celdas[2].offsetWidth + "px"; - titulos[2].style.width = celdas[3].offsetWidth + "px"; - titulos[3].style.width = celdas[4].offsetWidth + "px"; - - if (celdas.length > 5) titulos[4].style.width = celdas[5].offsetWidth + "px"; -} - -//si borro todas las filas de Resultados Predefinidos quiero que se oculten sus titulos -var _borrarfila = borrarfila; - -borrarfila = function (obj, cuerpo) { - _borrarfila(obj, cuerpo); - - if (cuerpo == "cuerpo") { - MostrarOcultarTitulos(); - } - }; = 2) //si no es numerico muestra los predefinidos MostrarDatosResultadosPredefinidos(oItem); @@ -90,7 +92,6 @@ protected void Page_Load(object sender, EventArgs e) { tResultadoDefecto.Visible = false; lblResultadosPredefinidos.Visible = true; - lblResultadosPredefinidos.Text = "La determinacion no tiene resultados de tipo Predefinidos"; } MostrarDatosRecomendaciones(); @@ -400,20 +401,15 @@ private void MostrarDatosResultadosPredefinidos(Item oItem) TxtDatosResultados.Value = sDatos; - if (Request["idEfector"].ToString() != "227") - { - if (ddlResultadoPorDefecto.Items.Count == 0) - { - tResultadoDefecto.Visible = false; - - } - } - } } } else //23.07.26 - Usuario Efector: cargo una grilla de solo lectura { + if (ddlResultadoPorDefecto.Items.Count == 1) + tResultadoDefecto.Visible = false; + + gvResultadosPredefinidos.DataSource = LeerDatosRP(); gvResultadosPredefinidos.DataBind(); } diff --git a/WebLab/Items/ItemEdit2.aspx.designer.cs b/WebLab/Items/ItemEdit2.aspx.designer.cs index 72ec309b..0a6bbfc3 100644 --- a/WebLab/Items/ItemEdit2.aspx.designer.cs +++ b/WebLab/Items/ItemEdit2.aspx.designer.cs @@ -1040,6 +1040,15 @@ public partial class ItemEdit2 /// protected global::System.Web.UI.WebControls.GridView gvDiagrama; + /// + /// lblDiagrama control. + /// + /// + /// Auto-generated field. + /// To modify move field declaration from designer file to code-behind file. + /// + protected global::System.Web.UI.WebControls.Label lblDiagrama; + /// /// pnlPredefinidos control. /// @@ -1122,22 +1131,22 @@ public partial class ItemEdit2 protected global::System.Web.UI.WebControls.Panel pnlPredefinidosEfector; /// - /// lblResultadosPredefinidos control. + /// gvResultadosPredefinidos control. /// /// /// Auto-generated field. /// To modify move field declaration from designer file to code-behind file. /// - protected global::System.Web.UI.WebControls.Label lblResultadosPredefinidos; + protected global::System.Web.UI.WebControls.GridView gvResultadosPredefinidos; /// - /// gvResultadosPredefinidos control. + /// lblResultadosPredefinidos control. /// /// /// Auto-generated field. /// To modify move field declaration from designer file to code-behind file. /// - protected global::System.Web.UI.WebControls.GridView gvResultadosPredefinidos; + protected global::System.Web.UI.WebControls.Label lblResultadosPredefinidos; /// /// tResultadoDefecto control. From 1151e6cad65dd78b2492289c791a1a518543cdf7 Mon Sep 17 00:00:00 2001 From: Vanesa Rimada <80859025+vrimada@users.noreply.github.com> Date: Thu, 30 Jul 2026 09:37:31 -0300 Subject: [PATCH 4/7] fix: sin label, el carltel que no hay items lo pone el drig vacio --- WebLab/Items/ItemEdit2.aspx | 4 +--- WebLab/Items/ItemEdit2.aspx.cs | 14 +++++++++----- WebLab/Items/ItemEdit2.aspx.designer.cs | 18 ------------------ 3 files changed, 10 insertions(+), 26 deletions(-) diff --git a/WebLab/Items/ItemEdit2.aspx b/WebLab/Items/ItemEdit2.aspx index 9195568c..9f0b9096 100644 --- a/WebLab/Items/ItemEdit2.aspx +++ b/WebLab/Items/ItemEdit2.aspx @@ -1117,8 +1117,7 @@ - - + @@ -1247,7 +1246,6 @@ - diff --git a/WebLab/Items/ItemEdit2.aspx.cs b/WebLab/Items/ItemEdit2.aspx.cs index 937bcfb1..8dd550c6 100644 --- a/WebLab/Items/ItemEdit2.aspx.cs +++ b/WebLab/Items/ItemEdit2.aspx.cs @@ -80,18 +80,22 @@ protected void Page_Load(object sender, EventArgs e) MostrarDatos(oItem); HabilitarDatos(); if (oItem.IdTipoResultado != 0) MostrarDatosValoresReferencia(); - - if ((oItem.Tipo=="P") && (oItem.IdTipoResultado ==0)) + + if ((oItem.Tipo == "P") && (oItem.IdTipoResultado == 0)) MostrarDatosDiagrama(); else - lblDiagrama.Visible = true; + { + gvDiagrama.DataSource = null; + gvDiagrama.DataBind(); + } if (oItem.IdTipoResultado >= 2) //si no es numerico muestra los predefinidos MostrarDatosResultadosPredefinidos(oItem); else { - tResultadoDefecto.Visible = false; - lblResultadosPredefinidos.Visible = true; + tResultadoDefecto.Visible = false; + gvResultadosPredefinidos.DataSource = null; + gvResultadosPredefinidos.DataBind(); } MostrarDatosRecomendaciones(); diff --git a/WebLab/Items/ItemEdit2.aspx.designer.cs b/WebLab/Items/ItemEdit2.aspx.designer.cs index 0a6bbfc3..dae9c70f 100644 --- a/WebLab/Items/ItemEdit2.aspx.designer.cs +++ b/WebLab/Items/ItemEdit2.aspx.designer.cs @@ -1040,15 +1040,6 @@ public partial class ItemEdit2 /// protected global::System.Web.UI.WebControls.GridView gvDiagrama; - /// - /// lblDiagrama control. - /// - /// - /// Auto-generated field. - /// To modify move field declaration from designer file to code-behind file. - /// - protected global::System.Web.UI.WebControls.Label lblDiagrama; - /// /// pnlPredefinidos control. /// @@ -1139,15 +1130,6 @@ public partial class ItemEdit2 /// protected global::System.Web.UI.WebControls.GridView gvResultadosPredefinidos; - /// - /// lblResultadosPredefinidos control. - /// - /// - /// Auto-generated field. - /// To modify move field declaration from designer file to code-behind file. - /// - protected global::System.Web.UI.WebControls.Label lblResultadosPredefinidos; - /// /// tResultadoDefecto control. /// From 722be08be22ebed911fa18faa4b482ef596c791b Mon Sep 17 00:00:00 2001 From: Vanesa Rimada <80859025+vrimada@users.noreply.github.com> Date: Thu, 30 Jul 2026 13:49:34 -0300 Subject: [PATCH 5/7] fix: solo guardar desde el btn de limite el limite del analisis cuando se da turnos --- WebLab/Items/ItemEdit2.aspx.cs | 5 +---- 1 file changed, 1 insertion(+), 4 deletions(-) diff --git a/WebLab/Items/ItemEdit2.aspx.cs b/WebLab/Items/ItemEdit2.aspx.cs index 8dd550c6..07e83ed2 100644 --- a/WebLab/Items/ItemEdit2.aspx.cs +++ b/WebLab/Items/ItemEdit2.aspx.cs @@ -2438,8 +2438,7 @@ private void Guardar(Item oRegistro, string m_accion) oReg.ResultadoDefecto = txtValorDefecto.Text; oReg.Save(); - - GuardarLimiteTurno(oReg.IdItem.IdItem, m_accion); + // GuardarLimiteTurno(oReg.IdItem.IdItem, m_accion); 30.07.2026 guardar solo del btn de turnos } @@ -3449,8 +3448,6 @@ private void GuardarLimiteTurno(int id, string accion) // // 1. Efector distinto a Nivel Central: // - Se permite guardar desde el tab - // "Datos Generales". - // - Se permite guardar desde el tab // "Turnos". // // 2. Efector Nivel Central: From 87a2d3dcaa6591ed3810052eb1fd0f1e119c54b2 Mon Sep 17 00:00:00 2001 From: Vanesa Rimada <80859025+vrimada@users.noreply.github.com> Date: Tue, 4 Aug 2026 08:49:37 -0300 Subject: [PATCH 6/7] fix: cambio de nombre de headers de predefinidos --- WebLab/Items/ItemEdit2.aspx | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/WebLab/Items/ItemEdit2.aspx b/WebLab/Items/ItemEdit2.aspx index 9f0b9096..d0328ecb 100644 --- a/WebLab/Items/ItemEdit2.aspx +++ b/WebLab/Items/ItemEdit2.aspx @@ -1234,8 +1234,8 @@ - - + + From 28630cb0cb1ad3bda587dbdda8800161b6084f2e Mon Sep 17 00:00:00 2001 From: Vanesa Rimada <80859025+vrimada@users.noreply.github.com> Date: Tue, 4 Aug 2026 08:57:22 -0300 Subject: [PATCH 7/7] Delete .github/workflows/label02_has_conflicts.yaml --- .github/workflows/label02_has_conflicts.yaml | 84 -------------------- 1 file changed, 84 deletions(-) delete mode 100644 .github/workflows/label02_has_conflicts.yaml diff --git a/.github/workflows/label02_has_conflicts.yaml b/.github/workflows/label02_has_conflicts.yaml deleted file mode 100644 index 5f08c0d3..00000000 --- a/.github/workflows/label02_has_conflicts.yaml +++ /dev/null @@ -1,84 +0,0 @@ -name: PR conflict label - -on: - pull_request: - types: [opened, synchronize, reopened] - push: - branches: [master] - -permissions: - pull-requests: write - issues: write - contents: read - -jobs: - conflicts: - runs-on: ubuntu-latest - steps: - - name: Check conflicts - uses: actions/github-script@v7 - with: - script: | - const { owner, repo } = context.repo; - - async function checkPR(pr) { - let data; - let retries = 5; - const issue_number = pr.number; - - while (retries > 0) { - const response = await github.rest.pulls.get({ - owner, - repo, - pull_number: issue_number - }); - data = response.data; - console.log(`PR #${issue_number} - mergeable: ${data.mergeable}, state: ${data.mergeable_state}`); - - // Si mergeable es null, GitHub aún está calculando - if (data.mergeable !== null) break; - - await new Promise(r => setTimeout(r, 5000)); - retries--; - } - - // Usamos mergeable === false para detectar conflictos reales - if (data.mergeable === false) { - console.log(`Adding "Conflictos" label to PR #${issue_number}`); - await github.rest.issues.addLabels({ - owner, - repo, - issue_number, - labels: ['Conflictos'] - }); - } else if (data.mergeable === true) { - console.log(`Removing "Conflictos" label from PR #${issue_number} (if exists)`); - try { - await github.rest.issues.removeLabel({ - owner, - repo, - issue_number, - name: 'Conflictos' - }); - } catch (e) { - // label no existía - } - } - } - - if (context.eventName === 'pull_request') { - await checkPR(context.payload.pull_request); - } - - if (context.eventName === 'push') { - const { data: prs } = await github.rest.pulls.list({ - owner, - repo, - state: 'open', - base: 'master' - }); - - for (const pr of prs) { - await checkPR(pr); - } - }