/// <summary> /// Descripción: Action que identifica una orden lista para el ingreso de resultados. /// Author: Sotero Bustamante. /// Fecha Creacion: 21/10/2017 /// Fecha Modificación: 21/10/2017. /// Modificación: Se creo funcion para agregar Resultados bandeja de Verificador. /// </summary> /// <param name="id"></param> /// <returns></returns> public ActionResult SeleccionarAPVerificador(Guid id) { IngresoResultadosBl ordenBl = new IngresoResultadosBl(); OrdenIngresarResultadoVd orden = ordenBl.GetAreaProcesamientoOrdenUsuario(id, Logueado.idUsuario, EstablecimientoSeleccionado.IdEstablecimiento); return(PartialView("SeleccionarAPVerificador", orden)); }
/// <summary> /// Descripción: Action que solicita orden para el ingreso de resultados. /// Author: Sotero Bustamante. /// Fecha Creacion: 21/10/2017 /// Fecha Modificación: 21/10/2017. /// Modificación: Se creo funcion para agregar Resultados bandeja de Verificador. /// </summary> /// <param name="id"></param> /// <returns></returns> public ActionResult SolicitaAUVerificador(Guid id, int estatusSol) { try { IngresoResultadosBl ordenBl = new IngresoResultadosBl(); ordenBl.SolicitaIngresoNvoResultados(id, Logueado.idUsuario, estatusSol); var liberador = ObtenerDatosUsuarioLiberador(id.ToString()); if (liberador.Celular != "") { var sendSms = new EnvioCorreo(); string send = sendSms.NewSendAlertaPaciente(liberador.Celular, liberador.mensaje); } } catch (Exception ex) { throw ex; } return(RedirectToAction("Index")); }
/// <summary> /// Descripción: Action que identifica una orden lista para el ingreso de resultados. /// Author: Sotero Bustamante. /// Fecha Creacion: 21/10/2017 /// Fecha Modificación: 21/10/2017. /// Modificación: Se creo funcion para agregar Resultados bandeja de Verificador. /// </summary> /// <param name="id"></param> /// <param name="idArea"></param> /// <returns></returns> public ActionResult IngresarResultadosVerificador(Guid id, Guid idOrdenExamen, int idArea) { var ordenBl = new IngresoResultadosBl(); var orden = ordenBl.DatosOrden(id); var idEstablecimiento = EstablecimientoSeleccionado.IdEstablecimiento; var examenes = ordenBl.ExamenesResultadosAnalito(id, idOrdenExamen, idArea, Logueado.idUsuario, orden.EdadAnios, orden.Genero, idEstablecimiento); var fechaColeccion = DateTime.MinValue; Session["idGenero"] = orden.Genero.ToString(); foreach (var item in examenes) { if (fechaColeccion < item.Muestra.fechaColeccion) { fechaColeccion = item.Muestra.fechaColeccion; } } ViewBag.examenes = examenes; return(PartialView("IngresarResultadosVerificador", orden)); }
public ActionResult RegistroResultadosVerificador(Guid idOrden, Guid[] resultados, Guid[] idOrdenResultadoAnalito, Guid[] idAnalito, string[] resultado, string[] observacion, int[] metodo, Guid[] ordenExamen, int[] estatusOrdenExamen) { //List<Models.AnalitoValues> deserializedObject = JsonConvert.DeserializeObject<List<Models.AnalitoValues>>(Request.Form["jsonvalues"]); List <Model.AnalitoValues> deserializedObject = JsonConvert.DeserializeObject <List <Model.AnalitoValues> >(Request.Form["jsonvalues"]); List <ObservacionesValues> deserializedObservaciones = JsonConvert.DeserializeObject <List <ObservacionesValues> >(Request.Form["observacionesjsonvalues"]); List <AnalitoOpcionResultado> resul = null; string convResultado = ""; string interpretacion = ""; if (deserializedObject == null || !deserializedObject.Any()) { return(PartialView("Blank")); } else { resul = new DetalleAnalitoDal().GetAnalitosbyIdAnalitoResultado(deserializedObject); convResultado = new OrdenDal().RetornaResultado(resul); interpretacion = InterpretacionResultado(ordenExamen, resul); } var ordenBl = new IngresoResultadosBl(); var detalleAnalitoBl = new DetalleAnalitoBl(); var disabledCount = 0; for (var i = 0; i < ordenExamen.Length; i++) { disabledCount = disabledCount + 1; if (!resultados.Contains(ordenExamen[i])) { continue; } var idExamenMetodo = 0; if (metodo != null && metodo[disabledCount - 1] > -1) { idExamenMetodo = metodo[disabledCount - 1]; } var ordenResultadoAnalito = ordenBl.GetOrdenResultadoAnalito(ordenExamen[i]); var lista = new List <OrdenResultadoAnalito>(); foreach (var item in deserializedObject.GroupBy(x => x.IdOrdenResultadoAnalito)) { string serializedObject = JsonConvert.SerializeObject(item.ToList()); var analito = new OrdenResultadoAnalito { idOrdenResultadoAnalisis = item.Key, resultado = serializedObject, idExamenMetodo = idExamenMetodo, observacion = deserializedObservaciones.Any(x => x.IdOrdenResultadoAnalito == item.Key) ? deserializedObservaciones.First(x => x.IdOrdenResultadoAnalito == item.Key).ObservacionContent : string.Empty, convResultado = convResultado, interpretacion = interpretacion }; if (deserializedObservaciones.Any(x => x.IdOrdenResultadoAnalito == item.Key)) { analito.observacion = deserializedObservaciones.First(x => x.IdOrdenResultadoAnalito == item.Key).ObservacionContent; } lista.Add(analito); } ordenBl.RegistrarResultadosOrdenAnalito(lista, Logueado.idUsuario); var detalle = new List <OrdenResultadoAnalito>(); OrdenResultadoAnalito analitoDetalle = null; foreach (var item in resul) { if (item.idAnalitoCabeceraVariable != 0) { analitoDetalle = new OrdenResultadoAnalito { idOrdenResultadoAnalisis = ordenResultadoAnalito[0], idAnalisis = item.idAnalitoCabeceraVariable, idSecuencia = 2, convResultado = (item.idAnalitoCabeceraVariable == 1 || item.idAnalitoCabeceraVariable == 2) ? convResultado : item.Glosa }; detalle.Add(analitoDetalle); } } ordenBl.RegistoResultadoAnalitoDetalle(detalle); } return(PartialView("Blank")); }