Añado los fuentes de java

This commit is contained in:
2025-06-09 13:37:06 +02:00
parent d6c990e5d5
commit a97a6350ee
226 changed files with 57246 additions and 0 deletions
@@ -0,0 +1,55 @@
package com.tarisan.chipcard.tpvvs.webservicetrayicon;
import java.awt.*;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;
import java.awt.event.WindowAdapter;
import java.awt.event.WindowEvent;
import javax.swing.*;
import javax.swing.border.EmptyBorder;
public class AboutBox extends JFrame {
public static final ImageIcon fondo=new ImageIcon(WebServiceTrayIcon.loadImage("acercade02.gif"));
// Create new about box given parent frame
public AboutBox() {
// Make modal dialog given parent and title
super("Acerca de");
this.setUndecorated(true);
// Layout stuff
JLabel panel = new JLabel();
//panel.setBackground();
//panel.setI
panel.setIcon(fondo);
panel.setSize(new Dimension(fondo.getIconWidth(),fondo.getIconHeight()));
panel.setLayout(null);
JPanel container=new JPanel();
container.setBounds(195,15,185,220);
panel.add(container);
container.setLayout(new BorderLayout());
JPanel txt = new JPanel();
txt.setLayout(new GridLayout(0,1));
addWindowListener(new CloseWindowListener());
container.setBorder(new EmptyBorder(4,4,4,4));
setContentPane(panel);
panel.validate();
pack();
}
// Close listener for OK button
private class CloseListener implements ActionListener {
public void actionPerformed(ActionEvent evt) {
dispose();
}
}
// Close listener for windows button
private class CloseWindowListener extends WindowAdapter {
public void windowClosing(WindowEvent evt) {
dispose();
}
}
}
@@ -0,0 +1,245 @@
package com.tarisan.chipcard.tpvvs.webservicetrayicon;
import java.awt.BorderLayout;
import javax.swing.*;
import com.tarisan.chipcard.gui.*;
import java.util.*;
import com.tarisan.chipcard.tpvvs.webservicetrayicon.accesodatos.*;
import com.tarisan.chipcard.tpvvs.webservicetrayicon.messages.*;
import java.awt.event.*;
/**
* Ventana de anulaciones
*
* @author jescacena
*
*/
public class AnulacionesFrame extends JFrame implements ActionListener, ControladorRespuestas {
private AnulacionesPanel jpAnulPanel = new AnulacionesPanel();
private JButton btnAceptar = null;
private JButton btnCancelar = null;
private TerminalSanitarioBean terBean = new TerminalSanitarioBean();
private UsuarioTVSBean userBean = new UsuarioTVSBean();
private VentanaProgreso progressWindow = null;
public String devuelveRespuesta(String a)
{
return a;
}
public AnulacionesFrame() {
setIconImage(WebServiceTrayIcon.image_authorizations_16);
progressWindow = new VentanaProgreso(this, "Solicitando anulación");
progressWindow.setVisible(false);
setTitle("Anulaciones");
Vector vTer = terBean.getTerminalesSanitarios();
if (vTer.size() == 0) {
NuevoTerminalFrame frmT = new NuevoTerminalFrame();
WebServiceTrayIcon.showMessage(
frmT,
getTitle(),
"Es necesario configurar antes Terminales Sanitarios",
JOptionPane.WARNING_MESSAGE,
10);
dispose();
} else {
Vector vUsers = userBean.getUsuariosTVS();
if (vUsers.size() == 0) {
NuevoUsuarioTVSFrame frmU = new NuevoUsuarioTVSFrame();
frmU.updateData();
WebServiceTrayIcon.showMessage(
frmU,
getTitle(),
"Es necesario configurar antes algún Usuario del TVS",
JOptionPane.WARNING_MESSAGE,
10);
dispose();
} else {
init();
}
}
}
private void init() {
getContentPane().setLayout(new BorderLayout());
JPanel pn = new JPanel();
pn.setLayout(new java.awt.GridBagLayout());
java.awt.GridBagConstraints gridBagConstraints = new java.awt.GridBagConstraints();
gridBagConstraints.fill = java.awt.GridBagConstraints.HORIZONTAL;
gridBagConstraints.gridx = 0;
gridBagConstraints.gridy = 0;
gridBagConstraints.anchor = java.awt.GridBagConstraints.NORTHWEST;
gridBagConstraints.insets = new java.awt.Insets(5, 5, 5, 5);
pn.add(jpAnulPanel, gridBagConstraints);
gridBagConstraints.gridx = 0;
gridBagConstraints.gridy++;
JPanel jpButtons = new JPanel();
jpButtons.setLayout(new java.awt.FlowLayout());
jpButtons.add(getButtonAceptar());
jpButtons.add(getButtonCancelar());
pn.add(jpButtons, gridBagConstraints);
getContentPane().add(pn, java.awt.BorderLayout.CENTER);
jpAnulPanel.updateData();
pack();
show();
UtilGUI.centerOnScreen(this);
}
private JButton getButtonAceptar() {
if (btnAceptar == null) {
btnAceptar = new JButton();
btnAceptar.setText("Aceptar");
btnAceptar.setIcon(new ImageIcon(WebServiceTrayIcon.loadImage("aceptar32.gif")));
btnAceptar.addActionListener(this);
}
return btnAceptar;
}
private JButton getButtonCancelar() {
if (btnCancelar == null) {
btnCancelar = new JButton();
btnCancelar.setText("Cancelar");
btnCancelar.setIcon(new ImageIcon(WebServiceTrayIcon.loadImage("cancelar32.gif")));
btnCancelar.addActionListener(new ActionListener() {
public void actionPerformed(ActionEvent evt) {
setVisible(false);
dispose();
}
});
}
return btnCancelar;
}
/**
* @return
*/
public AnulacionesPanel getAnulacionesPanel() {
return jpAnulPanel;
}
public void actionPerformed(ActionEvent evt) {
UsuarioTVS user = (UsuarioTVS) getAnulacionesPanel().getCmbImageComboUsuarios().getSelectedItem();
boolean siTerminalDeLaboratorio = user.getTerminal().isTVA();
if (user == null) {
showErrorMessage("Se debe seleccionar un usuario");
return;
}
DialogoTarjetaSanitaria objDialog = new DialogoTarjetaSanitaria(this);
com.tarisan.chipcard.tpvvs.webservicetrayicon.accesodatos.Paciente paciente = objDialog.getPaciente();
objDialog.dispose();
setEnabled(false);
//Construyo el mensaje a enviar
AnulReq anulRequest = null;
try {
anulRequest =
new AnulReq(
user.getTerminal().getNumeroTerminal(),
getAnulacionesPanel().getJtxtTimestamp().getText(),
user);
} catch (Exception err) {
err.printStackTrace();
WebServiceTrayIcon.showErrorMessage(
getTitle(),
"No se pudo componer la solicitud de anulación a enviar:" + err.getMessage());
setEnabled(true);
}
if (anulRequest != null) {
//Ya tengo la peticion a enviar...
String sURL = getAnulacionesPanel().getCmbURLService().getSelectedItem().toString();
java.net.URL endPointURL = null;
try {
endPointURL = new java.net.URL(sURL);
} catch (Exception err) {
err.printStackTrace();
WebServiceTrayIcon.showErrorMessage(
getTitle(),
"No se pudo enviar la solicitud de anulación a '" + sURL + "' debido al error:" + err.getMessage());
}
if (endPointURL != null) {
progressWindow.setProgressState(0);
progressWindow.setModal(false);
UtilGUI.centerOnWindow(progressWindow, this);
ClienteServicioWeb objClienteServicioWeb =
new ClienteServicioWeb(anulRequest, this, endPointURL);
ProgressBarThread PBTh =
new ProgressBarThread(progressWindow, objClienteServicioWeb.getSegundosTimeout());
PBTh.start();
} else {
setEnabled(true);
}
} else {
setEnabled(true);
}
}
/*****
* Recibe la respuesta del Servicio Web
*/
public String recibeRespuesta(String sResponse) {
if (progressWindow != null)
progressWindow.setVisible(false);
setEnabled(true);
if (sResponse != null) {
Msg objResponse = null;
try {
objResponse = Msg.createMsgFromString(sResponse);
if (objResponse.getTypeOfMessage() == Msg.TYPE_OF_MESSAGE_ERROR) {
com.tarisan.chipcard.tpvvs.webservicetrayicon.messages.Error errorMes =
(com.tarisan.chipcard.tpvvs.webservicetrayicon.messages.Error) objResponse;
//Es un Error en la peticion
showErrorMessage(
"Se ha producido el error con código "
+ errorMes.getErrorCode()
+ ".\nDescripción:"
+ errorMes.getErrorDescription());
} else if (objResponse.getTypeOfMessage() == Msg.TYPE_OF_MESSAGE_CCRES) {
com.tarisan.chipcard.tpvvs.webservicetrayicon.messages.AutRes autResMes =
(com.tarisan.chipcard.tpvvs.webservicetrayicon.messages.AutRes) objResponse;
WebServiceTrayIcon.showTransactionInfo(autResMes, this);
}
} catch (Exception err) {
err.printStackTrace();
showErrorMessage(
"Se ha producido un error al procesar la respuesta.\nDescripción:" + err.getMessage());
}
} else {
//Se debería repetir la respuesta?? Se supone que no se ha recibido
}
return "";
}
public void setEnabled(boolean blnEnabled) {
super.setEnabled(blnEnabled);
getAnulacionesPanel().setEnabled(blnEnabled);
getButtonAceptar().setEnabled(blnEnabled);
getButtonCancelar().setEnabled(blnEnabled);
if (!blnEnabled)
setCursor(java.awt.Cursor.getPredefinedCursor(java.awt.Cursor.WAIT_CURSOR));
else
setCursor(java.awt.Cursor.getPredefinedCursor(java.awt.Cursor.DEFAULT_CURSOR));
validate();
repaint();
}
private void showErrorMessage(String sMessage) {
WebServiceTrayIcon.showMessage(this, getTitle(), sMessage, JOptionPane.ERROR_MESSAGE);
}
private void showInformationMessage(String sMessage) {
WebServiceTrayIcon.showMessage(this, getTitle(), sMessage, JOptionPane.INFORMATION_MESSAGE);
}
private void showWarningMessage(String sMessage) {
WebServiceTrayIcon.showMessage(this, getTitle(), sMessage, JOptionPane.WARNING_MESSAGE);
}
}
@@ -0,0 +1,126 @@
package com.tarisan.chipcard.tpvvs.webservicetrayicon;
import java.util.Vector;
import javax.swing.JComboBox;
import javax.swing.JLabel;
import javax.swing.JPanel;
import javax.swing.JTextField;
import com.tarisan.chipcard.gui.ImageComboBox;
import com.tarisan.chipcard.tpvvs.webservicetrayicon.accesodatos.UsuarioTVS;
import com.tarisan.chipcard.tpvvs.webservicetrayicon.accesodatos.UsuarioTVSBean;
public class AnulacionesPanel extends JPanel {
private ImageComboBox cmbImageComboUsuarios = new ImageComboBox();
private JComboBox cmbURLService = new JComboBox();
private JTextField jtxtTimestamp = new JTextField();
public AnulacionesPanel() {
super();
init();
}
private void init() {
//setLayout(new BorderLayout());
initPane();
//JPanel pn=new JPanel();
/**
setLayout(new java.awt.GridBagLayout());
java.awt.GridBagConstraints gridBagConstraints = new java.awt.GridBagConstraints();
gridBagConstraints.fill = java.awt.GridBagConstraints.HORIZONTAL;
gridBagConstraints.gridx = 0;
gridBagConstraints.gridy = 0;
gridBagConstraints.anchor = java.awt.GridBagConstraints.NORTHWEST;
gridBagConstraints.insets = new java.awt.Insets(5, 5, 5, 5);
pn.add(jpPrincipal, gridBagConstraints);
gridBagConstraints.gridx = 1;
add(pn, java.awt.BorderLayout.CENTER);
**/
}
private void initPane() {
setLayout(new java.awt.GridBagLayout());
setBorder(new javax.swing.border.TitledBorder("Datos de la Solicitud de anulación al TVS"));
java.awt.GridBagConstraints gridBagConstraints = new java.awt.GridBagConstraints();
gridBagConstraints.fill = java.awt.GridBagConstraints.HORIZONTAL;
gridBagConstraints.gridx = 0;
gridBagConstraints.gridy = 1;
gridBagConstraints.anchor = java.awt.GridBagConstraints.WEST;
gridBagConstraints.insets = new java.awt.Insets(5, 5, 5, 5);
gridBagConstraints.gridwidth = 1;
gridBagConstraints.gridy++;
gridBagConstraints.gridx = 0;
JLabel label = new javax.swing.JLabel("URL Servicio Web:");
add(label, gridBagConstraints);
gridBagConstraints.gridx++;
cmbURLService.setEditable(true);
WebServiceTrayIcon.fillURLServices(cmbURLService);
add(cmbURLService, gridBagConstraints);
gridBagConstraints.gridy++;
gridBagConstraints.gridx = 0;
label = new javax.swing.JLabel("Usuario:");
add(label, gridBagConstraints);
gridBagConstraints.gridx++;
add(cmbImageComboUsuarios, gridBagConstraints);
gridBagConstraints.gridy++;
gridBagConstraints.gridx = 0;
label = new javax.swing.JLabel("Timestamp:");
add(label, gridBagConstraints);
gridBagConstraints.gridx++;
//JScrollPane listScrollPane3 = new JScrollPane(txtDatosCliente);
//listScrollPane3.setPreferredSize(maxSize);
add(jtxtTimestamp, gridBagConstraints);
}
public void updateData() {
getCmbImageComboUsuarios().removeAllItems();
UsuarioTVSBean bean = new UsuarioTVSBean();
Vector vUsuarios = bean.getUsuariosTVS();
for (int i = 0; i < vUsuarios.size(); i++) {
UsuarioTVS obj = (UsuarioTVS) vUsuarios.elementAt(i);
getCmbImageComboUsuarios().addItem(obj);
}
}
/**
* @return
*/
public ImageComboBox getCmbImageComboUsuarios() {
return cmbImageComboUsuarios;
}
/**
* @return
*/
public JComboBox getCmbURLService() {
return cmbURLService;
}
public void setEnabled(boolean blnEnabled) {
super.setEnabled(blnEnabled);
java.awt.Component arrComp[] = this.getComponents();
for (int i = 0; i < this.getComponentCount(); i++) {
arrComp[i].setEnabled(blnEnabled);
}
validate();
repaint();
}
/**
* @return
*/
public JTextField getJtxtTimestamp() {
return jtxtTimestamp;
}
}
@@ -0,0 +1,190 @@
package com.tarisan.chipcard.tpvvs.webservicetrayicon;
import javax.swing.JDialog;
import com.tarisan.chipcard.gui.*;
import javax.swing.*;
import java.util.*;
import java.awt.*;
import java.awt.event.*;
/**
* @author jjrider
*
* To change the template for this generated type comment go to
* Window&gt;Preferences&gt;Java&gt;Code Generation&gt;Code and Comments
*/
public class AutomaticCloseDialog extends JDialog implements ActionListener,Runnable {
private int intNumeroSegundos=5;
private Thread objThread=null;
private Window objWindow=this;
private ActionListener externActionListener=null;
private int intTypeOfMessage=-1;
JPanel pnl=new JPanel();
public AutomaticCloseDialog(String strTitle,String strMensaje,int intNumeroSegundos){
this(strTitle,strMensaje,intNumeroSegundos,null);
}
public AutomaticCloseDialog(String strTitle,String strMensaje,int intNumeroSegundos,JFrame parentFrame){
this(strTitle,strMensaje,intNumeroSegundos,parentFrame,JOptionPane.INFORMATION_MESSAGE);
}
public AutomaticCloseDialog(String strTitle,String strMensaje,int intNumeroSegundos,JFrame parentFrame, int intTypeOfMessage){
this(strTitle,strMensaje,intNumeroSegundos,parentFrame,intTypeOfMessage,true);
}
public AutomaticCloseDialog(String strTitle,String strMensaje,int intNumeroSegundos,JFrame parentFrame, int intTypeOfMessage,ActionListener listener){
this(strTitle,strMensaje,intNumeroSegundos,parentFrame,intTypeOfMessage,true,listener);
}
public AutomaticCloseDialog(String strTitle,String strMensaje,int intNumeroSegundos,JFrame parentFrame, int intTypeOfMessage, boolean blnModal){
this(strTitle, strMensaje, intNumeroSegundos, parentFrame, intTypeOfMessage, blnModal,null);
}
public AutomaticCloseDialog(String strTitle,String strMensaje,int intNumeroSegundos,JFrame parentFrame, int intTypeOfMessage, boolean blnModal,ActionListener listener){
super(parentFrame);
setUndecorated(false);
this.setModal(true);
this.intNumeroSegundos=intNumeroSegundos;
this.intTypeOfMessage=intTypeOfMessage;
setTitle(strTitle);
setContentPane(pnl);
getContentPane().setLayout(new GridBagLayout());
int columna=0;
int fila=0;
externActionListener=listener;
//getContentPane().setLayout(new BorderLayout());
JPanel panel=new JPanel();
panel.setLayout(new BorderLayout());
//Un tamaño por defecto...
setSize(300,200);
JLabel label=null;
Icon icon=getIconForType(intTypeOfMessage);
if(icon!=null){
label=new JLabel(icon);
label.setBounds(10,40,20,20);
getContentPane().add(label, new java.awt.GridBagConstraints(columna,fila,1,1,1.0,1.0,java.awt.GridBagConstraints.WEST,java.awt.GridBagConstraints.NONE,new Insets(10,10,10,10),0,0));
columna++;
}
JPanel panelLabels=new JPanel();
panelLabels.setLayout(new GridBagLayout());
StringTokenizer st=new StringTokenizer(strMensaje,"\n");
int intNumLabels=0;
while(st.hasMoreTokens()) {
intNumLabels++;
label=new JLabel(st.nextToken());
panelLabels.add(label, new java.awt.GridBagConstraints(0,intNumLabels,1,1,1.0,1.0,java.awt.GridBagConstraints.WEST,java.awt.GridBagConstraints.NONE,new Insets(00,00,00,00),0,0));
}
//label.setBounds(40,40,300,20);
//panel.add(label,BorderLayout.CENTER);
getContentPane().add(panelLabels, new java.awt.GridBagConstraints(columna,fila,1,1,1.0,1.0,java.awt.GridBagConstraints.WEST,java.awt.GridBagConstraints.HORIZONTAL,new Insets(10,10,10,10),0,0));
columna=0;
fila++;
/*panelTemp=new JPanel();
getContentPane().add(panelTemp, new java.awt.GridBagConstraints(columna,fila,1,1,1.0,1.0,java.awt.GridBagConstraints.WEST,java.awt.GridBagConstraints.BOTH,new Insets(0,0,0,0),0,0));
fila++;*/
String strOKText="Aceptar";
if(intTypeOfMessage==JOptionPane.QUESTION_MESSAGE)
strOKText="Si";
JButton btnAceptar=new JButton(strOKText);
btnAceptar.setActionCommand("Aceptar");
btnAceptar.addActionListener(this);
btnAceptar.setPreferredSize(new Dimension(90,20));
btnAceptar.setMaximumSize(new Dimension(90,20));
if(externActionListener==null){
getContentPane().add(btnAceptar, new java.awt.GridBagConstraints(columna,fila,2,1,1.0,1.0,java.awt.GridBagConstraints.CENTER,java.awt.GridBagConstraints.NONE,new Insets(10,0,10,0),0,0));
}else{
JPanel panelButtons=new JPanel();
panelButtons.setLayout(new FlowLayout());
panelButtons.add(btnAceptar);
String strCancelText="Cancelar";
if(intTypeOfMessage==JOptionPane.QUESTION_MESSAGE)
strCancelText="No";
JButton btnCancelar=new JButton(strCancelText);
btnCancelar.setActionCommand("Cancelar");
btnCancelar.addActionListener(this);
btnCancelar.setPreferredSize(new Dimension(90,20));
btnCancelar.setMaximumSize(new Dimension(90,20));
panelButtons.add(btnCancelar);
getContentPane().add(panelButtons, new java.awt.GridBagConstraints(columna,fila,2,1,1.0,1.0,java.awt.GridBagConstraints.CENTER,java.awt.GridBagConstraints.NONE,new Insets(10,0,10,0),0,0));
if(this.intNumeroSegundos<30)
this.intNumeroSegundos=30;
}
validate();
pack();
centerOn(objWindow,parentFrame);
if(this.intNumeroSegundos>0){
objThread=new Thread(this);
objThread.start();
}
objWindow.show();
objWindow.requestFocus();
objWindow.toFront();
}
public void actionPerformed(ActionEvent e){
objWindow.hide();
try{objThread.stop();}catch(Exception err){}
if(externActionListener!=null){
externActionListener.actionPerformed(e);
}
}
public static void centerOn(Window dialog,JFrame frame){
if(dialog==null)
return;
Dimension dimFrame=null;
if(frame==null)
UtilGUI.centerOnScreen(dialog);
else
UtilGUI.centerOnWindow(dialog,frame);
}
public void run(){
if(intNumeroSegundos>0){
try{
while(!objWindow.isShowing()){
objThread.sleep(100);
}
for(int i=0;i<intNumeroSegundos;i++)
objThread.sleep(1000);
}catch(Exception err){
}
objWindow.hide();
}
}
public static Icon getIconForType(int iconType) {
try{
switch (iconType) {
case JOptionPane.ERROR_MESSAGE:
return UIManager.getIcon("OptionPane.errorIcon");
case JOptionPane.INFORMATION_MESSAGE:
return UIManager.getIcon("OptionPane.informationIcon");
case JOptionPane.WARNING_MESSAGE:
return UIManager.getIcon("OptionPane.warningIcon");
case JOptionPane.QUESTION_MESSAGE:
return UIManager.getIcon("OptionPane.questionIcon");
}
}catch(Exception err){}
return null;
}
}
@@ -0,0 +1,309 @@
package com.tarisan.chipcard.tpvvs.webservicetrayicon;
import java.awt.BorderLayout;
import javax.swing.*;
import com.tarisan.chipcard.gui.*;
import com.tarisan.chipcard.tpvvs.webservicetrayicon.messages.*;
import java.util.*;
import com.tarisan.chipcard.tpvvs.webservicetrayicon.accesodatos.*;
import java.awt.event.*;
/**
* @author jjrider
*
* Para cambiar la plantilla para este comentario de tipo generado vaya a
* Ventana&gt;Preferencias&gt;Java&gt;Generación de código&gt;Código y comentarios
*/
public class AutorizacionesFrame extends JFrame implements ActionListener,ControladorRespuestas{
private AutorizacionesPanel jpAutPanel=new AutorizacionesPanel();
private JButton btnAceptar=null;
private JButton btnCancelar=null;
private AutorizacionesBean autBean=new AutorizacionesBean();
private TerminalSanitarioBean terBean=new TerminalSanitarioBean();
private UsuarioTVSBean userBean=new UsuarioTVSBean();
private VentanaProgreso progressWindow=null;
public String devuelveRespuesta(String a)
{
return a;
}
public AutorizacionesFrame(){
setIconImage(WebServiceTrayIcon.image_authorizations_16);
progressWindow=new VentanaProgreso(this,"Solicitando autorización");
progressWindow.setVisible(false);
setTitle("Autorizaciones");
Vector vTer=terBean.getTerminalesSanitarios();
if(vTer.size()==0){
NuevoTerminalFrame frmT=new NuevoTerminalFrame();
WebServiceTrayIcon.showMessage(frmT,getTitle(),"Es necesario configurar antes Terminales Sanitarios",JOptionPane.WARNING_MESSAGE,10);
dispose();
}else{
Vector vUsers=userBean.getUsuariosTVS();
if(vUsers.size()==0){
NuevoUsuarioTVSFrame frmU=new NuevoUsuarioTVSFrame();
frmU.updateData();
WebServiceTrayIcon.showMessage(frmU,getTitle(),"Es necesario configurar antes algún Usuario del TVS",JOptionPane.WARNING_MESSAGE,10);
dispose();
}else{
init();
}
}
}
private void init(){
getContentPane().setLayout(new BorderLayout());
JPanel pn=new JPanel();
pn.setLayout(new java.awt.GridBagLayout());
java.awt.GridBagConstraints gridBagConstraints = new java.awt.GridBagConstraints();
gridBagConstraints.fill = java.awt.GridBagConstraints.HORIZONTAL;
gridBagConstraints.gridx = 0;
gridBagConstraints.gridy = 0;
gridBagConstraints.anchor = java.awt.GridBagConstraints.NORTHWEST;
gridBagConstraints.insets = new java.awt.Insets(5, 5, 5, 5);
pn.add(jpAutPanel, gridBagConstraints);
gridBagConstraints.gridx = 0;
gridBagConstraints.gridy++;
JPanel jpButtons=new JPanel();
jpButtons.setLayout(new java.awt.FlowLayout());
jpButtons.add(getButtonAceptar());
jpButtons.add(getButtonCancelar());
pn.add(jpButtons,gridBagConstraints);
getContentPane().add(pn, java.awt.BorderLayout.CENTER);
jpAutPanel.updateData();
pack();
show();
UtilGUI.centerOnScreen(this);
}
private JButton getButtonAceptar(){
if(btnAceptar==null){
btnAceptar=new JButton();
btnAceptar.setText("Aceptar");
btnAceptar.setIcon(new ImageIcon(WebServiceTrayIcon.loadImage("aceptar32.gif")));
btnAceptar.addActionListener(this);
}
return btnAceptar;
}
private JButton getButtonCancelar(){
if(btnCancelar==null){
btnCancelar=new JButton();
btnCancelar.setText("Cancelar");
btnCancelar.setIcon(new ImageIcon(WebServiceTrayIcon.loadImage("cancelar32.gif")));
btnCancelar.addActionListener(new ActionListener(){
public void actionPerformed(ActionEvent evt){
setVisible(false);
dispose();
}
}
);
}
return btnCancelar;
}
/**
* @return
*/
public AutorizacionesPanel getAutorizacionesPanel() {
return jpAutPanel;
}
public void actionPerformed(ActionEvent evt){
UsuarioTVS user=(UsuarioTVS)getAutorizacionesPanel().getCmbImageComboUsuarios().getSelectedItem();
boolean siTerminalDeLaboratorio=user.getTerminal().isTVA();
if(user==null){
showErrorMessage("Se debe seleccionar un usuario");
return;
}
CompaniaSanitaria comp=(CompaniaSanitaria)getAutorizacionesPanel().getCmbImageComboCompanias().getSelectedItem();
if(comp==null){
showErrorMessage("Se debe seleccionar una compañia");
return;
}
EspecialidadSanitaria espe=null;
if(!siTerminalDeLaboratorio){
espe=(EspecialidadSanitaria)getAutorizacionesPanel().getCmbImageComboEspecialidades().getSelectedItem();
if(espe==null){
showErrorMessage("Se debe seleccionar una Especialidad");
return;
}
}
ProfesionalSanitario prof=(ProfesionalSanitario)getAutorizacionesPanel().getCmbImageComboProfesionales().getSelectedItem();
if(prof==null){
showErrorMessage("Se debe seleccionar un profesional");
return;
}
ListaActos listaActos=(ListaActos)getAutorizacionesPanel().getCmbImageComboListaActos().getSelectedItem();
if(listaActos==null){
showErrorMessage("Se debe seleccionar una Lista de Actos");
return;
}
String sTipoOperacion=getAutorizacionesPanel().getCmbImageComboTipoOperacion().getSelectedItem().toString();
ActoMedico arrActos[]=null;
if(!siTerminalDeLaboratorio ){
if(getAutorizacionesPanel().getActosMedicosSolicitadosModel().getSize()==0
&& !sTipoOperacion.equals(WSTRConstantes.TIPO_OP_VOL_MEDICO)){
showErrorMessage("Se deben seleccionar Actos Médicos");
return;
}
if(getAutorizacionesPanel().getActosMedicosSolicitadosModel().getSize()>0){
//Se añaden si se tienen
arrActos=new ActoMedico[getAutorizacionesPanel().getActosMedicosSolicitadosModel().getSize()];
for(int i=0;i<getAutorizacionesPanel().getActosMedicosSolicitadosModel().getSize();i++){
arrActos[i]=(ActoMedico)getAutorizacionesPanel().getActosMedicosSolicitadosModel().elementAt(i);
}
}
}
DialogoTarjetaSanitaria objDialog=new DialogoTarjetaSanitaria(this);
Paciente paciente=objDialog.getPaciente();
objDialog.dispose();
setEnabled(false);
//Construyo el mensaje a enviar
AutReq autRequest=null;
try{
if(sTipoOperacion.equals(WSTRConstantes.TIPO_OP_SOLO_TARJETA)){
if(siTerminalDeLaboratorio){
autRequest=new SoloTarjetaLaboratorio(user,paciente,comp,prof,listaActos);
}else{
autRequest=new SoloTarjeta(user,paciente,comp,espe,prof,listaActos,arrActos);
}
}else if(sTipoOperacion.equals(WSTRConstantes.TIPO_OP_DOC_UNICO)){
String sDocUnico=UtilGUI.getInputValue(this,"Por favor, indique el número de Documento Único:");
if(siTerminalDeLaboratorio){
autRequest=new DocumentoUnicoLaboratorio(user,paciente,comp,prof,listaActos,sDocUnico);
}else{
autRequest=new DocumentoUnico(user,paciente,comp,espe,prof,listaActos,arrActos,sDocUnico);
}
}else if(sTipoOperacion.equals(WSTRConstantes.TIPO_OP_VOL_CLINICO)){
String sVolante=UtilGUI.getInputValue(this,"Por favor, indique el número de Volante Clínico:");
autRequest=new VolanteClinico(user,paciente,comp,espe,prof,listaActos,arrActos,sVolante);
}else if(sTipoOperacion.equals(WSTRConstantes.TIPO_OP_VOL_MEDICO)){
String sVolante=UtilGUI.getInputValue(this,"Por favor, indique el número de Volante Médico:");
autRequest=new VolanteMedico(user,paciente,comp,espe,prof,listaActos,sVolante);
}
String sDataCliente=getAutorizacionesPanel().getTxtDatosCliente().getText();
if(sDataCliente.length()>0){
autRequest.setDatosCliente(sDataCliente);
}
if(getAutorizacionesPanel().getChkEsRepeticion().isSelected()){
autRequest.setRepeticion(true);
}
}catch(Exception err){
err.printStackTrace();
WebServiceTrayIcon.showErrorMessage(getTitle(),"No se pudo componer la solicitud a enviar:"+err.getMessage());
setEnabled(true);
}
if(autRequest!=null){
//Ya tengo la peticion a enviar...
String sURL=getAutorizacionesPanel().getCmbURLService().getSelectedItem().toString();
java.net.URL endPointURL=null;
try{
endPointURL=new java.net.URL(sURL);
}catch(Exception err){
err.printStackTrace();
WebServiceTrayIcon.showErrorMessage(getTitle(),"No se pudo enviar la solicitud a '"+sURL+"' debido al error:"+err.getMessage());
}
if(endPointURL!=null){
progressWindow.setProgressState(0);
progressWindow.setModal(false);
UtilGUI.centerOnWindow(progressWindow,this);
ClienteServicioWeb objClienteServicioWeb=new ClienteServicioWeb(autRequest,this,endPointURL);
ProgressBarThread PBTh=new ProgressBarThread(progressWindow,objClienteServicioWeb.getSegundosTimeout());
PBTh.start();
}else {
setEnabled(true);
}
}else{
setEnabled(true);
}
}
/*****
* Recibe la respuesta del Servicio Web
*/
public String recibeRespuesta(String sResponse){
if(progressWindow!=null)
progressWindow.setVisible(false);
setEnabled(true);
if(sResponse!=null){
Msg objResponse=null;
try{
objResponse=Msg.createMsgFromString(sResponse);
if(objResponse.getTypeOfMessage()==Msg.TYPE_OF_MESSAGE_ERROR){
com.tarisan.chipcard.tpvvs.webservicetrayicon.messages.Error errorMes=(com.tarisan.chipcard.tpvvs.webservicetrayicon.messages.Error)objResponse;
//Es un Error en la peticion
showErrorMessage("Se ha producido el error con código "+errorMes.getErrorCode()+".\nDescripción:"+errorMes.getErrorDescription());
}else if(objResponse.getTypeOfMessage()==Msg.TYPE_OF_MESSAGE_CCRES){
com.tarisan.chipcard.tpvvs.webservicetrayicon.messages.AutRes autResMes=(com.tarisan.chipcard.tpvvs.webservicetrayicon.messages.AutRes)objResponse;
Vector vAutorizaciones=WebServiceTrayIcon.AutResMes2Autorizacion(autResMes);
boolean blnAlgunaAutorizada=false;
for(int i=0;i<vAutorizaciones.size();i++){
Autorizacion aut=(Autorizacion)vAutorizaciones.elementAt(i);
if(!blnAlgunaAutorizada)
blnAlgunaAutorizada=aut.estaAutorizada();
autBean.insertInLocal(aut);
}
WebServiceTrayIcon.showTransactionInfo(autResMes,this);
if(blnAlgunaAutorizada){
//Elimino los actos de la lista de actos escogidos
getAutorizacionesPanel().getActosMedicosSolicitadosModel().removeAllElements();
}
}
}catch(Exception err){
err.printStackTrace();
showErrorMessage("Se ha producido un error al procesar la respuesta.\nDescripción:"+err.getMessage());
}
}else{
//Se debería repetir la respuesta?? Se supone que no se ha recibido
}
return "";
}
public void setEnabled(boolean blnEnabled){
super.setEnabled(blnEnabled);
getAutorizacionesPanel().setEnabled(blnEnabled);
getButtonAceptar().setEnabled(blnEnabled);
getButtonCancelar().setEnabled(blnEnabled);
if(!blnEnabled)
setCursor(java.awt.Cursor.getPredefinedCursor(java.awt.Cursor.WAIT_CURSOR));
else
setCursor(java.awt.Cursor.getPredefinedCursor(java.awt.Cursor.DEFAULT_CURSOR));
validate();
repaint();
}
private void showErrorMessage(String sMessage){
WebServiceTrayIcon.showMessage(this,getTitle(),sMessage,JOptionPane.ERROR_MESSAGE);
}
private void showInformationMessage(String sMessage){
WebServiceTrayIcon.showMessage(this,getTitle(),sMessage,JOptionPane.INFORMATION_MESSAGE);
}
private void showWarningMessage(String sMessage){
WebServiceTrayIcon.showMessage(this,getTitle(),sMessage,JOptionPane.WARNING_MESSAGE);
}
}
@@ -0,0 +1,547 @@
package com.tarisan.chipcard.tpvvs.webservicetrayicon;
import javax.swing.*;
import com.tarisan.chipcard.gui.*;
import java.util.*;
import com.tarisan.chipcard.tpvvs.webservicetrayicon.accesodatos.*;
import java.awt.event.*;
public class AutorizacionesPanel extends JPanel{
private ImageComboBox cmbImageComboUsuarios=new ImageComboBox();
private ImageComboBox cmbImageComboCompanias=new ImageComboBox();
private ImageComboBox cmbImageComboEspecialidades=new ImageComboBox();
private ImageComboBox cmbImageComboProfesionales=new ImageComboBox();
private ImageComboBox cmbImageComboListaActos=new ImageComboBox();
private ImageComboBox cmbImageComboTipoOperacion=new ImageComboBox();
private JComboBox cmbURLService=new JComboBox();
private DefaultListModel actosMedicosDeLAListModel = new DefaultListModel();
private JList jlistActosMedicosDeLA=new JList(actosMedicosDeLAListModel);
private DefaultListModel actosMedicosSolicitadosModel = new DefaultListModel();
private JList jlistActosMedicosSolicitados=new JList(actosMedicosSolicitadosModel);
private JTextField jtxtDocUnico=new JTextField();
private JTextField jtxtNumVolante=new JTextField();
private JTextField txtDatosCliente=new JTextField();
private JCheckBox chkEsRepeticion=new JCheckBox("Repetición",false);
private ActoMedicoBean amBean=new ActoMedicoBean();
private final JPopupMenu actosMedicosSolicitadosPopupMenu = new JPopupMenu();
public AutorizacionesPanel(){
super();
init();
}
private void init(){
//setLayout(new BorderLayout());
initPane();
//JPanel pn=new JPanel();
/**
setLayout(new java.awt.GridBagLayout());
java.awt.GridBagConstraints gridBagConstraints = new java.awt.GridBagConstraints();
gridBagConstraints.fill = java.awt.GridBagConstraints.HORIZONTAL;
gridBagConstraints.gridx = 0;
gridBagConstraints.gridy = 0;
gridBagConstraints.anchor = java.awt.GridBagConstraints.NORTHWEST;
gridBagConstraints.insets = new java.awt.Insets(5, 5, 5, 5);
pn.add(jpPrincipal, gridBagConstraints);
gridBagConstraints.gridx = 1;
add(pn, java.awt.BorderLayout.CENTER);
**/
}
private void initPane(){
setLayout(new java.awt.GridBagLayout());
setBorder(new javax.swing.border.TitledBorder("Datos de la Solicitud al TVS"));
java.awt.GridBagConstraints gridBagConstraints = new java.awt.GridBagConstraints();
gridBagConstraints.fill = java.awt.GridBagConstraints.HORIZONTAL;
gridBagConstraints.gridx = 0;
gridBagConstraints.gridy = 1;
gridBagConstraints.anchor = java.awt.GridBagConstraints.WEST;
gridBagConstraints.insets = new java.awt.Insets(5, 5, 5, 5);
gridBagConstraints.gridwidth = 1;
gridBagConstraints.gridy++;
gridBagConstraints.gridx=0;
JLabel label=new javax.swing.JLabel("URL Servicio Web:");
add(label, gridBagConstraints);
gridBagConstraints.gridx++;
cmbURLService.setEditable(true);
WebServiceTrayIcon.fillURLServices(cmbURLService);
add(cmbURLService, gridBagConstraints);
gridBagConstraints.gridy++;
gridBagConstraints.gridx=0;
label=new javax.swing.JLabel("Tipo Operación:");
add(label, gridBagConstraints);
gridBagConstraints.gridx++;
cmbImageComboTipoOperacion.addItem(WSTRConstantes.TIPO_OP_SOLO_TARJETA);
cmbImageComboTipoOperacion.addItem(WSTRConstantes.TIPO_OP_DOC_UNICO);
cmbImageComboTipoOperacion.addItem(WSTRConstantes.TIPO_OP_VOL_CLINICO);
cmbImageComboTipoOperacion.addItem(WSTRConstantes.TIPO_OP_VOL_MEDICO);
add(cmbImageComboTipoOperacion, gridBagConstraints);
/***
cmbImageComboTipoOperacion.addActionListener(new ActionListener(){
public void actionPerformed(ActionEvent evt){
java.awt.GridBagConstraints gridBagConstraints = new java.awt.GridBagConstraints();
gridBagConstraints.fill = java.awt.GridBagConstraints.HORIZONTAL;
gridBagConstraints.gridx = 0;
gridBagConstraints.gridy = 4;
gridBagConstraints.anchor = java.awt.GridBagConstraints.WEST;
gridBagConstraints.insets = new java.awt.Insets(5, 5, 5, 5);
//Fila 4
gridBagConstraints.gridx=0;
JComponent columna1=null;
JComponent columna2=null;
//Cojo la fila
String sTipoOperacion=cmbImageComboTipoOperacion.getSelectedItem().toString();
try{
if(sTipoOperacion.equals(WSTRConstantes.TIPO_OP_SOLO_TARJETA)){
columna1=new javax.swing.JLabel("");
columna2=new javax.swing.JLabel("");
}else if(sTipoOperacion.equals(WSTRConstantes.TIPO_OP_DOC_UNICO)){
columna1=new javax.swing.JLabel("Documento Unico:");
columna2=getJtxtDocUnico();
}else{
if(sTipoOperacion.equals(WSTRConstantes.TIPO_OP_VOL_CLINICO)){
columna1=new javax.swing.JLabel("Volante Clónico:");
}else{
columna1=new javax.swing.JLabel("Volante Médico:");
}
columna2=getJtxtNumVolante();
}
System.out.println("Container:"+getTopLevelAncestor().getClass().getName());
if(getTopLevelAncestor() instanceof JFrame){
((JFrame)getTopLevelAncestor()).pack();
}else{
}
validate();
repaint();
}catch(Exception err){
}
add(columna1, gridBagConstraints);
gridBagConstraints.gridx++;
add(columna2, gridBagConstraints);
}
});
gridBagConstraints.gridy++;
//Fila 4
gridBagConstraints.gridx=0;
//Meto una fila sin nada
label=new javax.swing.JLabel();
add(label, gridBagConstraints);
gridBagConstraints.gridx++;
add(label, gridBagConstraints);
**/
gridBagConstraints.gridy++;
gridBagConstraints.gridx=0;
label=new javax.swing.JLabel("Usuario:");
add(label, gridBagConstraints);
gridBagConstraints.gridx++;
add(cmbImageComboUsuarios, gridBagConstraints);
gridBagConstraints.gridy++;
gridBagConstraints.gridx=0;
label=new javax.swing.JLabel("Profesional:");
add(label, gridBagConstraints);
gridBagConstraints.gridx++;
add(cmbImageComboProfesionales,gridBagConstraints);
gridBagConstraints.gridy++;
gridBagConstraints.gridx=0;
label=new javax.swing.JLabel("Compañía:");
add(label, gridBagConstraints);
gridBagConstraints.gridx++;
add(cmbImageComboCompanias, gridBagConstraints);
gridBagConstraints.gridy++;
gridBagConstraints.gridx=0;
label=new javax.swing.JLabel("Especialidad:");
add(label, gridBagConstraints);
gridBagConstraints.gridx++;
add(cmbImageComboEspecialidades,gridBagConstraints);
gridBagConstraints.gridy++;
gridBagConstraints.gridx=0;
label=new javax.swing.JLabel("Lista Actos:");
add(label, gridBagConstraints);
gridBagConstraints.gridx++;
add(cmbImageComboListaActos,gridBagConstraints);
jlistActosMedicosDeLA.setSelectionMode(ListSelectionModel.SINGLE_SELECTION);
jlistActosMedicosDeLA.setVisibleRowCount(-1);
jlistActosMedicosDeLA.setLayoutOrientation(JList.VERTICAL);
gridBagConstraints.gridy++;
gridBagConstraints.gridx=0;
label=new javax.swing.JLabel("Actos Disponibles:");
add(label, gridBagConstraints);
gridBagConstraints.gridx++;
java.awt.Dimension maxSize=new java.awt.Dimension(150,110);
//jlistActosMedicosDeLA.setPreferredSize(maxSize);
//jlistActosMedicosDeLA.setMaximumSize(maxSize);
//jlistActosMedicosDeLA.setPreferredSize(maxSize);
JScrollPane listScrollPane = new JScrollPane(jlistActosMedicosDeLA);
listScrollPane.setPreferredSize(maxSize);
add(listScrollPane,gridBagConstraints);
jlistActosMedicosSolicitados.setSelectionMode(ListSelectionModel.SINGLE_SELECTION);
jlistActosMedicosSolicitados.setVisibleRowCount(-1);
jlistActosMedicosSolicitados.setLayoutOrientation(JList.VERTICAL);
gridBagConstraints.gridy++;
gridBagConstraints.gridx=0;
label=new javax.swing.JLabel("Actos en la Petición:");
add(label, gridBagConstraints);
gridBagConstraints.gridx++;
JScrollPane listScrollPane2 = new JScrollPane(jlistActosMedicosSolicitados);
listScrollPane2.setPreferredSize(maxSize);
add(listScrollPane2,gridBagConstraints);
gridBagConstraints.gridy++;
gridBagConstraints.gridx=0;
label=new javax.swing.JLabel("Datos del Cliente:");
add(label, gridBagConstraints);
gridBagConstraints.gridx++;
//JScrollPane listScrollPane3 = new JScrollPane(txtDatosCliente);
//listScrollPane3.setPreferredSize(maxSize);
add(txtDatosCliente,gridBagConstraints);
gridBagConstraints.gridy++;
gridBagConstraints.gridx=0;
add(chkEsRepeticion, gridBagConstraints);
cmbImageComboUsuarios.addActionListener(new ActionListener(){
public void actionPerformed(ActionEvent evt){
//Obtengo el Terminal
UsuarioTVS userTVS=(UsuarioTVS)getCmbImageComboUsuarios().getSelectedItem();
if(userTVS!=null){
if(userTVS.getTerminal().isTVA()){
getCmbImageComboListaActos().removeAllItems();
getCmbImageComboEspecialidades().setEnabled(false);
actosMedicosDeLAListModel.removeAllElements();
}else{
}
//Obtengo los Profesionales Sanitarios del Terminal
ProfesionalSanitarioBean bean=new ProfesionalSanitarioBean();
Vector vProfesionales=bean.getProfesionalesByTerminal(userTVS.getTerminal().getNumeroTerminal());
getCmbImageComboProfesionales().removeAllItems();
getCmbImageComboCompanias().removeAllItems();
getCmbImageComboEspecialidades().removeAllItems();
getCmbImageComboListaActos().removeAllItems();
if(vProfesionales.size()>0){
for(int i=0;i<vProfesionales.size();i++){
getCmbImageComboProfesionales().addItem(vProfesionales.elementAt(i));
}
}
}
}
}
);
getCmbImageComboProfesionales().addActionListener(new ActionListener(){
/**CAMBIAMOS DE PROFESIONAL**/
public void actionPerformed(ActionEvent evt){
//Obtengo el Terminal
getActosMedicosSolicitadosModel().removeAllElements();
actosMedicosDeLAListModel.removeAllElements();
UsuarioTVS userTVS=(UsuarioTVS)getCmbImageComboUsuarios().getSelectedItem();
if(userTVS!=null){
ProfesionalSanitario objProf=(ProfesionalSanitario)getCmbImageComboProfesionales().getSelectedItem();
if(objProf!=null){
//Obtengo las Companias Sanitarios del Terminal y el Profesional
CompaniaSanitariaBean compBean=new CompaniaSanitariaBean();
Vector vCompTerminal=compBean.getCompaniaSanitariaByTerminalAndProfesional(userTVS.getTerminal().getNumeroTerminal(),objProf.getCodProfesional());
getCmbImageComboCompanias().removeAllItems();
if(vCompTerminal.size()>0){
for(int i=0;i<vCompTerminal.size();i++){
getCmbImageComboCompanias().addItem(vCompTerminal.elementAt(i));
}
}
//Obtengo las Especialidades Sanitarias del Terminal y el Profesional
//Ahora las Especialidades
EspecialidadSanitariaBean espeBean=new EspecialidadSanitariaBean();
Vector vEspeTer=espeBean.getEspecialidadesSanitariasByTerminalAndProfesional(userTVS.getTerminal().getNumeroTerminal(),objProf.getCodProfesional());
getCmbImageComboEspecialidades().removeAllItems();
if(vEspeTer.size()>0){
for(int i=0;i<vEspeTer.size();i++){
getCmbImageComboEspecialidades().addItem(vEspeTer.elementAt(i));
}
}
}
}
}
});
getCmbImageComboCompanias().addActionListener(new ActionListener(){
/**CAMBIAMOS DE COMPaniA**/
public void actionPerformed(ActionEvent evt){
//Obtengo el Terminal
getCmbImageComboListaActos().removeAllItems();
getActosMedicosSolicitadosModel().removeAllElements();
actosMedicosDeLAListModel.removeAllElements();
UsuarioTVS userTVS=(UsuarioTVS)getCmbImageComboUsuarios().getSelectedItem();
if(userTVS!=null){
ProfesionalSanitario objProf=(ProfesionalSanitario)getCmbImageComboProfesionales().getSelectedItem();
if(objProf!=null){
CompaniaSanitaria objComp=(CompaniaSanitaria)getCmbImageComboCompanias().getSelectedItem();
EspecialidadSanitaria objEspe=(EspecialidadSanitaria)getCmbImageComboEspecialidades().getSelectedItem();
if(objComp!=null && objEspe!=null){
ListaActosBean objBean=new ListaActosBean();
Vector vListaActos=objBean.getListaActosByCompAndEspe(objComp.getCodigoCompania(),objEspe.getCodigoEspecialidad());
for(int i=0;i<vListaActos.size();i++){
getCmbImageComboListaActos().addItem(vListaActos.elementAt(i));
}
}
}
}
}
});
getCmbImageComboEspecialidades().addActionListener(new ActionListener(){
/**CAMBIO DE ESPECIALIDAD**/
public void actionPerformed(ActionEvent evt){
//Obtengo el Terminal
getCmbImageComboListaActos().removeAllItems();
getActosMedicosSolicitadosModel().removeAllElements();
actosMedicosDeLAListModel.removeAllElements();
UsuarioTVS userTVS=(UsuarioTVS)getCmbImageComboUsuarios().getSelectedItem();
if(userTVS!=null){
ProfesionalSanitario objProf=(ProfesionalSanitario)getCmbImageComboProfesionales().getSelectedItem();
if(objProf!=null){
CompaniaSanitaria objComp=(CompaniaSanitaria)getCmbImageComboCompanias().getSelectedItem();
EspecialidadSanitaria objEspe=(EspecialidadSanitaria)getCmbImageComboEspecialidades().getSelectedItem();
if(objComp!=null && objEspe!=null){
ListaActosBean objBean=new ListaActosBean();
Vector vListaActos=objBean.getListaActosByCompAndEspe(objComp.getCodigoCompania(),objEspe.getCodigoEspecialidad());
for(int i=0;i<vListaActos.size();i++){
getCmbImageComboListaActos().addItem(vListaActos.elementAt(i));
}
}
}
}
}
});
getCmbImageComboListaActos().addActionListener(new ActionListener(){
/**CAMBIO DE LISTA DE ACTOS**/
public void actionPerformed(ActionEvent evt){
//Obtengo el Terminal
getActosMedicosSolicitadosModel().removeAllElements();
actosMedicosDeLAListModel.removeAllElements();
UsuarioTVS userTVS=(UsuarioTVS)getCmbImageComboUsuarios().getSelectedItem();
if(userTVS!=null && !userTVS.getTerminal().isTVA()) {
ProfesionalSanitario objProf=(ProfesionalSanitario)getCmbImageComboProfesionales().getSelectedItem();
if(objProf!=null){
CompaniaSanitaria objComp=(CompaniaSanitaria)getCmbImageComboCompanias().getSelectedItem();
EspecialidadSanitaria objEspe=(EspecialidadSanitaria)getCmbImageComboEspecialidades().getSelectedItem();
ListaActos objListaActos=(ListaActos)getCmbImageComboListaActos().getSelectedItem();
if(objComp!=null && objEspe!=null && objListaActos!=null){
ActoMedicoBean objBean=new ActoMedicoBean();
Vector vActos=objBean.getActosMedicosOf(userTVS.getTerminal().getNumeroTerminal(),objComp.getCodigoCompania(),objEspe.getCodigoEspecialidad(),objProf.getCodProfesional(),objListaActos.getCodigoListaActos());
//WebServiceTrayIcon.showMessage("Autorizaciones","Existen "+vActos.size()+" Actos medicos",JOptionPane.INFORMATION_MESSAGE);
for(int i=0;i<vActos.size();i++){
actosMedicosDeLAListModel.addElement(vActos.elementAt(i));
}
}
}
}
}
});
jlistActosMedicosDeLA.addMouseListener(new MouseAdapter() {
public void mousePressed(MouseEvent evt) {
if (evt.isPopupTrigger()) {
//if (jlistActosMedicosDeLA.getSelectedIndex() != -1)
//RecommendedLinksPopupMenu.show(evt.getComponent(), evt.getX(), evt.getY());
}
}
public void mouseReleased(MouseEvent evt) {
if (evt.isPopupTrigger()) {
//if (jlistActosMedicosDeLA.getSelectedIndex() != -1)
//RecommendedLinksPopupMenu.show(evt.getComponent(), evt.getX(), evt.getY());
}
}
public void mouseClicked(MouseEvent e) {
if (e.getClickCount() == 2 ) {
if (jlistActosMedicosDeLA.getSelectedIndex() != -1){
ActoMedico objAM=(ActoMedico)jlistActosMedicosDeLA.getSelectedValue();
actosMedicosSolicitadosModel.addElement(objAM);
}
}
}
}
);
JMenuItem item = new JMenuItem("Eliminar Acto",new ImageIcon(WebServiceTrayIcon.loadImage("eliminar.gif")));
item.addActionListener(new ActionListener(){
public void actionPerformed(ActionEvent evt){
if (jlistActosMedicosSolicitados.getSelectedIndex() != -1){
actosMedicosSolicitadosModel.removeElementAt(jlistActosMedicosSolicitados.getSelectedIndex());
jlistActosMedicosSolicitados.validate();
}
}
});
actosMedicosSolicitadosPopupMenu.add(item);
jlistActosMedicosSolicitados.addMouseListener(new MouseAdapter() {
public void mouseClicked(MouseEvent e) {
if (e.getClickCount() == 2 || e.isMetaDown() ) {
if (jlistActosMedicosSolicitados.getSelectedIndex() != -1){
actosMedicosSolicitadosPopupMenu.show(e.getComponent(), e.getX(), e.getY());
//ActoMedico objAM=(ActoMedico)jlistActosMedicosDeLA.getSelectedValue();
//actosMedicosSolicitadosModel.addElement(objAM);
}
}
}
}
);
}
public void updateData(){
getCmbImageComboUsuarios().removeAllItems();
UsuarioTVSBean bean=new UsuarioTVSBean();
Vector vUsuarios=bean.getUsuariosTVS();
for(int i=0;i<vUsuarios.size();i++){
UsuarioTVS obj=(UsuarioTVS)vUsuarios.elementAt(i);
getCmbImageComboUsuarios().addItem(obj);
}
}
/**
* @return
*/
public ImageComboBox getCmbImageComboCompanias() {
return cmbImageComboCompanias;
}
/**
* @return
*/
public ImageComboBox getCmbImageComboEspecialidades() {
return cmbImageComboEspecialidades;
}
/**
* @return
*/
public ImageComboBox getCmbImageComboListaActos() {
return cmbImageComboListaActos;
}
/**
* @return
*/
public ImageComboBox getCmbImageComboProfesionales() {
return cmbImageComboProfesionales;
}
/**
* @return
*/
public ImageComboBox getCmbImageComboUsuarios() {
return cmbImageComboUsuarios;
}
/**
public Vector getVUsuarios() {
if(vUsuarios==null){
UsuarioTVSBean bean=new UsuarioTVSBean();
vUsuarios=bean.getUsuariosTVS();
}
return vUsuarios;
}**/
/**
* @return
*/
public DefaultListModel getActosMedicosSolicitadosModel() {
return actosMedicosSolicitadosModel;
}
/**
* @return
*/
public ImageComboBox getCmbImageComboTipoOperacion() {
return cmbImageComboTipoOperacion;
}
/**
* @return
*/
public JComboBox getCmbURLService() {
return cmbURLService;
}
public void setEnabled(boolean blnEnabled){
super.setEnabled(blnEnabled);
java.awt.Component arrComp[]=this.getComponents();
for(int i=0;i<this.getComponentCount();i++){
arrComp[i].setEnabled(blnEnabled);
}
validate();
repaint();
}
/**
* @return
*/
public JTextField getJtxtDocUnico() {
return jtxtDocUnico;
}
/**
* @return
*/
public JTextField getJtxtNumVolante() {
return jtxtNumVolante;
}
/**
* @return
*/
public JTextField getTxtDatosCliente() {
return txtDatosCliente;
}
/**
* @return
*/
public JCheckBox getChkEsRepeticion() {
return chkEsRepeticion;
}
}
@@ -0,0 +1,155 @@
/*
* Creado el 13-feb-07
*
* Para cambiar la plantilla para este archivo generado vaya a
* Ventana&gt;Preferencias&gt;Java&gt;Generacin de cdigo&gt;Cdigo y comentarios
*/
package com.tarisan.chipcard.tpvvs.webservicetrayicon;
import com.tarisan.chipcard.tpvvs.ws.*;
import java.io.*;
import java.net.URL;
/*import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.PreparedStatement;
import java.sql.SQLException;
import java.util.Calendar;
import java.util.Properties;
import org.apache.commons.logging.Log;*/
import com.tarisan.chipcard.tpvvs.webservicetrayicon.messages.*;
import es.chipcard.util.SerClsFecha;
/**
* @author jjrider
*
* Para cambiar la plantilla para este comentario de tipo generado vaya a
* Ventana&gt;Preferencias&gt;Java&gt;Generacin de cdigo&gt;Cdigo y comentarios
*/
public class ClienteServicioWeb extends Thread{
private Msg request=null;
private ControladorRespuestas objController=null;
private static java.io.File fMessagesDir=null;
private int secuencial = 0;
private URL endPointURL=null;
private int nSegundosTimeout=60;
static{
//System.setProperty("javax.net.ssl.trustStore","./conf/cacerts");
///etc/java-6-sun/security/
//System.setProperty("javax.net.ssl.trustStore","/root/apache-tomcat-6.0.20/webapps/tarisan/WEB-INF/lib/cacerts");
System.setProperty("javax.net.ssl.trustStore","/usr/share/tomcat/conf/cacerts");
System.out.println(System.getProperty("javax.net.ssl.trustStore"));
System.setProperty("javax.net.ssl.trustStorePassword","changeit");
}
public ClienteServicioWeb(Msg msg,ControladorRespuestas objController,URL endPointURL)
{
request=msg;
System.out.println(request.toString());
this.objController=objController;
this.endPointURL=endPointURL;
start();
}
public ClienteServicioWeb(Msg msg,ControladorRespuestas objController,URL endPointURL, int seq){
request=msg;
this.secuencial = seq;
System.out.println(request.toString());
this.objController=objController;
this.endPointURL=endPointURL;
start();
}
public void run(){
String sResponse=null;
String sUniqueID=calculateUniqueId();
try{
SerClsChipCardWSPuntoEntradaSoapBindingStub service=new SerClsChipCardWSPuntoEntradaSoapBindingStub();
service.setEndPoint(endPointURL );
service.setTimeout(getSegundosTimeout()*1000);
saveRequest(sUniqueID, this.secuencial);
sResponse=service.requestService(request.toString());
}catch(Exception err){
err.printStackTrace();
WebServiceTrayIcon.showErrorMessage("Web Service Tray Icon","No se obtuvo la respuesta a la peticion por motivo:"+err.getMessage());
objController.recibeRespuesta(null);
}
if(sResponse!=null){
try{
saveResponse(sUniqueID,sResponse, this.secuencial);
if(Tarisan.inserta_respuesta_oracle(sResponse, secuencial))
System.out.println("Respuesta "+this.secuencial+" insertada OK en oracle. "+sResponse);
else
System.out.println("Respuesta "+this.secuencial+" NO insertada en oracle. "+sResponse);
}catch(Exception err){
err.printStackTrace();
}
}
objController.recibeRespuesta(sResponse);
}
public int getSegundosTimeout(){
return nSegundosTimeout;
}
public void setSegundosTimeout(int nValue){
nSegundosTimeout=nValue;
}
private String calculateUniqueId(){
SerClsFecha fecha=new SerClsFecha();
String sRetorno=fecha.toString("yyyyMMdd_HHmmssSSS");
return sRetorno;
}
protected void saveRequest(String sID, int secuencial){
try{
//System.out.println("Se va a guardar la peticion: "+getMessagesDir()+sID+"_"+secuencial+"_Request.xml");
OutputStream fout=new BufferedOutputStream(new FileOutputStream(new File(getMessagesDir(),sID+"_"+secuencial+"_Request.xml")));
request.saveToOutputStream(fout);
fout.close();
}catch(Exception err){err.printStackTrace();
}
}
protected void saveResponse(String sID,String sResponse, int secuencial){
try{
// <Tarjeta><num>803446000000081111111001</num><ver>
//System.out.println("Se va a guardar la peticion: "+getMessagesDir()+sID+"_"+secuencial+"_Response.xml");
OutputStream fout=new BufferedOutputStream(new FileOutputStream(new File(getMessagesDir(),sID+"_"+secuencial+"_Response.xml")));
saveXMLToFile(fout,sResponse);
}catch(Exception err){err.printStackTrace();}
}
private void saveXMLToFile(OutputStream fout,String sXML){
try{
byte bRes[]=sXML.getBytes();
fout.write(bRes);
fout.close();
}catch(Exception err){err.printStackTrace();}
}
private java.io.File getMessagesDir(){
if(fMessagesDir==null){
fMessagesDir=new File("./messages/");
}
if(!fMessagesDir.exists()){
fMessagesDir.mkdirs();
}
return fMessagesDir;
}
}
@@ -0,0 +1,66 @@
package com.tarisan.chipcard.tpvvs.webservicetrayicon;
import java.awt.BorderLayout;
import javax.swing.*;
import com.tarisan.chipcard.gui.*;
import java.awt.event.*;
/**
* @author jjrider
*
* Para cambiar la plantilla para este comentario de tipo generado vaya a
* Ventana&gt;Preferencias&gt;Java&gt;Generación de código&gt;Código y comentarios
*/
public class CompaniasSanitariasFrame extends JFrame{
private CompaniasSanitariasPanel jpCompaniasPanel=new CompaniasSanitariasPanel();
private JButton btnAceptar=null;
public CompaniasSanitariasFrame(){
setTitle("Compañias Sanitarias");
init();
}
private void init(){
getContentPane().setLayout(new BorderLayout());
JPanel pn=new JPanel();
pn.setLayout(new java.awt.GridBagLayout());
java.awt.GridBagConstraints gridBagConstraints = new java.awt.GridBagConstraints();
gridBagConstraints.fill = java.awt.GridBagConstraints.HORIZONTAL;
gridBagConstraints.gridx = 0;
gridBagConstraints.gridy = 0;
gridBagConstraints.anchor = java.awt.GridBagConstraints.NORTHWEST;
gridBagConstraints.insets = new java.awt.Insets(5, 5, 5, 5);
pn.add(jpCompaniasPanel, gridBagConstraints);
gridBagConstraints.gridx = 0;
gridBagConstraints.gridy++;
JPanel jpButtons=new JPanel();
jpButtons.setLayout(new java.awt.FlowLayout());
jpButtons.add(getButtonAceptar());
//jpButtons.add(getButtonEliminar());
pn.add(jpButtons,gridBagConstraints);
getContentPane().add(pn, java.awt.BorderLayout.CENTER);
jpCompaniasPanel.update();
pack();
show();
UtilGUI.centerOnScreen(this);
}
private JButton getButtonAceptar(){
if(btnAceptar==null){
btnAceptar=new JButton();
btnAceptar.setText("Aceptar");
btnAceptar.setIcon(new ImageIcon(WebServiceTrayIcon.loadImage("aceptar32.gif")));
btnAceptar.addActionListener(new ActionListener(){
public void actionPerformed(ActionEvent evt){
setVisible(false);
dispose();
}
});
}
return btnAceptar;
}
}
@@ -0,0 +1,131 @@
package com.tarisan.chipcard.tpvvs.webservicetrayicon;
import java.awt.BorderLayout;
import javax.swing.*;
import com.tarisan.chipcard.gui.*;
import java.util.*;
import com.tarisan.chipcard.tpvvs.webservicetrayicon.accesodatos.*;
import java.awt.event.*;
/***
* Panel que muestra info de la companias sanitarias dadas de alta en el sistema
* @author jjrider
*/
public class CompaniasSanitariasPanel extends JPanel{
/**
*
*/
private static final long serialVersionUID = 1406976629577166382L;
private JPanel jpPrincipal=new JPanel();
private ImageComboBox cmbImageComboCompanias=new ImageComboBox();
private JLabel jlblCodigoCompania=new javax.swing.JLabel("");
public CompaniasSanitariasPanel(){
super();
init();
}
private void init(){
setLayout(new BorderLayout());
initProductsPane();
JPanel pn=new JPanel();
pn.setLayout(new java.awt.GridBagLayout());
java.awt.GridBagConstraints gridBagConstraints = new java.awt.GridBagConstraints();
gridBagConstraints.fill = java.awt.GridBagConstraints.HORIZONTAL;
gridBagConstraints.gridx = 0;
gridBagConstraints.gridy = 0;
gridBagConstraints.anchor = java.awt.GridBagConstraints.NORTHWEST;
gridBagConstraints.insets = new java.awt.Insets(5, 5, 5, 5);
pn.add(jpPrincipal, gridBagConstraints);
gridBagConstraints.gridx = 1;
add(pn, java.awt.BorderLayout.CENTER);
cmbImageComboCompanias.addActionListener(new ActionListener(){
public void actionPerformed(ActionEvent evt){
//System.out.println();
CompaniaSanitaria p=(CompaniaSanitaria)cmbImageComboCompanias.getSelectedItem();
showCompaniaSanitaria(p);
}
});
}
private void showCompaniaSanitaria(CompaniaSanitaria p){
if(p!=null){
getComboCompanias().setSelectedItem(p);
String sCode=String.valueOf(p.getCodigoCompania());
getJlblCodigoCompania().setText(sCode);
}
}
private void initProductsPane(){
jpPrincipal.setLayout(new java.awt.GridBagLayout());
jpPrincipal.setBorder(new javax.swing.border.TitledBorder("Compañías Sanitarias"));
java.awt.GridBagConstraints gridBagConstraints = new java.awt.GridBagConstraints();
gridBagConstraints.fill = java.awt.GridBagConstraints.HORIZONTAL;
gridBagConstraints.gridx = 0;
gridBagConstraints.gridy = 1;
gridBagConstraints.anchor = java.awt.GridBagConstraints.WEST;
gridBagConstraints.insets = new java.awt.Insets(5, 5, 5, 5);
gridBagConstraints.gridwidth = 1;
gridBagConstraints.gridy++;
JLabel label=new javax.swing.JLabel("Nombre Compañía:");
jpPrincipal.add(label, gridBagConstraints);
gridBagConstraints.gridx++;
jpPrincipal.add(cmbImageComboCompanias, gridBagConstraints);
gridBagConstraints.gridy++;
gridBagConstraints.gridx=0;
label=new javax.swing.JLabel("Código Compañía:");
jpPrincipal.add(label, gridBagConstraints);
gridBagConstraints.gridx++;
jpPrincipal.add(jlblCodigoCompania, gridBagConstraints);
}
public void update(){
//if(cmbImageComboCompanias)
cmbImageComboCompanias.removeAllItems();
CompaniaSanitariaBean b=new CompaniaSanitariaBean();
Vector v=b.getCompaniasSanitarias();
for(int i=0;i<v.size();i++){
CompaniaSanitaria p=(CompaniaSanitaria)v.elementAt(i);
cmbImageComboCompanias.addItem(p);
}
}
public void showOn(){
SwingUtilities.invokeLater(new Runnable() {
public void run() {
update();
}
});
}
public void showOff(){}
/**
* @return
*/
public ImageComboBox getComboCompanias() {
return cmbImageComboCompanias;
}
/**
* @return
*/
public JLabel getJlblCodigoCompania() {
return jlblCodigoCompania;
}
}
@@ -0,0 +1,241 @@
package com.tarisan.chipcard.tpvvs.webservicetrayicon;
import java.awt.*;
import javax.swing.*;
import com.tarisan.chipcard.gui.*;
import com.tarisan.chipcard.tpvvs.webservicetrayicon.messages.*;
import java.util.*;
import com.tarisan.chipcard.tpvvs.webservicetrayicon.accesodatos.*;
import java.awt.event.*;
/**
* @author jjrider
*/
public class ConsultaAutorizacionesFrame extends JFrame implements ControladorRespuestas,ActionListener{
/**
*
*/
private static final long serialVersionUID = -7697824758756674812L;
public static final Image icon=WebServiceTrayIcon.loadImage("consultaAut16.gif");
private ConsultaAutorizacionesPanel jpAutorizacionesPanel=null;//new ConsultaAutorizacionesPanel();
private JButton btnAceptar=null;
private AutorizacionesBean autBean=new AutorizacionesBean();
private UsuarioTVSBean userBean=new UsuarioTVSBean();
private TerminalSanitarioBean terBean=new TerminalSanitarioBean();
private JPopupMenu anulacionPopupMenu=new JPopupMenu();
private VentanaProgreso progressWindow=null;//
public String devuelveRespuesta(String a)
{
return a;
}
public ConsultaAutorizacionesFrame(){
setIconImage(icon);
progressWindow=new VentanaProgreso(this,"Solicitando anulación");
progressWindow.setVisible(false);
setTitle("Consulta de Autorizaciones");
Vector vTer=terBean.getTerminalesSanitarios();
if(vTer.size()==0){
NuevoTerminalFrame frmT=new NuevoTerminalFrame();
WebServiceTrayIcon.showMessage(frmT,getTitle(),"Es necesario configurar antes Terminales Sanitarios",JOptionPane.WARNING_MESSAGE,10);
dispose();
}else{
Vector vUsers=userBean.getUsuariosTVS();
if(vUsers.size()==0){
NuevoUsuarioTVSFrame frmU=new NuevoUsuarioTVSFrame();
frmU.updateData();
WebServiceTrayIcon.showMessage(frmU,getTitle(),"Es necesario configurar antes algún Usuario del TVS",JOptionPane.WARNING_MESSAGE,10);
dispose();
}else{
init();
}
}
}
private void init(){
getContentPane().setLayout(new BorderLayout());
jpAutorizacionesPanel=new ConsultaAutorizacionesPanel();
jpAutorizacionesPanel.setPreferredSize(new java.awt.Dimension(800,600));
JPanel jpButtons=new JPanel();
jpButtons.setLayout(new java.awt.FlowLayout());
jpButtons.add(getButtonAceptar());
getContentPane().add(jpAutorizacionesPanel, java.awt.BorderLayout.CENTER);
getContentPane().add(jpButtons, java.awt.BorderLayout.SOUTH);
pack();
show();
UtilGUI.centerOnScreen(this);
jpAutorizacionesPanel.getJTable().addMouseListener(new MouseAdapter() {
public void mousePressed(MouseEvent evt) {
}
public void mouseReleased(MouseEvent evt) {
}
public void mouseClicked(MouseEvent e) {
if (e.getClickCount() == 2 || e.isMetaDown() ) {
if (jpAutorizacionesPanel.getJTable().getSelectedRow() != -1){
anulacionPopupMenu.show(e.getComponent(), e.getX(), e.getY());
}
}
}
}
);
JMenuItem item = new JMenuItem("Solicitar Anulación de Autorización",new ImageIcon(WebServiceTrayIcon.loadImage("eliminar.gif")));
item.addActionListener(this);
anulacionPopupMenu.add(item);
}
/****
* Se encarga de realizar las operacioens necesarias para llevar a cabo una anulacion
* @param nTerminal
* @param sTimeStamp
*/
private void anulaAutorizacion(int nTerminal, String sTimeStamp){
//Si está autorizada
Autorizacion aut=autBean.getAutorizacionByID(nTerminal,sTimeStamp);
if(aut!=null){
String sURL=jpAutorizacionesPanel.getCmbURLService().getSelectedItem().toString();
java.net.URL endPointURL=null;
try{
endPointURL=new java.net.URL(sURL);
}catch(Exception err){
err.printStackTrace();
WebServiceTrayIcon.showErrorMessage(getTitle(),"No se pudo enviar la solicitud a '"+sURL+"' debido al error:"+err.getMessage());
}
if(endPointURL!=null){
UsuarioTVS userTVS=(UsuarioTVS)jpAutorizacionesPanel.getCmbImageComboUsuarios().getSelectedItem();
if(userTVS!=null){
try{
progressWindow.setVisible(true);
progressWindow.setProgressState(0);
progressWindow.setModal(false);
UtilGUI.centerOnWindow(progressWindow,this);
AnulReq anulReqMes=new AnulReq(nTerminal,sTimeStamp,userTVS);
setEnabled(false);
ClienteServicioWeb objClienteServicioWeb=new ClienteServicioWeb(anulReqMes,this,endPointURL);
ProgressBarThread PBTh=new ProgressBarThread(progressWindow,objClienteServicioWeb.getSegundosTimeout());
PBTh.start();
}catch(Exception err){
err.printStackTrace();
}
}
}
}
}
/*****
* Recibe la respuesta del Servicio Web
*/
public String recibeRespuesta(String sResponse){
setEnabled(true);
if(progressWindow!=null)
progressWindow.setVisible(false);
if(sResponse!=null){
Msg objResponse=null;
try{
objResponse=Msg.createMsgFromString(sResponse);
if(objResponse.getTypeOfMessage()==Msg.TYPE_OF_MESSAGE_ERROR){
com.tarisan.chipcard.tpvvs.webservicetrayicon.messages.Error errorMes=(com.tarisan.chipcard.tpvvs.webservicetrayicon.messages.Error)objResponse;
//Es un Error en la peticion
showErrorMessage("Se ha producido el error con código "+errorMes.getErrorCode()+".\nDescripción:"+errorMes.getErrorDescription());
}else if(objResponse.getTypeOfMessage()==Msg.TYPE_OF_MESSAGE_CCRES){
com.tarisan.chipcard.tpvvs.webservicetrayicon.messages.AutRes autResMes=(com.tarisan.chipcard.tpvvs.webservicetrayicon.messages.AutRes)objResponse;
Vector vAutorizaciones=WebServiceTrayIcon.AutResMes2Autorizacion(autResMes);
for(int i=0;i<vAutorizaciones.size();i++){
Autorizacion aut=(Autorizacion)vAutorizaciones.elementAt(i);
if(aut.getESTADO().equals(WSTRConstantes.OP_RESPONSE_ANULADA)){
//Solo actualizo si la operación fue anulada
autBean.updateInLocal(aut);
}
}
WebServiceTrayIcon.showTransactionInfo(autResMes,this);
jpAutorizacionesPanel.updateData();
}
}catch(Exception err){
err.printStackTrace();
showErrorMessage("Se ha producido un error al procesar la respuesta.\nDescripción:"+err.getMessage());
}
}else{
//Se debería repetir la respuesta?? Se supone que no se ha recibido
}
return "";
}
private JButton getButtonAceptar(){
if(btnAceptar==null){
btnAceptar=new JButton();
btnAceptar.setText("Aceptar");
btnAceptar.setIcon(new ImageIcon(WebServiceTrayIcon.loadImage("aceptar32.gif")));
btnAceptar.addActionListener(new ActionListener(){
public void actionPerformed(ActionEvent evt){
setVisible(false);
dispose();
}
});
}
return btnAceptar;
}
public void actionPerformed(ActionEvent evt){
int nRow=jpAutorizacionesPanel.getJTable().getSelectedRow();
String sTerminal=(String)jpAutorizacionesPanel.getTableModel().getValueAt(nRow,0);
String sTimeStamp=(String)jpAutorizacionesPanel.getTableModel().getValueAt(nRow,1);
String sEstado=(String)jpAutorizacionesPanel.getTableModel().getValueAt(nRow,3);
if(sEstado!=null){
if(sEstado.equals(WSTRConstantes.OP_RESPONSE_AUTORIZADA)){
anulaAutorizacion(Integer.parseInt(sTerminal), sTimeStamp);
}else{
WebServiceTrayIcon.showMessage(this,getTitle(),"La Autorización debe estar AUTORIZADA para poder anularse",JOptionPane.ERROR_MESSAGE,10);
}
}
}
public void setEnabled(boolean blnEnabled){
super.setEnabled(blnEnabled);
getJpAutorizacionesPanel().setEnabled(blnEnabled);
getButtonAceptar().setEnabled(blnEnabled);
if(!blnEnabled)
setCursor(java.awt.Cursor.getPredefinedCursor(java.awt.Cursor.WAIT_CURSOR));
else
setCursor(java.awt.Cursor.getPredefinedCursor(java.awt.Cursor.DEFAULT_CURSOR));
validate();
repaint();
}
public static void main(String args[]) throws Exception {
System.setProperty("configFiles","./conf/");
ConsultaAutorizacionesFrame objF=new ConsultaAutorizacionesFrame();
objF.show();
}
/**
* @return
*/
public ConsultaAutorizacionesPanel getJpAutorizacionesPanel() {
return jpAutorizacionesPanel;
}
private void showErrorMessage(String sMessage){
WebServiceTrayIcon.showMessage(this,getTitle(),sMessage,JOptionPane.ERROR_MESSAGE);
}
private void showInformationMessage(String sMessage){
WebServiceTrayIcon.showMessage(this,getTitle(),sMessage,JOptionPane.INFORMATION_MESSAGE);
}
private void showWarningMessage(String sMessage){
WebServiceTrayIcon.showMessage(this,getTitle(),sMessage,JOptionPane.WARNING_MESSAGE);
}
}
@@ -0,0 +1,207 @@
/*
* Creado el 19-feb-07
*
* Para cambiar la plantilla para este archivo generado vaya a
* Ventana&gt;Preferencias&gt;Java&gt;Generación de código&gt;Código y comentarios
*/
package com.tarisan.chipcard.tpvvs.webservicetrayicon;
import com.tarisan.chipcard.tpvvs.webservicetrayicon.accesodatos.*;
import java.util.*;
import java.awt.*;
import java.awt.event.*;
import javax.swing.*;
import javax.swing.table.*;
import com.tarisan.chipcard.gui.*;
/**
* Tabla dodne aparecen las operaciones realizads y se da la opción de anularlas
* @author jjrider
*/
public class ConsultaAutorizacionesPanel extends JPanel implements ActionListener{
private ImageComboBox cmbImageComboUsuarios=new ImageComboBox();
private JComboBox cmbURLService=new JComboBox();
private JComboBox cmbEstado=new JComboBox();
private AutorizacionesBean autBean=new AutorizacionesBean();
private JTable table=null;
private ArrayListTableModel objTableModel=null;
private ArrayList lista=null;
public ConsultaAutorizacionesPanel(){
super();
ArrayList lista=autBean.getAutorizacionesAsArrayList("SELECT * FROM "+autBean.TABLENAME+" WHERE 1<>0");
lista=new ArrayList();
objTableModel=new ArrayListTableModel(lista);
table = new JTable(objTableModel);
table.setAutoResizeMode(JTable.AUTO_RESIZE_OFF);
table.setVisible(true);
TableColumn column = null;
for(int i=0;i<table.getColumnModel().getColumnCount();i++){
column=table.getColumnModel().getColumn(i) ;
column.setResizable(true);
String strIdentifier=(String)column.getIdentifier();
//column.setPreferredWidth(35*strIdentifier.length());
column=null;
}
this.setPreferredSize(new Dimension(Math.min(800,table.getColumnModel().getColumnCount()*70),getHeight()));
JScrollPane sp = new JScrollPane(table);
sp.setHorizontalScrollBarPolicy(JScrollPane.HORIZONTAL_SCROLLBAR_AS_NEEDED);
this.setLayout(new BorderLayout());
add(sp, BorderLayout.CENTER);
JPanel otrosDatos=new JPanel();
java.awt.GridBagConstraints gridBagConstraints = new java.awt.GridBagConstraints();
gridBagConstraints.fill = java.awt.GridBagConstraints.HORIZONTAL;
gridBagConstraints.gridx = 0;
gridBagConstraints.gridy = 1;
gridBagConstraints.anchor = java.awt.GridBagConstraints.NORTHWEST;
gridBagConstraints.insets = new java.awt.Insets(5, 5, 5, 5);
gridBagConstraints.gridwidth = 1;
otrosDatos.setLayout(new java.awt.GridBagLayout());
otrosDatos.setBorder(new javax.swing.border.TitledBorder("Criterios de búsqueda y Anulación:"));
gridBagConstraints.gridy++;
gridBagConstraints.gridx=0;
JLabel label=new javax.swing.JLabel("Usuario:");
otrosDatos.add(label,gridBagConstraints);
gridBagConstraints.gridx++;
otrosDatos.add(cmbImageComboUsuarios,gridBagConstraints);
gridBagConstraints.gridy++;
gridBagConstraints.gridx=0;
cmbURLService.setEditable(true);
WebServiceTrayIcon.fillURLServices(cmbURLService);
label=new javax.swing.JLabel("URL del Servicio:");
otrosDatos.add(label,gridBagConstraints);
gridBagConstraints.gridx++;
otrosDatos.add(cmbURLService, gridBagConstraints);
gridBagConstraints.gridy++;
gridBagConstraints.gridx=0;
label=new javax.swing.JLabel("ESTADO:");
otrosDatos.add(label,gridBagConstraints);
gridBagConstraints.gridx++;
cmbEstado.addItem("TODOS");
cmbEstado.addItem("AUTORIZADA");
cmbEstado.addItem("DENEGADA");
cmbEstado.addItem("ANULADA");
cmbEstado.addItem("ERROR");
otrosDatos.add(cmbEstado, gridBagConstraints);
add(otrosDatos, BorderLayout.NORTH);
UsuarioTVSBean bean=new UsuarioTVSBean();
Vector vUsuarios=bean.getUsuariosTVS();
for(int i=0;i<vUsuarios.size();i++){
UsuarioTVS obj=(UsuarioTVS)vUsuarios.elementAt(i);
cmbImageComboUsuarios.addItem(obj);
}
cmbImageComboUsuarios.addActionListener(this);
cmbEstado.addActionListener(this);
if(cmbImageComboUsuarios.getSelectedIndex()!=-1)
cmbImageComboUsuarios.setSelectedIndex(cmbImageComboUsuarios.getSelectedIndex());
}
public void updateData(){
actionPerformed(null);
}
public void actionPerformed(ActionEvent evt){
//Obtengo el Terminal
UsuarioTVS userTVS=(UsuarioTVS)cmbImageComboUsuarios.getSelectedItem();
if(userTVS!=null){
int nTerminal=userTVS.getTerminal().getNumeroTerminal();
String sEstado=cmbEstado.getSelectedItem().toString();
ArrayList list=null;
if(sEstado.equals("TODOS")){
list=autBean.getAutorizacionesAsArrayListByTerminal(nTerminal);
}else{
list=autBean.getAutorizacionesAsArrayListByTerminalAndEstado(nTerminal,sEstado);
}
objTableModel=new ArrayListTableModel(list);
table.setModel(objTableModel);
table.validate();
table.repaint();
}
}
public class ArrayListTableModel extends DefaultTableModel{
private ArrayList lista=null;
public ArrayListTableModel(ArrayList l){
super();
lista=l;
init(lista);
}
public void init(ArrayList lista) {
int intNumeroDeFilas=lista.size();
//setColumnCount(0);
//setRowCount(0);
if(lista!=null){
if(lista.size()==0)
return;
String arrFila[]=(String[])lista.get(0);
Vector vColumns=new Vector();
//setPreferredSize(new java.awt.Dimension(50,20));
setColumnCount(arrFila.length);
setColumnIdentifiers(arrFila);
Vector vValues=null;
for(int i=1;i<lista.size();i++){
addRow((String[])lista.get(i));
}
}
validate();
repaint();
}
public boolean isCellEditable(int row,int col){
return false;
}
}
/**
* @return
*/
public JTable getJTable() {
return table;
}
/**
* @return
*/
public ArrayListTableModel getTableModel() {
return objTableModel;
}
/**
* @return
*/
public ImageComboBox getCmbImageComboUsuarios() {
return cmbImageComboUsuarios;
}
public void setEnabled(boolean blnEnabled){
super.setEnabled(blnEnabled);
java.awt.Component arrComp[]=this.getComponents();
for(int i=0;i<this.getComponentCount();i++){
arrComp[i].setEnabled(blnEnabled);
}
validate();
repaint();
}
/**
* @return
*/
public JComboBox getCmbURLService() {
return cmbURLService;
}
}
@@ -0,0 +1,19 @@
/*
* Creado el 13-feb-07
*
* Para cambiar la plantilla para este archivo generado vaya a
* Ventana&gt;Preferencias&gt;Java&gt;Generación de código&gt;Código y comentarios
*/
package com.tarisan.chipcard.tpvvs.webservicetrayicon;
/**
* @author jjrider
*
* Para cambiar la plantilla para este comentario de tipo generado vaya a
* Ventana&gt;Preferencias&gt;Java&gt;Generación de código&gt;Código y comentarios
*/
public interface ControladorRespuestas {
public String recibeRespuesta(String sResponse);
//public String devuelveRespuesta(String sResponse);
}
@@ -0,0 +1,229 @@
package com.tarisan.chipcard.tpvvs.webservicetrayicon;
import java.awt.*;
import java.awt.event.*;
import javax.swing.*;
import com.tarisan.chipcard.gui.*;
import com.tarisan.chipcard.tpvvs.webservicetrayicon.accesodatos.*;
/**
* @author jjrider
*/
public class DialogoTarjetaSanitaria extends JDialog {
/**
*
*/
private static final long serialVersionUID = -6280299266737876697L;
private JFrame objParent=null;
private JPasswordField txtLecturaPistaTarjeta=new JPasswordField();
private boolean LecturaManual=false;
private JLabel lblNumeroTarjeta=new JLabel("Tarjeta:");
private JTextField txtNumeroTarjeta=new JTextField();
private JLabel lblCaducidadTarjeta=new JLabel("F.Cad.:");
private JTextField txtCaducidadTarjeta=new JTextField();
private JLabel lblAltaTarjeta=new JLabel("F.Alta:");
private JTextField txtAltaTarjeta=new JTextField();
private JLabel lblCoberturaTarjeta=new JLabel("Cobertura:");
private JTextField txtCoberturaTarjeta=new JTextField();
private JLabel lblVersionTarjeta=new JLabel("Version:");
private JTextField txtVersionTarjeta=new JTextField();
private JCheckBox NoCapturaTarjeta=new JCheckBox("No Capturar Tarjeta");
private JButton jbtnAceptar=new JButton();
private Paciente paciente=new Paciente();
public DialogoTarjetaSanitaria(JFrame objParent){
super(objParent,true);
this.setUndecorated(true);
this.objParent=objParent;
setTitle("Lectura de Tarjeta");
init();
}
private void init(){
getContentPane().setLayout(new BorderLayout());
JPanel pn=new JPanel();
getContentPane().add(pn,BorderLayout.CENTER);
JLabel lblFondo=new JLabel();
ImageIcon iconFondo= new ImageIcon(WebServiceTrayIcon.loadImage("paseTarjetaConTeclado.jpg"));
lblFondo.setIcon(iconFondo);
lblFondo.setBounds(0,0,iconFondo.getIconWidth(),iconFondo.getIconHeight());
pn.setLayout(null);
NoCapturaTarjeta.setBounds(5,135,180,20);
pn.add(NoCapturaTarjeta);
NoCapturaTarjeta.addActionListener(new ActionListener(){
public void actionPerformed(ActionEvent evt){
setVisible(false);
dispose();
}
}
);
txtLecturaPistaTarjeta.setBounds(5,160,180,20);
pn.add(txtLecturaPistaTarjeta);
txtLecturaPistaTarjeta.requestFocus();
//txtLecturaPistaTarjeta.requestDefaultFocus();
lblNumeroTarjeta.setBounds(2,50,45,20);
pn.add(lblNumeroTarjeta);
txtNumeroTarjeta.setBounds(lblNumeroTarjeta.getX()+lblNumeroTarjeta.getWidth()+3,lblNumeroTarjeta.getY(),140,20);
pn.add(txtNumeroTarjeta);
lblCaducidadTarjeta.setBounds(2,75,40,20);
pn.add(lblCaducidadTarjeta);
txtCaducidadTarjeta.setBounds(lblCaducidadTarjeta.getX()+lblCaducidadTarjeta.getWidth()+3,lblCaducidadTarjeta.getY(),50,20);
pn.add(txtCaducidadTarjeta);
lblAltaTarjeta.setBounds(txtCaducidadTarjeta.getX()+txtCaducidadTarjeta.getWidth()+15,lblCaducidadTarjeta.getY(),40,20);
pn.add(lblAltaTarjeta);
txtAltaTarjeta.setBounds(lblAltaTarjeta.getX()+lblAltaTarjeta.getWidth()+3,lblCaducidadTarjeta.getY(),50,20);
pn.add(txtAltaTarjeta);
lblCoberturaTarjeta.setBounds(2,100,80,20);
pn.add(lblCoberturaTarjeta);
txtCoberturaTarjeta.setBounds(lblCoberturaTarjeta.getX()+lblCoberturaTarjeta.getWidth()+3,lblCoberturaTarjeta.getY(),40,20);
pn.add(txtCoberturaTarjeta);
lblVersionTarjeta.setBounds(txtCoberturaTarjeta.getX()+txtCoberturaTarjeta.getWidth()+15,txtCoberturaTarjeta.getY(),60,20);
pn.add(lblVersionTarjeta);
txtVersionTarjeta.setBounds(lblVersionTarjeta.getX()+lblVersionTarjeta.getWidth()+5,lblVersionTarjeta.getY(),35,20);
pn.add(txtVersionTarjeta);
ImageIcon iconAceptar= new ImageIcon(WebServiceTrayIcon.loadImage("aceptaro1.gif"));
jbtnAceptar.setIcon(iconAceptar);
jbtnAceptar.setBounds(40,140,iconAceptar.getIconWidth(),iconAceptar.getIconHeight());
jbtnAceptar.addActionListener(new ActionListener(){
public void actionPerformed(ActionEvent evt){
String sTarjeta=txtNumeroTarjeta.getText().trim();
if(sTarjeta.length()>0)
paciente.setTarjeta(sTarjeta);
String sAlta=txtAltaTarjeta.getText().trim();
if(sAlta.length()>0)
paciente.setFAlta(sAlta);
String sBaja=txtCaducidadTarjeta.getText().trim();
if(sBaja.length()>0)
paciente.setFBaja(sBaja);
String sCobertura=txtCoberturaTarjeta.getText().trim();
if(sCobertura.length()>0)
paciente.setCobertura(sCobertura);
String sVersion=txtVersionTarjeta.getText().trim();
if(sVersion.length()>0)
paciente.setVersion(sVersion);
setVisible(false);
dispose();
}
});
pn.add(jbtnAceptar);
pn.add(lblFondo);
setSize(209,191);
UtilGUI.centerOnWindow(this,objParent );
showLecturaBanda();
txtLecturaPistaTarjeta.requestFocus();
lblFondo.addMouseListener(new MouseAdapter() {
public void mouseClicked(MouseEvent evt) {
//System.out.println("Mouse clicked");
setTipoLectura(!LecturaManual);
}
});
LecturaPistaThread th=new LecturaPistaThread(this);
th.start();
show();
}
private void showLecturaBanda(){
setTipoLectura(false);
}
private void showLecturaManual(){
setTipoLectura(true);
}
private void setTipoLectura(boolean LectManual){
LecturaManual=LectManual;
txtNumeroTarjeta.setVisible(LecturaManual);
txtCaducidadTarjeta.setVisible(LecturaManual);
txtAltaTarjeta.setVisible(LecturaManual);
txtCoberturaTarjeta.setVisible(LecturaManual);
txtVersionTarjeta.setVisible(LecturaManual);
lblNumeroTarjeta.setVisible(LecturaManual);
lblCaducidadTarjeta.setVisible(LecturaManual);
lblAltaTarjeta.setVisible(LecturaManual);
lblCoberturaTarjeta.setVisible(LecturaManual);
lblVersionTarjeta.setVisible(LecturaManual);
jbtnAceptar.setVisible(LecturaManual);
txtLecturaPistaTarjeta.setVisible(!LecturaManual);
if(!LecturaManual){
txtLecturaPistaTarjeta.requestFocus();
txtNumeroTarjeta.setText("");
txtCaducidadTarjeta.setText("");
txtAltaTarjeta.setText("");
txtCoberturaTarjeta.setText("");
txtVersionTarjeta.setText("");
}else{
txtLecturaPistaTarjeta.setText("");
txtNumeroTarjeta.requestFocus();
}
}
public boolean esLecturaManual(){
return LecturaManual;
}
public Paciente getPaciente(){
return paciente;
}
public class LecturaPistaThread extends Thread{
private JDialog dialog=null;
protected LecturaPistaThread(JDialog dialog){
this.dialog=dialog;
}
public void run(){
txtLecturaPistaTarjeta.requestFocus();
try{
Thread.sleep(2000);
}catch(Exception err){}
while(dialog.isVisible()){
if(!esLecturaManual()){
txtLecturaPistaTarjeta.requestFocus();
}
try{
try{
Thread.sleep(200);
}catch(Exception err){}
String sPista=new String(txtLecturaPistaTarjeta.getPassword());
sPista=sPista.trim();
if(sPista.endsWith("?")){
try{
Thread.sleep(200);
}catch(Exception err){}
String sPistaConfirmation=new String(txtLecturaPistaTarjeta.getPassword());
sPistaConfirmation=sPistaConfirmation.trim();
if(sPistaConfirmation.equals(sPista)){
paciente.setPista(sPista);
setVisible(false);
}
}
}catch(Exception err){
}
}
System.out.println("Fin del hilo");
}
}
}
@@ -0,0 +1,59 @@
/*
* Creado el 16-jul-07
*
* Para cambiar la plantilla para este archivo generado vaya a
* Ventana&gt;Preferencias&gt;Java&gt;Generación de código&gt;Código y comentarios
*/
package com.tarisan.chipcard.tpvvs.webservicetrayicon;
import com.tarisan.chipcard.tpvvs.ws.*;
import es.chipcard.util.*;
import java.io.*;
import java.net.URL;
/**
*
* @author jjrider
*/
public class EasyClient {
static{
File f=new File("./conf/cacerts");
//System.out.println(f.getAbsolutePath());
System.setProperty("javax.net.ssl.trustStore",f.getAbsolutePath());
System.setProperty("javax.net.ssl.trustStorePassword","changeit");
}
/***
* En base a una cadena y la URL, envia la peticion
* @param sPeticion
* @param url
* @return
* @throws Exception
*/
public String enviarPeticion(String sPeticion,String url) throws Exception{
String sResponse=null;
String sUniqueID=calculateUniqueId();
try{
SerClsChipCardWSPuntoEntradaSoapBindingStub service=new SerClsChipCardWSPuntoEntradaSoapBindingStub();
service.setEndPoint(new URL(url) );
service.setTimeout(60*1000);
sResponse=service.requestService(sPeticion);
}catch(Exception err){
err.printStackTrace();
}
return sResponse;
}
private String calculateUniqueId(){
SerClsFecha fecha=new SerClsFecha();
String sRetorno=fecha.toString("yyyyMMdd_HHmmssSSS");
return sRetorno;
}
public static void main(String args[]) throws Exception{
EasyClient client=new EasyClient();
String sRespuesta=client.enviarPeticion(args[1],args[0]);
System.out.println(sRespuesta);
}
}
@@ -0,0 +1,66 @@
package com.tarisan.chipcard.tpvvs.webservicetrayicon;
import java.awt.BorderLayout;
import javax.swing.*;
import com.tarisan.chipcard.gui.*;
import java.awt.event.*;
/**
* @author jjrider
*
* Para cambiar la plantilla para este comentario de tipo generado vaya a
* Ventana&gt;Preferencias&gt;Java&gt;Generación de código&gt;Código y comentarios
*/
public class EspecialidadesSanitariasFrame extends JFrame{
private EspecialidadesSanitariasPanel jpEspecialidadesPanel=new EspecialidadesSanitariasPanel();
private JButton btnAceptar=null;
public EspecialidadesSanitariasFrame(){
setTitle("Especialidades Sanitarias");
init();
}
private void init(){
getContentPane().setLayout(new BorderLayout());
JPanel pn=new JPanel();
pn.setLayout(new java.awt.GridBagLayout());
java.awt.GridBagConstraints gridBagConstraints = new java.awt.GridBagConstraints();
gridBagConstraints.fill = java.awt.GridBagConstraints.HORIZONTAL;
gridBagConstraints.gridx = 0;
gridBagConstraints.gridy = 0;
gridBagConstraints.anchor = java.awt.GridBagConstraints.NORTHWEST;
gridBagConstraints.insets = new java.awt.Insets(5, 5, 5, 5);
pn.add(jpEspecialidadesPanel, gridBagConstraints);
gridBagConstraints.gridx = 0;
gridBagConstraints.gridy++;
JPanel jpButtons=new JPanel();
jpButtons.setLayout(new java.awt.FlowLayout());
jpButtons.add(getButtonAceptar());
//jpButtons.add(getButtonEliminar());
pn.add(jpButtons,gridBagConstraints);
getContentPane().add(pn, java.awt.BorderLayout.CENTER);
jpEspecialidadesPanel.update();
pack();
show();
UtilGUI.centerOnScreen(this);
}
private JButton getButtonAceptar(){
if(btnAceptar==null){
btnAceptar=new JButton();
btnAceptar.setText("Aceptar");
btnAceptar.setIcon(new ImageIcon(WebServiceTrayIcon.loadImage("aceptar32.gif")));
btnAceptar.addActionListener(new ActionListener(){
public void actionPerformed(ActionEvent evt){
setVisible(false);
dispose();
}
});
}
return btnAceptar;
}
}
@@ -0,0 +1,130 @@
package com.tarisan.chipcard.tpvvs.webservicetrayicon;
import java.awt.BorderLayout;
import javax.swing.*;
import com.tarisan.chipcard.gui.*;
import java.util.*;
import com.tarisan.chipcard.tpvvs.webservicetrayicon.accesodatos.*;
import java.awt.event.*;
/***
* Panel que muestra info de las Especialidades sanitarias dadas de alta en el sistema
* @author jjrider
*/
public class EspecialidadesSanitariasPanel extends JPanel{
/**
*
*/
private static final long serialVersionUID = 1308026484400302032L;
private JPanel jpPrincipal=new JPanel();
private ImageComboBox cmbImageComboEspecialidades=new ImageComboBox();
private JLabel jlblCodigoEspecialidad=new javax.swing.JLabel("");
public EspecialidadesSanitariasPanel(){
super();
init();
}
private void init(){
setLayout(new BorderLayout());
initProductsPane();
JPanel pn=new JPanel();
pn.setLayout(new java.awt.GridBagLayout());
java.awt.GridBagConstraints gridBagConstraints = new java.awt.GridBagConstraints();
gridBagConstraints.fill = java.awt.GridBagConstraints.HORIZONTAL;
gridBagConstraints.gridx = 0;
gridBagConstraints.gridy = 0;
gridBagConstraints.anchor = java.awt.GridBagConstraints.NORTHWEST;
gridBagConstraints.insets = new java.awt.Insets(5, 5, 5, 5);
pn.add(jpPrincipal, gridBagConstraints);
gridBagConstraints.gridx = 1;
add(pn, java.awt.BorderLayout.CENTER);
cmbImageComboEspecialidades.addActionListener(new ActionListener(){
public void actionPerformed(ActionEvent evt){
//System.out.println();
EspecialidadSanitaria p=(EspecialidadSanitaria)cmbImageComboEspecialidades.getSelectedItem();
showEspecialidadSanitaria(p);
}
});
}
private void showEspecialidadSanitaria(EspecialidadSanitaria p){
if(p!=null){
getComboEspecialidades().setSelectedItem(p);
String sCode=String.valueOf(p.getCodigoEspecialidad());
getjlblCodigoEspecialidad().setText(sCode);
}
}
private void initProductsPane(){
jpPrincipal.setLayout(new java.awt.GridBagLayout());
jpPrincipal.setBorder(new javax.swing.border.TitledBorder("Especialidades Sanitarias"));
java.awt.GridBagConstraints gridBagConstraints = new java.awt.GridBagConstraints();
gridBagConstraints.fill = java.awt.GridBagConstraints.HORIZONTAL;
gridBagConstraints.gridx = 0;
gridBagConstraints.gridy = 1;
gridBagConstraints.anchor = java.awt.GridBagConstraints.WEST;
gridBagConstraints.insets = new java.awt.Insets(5, 5, 5, 5);
gridBagConstraints.gridwidth = 1;
gridBagConstraints.gridy++;
JLabel label=new javax.swing.JLabel("Nombre Especialidad:");
jpPrincipal.add(label, gridBagConstraints);
gridBagConstraints.gridx++;
jpPrincipal.add(getComboEspecialidades(), gridBagConstraints);
gridBagConstraints.gridy++;
gridBagConstraints.gridx=0;
label=new javax.swing.JLabel("Código Especialidad:");
jpPrincipal.add(label, gridBagConstraints);
gridBagConstraints.gridx++;
jpPrincipal.add(jlblCodigoEspecialidad, gridBagConstraints);
}
public void update(){
getComboEspecialidades().removeAllItems();
EspecialidadSanitariaBean b=new EspecialidadSanitariaBean();
Vector v=b.getEspecialidadesSanitarias();
for(int i=0;i<v.size();i++){
EspecialidadSanitaria p=(EspecialidadSanitaria)v.elementAt(i);
getComboEspecialidades().addItem(p);
}
}
public void showOn(){
SwingUtilities.invokeLater(new Runnable() {
public void run() {
update();
}
});
}
public void showOff(){}
/**
* @return
*/
public ImageComboBox getComboEspecialidades() {
return cmbImageComboEspecialidades;
}
/**
* @return
*/
public JLabel getjlblCodigoEspecialidad() {
return jlblCodigoEspecialidad;
}
}
@@ -0,0 +1,108 @@
package com.tarisan.chipcard.tpvvs.webservicetrayicon;
import java.awt.BorderLayout;
import javax.swing.*;
import com.tarisan.chipcard.gui.*;
import com.tarisan.chipcard.tpvvs.webservicetrayicon.accesodatos.*;
import java.awt.event.*;
/**
* @author jjrider
*
* Para cambiar la plantilla para este comentario de tipo generado vaya a
* Ventana&gt;Preferencias&gt;Java&gt;Generación de código&gt;Código y comentarios
*/
public class NuevoTerminalFrame extends JFrame implements ActionListener{
NuevoTerminalPanel jpTerminalesPanel=new NuevoTerminalPanel();
private JButton btnAceptar=null;
private JButton btnCancelar=null;
public NuevoTerminalFrame(){
setTitle("Nuevo Terminal Sanitario");
init();
}
private void init(){
getContentPane().setLayout(new BorderLayout());
JPanel pn=new JPanel();
pn.setLayout(new java.awt.GridBagLayout());
java.awt.GridBagConstraints gridBagConstraints = new java.awt.GridBagConstraints();
gridBagConstraints.fill = java.awt.GridBagConstraints.HORIZONTAL;
gridBagConstraints.gridx = 0;
gridBagConstraints.gridy = 0;
gridBagConstraints.anchor = java.awt.GridBagConstraints.NORTHWEST;
gridBagConstraints.insets = new java.awt.Insets(5, 5, 5, 5);
pn.add(jpTerminalesPanel, gridBagConstraints);
gridBagConstraints.gridx = 1;
gridBagConstraints.gridwidth=2;
gridBagConstraints.anchor = java.awt.GridBagConstraints.CENTER;
gridBagConstraints.gridwidth = 1;
gridBagConstraints.gridy ++;
gridBagConstraints.gridx=0;
JPanel jpButtons=new JPanel();
jpButtons.setLayout(new java.awt.FlowLayout());
jpButtons.add(getButtonAceptar());
jpButtons.add(getButtonCancelar());
pn.add(jpButtons,gridBagConstraints);
getContentPane().add(pn, java.awt.BorderLayout.CENTER);
pack();
show();
UtilGUI.centerOnScreen(this);
}
private JButton getButtonAceptar(){
if(btnAceptar==null){
btnAceptar=new JButton();
btnAceptar.setText("Aceptar");
btnAceptar.setIcon(new ImageIcon(WebServiceTrayIcon.loadImage("aceptar32.gif")));
btnAceptar.addActionListener(this);
}
return btnAceptar;
}
private JButton getButtonCancelar(){
if(btnCancelar==null){
btnCancelar=new JButton();
btnCancelar.setText("Cancelar");
btnCancelar.setIcon(new ImageIcon(WebServiceTrayIcon.loadImage("cancelar32.gif")));
btnCancelar.addActionListener(new ActionListener(){
public void actionPerformed(ActionEvent evt){
setVisible(false);
dispose();
}
}
);
}
return btnCancelar;
}
public void actionPerformed(ActionEvent evt){
int nNumeroTerminal=-1;
boolean blnIsTVA=false;
try{
nNumeroTerminal=Integer.parseInt(jpTerminalesPanel.getNumeroTerminal());
}catch(Exception err){
}
if(nNumeroTerminal<0){
WebServiceTrayIcon.showMessage(this,this.getTitle(),"Nuevo terminal '"+jpTerminalesPanel.getNumeroTerminal()+"' no válido",JOptionPane.ERROR_MESSAGE);
return;
}
TerminalSanitarioBean objBean=new TerminalSanitarioBean();
TerminalSanitario objTerminal=new TerminalSanitario();
objTerminal.setNumeroTerminal(nNumeroTerminal);
objTerminal.setTVA(jpTerminalesPanel.getEsTerminalLaboratorio());
int nRetorno=objBean.insertInLocal(objTerminal);
if(nRetorno>0){
WebServiceTrayIcon.showMessage(this,this.getTitle(),"Nuevo terminal creado",JOptionPane.INFORMATION_MESSAGE);
}else{
WebServiceTrayIcon.showMessage(this,this.getTitle(),"Nuevo terminal no pudo ser creado",JOptionPane.ERROR_MESSAGE);
}
}
}
@@ -0,0 +1,84 @@
package com.tarisan.chipcard.tpvvs.webservicetrayicon;
import java.awt.BorderLayout;
import javax.swing.*;
public class NuevoTerminalPanel extends JPanel{
private JPanel jpPanlePrincipal=new JPanel();
JTextField jtxtNumeroTerminal=new javax.swing.JTextField("");
JCheckBox jchkEsTerminalLaboratorio=new javax.swing.JCheckBox("Terminal de Laboratorio");
public NuevoTerminalPanel(){
super();
init();
}
private void init(){
setLayout(new BorderLayout());
initPane();
JPanel pn=new JPanel();
pn.setLayout(new java.awt.GridBagLayout());
java.awt.GridBagConstraints gridBagConstraints = new java.awt.GridBagConstraints();
gridBagConstraints.fill = java.awt.GridBagConstraints.HORIZONTAL;
gridBagConstraints.gridx = 0;
gridBagConstraints.gridy = 0;
gridBagConstraints.anchor = java.awt.GridBagConstraints.NORTHWEST;
gridBagConstraints.insets = new java.awt.Insets(5, 5, 5, 5);
pn.add(jpPanlePrincipal, gridBagConstraints);
gridBagConstraints.gridx = 1;
add(pn, java.awt.BorderLayout.CENTER);
}
private void initPane(){
jpPanlePrincipal.setLayout(new java.awt.GridBagLayout());
jpPanlePrincipal.setBorder(new javax.swing.border.TitledBorder("Nuevo Terminal Sanitario"));
java.awt.GridBagConstraints gridBagConstraints = new java.awt.GridBagConstraints();
gridBagConstraints.fill = java.awt.GridBagConstraints.HORIZONTAL;
gridBagConstraints.gridx = 0;
gridBagConstraints.gridy = 1;
gridBagConstraints.anchor = java.awt.GridBagConstraints.WEST;
gridBagConstraints.insets = new java.awt.Insets(5, 5, 5, 5);
gridBagConstraints.gridwidth = 1;
JLabel label=new javax.swing.JLabel("Numero Terminal:");
jpPanlePrincipal.add(label, gridBagConstraints);
gridBagConstraints.gridx++;
jtxtNumeroTerminal.setColumns(8);
jpPanlePrincipal.add(jtxtNumeroTerminal, gridBagConstraints);
gridBagConstraints.gridy++;
gridBagConstraints.gridx=0;
gridBagConstraints.gridwidth = 2;
jpPanlePrincipal.add(jchkEsTerminalLaboratorio, gridBagConstraints);
}
/**
* @return
*/
public boolean getEsTerminalLaboratorio() {
return jchkEsTerminalLaboratorio.isSelected();
}
/**
* @return
*/
public String getNumeroTerminal() {
return jtxtNumeroTerminal.getText();
}
}
@@ -0,0 +1,114 @@
package com.tarisan.chipcard.tpvvs.webservicetrayicon;
import java.awt.BorderLayout;
import javax.swing.*;
import com.tarisan.chipcard.gui.*;
import com.tarisan.chipcard.tpvvs.webservicetrayicon.accesodatos.*;
import java.awt.event.*;
/**
* @author jjrider
*
* Para cambiar la plantilla para este comentario de tipo generado vaya a
* Ventana&gt;Preferencias&gt;Java&gt;Generación de código&gt;Código y comentarios
*/
public class NuevoUsuarioTVSFrame extends JFrame implements ActionListener{
private NuevoUsuarioTVSPanel jpInternalPanel=new NuevoUsuarioTVSPanel();
private JButton btnAceptar=null;
private JButton btnCancelar=null;
public NuevoUsuarioTVSFrame(){
setTitle("Nuevo Usuario del TVS");
init();
}
private void init(){
getContentPane().setLayout(new BorderLayout());
JPanel pn=new JPanel();
pn.setLayout(new java.awt.GridBagLayout());
java.awt.GridBagConstraints gridBagConstraints = new java.awt.GridBagConstraints();
gridBagConstraints.fill = java.awt.GridBagConstraints.HORIZONTAL;
gridBagConstraints.gridx = 0;
gridBagConstraints.gridy = 0;
gridBagConstraints.anchor = java.awt.GridBagConstraints.NORTHWEST;
gridBagConstraints.insets = new java.awt.Insets(5, 5, 5, 5);
pn.add(jpInternalPanel, gridBagConstraints);
gridBagConstraints.gridx = 1;
gridBagConstraints.gridwidth=2;
gridBagConstraints.anchor = java.awt.GridBagConstraints.CENTER;
gridBagConstraints.gridwidth = 1;
gridBagConstraints.gridy ++;
gridBagConstraints.gridx=0;
JPanel jpButtons=new JPanel();
jpButtons.setLayout(new java.awt.FlowLayout());
jpButtons.add(getButtonAceptar());
jpButtons.add(getButtonCancelar());
pn.add(jpButtons,gridBagConstraints);
getContentPane().add(pn, java.awt.BorderLayout.CENTER);
pack();
show();
UtilGUI.centerOnScreen(this);
}
public void updateData(){
jpInternalPanel.updateTerminals();
}
private JButton getButtonAceptar(){
if(btnAceptar==null){
btnAceptar=new JButton();
btnAceptar.setText("Aceptar");
btnAceptar.setIcon(new ImageIcon(WebServiceTrayIcon.loadImage("aceptar32.gif")));
btnAceptar.addActionListener(this);
}
return btnAceptar;
}
private JButton getButtonCancelar(){
if(btnCancelar==null){
btnCancelar=new JButton();
btnCancelar.setText("Cancelar");
btnCancelar.setIcon(new ImageIcon(WebServiceTrayIcon.loadImage("cancelar32.gif")));
btnCancelar.addActionListener(new ActionListener(){
public void actionPerformed(ActionEvent evt){
setVisible(false);
dispose();
}
}
);
}
return btnCancelar;
}
public void actionPerformed(ActionEvent evt){
TerminalSanitario objTer=null;
try{
objTer=(TerminalSanitario)jpInternalPanel.getTerminalesPanel().getCmbImageComboTerminales().getSelectedItem();
}catch(Exception err){
}
if(objTer==null){
WebServiceTrayIcon.showMessage(this,this.getTitle(),"El usuario debe estar asociado a un Terminal Sanitario",JOptionPane.ERROR_MESSAGE);
return;
}
String sLogin=jpInternalPanel.getJtxtLogin().getText().trim();
String sPass=new String(jpInternalPanel.getJtxtPassword().getPassword());
UsuarioTVSBean objBean=new UsuarioTVSBean();
UsuarioTVS objUser=new UsuarioTVS();
objUser.setTerminal(objTer);
objUser.setLogin(sLogin);
objUser.setPassword(sPass);
int nRetorno=objBean.insertInLocal(objUser);
if(nRetorno>0){
WebServiceTrayIcon.showMessage(this,this.getTitle(),"Nuevo Usuario TVS almacenado",JOptionPane.INFORMATION_MESSAGE);
}else{
WebServiceTrayIcon.showMessage(this,this.getTitle(),"Usuario TVS no pudo ser almacenado",JOptionPane.ERROR_MESSAGE);
}
}
}
@@ -0,0 +1,96 @@
package com.tarisan.chipcard.tpvvs.webservicetrayicon;
import java.awt.BorderLayout;
import javax.swing.*;
public class NuevoUsuarioTVSPanel extends JPanel{
private JPanel jpPanlePrincipal=new JPanel();
private TerminalesPanel objTerminalesPanel=new TerminalesPanel();
private JTextField jtxtLogin=new javax.swing.JTextField("");
private JPasswordField jtxtPassword=new javax.swing.JPasswordField("");
public NuevoUsuarioTVSPanel(){
super();
init();
}
private void init(){
setLayout(new BorderLayout());
initPane();
JPanel pn=new JPanel();
pn.setLayout(new java.awt.GridBagLayout());
java.awt.GridBagConstraints gridBagConstraints = new java.awt.GridBagConstraints();
gridBagConstraints.fill = java.awt.GridBagConstraints.HORIZONTAL;
gridBagConstraints.gridx = 0;
gridBagConstraints.gridy = 0;
gridBagConstraints.anchor = java.awt.GridBagConstraints.NORTHWEST;
gridBagConstraints.insets = new java.awt.Insets(5, 5, 5, 5);
pn.add(jpPanlePrincipal, gridBagConstraints);
gridBagConstraints.gridx = 1;
add(pn, java.awt.BorderLayout.CENTER);
}
private void initPane(){
jpPanlePrincipal.setLayout(new java.awt.GridBagLayout());
jpPanlePrincipal.setBorder(new javax.swing.border.TitledBorder("Nuevo Usuario del TVS"));
java.awt.GridBagConstraints gridBagConstraints = new java.awt.GridBagConstraints();
gridBagConstraints.fill = java.awt.GridBagConstraints.HORIZONTAL;
gridBagConstraints.gridx = 0;
gridBagConstraints.gridy = 1;
gridBagConstraints.anchor = java.awt.GridBagConstraints.WEST;
gridBagConstraints.insets = new java.awt.Insets(5, 5, 5, 5);
gridBagConstraints.gridwidth = 2;
jpPanlePrincipal.add(getTerminalesPanel(), gridBagConstraints);
gridBagConstraints.gridy++;
gridBagConstraints.gridwidth = 1;
JLabel label=new javax.swing.JLabel("Login:");
jpPanlePrincipal.add(label, gridBagConstraints);
gridBagConstraints.gridx++;
jtxtLogin.setColumns(14);
jpPanlePrincipal.add(jtxtLogin, gridBagConstraints);
gridBagConstraints.gridy++;
gridBagConstraints.gridx=0;
label=new javax.swing.JLabel("Password:");
jpPanlePrincipal.add(label, gridBagConstraints);
gridBagConstraints.gridx++;
jtxtLogin.setColumns(8);
jpPanlePrincipal.add(jtxtPassword, gridBagConstraints);
}
public void updateTerminals(){
getTerminalesPanel().update();
}
/**
* @return
*/
public JTextField getJtxtLogin() {
return jtxtLogin;
}
/**
* @return
*/
public JPasswordField getJtxtPassword() {
return jtxtPassword;
}
/**
* @return
*/
public TerminalesPanel getTerminalesPanel() {
return objTerminalesPanel;
}
}
@@ -0,0 +1,35 @@
/*
* Creado el 20-feb-07
*
* Para cambiar la plantilla para este archivo generado vaya a
* Ventana&gt;Preferencias&gt;Java&gt;Generación de código&gt;Código y comentarios
*/
package com.tarisan.chipcard.tpvvs.webservicetrayicon;
import com.tarisan.chipcard.gui.*;
/**
* @author jjrider
*
* Para cambiar la plantilla para este comentario de tipo generado vaya a
* Ventana&gt;Preferencias&gt;Java&gt;Generación de código&gt;Código y comentarios
*/
public class ProgressBarThread extends Thread{
VentanaProgreso vProgress=null;
private int nMaxSegundos=30;
public ProgressBarThread(VentanaProgreso objV,int nMax){
vProgress=objV;
nMaxSegundos=nMax;
}
public void run(){
vProgress.show();
int nSegundos=0;
while(vProgress.isVisible()){
try{
vProgress.setProgressState((nSegundos*100)/nMaxSegundos);
Thread.currentThread().sleep(1000);
nSegundos++;
}catch(Exception err){}
}
}
}
@@ -0,0 +1,41 @@
package com.tarisan.chipcard.tpvvs.webservicetrayicon;
import java.awt.BorderLayout;
import javax.swing.*;
import com.tarisan.chipcard.gui.*;
/**
* @author jjrider
*
* Para cambiar la plantilla para este comentario de tipo generado vaya a
* Ventana&gt;Preferencias&gt;Java&gt;Generación de código&gt;Código y comentarios
*/
public class TerminalesFrame extends JFrame{
TerminalesPanel jpTerminalesPanel=new TerminalesPanel();
public TerminalesFrame(){
setTitle("Terminales Sanitarios");
init();
}
private void init(){
getContentPane().setLayout(new BorderLayout());
JPanel pn=new JPanel();
pn.setLayout(new java.awt.GridBagLayout());
java.awt.GridBagConstraints gridBagConstraints = new java.awt.GridBagConstraints();
gridBagConstraints.fill = java.awt.GridBagConstraints.HORIZONTAL;
gridBagConstraints.gridx = 0;
gridBagConstraints.gridy = 0;
gridBagConstraints.anchor = java.awt.GridBagConstraints.NORTHWEST;
gridBagConstraints.insets = new java.awt.Insets(5, 5, 5, 5);
pn.add(jpTerminalesPanel, gridBagConstraints);
gridBagConstraints.gridx = 1;
getContentPane().add(pn, java.awt.BorderLayout.CENTER);
pack();
show();
UtilGUI.centerOnScreen(this);
jpTerminalesPanel.update();
}
}
@@ -0,0 +1,123 @@
package com.tarisan.chipcard.tpvvs.webservicetrayicon;
import java.awt.BorderLayout;
import javax.swing.*;
import com.tarisan.chipcard.gui.*;
import java.util.*;
import com.tarisan.chipcard.tpvvs.webservicetrayicon.accesodatos.*;
import java.awt.event.*;
public class TerminalesPanel extends JPanel{
/**
*
*/
private static final long serialVersionUID = 7655462092194141627L;
private JPanel jpPanlePrincipal=new JPanel();
private ImageComboBox cmbImageComboTerminales=new ImageComboBox();
JLabel jlblEsTerminalLaboratorio=new javax.swing.JLabel("");
public TerminalesPanel(){
super();
init();
}
private void init(){
setLayout(new BorderLayout());
initProductsPane();
JPanel pn=new JPanel();
pn.setLayout(new java.awt.GridBagLayout());
java.awt.GridBagConstraints gridBagConstraints = new java.awt.GridBagConstraints();
gridBagConstraints.fill = java.awt.GridBagConstraints.HORIZONTAL;
gridBagConstraints.gridx = 0;
gridBagConstraints.gridy = 0;
gridBagConstraints.anchor = java.awt.GridBagConstraints.NORTHWEST;
gridBagConstraints.insets = new java.awt.Insets(5, 5, 5, 5);
pn.add(jpPanlePrincipal, gridBagConstraints);
gridBagConstraints.gridx = 1;
add(pn, java.awt.BorderLayout.CENTER);
cmbImageComboTerminales.addActionListener(new ActionListener(){
public void actionPerformed(ActionEvent evt){
//System.out.println();
TerminalSanitario p=(TerminalSanitario)cmbImageComboTerminales.getSelectedItem();
showTerminalSanitario(p);
}
});
}
private void showTerminalSanitario(TerminalSanitario p){
if(p!=null){
getCmbImageComboTerminales().setSelectedItem(p);
String sTVA=((p.isTVA())?"Si":"No");
jlblEsTerminalLaboratorio.setText(sTVA);
}
}
private void initProductsPane(){
jpPanlePrincipal.setLayout(new java.awt.GridBagLayout());
jpPanlePrincipal.setBorder(new javax.swing.border.TitledBorder("Terminales Sanitarios"));
java.awt.GridBagConstraints gridBagConstraints = new java.awt.GridBagConstraints();
gridBagConstraints.fill = java.awt.GridBagConstraints.HORIZONTAL;
gridBagConstraints.gridx = 0;
gridBagConstraints.gridy = 1;
gridBagConstraints.anchor = java.awt.GridBagConstraints.WEST;
gridBagConstraints.insets = new java.awt.Insets(5, 5, 5, 5);
gridBagConstraints.gridwidth = 1;
gridBagConstraints.gridy++;
JLabel label=new javax.swing.JLabel("Numero Terminal:");
jpPanlePrincipal.add(label, gridBagConstraints);
gridBagConstraints.gridx++;
jpPanlePrincipal.add(cmbImageComboTerminales, gridBagConstraints);
gridBagConstraints.gridy++;
gridBagConstraints.gridx=0;
label=new javax.swing.JLabel("Terminal Laboratorio:");
jpPanlePrincipal.add(label, gridBagConstraints);
gridBagConstraints.gridx++;
jpPanlePrincipal.add(jlblEsTerminalLaboratorio, gridBagConstraints);
}
public void update(){
//if(cmbImageComboTerminales)
cmbImageComboTerminales.removeAllItems();
TerminalSanitarioBean b=new TerminalSanitarioBean();
Vector v=b.getTerminalesSanitarios();
for(int i=0;i<v.size();i++){
TerminalSanitario p=(TerminalSanitario)v.elementAt(i);
cmbImageComboTerminales.addItem(p);
}
}
public void tabOn(){
SwingUtilities.invokeLater(new Runnable() {
public void run() {
update();
}
});
}
public void tabOff(){}
/**
* @return
*/
public ImageComboBox getCmbImageComboTerminales() {
return cmbImageComboTerminales;
}
}
@@ -0,0 +1,141 @@
package com.tarisan.chipcard.tpvvs.webservicetrayicon;
import java.awt.*;
import java.awt.event.*;
import javax.swing.*;
/**
* @author jjrider
*/
public class ToolbarFrame extends JFrame implements ActionListener{
private JButton btnToolbarAutorizaciones=null;
private JButton btnToolbarAnulaciones=null;
private JButton btnToolbarAltaViajeros=null;
private JButton btnToolbarBajaViajeros=null;
private JButton btnToolbarConsultaViajeros=null;
private JButton btnToolbarConfiguracion=null;
private JButton btnToolbarHelp=null;
protected JPopupMenu jpopupConfiguration=null;
protected JPopupMenu jpopupAyuda=null;
public static final Image iconoFrameToolbar=WebServiceTrayIcon.loadImage("Barra_herramientas_16.gif");
public ToolbarFrame(){
super("Barra Herramientas");
//setUndecorated(true);
Dimension d=getPreferredSize();
addButtons();
setDefaultCloseOperation(JFrame.DO_NOTHING_ON_CLOSE);
WindowListener l = new WindowAdapter() {
public void windowClosing(WindowEvent e)
{
//setState ( Frame.ICONIFIED );
setVisible(false);
WebServiceTrayIcon.showInfoBalloon("TVS Web Service Tray Icon sigue iniciado");
}
};
addWindowListener(l);
setIconImage(iconoFrameToolbar);
validate();
Dimension d2=getContentPane().getPreferredSize();
d.setSize(1.2*Math.max(d.getWidth(),d2.getWidth()),1.3*(d.getHeight()+d2.getHeight()));
setSize(d);
setVisible(false);
}
private void addButtons(){
getContentPane().setLayout(new GridBagLayout());
int columna=0;
int fila=0;
getContentPane().add(getButtonToolbarAutorizaciones(), new java.awt.GridBagConstraints(columna,fila,1,1,1.0,1.0,java.awt.GridBagConstraints.WEST,java.awt.GridBagConstraints.BOTH,new Insets(0,0,0,0),0,0));
columna++;
getContentPane().add(getButtonToolbarAnulaciones(), new java.awt.GridBagConstraints(columna,fila,1,1,1.0,1.0,java.awt.GridBagConstraints.WEST,java.awt.GridBagConstraints.BOTH,new Insets(0,0,0,0),0,0));
columna++;
getContentPane().add(getButtonToolbarConfiguracion(), new java.awt.GridBagConstraints(columna,fila,1,1,1.0,1.0,java.awt.GridBagConstraints.WEST,java.awt.GridBagConstraints.BOTH,new Insets(0,0,0,0),0,0));
columna++;
getContentPane().add(getButtonToolbarHelp(), new java.awt.GridBagConstraints(columna,fila,1,1,1.0,1.0,java.awt.GridBagConstraints.WEST,java.awt.GridBagConstraints.BOTH,new Insets(0,0,0,0),0,0));
}
public void updateUI(){
jpopupConfiguration=null;
}
public void actionPerformed(ActionEvent evt) {
if (evt.getActionCommand().equals("ToolbarAutorizaciones")) {
AutorizacionesFrame objFr=new AutorizacionesFrame();
} else if (evt.getActionCommand().equals("ToolbarAnulaciones")) {
AnulacionesFrame objFr=new AnulacionesFrame();
}else{
if(jpopupConfiguration==null){
jpopupConfiguration=new JPopupMenu();
jpopupConfiguration.add(WebServiceTrayIcon.getInstance().createConfigurationMenu());
}
jpopupConfiguration.show(getButtonToolbarConfiguracion(),0,0);
}
}
private JButton getButtonToolbarAnulaciones(){
if(btnToolbarAnulaciones==null){
btnToolbarAnulaciones=new JButton("Anulaciones",new ImageIcon(WebServiceTrayIcon.loadImage("ToolBarAutorizaciones.gif")));
btnToolbarAnulaciones.setActionCommand("ToolbarAnulaciones");
btnToolbarAnulaciones.setVerticalTextPosition(SwingConstants.BOTTOM);
btnToolbarAnulaciones.setHorizontalTextPosition(SwingConstants.CENTER);
btnToolbarAnulaciones.setToolTipText("Anulaciones a ChipCard");
btnToolbarAnulaciones.addActionListener(this);
}
return btnToolbarAnulaciones;
}
private JButton getButtonToolbarAutorizaciones(){
if(btnToolbarAutorizaciones==null){
btnToolbarAutorizaciones=new JButton("Autorizaciones",new ImageIcon(WebServiceTrayIcon.loadImage("ToolBarAutorizaciones.gif")));
btnToolbarAutorizaciones.setActionCommand("ToolbarAutorizaciones");
btnToolbarAutorizaciones.setVerticalTextPosition(SwingConstants.BOTTOM);
btnToolbarAutorizaciones.setHorizontalTextPosition(SwingConstants.CENTER);
btnToolbarAutorizaciones.setToolTipText("Autorizaciones a ChipCard");
btnToolbarAutorizaciones.addActionListener(this);
}
return btnToolbarAutorizaciones;
}
private JButton getButtonToolbarConfiguracion(){
if(btnToolbarConfiguracion==null){
btnToolbarConfiguracion=new JButton("Configuración",new ImageIcon(WebServiceTrayIcon.loadImage("ToolBarConfiguracion.gif")));
btnToolbarConfiguracion.setToolTipText("Configuración");
btnToolbarConfiguracion.setVerticalTextPosition(SwingConstants.BOTTOM);
btnToolbarConfiguracion.setHorizontalTextPosition(SwingConstants.CENTER);
btnToolbarConfiguracion.setActionCommand("Configuracion");
btnToolbarConfiguracion.addActionListener(this);
//btnToolbarConfiguracion.setP
}
return btnToolbarConfiguracion;
}
private JButton getButtonToolbarHelp(){
if(btnToolbarHelp==null){
btnToolbarHelp=new JButton("Ayuda",new ImageIcon(WebServiceTrayIcon.loadImage("Ayuda.gif")));
btnToolbarHelp.setToolTipText("Ayuda");
btnToolbarHelp.setVerticalTextPosition(SwingConstants.BOTTOM);
btnToolbarHelp.setHorizontalTextPosition(SwingConstants.CENTER);
btnToolbarHelp.addActionListener(new ActionListener(){
public void actionPerformed(ActionEvent evt) {
if(jpopupAyuda==null){
jpopupAyuda=new JPopupMenu();
//jpopupAyuda.add(WebServiceTrayIcon.getInstance().createHelpMenu());
}
jpopupAyuda.show(getButtonToolbarHelp(),0,0);
}
});
}
return btnToolbarHelp;
}
public static void main(String[] args) {
}
}
@@ -0,0 +1,87 @@
package com.tarisan.chipcard.tpvvs.webservicetrayicon;
import java.awt.BorderLayout;
import javax.swing.*;
import com.tarisan.chipcard.gui.*;
import java.awt.event.*;
/**
* @author jjrider
*
* Para cambiar la plantilla para este comentario de tipo generado vaya a
* Ventana&gt;Preferencias&gt;Java&gt;Generación de código&gt;Código y comentarios
*/
public class UsuariosTVSFrame extends JFrame{
private UsuariosTVSPanel jpPanel=new UsuariosTVSPanel();
private JButton btnAceptar=null;
private JButton btnEliminar=null;
public UsuariosTVSFrame(){
setTitle("Usuarios TVS");
init();
}
private void init(){
getContentPane().setLayout(new BorderLayout());
JPanel pn=new JPanel();
pn.setLayout(new java.awt.GridBagLayout());
java.awt.GridBagConstraints gridBagConstraints = new java.awt.GridBagConstraints();
gridBagConstraints.fill = java.awt.GridBagConstraints.HORIZONTAL;
gridBagConstraints.gridx = 0;
gridBagConstraints.gridy = 0;
gridBagConstraints.anchor = java.awt.GridBagConstraints.NORTHWEST;
gridBagConstraints.insets = new java.awt.Insets(5, 5, 5, 5);
pn.add(jpPanel, gridBagConstraints);
gridBagConstraints.gridx = 1;
gridBagConstraints.gridy ++;
gridBagConstraints.gridx=0;
JPanel jpButtons=new JPanel();
jpButtons.setLayout(new java.awt.FlowLayout());
jpButtons.add(getButtonAceptar());
jpButtons.add(getButtonEliminar());
pn.add(jpButtons,gridBagConstraints);
getContentPane().add(pn, java.awt.BorderLayout.CENTER);
pack();
show();
UtilGUI.centerOnScreen(this);
jpPanel.update();
}
private JButton getButtonAceptar(){
if(btnAceptar==null){
btnAceptar=new JButton();
btnAceptar.setText("Aceptar");
btnAceptar.setIcon(new ImageIcon(WebServiceTrayIcon.loadImage("aceptar32.gif")));
btnAceptar.addActionListener(new ActionListener(){
public void actionPerformed(ActionEvent evt){
setVisible(false);
dispose();
}
});
}
return btnAceptar;
}
private JButton getButtonEliminar(){
if(btnEliminar==null){
btnEliminar=new JButton();
btnEliminar.setText("Eliminar Usuario");
btnEliminar.setIcon(new ImageIcon(WebServiceTrayIcon.loadImage("cancelar32.gif")));
btnEliminar.addActionListener(new ActionListener(){
public void actionPerformed(ActionEvent evt){
setVisible(false);
dispose();
}
}
);
}
return btnEliminar;
}
}
@@ -0,0 +1,126 @@
package com.tarisan.chipcard.tpvvs.webservicetrayicon;
import java.awt.BorderLayout;
import javax.swing.*;
import com.tarisan.chipcard.gui.*;
import java.util.*;
import com.tarisan.chipcard.tpvvs.webservicetrayicon.accesodatos.*;
import java.awt.event.*;
public class UsuariosTVSPanel extends JPanel{
private JPanel jpPanlePrincipal=new JPanel();
private ImageComboBox cmbImageComboUsuarios=new ImageComboBox();
private JLabel jlblNumeroTerminal=new javax.swing.JLabel("");
public UsuariosTVSPanel(){
super();
init();
}
private void init(){
setLayout(new BorderLayout());
initPane();
JPanel pn=new JPanel();
pn.setLayout(new java.awt.GridBagLayout());
java.awt.GridBagConstraints gridBagConstraints = new java.awt.GridBagConstraints();
gridBagConstraints.fill = java.awt.GridBagConstraints.HORIZONTAL;
gridBagConstraints.gridx = 0;
gridBagConstraints.gridy = 0;
gridBagConstraints.anchor = java.awt.GridBagConstraints.NORTHWEST;
gridBagConstraints.insets = new java.awt.Insets(5, 5, 5, 5);
pn.add(jpPanlePrincipal, gridBagConstraints);
gridBagConstraints.gridx = 1;
add(pn, java.awt.BorderLayout.CENTER);
getComboUsuarios().addActionListener(new ActionListener(){
public void actionPerformed(ActionEvent evt){
//System.out.println();
UsuarioTVS p=(UsuarioTVS)getComboUsuarios().getSelectedItem();
showUsuarioTVS(p);
}
});
}
private void showUsuarioTVS(UsuarioTVS p){
if(p!=null){
getComboUsuarios().setSelectedItem(p);
getJlblNumeroTerminal().setText(String.valueOf(p.getTerminal().getNumeroTerminal()));
}
}
private void initPane(){
jpPanlePrincipal.setLayout(new java.awt.GridBagLayout());
jpPanlePrincipal.setBorder(new javax.swing.border.TitledBorder("Usuarios TVS"));
java.awt.GridBagConstraints gridBagConstraints = new java.awt.GridBagConstraints();
gridBagConstraints.fill = java.awt.GridBagConstraints.HORIZONTAL;
gridBagConstraints.gridx = 0;
gridBagConstraints.gridy = 1;
gridBagConstraints.anchor = java.awt.GridBagConstraints.WEST;
gridBagConstraints.insets = new java.awt.Insets(5, 5, 5, 5);
gridBagConstraints.gridwidth = 1;
gridBagConstraints.gridy++;
JLabel label=new javax.swing.JLabel("Login:");
jpPanlePrincipal.add(label, gridBagConstraints);
gridBagConstraints.gridx++;
jpPanlePrincipal.add(getComboUsuarios(), gridBagConstraints);
gridBagConstraints.gridy++;
gridBagConstraints.gridx=0;
label=new javax.swing.JLabel("Numero Terminal:");
jpPanlePrincipal.add(label, gridBagConstraints);
gridBagConstraints.gridx++;
jpPanlePrincipal.add(getJlblNumeroTerminal(), gridBagConstraints);
showOn();
}
public void update(){
//if(getComboUsuarios())
getComboUsuarios().removeAllItems();
UsuarioTVSBean b=new UsuarioTVSBean();
Vector v=b.getUsuariosTVS();
for(int i=0;i<v.size();i++){
UsuarioTVS p=(UsuarioTVS)v.elementAt(i);
getComboUsuarios().addItem(p);
}
}
public void showOn(){
SwingUtilities.invokeLater(new Runnable() {
public void run() {
update();
}
});
}
public void showOff(){}
/**
* @return
*/
public ImageComboBox getComboUsuarios() {
return cmbImageComboUsuarios;
}
/**
* @return
*/
public JLabel getJlblNumeroTerminal() {
return jlblNumeroTerminal;
}
}
@@ -0,0 +1,25 @@
package com.tarisan.chipcard.tpvvs.webservicetrayicon;
import javax.swing.ImageIcon;
/**
*
* @author jjrider
*/
public interface WSTRConstantes {
public static final ImageIcon defaultUserIcon=new ImageIcon(WebServiceTrayIcon.loadImage("Usuarios32.gif"));
public static final String TIPO_OP_SOLO_TARJETA="SOLO TARJETA";
public static final String TIPO_OP_DOC_UNICO="DOCUMENTO UNICO";
public static final String TIPO_OP_VOL_MEDICO="VOLANTE MEDICO";
public static final String TIPO_OP_VOL_CLINICO="VOLANTE CLINICO";
public static final String TIPO_OP_SOLO_TARJETA_REDUC="ST";
public static final String TIPO_OP_DOC_UNICO_REDUC="DU";
public static final String TIPO_OP_VOL_MEDICO_REDUC="VM";
public static final String TIPO_OP_VOL_CLINICO_REDUC="VC";
public static final String OP_RESPONSE_AUTORIZADA="AUTORIZADA";
public static final String OP_RESPONSE_ERROR="ERROR";
public static final String OP_RESPONSE_DENEGADA="DENEGADA";
public static final String OP_RESPONSE_ANULADA="ANULADA";
}
File diff suppressed because it is too large Load Diff
@@ -0,0 +1,137 @@
package com.tarisan.chipcard.tpvvs.webservicetrayicon.accesodatos;
public class ActoMedico {
private CompaniaSanitaria objComp=null;
private int nCodigoTerminal=-1;
private int nCodigoCompania=-1;
private int nCodigoEspecialidad=-1;
private String sCodigoProf=null;
private int nCodigoLActos=-1;
private int nCodigoActo=-1;
private String sNombreActo=null;
/**
* @return
*/
public int getCodigoActo() {
return nCodigoActo;
}
/**
* @return
*/
public CompaniaSanitaria getComp() {
return objComp;
}
/**
* @return
*/
public String getNombreActo() {
return sNombreActo;
}
/**
* @param i
*/
public void setCodigoActo(int i) {
nCodigoActo = i;
}
/**
* @param sanitaria
*/
public void setComp(CompaniaSanitaria sanitaria) {
objComp = sanitaria;
}
/**
* @param string
*/
public void setNombreActo(String string) {
sNombreActo = string;
}
/**
* @return
*/
public int getCodigoCompania() {
return nCodigoCompania;
}
/**
* @return
*/
public int getCodigoEspecialidad() {
return nCodigoEspecialidad;
}
/**
* @return
*/
public int getCodigoLActos() {
return nCodigoLActos;
}
/**
* @return
*/
public String getCodigoProf() {
return sCodigoProf;
}
/**
* @param i
*/
public void setCodigoCompania(int i) {
nCodigoCompania = i;
}
/**
* @param i
*/
public void setCodigoEspecialidad(int i) {
nCodigoEspecialidad = i;
}
/**
* @param i
*/
public void setCodigoLActos(int i) {
nCodigoLActos = i;
}
/**
* @param string
*/
public void setCodigoProf(String string) {
sCodigoProf = string;
}
/**
* @return
*/
public int getCodigoTerminal() {
return nCodigoTerminal;
}
/**
* @param i
*/
public void setCodigoTerminal(int i) {
nCodigoTerminal = i;
}
public String toString(){
return getCodigoActo()+" - "+getNombreActo();
}
public String toXML(){
return "<acto>"+getCodigoActo()+"</acto>";
}
}
@@ -0,0 +1,154 @@
package com.tarisan.chipcard.tpvvs.webservicetrayicon.accesodatos;
import java.util.Vector;
import es.chipcard.util.*;
public class ActoMedicoBean extends ClsDBBase{
public static final String TABLENAME="ACTO_MEDICO";
public ActoMedicoBean(){
if(!tableExistLocally()){
createLocalTable();
}
}
public String getTableName(){
return TABLENAME;
}
public java.util.Vector getListaActos(){
String sSQL="SELECT * FROM "+TABLENAME;
return getActosMedicos(sSQL);
}
public Vector getActosMedicosOf(int nTer,int nComp,int nEspe,String sProf,int codLA){
String sSQL="SELECT * FROM "+TABLENAME+" WHERE ID_TER="+DataBaseUtil.FormatSQLIntegerField(nTer)+" AND ID_PROF="+DataBaseUtil.FormatSQLStringField(sProf)+" AND ID_COMP="+DataBaseUtil.FormatSQLIntegerField(nComp)+" AND ID_ESPE="+DataBaseUtil.FormatSQLIntegerField(nEspe)+" AND ID_LACTOS="+DataBaseUtil.FormatSQLIntegerField(codLA);
return getActosMedicos(sSQL);
}
public ActoMedico getActoMedicoByCompAndEspeAndIDLActosAndIDActo(int nIDComp,int nIDEspe, int lactos, int nActo){
String sSQL="SELECT * FROM "+TABLENAME+" WHERE ID_ESPE="+nIDEspe+" AND ID_COMP="+nIDComp+" AND ID_LACTOS="+lactos+" AND ID_ACTO="+nActo+"";
Vector vActos=getActosMedicos(sSQL);
if(vActos!=null){
if(vActos.size()>0){
return (ActoMedico)vActos.firstElement();
}
}
return null;
}
public Vector getActosMedicosByTerminalAndProfesional(int nTer,String sProf){
String sSQL="SELECT * FROM "+TABLENAME+" WHERE ID_TER="+DataBaseUtil.FormatSQLIntegerField(nTer)+" AND ID_PROF="+DataBaseUtil.FormatSQLStringField(sProf);
return getActosMedicos(sSQL);
}
public Vector getProfesionales(int nTer){
String sSQL="SELECT * FROM "+TABLENAME+" WHERE ID_TER="+DataBaseUtil.FormatSQLIntegerField(nTer);
return getActosMedicos(sSQL);
}
public Vector getActosMedicosByTerminal(int nTer){
String sSQL="SELECT * FROM "+TABLENAME+" WHERE ID_TER="+DataBaseUtil.FormatSQLIntegerField(nTer);
return getActosMedicos(sSQL);
}
public Vector getActosMedicosByProf(String sProf){
String sSQL="SELECT * FROM "+TABLENAME+" WHERE ID_PROF="+DataBaseUtil.FormatSQLStringField(sProf);
return getActosMedicos(sSQL);
}
private java.util.Vector getActosMedicos(String sSQL){
java.util.Vector v=new java.util.Vector();
java.sql.ResultSet rs=null;
if(rs==null){
rs=LocalDatabaseControl.getInstance().getQuery(sSQL);
}
if(rs!=null){
try{
while(rs.next()){
v.addElement(getActoMedico(rs));
}
}catch(Exception err){
SerClsDebug.aLog(err);
}
}
return v;
}
private ActoMedico getActoMedico(java.sql.ResultSet rs){
ActoMedico obj=new ActoMedico();
try{
obj.setCodigoTerminal(rs.getInt("ID_TER"));
obj.setCodigoCompania(rs.getInt("ID_COMP"));
obj.setCodigoEspecialidad(rs.getInt("ID_ESPE"));
obj.setCodigoProf(rs.getString("ID_PROF"));
obj.setCodigoLActos(rs.getInt("ID_LACTOS"));
obj.setCodigoActo(rs.getInt("ID_ACTO"));
obj.setNombreActo(rs.getString("NOMBRE_ACTO"));
}catch(Exception err){
SerClsDebug.aLog(err);
}
return obj;
}
private void repoblateTable(){
}
public int insertInLocal(ActoMedico objActoMedico){
return insertInLocal(objActoMedico.getCodigoTerminal(),objActoMedico.getCodigoCompania(),objActoMedico.getCodigoEspecialidad(),objActoMedico.getCodigoProf(),objActoMedico.getCodigoLActos() ,objActoMedico.getCodigoActo(),objActoMedico.getNombreActo());
}
private int insertInLocal(int nIdTer,int sCodComp,int sCodEspe,String sCodProf,int nCodLActos,int nActo,String sNombre){
int nRetorno=-1;
try{
if(nIdTer>0 && sCodComp>0 && sCodEspe>0 && sCodProf!=null && nCodLActos>0 && nActo>0){
String sSQL="INSERT INTO "+TABLENAME+"(" +
"ID_TER," +
"ID_COMP," +
"ID_ESPE," +
"ID_PROF," +
"ID_LACTOS," +
"ID_ACTO," +
"NOMBRE_ACTO" +
") "+
"VALUES (" +
DataBaseUtil.FormatSQLIntegerField(nIdTer)+","+
DataBaseUtil.FormatSQLIntegerField(sCodComp)+","+
DataBaseUtil.FormatSQLIntegerField(sCodEspe)+","+
DataBaseUtil.FormatSQLStringField(sCodProf) +","+
DataBaseUtil.FormatSQLIntegerField(nCodLActos)+","+
DataBaseUtil.FormatSQLIntegerField(nActo)+","+
DataBaseUtil.FormatSQLStringField(sNombre) +
")";
nRetorno=LocalDatabaseControl.getInstance().executeUpdate(sSQL);
}
}catch(Exception err){SerClsDebug.aLog(err);}
return nRetorno;
}
protected int createLocalTable(){
int nRetorno= LocalDatabaseControl.getInstance().executeUpdate(
"CREATE TABLE \""+TABLENAME+"\" (" +
"\"ID_TER\" int NOT NULL," +
"\"ID_COMP\" int NOT NULL," +
"\"ID_ESPE\" int NOT NULL," +
"\"ID_PROF\" VARCHAR(12) NOT NULL," +
"\"ID_LACTOS\" int NOT NULL," +
"\"ID_ACTO\" int NOT NULL," +
"\"NOMBRE_ACTO\" VARCHAR(100) NOT NULL," +
" PRIMARY KEY (ID_TER, ID_COMP,ID_ESPE,ID_PROF,ID_LACTOS,ID_ACTO)"+
")"
);
repoblateTable();
return nRetorno;
}
}
@@ -0,0 +1,329 @@
package com.tarisan.chipcard.tpvvs.webservicetrayicon.accesodatos;
import com.tarisan.chipcard.tpvvs.webservicetrayicon.*;
/**
* Representa una Autorizacion del Sistema
* @author jjrider
*/
public class Autorizacion {
private String TIPOOPERACION=null;
private int ID_TER=-1;
private String ID_TIMESTAMP=null;
private String ESTADO=null;
private String DESCRIPCION=null;
private String FECHA_OP=null;
private int ID_COMP=-1;
private int ID_ESPE=-1;
private String ID_PROF=null;
private int ID_LACTOS=-1;
private int ID_ACTO1=-1;
private int ID_ACTO2=-1;
private int ID_ACTO3=-1;
private String DU=null;
private String VOL=null;
private String FECHAHORAAUT=null;
private String NUMREF=null;
private String NUMFACTURA=null;
private String URLBOLETA=null;
private Paciente objPaciente=null;
public boolean estaAutorizada(){
return WSTRConstantes.OP_RESPONSE_AUTORIZADA.equals(getESTADO());
}
public boolean estaDenegada(){
return WSTRConstantes.OP_RESPONSE_DENEGADA.equals(getESTADO());
}
public boolean esError(){
return WSTRConstantes.OP_RESPONSE_ERROR.equals(getESTADO());
}
public boolean estaAnulada(){
return WSTRConstantes.OP_RESPONSE_ANULADA.equals(getESTADO());
}
/**
* @return
*/
public String getDU() {
return DU;
}
/**
* @return
*/
public String getESTADO() {
return ESTADO;
}
/**
* @return
*/
public String getFECHA_OP() {
return FECHA_OP;
}
/**
* @return
*/
public String getFECHAHORAAUT() {
return FECHAHORAAUT;
}
/**
* @return
*/
public int getID_ACTO1() {
return ID_ACTO1;
}
/**
* @return
*/
public int getID_ACTO2() {
return ID_ACTO2;
}
/**
* @return
*/
public int getID_ACTO3() {
return ID_ACTO3;
}
/**
* @return
*/
public int getID_COMP() {
return ID_COMP;
}
/**
* @return
*/
public int getID_ESPE() {
return ID_ESPE;
}
/**
* @return
*/
public int getID_LACTOS() {
return ID_LACTOS;
}
/**
* @return
*/
public String getID_PROF() {
return ID_PROF;
}
/**
* @return
*/
public int getID_TER() {
return ID_TER;
}
/**
* @return
*/
public String getID_TIMESTAMP() {
return ID_TIMESTAMP;
}
/**
* @return
*/
public String getNUMFACTURA() {
return NUMFACTURA;
}
/**
* @return
*/
public String getNUMREF() {
return NUMREF;
}
/**
* @return
*/
public String getURLBOLETA() {
return URLBOLETA;
}
/**
* @return
*/
public String getVOL() {
return VOL;
}
/**
* @param string
*/
public void setDU(String string) {
DU = string;
}
/**
* @param string
*/
public void setESTADO(String string) {
ESTADO = string;
}
/**
* @param string
*/
public void setFECHA_OP(String string) {
FECHA_OP = string;
}
/**
* @param string
*/
public void setFECHAHORAAUT(String string) {
FECHAHORAAUT = string;
}
/**
* @param i
*/
public void setID_ACTO1(int i) {
ID_ACTO1 = i;
}
/**
* @param i
*/
public void setID_ACTO2(int i) {
ID_ACTO2 = i;
}
/**
* @param i
*/
public void setID_ACTO3(int i) {
ID_ACTO3 = i;
}
/**
* @param i
*/
public void setID_COMP(int i) {
ID_COMP = i;
}
/**
* @param i
*/
public void setID_ESPE(int i) {
ID_ESPE = i;
}
/**
* @param i
*/
public void setID_LACTOS(int i) {
ID_LACTOS = i;
}
/**
* @param string
*/
public void setID_PROF(String string) {
ID_PROF = string;
}
/**
* @param i
*/
public void setID_TER(int i) {
ID_TER = i;
}
/**
* @param string
*/
public void setID_TIMESTAMP(String string) {
ID_TIMESTAMP = string;
}
/**
* @param string
*/
public void setNUMFACTURA(String string) {
NUMFACTURA = string;
}
/**
* @param string
*/
public void setNUMREF(String string) {
NUMREF = string;
}
/**
* @param string
*/
public void setURLBOLETA(String string) {
URLBOLETA = string;
}
/**
* @param string
*/
public void setVOL(String string) {
VOL = string;
}
/**
* @return
*/
public Paciente getPaciente() {
return objPaciente;
}
/**
* @param paciente
*/
public void setPaciente(Paciente paciente) {
objPaciente = paciente;
}
/**
* @return
*/
public String getDESCRIPCION() {
return DESCRIPCION;
}
/**
* @return
*/
public String getTIPOOPERACION() {
return TIPOOPERACION;
}
/**
* @param string
*/
public void setDESCRIPCION(String string) {
DESCRIPCION = string;
}
/**
* @param string
*/
public void setTIPOOPERACION(String string) {
TIPOOPERACION = string;
}
}
@@ -0,0 +1,352 @@
package com.tarisan.chipcard.tpvvs.webservicetrayicon.accesodatos;
import java.util.*;
import es.chipcard.util.*;
public class AutorizacionesBean extends ClsDBBase{
public static final String TABLENAME="AUTORIZACIONES";
public AutorizacionesBean(){
if(!tableExistLocally()){
createLocalTable();
}
}
public String getTableName(){
return TABLENAME;
}
public ArrayList getAutorizacionesAsArrayList(){
String sSQL="SELECT * FROM "+TABLENAME;
return getAutorizacionesAsArrayList(sSQL);
}
public ArrayList getAutorizacionesAsArrayListByTerminal(int nTerminal){
String sSQL="SELECT * FROM "+TABLENAME+
" WHERE"+
" ID_TER="+DataBaseUtil.FormatSQLIntegerField(nTerminal);
return getAutorizacionesAsArrayList(sSQL);
}
public ArrayList getAutorizacionesAsArrayListByTerminalAndEstado(int nTerminal,String sEstado){
String sSQL="SELECT * FROM "+TABLENAME+
" WHERE"+
" ID_TER="+DataBaseUtil.FormatSQLIntegerField(nTerminal)+
" AND ESTADO="+DataBaseUtil.FormatSQLStringField(sEstado);;
return getAutorizacionesAsArrayList(sSQL);
}
public ArrayList getAutorizacionesAsArrayList(String sSQL){
ArrayList lista=new ArrayList();
java.sql.ResultSet rs=null;
sSQL=sSQL+" ORDER BY FECHA_OP DESC";
if(rs==null){
rs=LocalDatabaseControl.getInstance().getQuery(sSQL);
}
if(rs!=null){
try{
String sArrCampos[]=null;
int nNumColumnas=rs.getMetaData().getColumnCount();
if(sArrCampos==null){
sArrCampos=new String[nNumColumnas];
for(int i=0;i<nNumColumnas;i++){
sArrCampos[i]=rs.getMetaData().getColumnLabel(i+1);
}
lista.add(sArrCampos);
}
while(rs.next()){
String sArr[]=new String[nNumColumnas];
for(int i=0;i<nNumColumnas;i++){
sArr[i]=rs.getString(i+1);
}
lista.add(sArr);
}
}catch(Exception err){
SerClsDebug.aLog(err);
}
}
return lista;
}
/****
* Devuelve una Autorizacion en base a su identificador único
* @param nIdTer
* @param sTimestamp
* @return
*/
public Autorizacion getAutorizacionByID(int nIdTer,String sTimestamp){
Autorizacion objAutorizacion=null;
try{
if(nIdTer>0 && sTimestamp!=null){
String sSQL="SELECT * FROM "+TABLENAME+
" WHERE"+
" ID_TER="+DataBaseUtil.FormatSQLIntegerField(nIdTer)+" AND "+
" ID_TIMESTAMP="+DataBaseUtil.FormatSQLStringField(sTimestamp) ;
Vector vAuts=getAutorizaciones(sSQL);
objAutorizacion=(Autorizacion)vAuts.firstElement();
}
}catch(Exception err){SerClsDebug.aLog(err);}
return objAutorizacion;
}
/***
* Devuelve todas las Autorizacioens realizadas por un Terminal
* @param nIdTer
* @return
*/
public Vector getAutorizacionesByTerminal(int nIdTer){
Vector v=new Vector();;
try{
if(nIdTer>0){
String sSQL="SELECT * FROM "+TABLENAME+
" WHERE"+
" ID_TER="+DataBaseUtil.FormatSQLIntegerField(nIdTer);
v=getAutorizaciones(sSQL);
}
}catch(Exception err){SerClsDebug.aLog(err);}
return v;
}
/***
* Devuelve todas las Autorizacioens realizadas por un Terminal
* @param nIdTer
* @return
*/
public Vector getAutorizacionesAutorizadasByTerminal(int nIdTer){
Vector v=new Vector();;
try{
if(nIdTer>0){
String sSQL="SELECT * FROM "+TABLENAME+
" WHERE"+
" ID_TER="+DataBaseUtil.FormatSQLIntegerField(nIdTer)+
" AND ESTADO="+DataBaseUtil.FormatSQLStringField(com.tarisan.chipcard.tpvvs.webservicetrayicon.WSTRConstantes.OP_RESPONSE_AUTORIZADA);
v=getAutorizaciones(sSQL);
}
}catch(Exception err){SerClsDebug.aLog(err);}
return v;
}
private java.util.Vector getAutorizaciones(String sSQL){
java.util.Vector v=new java.util.Vector();
java.sql.ResultSet rs=null;
if(rs==null){
rs=LocalDatabaseControl.getInstance().getQuery(sSQL);
}
if(rs!=null){
try{
while(rs.next()){
v.addElement(getAutorizacion(rs));
}
}catch(Exception err){
SerClsDebug.aLog(err);
}
}
return v;
}
private Autorizacion getAutorizacion(java.sql.ResultSet rs){
Autorizacion obj=new Autorizacion();
try{
obj.setID_TER(rs.getInt("ID_TER"));
obj.setID_TIMESTAMP(rs.getString("ID_TIMESTAMP"));
obj.setESTADO(rs.getString("ESTADO"));
Paciente paciente=new Paciente();
paciente.setTarjeta(rs.getString("TARJETA"));
paciente.setFAlta(rs.getString("FALTA_TAR"));
paciente.setFBaja(rs.getString("FBAJA_TAR"));
paciente.setCobertura(rs.getString("COBERTURA_TAR"));
paciente.setVersion(rs.getString("VERSION_TAR"));
obj.setPaciente(paciente);
obj.setFECHA_OP(rs.getString("FECHA_OP"));
obj.setID_COMP(rs.getInt("ID_COMP"));
obj.setID_ESPE(rs.getInt("ID_ESPE"));
obj.setID_PROF(rs.getString("ID_PROF"));
obj.setID_LACTOS(rs.getInt("ID_LACTOS"));
obj.setID_ACTO1(rs.getInt("ID_ACTO1"));
obj.setID_ACTO2(rs.getInt("ID_ACTO2"));
obj.setID_ACTO3(rs.getInt("ID_ACTO3"));
obj.setDU(rs.getString("DU"));
obj.setVOL(rs.getString("VOL"));
obj.setFECHAHORAAUT(rs.getString("FECHAHORAAUT"));
obj.setNUMREF(rs.getString("NUMREF"));
obj.setNUMFACTURA(rs.getString("NUMFACTURA"));
obj.setURLBOLETA(rs.getString("URLBOLETA"));
obj.setNUMFACTURA(rs.getString("NUMFACTURA"));
Paciente pac=new Paciente();
pac.setTarjeta(rs.getString("TARJETA"));
pac.setFAlta(rs.getString("FALTA_TAR"));
pac.setFBaja(rs.getString("FBAJA_TAR"));
pac.setCobertura(rs.getString("COBERTURA_TAR"));
pac.setVersion(rs.getString("VERSION_TAR"));
obj.setPaciente(pac);
}catch(Exception err){
SerClsDebug.aLog(err);
}
return obj;
}
private void repoblateTable(){
}
public int insertInLocal(Autorizacion aut){
String sTarjeta=null,sFAltaTarjeta=null,sFBajaTarjeta=null,sCobTarjeta=null,sVerTarjeta=null;
if(aut.getPaciente()!=null){
sTarjeta=aut.getPaciente().getTarjeta();
sFAltaTarjeta=aut.getPaciente().getFAlta();
sFBajaTarjeta=aut.getPaciente().getFBaja();
sCobTarjeta=aut.getPaciente().getCobertura();
sVerTarjeta=aut.getPaciente().getVersion();
}
return insertInLocal(aut.getID_TER(),aut.getID_TIMESTAMP(),aut.getTIPOOPERACION(),aut.getESTADO(),aut.getDESCRIPCION(),sTarjeta,sFAltaTarjeta,sFBajaTarjeta,sCobTarjeta,sVerTarjeta,aut.getID_COMP(),aut.getID_ESPE(),aut.getID_PROF(),aut.getID_LACTOS(),aut.getID_ACTO1(),aut.getID_ACTO2(),aut.getID_ACTO3(),aut.getDU(),aut.getVOL(),aut.getFECHAHORAAUT(),aut.getNUMREF(),aut.getNUMFACTURA(),aut.getURLBOLETA());
}
private int insertInLocal(int nIdTer,String sTimestamp,String sTipoAut,String sEstado,String sDesc,String sTarjeta,String sFAltaTarjeta,String sFBajaTarjeta,String sCobTarjeta,String sVerTarjeta,int sCodComp,int sCodEspe,String sCodProf,int nCodLActos,int nActo1,int nActo2,int nActo3,String sDU,String sVol,String sFechaHoraAut,String sNumRef,String sNumFactura,String sURLBoleta){
int nRetorno=-1;
try{
if(nIdTer>0 && sTimestamp!=null){
String sSQL="INSERT INTO "+TABLENAME+"(" +
"ID_TER," +
"ID_TIMESTAMP," +
"AUTTYPE," +
"ESTADO," +
"DESCRIPCION," +
"FECHA_OP," +
"TARJETA," +
"FALTA_TAR," +
"FBAJA_TAR," +
"COBERTURA_TAR," +
"VERSION_TAR," +
"ID_COMP," +
"ID_ESPE," +
"ID_PROF," +
"ID_LACTOS," +
"ID_ACTO1," +
"ID_ACTO2," +
"ID_ACTO3," +
"DU," +
"VOL," +
"FECHAHORAAUT," +
"NUMREF," +
"NUMFACTURA," +
"URLBOLETA"+
") "+
"VALUES (" +
DataBaseUtil.FormatSQLIntegerField(nIdTer)+","+
DataBaseUtil.FormatSQLStringField(sTimestamp) +","+
DataBaseUtil.FormatSQLStringField(sTipoAut) +","+
DataBaseUtil.FormatSQLStringField(sEstado) +","+
DataBaseUtil.FormatSQLStringField(sDesc) +","+
"CURRENT_TIMESTAMP,"+
DataBaseUtil.FormatSQLStringField(sTarjeta) +","+
DataBaseUtil.FormatSQLStringField(sFAltaTarjeta) +","+
DataBaseUtil.FormatSQLStringField(sFBajaTarjeta) +","+
DataBaseUtil.FormatSQLStringField(sCobTarjeta) +","+
DataBaseUtil.FormatSQLStringField(sVerTarjeta) +","+
DataBaseUtil.FormatSQLIntegerField(sCodComp)+","+
DataBaseUtil.FormatSQLIntegerField(sCodEspe)+","+
DataBaseUtil.FormatSQLStringField(sCodProf) +","+
DataBaseUtil.FormatSQLIntegerField(nCodLActos)+","+
DataBaseUtil.FormatSQLIntegerField(nActo1)+","+
DataBaseUtil.FormatSQLIntegerField(nActo2)+","+
DataBaseUtil.FormatSQLIntegerField(nActo3)+","+
DataBaseUtil.FormatSQLStringField(sDU) +","+
DataBaseUtil.FormatSQLStringField(sVol) +","+
DataBaseUtil.FormatSQLStringField(sFechaHoraAut) +","+
DataBaseUtil.FormatSQLStringField(sNumRef) +","+
DataBaseUtil.FormatSQLStringField(sNumFactura) +","+
DataBaseUtil.FormatSQLStringField(sURLBoleta) +
")";
nRetorno=LocalDatabaseControl.getInstance().executeUpdate(sSQL);
}
}catch(Exception err){SerClsDebug.aLog(err);}
return nRetorno;
}
/****
* Actualiza en la BD Local una Autorizacion
* @param aut
* @return
*/
public int updateInLocal(Autorizacion aut){
return updateInLocal(aut.getID_TER(),aut.getID_TIMESTAMP(),aut.getESTADO(),aut.getDESCRIPCION());
}
/****
* @param nIdTer
* @param sTimestamp
* @param sEstado
* @param sDesc
* @return
*/
private int updateInLocal(int nIdTer,String sTimestamp,String sEstado,String sDesc){
int nRetorno=-1;
try{
if(nIdTer>0 && sTimestamp!=null){
String sSQL="UPDATE "+TABLENAME+" SET " +
"ESTADO=" + DataBaseUtil.FormatSQLStringField(sEstado)+
",DESCRIPCION="+ DataBaseUtil.FormatSQLStringField(sDesc)+
",FECHA_OP=CURRENT_TIMESTAMP " +
"WHERE "+
"ID_TER="+DataBaseUtil.FormatSQLIntegerField(nIdTer)+" AND "+
"ID_TIMESTAMP="+DataBaseUtil.FormatSQLStringField(sTimestamp) ;
nRetorno=LocalDatabaseControl.getInstance().executeUpdate(sSQL);
}
}catch(Exception err){SerClsDebug.aLog(err);}
return nRetorno;
}
protected int createLocalTable(){
int nRetorno= LocalDatabaseControl.getInstance().executeUpdate(
"CREATE TABLE \""+TABLENAME+"\" (" +
"\"ID_TER\" int NOT NULL," +
"\"ID_TIMESTAMP\" VARCHAR(26) NOT NULL," +
"\"AUTTYPE\" VARCHAR(2) NOT NULL," +
"\"ESTADO\" VARCHAR(26)," +
"\"DESCRIPCION\" VARCHAR(256) NOT NULL," +
"\"FECHA_OP\" TIMESTAMP NOT NULL," +
"\"TARJETA\" VARCHAR(28)," +
"\"FALTA_TAR\" VARCHAR(4)," +
"\"FBAJA_TAR\" VARCHAR(4)," +
"\"COBERTURA_TAR\" VARCHAR(4)," +
"\"VERSION_TAR\" VARCHAR(4)," +
"\"ID_COMP\" int," +
"\"ID_ESPE\" int," +
"\"ID_PROF\" VARCHAR(12)," +
"\"ID_LACTOS\" int," +
"\"ID_ACTO1\" int," +
"\"ID_ACTO2\" int," +
"\"ID_ACTO3\" int," +
"\"DU\" VARCHAR(18)," +
"\"VOL\" VARCHAR(18)," +
"\"FECHAHORAAUT\" VARCHAR(12)," +
"\"NUMREF\" VARCHAR(10)," +
"\"NUMFACTURA\" VARCHAR(16)," +
"\"URLBOLETA\" VARCHAR(512)," +
" PRIMARY KEY (ID_TER, ID_TIMESTAMP)"+
")"
);
//Creo indices
LocalDatabaseControl.getInstance().executeUpdate("CREATE INDEX FECHA_OPIndex ON "+TABLENAME+"(FECHA_OP)");
LocalDatabaseControl.getInstance().executeUpdate("CREATE INDEX ID_PROFIndex ON "+TABLENAME+"(ID_PROF)");
LocalDatabaseControl.getInstance().executeUpdate("CREATE INDEX TARJETAIndex ON "+TABLENAME+"(TARJETA)");
LocalDatabaseControl.getInstance().executeUpdate("CREATE INDEX TER_ESTADO_Index ON "+TABLENAME+"(ID_TER,ESTADO)");
repoblateTable();
return nRetorno;
}
public static void main(String args[]){
System.setProperty("configFiles","./conf/");
AutorizacionesBean bean=new AutorizacionesBean();
}
}
@@ -0,0 +1,47 @@
package com.tarisan.chipcard.tpvvs.webservicetrayicon.accesodatos;
import java.sql.ResultSet;
import es.chipcard.util.*;
/*****
* Clase base de los objetos de acceso a Datos
* @author jjrider
*
*/
public abstract class ClsDBBase {
private static java.util.HashMap hshExistTable=new java.util.HashMap();
public ClsDBBase(){
checkExists();
}
public void checkExists(){
if(!tableExistLocally()){
createLocalTable();
}
}
public abstract String getTableName();
protected abstract int createLocalTable();
public boolean tableExistLocally(){
if(hshExistTable.containsKey(getTableName()))
return true;
boolean blnRetorno=false;
ResultSet rs=LocalDatabaseControl.getInstance().getQuery("SELECT * FROM SYS.SYSTABLES WHERE TABLENAME='"+getTableName()+"'");
if(rs!=null){
try{
if(rs.next()){
blnRetorno=true;
hshExistTable.put(getTableName(),getTableName());
}
}catch(Exception err){
SerClsDebug.aLog(err);
}
}
LocalDatabaseControl.forceClose(rs);
return blnRetorno;
}
}
@@ -0,0 +1,44 @@
package com.tarisan.chipcard.tpvvs.webservicetrayicon.accesodatos;
public class CompaniaSanitaria {
private String sNombreCompania=null;
private int nCodigoCompania=-1;
/**
* @return
*/
public int getCodigoCompania() {
return nCodigoCompania;
}
/**
* @return
*/
public String getNombreCompania() {
return sNombreCompania;
}
/**
* @param string
*/
public void setCodigoCompania(int n) {
nCodigoCompania = n;
}
/**
* @param string
*/
public void setNombreCompania(String string) {
sNombreCompania = string;
}
public String toString(){
return getCodigoCompania()+" - "+getNombreCompania();
}
public String toXML(){
return "<Comp>"+getCodigoCompania()+"</Comp>";
}
}
@@ -0,0 +1,135 @@
package com.tarisan.chipcard.tpvvs.webservicetrayicon.accesodatos;
import java.util.Vector;
import es.chipcard.util.*;
public class CompaniaSanitariaBean extends ClsDBBase{
public static String TABLENAME="COMPANIA_SANITARIA";
public CompaniaSanitariaBean(){
if(!tableExistLocally()){
createLocalTable();
}
}
public String getTableName(){
return TABLENAME;
}
public java.util.Vector getCompaniasSanitarias(){
String sSQL="SELECT * FROM "+TABLENAME+" ORDER BY NOMBRE_COMP";
return getCompaniasSanitarias(sSQL);
}
public CompaniaSanitaria getCompaniaSanitariaById(int nID){
String sSQL="SELECT * FROM "+TABLENAME+" WHERE ID_COMP="+nID;
Vector vEL=getCompaniasSanitarias(sSQL);
if(vEL.size()==0)
return null;
else
return (CompaniaSanitaria)vEL.firstElement();
}
public Vector getCompaniaSanitariaByTerminal(int nTer){
String sSQL="SELECT * FROM "+TABLENAME+" WHERE ID_COMP IN (SELECT DISTINCT(ID_COMP) FROM "+ActoMedicoBean.TABLENAME+" WHERE ID_TER="+DataBaseUtil.FormatSQLIntegerField(nTer)+") ORDER BY NOMBRE_COMP";
return getCompaniasSanitarias(sSQL);
}
public Vector getCompaniaSanitariaByTerminalAndProfesional(int nTer,String sProf){
String sSQL="SELECT * FROM "+TABLENAME+" WHERE ID_COMP IN (SELECT DISTINCT(ID_COMP) FROM "+ActoMedicoBean.TABLENAME+" WHERE ID_TER="+DataBaseUtil.FormatSQLIntegerField(nTer)+" AND ID_PROF="+DataBaseUtil.FormatSQLStringField(sProf)+") ORDER BY NOMBRE_COMP";
return getCompaniasSanitarias(sSQL);
}
private java.util.Vector getCompaniasSanitarias(String sSQL){
java.util.Vector v=new java.util.Vector();
java.sql.ResultSet rs=null;
if(rs==null){
rs=LocalDatabaseControl.getInstance().getQuery(sSQL);
}
if(rs!=null){
try{
while(rs.next()){
v.addElement(getCompaniasSanitarias(rs));
}
}catch(Exception err){
SerClsDebug.aLog(err);
}
}
return v;
}
private CompaniaSanitaria getCompaniasSanitarias(java.sql.ResultSet rs){
CompaniaSanitaria obj=new CompaniaSanitaria();
try{
obj.setCodigoCompania(rs.getInt("ID_COMP"));
obj.setNombreCompania(rs.getString("NOMBRE_COMP"));
}catch(Exception err){
SerClsDebug.aLog(err);
}
return obj;
}
public int insertInLocal(CompaniaSanitaria objCompaniaSanitaria){
return insertInLocal(objCompaniaSanitaria.getCodigoCompania(),objCompaniaSanitaria.getNombreCompania());
}
private int insertInLocal(int CodCompSanitaria,String sNombre){
int nRetorno=-1;
try{
if(CodCompSanitaria>0){
String sSQL="INSERT INTO "+TABLENAME+"(" +
"ID_COMP," +
"NOMBRE_COMP" +
") "+
"VALUES (" +
DataBaseUtil.FormatSQLIntegerField(CodCompSanitaria)+","+
DataBaseUtil.FormatSQLStringField(sNombre) +
")";
nRetorno=LocalDatabaseControl.getInstance().executeUpdate(sSQL);
}
}catch(Exception err){SerClsDebug.aLog(err);}
return nRetorno;
}
private void repoblateTable(){
insertInLocal(2,"ALIANCA");
insertInLocal(90,"MCS-IMECO");
insertInLocal(100,"MAPFRE CAJA SALUD");
insertInLocal(300,"DKV SEGUROS");
insertInLocal(340,"SANITAS SERVICIOS");
insertInLocal(360,"SANITAS");
insertInLocal(440,"I.M.Q.");
insertInLocal(460,"ADESLAS");
insertInLocal(550,"I.C.A.M.");
insertInLocal(560,"MUTUA DE TERRASSA");
insertInLocal(600,"AGRUPACION MUTUA");
insertInLocal(680,"ALLIANZ");
insertInLocal(690,"AXA");
insertInLocal(700,"SERSANET");
insertInLocal(770,"H.N.A.");
insertInLocal(790,"H.N.A. S.C.");
insertInLocal(820,"CASER");
insertInLocal(840,"A.X.A.-WINTERTHUR");
insertInLocal(850,"CIGNA");
insertInLocal(999,"CHIP CARD SALUD");
insertInLocal(260,"M. GENERAL CATALUNYA");
}
protected int createLocalTable(){
int nCreation=LocalDatabaseControl.getInstance().executeUpdate(
"CREATE TABLE \""+TABLENAME+"\" (" +
"\"ID_COMP\" int NOT NULL primary key ," +
"\"NOMBRE_COMP\" VARCHAR(255) NOT NULL" +
")"
);
repoblateTable();
return nCreation;
}
}
@@ -0,0 +1,81 @@
package com.tarisan.chipcard.tpvvs.webservicetrayicon.accesodatos;
import es.chipcard.util.SerClsFecha;
public class DataBaseUtil {
private static String sTimestampFormatDB=null;
private static java.text.DecimalFormat objPesoFormatter= null;
public static String getCurrentDateForDB(){
SerClsFecha objFecha=new SerClsFecha();
String sTS=objFecha.toString(getTimestampFormatForDB());
while(sTS.length()<getTimestampFormatForDB().length()){
sTS=sTS+"0";
}
return sTS;
}
private static String getTimestampFormatForDB(){
if(sTimestampFormatDB==null){
sTimestampFormatDB="yyyy-MM-dd HH:mm:ss.SSS";
}
return sTimestampFormatDB;
}
public static String FormatSQLStringField(String sValue){
if(sValue==null)
return "NULL";
if(sValue.equalsIgnoreCase("NULL"))
return "NULL";
return "'"+sValue+"'";
}
public static String FormatSQLDoubleField(String sValue){
if(sValue==null)
return "NULL";
if(sValue.equalsIgnoreCase("NULL"))
return "NULL";
String sRetorno="0";
try{
sValue=getPesoDoubleFormat().format(Double.parseDouble(sValue));
}catch(Exception err){}
return sValue;
}
public static String FormatSQLDoubleField(double dblValue){
if(dblValue<0)
return "NULL";
String sRetorno="0";
try{
sRetorno=getPesoDoubleFormat().format(dblValue);
}catch(Exception err){}
return sRetorno;
}
public static String FormatSQLTimestampField(String sValue){
if(sValue==null)
return "NULL";
if(sValue.length()<19)
return "NULL";
return "'"+sValue+"'";
}
public static String FormatSQLIntegerField(int nValue){
if(nValue==-1)
return "NULL";
return String.valueOf(nValue);
}
public static java.text.DecimalFormat getPesoDoubleFormat(){
if(objPesoFormatter==null){
//new java.text.DecimalFormat("0000000#.##");
java.text.DecimalFormatSymbols unusualSymbols = new java.text.DecimalFormatSymbols();
unusualSymbols.setDecimalSeparator('.');
//unusualSymbols.setGroupingSeparator('.');
String sPattern = "#######0.000";
objPesoFormatter = new java.text.DecimalFormat(sPattern, unusualSymbols);
}
return objPesoFormatter;
}
}
@@ -0,0 +1,44 @@
package com.tarisan.chipcard.tpvvs.webservicetrayicon.accesodatos;
public class EspecialidadSanitaria {
private int nCodigoEspecialidad=-1;
private String sNombreEspecialidad="";
/**
* @return
*/
public int getCodigoEspecialidad() {
return nCodigoEspecialidad;
}
/**
* @return
*/
public String getNombreEspecialidad() {
return sNombreEspecialidad;
}
/**
* @param string
*/
public void setCodigoEspecialidad(int n) {
nCodigoEspecialidad = n;
}
/**
* @param string
*/
public void setNombreEspecialidad(String string) {
sNombreEspecialidad = string;
}
public String toString(){
return getCodigoEspecialidad()+" - "+getNombreEspecialidad();
}
public String toXML(){
return "<Espec>"+getCodigoEspecialidad()+"</Espec>";
}
}
@@ -0,0 +1,214 @@
package com.tarisan.chipcard.tpvvs.webservicetrayicon.accesodatos;
import java.util.Vector;
import es.chipcard.util.*;
public class EspecialidadSanitariaBean extends ClsDBBase{
public static String TABLENAME="ESPECIALIDADSANITARIA";
public EspecialidadSanitariaBean(){
if(!tableExistLocally()){
createLocalTable();
}
}
public String getTableName(){
return TABLENAME;
}
public java.util.Vector getEspecialidadesSanitarias(){
String sSQL="SELECT * FROM "+TABLENAME+" ORDER BY NOMBRE_ESPE";
return getEspecialidadesSanitarias(sSQL);
}
public EspecialidadSanitaria getEspecialidadSanitariaById(int nID){
String sSQL="SELECT * FROM "+TABLENAME+" WHERE ID_ESPE="+nID;
Vector vEL=getEspecialidadesSanitarias(sSQL);
if(vEL.size()==0)
return null;
else
return (EspecialidadSanitaria)vEL.firstElement();
}
public Vector getEspecialidadesSanitariasByTerminal(int nTer){
String sSQL="SELECT * FROM "+TABLENAME+" WHERE ID_ESPE IN (SELECT DISTINCT(ID_ESPE) FROM "+ActoMedicoBean.TABLENAME+" WHERE ID_TER="+DataBaseUtil.FormatSQLIntegerField(nTer)+") ORDER BY NOMBRE_ESPE";
return getEspecialidadesSanitarias(sSQL);
}
public Vector getEspecialidadesSanitariasByTerminalAndProfesional(int nTer,String sProf){
String sSQL="SELECT * FROM "+TABLENAME+" WHERE ID_ESPE IN (SELECT DISTINCT(ID_ESPE) FROM "+ActoMedicoBean.TABLENAME+" WHERE ID_TER="+DataBaseUtil.FormatSQLIntegerField(nTer)+" AND ID_PROF="+DataBaseUtil.FormatSQLStringField(sProf)+") ORDER BY NOMBRE_ESPE";
return getEspecialidadesSanitarias(sSQL);
}
private java.util.Vector getEspecialidadesSanitarias(String sSQL){
java.util.Vector v=new java.util.Vector();
java.sql.ResultSet rs=null;
if(rs==null){
rs=LocalDatabaseControl.getInstance().getQuery(sSQL);
}
if(rs!=null){
try{
while(rs.next()){
v.addElement(getEspecialidadesSanitarias(rs));
}
}catch(Exception err){
SerClsDebug.aLog(err);
}
}
return v;
}
private EspecialidadSanitaria getEspecialidadesSanitarias(java.sql.ResultSet rs){
EspecialidadSanitaria obj=new EspecialidadSanitaria();
try{
obj.setCodigoEspecialidad(rs.getInt("ID_ESPE"));
obj.setNombreEspecialidad(rs.getString("NOMBRE_ESPE"));
}catch(Exception err){
SerClsDebug.aLog(err);
}
return obj;
}
private void repoblateTable(){
insertInLocal(1,"MEDICINA GENERAL");
insertInLocal(2,"PEDIATRIA");
insertInLocal(3,"ALERGOLOGIA");
insertInLocal(4,"ANALISIS CLINICOS");
insertInLocal(5,"ANATOMIA PATOLOGICA");
insertInLocal(6,"ANESTESIA/REANIMACIO");
insertInLocal(7,"ANGIOLOGIA/CIR.VASCU");
insertInLocal(8,"APARATO DIGESTIVO");
insertInLocal(9,"CARDIOLOGIA");
insertInLocal(10,"CIRUG.CARDIOVASCULAR");
insertInLocal(11,"CIR.GENERAL/AP.DIGES");
insertInLocal(12,"CIRUGIA MAXILOFACIAL");
insertInLocal(13,"CIRUGIA PEDIATRICA");
insertInLocal(14,"CIR.PLASTICA/REPARAD");
insertInLocal(15,"CIRUGIA TORACICA");
insertInLocal(16,"DERMATOLOGIA");
insertInLocal(17,"DIAGNOST. POR IMAGEN");
insertInLocal(18,"ENDOCRINO Y NUTRICIO");
insertInLocal(19,"ESTOMATOLOGIA");
insertInLocal(20,"GERIATRIA");
insertInLocal(21,"HEMATOLOGIA/HEMOTERA");
insertInLocal(22,"INMUNOLOGIA");
insertInLocal(23,"MEDICINA INTENSIVA");
insertInLocal(24,"MEDICINA INTERNA");
insertInLocal(25,"MEDICINA NUCLEAR");
insertInLocal(26,"NEFROLOGIA");
insertInLocal(27,"NEUMOLOGIA");
insertInLocal(28,"NEUROCIRUGIA");
insertInLocal(29,"NEUROFISIOLOG.CLINIC");
insertInLocal(30,"NEUROLOGIA");
insertInLocal(31,"OBSTETRICIA/GINECOL.");
insertInLocal(32,"OFTALMOLOGIA");
insertInLocal(33,"ONCOLOGIA MEDICA");
insertInLocal(34,"ONCOLOGIA RADIOTERAP");
insertInLocal(35,"OTORRINOLARINGOLOGIA");
insertInLocal(36,"PSIQUIATRIA");
insertInLocal(37,"REHABILITACION");
insertInLocal(38,"REUMATOLOGIA");
insertInLocal(39,"TRATAMIENTO DE DOLOR");
insertInLocal(40,"TRAUMAT.Y ORTOPEDIA");
insertInLocal(41,"UROLOGIA");
insertInLocal(42,"LOGOPEDIA");
insertInLocal(43,"MEDICINA DEL TRABAJO");
insertInLocal(44,"AYUDANTE QUIRURGICO");
insertInLocal(45,"HOSPITALIZACION");
insertInLocal(46,"DIETETICA");
insertInLocal(47,"OPTICA Y AUDIOLOGIA");
insertInLocal(48,"MEDICINA DEPORTIVA");
insertInLocal(49,"MEDICINA ESPACIAL");
insertInLocal(50,"ENFERMERIA");
insertInLocal(51,"FISIOTERAPEUTAS");
insertInLocal(52,"MATRONAS");
insertInLocal(53,"PODOLOGIA");
insertInLocal(54,"URGENCIAS");
insertInLocal(55,"URGENC.DE ENFERMERIA");
insertInLocal(56,"FARMACIA");
insertInLocal(57,"MEDICINAS COMPLEMENT");
insertInLocal(58,"LOGOFONIATRIA");
insertInLocal(59,"ACUPUNTURA");
insertInLocal(60,"DIALISIS");
insertInLocal(61,"HOSPIT.EN DOMICILIO");
insertInLocal(62,"LITOTRICIA");
insertInLocal(63,"PREPARACION AL PARTO");
insertInLocal(64,"PSICOLOGIA");
insertInLocal(65,"PUERICULTURA");
insertInLocal(66,"REPRODUCCION ASISTID");
insertInLocal(67,"SALUD INFANTIL");
insertInLocal(68,"URG. HOSPITALARIAS");
insertInLocal(69,"URG.NO HOSPITALARIAS");
insertInLocal(70,"ESTOM.SERV.DENTALES");
insertInLocal(71,"ESTOMAT. INFANTIL");
insertInLocal(72,"IMPLANTOLOGIA ORAL");
insertInLocal(73,"ORTODONCIA");
insertInLocal(74,"SERV.DE CIRUGIA ORAL");
insertInLocal(75,"SERV.HIGIENE DENTAL");
insertInLocal(76,"TRATAM.ENDODONCIA");
insertInLocal(77,"URGENCIAS DENTALES");
insertInLocal(78,"PERIODONCIA");
insertInLocal(79,"ESTETICA DENTAL");
insertInLocal(80,"AMBULANCIAS");
insertInLocal(81,"OXIGENOTERAP.VENTILO");
insertInLocal(82,"PROTESIS");
insertInLocal(83,"POLIZA DENTAL");
insertInLocal(85,"RADIOLOGIA MAXILOFAC");
insertInLocal(86,"EUROP ASSISTANCE");
insertInLocal(87,"SANATORIOS");
insertInLocal(89,"CENTRO HOSPITALARIO");
insertInLocal(90,"DIAGNOSTICOS MEDICOS");
insertInLocal(91,"POLICLINICAS");
insertInLocal(92,"ECO-DOPPLER");
insertInLocal(93,"RESONANCIA MAGNETICA");
insertInLocal(94,"SCANNER");
insertInLocal(95,"ENTIDAD REASEGURADOR");
insertInLocal(96,"RADIOLOGIA INTERVENC");
insertInLocal(97,"DENSITOMETRIA OSEA");
insertInLocal(99,"ESPECIALIDAD COMODIN");
insertInLocal(999,"ESPE. GENERICA");
}
public int insertInLocal(EspecialidadSanitaria objEspecialidadSanitaria){
return insertInLocal(objEspecialidadSanitaria.getCodigoEspecialidad(),objEspecialidadSanitaria.getNombreEspecialidad());
}
private int insertInLocal(int sCode,String sNombre){
int nRetorno=-1;
try{
if(sCode>0){
String sSQL="INSERT INTO "+TABLENAME+"(" +
"ID_ESPE," +
"NOMBRE_ESPE" +
") "+
"VALUES (" +
DataBaseUtil.FormatSQLIntegerField(sCode)+","+
DataBaseUtil.FormatSQLStringField(sNombre) +
")";
nRetorno=LocalDatabaseControl.getInstance().executeUpdate(sSQL);
}
}catch(Exception err){SerClsDebug.aLog(err);}
return nRetorno;
}
protected int createLocalTable(){
int nRetorno= LocalDatabaseControl.getInstance().executeUpdate(
"CREATE TABLE \""+TABLENAME+"\" (" +
"\"ID_ESPE\" int NOT NULL primary key ," +
"\"NOMBRE_ESPE\" VARCHAR(255) NOT NULL" +
")"
);
repoblateTable();
return nRetorno;
}
}
@@ -0,0 +1,101 @@
package com.tarisan.chipcard.tpvvs.webservicetrayicon.accesodatos;
public class ListaActos {
private CompaniaSanitaria objComp=null;
private EspecialidadSanitaria objEspe=null;
private int nEspecialidad=-1;
private int nComp=-1;
private int nCodigoListaActos=-1;
private String nNombreListaActos=null;
/**
* @return
*/
public int getCodigoListaActos() {
return nCodigoListaActos;
}
/**
* @return
*/
public String getNombreListaActos() {
return nNombreListaActos;
}
/**
* @return
*/
public CompaniaSanitaria getCompaniaSanitaria() {
return objComp;
}
/**
* @return
*/
public EspecialidadSanitaria getEspecialidadSanitaria() {
return objEspe;
}
/**
* @param i
*/
public void setCodigoListaActos(int i) {
nCodigoListaActos = i;
}
/**
* @param string
*/
public void setNombreListaActos(String string) {
nNombreListaActos = string;
}
/**
* @param sanitaria
*/
public void setCompaniaSanitaria(CompaniaSanitaria sanitaria) {
objComp = sanitaria;
}
/**
* @param sanitaria
*/
public void setEspecialidadSanitaria(EspecialidadSanitaria sanitaria) {
objEspe = sanitaria;
}
/**
* @return
*/
public int getCodigoCompania() {
return nComp;
}
/**
* @return
*/
public int getCodigoEspecialidad() {
return nEspecialidad;
}
/**
* @param i
*/
public void setCodigoCompania(int i) {
nComp = i;
}
/**
* @param i
*/
public void setCodigoEspecialidad(int i) {
nEspecialidad = i;
}
public String toString(){
return getCodigoListaActos()+" - "+getNombreListaActos();
}
public String toXML(){
return "<lactos>"+getCodigoListaActos()+"</lactos>";
}
}
@@ -0,0 +1,30 @@
package com.tarisan.chipcard.tpvvs.webservicetrayicon.accesodatos;
/*****
* Relacion entre la lista de actos y los actos médicos que la componen
* @author jjrider
*
* Para cambiar la plantilla para este comentario de tipo generado vaya a
* Ventana&gt;Preferencias&gt;Java&gt;Generación de código&gt;Código y comentarios
*/
public class ListaActosActo extends ListaActos{
private ActoMedico objActo=null;
/**
* @return
*/
public ActoMedico getActo() {
return objActo;
}
/**
* @param medico
*/
public void setActo(ActoMedico medico) {
objActo = medico;
}
}
@@ -0,0 +1,123 @@
package com.tarisan.chipcard.tpvvs.webservicetrayicon.accesodatos;
import java.util.Vector;
import es.chipcard.util.*;
public class ListaActosBean extends ClsDBBase{
public static String TABLENAME="LISTA_ACTOS";
public ListaActosBean(){
if(!tableExistLocally()){
createLocalTable();
}
}
public String getTableName(){
return TABLENAME;
}
public java.util.Vector getListaActos(){
String sSQL="SELECT * FROM "+TABLENAME+" ORDER BY NOMBRE_LACTOS";
return getListaActos(sSQL);
}
public Vector getListaActosByCompAndEspe(int nIDComp,int nIDEspe){
String sSQL="SELECT * FROM "+TABLENAME+" WHERE ID_ESPE="+nIDEspe+" AND ID_COMP="+nIDComp+" ORDER BY NOMBRE_LACTOS";
return getListaActos(sSQL);
}
public ListaActos getListaActosByCompAndEspeAndIDLActos(int nIDComp,int nIDEspe, int lactos){
String sSQL="SELECT * FROM "+TABLENAME+" WHERE ID_ESPE="+nIDEspe+" AND ID_COMP="+nIDComp+" AND ID_LACTOS="+lactos+" ORDER BY NOMBRE_LACTOS";
Vector vLActos=getListaActos(sSQL);
if(vLActos!=null){
if(vLActos.size()>0){
return (ListaActos)vLActos.firstElement();
}
}
return null;
}
private java.util.Vector getListaActos(String sSQL){
java.util.Vector v=new java.util.Vector();
java.sql.ResultSet rs=null;
if(rs==null){
rs=LocalDatabaseControl.getInstance().getQuery(sSQL);
}
if(rs!=null){
try{
while(rs.next()){
v.addElement(getListaActos(rs));
}
}catch(Exception err){
SerClsDebug.aLog(err);
}
}
return v;
}
private ListaActos getListaActos(java.sql.ResultSet rs){
ListaActos obj=new ListaActos();
try{
obj.setCodigoCompania(rs.getInt("ID_COMP"));
obj.setCodigoEspecialidad(rs.getInt("ID_ESPE"));
obj.setCodigoListaActos(rs.getInt("ID_LACTOS"));
obj.setNombreListaActos(rs.getString("NOMBRE_LACTOS"));
}catch(Exception err){
SerClsDebug.aLog(err);
}
return obj;
}
private void repoblateTable(){
}
public int insertInLocal(ListaActos objListaActos){
return insertInLocal(objListaActos.getCodigoCompania(),objListaActos.getCodigoEspecialidad(),objListaActos.getCodigoListaActos(),objListaActos.getNombreListaActos());
}
private int insertInLocal(int sCodComp,int sCodEspe,int sCode,String sNombre){
int nRetorno=-1;
try{
if(sCodComp>0 && sCodEspe>0 && sCode>0){
String sSQL="INSERT INTO "+TABLENAME+"(" +
"ID_COMP," +
"ID_ESPE," +
"ID_LACTOS," +
"NOMBRE_LACTOS" +
") "+
"VALUES (" +
DataBaseUtil.FormatSQLIntegerField(sCodComp)+","+
DataBaseUtil.FormatSQLIntegerField(sCodEspe)+","+
DataBaseUtil.FormatSQLIntegerField(sCode)+","+
DataBaseUtil.FormatSQLStringField(sNombre) +
")";
nRetorno=LocalDatabaseControl.getInstance().executeUpdate(sSQL);
}
}catch(Exception err){SerClsDebug.aLog(err);}
return nRetorno;
}
protected int createLocalTable(){
int nRetorno= LocalDatabaseControl.getInstance().executeUpdate(
"CREATE TABLE \""+TABLENAME+"\" (" +
"\"ID_COMP\" int NOT NULL," +
"\"ID_ESPE\" int NOT NULL," +
"\"ID_LACTOS\" int NOT NULL," +
"\"NOMBRE_LACTOS\" VARCHAR(100) NOT NULL," +
" PRIMARY KEY (ID_COMP,ID_ESPE,ID_LACTOS)"+
")"
);
repoblateTable();
return nRetorno;
}
}
@@ -0,0 +1,243 @@
package com.tarisan.chipcard.tpvvs.webservicetrayicon.accesodatos;
import java.sql.*;
import es.chipcard.util.*;
public class LocalDatabaseControl {
private Connection objCon=null;
private static LocalDatabaseControl I=null;
public static LocalDatabaseControl getInstance(){
if(I==null){
I=new LocalDatabaseControl();
I.init();
}
return I;
}
private void init(){
try{
Class.forName("org.apache.derby.jdbc.EmbeddedDriver").newInstance();
}catch(Exception err){
SerClsDebug.aLog(err);
}
}
public Connection getConnection(){
if(objCon==null){
try{
String protocol = "jdbc:derby:";
java.util.Properties props = new java.util.Properties();
props.put("user","admin");
props.put("password","admin");
objCon = DriverManager.getConnection(protocol + getDBName()+";create=true",props);
}catch(Exception err){
SerClsDebug.aLog(err.getMessage());
}
}
return objCon;
}
private static String getDBName(){
String sRetorno="localDB";
return sRetorno;
}
public static void shutdown(){
try{
forceClose(getInstance().objCon);
//DriverManager.getConnection("jdbc:derby:"+getDBName()+";shutdown=true");
}catch(Throwable th){
SerClsDebug.aLog("Error shutting down Local Database:"+th.getMessage());
//th.printStackTrace();
}
}
public static void forceClose(Statement stmt){
try{
stmt.close();
}catch(Exception e){}
}
public static void forceClose(ResultSet rs){
try{
rs.close();
}catch(Exception e){}
}
private static void forceClose(Connection con){
try{
if(con!=null)
con.close();
}catch(Exception e){}
}
/**
* Metodo para INSERT, UPDATE y DELETE
* Devuelve el numero de filas afectadas o -1 si hubo error
* @param strUpdate
* @return
*/
public int executeUpdate(String strUpdate){
Connection con=getConnection();
int intRetorno=executeUpdate(strUpdate, con);
//forceClose(con);
return intRetorno;
}
public int executeUpdate(String strUpdate,Connection con){
int intRetorno=executeUpdate(strUpdate,null,con);
return intRetorno;
}
public int executeUpdate(String strUpdate,java.io.StringWriter s){
Connection con=null;
return executeUpdate(strUpdate,s, con);
}
public int executeUpdate(String strUpdate,java.io.StringWriter s,Connection con){
int intRetorno=-1;
//Connection con=null;
Statement stmt=null;
try{
if(con==null)
con=getConnection();
if(con!=null){
stmt=con.createStatement();
SerClsDebug.aLog("LocalDatabaseUpdate:"+strUpdate);
intRetorno=stmt.executeUpdate(strUpdate);
}
}catch(Exception e){
if(s==null){
e.printStackTrace();
}else{
java.io.PrintWriter p=new java.io.PrintWriter(s);
p.println("Error al ejecutar: "+strUpdate);
e.printStackTrace(p);
}
}finally{
forceClose(stmt);
}
return intRetorno;
}
public boolean executeProcedure(String strUpdate){
boolean blnRetorno=executeProcedure(strUpdate, null);
return blnRetorno;
}
public boolean executeProcedure(String strCall,java.io.StringWriter s){
boolean blnRetorno=false;
CallableStatement cs=null;
ResultSet rs=null;
Connection con=getConnection();
boolean blnKeepConnectionOpened=false;
try{
cs = con.prepareCall(strCall);
cs.execute();
cs.close();
blnRetorno = true;
}catch(Exception e){
if(s==null){
e.printStackTrace();
}else{
java.io.PrintWriter p=new java.io.PrintWriter(s);
p.println("Error al ejecutar: " + strCall);
e.printStackTrace(p);
}
}finally{
forceClose(rs);
forceClose(cs);
}
return blnRetorno;
}
/**
* Realiza una select y devuelve el resultado como un arraylist
* de contenido un String[] por fila
* */
public ResultSet getQuery(String strQuery){
Statement stmt=null;
ResultSet rs=null;
try{
SerClsDebug.aLog("LocalDatabaseQuery:"+strQuery);
stmt=getConnection().createStatement();
rs=stmt.executeQuery(strQuery);
}catch(Exception e){
SerClsDebug.aLog(e);
}finally{
}
return rs;
}
public String[] getFieldsOfTable(String strTablename,Connection con){
String arrFields[]=null;
Statement stmt=null;
ResultSet rs=null;
String strQuery=null;
if(strTablename.toUpperCase().startsWith("SELECT ")){
strQuery=strTablename;
SerClsDebug.aLog("LocaDatabaseQuery:"+strQuery);
}else{
strQuery="SELECT * FROM "+strTablename+" WHERE 1<>0";
}
try{
if(con==null)
con=getConnection();
stmt=con.createStatement();
rs=stmt.executeQuery(strQuery);
arrFields=getColumnNames(rs);
}catch(Exception e){
SerClsDebug.aLog(e);
}finally{
forceClose(rs);
forceClose(stmt);
}
return arrFields;
}
public String[] getColumnNames(ResultSet rs){
String arrNombresColumnas[]=null;
try {
ResultSetMetaData rsmd = rs.getMetaData();
int nColumns = rsmd.getColumnCount();
System.out.println("Hay "+nColumns+" columnas");
//HashMap h = null;
String arrFila[]=null;
arrNombresColumnas=new String[nColumns];
try{
//Se rellena la primera fila con los nombres de columnas
for(int column = 1; column<(nColumns+1); column++) {
int intColumnType = rsmd.getColumnType(column);
String strColumnName = rsmd.getColumnName(column);
arrNombresColumnas[column-1]=strColumnName;
System.out.println("Columna["+column+"]="+arrNombresColumnas[column-1]);
}
}catch(Exception e){}
}catch(Exception e){
e.printStackTrace();
}
return arrNombresColumnas;
}
public String getMetaData(Connection con){
StringBuffer buff=new StringBuffer();
try{
buff.append("<ProductName>"+con.getMetaData().getDatabaseProductName()+"</ProductName>");
buff.append("<getMaxColumnsInSelect>"+con.getMetaData().getMaxColumnsInSelect()+"</getMaxColumnsInSelect>");
buff.append("<getMaxConnections>"+con.getMetaData().getMaxConnections()+"</getMaxConnections>");
buff.append("<getURL>"+con.getMetaData().getURL()+"</getURL>");
ResultSet rs=con.createStatement().executeQuery("select TNAME from \"DB2eSYSTABLES\"");
while(rs.next()){
buff.append("\n<TableName>"+rs.getString("TNAME")+"</TableName>");
}
//buff.append("<allTablesAreSelectable>"+con.getMetaData().allTablesAreSelectable()+"</allTablesAreSelectable>");
}catch(Exception e){
buff.append(e.toString());
}
return buff.toString();
}
}
@@ -0,0 +1,137 @@
/*
* Creado el 12-feb-07
*
* Para cambiar la plantilla para este archivo generado vaya a
* Ventana&gt;Preferencias&gt;Java&gt;Generación de código&gt;Código y comentarios
*/
package com.tarisan.chipcard.tpvvs.webservicetrayicon.accesodatos;
/**
* @author jjrider
*
* Para cambiar la plantilla para este comentario de tipo generado vaya a
* Ventana&gt;Preferencias&gt;Java&gt;Generación de código&gt;Código y comentarios
*/
public class Paciente {
private String sPista=null;
private String sTarjeta=null;
private String sFAlta=null;
private String sFBaja=null;
private String sCobertura=null;
private String sVersion=null;
/**
* @return
*/
public String getCobertura() {
return sCobertura;
}
/**
* @return
*/
public String getFAlta() {
return sFAlta;
}
/**
* @return
*/
public String getFBaja() {
return sFBaja;
}
/**
* @return
*/
public String getPista() {
return sPista;
}
/**
* @return
*/
public String getTarjeta() {
return sTarjeta;
}
/**
* @return
*/
public String getVersion() {
return sVersion;
}
/**
* @param string
*/
public void setCobertura(String string) {
sCobertura = string;
}
/**
* @param string
*/
public void setFAlta(String string) {
sFAlta = string;
}
/**
* @param string
*/
public void setFBaja(String string) {
sFBaja = string;
}
/**
* @param string
*/
public void setPista(String string) {
sPista = string;
}
/**
* @param string
*/
public void setTarjeta(String string) {
sTarjeta = string;
}
/**
* @param string
*/
public void setVersion(String string) {
sVersion = string;
}
public String toXML(){
if(getPista()!=null){
String sPistaHEXA=es.chipcard.util.SerClsUtilHexadecimal.toHexadecimal(getPista().getBytes());
return "<Paciente><pista2>"+sPistaHEXA+"</pista2></Paciente>";
}else{
if(getTarjeta()!=null){
StringBuffer buffer=new StringBuffer();
buffer.append("<Paciente>");
buffer.append("<Tarjeta>");
buffer.append("<num>"+getTarjeta()+"</num>");
if(getVersion()!=null){
buffer.append("<ver>"+getVersion()+"</ver>");
}
if(getCobertura()!=null){
buffer.append("<cob>"+getCobertura()+"</cob>");
}
if(getFAlta()!=null){
buffer.append("<falta>"+getFAlta()+"</falta>");
}
if(getFBaja()!=null){
buffer.append("<fbaja>"+getFBaja()+"</fbaja>");
}
buffer.append("</Tarjeta>");
buffer.append("</Paciente>");
return buffer.toString();
}
}
return "";
}
}
@@ -0,0 +1,39 @@
package com.tarisan.chipcard.tpvvs.webservicetrayicon.accesodatos;
/***
* Representa Un Profesional Sanitario de un determinado Terminal
* @author jjrider
*/
public class ProfesionalDeTerminal {
private ProfesionalSanitario objProf=null;
private TerminalSanitario objTer=null;
/**
* @return
*/
public ProfesionalSanitario getProf() {
return objProf;
}
/**
* @return
*/
public TerminalSanitario getTer() {
return objTer;
}
/**
* @param sanitario
*/
public void setProf(ProfesionalSanitario sanitario) {
objProf = sanitario;
}
/**
* @param sanitario
*/
public void setTer(TerminalSanitario sanitario) {
objTer = sanitario;
}
}
@@ -0,0 +1,44 @@
package com.tarisan.chipcard.tpvvs.webservicetrayicon.accesodatos;
public class ProfesionalSanitario {
private String sCodProfesional=null;
private String sNombreProfesional=null;
/**
* @return
*/
public String getCodProfesional() {
return sCodProfesional;
}
/**
* @return
*/
public String getNombreProfesional() {
return sNombreProfesional;
}
/**
* @param string
*/
public void setCodProfesional(String string) {
sCodProfesional = string;
}
/**
* @param string
*/
public void setNombreProfesional(String string) {
sNombreProfesional = string;
}
public String toString(){
return getCodProfesional()+" - "+getNombreProfesional();
}
public String toXML(){
return "<Prof>"+getCodProfesional()+"</Prof>";
}
}
@@ -0,0 +1,103 @@
package com.tarisan.chipcard.tpvvs.webservicetrayicon.accesodatos;
import java.util.Vector;
import es.chipcard.util.*;
public class ProfesionalSanitarioBean extends ClsDBBase{
public static String TABLENAME="PROFESIONAL_SANITARIO";
public ProfesionalSanitarioBean(){
if(!tableExistLocally()){
createLocalTable();
}
}
public String getTableName(){
return TABLENAME;
}
public ProfesionalSanitario getProfesionalSanitariosByID(String sID){
String sSQL="SELECT * FROM "+TABLENAME+" WHERE ID_PROF='"+sID+"'";
Vector vProf=getProfesionalesSanitarios(sSQL);
if(vProf!=null){
if(vProf.size()>0)
return (ProfesionalSanitario)vProf.firstElement();
}
return null;
}
public java.util.Vector getProfesionalesSanitarios(){
String sSQL="SELECT * FROM "+TABLENAME+" ORDER BY NOMBRE_PROF";
return getProfesionalesSanitarios(sSQL);
}
public Vector getProfesionalesByTerminal(int nTer){
String sSQL="SELECT * FROM "+TABLENAME+" WHERE ID_PROF IN (SELECT DISTINCT(ID_PROF) FROM "+ActoMedicoBean.TABLENAME+" WHERE ID_TER="+DataBaseUtil.FormatSQLIntegerField(nTer)+") ORDER BY NOMBRE_PROF";
return getProfesionalesSanitarios(sSQL);
}
private java.util.Vector getProfesionalesSanitarios(String sSQL){
java.util.Vector v=new java.util.Vector();
java.sql.ResultSet rs=null;
if(rs==null){
rs=LocalDatabaseControl.getInstance().getQuery(sSQL);
}
if(rs!=null){
try{
while(rs.next()){
v.addElement(getProfesionalesSanitarios(rs));
}
}catch(Exception err){
SerClsDebug.aLog(err);
}
}
return v;
}
private ProfesionalSanitario getProfesionalesSanitarios(java.sql.ResultSet rs){
ProfesionalSanitario obj=new ProfesionalSanitario();
try{
obj.setCodProfesional(rs.getString("ID_PROF"));
obj.setNombreProfesional(rs.getString("NOMBRE_PROF"));
}catch(Exception err){
SerClsDebug.aLog(err);
}
return obj;
}
public int insertInLocal(ProfesionalSanitario objProfesionalSanitario){
int nRetorno=-1;
try{
if(objProfesionalSanitario!=null){
String sSQL="INSERT INTO "+TABLENAME+"(" +
"ID_PROF," +
"NOMBRE_PROF" +
") "+
"VALUES (" +
DataBaseUtil.FormatSQLStringField(objProfesionalSanitario.getCodProfesional())+","+
DataBaseUtil.FormatSQLStringField(objProfesionalSanitario.getNombreProfesional()) +
")";
nRetorno=LocalDatabaseControl.getInstance().executeUpdate(sSQL);
}
}catch(Exception err){SerClsDebug.aLog(err);}
return nRetorno;
}
protected int createLocalTable(){
return LocalDatabaseControl.getInstance().executeUpdate(
"CREATE TABLE \""+TABLENAME+"\" (" +
"\"ID_PROF\" VARCHAR(12) NOT NULL primary key ," +
"\"NOMBRE_PROF\" VARCHAR(125) NOT NULL" +
")"
);
}
}
@@ -0,0 +1,50 @@
package com.tarisan.chipcard.tpvvs.webservicetrayicon.accesodatos;
/**
* @author jjrider
*
* Para cambiar la plantilla para este comentario de tipo generado vaya a
* Ventana&gt;Preferencias&gt;Java&gt;Generación de código&gt;Código y comentarios
*/
public class TerminalSanitario {
private int nTerminal=-1;
private boolean bTVA=false;
/**
* @return
*/
public int getNumeroTerminal() {
return nTerminal;
}
/**
* @param i
*/
public void setNumeroTerminal(int i) {
nTerminal = i;
}
/**
* @return
*/
public boolean isTVA() {
return bTVA;
}
/**
* @param b
*/
public void setTVA(boolean b) {
bTVA = b;
}
public String toString(){
return String.valueOf(getNumeroTerminal());
}
public String toXML(){
return "<term>"+getNumeroTerminal()+"</term>";
}
}
@@ -0,0 +1,96 @@
package com.tarisan.chipcard.tpvvs.webservicetrayicon.accesodatos;
import java.util.Vector;
import es.chipcard.util.*;
public class TerminalSanitarioBean extends ClsDBBase{
public static String TABLENAME="TERMINALSANITARIO";
public TerminalSanitarioBean(){
if(!tableExistLocally()){
createLocalTable();
}
}
public String getTableName(){
return TABLENAME;
}
public java.util.Vector getTerminalesSanitarios(){
String sSQL="SELECT * FROM "+TABLENAME;
return getTerminalesSanitarios(sSQL);
}
public TerminalSanitario getTerminalesSanitarios(int nID){
String sSQL="SELECT * FROM "+TABLENAME+" WHERE ID_TER='"+nID+"'";
Vector vEL=getTerminalesSanitarios(sSQL);
if(vEL.size()==0)
return null;
else
return (TerminalSanitario)vEL.firstElement();
}
private java.util.Vector getTerminalesSanitarios(String sSQL){
java.util.Vector v=new java.util.Vector();
java.sql.ResultSet rs=null;
if(rs==null){
rs=LocalDatabaseControl.getInstance().getQuery(sSQL);
}
if(rs!=null){
try{
while(rs.next()){
v.addElement(getTerminalesSanitarios(rs));
}
}catch(Exception err){
SerClsDebug.aLog(err);
}
}
return v;
}
public static TerminalSanitario getTerminalesSanitarios(java.sql.ResultSet rs){
TerminalSanitario obj=new TerminalSanitario();
try{
obj.setNumeroTerminal(rs.getInt("ID_TER"));
obj.setTVA(rs.getInt("TIPO_TER")!=0);
}catch(Exception err){
SerClsDebug.aLog(err);
}
return obj;
}
public int insertInLocal(TerminalSanitario objTerminalSanitario){
int nRetorno=-1;
try{
if(objTerminalSanitario!=null){
String sSQL="INSERT INTO "+TABLENAME+"(" +
"ID_TER," +
"TIPO_TER" +
") "+
"VALUES (" +
DataBaseUtil.FormatSQLIntegerField(objTerminalSanitario.getNumeroTerminal())+","+
DataBaseUtil.FormatSQLIntegerField(((objTerminalSanitario.isTVA())?1:0)) +
")";
nRetorno=LocalDatabaseControl.getInstance().executeUpdate(sSQL);
}
}catch(Exception err){SerClsDebug.aLog(err);}
return nRetorno;
}
protected int createLocalTable(){
return LocalDatabaseControl.getInstance().executeUpdate(
"CREATE TABLE \""+TABLENAME+"\" (" +
"\"ID_TER\" int NOT NULL primary key ," +
"\"TIPO_TER\" int NOT NULL" +
")"
);
}
}
@@ -0,0 +1,66 @@
package com.tarisan.chipcard.tpvvs.webservicetrayicon.accesodatos;
public class UsuarioTVS implements com.tarisan.chipcard.gui.IconizableObject{
private String sLogin=null;
private String sPassword=null;
private TerminalSanitario terminal=null;
private javax.swing.Icon userIcon=null;
/**
* @return
*/
public String getLogin() {
return sLogin;
}
/**
* @return
*/
public String getPassword() {
return sPassword;
}
/**
* @param string
*/
public void setLogin(String string) {
sLogin = string;
}
/**
* @param string
*/
public void setPassword(String string) {
sPassword = string;
}
public String toString(){
return getLogin();
}
public javax.swing.Icon getIcon(){
if(userIcon==null){
userIcon=null;
}
return userIcon;
}
/**
* @return
*/
public TerminalSanitario getTerminal() {
return terminal;
}
/**
* @param sanitario
*/
public void setTerminal(TerminalSanitario sanitario) {
terminal = sanitario;
}
}
@@ -0,0 +1,106 @@
package com.tarisan.chipcard.tpvvs.webservicetrayicon.accesodatos;
import java.util.Vector;
import es.chipcard.util.*;
public class UsuarioTVSBean extends ClsDBBase{
public static String TABLENAME="USUARIO_TVS";
public UsuarioTVSBean(){
if(!tableExistLocally()){
createLocalTable();
}
}
public String getTableName(){
return TABLENAME;
}
public java.util.Vector getUsuariosTVS(){
String sSQL="SELECT * FROM "+TABLENAME+" A ,"+TerminalSanitarioBean.TABLENAME+" B WHERE A.ID_TER=B.ID_TER" ;
return getUsuariosTVS(sSQL);
}
public java.util.Vector getUsuariosTVSOfTerminal(int nIDTer){
String sSQL="SELECT * FROM "+TABLENAME+" A ,"+TerminalSanitarioBean.TABLENAME+" B WHERE A.ID_TER=B.ID_TER AND A.ID_TER="+nIDTer;
return getUsuariosTVS(sSQL);
}
public UsuarioTVS getUsuarioTVS(String sLogin){
String sSQL="SELECT * FROM "+TABLENAME+" A ,"+TerminalSanitarioBean.TABLENAME+" B WHERE A.ID_TER=B.ID_TER AND LOGIN='"+sLogin+"'";
Vector vEL=getUsuariosTVS(sSQL);
if(vEL.size()==0)
return null;
else
return (UsuarioTVS)vEL.firstElement();
}
private java.util.Vector getUsuariosTVS(String sSQL){
java.util.Vector v=new java.util.Vector();
java.sql.ResultSet rs=null;
if(rs==null){
rs=LocalDatabaseControl.getInstance().getQuery(sSQL);
}
if(rs!=null){
try{
while(rs.next()){
v.addElement(getUsuariosTVS(rs));
}
}catch(Exception err){
SerClsDebug.aLog(err);
}
}
return v;
}
private UsuarioTVS getUsuariosTVS(java.sql.ResultSet rs){
UsuarioTVS obj=new UsuarioTVS();
try{
obj.setLogin(rs.getString("LOGIN"));
obj.setPassword(rs.getString("PASSWORD"));
TerminalSanitario ter=TerminalSanitarioBean.getTerminalesSanitarios(rs);
obj.setTerminal(ter);
}catch(Exception err){
SerClsDebug.aLog(err);
}
return obj;
}
public int insertInLocal(UsuarioTVS objUsuarioTVS){
int nRetorno=-1;
try{
if(objUsuarioTVS!=null){
String sSQL="INSERT INTO "+TABLENAME+"(" +
"LOGIN," +
"PASSWORD," +
"ID_TER" +
") "+
"VALUES (" +
DataBaseUtil.FormatSQLStringField(objUsuarioTVS.getLogin())+","+
DataBaseUtil.FormatSQLStringField(objUsuarioTVS.getPassword()) + ","+
DataBaseUtil.FormatSQLIntegerField(objUsuarioTVS.getTerminal().getNumeroTerminal()) +
")";
nRetorno=LocalDatabaseControl.getInstance().executeUpdate(sSQL);
}
}catch(Exception err){SerClsDebug.aLog(err);}
return nRetorno;
}
protected int createLocalTable(){
return LocalDatabaseControl.getInstance().executeUpdate(
"CREATE TABLE \""+TABLENAME+"\" (" +
"\"LOGIN\" VARCHAR(12) NOT NULL primary key ," +
"\"PASSWORD\" VARCHAR(12) NOT NULL," +
"\"ID_TER\" int NOT NULL" +
")"
);
}
}
@@ -0,0 +1,12 @@
package com.tarisan.chipcard.tpvvs.webservicetrayicon.messages;
import com.tarisan.chipcard.tpvvs.webservicetrayicon.accesodatos.*;;
/**
* @author jjrider
*/
public class AnulReq extends CCReq{
public AnulReq(int nTerminal,String sTimestamp,UsuarioTVS user) throws Exception{
super("<AnulReq><AutID><term>"+nTerminal+"</term><timestamp>"+sTimestamp+"</timestamp></AutID></AnulReq>",user);
}
}
@@ -0,0 +1,103 @@
/*
* Creado el 15-feb-07
*/
package com.tarisan.chipcard.tpvvs.webservicetrayicon.messages;
import com.tarisan.chipcard.tpvvs.webservicetrayicon.*;
import es.chipcard.util.*;
import org.w3c.dom.*;
/**
* Simboliza un elemento 'Aut' dentro de un 'AutRes'
* @author jjrider
*/
public class Aut {
private Element xmlAutElement=null;
private int ActosMedicos[]=null;
protected Aut(Element xmlAutElement){
this.xmlAutElement=xmlAutElement;
NodeList nl=xmlAutElement.getElementsByTagName("acto");
ActosMedicos=new int[nl.getLength()];
for(int i=0;i<nl.getLength();i++){
try{
ActosMedicos[i]=Integer.parseInt(SerClsXMLUtils.dameValorEl((Element)nl.item(i)));
}catch(Exception err){}
}
}
public boolean estaAutorizada(){
return WSTRConstantes.OP_RESPONSE_AUTORIZADA.equals(getResponse());
}
public boolean estaDenegada(){
return WSTRConstantes.OP_RESPONSE_DENEGADA.equals(getResponse());
}
public boolean esError(){
return WSTRConstantes.OP_RESPONSE_ERROR.equals(getResponse());
}
public boolean estaAnulada(){
return WSTRConstantes.OP_RESPONSE_ANULADA.equals(getResponse());
}
public String getResponse(){
return SerClsXMLUtils.dameValorEl(xmlAutElement,"response");
}
public String getDescription(){
return SerClsXMLUtils.dameValorEl(xmlAutElement,"desc");
}
public String getDocUnico(){
return SerClsXMLUtils.dameValorEl(xmlAutElement,"du");
}
public String getVolante(){
return SerClsXMLUtils.dameValorEl(xmlAutElement,"vol");
}
public String getFechaHoraAut(){
return SerClsXMLUtils.dameValorEl(xmlAutElement,"fechahoraaut");
}
public String getNumRef(){
return SerClsXMLUtils.dameValorEl(xmlAutElement,"numref");
}
public String getTimestamp(){
return SerClsXMLUtils.dameValorEl(xmlAutElement,"AutID/timestamp");
}
public int getTerminal(){
try{
return Integer.parseInt(SerClsXMLUtils.dameValorEl(xmlAutElement,"AutID/term"));
}catch(Exception err){
}
return -1;
}
public String getUrlBoleta(){
return SerClsXMLUtils.dameValorEl(xmlAutElement,"urlBoleta");
}
public String getNumFactura(){
return SerClsXMLUtils.dameValorEl(xmlAutElement,"numFactura");
}
public AutID getAutID(){
return new AutID(SerClsXMLUtils.dameElemento(xmlAutElement,"AutID"));
}
public int getNumActos(){
if(ActosMedicos==null)
return 0;
return ActosMedicos.length;
}
public int getActoMedico(int nOrden){
if(getNumActos()<nOrden || nOrden<1){
return -1;
}
return ActosMedicos[nOrden-1];
}
}
@@ -0,0 +1,27 @@
/*
* Creado el 15-feb-07
*/
package com.tarisan.chipcard.tpvvs.webservicetrayicon.messages;
import es.chipcard.util.*;
import org.w3c.dom.*;
/**
*
* @author jjrider
*/
public class AutID {
private Element xmlAutIDElement=null;
protected AutID(Element xmlAutIDElement){
this.xmlAutIDElement=xmlAutIDElement;
}
public String getTerminal(){
return SerClsXMLUtils.dameValorEl(xmlAutIDElement,"term");
}
public String getTimestamp(){
return SerClsXMLUtils.dameValorEl(xmlAutIDElement,"timestamp");
}
}
@@ -0,0 +1,34 @@
/*
* Creado el 12-feb-07
*
* Para cambiar la plantilla para este archivo generado vaya a
* Ventana&gt;Preferencias&gt;Java&gt;Generación de código&gt;Código y comentarios
*/
package com.tarisan.chipcard.tpvvs.webservicetrayicon.messages;
import com.tarisan.chipcard.tpvvs.webservicetrayicon.accesodatos.*;
import es.chipcard.util.*;
import org.w3c.dom.*;
/**
* @author jjrider
*/
public abstract class AutReq extends CCReq{
public AutReq(String sTipoOperacion,UsuarioTVS user,Paciente paciente,CompaniaSanitaria comp, EspecialidadSanitaria espe,ProfesionalSanitario prof,ListaActos objLA,ActoMedico arrActos[]) throws Exception{
super("<AutReq><TipAut>"+sTipoOperacion+"</TipAut>"+user.getTerminal().toXML()+((paciente!=null)?paciente.toXML():"")+comp.toXML()+((espe!=null)?espe.toXML():"")+prof.toXML()+objLA.toXML()+"</AutReq>",user);
if(arrActos!=null){
for(int i=0;i<arrActos.length;i++){
addActoMedico(arrActos[i]);
}
}
}
protected Element getAutReq(){
return SerClsXMLUtils.dameElemento(getCCReq(),"AutReq");
}
public void addActoMedico(ActoMedico acto){
SerClsXMLUtils.insertaRutaElementoValor(getAutReq(),"acto",String.valueOf(acto.getCodigoActo()));
}
}
@@ -0,0 +1,110 @@
/*
* Creado el 12-feb-07
*/
package com.tarisan.chipcard.tpvvs.webservicetrayicon.messages;
import es.chipcard.util.*;
import org.w3c.dom.*;
public class AutRes extends CCRes{
private Aut arrAut[]=null;
public AutRes(Document doc) throws Exception{
super(doc);
if(getAutRes()==null){
throw new Exception("El XML dado como argumento no es un AutRes");
}
NodeList nl=getAutRes().getElementsByTagName("Aut");
if(nl.getLength()>0){
arrAut=new Aut[nl.getLength()];
for(int i=0;i<nl.getLength();i++){
arrAut[i]=new Aut((Element)nl.item(i));
}
}
/**
Element xmlAut=SerClsXMLUtils.dameElemento(getAutRes(),"Aut");
Vector vAuts=new Vector();
int nContador=0;
if(xmlAut!=null){
nContador++;
while(xmlAut!=null){
}
Node n=xmlAut.getNextSibling();
}**/
}
protected Element getAutRes(){
return SerClsXMLUtils.dameElemento(getCCRes(),"AutRes");
}
protected Element getTarjeta(){
return SerClsXMLUtils.dameElemento(getAutRes(),"Tarjeta");
}
public boolean hayTarjeta(){
return (getTarjeta()!=null);
}
public String getNumeroTarjeta(){
return SerClsXMLUtils.dameValorEl(getTarjeta(),"num");
}
public String getVersionTarjeta(){
return SerClsXMLUtils.dameValorEl(getTarjeta(),"ver");
}
public String getCoberturaTarjeta(){
return SerClsXMLUtils.dameValorEl(getTarjeta(),"cob");
}
public String getFechaAltaTarjeta(){
return SerClsXMLUtils.dameValorEl(getTarjeta(),"falta");
}
public String getFechaBajaTarjeta(){
return SerClsXMLUtils.dameValorEl(getTarjeta(),"fbaja");
}
public String getTipAut(){
return SerClsXMLUtils.dameValorEl(getAutRes(),"TipAut");
}
public String getCodigoTerminal(){
return SerClsXMLUtils.dameValorEl(getAutRes(),"term");
}
public int getCodigoCompania(){
return Integer.parseInt(SerClsXMLUtils.dameValorEl(getAutRes(),"Comp"));
}
public int getCodigoEspecialidad(){
String sEspe=SerClsXMLUtils.dameValorEl(getAutRes(),"Espec");
if(sEspe==null)
return -1;
return Integer.parseInt(sEspe);
}
public String getCodigoProfesional(){
return SerClsXMLUtils.dameValorEl(getAutRes(),"Prof");
}
public int getCodigoListaActos(){
String sValue=SerClsXMLUtils.dameValorEl(getAutRes(),"lactos");
if(sValue==null)
return -1;
return Integer.parseInt(sValue);
}
public int getNumAut(){
if(arrAut==null)
return 0;
return arrAut.length;
}
public Aut[] getAut(){
return arrAut;
}
}
@@ -0,0 +1,54 @@
/*
* Creado el 12-feb-07
*/
package com.tarisan.chipcard.tpvvs.webservicetrayicon.messages;
import com.tarisan.chipcard.tpvvs.webservicetrayicon.accesodatos.*;
import es.chipcard.util.*;
import org.w3c.dom.*;
/**
* @author jjrider
*
* Para cambiar la plantilla para este comentario de tipo generado vaya a
* Ventana&gt;Preferencias&gt;Java&gt;Generación de código&gt;Código y comentarios
*/
public abstract class CCReq extends Msg{
public CCReq(String sReqType,UsuarioTVS user) throws Exception{
super("<CCReq>"+sReqType+"</CCReq>");
setAutenticacionByLP(user);
}
public int getTypeOfMessage(){
return this.TYPE_OF_MESSAGE_CCREQ;
}
protected Element getCCReq(){
return SerClsXMLUtils.dameElemento(getDocument().getDocumentElement(),"CCReq");
}
public void setDatosCliente(String sData){
Element xmlEl=SerClsXMLUtils.dameElemento(getCCReq(),"DatosCliente");
if(xmlEl!=null){
SerClsXMLUtils.cambiaValorEl(xmlEl,sData);
}else{
SerClsXMLUtils.insertaElementoValor(getCCReq(),"DatosCliente",sData);
}
}
public void setAutenticacionByLP(UsuarioTVS user){
Element xmlEl=SerClsXMLUtils.dameElemento(getCCReq(),"Autenticacion");
if(xmlEl==null){
xmlEl=SerClsXMLUtils.ponHijo(getCCReq(),"Autenticacion");
}else{
SerClsXMLUtils.eliminaElemento(xmlEl,"LP");
SerClsXMLUtils.eliminaElemento(xmlEl,"Firma");
}
xmlEl=SerClsXMLUtils.ponHijo(xmlEl,"LP");
SerClsXMLUtils.insertaElementoValor(xmlEl,"login",user.getLogin());
SerClsXMLUtils.insertaElementoValor(xmlEl,"pass",user.getPassword());
}
}
@@ -0,0 +1,33 @@
/*
* Creado el 12-feb-07
*/
package com.tarisan.chipcard.tpvvs.webservicetrayicon.messages;
import es.chipcard.util.*;
import org.w3c.dom.*;
/**
* @author jjrider
*/
public abstract class CCRes extends Msg{
public CCRes(Document doc) throws Exception{
super(doc);
if(!SerClsXMLUtils.existeElemento(doc.getDocumentElement(),"CCRes")){
throw new Exception("El XML dado como argumento no es un CCRes");
}
}
protected Element getCCRes(){
return SerClsXMLUtils.dameElemento(getDocument().getDocumentElement(),"CCRes");
}
public int getTypeOfMessage(){
return this.TYPE_OF_MESSAGE_CCRES;
}
public String getDatosCliente(){
return SerClsXMLUtils.dameValorEl(getCCRes(),"DatosCliente");
}
}
@@ -0,0 +1,30 @@
package com.tarisan.chipcard.tpvvs.webservicetrayicon.messages;
import com.tarisan.chipcard.tpvvs.webservicetrayicon.accesodatos.*;
import es.chipcard.util.*;
/**
* @author jjrider
*/
public class DocumentoUnico extends AutReq{
public DocumentoUnico(UsuarioTVS user,Paciente paciente,CompaniaSanitaria comp, EspecialidadSanitaria espe,ProfesionalSanitario prof,ListaActos objLA,ActoMedico arrActos[],String sDocUnico) throws Exception{
super("DU",user,paciente,comp, espe, prof,objLA,arrActos);
setDocUnico(sDocUnico);
}
public void setDocUnico(String sDU){
if(sDU==null)
return;
sDU=sDU.trim();
if(sDU.length()==0){
return;
}
if(SerClsXMLUtils.existeElemento(this.getAutReq(),"du")){
SerClsXMLUtils.cambiaValorEl(this.getAutReq(),"du",sDU);
}else{
SerClsXMLUtils.insertaElementoValor(getAutReq(),"du",sDU);
}
}
}
@@ -0,0 +1,13 @@
package com.tarisan.chipcard.tpvvs.webservicetrayicon.messages;
import com.tarisan.chipcard.tpvvs.webservicetrayicon.accesodatos.*;
/**
* @author jjrider
*/
public class DocumentoUnicoLaboratorio extends DocumentoUnico{
public DocumentoUnicoLaboratorio(UsuarioTVS user,Paciente paciente,CompaniaSanitaria comp,ProfesionalSanitario prof,ListaActos objLA,String sDocUnico) throws Exception{
super(user,paciente,comp, null, prof,objLA,null,sDocUnico);
}
}
@@ -0,0 +1,38 @@
/*
* Creado el 15-feb-07
*
* Para cambiar la plantilla para este archivo generado vaya a
* Ventana&gt;Preferencias&gt;Java&gt;Generación de código&gt;Código y comentarios
*/
package com.tarisan.chipcard.tpvvs.webservicetrayicon.messages;
import es.chipcard.util.*;
import org.w3c.dom.*;
/**
* @author jjrider
*/
public class Error extends Msg {
public Error(Document doc) throws Exception{
super(doc);
if(!SerClsXMLUtils.existeElemento(doc.getDocumentElement(),"Error")){
throw new Exception("El XML dado como argumento no es un Error");
}
}
public int getTypeOfMessage(){
return this.TYPE_OF_MESSAGE_ERROR;
}
public Element getErrorElement(){
return SerClsXMLUtils.dameElemento(getDocument().getDocumentElement(),"Error");
}
public String getErrorCode(){
return getErrorElement().getAttribute("errcode");
}
public String getErrorDescription(){
return SerClsXMLUtils.dameValorEl(getErrorElement());
}
}
@@ -0,0 +1,73 @@
package com.tarisan.chipcard.tpvvs.webservicetrayicon.messages;
/**
* @author jjrider
*/
import es.chipcard.util.*;
import org.w3c.dom.*;
import java.io.*;
public abstract class Msg {
public static int TYPE_OF_MESSAGE_ERROR=-1;
public static int TYPE_OF_MESSAGE_CCREQ=1;
public static int TYPE_OF_MESSAGE_CCRES=2;
public static String DEFAULT_XML_DECLARATION="<?xml version=\"1.0\" encoding=\"ISO-8859-1\"?>";
private Document xmlDoc=null;
public Msg(String sMessage) throws Exception{
xmlDoc=SerClsXMLUtils.parsearDocumento(new StringReader(DEFAULT_XML_DECLARATION+"<Msg version=\"1.0\">"+sMessage+"</Msg>"));
}
public Msg(Document doc) throws Exception{
if(doc==null)
throw new Exception("El XML dado como argumento no puede ser NULL");
if(!doc.getDocumentElement().getNodeName().equals("Msg")){
throw new Exception("El XML dado como argumento no es un Msg");
}
xmlDoc=doc;
}
public abstract int getTypeOfMessage();
protected Document getDocument(){
return xmlDoc;
}
public void setRepeticion(boolean blnValue){
xmlDoc.getDocumentElement().setAttribute("repeticion",((blnValue)?"true":"false"));
}
public String toString(){
return SerClsXMLUtils.dameTextoXml(xmlDoc);
}
public void saveToOutputStream(OutputStream out) throws Exception{
SerClsXMLUtils.toOutputStream(getDocument(),out);
}
/******
* Crea un objeto Msg a partir de una cadena
* @param sResponse
* @return
* @throws Exception
*/
public static Msg createMsgFromString(String sResponse) throws Exception{
/**if(sResponse!=null){
if(!sResponse.trim().startsWith("<?xml")){
}
}**/
sResponse=DEFAULT_XML_DECLARATION+sResponse;
//System.err.println("XML Respuesta:"+sResponse);
Document xmlResponse=SerClsXMLUtils.parsearDocumentoFromString(sResponse);
if(SerClsXMLUtils.existeElemento(xmlResponse.getDocumentElement(),"Error")){
return new Error(xmlResponse);
}else if(SerClsXMLUtils.existeElemento(xmlResponse.getDocumentElement(),"CCRes")){
return new AutRes(xmlResponse);
}else{
return null;
}
}
}
@@ -0,0 +1,10 @@
package com.tarisan.chipcard.tpvvs.webservicetrayicon.messages;
import com.tarisan.chipcard.tpvvs.webservicetrayicon.accesodatos.*;
public class SoloTarjeta extends AutReq{
public SoloTarjeta(UsuarioTVS user,Paciente paciente,CompaniaSanitaria comp, EspecialidadSanitaria espe,ProfesionalSanitario prof,ListaActos objLA,ActoMedico arrActos[]) throws Exception{
super("ST",user,paciente,comp, espe, prof,objLA,arrActos);
}
}
@@ -0,0 +1,10 @@
package com.tarisan.chipcard.tpvvs.webservicetrayicon.messages;
import com.tarisan.chipcard.tpvvs.webservicetrayicon.accesodatos.*;
public class SoloTarjetaLaboratorio extends SoloTarjeta{
public SoloTarjetaLaboratorio(UsuarioTVS user,Paciente paciente,CompaniaSanitaria comp, ProfesionalSanitario prof,ListaActos objLA) throws Exception{
super(user,paciente,comp, null, prof,objLA,null);
}
}
@@ -0,0 +1,21 @@
package com.tarisan.chipcard.tpvvs.webservicetrayicon.messages;
import com.tarisan.chipcard.tpvvs.webservicetrayicon.accesodatos.*;
import es.chipcard.util.*;
public class VolanteClinico extends AutReq {
public VolanteClinico(UsuarioTVS user,Paciente paciente,CompaniaSanitaria comp, EspecialidadSanitaria espe,ProfesionalSanitario prof,ListaActos objLA,ActoMedico arrActos[],String sVolante) throws Exception{
super("VC",user,paciente,comp, espe, prof,objLA,arrActos);
setVolante(sVolante);
}
public void setVolante(String sVO){
if(sVO==null)
return;
if(SerClsXMLUtils.existeElemento(this.getAutReq(),"vol")){
SerClsXMLUtils.cambiaValorEl(this.getAutReq(),"vol",sVO);
}else{
SerClsXMLUtils.insertaElementoValor(getAutReq(),"vol",sVO);
}
}
}
@@ -0,0 +1,21 @@
package com.tarisan.chipcard.tpvvs.webservicetrayicon.messages;
import com.tarisan.chipcard.tpvvs.webservicetrayicon.accesodatos.*;
import es.chipcard.util.*;
public class VolanteMedico extends AutReq{
public VolanteMedico(UsuarioTVS user,Paciente paciente,CompaniaSanitaria comp, EspecialidadSanitaria espe,ProfesionalSanitario prof,ListaActos objLA,String sVolante) throws Exception{
super("VM",user,paciente,comp, espe, prof,objLA,null);
setVolante(sVolante);
}
public void setVolante(String sVO){
if(sVO==null)
return;
if(SerClsXMLUtils.existeElemento(this.getAutReq(),"vol")){
SerClsXMLUtils.cambiaValorEl(this.getAutReq(),"vol",sVO);
}else{
SerClsXMLUtils.insertaElementoValor(getAutReq(),"vol",sVO);
}
}
}