public ToolsDlgPatient(String command, Point pt) { Map<Object, ImageIcon> icons = new HashMap<Object, ImageIcon>(); icons.put( "Patientenbezogene Nachricht erstellen", SystemConfig.hmSysIcons.get("patnachrichten")); icons.put("(e)Mail für Patient erstellen (Alt+M)", SystemConfig.hmSysIcons.get("email")); icons.put("SMS für Patient erstellen (Alt+S)", SystemConfig.hmSysIcons.get("sms")); icons.put( "Zusatzinformationen zum aktuellen Patient (Alt+I)", SystemConfig.hmSysIcons.get("info")); // create a list with some test data JList list = new JList( new Object[] { "Patientenbezogene Nachricht erstellen", "(e)Mail für Patient erstellen (Alt+M)", "SMS für Patient erstellen (Alt+S)", "Zusatzinformationen zum aktuellen Patient (Alt+I)" }); list.setCellRenderer(new IconListRenderer(icons)); Reha.toolsDlgRueckgabe = -1; ToolsDialog tDlg = new ToolsDialog(Reha.thisFrame, "Werkzeuge: aktueller Patient", list); tDlg.setPreferredSize( new Dimension( 300, 200 + ((Boolean) SystemConfig.hmPatientenWerkzeugDlgIni.get("ToolsDlgShowButton") ? 25 : 0))); tDlg.setLocation(pt.x - 200, pt.y + 30); tDlg.pack(); tDlg.setModal(true); tDlg.activateListener(); tDlg.setVisible(true); switch (Reha.toolsDlgRueckgabe) { case 0: doPatNachricht(); return; case 1: if (!Rechte.hatRecht(Rechte.Patient_email, true)) { return; } break; case 2: if (!Rechte.hatRecht(Rechte.Patient_sms, true)) { return; } // new SMS(null); break; case 3: doPatFragebogen(); if (!Rechte.hatRecht(Rechte.Patient_zusatzinfo, true)) { return; } break; case 4: break; } tDlg = null; }
/** **************************** */ private void regleButtons(String enable) { for (int i = 0; i < buts.length; i++) { buts[i].setEnabled((enable.substring(i, i + 1).equals("1") ? true : false)); } if (!rechteTools.Rechte.hatRecht(rechteTools.Rechte.BenutzerSuper_user, false)) { buts[5].setEnabled(false); buts[6].setEnabled(false); } }
/** **************************** */ private void doBenutzerWahl() { if (jcmb.getSelectedIndex() == 0) { tfs[0].setText(""); pws[0].setText(""); pws[1].setText(""); aktuelleRechte = ""; userid = ""; this.internal.setTitle(elternTitel); regleButtons("1101000"); } else { tfs[0].setText(jcmb.getSelectedItem().toString()); pws[0].setText(jcmb.getValue().toString()); pws[1].setText(jcmb.getValue().toString()); //// System.out.println(ParameterLaden.pKollegen.get(jcmb.getSelectedIndex()-1).get(0)); aktuelleRechte = ParameterLaden.pKollegen.get(jcmb.getSelectedIndex() - 1).get(2); if (!rechteTools.Rechte.hatRecht(rechteTools.Rechte.BenutzerSuper_user, false) && rechteTools.Rechte.testeRecht(aktuelleRechte, rechteTools.Rechte.BenutzerSuper_user)) { JOptionPane.showMessageDialog( null, "SuperUser-Rechte können nur von einem Benutzer mit SuperUser-Rechten geändert werden"); jcmb.setSelectedIndex(0); tfs[0].setText(""); pws[0].setText(""); pws[1].setText(""); aktuelleRechte = ""; userid = ""; regleButtons("1101000"); return; } if (jchb.isSelected()) { this.internal.setTitle(elternTitel + " [PW:" + jcmb.getValue().toString() + "]"); } else { this.internal.setTitle(elternTitel); } userid = ParameterLaden.pKollegen.get(jcmb.getSelectedIndex() - 1).get(4); regleButtons("1101000"); aktualisiereTree(false); } }
public ToolsDlgGutachten(String command, Point pt) { Map<Object, ImageIcon> icons = new HashMap<Object, ImageIcon>(); icons.put("Stammdaten in neues Gutachten übertragen", SystemConfig.hmSysIcons.get("neu")); icons.put("ASP-Patienten-Information", SystemConfig.hmSysIcons.get("info2")); icons.put("ASP-Verordnung", SystemConfig.hmSysIcons.get("pdf")); icons.put("ASP-Anwesenheitsliste", SystemConfig.hmSysIcons.get("pdf")); icons.put("ASP-Zustimmung des Patienten", SystemConfig.hmSysIcons.get("pdf")); icons.put("IRENA-Patienten-Information", SystemConfig.hmSysIcons.get("info2")); icons.put("IRENA-Verordnung", SystemConfig.hmSysIcons.get("pdf")); icons.put("IRENA-Anwesenheitsliste", SystemConfig.hmSysIcons.get("pdf")); icons.put("IRENA-Zustimmung des Patienten", SystemConfig.hmSysIcons.get("pdf")); icons.put("IRENA-Beginnmitteilung", SystemConfig.hmSysIcons.get("pdf")); icons.put("BfA - Reha-Verlängerung", SystemConfig.hmSysIcons.get("pdf")); icons.put("DRV-Wiedereingliederung Pat./AG-Infos", SystemConfig.hmSysIcons.get("pdf")); icons.put("DRV-Wiedereingliederung", SystemConfig.hmSysIcons.get("pdf")); icons.put("DRV-Wiedereingliederung Beginn > 2 Wo.", SystemConfig.hmSysIcons.get("pdf")); icons.put("BfA - AHB-Aufnahmemitteilung", SystemConfig.hmSysIcons.get("pdf")); icons.put("ASP-Rechnungsformular", SystemConfig.hmSysIcons.get("pdf")); icons.put("IRENA-Rechnungsformular", SystemConfig.hmSysIcons.get("pdf")); icons.put("Reha-Anwesenheitsbescheinigung", SystemConfig.hmSysIcons.get("pdf")); icons.put("GKV-Verlängerungsantrag", SystemConfig.hmSysIcons.get("pdf")); icons.put("LVA-Entlassmitteilung", SystemConfig.hmSysIcons.get("neu")); JList list = new JList( new Object[] { "Stammdaten in neues Gutachten übertragen", "ASP-Patienten-Information", "ASP-Verordnung", "ASP-Anwesenheitsliste", "ASP-Zustimmung des Patienten", "IRENA-Patienten-Information", "IRENA-Verordnung", "IRENA-Anwesenheitsliste", "IRENA-Zustimmung des Patienten", "IRENA-Beginnmitteilung", "BfA - Reha-Verlängerung", "DRV-Wiedereingliederung Pat./AG-Infos", "DRV-Wiedereingliederung", "DRV-Wiedereingliederung Beginn > 2 Wo.", "BfA - AHB-Aufnahmemitteilung", "ASP-Rechnungsformular", "IRENA-Rechnungsformular", "Reha-Anwesenheitsbescheinigung", "GKV-Verlängerungsantrag", "LVA-Entlassmitteilung" }); list.setCellRenderer(new IconListRenderer(icons)); Reha.toolsDlgRueckgabe = -1; ToolsDialog tDlg = new ToolsDialog(Reha.thisFrame, "Werkzeuge: Gutachten / E-Bericht", list); tDlg.setPreferredSize( new Dimension( 300, 200 + ((Boolean) SystemConfig.hmPatientenWerkzeugDlgIni.get("ToolsDlgShowButton") ? 25 : 0))); tDlg.setLocation(pt.x - 70, pt.y + 30); tDlg.pack(); tDlg.setModal(true); tDlg.activateListener(); tDlg.setVisible(true); switch (Reha.toolsDlgRueckgabe) { case 0: if (!Rechte.hatRecht(Rechte.Gutachten_copy, true)) { return; } doBerichtCopy(); break; case 1: // ASP-Patienteninformation doPdfStarten(90); break; case 2: // ASP-Verordnung doPdfStarten(1); break; case 3: // ASP-Anwesenheitsliste doPdfStarten(2); break; case 4: // ASP-Zustimmungserklärung doPdfStarten(3); break; case 5: // Irena-Patienteninformation doPdfStarten(91); break; case 6: // Irena-Verordnung doPdfStarten(4); break; case 7: // Irena-Anwesenheitsliste doPdfStarten(5); break; case 8: // Irena-Zustimmungserklärung doPdfStarten(6); break; case 9: // Irena-Beginnmitteilung doPdfStarten(7); break; case 10: // BfA-Rehaverlängerung doPdfStarten(8); break; case 11: // DRV-Wiedereingliederung Pat/AG Info doPdfStarten(9); break; case 12: // DRV-Wiedereingliederung doPdfStarten(10); break; case 13: // DRV-Wiedereingliederung Beginn später als 2 Wo. doPdfStarten(16); break; case 14: // BfA-AHB-Aufnahmemitteilung doPdfStarten(11); break; case 15: // ASP-Rechnung doPdfStarten(12); break; case 16: // IRENA-Rechnung doPdfStarten(13); break; case 17: // Reha-Anwesenheitsbescheinigung doPdfStarten(14); break; case 18: doPdfStarten(15); break; case 19: // LVA-Entlassmitteilung try { new LadeProg( Reha.proghome + "LVAEntlass.jar " + " " + Reha.proghome + "ini/" + Reha.aktIK + "/rehajava.ini" + " " + Reha.thisClass.patpanel.vecaktrez.get(1) + " " + Reha.proghome + "ini/" + Reha.aktIK + "/fremdprog.ini"); } catch (Exception ex) { ex.printStackTrace(); } break; } tDlg = null; }
@Override public void actionPerformed(ActionEvent arg0) { String cmd = arg0.getActionCommand(); if (cmd.equals("gutneu")) { if (!Rechte.hatRecht(Rechte.Gutachten_anlegen, true)) { return; } final JComponent comp = ((JComponent) arg0.getSource()); new SwingWorker<Void, Void>() { @Override protected Void doInBackground() throws Exception { try { JRtaTextField tf = new JRtaTextField("nix", false); // System.out.println("in GutachtenWahl"); GutachtenWahl gwahl = new GutachtenWahl( (Point) comp.getLocationOnScreen(), tf, "Neues Gutachten erstellen"); // System.out.println("Aufruf des Focus***********"); gwahl.setzeFocus(); gwahl.setVisible(true); // gwahl.setModal(true); // System.out.println("Der Rückgabewert der Auswahl = "+tf.getText() ); if (tf.getText().equalsIgnoreCase("ebericht")) { Reha.thisClass.progLoader.GutachenFenster( 1, Reha.thisClass.patpanel.aktPatID, -1, "E-Bericht", true, "", -1); // ProgLoader.GutachenFenster(1,Reha.thisClass.patpanel.aktPatID // ,-1,"E-Bericht",true,"" ); return null; } if (tf.getText().equalsIgnoreCase("nachsorge")) { Reha.thisClass.progLoader.GutachenFenster( 1, Reha.thisClass.patpanel.aktPatID, -1, "Nachsorge", true, "", -1); // ProgLoader.GutachenFenster(1,Reha.thisClass.patpanel.aktPatID // ,-1,"Nachsorge",true,"" ); return null; } gwahl = null; } catch (Exception ex) { ex.printStackTrace(); } return null; } }.execute(); return; } if (cmd.equals("gutedit")) { if (!Rechte.hatRecht(Rechte.Gutachten_editvoll, true)) { return; } doBerichtEdit(); return; } if (cmd.equals("gutdelete")) { if (aktPanel.equals("leerPanel")) { JOptionPane.showMessageDialog( null, "Oh Herr laß halten...\n\n" + "....und welches der nicht vorhandenen Gutachten möchten Sie bitteschön löschen...."); return; } if (!Rechte.hatRecht(Rechte.Gutachten_delete, true)) { return; } int currow = tabbericht.getSelectedRow(); // int anzrow = tabbericht.getRowCount(); if (currow == -1) { JOptionPane.showMessageDialog(null, "Kein Gutachten zum -> löschen <- ausgewählt"); return; } String berichtid = (String) tabbericht.getValueAt(currow, 0); int frage = JOptionPane.showConfirmDialog( null, "Wollen Sie das Gutachten mit der ID:" + berichtid + " wirklich löschen?", "Wichtige Benutzeranfrage", JOptionPane.YES_NO_OPTION); if (frage == JOptionPane.NO_OPTION) { return; } String sqlcmd = "delete from berhist where berichtid='" + berichtid + "'"; new ExUndHop().setzeStatement(sqlcmd); sqlcmd = "delete from bericht2 where berichtid='" + berichtid + "'"; new ExUndHop().setzeStatement(sqlcmd); sqlcmd = "delete from bericht2ktl where berichtid='" + berichtid + "'"; new ExUndHop().setzeStatement(sqlcmd); currow = TableTool.loescheRow(tabbericht, Integer.valueOf(currow)); int uebrig = tabbericht.getRowCount(); anzahlGutachten.setText("Anzahl Gutachten: " + Integer.toString(uebrig)); Reha.thisClass.patpanel.getTab().setTitleAt(4, macheHtmlTitel(uebrig, "Gutachten")); if (uebrig <= 0) { holeGutachten(Reha.thisClass.patpanel.patDaten.get(29), ""); } else { } return; } if (cmd.equals("guttools")) { new ToolsDlgGutachten("", gutbut[3].getLocationOnScreen()); return; } }
/** ***************************************** */ @SuppressWarnings("unchecked") private void doSave() { String aktuelleruser = tfs[0].getText(); if (!String.valueOf(pws[0].getPassword()).equals(String.valueOf(pws[1].getPassword()))) { JOptionPane.showMessageDialog(null, "Passwort und Passwortwiederholung sind nicht identisch"); return; } if (!rechteTools.Rechte.hatRecht(rechteTools.Rechte.BenutzerRechte_set, true)) { return; } int lang = getNodeCount(); StringBuffer buf = new StringBuffer(); for (int i = 0; i < lang; i++) { JXRechteTreeTableNode node = holeNode(i); //// System.out.println(node.rechte.bildnummer); if (node.rechte.bildnummer >= 0) { buf.append(Integer.toString(node.rechte.bildnummer)); } } String pw = buf.toString(); if (!rechteTools.Rechte.hatRecht(rechteTools.Rechte.BenutzerSuper_user, false) && rechteTools.Rechte.testeRecht(pw, rechteTools.Rechte.BenutzerSuper_user)) { JOptionPane.showMessageDialog( null, "SuperUser-Rechte können nur von einem Benutzer mit SuperUser-Rechten vergeben werden"); return; } Verschluesseln man = Verschluesseln.getInstance(); man.init(Verschluesseln.getPassword().toCharArray(), man.getSalt(), man.getIterations()); String encrypted = man.encrypt(pw); if (!neu) { //// System.out.println("Username = "******"Passwort = "+String.valueOf(pws[0].getPassword())); //// System.out.println("Rechte = "+String.valueOf(pw)); String cmd = "update rehalogin set user='******', password='******', rights='" + encrypted + "' where id='" + userid + "' LIMIT 1"; SqlInfo.sqlAusfuehren(cmd); jcmb.setNewValueAtCurrentPosition(0, tfs[0].getText()); jcmb.setNewValueAtCurrentPosition(1, String.valueOf(pws[1].getPassword())); jcmb.setNewValueAtCurrentPosition(2, buf.toString()); if (Reha.aktUser.equals(jcmb.getSelectedItem().toString().trim())) { Reha.progRechte = buf.toString(); } } else { // neuen Benutzer anlegen erst noch entwickeln; if (tfs[0].getText().equals("") || String.valueOf(pws[0].getPassword()).trim().equals("")) { JOptionPane.showMessageDialog(null, "Benutzername und Passwort darf nicht leer sein"); jcmb.setSelectedIndex(0); doEditsEinAus(false); return; } int id = SqlInfo.holeId("rehalogin", "password"); Vector<String> vec = new Vector<String>(); vec.add(tfs[0].getText()); vec.add(String.valueOf(pws[0].getPassword())); vec.add(buf.toString()); vec.add(""); vec.add(Integer.toString(id)); jcmb.addNewVector((Vector<String>) vec.clone()); String cmd = "update rehalogin set user='******', password='******', rights='" + encrypted + "' where id='" + Integer.toString(id) + "' LIMIT 1"; SqlInfo.sqlAusfuehren(cmd); } ParameterLaden.Passwort(); jcmb.removeActionListener(al); jcmb.setDataVectorWithStartElement(ParameterLaden.pKollegen, 0, 1, "./."); jcmb.addActionListener(al); jcmb.setSelectedItem(aktuelleruser); }
private JXPanel getButtonTeil() { // 1 2 3 4 5 FormLayout lay = new FormLayout( "fill:0:grow(0.5),80dlu,3dlu,80dlu,fill:0:grow(0.5)", // 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 "fill:0:grow(0.33),p,20dlu,p,1dlu,p,1dlu,p,1dlu,p,25dlu,p,5dlu,p,5dlu,p,15dlu,p,fill:0:grow(0.66)"); CellConstraints cc = new CellConstraints(); JXPanel jpan = new JXPanel(); jpan.setLayout(lay); JLabel lab = new JLabel("Benutzer auswählen"); jpan.add(lab, cc.xy(2, 2, CellConstraints.RIGHT, CellConstraints.DEFAULT)); jcmb = new JRtaComboBox(); jcmb.setDataVectorWithStartElement(ParameterLaden.pKollegen, 0, 1, "./."); jcmb.setActionCommand("benutzerwahl"); jcmb.addActionListener(al); jpan.add(jcmb, cc.xy(4, 2)); lab = new JLabel("Benutzername"); jpan.add(lab, cc.xy(2, 4, CellConstraints.RIGHT, CellConstraints.DEFAULT)); tfs[0] = new JRtaTextField("nix", false); tfs[0].setEnabled(false); jpan.add(tfs[0], cc.xy(4, 4)); lab = new JLabel("Passwortanzeige"); jpan.add(lab, cc.xy(2, 6, CellConstraints.RIGHT, CellConstraints.DEFAULT)); jchb = new JRtaCheckBox("im Klartext anzeigen"); jpan.add(jchb, cc.xy(4, 6)); if (!rechteTools.Rechte.hatRecht(rechteTools.Rechte.BenutzerSuper_user, false)) { jchb.setSelected(false); jchb.setEnabled(false); } jchb.setActionCommand("klartext"); jchb.addActionListener(al); lab = new JLabel("Passwort"); jpan.add(lab, cc.xy(2, 8, CellConstraints.RIGHT, CellConstraints.DEFAULT)); pws[0] = new JPasswordField(); pws[0].setEnabled(false); jpan.add(pws[0], cc.xy(4, 8)); lab = new JLabel("Passwort wiederholen"); jpan.add(lab, cc.xy(2, 10, CellConstraints.RIGHT, CellConstraints.DEFAULT)); pws[1] = new JPasswordField(); pws[1].setEnabled(false); jpan.add(pws[1], cc.xy(4, 10)); jpan.add((buts[0] = ButtonTools.macheButton("neuer Benutzer", "neu", al)), cc.xy(2, 12)); jpan.add((buts[1] = ButtonTools.macheButton("Benutzer ändern", "edit", al)), cc.xy(4, 12)); jpan.add((buts[2] = ButtonTools.macheButton("Benutzer speichern", "save", al)), cc.xy(2, 14)); jpan.add((buts[3] = ButtonTools.macheButton("Benutzer löschen", "delete", al)), cc.xy(4, 14)); jpan.add( (buts[4] = ButtonTools.macheButton("Vorgang abbrechen", "dobreak", al)), cc.xyw(2, 16, 3)); jpan.add( (buts[5] = ButtonTools.macheButton("Rechte exportieren", "doexport", al)), cc.xy(2, 18)); jpan.add( (buts[6] = ButtonTools.macheButton("Rechte importieren", "doimport", al)), cc.xy(4, 18)); buts[5].setForeground(Color.BLUE); buts[6].setForeground(Color.RED); regleButtons("1101000"); return jpan; }