/// <summary> /// Realiza carga en tablas temporales del contenido del archivo Excel /// </summary> /// <param name="IdTipoPrestacion">Id. de tipo de prestación</param> /// <param name="NombreArchivo">Nombre del archivo adjunto</param> /// <param name="ContenidoArchivo">Contenido binario del archivo adjunto</param> /// <returns>Retorna Id. de encabezado de carga de prestaciones</returns> public int UploadArchivoPrestaciones(int IdTipoPrestacion, string NombreArchivo, byte[] ContenidoArchivo) { Init(); try { using (LQCEEntities context = new LQCEEntities()) { if (string.IsNullOrEmpty(NombreArchivo)) throw new Exception("No se ha señalado nombre de archivo Excel"); if (ContenidoArchivo == null) throw new Exception("No se ha incluido contenido del archivo Excel"); RepositorioTIPO_PRESTACION _RepositorioTIPO_PRESTACION = new RepositorioTIPO_PRESTACION(context); RepositorioCARGA_PRESTACIONES_ESTADO _RepositorioCARGA_PRESTACIONES_ESTADO = new RepositorioCARGA_PRESTACIONES_ESTADO(context); RepositorioCARGA_PRESTACIONES_DETALLE_ESTADO _RepositorioCARGA_PRESTACIONES_DETALLE_ESTADO = new RepositorioCARGA_PRESTACIONES_DETALLE_ESTADO(context); var objTipoPrestacion = _RepositorioTIPO_PRESTACION.GetById(IdTipoPrestacion); if (objTipoPrestacion == null) throw new Exception("No se ha encontrado información del Tipo de Prestación"); var objEstado = _RepositorioCARGA_PRESTACIONES_ESTADO.GetById((int)ENUM_CARGA_PRESTACIONES_ESTADO.Pendiente); if (objEstado == null) throw new Exception("No se ha encontrado información del Estado de Carga de Prestaciones"); var objEstadoDetalle = _RepositorioCARGA_PRESTACIONES_DETALLE_ESTADO.GetById((int)ENUM_CARGA_PRESTACIONES_DETALLE_ESTADO.Pendiente); if (objEstadoDetalle == null) throw new Exception("No se ha encontrado información del Estado de Detalle de Carga de Prestaciones"); string archivo = DateTime.Now.ToString("yyyyMMddHHmmss") + "_" + NombreArchivo; File.WriteAllBytes(Properties.Settings.Default.DIR_CARGA_EXCEL + archivo, ContenidoArchivo); var datos = ISExcel.ReadExcelFile(Properties.Settings.Default.DIR_CARGA_EXCEL + archivo, true); if (datos == null) throw new Exception("No se ha leido información en la planilla Excel"); CARGA_PRESTACIONES_ENCABEZADO objEncabezado = new CARGA_PRESTACIONES_ENCABEZADO(); objEncabezado.FECHA_CARGA = DateTime.Now; objEncabezado.TIPO_PRESTACION = objTipoPrestacion; objEncabezado.CARGA_PRESTACIONES_ESTADO = objEstado; objEncabezado.ARCHIVO = archivo; objEncabezado.ACTIVO = true; context.AddToCARGA_PRESTACIONES_ENCABEZADO(objEncabezado); if (IdTipoPrestacion == (int)ENUM_TIPO_PRESTACION.Humanas) { foreach (DataRow item in datos.Rows) { bool TieneDatos = false; foreach (var col in item.ItemArray) { if (!string.IsNullOrEmpty(col.ToString())) TieneDatos = true; } if (TieneDatos) { // Convertir fecha formato dd.mm.aa DateTime? pasoFR = null; if (!string.IsNullOrEmpty(item["FECHA RECEPCION"].ToString())) { string[] arrFechaRecepcion = item["FECHA RECEPCION"].ToString().Split('.'); if (arrFechaRecepcion.Count() == 3) { int? dias = ISConvert.ToNullableInteger(arrFechaRecepcion[0]); int? mes = ISConvert.ToNullableInteger(arrFechaRecepcion[1]); int? año = ISConvert.ToNullableInteger(arrFechaRecepcion[2]); if (dias.HasValue && mes.HasValue && año.HasValue) { if (año < 100) { año = año + 2000; } string fr = dias.Value.ToString() + "-" + mes.Value.ToString() + "-" + año.Value.ToString(); pasoFR = ISConvert.ToNullableDateTime(fr); } } } CARGA_PRESTACIONES_HUMANAS_DETALLE objDetalle = new CARGA_PRESTACIONES_HUMANAS_DETALLE(); objDetalle.CARGA_PRESTACIONES_ENCABEZADO = objEncabezado; objDetalle.NOMBRE = item["NOMBRE"].ToString(); objDetalle.FICHA = item["FICHA"].ToString(); if (pasoFR.HasValue) { objDetalle.FECHA_RECEPCION = pasoFR.Value.ToString("dd-MM-yyyy") + " " + item["HORA RECEPCION"].ToString(); } else { objDetalle.FECHA_RECEPCION = item["FECHA RECEPCION"].ToString() + "." + item["HORA RECEPCION"].ToString(); } objDetalle.TELEFONO = item["TELEFONO"].ToString(); objDetalle.MEDICO = item["MEDICO"].ToString(); objDetalle.PROCEDENCIA = item["PROCEDENCIA"].ToString(); objDetalle.PREVISION = item["PREVISION"].ToString(); objDetalle.GARANTIA = item["GARANTIA"].ToString(); objDetalle.PENDIENTE = item["PENDIENTE"].ToString(); objDetalle.PAGADO = item["PAGADO"].ToString(); objDetalle.TOTAL = item["TOTAL"].ToString(); objDetalle.RECEPCION = item["RECEPCION"].ToString(); objDetalle.EDAD = item["EDAD"].ToString(); objDetalle.RUT = item["RUT"].ToString(); objDetalle.ACTIVO = true; objDetalle.CARGA_PRESTACIONES_DETALLE_ESTADO = objEstadoDetalle; objDetalle.MENSAJE_ERROR = ""; objDetalle.FECHA_ACTUALIZACION = DateTime.Now; objDetalle.CLIENTE = null; objDetalle.VALOR_FICHA = null; objDetalle.VALOR_FECHA_MUESTRA = null; objDetalle.VALOR_FECHA_RECEPCION = null; objDetalle.PREVISION1 = null; objDetalle.GARANTIA1 = null; objDetalle.VALOR_FECHA_ENTREGA_RESULTADOS = null; AgregarExamenHumano(context, objDetalle, item, "EXAMEN 1", "VALOR 1"); AgregarExamenHumano(context, objDetalle, item, "EXAMEN 2", "VALOR 2"); AgregarExamenHumano(context, objDetalle, item, "EXAMEN 3", "VALOR 3"); AgregarExamenHumano(context, objDetalle, item, "EXAMEN 4", "VALOR 4"); AgregarExamenHumano(context, objDetalle, item, "EXAMEN 5", "VALOR 5"); AgregarExamenHumano(context, objDetalle, item, "EXAMEN 6", "VALOR 6"); AgregarExamenHumano(context, objDetalle, item, "EXAMEN 7", "VALOR 7"); AgregarExamenHumano(context, objDetalle, item, "EXAMEN 8", "VALOR 8"); AgregarExamenHumano(context, objDetalle, item, "EXAMEN 9", "VALOR 9"); ValidarPrestacionHumana(context, objDetalle); context.AddToCARGA_PRESTACIONES_HUMANAS_DETALLE(objDetalle); } } } else if (IdTipoPrestacion == (int)ENUM_TIPO_PRESTACION.Veterinarias) { foreach (DataRow item in datos.Rows) { // Convertir fecha formato dd.mm.aa DateTime? pasoFR = null; if (!string.IsNullOrEmpty(item["FECHA RECEPCION"].ToString())) { string[] arrFechaRecepcion = item["FECHA RECEPCION"].ToString().Split('.'); if (arrFechaRecepcion.Count() == 3) { int? dias = ISConvert.ToNullableInteger(arrFechaRecepcion[0]); int? mes = ISConvert.ToNullableInteger(arrFechaRecepcion[1]); int? año = ISConvert.ToNullableInteger(arrFechaRecepcion[2]); if (dias.HasValue && mes.HasValue && año.HasValue) { if (año < 100) { año = año + 2000; } string fr = dias.Value.ToString() + "-" + mes.Value.ToString() + "-" + año.Value.ToString(); pasoFR = ISConvert.ToNullableDateTime(fr); } } } CARGA_PRESTACIONES_VETERINARIAS_DETALLE objDetalle = new CARGA_PRESTACIONES_VETERINARIAS_DETALLE(); objDetalle.CARGA_PRESTACIONES_ENCABEZADO = objEncabezado; objDetalle.FICHA = item["INGRESO"].ToString(); objDetalle.NOMBRE = item["NOMBRE"].ToString(); objDetalle.ESPECIE = item["ESPECIE"].ToString(); objDetalle.RAZA = item["RAZA"].ToString(); objDetalle.SEXO = item["SEXO"].ToString(); objDetalle.EDAD = item["EDAD"].ToString(); objDetalle.TELEFONO = item["TELEFONO"].ToString(); objDetalle.PROCEDENCIA = item["PROCEDENCIA"].ToString(); objDetalle.GARANTIA = item["GARANTIA"].ToString(); objDetalle.PENDIENTE = item["PENDIENTE"].ToString(); objDetalle.TOTAL = item["TOTAL"].ToString(); objDetalle.RECEPCION = item["RECEPCION"].ToString(); objDetalle.MEDICO = item["MEDICO"].ToString(); objDetalle.SOLICITA = item["SOLICITANTE"].ToString(); if (pasoFR.HasValue) { objDetalle.FECHA_RECEPCION = pasoFR.Value.ToString("dd-MM-yyyy") + " " + item["HORA RECEPCION"].ToString(); } else { objDetalle.FECHA_RECEPCION = item["FECHA RECEPCION"].ToString() + "." + item["HORA RECEPCION"].ToString(); } objDetalle.FICHA_CLINICA = item["FICHA"].ToString(); //objDetalle.FECHA_MUESTRA = item["FECHA MUESTRA"].ToString(); //objDetalle.FECHA_RESULTADOS = item["FECHA RESULTADOS"].ToString(); //objDetalle.PAGADO = item["PAGADO"].ToString(); objDetalle.ACTIVO = true; objDetalle.CARGA_PRESTACIONES_DETALLE_ESTADO = objEstadoDetalle; objDetalle.MENSAJE_ERROR = ""; objDetalle.FECHA_ACTUALIZACION = DateTime.Now; objDetalle.VALOR_FICHA = null; objDetalle.CLIENTE = null; //objDetalle.VALOR_FECHA_MUESTRA = null; objDetalle.VALOR_FECHA_RECEPCION = null; objDetalle.PREVISION = null; objDetalle.GARANTIA1 = null; //objDetalle.VALOR_FECHA_ENTREGA_RESULTADOS = null; objDetalle.ESPECIE1 = null; objDetalle.RAZA1 = null; AgregarExamenVeterinario(context, objDetalle, item, "EXAMEN 1", "VALOR 1"); AgregarExamenVeterinario(context, objDetalle, item, "EXAMEN 2", "VALOR 2"); AgregarExamenVeterinario(context, objDetalle, item, "EXAMEN 3", "VALOR 3"); AgregarExamenVeterinario(context, objDetalle, item, "EXAMEN 4", "VALOR 4"); AgregarExamenVeterinario(context, objDetalle, item, "EXAMEN 5", "VALOR 5"); ValidarPrestacionVeterinaria(context, objDetalle); context.AddToCARGA_PRESTACIONES_VETERINARIAS_DETALLE(objDetalle); } } else { throw new Exception("Tipo de prestación no válido"); } context.SaveChanges(); return objEncabezado.ID; } } catch (Exception ex) { ISException.RegisterExcepcion(ex); Error = ex.Message; throw ex; } }
private void AgregarExamenVeterinario(LQCEEntities context, CARGA_PRESTACIONES_VETERINARIAS_DETALLE objDetalle, DataRow item, string ColumnaExamen, string ColumnaValor) { if (!string.IsNullOrEmpty(item[ColumnaExamen].ToString()) || !string.IsNullOrEmpty(item[ColumnaValor].ToString())) { CARGA_PRESTACIONES_VETERINARIAS_EXAMEN objExamen = new CARGA_PRESTACIONES_VETERINARIAS_EXAMEN(); objExamen.CARGA_PRESTACIONES_VETERINARIAS_DETALLE = objDetalle; objExamen.NOMBRE_EXAMEN = item[ColumnaExamen].ToString(); objExamen.VALOR_EXAMEN = item[ColumnaValor].ToString(); objExamen.ACTIVO = true; objExamen.FECHA_ACTUALIZACION = DateTime.Now; objExamen.EXAMEN = null; context.AddToCARGA_PRESTACIONES_VETERINARIAS_EXAMEN(objExamen); } }
private List<string> ValidarPrestacionVeterinaria(LQCEEntities context, CARGA_PRESTACIONES_VETERINARIAS_DETALLE objDetalle) { RepositorioPRESTACION_VETERINARIA _RepositorioPRESTACION_VETERINARIA = new RepositorioPRESTACION_VETERINARIA(context); RepositorioCLIENTE _RepositorioCLIENTE = new RepositorioCLIENTE(context); RepositorioCLIENTE_SINONIMO _RepositorioCLIENTE_SINONIMO = new RepositorioCLIENTE_SINONIMO(context); RepositorioPREVISION _RepositorioPREVISION = new RepositorioPREVISION(context); RepositorioGARANTIA _RepositorioGARANTIA = new RepositorioGARANTIA(context); RepositorioCARGA_PRESTACIONES_DETALLE_ESTADO _RepositorioCARGA_PRESTACIONES_DETALLE_ESTADO = new RepositorioCARGA_PRESTACIONES_DETALLE_ESTADO(context); RepositorioEXAMEN _RepositorioEXAMEN = new RepositorioEXAMEN(context); RepositorioEXAMEN_SINONIMO _RepositorioEXAMEN_SINONIMO = new RepositorioEXAMEN_SINONIMO(context); RepositorioESPECIE _RepositorioESPECIE = new RepositorioESPECIE(context); RepositorioRAZA _RepositorioRAZA = new RepositorioRAZA(context); var EstadoConError = _RepositorioCARGA_PRESTACIONES_DETALLE_ESTADO.GetById((int)ENUM_CARGA_PRESTACIONES_DETALLE_ESTADO.ConError); if (EstadoConError == null) throw new Exception("No se encuentra registro de error en la tabla Estado de Detalle Carga Prestaciones"); var EstadoValidado = _RepositorioCARGA_PRESTACIONES_DETALLE_ESTADO.GetById((int)ENUM_CARGA_PRESTACIONES_DETALLE_ESTADO.Validado); if (EstadoValidado == null) throw new Exception("No se encuentra registro de error en la tabla Estado de Detalle Carga Prestaciones"); List<string> ListaValidaciones = new List<string>(); // Ingreso if (string.IsNullOrEmpty(objDetalle.FICHA)) { ListaValidaciones.Add("No se ha señalado numero de ingreso"); } else { int? _ficha = ISConvert.ToNullableInteger(objDetalle.FICHA); if (!_ficha.HasValue) { ListaValidaciones.Add("INGRESO debe ser numérico"); } else { objDetalle.VALOR_FICHA = _ficha.Value; var objPrestacionVeterinaria = _RepositorioPRESTACION_VETERINARIA.GetById(_ficha.Value); if (objPrestacionVeterinaria != null) ListaValidaciones.Add("Ya existe una prestación en el sistema con el mismo número de ingreso"); } } // Nombre if (string.IsNullOrEmpty(objDetalle.NOMBRE)) { ListaValidaciones.Add("No se ha señalado nombre del paciente"); } // Especie if (string.IsNullOrEmpty(objDetalle.ESPECIE)) { ListaValidaciones.Add("No se ha señalado ESPECIE en la ficha"); } else { var objEspecie = _RepositorioESPECIE.GetByFilter(objDetalle.ESPECIE).FirstOrDefault(); if (objEspecie != null) { objDetalle.ESPECIE1 = objEspecie; // Raza if (string.IsNullOrEmpty(objDetalle.RAZA)) { //ListaValidaciones.Add("No se ha señalado RAZA en la ficha"); } else { var objRaza = _RepositorioRAZA.GetByFilter(objEspecie.ID, objDetalle.RAZA).FirstOrDefault(); if (objRaza != null) { objDetalle.RAZA1 = objRaza; } else { ListaValidaciones.Add("No se ha podido identificar la RAZA en la ficha"); } } } else { ListaValidaciones.Add("No se ha podido identificar la ESPECIE en la ficha"); } } // Procedencia ////if (string.IsNullOrEmpty(objDetalle.PROCEDENCIA)) ////{ //// ListaValidaciones.Add("No se ha señalado PROCEDENCIA en la ficha"); ////} // Garantia if (string.IsNullOrEmpty(objDetalle.GARANTIA)) { //ListaValidaciones.Add("No se ha señalado GARANTIA en la ficha"); } else { var objGarantia = _RepositorioGARANTIA.GetByFilter(objDetalle.GARANTIA).FirstOrDefault(); if (objGarantia != null) { objDetalle.GARANTIA1 = objGarantia; } else { ListaValidaciones.Add("No se ha podido identificar la GARANTIA en la ficha"); } } // Total if (string.IsNullOrEmpty(objDetalle.TOTAL)) { ListaValidaciones.Add("No se ha señalado TOTAL en la ficha"); } else { int? _total = ISConvert.ToNullableInteger(objDetalle.TOTAL); if (!_total.HasValue) { ListaValidaciones.Add("Total no tiene el formato correcto"); } else { objDetalle.VALOR_TOTAL = _total.Value; } } // Solicitante if (string.IsNullOrEmpty(objDetalle.SOLICITA)) { ListaValidaciones.Add("No se ha señalado SOLICITANTE en la ficha"); } else { if (objDetalle.SOLICITA.ToUpper().Trim() == "PARTICULAR") { var objCliente = _RepositorioCLIENTE.GetByFilter(null, null, null, null, "", objDetalle.MEDICO).FirstOrDefault(); if (objCliente != null) { objDetalle.CLIENTE = objCliente; } else { var objClienteSinonimo = _RepositorioCLIENTE_SINONIMO.GetByFilterWithReferences(null, objDetalle.MEDICO).FirstOrDefault(); if (objClienteSinonimo != null) { objClienteSinonimo.CLIENTE = objClienteSinonimo.CLIENTE; } else { ListaValidaciones.Add("No se ha podido identificar CLIENTE MEDICO de la prestación"); } } } else { var objCliente = _RepositorioCLIENTE.GetByFilter(null, null, null, null, "", objDetalle.SOLICITA).FirstOrDefault(); if (objCliente != null) { objDetalle.CLIENTE = objCliente; } else { var objClienteSinonimo = _RepositorioCLIENTE_SINONIMO.GetByFilterWithReferences(null, objDetalle.SOLICITA).FirstOrDefault(); if (objClienteSinonimo != null) { objClienteSinonimo.CLIENTE = objClienteSinonimo.CLIENTE; } else { ListaValidaciones.Add("No se ha podido identificar CLIENTE SOLICITANTE de la prestación"); } } } } // Fecha de Recepcion if (string.IsNullOrEmpty(objDetalle.FECHA_RECEPCION)) { ListaValidaciones.Add("No se ha señalado FECHA DE RECEPCIÓN en la ficha"); } else { DateTime? pasoFR = ISConvert.ToNullableDateTime(objDetalle.FECHA_RECEPCION); if (!pasoFR.HasValue) { ListaValidaciones.Add("FECHA DE RECEPCIÓN no tiene el formato correcto"); } else { objDetalle.VALOR_FECHA_RECEPCION = pasoFR.Value; } } // Ficha Clinica if (string.IsNullOrEmpty(objDetalle.FICHA_CLINICA)) { //ListaValidaciones.Add("No se ha señalado TOTAL en la ficha"); } else { int? _ficha = ISConvert.ToNullableInteger(objDetalle.FICHA_CLINICA); if (!_ficha.HasValue) { ListaValidaciones.Add("FICHA no tiene el formato correcto"); } else { objDetalle.VALOR_FICHA_CLINICA = _ficha.Value; } } // Examenes int contadorExamen = 1; int contadorExamenesRegistrados = 0; int contadorValorExamen = 0; foreach (var item in objDetalle.CARGA_PRESTACIONES_VETERINARIAS_EXAMEN.Where(pe => pe.ACTIVO)) { if (!string.IsNullOrEmpty(item.VALOR_EXAMEN) || !string.IsNullOrEmpty(item.NOMBRE_EXAMEN)) { contadorExamenesRegistrados++; if (string.IsNullOrEmpty(item.NOMBRE_EXAMEN)) { ListaValidaciones.Add("No ha señalado nombre de examen [" + contadorExamen.ToString() + "]"); } else { bool ExamenExiste = false; var objExamen = _RepositorioEXAMEN.GetByFilter((int)ENUM_TIPO_PRESTACION.Humanas, "", item.NOMBRE_EXAMEN).FirstOrDefault(); if (objExamen != null) { ExamenExiste = true; item.EXAMEN = objExamen; } else { var objExamenSinonimo = _RepositorioEXAMEN_SINONIMO.GetByFilterWithReferences(null, item.NOMBRE_EXAMEN).FirstOrDefault(); if (objExamenSinonimo != null) { ExamenExiste = true; item.EXAMEN = objExamenSinonimo.EXAMEN; } else { ListaValidaciones.Add("No se ha encontrado información del examen [" + contadorExamen.ToString() + "]"); } } if (ExamenExiste && string.IsNullOrEmpty(item.VALOR_EXAMEN)) { ListaValidaciones.Add("No se ha señalado valor del examen [" + contadorExamen.ToString() + "; " + item.NOMBRE_EXAMEN + "]"); } } if (string.IsNullOrEmpty(item.VALOR_EXAMEN)) { //ListaValidaciones.Add("No se ha señalado valor de examen [" + contadorExamen.ToString() + "]"); } else { int? _valorExamen = ISConvert.ToNullableInteger(item.VALOR_EXAMEN); if (!_valorExamen.HasValue) { ListaValidaciones.Add("Valor de examen no tiene el formato correcto [" + contadorExamen.ToString() + "]"); } //else if (_valorExamen == 0) //{ // //ListaValidaciones.Add("Valor de examen no tiene el formato correcto [" + contadorExamen.ToString() + "]"); //} else { contadorValorExamen++; item.VALOR_VALOR_EXAMEN = _valorExamen; } } // PENDIENTE: Validar que el valor del examen sea igual al convenio //context.ApplyPropertyChanges("CARGA_PRESTACIONES_VETERINARIAS_EXAMEN", item); } else if (contadorExamen == 1) { ListaValidaciones.Add("No ha señalado nombre y valor de examen [" + contadorExamen.ToString() + "]"); } contadorExamen++; } if(contadorExamenesRegistrados == 0) ListaValidaciones.Add("La ficha debe registrar al menos 1 examen. "); if (contadorValorExamen == 0) ListaValidaciones.Add("La ficha debe registrar al menos 1 examen con valor. "); if (ListaValidaciones.Any()) { objDetalle.CARGA_PRESTACIONES_DETALLE_ESTADO = EstadoConError; string errores = ""; foreach (var item in ListaValidaciones) errores += item + Environment.NewLine; objDetalle.MENSAJE_ERROR = errores; } else { objDetalle.CARGA_PRESTACIONES_DETALLE_ESTADO = EstadoValidado; objDetalle.MENSAJE_ERROR = ""; } //context.ApplyPropertyChanges("CARGA_PRESTACIONES_VETERINARIAS_DETALLE", objDetalle); return ListaValidaciones; }
public int Add(int CARGA_PRESTACIONES_DETALLE_ESTADOId, int CARGA_PRESTACIONES_ENCABEZADOId, int CLIENTEId, int ESPECIE1Id, int GARANTIA1Id, int PREVISIONId, int RAZA1Id, System.DateTime FECHA_ACTUALIZACION, string FICHA = "", string NOMBRE = "", string ESPECIE = "", string RAZA = "", string EDAD = "", string SEXO = "", string SOLICITA = "", string TELEFONO = "", string MEDICO = "", string PROCEDENCIA = "", string FECHA_RECEPCION = "", string FECHA_MUESTRA = "", string FECHA_RESULTADOS = "", string PENDIENTE = "", string GARANTIA = "", string PAGADO = "", string TOTAL = "", string FICHA_CLINICA = "", string RECEPCION = "", string MENSAJE_ERROR = "", int? VALOR_FICHA = null, DateTime? VALOR_FECHA_MUESTRA = null, DateTime? VALOR_FECHA_RECEPCION = null, DateTime? VALOR_FECHA_ENTREGA_RESULTADOS = null, int? VALOR_FICHA_CLINICA = null, int? VALOR_TOTAL = null) { Init(); try { using (LQCEEntities context = new LQCEEntities()) { RepositorioCARGA_PRESTACIONES_DETALLE_ESTADO _repositorioCARGA_PRESTACIONES_DETALLE_ESTADO = new RepositorioCARGA_PRESTACIONES_DETALLE_ESTADO(context); CARGA_PRESTACIONES_DETALLE_ESTADO _objCARGA_PRESTACIONES_DETALLE_ESTADO = _repositorioCARGA_PRESTACIONES_DETALLE_ESTADO.GetById(CARGA_PRESTACIONES_DETALLE_ESTADOId); if(Equals(_objCARGA_PRESTACIONES_DETALLE_ESTADO,null)) { throw new Exception(String.Concat("No se ha encontrado CARGA_PRESTACIONES_DETALLE_ESTADO con Id =",CARGA_PRESTACIONES_DETALLE_ESTADOId.ToString())); } RepositorioCARGA_PRESTACIONES_ENCABEZADO _repositorioCARGA_PRESTACIONES_ENCABEZADO = new RepositorioCARGA_PRESTACIONES_ENCABEZADO(context); CARGA_PRESTACIONES_ENCABEZADO _objCARGA_PRESTACIONES_ENCABEZADO = _repositorioCARGA_PRESTACIONES_ENCABEZADO.GetById(CARGA_PRESTACIONES_ENCABEZADOId); if(Equals(_objCARGA_PRESTACIONES_ENCABEZADO,null)) { throw new Exception(String.Concat("No se ha encontrado CARGA_PRESTACIONES_ENCABEZADO con Id =",CARGA_PRESTACIONES_ENCABEZADOId.ToString())); } RepositorioCLIENTE _repositorioCLIENTE = new RepositorioCLIENTE(context); CLIENTE _objCLIENTE = _repositorioCLIENTE.GetById(CLIENTEId); if(Equals(_objCLIENTE,null)) { throw new Exception(String.Concat("No se ha encontrado CLIENTE con Id =",CLIENTEId.ToString())); } RepositorioESPECIE _repositorioESPECIE1 = new RepositorioESPECIE(context); ESPECIE _objESPECIE1 = _repositorioESPECIE1.GetById(ESPECIE1Id); if(Equals(_objESPECIE1,null)) { throw new Exception(String.Concat("No se ha encontrado ESPECIE1 con Id =",ESPECIE1Id.ToString())); } RepositorioGARANTIA _repositorioGARANTIA1 = new RepositorioGARANTIA(context); GARANTIA _objGARANTIA1 = _repositorioGARANTIA1.GetById(GARANTIA1Id); if(Equals(_objGARANTIA1,null)) { throw new Exception(String.Concat("No se ha encontrado GARANTIA1 con Id =",GARANTIA1Id.ToString())); } RepositorioPREVISION _repositorioPREVISION = new RepositorioPREVISION(context); PREVISION _objPREVISION = _repositorioPREVISION.GetById(PREVISIONId); if(Equals(_objPREVISION,null)) { throw new Exception(String.Concat("No se ha encontrado PREVISION con Id =",PREVISIONId.ToString())); } RepositorioRAZA _repositorioRAZA1 = new RepositorioRAZA(context); RAZA _objRAZA1 = _repositorioRAZA1.GetById(RAZA1Id); if(Equals(_objRAZA1,null)) { throw new Exception(String.Concat("No se ha encontrado RAZA1 con Id =",RAZA1Id.ToString())); } CARGA_PRESTACIONES_VETERINARIAS_DETALLE _CARGA_PRESTACIONES_VETERINARIAS_DETALLE = new CARGA_PRESTACIONES_VETERINARIAS_DETALLE(); //properties _CARGA_PRESTACIONES_VETERINARIAS_DETALLE.FICHA = FICHA; _CARGA_PRESTACIONES_VETERINARIAS_DETALLE.NOMBRE = NOMBRE; _CARGA_PRESTACIONES_VETERINARIAS_DETALLE.ESPECIE = ESPECIE; _CARGA_PRESTACIONES_VETERINARIAS_DETALLE.RAZA = RAZA; _CARGA_PRESTACIONES_VETERINARIAS_DETALLE.EDAD = EDAD; _CARGA_PRESTACIONES_VETERINARIAS_DETALLE.SEXO = SEXO; _CARGA_PRESTACIONES_VETERINARIAS_DETALLE.SOLICITA = SOLICITA; _CARGA_PRESTACIONES_VETERINARIAS_DETALLE.TELEFONO = TELEFONO; _CARGA_PRESTACIONES_VETERINARIAS_DETALLE.MEDICO = MEDICO; _CARGA_PRESTACIONES_VETERINARIAS_DETALLE.PROCEDENCIA = PROCEDENCIA; _CARGA_PRESTACIONES_VETERINARIAS_DETALLE.FECHA_RECEPCION = FECHA_RECEPCION; _CARGA_PRESTACIONES_VETERINARIAS_DETALLE.FECHA_MUESTRA = FECHA_MUESTRA; _CARGA_PRESTACIONES_VETERINARIAS_DETALLE.FECHA_RESULTADOS = FECHA_RESULTADOS; _CARGA_PRESTACIONES_VETERINARIAS_DETALLE.PENDIENTE = PENDIENTE; _CARGA_PRESTACIONES_VETERINARIAS_DETALLE.GARANTIA = GARANTIA; _CARGA_PRESTACIONES_VETERINARIAS_DETALLE.PAGADO = PAGADO; _CARGA_PRESTACIONES_VETERINARIAS_DETALLE.TOTAL = TOTAL; _CARGA_PRESTACIONES_VETERINARIAS_DETALLE.FICHA_CLINICA = FICHA_CLINICA; _CARGA_PRESTACIONES_VETERINARIAS_DETALLE.RECEPCION = RECEPCION; _CARGA_PRESTACIONES_VETERINARIAS_DETALLE.MENSAJE_ERROR = MENSAJE_ERROR; _CARGA_PRESTACIONES_VETERINARIAS_DETALLE.FECHA_ACTUALIZACION = FECHA_ACTUALIZACION; _CARGA_PRESTACIONES_VETERINARIAS_DETALLE.VALOR_FICHA = VALOR_FICHA; _CARGA_PRESTACIONES_VETERINARIAS_DETALLE.VALOR_FECHA_MUESTRA = VALOR_FECHA_MUESTRA; _CARGA_PRESTACIONES_VETERINARIAS_DETALLE.VALOR_FECHA_RECEPCION = VALOR_FECHA_RECEPCION; _CARGA_PRESTACIONES_VETERINARIAS_DETALLE.VALOR_FECHA_ENTREGA_RESULTADOS = VALOR_FECHA_ENTREGA_RESULTADOS; _CARGA_PRESTACIONES_VETERINARIAS_DETALLE.VALOR_FICHA_CLINICA = VALOR_FICHA_CLINICA; _CARGA_PRESTACIONES_VETERINARIAS_DETALLE.VALOR_TOTAL = VALOR_TOTAL; _CARGA_PRESTACIONES_VETERINARIAS_DETALLE.ACTIVO = true; //parents _CARGA_PRESTACIONES_VETERINARIAS_DETALLE.CARGA_PRESTACIONES_DETALLE_ESTADO = _objCARGA_PRESTACIONES_DETALLE_ESTADO; _CARGA_PRESTACIONES_VETERINARIAS_DETALLE.CARGA_PRESTACIONES_ENCABEZADO = _objCARGA_PRESTACIONES_ENCABEZADO; _CARGA_PRESTACIONES_VETERINARIAS_DETALLE.CLIENTE = _objCLIENTE; _CARGA_PRESTACIONES_VETERINARIAS_DETALLE.ESPECIE1 = _objESPECIE1; _CARGA_PRESTACIONES_VETERINARIAS_DETALLE.GARANTIA1 = _objGARANTIA1; _CARGA_PRESTACIONES_VETERINARIAS_DETALLE.PREVISION = _objPREVISION; _CARGA_PRESTACIONES_VETERINARIAS_DETALLE.RAZA1 = _objRAZA1; context.AddObject("CARGA_PRESTACIONES_VETERINARIAS_DETALLE",_CARGA_PRESTACIONES_VETERINARIAS_DETALLE); context.SaveChanges(); return _CARGA_PRESTACIONES_VETERINARIAS_DETALLE.ID; } } catch(Exception ex) { ISException.RegisterExcepcion(ex); Error = ex.Message; throw ex; } }