public void EnviarResultados(string CodigoOrden) { //Enviar Resultados MINSA EQHALI // try { var request = new Request(); var dato = new Resultado(); var OrdenBL = new OrdenBl(); HttpWebResponse response = null; var lista = OrdenBL.GetTramaResultadobyCodigoOrden(CodigoOrden); foreach (var item in lista) { response = (HttpWebResponse)request.Execute("http://dlaboratorio.minsa.gob.pe/api/v1/laboratorio/recepcion-resultados", item, "POST"); if (HttpStatusCode.OK == response.StatusCode) { //Update Estado = Enviado new OrdenBl().UpdateTRamaResultadobyCodigoOrden(CodigoOrden); } } } catch (Exception) { throw; } }
public ActionResult Save(string pacientes, string solicitante, string hddDatoEESSEnvio, string hddDatoEESSOrigen, string fechaIngresoINS, string FechaObtencion, string tipoDocumento, string nroOficio, string idOrdenPadreExportado) { ViewBag.idOrdenPadreExportado = ""; string codigoOrdenGenerado = string.Empty; var LstxOrdenMuestraLinealkobo = new List <OrdenMuestraLinealkobo>(); LstxOrdenMuestraLinealkobo = new OrdenBl().ListOrdenMuestraLinealkobo(idOrdenPadreExportado); DataTable dtlista = new DataTable("dtlista"); dtlista = ConvertToDataTable(LstxOrdenMuestraLinealkobo); dtlista.TableName = "MUESTRAS"; dtlista.Columns[0].ColumnName = "CODIGO ORDEN"; dtlista.Columns[1].ColumnName = "CODIGO MUESTRA"; dtlista.Columns[2].ColumnName = "CODIGO LINEAL"; dtlista.Columns[3].ColumnName = "Nro Documento"; dtlista.Columns[4].ColumnName = "APEPAT"; dtlista.Columns[5].ColumnName = "APEMAT"; dtlista.Columns[6].ColumnName = "NOMBRE"; using (XLWorkbook wb = new XLWorkbook()) { wb.Worksheets.Add(dtlista); wb.Style.Alignment.Horizontal = XLAlignmentHorizontalValues.Center; wb.Style.Font.Bold = true; return(new ExcelResult(wb, "Resultados")); } }
public JsonResult ValidarExamen(Guid idPaciente, int idLaboratorio, Guid idExamen, string fechaColeccion) { //bool existeExamen = false; string existeExamen = ""; var ordenBL = new OrdenBl(); var fecha = fechaColeccion.Split('/'); var dt = new DateTime(Convert.ToInt32(fecha[2]), Convert.ToInt32(fecha[1]), Convert.ToInt32(fecha[0])); //existeExamen = ordenBL.VerificarExisteExamenPorPaciente(idPaciente, idLaboratorio, idExamen, dt); existeExamen = ordenBL.ValidaRegistroExamenPaciente(idPaciente, idLaboratorio, idExamen, dt); return(Json(existeExamen, JsonRequestBehavior.AllowGet)); }
public Orden GenerarOrden(string TipoDocumento, string nroDocumento, string EstablecimientoOrigen, string EstablecimientoEnvio, string FechaObtencion, string solicitante, string fechaIngresoINS, string nroOficio, string idOrdenPadreExportado) { var codigoOrdenGenerado = string.Empty; using (var ordenBl = new OrdenBl()) { //Generar Codigo de Orden codigoOrdenGenerado = ordenBl.GenerarCodigoOrden(int.Parse(EstablecimientoOrigen)); } var datoPaciente = ""; var idEstablecimientoDestino = EstablecimientoEnvio; var idEstablecimientoOrigen = EstablecimientoOrigen; var fechaIngresoRom = fechaIngresoINS; var oOrden = new OrdenBl(); var oTempOrden = new TempOrdenBl(); var orden = new Orden(); var pacienteBl = new PacienteBl(); var examenBl = new ExamenBl(); var establecimientoBl = new EstablecimientoBl(); // Variables produccion int idEnfermedad = int.Parse(GetSetting <string>("EnfVirusRespiratorio")); //1005680; Guid idExamen = Guid.Parse(GetSetting <string>("Covid19")); var idTipoMuestra = int.Parse(GetSetting <string>("idTipoMuestra")); orden.nroOficio = nroOficio; orden.codigoOrden = codigoOrdenGenerado; { datoPaciente = nroDocumento; List <Paciente> pacienteList = pacienteBl.getPacientes2(1, 10, int.Parse(TipoDocumento), datoPaciente); if (pacienteList.Any()) { bool continuar = true; var paciente = pacienteList.First(); var enfermedadListAgregados = new List <Enfermedad>(); var ordenExamenListAgregados = new List <OrdenExamen>(); var ordenMaterialListAgregados = new List <OrdenMaterial>(); var ordenMuestraListAgregados = new List <OrdenMuestra>(); var Establecimientobl = new EstablecimientoBl(); var oEstablecimiento = new Establecimiento(); if (string.IsNullOrEmpty(idEstablecimientoOrigen)) { idEstablecimientoOrigen = "991"; } oEstablecimiento = Establecimientobl.GetEstablecimientosById(int.Parse(idEstablecimientoOrigen)); orden.idEstablecimiento = oEstablecimiento.IdEstablecimiento; orden.EstablecimientoCodigoUnico = oEstablecimiento.CodigoUnico; orden.idEstablecimientoEnvio = int.Parse(EstablecimientoEnvio); orden.IdUsuarioRegistro = Logueado.idUsuario; orden.IdLaboratorioDestino = 995; orden.Paciente = new PacienteBl().getPacienteById(paciente.IdPaciente); orden.solicitante = solicitante; orden.fechaIngresoINS = DateTime.Parse(fechaIngresoRom); var laboratorio = new Laboratorio() { IdLaboratorio = 991, CodigoUnico = "10000R16" }; orden.estatus = 1; orden.IdUsuarioRegistro = Logueado.idUsuario; orden.fechaSolicitud = DateTime.Parse(DateTime.Now.ToShortDateString()); var idOrdenPadreExportado2 = Guid.NewGuid(); string nuevoCodigoVerificador = string.Empty; if (string.IsNullOrWhiteSpace(idOrdenPadreExportado) || idOrdenPadreExportado == Guid.Empty.ToString()) { nuevoCodigoVerificador = string.Format("{0}---{1}", Logueado.idUsuario, idOrdenPadreExportado2.ToString()); ViewBag.idOrdenPadreExportado = nuevoCodigoVerificador; orden.observacion = nuevoCodigoVerificador; } else { var arr = idOrdenPadreExportado.Split(new string[] { "---" }, StringSplitOptions.RemoveEmptyEntries); if (arr[0] == Logueado.idUsuario.ToString()) { ViewBag.idOrdenPadreExportado = idOrdenPadreExportado; orden.observacion = idOrdenPadreExportado; } else { nuevoCodigoVerificador = string.Format("{0}---{1}", Logueado.idUsuario, Guid.NewGuid().ToString()); ViewBag.idOrdenPadreExportado = nuevoCodigoVerificador; orden.observacion = nuevoCodigoVerificador; } } orden.Proyecto = new Proyecto { IdProyecto = 1 }; if (continuar) { var examenList = new Examen(); //var tipoMuestraList = new List<TipoMuestra>(); var materialList = new List <Material>(); // materialList = new MaterialBl().GetMaterialesByIdTipoMuestra(idTipoMuestra).ToList(); var LstoExamen = new List <OrdenExamen>(); orden.ordenMuestraList = new List <OrdenMuestra>(); orden.ordenMuestraList.Add(new OrdenMuestra { idTipoMuestra = idTipoMuestra, TipoMuestra = new TipoMuestra { idTipoMuestra = idTipoMuestra }, fechaColeccion = DateTime.Parse(FechaObtencion),// horaColeccion = DateTime.Now, idProyecto = 1, MuestraCodificacion = new MuestraCodificacion() }); var ordexmen = new OrdenExamen { idEnfermedad = idEnfermedad, Enfermedad = new Enfermedad { idEnfermedad = idEnfermedad }, idExamen = idExamen, Examen = new Examen { idExamen = idExamen }, IdTipoMuestra = idTipoMuestra, ordenMuestraList = orden.ordenMuestraList }; LstoExamen.Add(ordexmen); orden.ordenExamenList = LstoExamen; orden.ordenMaterialList = new List <OrdenMaterial>(); //ORDENMATERIAL var materiales = new MaterialBl().GetMaterialesByIdTipoMuestra(idTipoMuestra); var material = materiales.FirstOrDefault(); if (material != null) { orden.ordenMaterialList.Add(new OrdenMaterial { cantidad = 1, idMaterial = material.idMaterial, Material = new Material { idMaterial = material.idMaterial, TipoMuestra = new TipoMuestra { idTipoMuestra = idTipoMuestra } }, fechaEnvio = DateTime.Today, horaEnvio = DateTime.Now, volumenMuestraColectada = material != null ? material.volumen : 1, OrdenExamen = ordexmen, Laboratorio = laboratorio }); } List <OrdenDatoClinico> ordenDatoClinicoList = new List <OrdenDatoClinico>(); var datoClinicoBl = new DatoClinicoBl(); var categoriaDatoList = datoClinicoBl.GetCategoriaByEnfermedad(idEnfermedad, 1, idExamen.ToString()); var oEnfermedad = new Enfermedad(); oEnfermedad.idEnfermedad = idEnfermedad; oEnfermedad.categoriaDatoList = categoriaDatoList; enfermedadListAgregados.Add(oEnfermedad); { var datosClinicos = enfermedadListAgregados.SelectMany(e => e.categoriaDatoList) .SelectMany(c => c.OrdenDatoClinicoList); foreach (var ordenDatoClinico in datosClinicos) { var id = ordenDatoClinico.Enfermedad.idEnfermedad.ToString() + ordenDatoClinico.Dato.IdDato.ToString(); OrdenDatoClinico ordenDatoClinicoFormulario = ordenDatoClinicoList.FirstOrDefault(x => x.Dato.IdDato == ordenDatoClinico.Dato.IdDato); //Si el dato clinico existe previamente en el formulario entonces se copia los valores del existente if (ordenDatoClinicoFormulario != null) { ordenDatoClinico.noPrecisa = ordenDatoClinicoFormulario.noPrecisa; ordenDatoClinico.ValorString = ordenDatoClinicoFormulario.ValorString; } else { //Si el dato clinico no existe se crea con los valores obtenidos ordenDatoClinicoFormulario = new OrdenDatoClinico(); Dato datoClinico = new Dato(); datoClinico.IdDato = ordenDatoClinico.Dato.IdDato; ordenDatoClinicoFormulario.Dato = datoClinico; ordenDatoClinicoList.Add(ordenDatoClinicoFormulario); var formValue = Request.Form["valueDato" + id]; string checknoprecisa = Request.Form["checkNoPrecisa" + id]; var checkNoPrecisaBoolean = !string.IsNullOrEmpty(checknoprecisa) && (checknoprecisa.ToLower() == "on" || checknoprecisa.ToLower() == "true"); if ((int)Enums.TipoCampo.CHECKBOX == ordenDatoClinico.Dato.IdTipo || (int)Enums.TipoCampo.COMBO == ordenDatoClinico.Dato.IdTipo) { ordenDatoClinico.noPrecisa = formValue == null || formValue.Equals("0"); ordenDatoClinico.ValorString = formValue == null || formValue.Equals("0") ? "" : formValue; } else { ordenDatoClinico.noPrecisa = checkNoPrecisaBoolean; ordenDatoClinico.ValorString = !checkNoPrecisaBoolean ? formValue : string.Empty; } ordenDatoClinicoFormulario.noPrecisa = ordenDatoClinico.noPrecisa; ordenDatoClinicoFormulario.ValorString = ordenDatoClinico.ValorString; } } } orden.enfermedadList = enfermedadListAgregados; oOrden.InsertOrdenCovid(orden, Enums.TipoRegistroOrden.ORDEN_RECEPCION); } } } return(orden); }
public string PreSaveOrden() { var orden = new Orden(); var ordenBl = new OrdenBl(); int idEnfermedad = int.Parse(GetSetting <string>("EnfVirusRespiratorio")); string fechaObtencion = Request.Form["fechaObtencion"]; string idExamen = GetSetting <string>("Covid19"); string idTipoMuestra = Request.Form["TipoMuestraCovid"]; string nroCelularPaciente = Request.Form["nroCelularPaciente"]; Guid idPaciente = Guid.Parse(Request.Form["GuidIdPaciente"].ToString()); orden.idOrden = Guid.Parse(Request.Form["idOrden"].ToString()); List <OrdenDatoClinico> ordenDatoClinicoList = new List <OrdenDatoClinico>(); var datoClinicoBl = new DatoClinicoBl(); var categoriaDatoList = datoClinicoBl.GetCategoriaByEnfermedad(idEnfermedad, 1, idExamen); var oEnfermedad = new Enfermedad(); oEnfermedad.idEnfermedad = idEnfermedad; oEnfermedad.categoriaDatoList = categoriaDatoList; List <Enfermedad> enfermedadListAgregados = new List <Enfermedad>(); enfermedadListAgregados.Add(oEnfermedad); { var datosClinicos = enfermedadListAgregados.SelectMany(e => e.categoriaDatoList) .SelectMany(c => c.OrdenDatoClinicoList); foreach (var ordenDatoClinico in datosClinicos) { var id = ordenDatoClinico.Enfermedad.idEnfermedad.ToString() + ordenDatoClinico.Dato.IdDato.ToString(); OrdenDatoClinico ordenDatoClinicoFormulario = ordenDatoClinicoList.FirstOrDefault(x => x.Dato.IdDato == ordenDatoClinico.Dato.IdDato); //Si el dato clinico existe previamente en el formulario entonces se copia los valores del existente if (ordenDatoClinicoFormulario != null) { ordenDatoClinico.noPrecisa = ordenDatoClinicoFormulario.noPrecisa; ordenDatoClinico.ValorString = ordenDatoClinicoFormulario.ValorString; } else { //Si el dato clinico no existe se crea con los valores obtenidos ordenDatoClinicoFormulario = new OrdenDatoClinico(); Dato datoClinico = new Dato(); datoClinico.IdDato = ordenDatoClinico.Dato.IdDato; ordenDatoClinicoFormulario.Dato = datoClinico; ordenDatoClinicoList.Add(ordenDatoClinicoFormulario); var formValue = Request.Form["valueDato" + id]; string checknoprecisa = Request.Form["checkNoPrecisa" + id]; var checkNoPrecisaBoolean = !string.IsNullOrEmpty(checknoprecisa) && (checknoprecisa.ToLower() == "on" || checknoprecisa.ToLower() == "true"); if ((int)Enums.TipoCampo.CHECKBOX == ordenDatoClinico.Dato.IdTipo || (int)Enums.TipoCampo.COMBO == ordenDatoClinico.Dato.IdTipo) { ordenDatoClinico.noPrecisa = formValue == null || formValue.Equals("0"); ordenDatoClinico.ValorString = formValue == null || formValue.Equals("0") ? "" : formValue; } else { ordenDatoClinico.noPrecisa = checkNoPrecisaBoolean; ordenDatoClinico.ValorString = !checkNoPrecisaBoolean ? formValue : string.Empty; } ordenDatoClinicoFormulario.noPrecisa = ordenDatoClinico.noPrecisa; ordenDatoClinicoFormulario.ValorString = ordenDatoClinico.ValorString; } } } orden.enfermedadList = enfermedadListAgregados; orden.IdUsuarioRegistro = Logueado.idUsuario; orden.ordenMuestraList = new List <OrdenMuestra>(); orden.ordenExamenList = new List <OrdenExamen>(); var oOrdenMuestra = new OrdenMuestra(); var oOrdenExamen = new OrdenExamen(); var oMuestraCodificacion = new MuestraCodificacion(); var codigoOrdenGenerado = string.Empty; int EstablecimientoOrigen = string.IsNullOrEmpty(Request.Form["EESSOrigen"].ToString()) ? 0 : int.Parse(Request.Form["EESSOrigen"]); int hddDatoEESSOrigenEdit = string.IsNullOrEmpty(Request.Form["hddDatoEESSOrigenEdit"].ToString()) ? 0 : int.Parse(Request.Form["hddDatoEESSOrigenEdit"]); //OrdenMuestra oOrdenMuestra.TipoMuestra = new TipoMuestra { idTipoMuestra = int.Parse(idTipoMuestra) }; oOrdenMuestra.fechaColeccion = DateTime.Parse(fechaObtencion); oOrdenMuestra.horaColeccion = DateTime.Now; oOrdenMuestra.idProyecto = 1; orden.idEstablecimiento = EstablecimientoOrigen; orden.editarEstablecimiento = "N"; if (EstablecimientoOrigen != hddDatoEESSOrigenEdit) { //Orden orden.editarEstablecimiento = "S"; orden.codigoOrden = ordenBl.GenerarCodigoOrden(hddDatoEESSOrigenEdit); orden.idEstablecimiento = hddDatoEESSOrigenEdit; //OrdenMuestra oMuestraCodificacion = new MuestraBl().GeneraCodigosMuestraKobo(hddDatoEESSOrigenEdit, Logueado.idUsuario, 1); oOrdenMuestra.MuestraCodificacion = oMuestraCodificacion; } orden.ordenMuestraList.Add(oOrdenMuestra); orden.Paciente = new Paciente { IdPaciente = idPaciente, Celular1 = nroCelularPaciente }; var Res = "Registro Exitoso."; try { ordenBl.UpdateOrdenCovid(orden); } catch (Exception ex) { Res = ex.Message; } return(Res); }
public ActionResult AddVariables(string idOrden) { int idEnfermedad = int.Parse(GetSetting <string>("EnfVirusRespiratorio")); //1005680; string idExamen = GetSetting <string>("Covid19"); //Guid.Parse("1B2BEC28-772C-49DF-BCC2-85E0C5CCA667"); string idExamenAgrupado = GetSetting <string>("idExamenAgrupado"); string idTipoMuestra = GetSetting <string>("idTipoMuestra"); //cambioj OrdenBl ordenBl = new OrdenBl(); Orden orden = ordenBl.GetOrdenById(Guid.Parse(idOrden)); var enfermedad = new Enfermedad(); if (!(orden.enfermedadList != null && orden.enfermedadList.Any())) { var datoClinicoBl = new DatoClinicoBl(); var categoriaDatoList = datoClinicoBl.GetCategoriaByEnfermedad(idEnfermedad, 1, idExamen); if (enfermedad != null) { enfermedad.categoriaDatoList = categoriaDatoList; } } else { enfermedad = orden.enfermedadList.FirstOrDefault(); } var Examenbl = new ExamenBl(); var TipoMuestraList = new List <SelectListItem>(); foreach (var itemDetalle in Examenbl.GetExamenAgrupado(int.Parse(idExamenAgrupado))) { TipoMuestraList.Add(new SelectListItem { Text = itemDetalle.descripcion, Value = itemDetalle.idTipoMuestra.ToString() }); } ViewBag.TipoMuestra = TipoMuestraList; int val = 0; if (orden.ordenMuestraList != null) { if (orden.ordenMuestraList.Count() > 0) { ViewBag.tipoMuestraSel = orden.ordenMuestraList.First().TipoMuestra.idTipoMuestra.ToString(); ViewBag.FechaObtencion = orden.ordenMuestraList.First().fechaColeccion.ToShortDateString(); val = 1; } } if (val == 0) { ViewBag.tipoMuestraSel = idTipoMuestra; ViewBag.FechaObtencion = ""; } var paciente = new PacienteBl().GetPacienteByDocumento(orden.Paciente.NroDocumento); ViewBag.Paciente = paciente.ApellidoPaterno + " " + paciente.ApellidoMaterno + ", " + paciente.Nombres; ViewBag.idPaciente = paciente.IdPaciente.ToString(); ViewBag.nroCelularPaciente = paciente.Celular1; ViewBag.idOrden = idOrden; if (orden.establecimiento != null) { ViewBag.idEstablecimientoOrigenEdit = orden.establecimiento.IdEstablecimiento == 0 ? "" : orden.establecimiento.IdEstablecimiento.ToString(); ViewBag.nombreEstablecimientoOrigenEdit = string.IsNullOrEmpty(orden.establecimiento.Nombre) ? "" : orden.establecimiento.Nombre; } return(PartialView("_AddVariables", enfermedad)); }
/// <summary> /// Descripción: Registra la informacion y libera la memoria de trabajo. /// Author: Terceros. /// Fecha Creacion: 01/01/2017. /// Fecha Modificación: 02/02/2017. /// Modificación: Se agregaron comentarios, funcion no utilizada. /// </summary> /// <param name="idProyecto"></param> /// <param name="cmbEstablecimiento"></param> /// <param name="cmbEstablecimientoFrecuente"></param> /// <param name="observacion"></param> /// <param name="nroOficio"></param> /// <param name="muestraCodigoExterno"></param> /// <param name="muestraFecha"></param> /// <param name="muestraHora"></param> /// <param name="muestraMaterial"></param> /// <param name="paso"></param> /// <returns></returns> public ActionResult Guardar(String idProyecto, String cmbEstablecimiento, String cmbEstablecimientoFrecuente, String observacion, String nroOficio, String[] muestraCodigoExterno, String[] muestraFecha, String[] muestraHora, String[] muestraMaterial, String paso) { Orden orden = new Orden(); if (paso == "2") { orden = (Orden)this.Session["OrdenBS"]; } //orden.idEnfermedad = cmbEnfermedad; orden.idProyecto = int.Parse(idProyecto); orden.observacion = observacion; orden.nroOficio = nroOficio; //Obtenemos la lista de examenes List <TipoMuestra> examenListAgregados = new List <TipoMuestra>(); if (this.Session["ExamenListAgregados"] != null) { examenListAgregados = (List <TipoMuestra>) this.Session["ExamenListAgregados"]; } //Se construye la orden orden.ordenExamenList = new List <OrdenExamen>(); OrdenExamen ordenExamen = new OrdenExamen(); foreach (TipoMuestra tipoMuestra in examenListAgregados) { String[] examenArray = (String[])this.Session["examenesSeleccionados"]; ordenExamen = new OrdenExamen(); ordenExamen.idExamen = tipoMuestra.examen.idExamen; ordenExamen.idEnfermedad = tipoMuestra.enfermedad.idEnfermedad; ordenExamen.ordenMuestraList = new List <OrdenMuestra>(); orden.ordenExamenList.Add(ordenExamen); } if (paso == "1") { if (cmbEstablecimiento != "") { orden.idEstablecimiento = Convert.ToInt32(cmbEstablecimiento); } else { orden.idEstablecimiento = Convert.ToInt32(cmbEstablecimientoFrecuente); } orden.IdUsuarioRegistro = Logueado.idUsuario; if (orden.idEstablecimiento == EstablecimientoUsuario.IdEstablecimiento) { orden.establecimiento = EstablecimientoUsuario; } else { EstablecimientoBl establecimientBL = new EstablecimientoBl(); orden.establecimiento = establecimientBL.GetEstablecimientoById(orden.idEstablecimiento); } orden.UsuarioRegistro = Logueado; orden.FechaRegistro = DateTime.Now; this.Session["OrdenBS"] = orden; } List <Orden> ordenes = new List <Orden>(); if (paso == "2") { orden.IdUsuarioEdicion = Logueado.idUsuario; ordenes = (List <Orden>) this.Session["OrdenesBS"]; this.Session["OrdenBS"] = orden; } IOrdenBl ordenBl = new OrdenBl(); int i = 0; //orden.ordenCepaBancoSangre = new List<CepaBancoSangre>(); int countOrdenes = ordenes.Count; for (i = 0; i < muestraCodigoExterno.Length; i++) { Orden ordenT = new Orden(); ordenT.codigoOrden = ""; ordenT.idEstablecimiento = orden.idEstablecimiento; ordenT.establecimiento = orden.establecimiento; ordenT.IdUsuarioRegistro = Logueado.idUsuario; if (paso == "2") { if (i < countOrdenes) { ordenT = ordenes.ElementAt(i); } } CepaBancoSangre bs = new CepaBancoSangre(); bs.codificacion = muestraCodigoExterno[i]; bs.IdUsuarioRegistro = Logueado.idUsuario; bs.tipo = 1; bs.horaColeccion = DateTime.ParseExact(muestraFecha[i] + " " + muestraHora[i], "dd/MM/yyyy HH:mm", CultureInfo.InvariantCulture); bs.fechaColeccion = DateTime.ParseExact(muestraFecha[i], "dd/MM/yyyy", CultureInfo.InvariantCulture); //bs.horaColeccion = new DateTime(); //bs.fechaColeccion = new DateTime(); bs.idMaterial = int.Parse(muestraMaterial[i]); ordenT.cepaBancoSangre = bs; ordenT.ordenExamenList = orden.ordenExamenList; ordenT.ordenMuestraList = new List <OrdenMuestra>(); OrdenMuestra ordenMuestra = new OrdenMuestra(); ordenMuestra.idProyecto = orden.idProyecto; ordenMuestra.Estado = 1; ordenMuestra.IdUsuarioRegistro = Logueado.idUsuario; ordenMuestra.fechaColeccion = bs.fechaColeccion; ordenMuestra.horaColeccion = bs.horaColeccion; ordenMuestra.TipoMuestra = new TipoMuestra(); ordenMuestra.TipoMuestra.idTipoMuestra = TipoMuestraSangreId; ordenT.ordenMuestraList.Add(ordenMuestra); ordenT.ordenMaterialList = new List <OrdenMaterial>(); OrdenMaterial ordenMaterial = new OrdenMaterial(); ordenMaterial.cantidad = 1; ordenMaterial.ordenMuestra.Establecimiento = new Establecimiento { IdEstablecimiento = orden.idEstablecimiento }; ordenMaterial.idProyecto = orden.idProyecto; ordenMaterial.idMaterial = bs.idMaterial; ordenMaterial.IdUsuarioRegistro = Logueado.idUsuario; ordenMaterial.Estado = 1; ordenT.ordenMaterialList.Add(ordenMaterial); ordenT.idProyecto = orden.idProyecto; ordenT.observacion = observacion; ordenT.nroOficio = nroOficio; if (paso == "1") { ordenBl.InsertOrdenBancoSangre(ordenT); ordenT.UsuarioRegistro = Logueado; ordenT.FechaRegistro = DateTime.Now; ordenes.Add(ordenT); } if (paso == "2") { if (i >= countOrdenes) { ordenes.Add(ordenT); } ordenT.IdUsuarioEdicion = Logueado.idUsuario; ordenBl.UpdateOrdenBancoSangre(ordenT); } } if (paso == "1") { this.Session["OrdenesBS"] = ordenes; return(RedirectToAction("Editar", "BancoSangre")); } if (paso == "2") { if (i < countOrdenes) { countOrdenes--; while (i <= countOrdenes) { //Eliminar orden o cambiar estado ordenBl.DeleteOrden(ordenes.ElementAt(i).idOrden); ordenes.RemoveAt(countOrdenes); countOrdenes--; } } this.Session["OrdenesBS"] = ordenes; return(RedirectToAction("Ver", "BancoSangre")); } //Agregar Orden Registrada correctamente por Nombre Usuario en el resultado return(RedirectToAction("Ver", "BancoSangre")); }