@Override
  public Ficha_epidemiologia_n22 consultarDatos(
      Map<String, Object> map, Ficha_epidemiologia ficha_epidemiologia) throws Exception {
    //				Ficha_epidemiologia ficha = (Ficha_epidemiologia)ficha_epidemiologia;

    // log.info("-----------------");

    // log.info("map"+map);
    // log.info("ficha"+ficha);

    Impresion_diagnostica impresion_diagnostica =
        (Impresion_diagnostica) map.get("impresion_diagnostica");
    Cie_epidemiologia cie_epidemiologia = (Cie_epidemiologia) map.get("cie_epidemiologia");
    Admision admision = (Admision) map.get("admision");

    Map<String, Object> parameters = new HashMap<String, Object>();
    parameters.put("codigo_empresa", admision.getCodigo_empresa());
    parameters.put("codigo_sucursal", admision.getCodigo_sucursal());
    parameters.put("identificacion", admision.getNro_identificacion());

    if (impresion_diagnostica != null) {
      parameters.put("codigo_historia", impresion_diagnostica.getCodigo_historia());
    } else {
      return null;
    }

    if (cie_epidemiologia != null) {
      parameters.put("codigo_diagnostico", cie_epidemiologia.getCodigo_cie());
    } else {
      return null;
    }

    getServiceLocator().getFicha_epidemiologia_nnService().setLimit("limit 25 offset 0");

    List<Ficha_epidemiologia_n22> lista_datos =
        getServiceLocator()
            .getFicha_epidemiologia_nnService()
            .listar(Ficha_epidemiologia_n22.class, parameters);

    // log.info("lista_datos"+lista_datos);

    if (!lista_datos.isEmpty()) {
      Ficha_epidemiologia_n22 ficha_n22 = lista_datos.get(lista_datos.size() - 1);

      return ficha_n22;
    } else {

      return null;
    }
  }
  public void cargarDatosIniciales() throws Exception {
    Map parametros = Executions.getCurrent().getArg();
    admision_seleccionada = (Admision) parametros.get("admision_seleccionada");
    Long codigo_historia = null;
    Hisc_urgencia hu = new Hisc_urgencia();
    hu.setNro_ingreso(admision_seleccionada.getNro_ingreso());
    hu.setCodigo_empresa(admision_seleccionada.getCodigo_empresa());
    hu.setCodigo_sucursal(admision_seleccionada.getCodigo_sucursal());
    hu.setNro_identificacion(admision_seleccionada.getNro_identificacion());

    hu = getServiceLocator().getServicio(Hisc_urgenciaService.class).consultar(hu);
    if (hu != null) {
      codigo_historia = hu.getCodigo_historia();
    }

    Impresion_diagnostica impresion_diagnostica = new Impresion_diagnostica();
    impresion_diagnostica.setCodigo_historia(codigo_historia);
    impresion_diagnostica.setCodigo_sucursal(admision_seleccionada.getCodigo_sucursal());
    impresion_diagnostica.setCodigo_empresa(admision_seleccionada.getCodigo_empresa());

    impresion_diagnostica =
        getServiceLocator()
            .getServicio(Impresion_diagnosticaService.class)
            .consultar(impresion_diagnostica);

    // log.info("impresion_diagnostica>>>>>>>>>>>" + impresion_diagnostica);

    if (impresion_diagnostica != null) {
      tbxCie_p.setValue(impresion_diagnostica.getCie_relacionado1());
      tbxCie_1.setValue(impresion_diagnostica.getCie_relacionado2());
      tbxCie_2.setValue(impresion_diagnostica.getCie_relacionado3());
    }

    // loadComponents();
    onMostrarModuloOrdenamiento();

    Anexo3_entidad anexo3_entidad = new Anexo3_entidad();
    anexo3_entidad.setCodigo_empresa(codigo_empresa);
    anexo3_entidad.setCodigo_sucursal(codigo_sucursal);
    anexo3_entidad.setCodigo_paciente(admision_seleccionada.getNro_identificacion());
    anexo3_entidad.setNro_ingreso(admision_seleccionada.getNro_ingreso());
    //		anexo3_entidad.setCie_1(impresion_diagnostica.getCie_relacionado2());
    //		anexo3_entidad.setCie_2(impresion_diagnostica.getCie_relacionado3());
    //		anexo3_entidad.setCie_p(impresion_diagnostica.getCie_relacionado1());
    anexo3_entidad = getServiceLocator().getAnexo3EntidadService().consultar(anexo3_entidad);
    if (anexo3_entidad != null) {
      mostrarDatos(anexo3_entidad);
    } else {
      accionForm(true, "registrar");
    }

    inicializarCampos();
  }
  public void inicializarCampos() {
    Map parametros = Executions.getCurrent().getArg();
    admision_seleccionada = (Admision) parametros.get("admision_seleccionada");
    Long codigo_historia = null;
    Hisc_urgencia hu = new Hisc_urgencia();
    hu.setNro_ingreso(admision_seleccionada.getNro_ingreso());
    hu.setCodigo_empresa(admision_seleccionada.getCodigo_empresa());
    hu.setCodigo_sucursal(admision_seleccionada.getCodigo_sucursal());
    hu.setNro_identificacion(admision_seleccionada.getNro_identificacion());

    Impresion_diagnostica impresion_diagnostica = new Impresion_diagnostica();
    impresion_diagnostica.setCodigo_historia(codigo_historia);
    impresion_diagnostica.setCodigo_sucursal(admision_seleccionada.getCodigo_sucursal());
    impresion_diagnostica.setCodigo_empresa(admision_seleccionada.getCodigo_empresa());

    impresion_diagnostica =
        getServiceLocator()
            .getServicio(Impresion_diagnosticaService.class)
            .consultar(impresion_diagnostica);

    if (impresion_diagnostica != null) {
      tbxCie_p.setValue(impresion_diagnostica.getCie_relacionado1());
      tbxCie_1.setValue(impresion_diagnostica.getCie_relacionado2());
      tbxCie_2.setValue(impresion_diagnostica.getCie_relacionado3());
    }

    tbxNombre_prestador.setValue(empresa.getNombre_empresa());
    tbxNit_prestador.setText(empresa.getNro_identificacion());
    tbxTelefono_prestador.setText(empresa.getTelefonos());

    // -----------------Paciente----------------------------
    Paciente p = admision_seleccionada.getPaciente();
    if (p != null) {
      Municipios mun1 = new Municipios();
      mun1.setCodigo(empresa.getCodigo_municipio());
      mun1.setCoddep(empresa.getCodigo_dpto());
      mun1 = getServiceLocator().getServicio(MunicipiosService.class).consultar(mun1);
      Departamentos dep1 = new Departamentos();
      dep1.setCodigo(p.getCodigo_dpto());
      dep1 = getServiceLocator().getServicio(DepartamentosService.class).consultar(dep1);
      tbxCodigo_paciente_a3.setValue(p.getNro_identificacion());
      //			codigo_paciente = p.getNro_identificacion();
      tbxNomPaciente.setValue(
          p.getNombre1() + " " + p.getNombre2() + " " + p.getApellido1() + " " + p.getApellido2());
      tbxDirPac.setValue(p.getDireccion() + "");
      tbxFecNac.setValue(new SimpleDateFormat("yyyy-MM-dd").format(p.getFecha_nacimiento()));
      tbxTelPac.setValue(p.getTel_oficina() + " " + p.getTel_res());
      tbxDpto.setValue(dep1.getNombre());
      tbxMun.setValue(mun1.getNombre());
    }

    Departamentos dep = new Departamentos();
    dep.setCodigo(empresa.getCodigo_dpto());
    dep = getServiceLocator().getServicio(DepartamentosService.class).consultar(dep);
    tbxDepartamento_prestador.setText(dep.getNombre());
    Municipios mun = new Municipios();
    mun.setCodigo(empresa.getCodigo_municipio());
    mun.setCoddep(empresa.getCodigo_dpto());
    mun = getServiceLocator().getServicio(MunicipiosService.class).consultar(mun);
    tbxMunicipio_prestador.setText(mun.getNombre());
    tbxPagador_prestador.setText(admision_seleccionada.getAdministradora().getNombre());
    tbxCodigo_prestador.setText(admision_seleccionada.getCodigo_administradora());
  }