Example #1
0
 public string FinalizarCreacionOrden(CrearOrdenVM orden)
 {
     using (var dal = new CoreDal())
     {
         return(dal.FinalizarCreacionOrden(orden));
     }
 }
Example #2
0
        public ActionResult Guardar(CrearOrdenVM model)
        {
            var    watch            = Stopwatch.StartNew();
            string mensajeResultado = string.Empty;

            try
            {
                var datosclinicos = model.OrdenDatosClinicos.Where(x => !string.IsNullOrWhiteSpace(x.Valor)).ToList();
                datosclinicos.ForEach(dc => { dc.IdUsuarioRegistro = Logueado.idUsuario; });

                model.OrdenExamenes.ForEach(oe => { oe.ProyectoId = model.ProyectoId; });
                foreach (var items in model.OrdenExamenes.GroupBy(x => x.IdTipoMuestra))
                {
                    var item = items.FirstOrDefault(x => !string.IsNullOrWhiteSpace(x.CodigoMuestra));
                    items.ToList().ForEach(i =>
                    {
                        i.CodigoMuestra = item.CodigoMuestra;
                    });
                }

                using (var bl = new CoreBl())
                {
                    var watch2 = Stopwatch.StartNew();
                    bl.CrearOrdenDatosClinicos(datosclinicos, model.OrdenExamenes);
                    watch2.Stop();
                    new bsPage().LogCrearOrdenInfo("LogNetLab", "Guardar - CrearOrdenDatosClinicos ", $" Info Guardar {datosclinicos.Count} datos clinicos - Tiempo transcurrido: {watch2.ElapsedMilliseconds} ms");
                    mensajeResultado = bl.FinalizarCreacionOrden(model);
                }

                var recepcionbl = new RecepcionBl();
                //rechazar
                foreach (var item in model.OrdenExamenes.Where(x => x.MotivoRechazo.Any()))
                {
                    item.IdUsuario = Logueado.idUsuario;
                    recepcionbl.RechazarMuestra(new OrdenMuestraRecepcionados
                    {
                        IdOrdenMuestraRecepcion = item.IdOrdenMuestraRecepcion,
                        IdUsuario     = item.IdUsuario,
                        MotivoRechazo = item.MotivoRechazo
                    });
                }

                watch.Stop();
                new bsPage().LogCrearOrdenInfo("LogNetLab", "OrdenNuevo - Guardar - Info ", $" Info OrdenNuevo - Guardar - Tiempo transcurrido: {watch.ElapsedMilliseconds} ms");

                if (!string.IsNullOrWhiteSpace(mensajeResultado))
                {
                    ViewBag.textoRegistro = mensajeResultado;
                }

                return(RedirectToAction("SearchRecepcion", "Paciente", new { mensajeregistro = mensajeResultado }));
            }
            catch (Exception ex)
            {
                watch.Stop();
                new bsPage().LogError(ex, "LogNetLab", "", $" OrdenNuevo - Guardar - Tiempo transcurrido: {watch.ElapsedMilliseconds} ms");
                throw ex;
            }
        }
Example #3
0
        public string FinalizarCreacionOrden(CrearOrdenVM orden)
        {
            var objCommand = GetSqlCommand("pNLU_FinalizarOrdenCore");

            InputParameterAdd.Guid(objCommand, "idOrden", orden.Orden.IdOrden);
            InputParameterAdd.Int(objCommand, "idProyecto", orden.ProyectoId);
            InputParameterAdd.DateTime(objCommand, "fechaIngresoROM", orden.FechaIngresoROM);
            InputParameterAdd.Int(objCommand, "idSolicitante", orden.SolicitanteId);
            InputParameterAdd.DateTime(objCommand, "fechaSolicitud", orden.FechaSolicitud);
            //estatus se esta asignando -1 por defecto para todas las tablas dentro de este SP. Actualizarlo con el boton Guardar de la orden
            InputParameterAdd.DateTime(objCommand, "fechaEvaluacionFicha", orden.FechaEvaluacionFicha);
            InputParameterAdd.Varchar(objCommand, "nroOficio", orden.NroOficio);
            InputParameterAdd.Varchar(objCommand, "observaciones", orden.Observacion);
            InputParameterAdd.Int(objCommand, "idEstablecimientoOrigen", orden.EstablecimientoOrigenId);
            InputParameterAdd.Int(objCommand, "idEstablecimientoEnvio", orden.EstablecimientoEnvioId);
            OutputParameterAdd.Varchar(objCommand, "mensajeresultado", 200);
            objCommand.ExecuteNonQuery();
            //ExecuteNonQuery(objCommand);
            return((string)objCommand.Parameters["@mensajeresultado"].Value);
        }
Example #4
0
        public ActionResult Test()
        {
            var model = new CrearOrdenVM
            {
                Orden = new Orden
                {
                    IdPaciente  = Guid.Parse("7A2F8913-154D-4F0F-9125-E64783FED729"),
                    CodigoOrden = string.Empty
                },
                TipoRegistro = TipoRegistroOrden.ORDEN_RECEPCION
            };

            var coreBl = new CoreBl();

            model.Paciente = coreBl.ObtenerPacientePorId(model.Orden.IdPaciente);

            CargarProyectos();
            CargarSeguroList();
            CargaUbigeoEstablecimiento();
            return(View("Crear", model));
        }
Example #5
0
        public ActionResult Procesar(Guid ordenId, Guid idPaciente)
        {
            //Guid ordenId = Guid.Empty;
            var paciente = new Paciente();
            var orden    = new Orden();

            using (var coreBl = new CoreBl())
            {
                paciente = coreBl.ObtenerPacientePorId(idPaciente);
                orden    = coreBl.ObtenerOrdenPorId(ordenId);
            }

            var ordenvm = new CrearOrdenVM
            {
                Orden        = orden,
                Paciente     = paciente,
                TipoRegistro = orden.TipoRegistro
            };

            CargarProyectos();
            CargarSeguroList();
            CargaUbigeoEstablecimiento();
            return(View("Crear", ordenvm));
        }