Package gui

Source Code of gui.PSAPersonelEkrani

package gui;

import hibernateSwingApi.component.TablePanel;
import hibernateSwingApi.hibernate.HibernateManager;

import java.awt.Color;
import java.awt.Font;
import java.awt.GridBagConstraints;
import java.awt.GridBagLayout;
import java.awt.Insets;
import java.awt.Point;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;
import java.awt.event.MouseAdapter;
import java.awt.event.MouseEvent;
import java.awt.event.WindowAdapter;
import java.awt.event.WindowEvent;

import javax.swing.JButton;
import javax.swing.JFrame;
import javax.swing.JLabel;
import javax.swing.JMenuItem;
import javax.swing.JOptionPane;
import javax.swing.JPopupMenu;
import javax.swing.JTable;
import javax.swing.ListSelectionModel;
import javax.swing.WindowConstants;
import javax.swing.border.LineBorder;
import javax.swing.event.ListSelectionEvent;
import javax.swing.event.ListSelectionListener;

import pojos.Personel;
import service.AutoClosingMessageDialog;
import service.PSAUtil;

public class PSAPersonelEkrani extends JFrame {

  private static final long serialVersionUID = 1L;
  private static PSAPersonelEkrani instance;
  private JPopupMenu pMenu;
  private JMenuItem menuItem;
  private JMenuItem menuItem2;
  private JMenuItem menuItem3;
  private JButton JButtonPersonelEkle;
  private JButton JButtonPersonelGuncelle;
  private JButton JButtonPersonelSil;
  private TablePanel cTablePanelPersonel;
  private JLabel cLabelPersonelListesi;
  private Personel personel;
  private JButton jButtonPersonelPrim;

  public static PSAPersonelEkrani getInstance(int state) {
    if (state == 0) {
      instance = new PSAPersonelEkrani();
    }
    return instance;
  }

  public PSAPersonelEkrani() {
    initialize();
  }

  private void initialize() {
    setTitle("PSA MERKEZ PERSONEL EKRANI");
    setBounds(0, 0, 1250, 485);
    setDefaultCloseOperation(WindowConstants.DISPOSE_ON_CLOSE);
    setIconImage(PSAUtil.getImageIconViaRelativePath("picture/psaIcon.png")
        .getImage());

    pMenu = new JPopupMenu();
    menuItem = new JMenuItem("Sil");
    pMenu.add(menuItem);
    menuItem2 = new JMenuItem("Güncelle");
    pMenu.add(menuItem2);
    menuItem3 = new JMenuItem("PrimBilgisi");
    pMenu.add(menuItem3);

    GridBagLayout gridBagLayout = new GridBagLayout();
    gridBagLayout.columnWidths = new int[] { 30, 918, 300, 15, 0 };
    gridBagLayout.rowHeights = new int[] { 0, 50, 100, 100, 100, 100, 15, 0 };
    gridBagLayout.columnWeights = new double[] { 0.0, 1.0, 1.0, 0.0,
        Double.MIN_VALUE };
    gridBagLayout.rowWeights = new double[] { 0.0, 0.0, 1.0, 1.0, 1.0, 1.0,
        0.0, Double.MIN_VALUE };
    getContentPane().setLayout(gridBagLayout);

    cLabelPersonelListesi = new JLabel();
    cLabelPersonelListesi.setText("PERSONEL LİSTESİ");
    cLabelPersonelListesi.setFont(new Font("Tahoma", Font.BOLD, 16));
    GridBagConstraints gbc_cLabelPersonelListesi = new GridBagConstraints();
    gbc_cLabelPersonelListesi.fill = GridBagConstraints.BOTH;
    gbc_cLabelPersonelListesi.insets = new Insets(0, 0, 5, 5);
    gbc_cLabelPersonelListesi.gridx = 1;
    gbc_cLabelPersonelListesi.gridy = 1;
    getContentPane().add(cLabelPersonelListesi, gbc_cLabelPersonelListesi);

    cTablePanelPersonel = new TablePanel(null, Personel.class, true, true);
    cTablePanelPersonel.getTable().setAutoResizeMode(
        JTable.AUTO_RESIZE_ALL_COLUMNS);
    cTablePanelPersonel.setBorder(new LineBorder(new Color(0, 0, 0), 2));
    GridBagConstraints gbc_cTablePanelPersonel = new GridBagConstraints();
    gbc_cTablePanelPersonel.fill = GridBagConstraints.BOTH;
    gbc_cTablePanelPersonel.insets = new Insets(0, 0, 5, 5);
    gbc_cTablePanelPersonel.gridheight = 4;
    gbc_cTablePanelPersonel.gridx = 1;
    gbc_cTablePanelPersonel.gridy = 2;
    getContentPane().add(cTablePanelPersonel, gbc_cTablePanelPersonel);

    JButtonPersonelEkle = new JButton();
    JButtonPersonelEkle.setIcon(PSAUtil
        .getImageIconViaRelativePath("picture/kullaniciEkle.png"));
    JButtonPersonelEkle.setText("PERSONEL EKLE");
    JButtonPersonelEkle.setFont(new Font("Tahoma", Font.BOLD, 14));
    GridBagConstraints gbc_JButtonPersonelEkle = new GridBagConstraints();
    gbc_JButtonPersonelEkle.fill = GridBagConstraints.BOTH;
    gbc_JButtonPersonelEkle.insets = new Insets(0, 0, 5, 5);
    gbc_JButtonPersonelEkle.gridx = 2;
    gbc_JButtonPersonelEkle.gridy = 2;
    getContentPane().add(JButtonPersonelEkle, gbc_JButtonPersonelEkle);

    JButtonPersonelGuncelle = new JButton();
    JButtonPersonelGuncelle.setIcon(PSAUtil
        .getImageIconViaRelativePath("picture/personelGuncelle.png"));
    JButtonPersonelGuncelle.setText("PERSONEL BİLGİSİ GÜNCELLE");
    JButtonPersonelGuncelle.setFont(new Font("Tahoma", Font.BOLD, 13));
    JButtonPersonelGuncelle.setEnabled(false);
    GridBagConstraints gbc_JButtonPersonelGuncelle = new GridBagConstraints();
    gbc_JButtonPersonelGuncelle.fill = GridBagConstraints.BOTH;
    gbc_JButtonPersonelGuncelle.insets = new Insets(0, 0, 5, 5);
    gbc_JButtonPersonelGuncelle.gridx = 2;
    gbc_JButtonPersonelGuncelle.gridy = 3;
    getContentPane().add(JButtonPersonelGuncelle,
        gbc_JButtonPersonelGuncelle);

    JButtonPersonelSil = new JButton();
    JButtonPersonelSil.setIcon(PSAUtil
        .getImageIconViaRelativePath("picture/kullaniciKaldir.png"));
    JButtonPersonelSil.setText("PERSONEL SİL");
    JButtonPersonelSil.setFont(new Font("Tahoma", Font.BOLD, 14));
    JButtonPersonelSil.setEnabled(false);
    GridBagConstraints gbc_JButtonPersonelSil = new GridBagConstraints();
    gbc_JButtonPersonelSil.fill = GridBagConstraints.BOTH;
    gbc_JButtonPersonelSil.insets = new Insets(0, 0, 5, 5);
    gbc_JButtonPersonelSil.gridx = 2;
    gbc_JButtonPersonelSil.gridy = 4;
    getContentPane().add(JButtonPersonelSil, gbc_JButtonPersonelSil);

    jButtonPersonelPrim = new JButton();
    jButtonPersonelPrim.setIcon(PSAUtil
        .getImageIconViaRelativePath("picture/perIstatistik.png"));
    jButtonPersonelPrim.setEnabled(false);
    jButtonPersonelPrim.setText("PERSONEL PRİM BİLGİSİ");
    jButtonPersonelPrim.setFont(new Font("Tahoma", Font.BOLD, 14));
    GridBagConstraints gbc_jButtonPersonelPrim = new GridBagConstraints();
    gbc_jButtonPersonelPrim.insets = new Insets(0, 0, 5, 5);
    gbc_jButtonPersonelPrim.fill = GridBagConstraints.BOTH;
    gbc_jButtonPersonelPrim.gridx = 2;
    gbc_jButtonPersonelPrim.gridy = 5;
    getContentPane().add(jButtonPersonelPrim, gbc_jButtonPersonelPrim);

    initListeners();
    refreshTable();
  }

  private void refreshTable() {
    cTablePanelPersonel.refresh();
  }

  private void initListeners() {

    addWindowListener(new WindowAdapter() {
      @Override
      public void windowClosing(WindowEvent e) {
        anaEkranSetEnable();
      }
    });

    cTablePanelPersonel.getTable().getSelectionModel()
        .addListSelectionListener(new ListSelectionListener() {
          @Override
          public void valueChanged(ListSelectionEvent e) {
            if (e.getValueIsAdjusting())
              return;
            personel = (Personel) cTablePanelPersonel
                .getSelectedObject();
            if (personel == null) {
              JButtonPersonelGuncelle.setEnabled(false);
              JButtonPersonelSil.setEnabled(false);
              jButtonPersonelPrim.setEnabled(false);
            } else {
              JButtonPersonelGuncelle.setEnabled(true);
              JButtonPersonelSil.setEnabled(true);
              jButtonPersonelPrim.setEnabled(true);
            }
          }
        });

    cTablePanelPersonel.getTable().addMouseListener(new MouseAdapter() {
      @Override
      public void mouseReleased(MouseEvent e) {
        if (e.isPopupTrigger()) {
          personelTablePopupMenu(e);
        }
      }

      @Override
      public void mousePressed(MouseEvent e) {
        if (e.isPopupTrigger()) {
          personelTablePopupMenu(e);
        }
      }

      @Override
      public void mouseClicked(MouseEvent e) {
        if (e.getClickCount() == 2) {
          personelGuncelleClicked();
        }
      }
    });

    menuItem.addActionListener(new ActionListener() {
      @Override
      public void actionPerformed(ActionEvent e) {
        personelSilClicked();
      }
    });

    menuItem2.addActionListener(new ActionListener() {
      @Override
      public void actionPerformed(ActionEvent e) {
        personelGuncelleClicked();
      }
    });

    menuItem3.addActionListener(new ActionListener() {
      @Override
      public void actionPerformed(ActionEvent e) {
        personelPrimBilgi();
      }
    });

    JButtonPersonelEkle.addActionListener(new ActionListener() {
      @Override
      public void actionPerformed(ActionEvent e) {
        personelEkleClicked();
      }
    });

    JButtonPersonelGuncelle.addActionListener(new ActionListener() {
      @Override
      public void actionPerformed(ActionEvent e) {
        personelGuncelleClicked();
      }
    });

    JButtonPersonelSil.addActionListener(new ActionListener() {
      @Override
      public void actionPerformed(ActionEvent e) {
        personelSilClicked();
      }
    });

    jButtonPersonelPrim.addActionListener(new ActionListener() {
      @Override
      public void actionPerformed(ActionEvent arg0) {
        personelPrimBilgi();
      }
    });
  }

  protected void personelEkleClicked() {
    PSAPersonelEklemeEkrani.getInstance(0).setVisible(true);
    setEnabled(false);
  }

  protected void personelPrimBilgi() {
    PSAPersonelPrim.getInstance(personel).setVisible(true);
    instance.setEnabled(false);
  }

  protected void anaEkranSetEnable() {
    PSAAnaEkran.getInstance(null).setEnabled(true);
    instance.dispose();
  }

  protected void personelTablePopupMenu(MouseEvent e) {
    Point p = e.getPoint();
    int rowNumber = cTablePanelPersonel.getTable().rowAtPoint(p);
    ListSelectionModel model = cTablePanelPersonel.getTable()
        .getSelectionModel();
    model.setSelectionInterval(rowNumber, rowNumber);
    pMenu.show(e.getComponent(), e.getX(), e.getY());
  }

  protected void personelGuncelleClicked() {
    PSAPersonelGuncellemeEkrani.getInstance(personel).setVisible(true);
    setEnabled(false);
  }

  protected void personelSilClicked() {
    int selectedOption = JOptionPane.showOptionDialog(null,
        "Personeli silmek istediğinizden emin misiniz?",
        "SİSTEM UYARISI", JOptionPane.OK_CANCEL_OPTION,
        JOptionPane.INFORMATION_MESSAGE, null, new String[] { "EVET",
            "HAYIR" }, "default");
    if (selectedOption == JOptionPane.OK_OPTION) {
      boolean delete = HibernateManager.getInstance().delete(personel);
      if (!delete) {
        return;
      }
      cTablePanelPersonel.getTable().clearSelection();
      AutoClosingMessageDialog.showAutoClosingMessageDialog(
          "Personel sistemden başarı ile silinmiştir.", 2);
    }
  }
}
TOP

Related Classes of gui.PSAPersonelEkrani

TOP
Copyright © 2018 www.massapi.com. All rights reserved.
All source code are property of their respective owners. Java is a trademark of Sun Microsystems, Inc and owned by ORACLE Inc. Contact coftware#gmail.com.