public ClienteF2CResponse updateConfiguracionServer(ClienteF2CRequest request) { ClienteF2CResponse response = new ClienteF2CResponse(); try { if (Security.ValidateTokenSitio(request.Token, request.id_Sitio.ToString(), request.vchClaveSitio)) { NapoleonDataAccess controller = new NapoleonDataAccess(); string mensaje = ""; int id_Sitio = 0; response.valido = controller.updateConfiguracionServer(request.mdlConfiguracion, ref mensaje); response.id_Sitio = id_Sitio; response.message = mensaje; } else { response.valido = false; response.message = "Los datos de validación son erroneos."; } } catch (Exception getC) { response.valido = false; response.message = "Existe un error en el servicio updateConfiguracionServer: " + getC.Message; Log.EscribeLog("Existe un error en el servicio updateConfiguracionServer: " + getC.Message); } return(response); }
public ClienteF2CResponse getXMLFileConfig(ClienteF2CRequest request) { ClienteF2CResponse response = new ClienteF2CResponse(); try { if (Security.ValidateTokenSitio(request.Token, request.id_Sitio.ToString(), request.vchClaveSitio)) { NapoleonDataAccess controller = new NapoleonDataAccess(); response.vchFormato = controller.getXMLFileConfig(request.vchPassword); response.valido = true; } else { response.valido = false; response.message = "Los datos de validación son erroneos."; } } catch (Exception getC) { response.valido = false; response.message = "Existe un error en el servicio getXMLFileConfig: " + getC.Message; Log.EscribeLog("Existe un error en el servicio getXMLFileConfig: " + getC.Message); } return(response); }
public ClienteF2CResponse getConfiguracion(string vchClaveSitio, int id_Sitio, ref string mensaje) { ClienteF2CResponse response = new ClienteF2CResponse(); ClienteF2CRequest request = new ClienteF2CRequest(); try { request.vchClaveSitio = vchClaveSitio; request.Token = Security.Encrypt(id_Sitio + "|" + vchClaveSitio); request.id_Sitio = id_Sitio; //request.id_SitioSpecified = true; request.vchClaveSitio = vchClaveSitio; response = NapoleonDA.getConeccion(request); mensaje = response.message; response.valido = true; } catch (Exception egc) { Log.EscribeLog("Existe un error al intentar obtener los datos de configuración del Sitio: " + egc.Message); response = null; response.valido = false; mensaje = egc.Message; } return(response); }
public ClienteF2CResponse setConfiguracion(Feed2Service.tbl_ConfigSitio mdlConfig, ref string mensaje, ref int id_Sitio) { ClienteF2CResponse response = new ClienteF2CResponse(); ClienteF2CRequest request = new ClienteF2CRequest(); try { request.mdlConfig = mdlConfig; request.id_Sitio = mdlConfig.id_Sitio; //request.id_SitioSpecified = true; request.vchClaveSitio = mdlConfig.vchClaveSitio; request.Token = Security.Encrypt(mdlConfig.id_Sitio + "|" + mdlConfig.vchClaveSitio); response = NapoleonDA.setConfiguracion(request); mensaje = response.message; id_Sitio = response.id_Sitio; response.valido = true; } catch (Exception esC) { Log.EscribeLog("Existe un error al guardar la información" + esC.Message); response.valido = false; mensaje = esC.Message; } return(response); }
public ClienteF2CResponse getEstudiosTransmitir(ClienteF2CRequest request) { ClienteF2CResponse response = new ClienteF2CResponse(); try { if (Security.ValidateTokenSitio(request.Token, request.id_Sitio.ToString(), request.vchClaveSitio)) { NapoleonDataAccess controller = new NapoleonDataAccess(); string mensaje = ""; Log.EscribeLog("Sitio para transmitir: " + request.id_Sitio); response.lstEstudio = controller.getEstudiosTransmitir(request.id_Sitio, ref mensaje); response.message = mensaje; } else { response.valido = false; response.message = "Los datos de validación son erroneos."; } } catch (Exception getC) { response.valido = false; response.message = "Existe un error en el servicio getEstudiosTransmitir: " + getC.Message; Log.EscribeLog("Existe un error en el servicio getEstudiosTransmitir: " + getC.Message); } return(response); }
public ClienteF2CResponse getEstudiosTransmitir(int id_Sitio, string vchClaveSitio) { Log.EscribeLog("Leyendo del Sitio: " + id_Sitio.ToString()); ClienteF2CResponse response = new ClienteF2CResponse(); try { ClienteF2CRequest request = new ClienteF2CRequest(); request.id_Sitio = id_Sitio; //request.id_SitioSpecified = true; request.vchClaveSitio = vchClaveSitio; request.Token = Security.Encrypt(id_Sitio + "|" + vchClaveSitio); response = NapoleonDA.getEstudiosTransmitir(request); Log.EscribeLog("Archivos a enviar: " + response.lstEstudio.Length.ToString()); } catch (Exception e) { response.message = e.Message; response.valido = false; Log.EscribeLog("Existe un error en getEstudiosTransmitir: " + e.Message); } return(response); }
private void MoveFileTimer_Elapsed(object sender, ElapsedEventArgs e) { try { NapoleonServerDataAccess NSDA = new NapoleonServerDataAccess(); ClienteF2CResponse lista_estudios = NSDA.getEstudiosTransmitir(id_Servicio, vchClaveSitio); int numero = lista_estudios.lstEstudio.Length; Log.EscribeLog("Estudios a transmitir: " + numero.ToString()); foreach (var ID in lista_estudios.lstEstudio) { //string filename = @"C:\Anonymized20171205.dcm"; string filename = ID.vchPathFile; String strFile = System.IO.Path.GetFileName(filename); string strFileZip = createZipFile(filename); if (strFileZip != "") { if (File.Exists(strFileZip)) { FileInfo fInfo = new FileInfo(filename); long numBytes = fInfo.Length; FileStream fStream = new FileStream(strFileZip, FileMode.Open, FileAccess.Read); BinaryReader br = new BinaryReader(fStream); // convert the file to a byte array byte[] data = br.ReadBytes((int)numBytes); br.Close(); ServicioMueveEstudio.Service1Client SM = new ServicioMueveEstudio.Service1Client(); string path_mover = id_Servicio + @"\" + DateTime.Now.ToString("ddMMyyyy") + @"\"; string path_mover_completo = id_Servicio + @"\" + DateTime.Now.ToString("ddMMyyyy") + @"\" + Path.GetFileName(filename); CArchivo request = new CArchivo(); request.bytArchivo = data; request.id_Sitio = id_Servicio; request.vchpath = path_mover; request.Token = Security.Encrypt(id_Servicio + "|" + vchClaveSitio); request.vchClaveSitio = vchClaveSitio; request.vchfilename = strFile; string sTmp = SM.Carga_Archivo_F33D2(request); fStream.Close(); fStream.Dispose(); if (sTmp == "OK") { NSDA.updateEstatusTransmitido(ID.intDetEstudioID, id_Servicio, vchClaveSitio, path_mover_completo); } else { Log.EscribeLog("NO SE LOGRÓ HACER EL ENVÍO DEL ARCHIVO: " + filename + " , error: " + sTmp); } } } } } catch (Exception eSYTi) { Log.EscribeLog("Existe un error en MoveFileTimer_Elapsed: " + eSYTi.Message); } }
private void SyncTimer_Elapsed(object sender, ElapsedEventArgs e) { try { //Log.EscribeLog("[" + DateTime.Now.ToShortDateString() + DateTime.Now.ToShortTimeString() + "] Leyendo estudios para sincronizar."); //Console.WriteLine("[" + DateTime.Now.ToShortDateString() + DateTime.Now.ToShortTimeString() + "] Leyendo estudios para sincronizar."); try { NapSerDA.setService(id_Servicio, vchClaveSitio); } catch (Exception eSyc) { Log.EscribeLog("Existe un error en setService: " + eSyc.Message); } List <Entidades.clsEstudio> lstEstudio = new List <Entidades.clsEstudio>(); lstEstudio = NapAuxDA.getEstudiosPendientes(); if (lstEstudio != null) { if (lstEstudio.Count > 0) { foreach (Entidades.clsEstudio item in lstEstudio) { Feed2Service.clsEstudio mdl = new Feed2Service.clsEstudio(); mdl.vchClaveSitio = vchClaveSitio; mdl.intDetEstudioID = item.intDetEstudioID; mdl.intEstudioID = item.intEstatusID; mdl.intEstatusID = item.intEstatusID; mdl.vchNameFile = item.vchNameFile; mdl.intSizeFile = item.intSizeFile; mdl.vchPathFile = item.vchPathFile; mdl.vchStudyInstanceUID = item.vchStudyInstanceUID; mdl.datFecha = item.datFecha; mdl.id_Sitio = item.id_Sitio; mdl.intModalidad = item.intModalidadID; mdl.vchAccessionNumber = item.vchAccessionNumber; mdl.vchPatientBirthDate = item.vchPatientBirthDate; mdl.PatientID = item.PatientID; mdl.PatientName = item.PatientName; mdl.vchgenero = item.vchgenero; mdl.vchEdad = item.vchEdad; ClienteF2CResponse mdlResponse = new ClienteF2CResponse(); mdlResponse = NapSerDA.setEstudioServer(mdl); if (mdlResponse != null) { if (mdlResponse.valido) { NapAuxDA.updateEstudioSync(item.intDetEstudioID); } } } } } } catch (Exception eSYTi) { Log.EscribeLog("Existe un error en SyncTimer_Elapsed: " + eSYTi.Message); } }
private void btnSaveSitio_Click(object sender, RoutedEventArgs e) { try { if (txtSitio.Text.Trim() != "" && txtNombre.Text.Trim() != "") { if (txtSitio.Text.Trim().Length == 4) { //Guardar ConfigDA = new ConfiguracionDataAccess(); Feed2Service.tbl_ConfigSitio mdl = new Feed2Service.tbl_ConfigSitio(); mdl.vchClaveSitio = txtSitio.Text.Trim().ToUpper(); mdl.vchnombreSitio = txtNombre.Text.ToUpper(); mdl.bitActivo = true; mdl.datFechaSistema = DateTime.Now; mdl.vchUserAdmin = "ADMINISTRADOR"; bool success = false; string mensaje = ""; int id_sitio = 0; ClienteF2CResponse response = new ClienteF2CResponse(); response = ConfigDA.setConfiguracion(mdl, ref mensaje, ref id_sitio); if (response.valido) { MessageBox.Show("Cambios correctos."); MainWindow main = new MainWindow(); main.Show(); main.txtSitio.Text = txtSitio.Text; this.Close(); } else { MessageBox.Show("Existe un error al guardar la información: " + mensaje, "Error"); } } else { MessageBox.Show("Se debe capturar 4 caracteres para la clave del Sitio. "); } } else { MessageBox.Show("Se requiere capturar la clave para el Sitio."); } } catch (Exception ebSS) { MessageBox.Show("Existe un error al iniciar el sitio: " + ebSS.Message); } }
public ClienteF2CResponse updateEstatus(int intDetEstudioID, int id_Sitio, string vchClaveSitio) { ClienteF2CResponse response = new ClienteF2CResponse(); try { ClienteF2CRequest request = new ClienteF2CRequest(); request.intDetEstudioID = intDetEstudioID; //request.intDetEstudioIDSpecified = true; request.Token = Security.Encrypt(id_Sitio + "|" + vchClaveSitio); request.id_Sitio = id_Sitio; //request.id_SitioSpecified = true; request.vchClaveSitio = vchClaveSitio; response = NapoleonDA.updateEstatus(request); } catch (Exception eup) { Log.EscribeLog("Existe un error en updateEstatus:" + eup.Message); } return(response); }
public ClienteF2CResponse getXMLFileConfig(string vchClave, int id_Sitio, string vchClaveSitio) { ClienteF2CResponse response = new ClienteF2CResponse(); ClienteF2CRequest request = new ClienteF2CRequest(); try { request.vchPassword = vchClave; request.id_Sitio = id_Sitio; //request.id_SitioSpecified = true; request.vchClaveSitio = vchClaveSitio; request.Token = Security.Encrypt(id_Sitio + "|" + vchClaveSitio); response = NapoleonDA.getXMLFileConfig(request); } catch (Exception eXML) { response.vchFormato = ""; Log.EscribeLog("Existe un error al obtener el formato XML: " + eXML.Message); } return(response); }
public ClienteF2CResponse setEstudioServer(clsEstudio _estudio) { ClienteF2CResponse response = new ClienteF2CResponse(); try { ClienteF2CRequest request = new ClienteF2CRequest(); request.estudio = _estudio; //request.id_SitioSpecified = true; request.id_Sitio = _estudio.id_Sitio; request.vchClaveSitio = _estudio.vchClaveSitio; request.Token = Security.Encrypt(_estudio.id_Sitio + "|" + _estudio.vchClaveSitio); response = NapoleonDA.setEstudioServer(request); } catch (Exception esES) { response.valido = false; response.message = esES.Message; Log.EscribeLog("Existe un error en setEstudioServer: " + esES.Message); } return(response); }
public ClienteF2CResponse updateConfiguracionServer(Feed2Service.clsConfiguracion mdlConfig, ref string mensaje) { ClienteF2CResponse response = new ClienteF2CResponse(); ClienteF2CRequest request = new ClienteF2CRequest(); try { request.mdlConfiguracion = mdlConfig; request.Token = Security.Encrypt(mdlConfig.id_Sitio + "|" + mdlConfig.vchClaveSitio); request.id_Sitio = mdlConfig.id_Sitio; //request.id_SitioSpecified = true; request.vchClaveSitio = mdlConfig.vchClaveSitio; response = NapoleonDA.updateConfiguracionServer(request); mensaje = response.message; } catch (Exception esC) { Log.EscribeLog("Existe un error al actualizar la información: " + esC.Message); response.valido = false; mensaje = esC.Message; } return(response); }
public ClienteF2CResponse getVerificaSitio(string vchClaveSitio, int id_Sitio, ref string mensaje) { ClienteF2CResponse response = new ClienteF2CResponse(); ClienteF2CRequest request = new ClienteF2CRequest(); try { request.vchClaveSitio = vchClaveSitio; request.Token = Security.Encrypt(id_Sitio + "|" + vchClaveSitio); request.id_Sitio = id_Sitio; //request.id_SitioSpecified = true; request.vchClaveSitio = vchClaveSitio; response = NapoleonDA.getVerificaSitio(request); mensaje = response.message; response.valido = true; } catch (Exception egV) { response.message = egV.Message; response.valido = false; Log.EscribeLog("Existe un error en ConfiguracionDataAccess.getVerificaSitio: " + egV.Message); } return(response); }
public static ClienteF2CResponse getConeccion(string vchClaveSitio, int id_Sitio) { ClienteF2CResponse response = new ClienteF2CResponse(); try { ClienteF2CRequest request = new ClienteF2CRequest(); request.id_Sitio = id_Sitio; //request.id_SitioSpecified = true; request.vchClaveSitio = vchClaveSitio; request.Token = Security.Encrypt(id_Sitio + "|" + vchClaveSitio); //response = NapoleonDA.getConeccion(request); using (NapoleonDA = new NapoleonServiceClient()) { response = NapoleonDA.getConeccion(request); } Log.EscribeLog("Se consulta la configuración: Puerto Cliente: " + response.ConfigSitio.intPuertoCliente); } catch (Exception egc) { Log.EscribeLog("Existe un error al obtner las configuraciones para el Servicio SCP: " + egc); } return(response); }
public ClienteF2CResponse getConeccion(ClienteF2CRequest request) { ClienteF2CResponse response = new ClienteF2CResponse(); try { if (Security.ValidateTokenSitio(request.Token, request.id_Sitio.ToString(), request.vchClaveSitio)) { NapoleonDataAccess controller = new NapoleonDataAccess(); response.ConfigSitio = controller.getConeccion(request.vchClaveSitio); response.valido = true; } else { response.valido = false; response.message = "Los datos de validación son erroneos."; } } catch (Exception getC) { throw getC; } return(response); }
private void cargarServicio() { try { string path = ""; try { path = ConfigurationManager.AppSettings["ConfigDirectory"] != null ? ConfigurationManager.AppSettings["ConfigDirectory"].ToString() : ""; } catch (Exception ePath) { path = ""; Log.EscribeLog("Error al obtener el path desde appSettings: " + ePath.Message); } string PathDestino = ""; try { PathDestino = ConfigurationManager.AppSettings["PathDes"].ToString(); //Verificar Folder if (!Directory.Exists(PathDestino)) { Directory.CreateDirectory(PathDestino); } } catch (Exception ePATHDES) { Log.EscribeLog("Existe un error al leer el path de destino: " + ePATHDES.Message); } ClienteF2CResponse mdl = new ClienteF2CResponse(); if (File.Exists(path + "info.xml")) { _conf = XMLConfigurator.getXMLfile(); id_Servicio = _conf.id_Sitio; AETitle = _conf.vchAETitle; vchPathRep = _conf.vchPathLocal; vchClaveSitio = _conf.vchClaveSitio; if (id_Servicio > 0 && vchClaveSitio != "") { Token = Security.Encrypt(id_Servicio + "|" + vchClaveSitio); } } Log.EscribeLog("Sitio: " + vchClaveSitio); if (vchClaveSitio != "") { mdl = ConfigDataAccess.getConeccion(vchClaveSitio, id_Servicio); if (mdl != null || _conf != null) { if (!(id_Servicio > 0)) { id_Servicio = mdl.id_Sitio; } if (vchClaveSitio == "") { vchClaveSitio = mdl.ConfigSitio.vchClaveSitio; } if (AETitle == "") { AETitle = mdl.ConfigSitio.vchAETitle; } if (Token != "") { Token = Security.Encrypt(id_Servicio + "|" + vchClaveSitio); } Log.EscribeLog("Inicio de CargarServicio SCP"); // preload dictionary to prevent timeouts var dict = DicomDictionary.Default; int port = 0; Log.EscribeLog("Puerto: " + (mdl.ConfigSitio == null ? _conf.intPuertoCliente : mdl.ConfigSitio.intPuertoCliente)); Log.EscribeLog("AETitle: " + AETitle); // start DICOM server on port from command line argument or 11112 try { if (_conf.intPuertoCliente > 0) { port = _conf.intPuertoCliente; } else { if (mdl.ConfigSitio.intPuertoCliente > 0) { port = (int)mdl.ConfigSitio.intPuertoCliente; } else { port = Convert.ToInt32(ConfigurationManager.AppSettings["Puerto"].ToString()); } } } catch (Exception ePuerto) { Console.WriteLine("No se pudo leer el puerto especificado, favor de verificar.: " + ePuerto.Message); Log.EscribeLog("No se pudo leer el puerto especificado, favor de verificar.: " + ePuerto.Message); } if (port > 0) { Console.WriteLine($"Iniciando Servidor C-Store SCP en el puerto {port}"); var server = DicomServer.Create <CStoreSCP>(port); Log.EscribeLog($"Iniciando Servidor C-Store SCP en el puerto {port}"); ConfigDataAccess.setService(id_Servicio, vchClaveSitio); // end process Console.WriteLine("Oprimir <return> para finalizar..."); Console.ReadLine(); } else { Console.WriteLine("No se pudo leer el puerto especificado, favor de verificar."); Log.EscribeLog("No se pudo leer el puerto especificado, favor de verificar."); } } } else { Console.WriteLine("No se pudo encontrar los datos para la búsqueda de sitio. En espera de los datos de configuración."); Log.EscribeLog("No se pudo encontrar los datos para la búsqueda de sitio. En espera de los datos de configuración."); } } catch (Exception eLoadService) { Log.EscribeLog("Error al cargar el servicio: " + eLoadService.Message); } }