0% found this document useful (0 votes)
51 views25 pages

Listing Program

The document contains code for a Java program that implements a login system. It includes classes for connecting to a database (Koneksi), validating login credentials against database records (LoginModel), and building the login user interface (LoginView). The LoginView class contains code to display login fields, buttons, and labels and link them to controller code to handle form submission.

Uploaded by

kedai Uncle
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as DOCX, PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
51 views25 pages

Listing Program

The document contains code for a Java program that implements a login system. It includes classes for connecting to a database (Koneksi), validating login credentials against database records (LoginModel), and building the login user interface (LoginView). The LoginView class contains code to display login fields, buttons, and labels and link them to controller code to handle form submission.

Uploaded by

kedai Uncle
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as DOCX, PDF, TXT or read online on Scribd
You are on page 1/ 25

Listing Program

A. Koneksi.java
1. package koneksi;
2. import com.mysql.jdbc.Driver;
3. import java.sql.Connection;
4. import java.sql.DriverManager;
5. import java.sql.SQLException;
6. import javax.swing.JOptionPane;
7. /**
8. *
9. * @author Uswatun Hasanah
10. */
11. public class koneksi {
12. public Connection con;
13. public Connection getConnection() throws SQLException{
14. if (con == null){
15. Driver driver = new Driver();
16. con = DriverManager.getConnection("jdbc:mysql://localhost:3306/db_amasta", "root", "");
17. } return con;
18. }
19. public void main(String args[]){
20. try{
21. getConnection();
22. System.out.println("Koneksi Berhasil");
23. } catch (SQLException ex) {
24. JOptionPane.showMessageDialog(null,"Koneksi Bermasalah");}
25. }
26. }

B. LoginModel.java
1. package model;
2. import java.sql.Connection;
3. import java.sql.PreparedStatement;
4. import java.sql.ResultSet;
5. import java.sql.SQLException;
6. import java.util.logging.Level;
7. import java.util.logging.Logger;
8. import model.object.User;
9. import koneksi.koneksi;
10. /**
11. * @author Uswatun Hasanah
12. */
13. public class LoginModel {
14. public User cekLogin(User data){
15. koneksi konek = new koneksi();
16. try{
17. Connection con = konek.getConnection();
18. String query = "SELECT*FROM pengguna WHERE username =? AND password=?";
19. PreparedStatement st = con.prepareStatement(query);
20. st.setString(1, data.getUsername());
21. st.setString(2, data.getPassword());
22. ResultSet rs = st.executeQuery();
23. if(rs.next()){
24. User user = new User();
25. user.setNama(rs.getString("nama"));
26. user.setJabatan(rs.getString("jabatan"));
27. return user;
28. }
29. } catch (SQLException ex) {
30. Logger.getLogger(LoginModel.class.getName()).log(Level.SEVERE, null, ex);
31. }
32. return null;
33. }
34. }

C. LoginView.java
1. package view;
2. /**
3. *
4. * @author Uswatun Hasanah
5. */
6. import controller.LoginController;
7. import java.util.logging.Level;
8. import java.util.logging.Logger;
9. import org.jb2011.lnf.beautyeye.BeautyEyeLNFHelper;
10. public class LoginView extends javax.swing.JFrame {
11. public LoginView() {
12. initComponents();
13. txtUsername.requestFocus();
14. LoginController controller = new LoginController(this);
15. }
16. @SuppressWarnings("unchecked")
17. // <editor-fold defaultstate="collapsed" desc="Generated Code">
18. private void initComponents() {
19. jDesktopPane1 = new widget.Desktop();
20. jPanel1 = new javax.swing.JPanel();
21. txtUsername = new javax.swing.JTextField();
22. txtPassword = new javax.swing.JPasswordField();
23. BtnLogin = new javax.swing.JButton();
24. jLabel1 = new javax.swing.JLabel();
25. jLabel3 = new javax.swing.JLabel();
26. jPanel3 = new widget.PanelLogin();
27. lblUsername = new javax.swing.JLabel();
28. lblPassword = new javax.swing.JLabel();
29. setDefaultCloseOperation(javax.swing.WindowConstants.EXIT_ON_CLOSE);
30. setBackground(new java.awt.Color(255, 102, 153));
31. jPanel1.setBackground(new java.awt.Color(0, 102, 102));
32. jPanel1.setBorder(new javax.swing.border.SoftBevelBorder(javax.swing.border.BevelBorder.RAISED));
33. jPanel1.setForeground(new java.awt.Color(204, 204, 204));
34. BtnLogin.setText("Login");
35. BtnLogin.addMouseListener(new java.awt.event.MouseAdapter() {
36. public void mouseEntered(java.awt.event.MouseEvent evt) {
37. BtnLoginMouseEntered(evt);
38. }
39. });
40. BtnLogin.addActionListener(new java.awt.event.ActionListener() {
41. public void actionPerformed(java.awt.event.ActionEvent evt) {
42. BtnLoginActionPerformed(evt);
43. }
44. });
45. jLabel1.setFont(new java.awt.Font("Comic Sans MS", 1, 14)); // NOI18N
46. jLabel1.setForeground(new java.awt.Color(255, 255, 255));
47. jLabel1.setText("PT Amasta Technology Indonesia");
48. jLabel3.setFont(new java.awt.Font("Comic Sans MS", 1, 14)); // NOI18N
49. jLabel3.setForeground(new java.awt.Color(255, 255, 255));
50. jLabel3.setText("Aplikasi Elektronik Korespondensi");
51. javax.swing.GroupLayout jPanel3Layout = new javax.swing.GroupLayout(jPanel3);
52. jPanel3.setLayout(jPanel3Layout);
53. jPanel3Layout.setHorizontalGroup(
54. jPanel3Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
55. .addGap(0, 81, Short.MAX_VALUE)
56. );
57. jPanel3Layout.setVerticalGroup(
58. jPanel3Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
59. .addGap(0, 71, Short.MAX_VALUE)
60. );
61. lblUsername.setForeground(new java.awt.Color(255, 255, 255));
62. lblUsername.setText("Username");
63. lblPassword.setForeground(new java.awt.Color(255, 255, 255));
64. lblPassword.setText("Password ");
65. javax.swing.GroupLayout jPanel1Layout = new javax.swing.GroupLayout(jPanel1);
66. jPanel1.setLayout(jPanel1Layout);
67. jPanel1Layout.setHorizontalGroup(
68. jPanel1Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
69. .addGroup(jPanel1Layout.createSequentialGroup()
70. .addGroup(jPanel1Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
71. .addGroup(jPanel1Layout.createSequentialGroup()
72. .addContainerGap()
73. .addComponent(jPanel3, javax.swing.GroupLayout.PREFERRED_SIZE,
javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE)
74. .addGap(8, 8, 8)
75. .addGroup(jPanel1Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
76. .addComponent(jLabel3)
77. .addComponent(jLabel1)))
78. .addGroup(jPanel1Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.TRAILING)
79. .addComponent(BtnLogin)
80. .addGroup(jPanel1Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.TRAILING, false)
81. .addGroup(jPanel1Layout.createSequentialGroup()
82. .addGap(63, 63, 63)
83. .addComponent(lblPassword)
84. .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED,
javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE)
85. .addComponent(txtPassword, javax.swing.GroupLayout.PREFERRED_SIZE, 154,
javax.swing.GroupLayout.PREFERRED_SIZE))
86. .addGroup(javax.swing.GroupLayout.Alignment.LEADING, jPanel1Layout.createSequentialGroup()
87. .addGap(64, 64, 64)
88. .addComponent(lblUsername)
89. .addGap(44, 44, 44)
90. .addComponent(txtUsername, javax.swing.GroupLayout.PREFERRED_SIZE, 154,
javax.swing.GroupLayout.PREFERRED_SIZE)))))
91. .addGap(0, 45, Short.MAX_VALUE))
92. );
93. jPanel1Layout.setVerticalGroup(
94. jPanel1Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
95. .addGroup(jPanel1Layout.createSequentialGroup()
96. .addGroup(jPanel1Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
97. .addGroup(jPanel1Layout.createSequentialGroup()
98. .addGap(22, 22, 22)
99. .addComponent(jLabel3)
100. .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.UNRELATED)
101. .addComponent(jLabel1))
102. .addGroup(jPanel1Layout.createSequentialGroup()
103. .addContainerGap()
104. .addComponent(jPanel3, javax.swing.GroupLayout.PREFERRED_SIZE,
javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE)))
105. .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED, 34, Short.MAX_VALUE)
106. .addGroup(jPanel1Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.BASELINE)
107. .addComponent(txtUsername, javax.swing.GroupLayout.PREFERRED_SIZE,
javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE)
108. .addComponent(lblUsername))
109. .addGap(18, 18, 18)
110. .addGroup(jPanel1Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.BASELINE)
111. .addComponent(lblPassword)
112. .addComponent(txtPassword, javax.swing.GroupLayout.PREFERRED_SIZE,
javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE))
113. .addGap(14, 14, 14)
114. .addComponent(BtnLogin)
115. .addContainerGap())
116. );
117. jDesktopPane1.setLayer(jPanel1, javax.swing.JLayeredPane.DEFAULT_LAYER);
118. javax.swing.GroupLayout jDesktopPane1Layout = new javax.swing.GroupLayout(jDesktopPane1);
119. jDesktopPane1.setLayout(jDesktopPane1Layout);
120. jDesktopPane1Layout.setHorizontalGroup(
121. jDesktopPane1Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
122. .addComponent(jPanel1, javax.swing.GroupLayout.DEFAULT_SIZE,
javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE)
123. );
124. jDesktopPane1Layout.setVerticalGroup(
125. jDesktopPane1Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
126. .addComponent(jPanel1, javax.swing.GroupLayout.DEFAULT_SIZE,
javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE)
127. );
128. javax.swing.GroupLayout layout = new javax.swing.GroupLayout(getContentPane());
129. getContentPane().setLayout(layout);
130. layout.setHorizontalGroup(
131. layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
132. .addComponent(jDesktopPane1)
133. );
134. layout.setVerticalGroup(
135. layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
136. .addComponent(jDesktopPane1)
137. );
138. pack();
139. }// </editor-fold>
140. public static void main(String args[]) {
141. BeautyEyeLNFHelper.frameBorderStyle =
BeautyEyeLNFHelper.FrameBorderStyle.osLookAndFeelDecorated;
142. try {
143. org.jb2011.lnf.beautyeye.BeautyEyeLNFHelper.launchBeautyEyeLNF();
144. } catch (Exception ex) {
145. Logger.getLogger(FrameUtamaView.class.getName()).log(Level.SEVERE, null, ex);
146. }
147. java.awt.EventQueue.invokeLater(new Runnable() {
148. public void run() {
149. new LoginView().setVisible(true);
150. }
151. });
152. }
153. // Variables declaration - do not modify
154. public javax.swing.JButton BtnLogin;
155. private javax.swing.JDesktopPane jDesktopPane1;
156. private javax.swing.JLabel jLabel1;
157. private javax.swing.JLabel jLabel3;
158. private javax.swing.JPanel jPanel1;
159. private javax.swing.JPanel jPanel3;
160. private javax.swing.JLabel lblPassword;
161. private javax.swing.JLabel lblUsername;
162. public javax.swing.JPasswordField txtPassword;
163. public javax.swing.JTextField txtUsername;
164. // End of variables declaration
165. }

D. LoginController.java
1. package controller;
2. import javax.swing.JOptionPane;
3. import model.LoginModel;
4. import model.object.User;
5. import view.FrameUtamaView;
6. import view.LoginView;
7. /**
8. * @author Uswatun Hasanah
9. */
10. public class LoginController{
11. LoginView view;
12. LoginModel model;
13. public LoginController(LoginView view){
14. this.view = view;
15. this.model = new LoginModel();
16. aksiForm();
17. }
18. public void aksiForm(){
19. view.BtnLogin.addActionListener(e -> cekLogin());
20. }
21. public void cekLogin(){
22. String username = view.txtUsername.getText();
23. String password = view.txtPassword.getText().toString();
24. User data = new User();
25. data.setUsername(username);
26. data.setPassword(password);
27. User user = model.cekLogin(data);
28. if(user != null){
29. JOptionPane.showMessageDialog(view, "selamat, berhasil login");
30. view.dispose();
31. new FrameUtamaView(user).setVisible(true);
32. }else{
33. JOptionPane.showMessageDialog(view, "data pengguna tidak ada");
34. }
35. }
36. }

E. MenuUtama.java
1. package view;
2. import java.util.logging.Level;
3. import java.util.logging.Logger;
4. import javax.swing.JDesktopPane;
5. import javax.swing.JInternalFrame;
6. import javax.swing.JOptionPane;
7. import model.object.User;
8. import org.jb2011.lnf.beautyeye.BeautyEyeLNFHelper;
9. import widget.LabelWaktu;
10. /**
11. * @author Uswatun Hasanah
12. */
13. public class FrameUtamaView extends javax.swing.JFrame {
14. JInternalFrame viewMitra, viewUser, viewJenisSurat, viewDisposisi,
15. viewInputSM, viewInputSK, viewDataSM, viewDataSK, viewDataDisposisi, viewAbout, LapS;
16. private User userLogin;
17. public FrameUtamaView() {
18. initComponents();
19. }
20. public FrameUtamaView(User user) {
21. this();
22. this.userLogin = user;
23. userLogin.getJabatan();
24. String jabatan = userLogin.getJabatan();
25. settingMenu(jabatan);
26. lblNamaLogin.setText(user.getNama());
27. lblJabatan.setText(user.getJabatan());
28. new LabelWaktu(lblWaktu).start();
29. }
30. public User getUserLogin() {
31. return userLogin;
32. }
33. public void setUserLogin(User userLogin) {
34. this.userLogin = userLogin;
35. }
36. private void hiddenMenu() {
37. mnMaster.setVisible(false);
38. mnMasterMitra.setVisible(false);
39. mnUser.setVisible(false);
40. mnJenisSurat.setVisible(false);
41. mnInputSurat.setVisible(false);
42. mnInputSM.setVisible(false);
43. mnInputSK.setVisible(false);
44. mnDisposisi.setVisible(false);
45. mnData.setVisible(false);
46. mnSuratMasuk.setVisible(false);
47. mnSuratKeluar.setVisible(false);
48. mnLaporan.setVisible(false);
49. mnLaporanSurat.setVisible(false);
50. }
51. private void settingMenu(String jabatan) {
52. this.hiddenMenu(); //hide dlu menunya
53. switch (jabatan) {
54. case "direktur":
55. loginDirektur();
56. break;
57. case "admin":
58. loginAdmin();
59. break;
60. }
61. }
62. public void loginAdmin() {
63. mnMaster.setVisible(true);
64. mnMasterMitra.setVisible(true);
65. mnUser.setVisible(true);
66. mnJenisSurat.setVisible(true);
67. mnInputSurat.setVisible(true);
68. mnInputSM.setVisible(true);
69. mnInputSK.setVisible(true);
70. mnData.setVisible(true);
71. mnSuratMasuk.setVisible(true);
72. mnSuratKeluar.setVisible(true);
73. mnDataDisposisi.setVisible(true);
74. mnLaporan.setVisible(true);
75. mnLaporanSurat.setVisible(true);
76. }
77. public void loginDirektur() {
78. mnInputSurat.setVisible(true);
79. mnDisposisi.setVisible(true);
80. mnData.setVisible(true);
81. mnSuratMasuk.setVisible(true);
82. mnSuratKeluar.setVisible(true);
83. mnDataDisposisi.setVisible(true);
84. mnLaporan.setVisible(true);
85. mnLaporanSurat.setVisible(true);
86. }
87. private void initComponents() {
88. public JDesktopPane getDesktopPanel() {
89. return desktopPanel;
90. }
91. public void setDesktopPanel(JDesktopPane desktopPanel) {
92. this.desktopPanel = desktopPanel;
93. }
94. private void mnAboutActionPerformed(java.awt.event.ActionEvent evt) {
95. if (!desktopPanel.isAncestorOf(viewAbout)) {
96. viewAbout = new AboutView();
97. viewAbout.setVisible(true);
98. desktopPanel.add(viewAbout);
99. }
100. }
101. private void mnLogoutActionPerformed(java.awt.event.ActionEvent evt) {
102. this.dispose();
103. new LoginView().setVisible(true);
104. }
105. private void mnExitActionPerformed(java.awt.event.ActionEvent evt) {
106. System.exit(0);
107. }
108. private void mnMasterActionPerformed(java.awt.event.ActionEvent evt) {
109. }
110. private void mnMasterMitraActionPerformed(java.awt.event.ActionEvent evt) {
111. if (!desktopPanel.isAncestorOf(viewMitra)) {
112. viewMitra = new MasterMitraView();
113. viewMitra.setVisible(true);
114. desktopPanel.add(viewMitra);
115. }
116. }
117. private void mnUserActionPerformed(java.awt.event.ActionEvent evt) {
118. if (!desktopPanel.isAncestorOf(viewUser)) {
119. viewUser = new MasterUserView();
120. viewUser.setVisible(true);
121. desktopPanel.add(viewUser);
122. }
123. }
124. private void mnJenisSuratActionPerformed(java.awt.event.ActionEvent evt) {
125. if (!desktopPanel.isAncestorOf(viewJenisSurat)) {
126. viewJenisSurat = new MasterJenisSuratView();
127. viewJenisSurat.setVisible(true);
128. desktopPanel.add(viewJenisSurat);
129. }
130. }
131. private void mnSuratMasukActionPerformed(java.awt.event.ActionEvent evt) {
132. if (!desktopPanel.isAncestorOf(viewDataSM)) {
133. viewDataSM = new DataSuratMasukView();
134. viewDataSM.setVisible(true);
135. desktopPanel.add(viewDataSM);
136. }
137. }
138. private void mnSuratKeluarActionPerformed(java.awt.event.ActionEvent evt) {
139. if (!desktopPanel.isAncestorOf(viewDataSK)) {
140. viewDataSK = new DataSuratKeluarView();
141. viewDataSK.setVisible(true);
142. desktopPanel.add(viewDataSK);
143. }
144. }
145. private void mnInputSKActionPerformed(java.awt.event.ActionEvent evt) {
146. if (!desktopPanel.isAncestorOf(viewInputSK)) {
147. viewInputSK = new InputSuratKeluarView(this);
148. viewInputSK.setVisible(true);
149. desktopPanel.add(viewInputSK);
150. }
151. }
152. private void mnInputSMActionPerformed(java.awt.event.ActionEvent evt) {
153. if (!desktopPanel.isAncestorOf(viewInputSM)) {
154. viewInputSM = new InputSuratMasukView(this);
155. viewInputSM.setVisible(true);
156. desktopPanel.add(viewInputSM);
157. }
158. }
159. private void mnDisposisiActionPerformed(java.awt.event.ActionEvent evt) {
160. if (!desktopPanel.isAncestorOf(viewDisposisi)) {
161. viewDisposisi = new DisposisiView(userLogin);
162. viewDisposisi.setVisible(true);
163. desktopPanel.add(viewDisposisi);
164. }
165. }
166. private void mnLaporanSuratActionPerformed(java.awt.event.ActionEvent evt) {
167. if (!desktopPanel.isAncestorOf(LapS)) {
168. LapS = new LaporanView();
169. LapS.setVisible(true);
170. desktopPanel.add(LapS);
171. }
172. }
173. private void mnDataDisposisiActionPerformed(java.awt.event.ActionEvent evt) {
174. if (!desktopPanel.isAncestorOf(viewDataDisposisi)) {
175. viewDataDisposisi = new DataDisposisiView();
176. viewDataDisposisi.setVisible(true);
177. desktopPanel.add(viewDataDisposisi);
178. }
179. }
180. public static void main(String args[]) {
181. BeautyEyeLNFHelper.frameBorderStyle=BeautyEyeLNFHelper.FrameBorderStyle.osLookAndFeelDecorate
d;
182. try {
183. org.jb2011.lnf.beautyeye.BeautyEyeLNFHelper.launchBeautyEyeLNF();
184. } catch (Exception ex) {
185. Logger.getLogger(FrameUtamaView.class.getName()).log(Level.SEVERE, null, ex);
186. }
187. java.awt.EventQueue.invokeLater(new Runnable() {
188. public void run() {
189. new FrameUtamaView().setVisible(true);
190. }
191. });
192. }
193. // Variables declaration - do not modify
194. private javax.swing.JDesktopPane desktopPanel;
195. private javax.swing.JLabel jLabel1;
196. private javax.swing.JLabel jLabel3;
197. private javax.swing.JLabel jLabel4;
198. private javax.swing.JLabel jLabel5;
199. private javax.swing.JMenuBar jMenuBar1;
200. private javax.swing.JPanel jPanel1;
201. private javax.swing.JPanel jPanel2;
202. private javax.swing.JPanel jPanel3;
203. private javax.swing.JPanel jPanel4;
204. private javax.swing.JPopupMenu.Separator jSeparator1;
205. private javax.swing.JPopupMenu.Separator jSeparator2;
206. private javax.swing.JPopupMenu.Separator jSeparator3;
207. private javax.swing.JPopupMenu.Separator jSeparator5;
208. private javax.swing.JPopupMenu.Separator jSeparator6;
209. private javax.swing.JPopupMenu.Separator jSeparator7;
210. private javax.swing.JPopupMenu.Separator jSeparator8;
211. private javax.swing.JLabel lblJabatan;
212. private javax.swing.JLabel lblNamaLogin;
213. private javax.swing.JLabel lblWaktu;
214. private javax.swing.JMenuItem mnAbout;
215. private javax.swing.JMenu mnData;
216. private javax.swing.JMenuItem mnDataDisposisi;
217. private javax.swing.JMenuItem mnDisposisi;
218. private javax.swing.JMenuItem mnExit;
219. private javax.swing.JMenu mnFile;
220. private javax.swing.JMenu mnHelp;
221. private javax.swing.JMenuItem mnInputSK;
222. private javax.swing.JMenuItem mnInputSM;
223. private javax.swing.JMenu mnInputSurat;
224. private javax.swing.JMenuItem mnJenisSurat;
225. private javax.swing.JMenu mnLaporan;
226. private javax.swing.JMenuItem mnLaporanSurat;
227. private javax.swing.JMenuItem mnLogout;
228. private javax.swing.JMenu mnMaster;
229. private javax.swing.JMenuItem mnMasterMitra;
230. private javax.swing.JMenuItem mnSuratKeluar;
231. private javax.swing.JMenuItem mnSuratMasuk;
232. private javax.swing.JMenuItem mnUser;
233. // End of variables declaration
234. }

F. InputSuratMasukView.java
1. package view;
2. import com.toedter.calendar.JDateChooser;
3. import java.io.File;
4. import javax.swing.JFileChooser;
5. import javax.swing.JTextField;
6. import controller.InputSMController;
7. import javax.swing.JButton;
8. import javax.swing.JOptionPane;
9. /**
10. * @author Uswatun Hasanah
11. */
12. public class InputSuratMasukView extends javax.swing.JInternalFrame {
13. InputSMController controller = null;
14. FrameUtamaView parent;
15. public InputSuratMasukView(FrameUtamaView parent){
16. initComponents();
17. this.parent = parent;
18. controller = new InputSMController(parent, this);
19. controller.reset();
20. }
21. public JButton getBtnBatal() {
22. return btnBatal;
23. }
24. public void setBtnBatal(JButton btnBatal) {
25. this.btnBatal = btnBatal;
26. }
27. public JButton getBtnCariAsalSurat() {
28. return btnCariAsalSurat;
29. }
30. public void setBtnCariAsalSurat(JButton btnCariAsalSurat) {
31. this.btnCariAsalSurat = btnCariAsalSurat;
32. }
33. public JButton getBtnCariFile() {
34. return btnCariFile;
35. }
36. public void setBtnCariFile(JButton btnCariFile) {
37. this.btnCariFile = btnCariFile;
38. }
39. public JButton getBtnCariJenisSurat() {
40. return btnCariJenisSurat;
41. }
42. public void setBtnCariJenisSurat(JButton btnCariJenisSurat) {
43. this.btnCariJenisSurat = btnCariJenisSurat;
44. }
45. public JButton getBtnReset() {
46. return btnReset;
47. }
48. public void setBtnReset(JButton btnReset) {
49. this.btnReset = btnReset;
50. }
51. public JButton getBtnSimpan() {
52. return btnSimpan;
53. }
54. public void setBtnSimpan(JButton btnSimpan) {
55. this.btnSimpan = btnSimpan;
56. }
57. public JTextField getTxtKodeSM() {
58. return txtKodeSM;
59. }
60. public void setTxtKodeSM(JTextField txtKodeSM) {
61. this.txtKodeSM = txtKodeSM;
62. }
63. public JTextField getTxtLampiran() {
64. return txtLampiran;
65. }
66. public void setTxtLampiran(JTextField txtLampiran) {
67. this.txtLampiran = txtLampiran;
68. }
69. public JTextField getTxtNoSurat() {
70. return txtNoSurat;
71. }
72. public void setTxtNoSurat(JTextField txtNoSurat) {
73. this.txtNoSurat = txtNoSurat;
74. }
75. public JTextField getTxtPerihal() {
76. return txtPerihal;
77. }
78. public void setTxtPerihal(JTextField txtPerihal) {
79. this.txtPerihal = txtPerihal;
80. }
81. public JTextField getTxtScanFile() {
82. return txtScanFile;
83. }
84. public void setTxtScanFile(JTextField txtScanFile) {
85. this.txtScanFile = txtScanFile;
86. }
87. public JTextField getTxtDitujukan() {
88. return txtDitujukan;
89. }
90. public void setTxtDitujukan(JTextField txtDitujukan) {
91. this.txtDitujukan = txtDitujukan;
92. }
93. public JTextField getTxtJenisSurat() {
94. return txtJenisSurat;
95. }
96. public void setTxtJenisSurat(JTextField txtJenisSurat) {
97. this.txtJenisSurat = txtJenisSurat;
98. }
99. public JTextField getTxtAsalSurat() {
100. return txtAsalSurat;
101. }
102. public void setTxtAsalSurat(JTextField txtAsalSurat) {
103. this.txtAsalSurat = txtAsalSurat;
104. }
105. public JDateChooser getDcTglSurat() {
106. return dcTglSurat;
107. }
108. public void setDcTglSurat(JDateChooser dcTglSurat) {
109. this.dcTglSurat = dcTglSurat;
110. }
111. public JDateChooser getDcTglTerima() {
112. return dcTglTerima;
113. }
114. public void setDcTglTerima(JDateChooser dcTglTerima) {
115. this.dcTglTerima = dcTglTerima;
116. }
117. @SuppressWarnings("unchecked")
118. // <editor-fold defaultstate="collapsed" desc="Generated Code">
119. private void initComponents() {
120. jPanel1 = new javax.swing.JPanel();
121. jLabel1 = new javax.swing.JLabel();
122. jLabel2 = new javax.swing.JLabel();
123. jLabel3 = new javax.swing.JLabel();
124. jLabel4 = new javax.swing.JLabel();
125. jLabel5 = new javax.swing.JLabel();
126. jLabel6 = new javax.swing.JLabel();
127. jLabel7 = new javax.swing.JLabel();
128. txtNoSurat = new javax.swing.JTextField();
129. dcTglSurat = new com.toedter.calendar.JDateChooser();
130. dcTglTerima = new com.toedter.calendar.JDateChooser();
131. txtPerihal = new javax.swing.JTextField();
132. txtAsalSurat = new javax.swing.JTextField();
133. txtJenisSurat = new javax.swing.JTextField();
134. ScanFile = new javax.swing.JLabel();
135. txtScanFile = new javax.swing.JTextField();
136. txtDitujukan = new javax.swing.JTextField();
137. btnCariAsalSurat = new widget.button.ButtonCari();
138. btnCariJenisSurat = new widget.button.ButtonCari();
139. btnCariFile = new widget.button.ButtonCari();
140. jLabel9 = new javax.swing.JLabel();
141. txtLampiran = new javax.swing.JTextField();
142. jLabel10 = new javax.swing.JLabel();
143. txtKodeSM = new javax.swing.JTextField();
144. jPanel2 = new javax.swing.JPanel();
145. btnSimpan = new widget.button.ButtonSimpan();
146. btnBatal = new widget.button.ButtonBatal();
147. btnReset = new widget.button.ButtonReset();
148. setClosable(true);
149. jPanel1.setBackground(new java.awt.Color(255, 255, 255));
150. jPanel1.setBorder(javax.swing.BorderFactory.createTitledBorder("Input Surat Masuk"));
151. jLabel1.setText("Nomor Surat");
152. jLabel2.setText("Tanggal Surat");
153. jLabel3.setText("Tanggal Terima");
154. jLabel4.setText("Asal Surat");
155. jLabel5.setText("Perihal");
156. jLabel6.setText("Jenis Surat");
157. jLabel7.setText("Ditujukan Kepada ");
158. ScanFile.setText("Scan File");
159. btnCariAsalSurat.addActionListener(new java.awt.event.ActionListener() {
160. public void actionPerformed(java.awt.event.ActionEvent evt) {
161. btnCariAsalSuratActionPerformed(evt);
162. }
163. });
164. btnCariJenisSurat.addActionListener(new java.awt.event.ActionListener() {
165. public void actionPerformed(java.awt.event.ActionEvent evt) {
166. btnCariJenisSuratActionPerformed(evt);
167. }
168. });
169. btnCariFile.addActionListener(new java.awt.event.ActionListener() {
170. public void actionPerformed(java.awt.event.ActionEvent evt) {
171. btnCariFileActionPerformed(evt);
172. }
173. });
174. jLabel9.setText("Lampiran");
175. jLabel10.setText("Kode Surat");
176. javax.swing.GroupLayout jPanel1Layout = new javax.swing.GroupLayout(jPanel1);
177. jPanel1.setLayout(jPanel1Layout);
178. jPanel1Layout.setHorizontalGroup(
179. jPanel1Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
180. .addGroup(jPanel1Layout.createSequentialGroup()
181. .addGap(16, 16, 16)
182. .addGroup(jPanel1Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
183. .addComponent(jLabel1)
184. .addComponent(jLabel2)
185. .addComponent(jLabel3)
186. .addComponent(jLabel4)
187. .addComponent(jLabel5)
188. .addComponent(jLabel6)
189. .addComponent(jLabel7)
190. .addComponent(ScanFile)
191. .addComponent(jLabel9)
192. .addComponent(jLabel10))
193. .addGap(18, 18, 18)
194. .addGroup(jPanel1Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
195. .addGroup(jPanel1Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.TRAILING, false)
196. .addComponent(txtPerihal, javax.swing.GroupLayout.Alignment.LEADING)
197. .addGroup(jPanel1Layout.createSequentialGroup()
198. .addComponent(txtAsalSurat)
199. .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
200. .addComponent(btnCariAsalSurat, javax.swing.GroupLayout.PREFERRED_SIZE, 21,
javax.swing.GroupLayout.PREFERRED_SIZE))
201. .addComponent(dcTglTerima, javax.swing.GroupLayout.Alignment.LEADING,
javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE,
Short.MAX_VALUE)
202. .addComponent(dcTglSurat, javax.swing.GroupLayout.Alignment.LEADING,
javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE,
Short.MAX_VALUE)
203. .addGroup(jPanel1Layout.createSequentialGroup()
204. .addComponent(txtJenisSurat)
205. .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
206. .addComponent(btnCariJenisSurat, javax.swing.GroupLayout.PREFERRED_SIZE, 21,
javax.swing.GroupLayout.PREFERRED_SIZE))
207. .addComponent(txtDitujukan)
208. .addGroup(javax.swing.GroupLayout.Alignment.LEADING, jPanel1Layout.createSequentialGroup()
209. .addComponent(txtScanFile, javax.swing.GroupLayout.PREFERRED_SIZE, 165,
javax.swing.GroupLayout.PREFERRED_SIZE)
210. .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
211. .addComponent(btnCariFile, javax.swing.GroupLayout.PREFERRED_SIZE, 21,
javax.swing.GroupLayout.PREFERRED_SIZE))
212. .addComponent(txtLampiran)
213. .addComponent(txtNoSurat, javax.swing.GroupLayout.Alignment.LEADING,
javax.swing.GroupLayout.PREFERRED_SIZE, 137, javax.swing.GroupLayout.PREFERRED_SIZE))
214. .addComponent(txtKodeSM, javax.swing.GroupLayout.PREFERRED_SIZE, 137,
javax.swing.GroupLayout.PREFERRED_SIZE))
215. .addContainerGap(60, Short.MAX_VALUE))
216. );
217. jPanel1Layout.setVerticalGroup(
218. jPanel1Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
219. .addGroup(jPanel1Layout.createSequentialGroup()
220. .addGap(3, 3, 3)
221. .addGroup(jPanel1Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.BASELINE)
222. .addComponent(jLabel10)
223. .addComponent(txtKodeSM, javax.swing.GroupLayout.PREFERRED_SIZE,
javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE))
224. .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.UNRELATED)
225. .addGroup(jPanel1Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.BASELINE)
226. .addComponent(jLabel1)
227. .addComponent(txtNoSurat, javax.swing.GroupLayout.PREFERRED_SIZE,
javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE))
228. .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
229. .addGroup(jPanel1Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.TRAILING)
230. .addComponent(jLabel2)
231. .addComponent(dcTglSurat, javax.swing.GroupLayout.PREFERRED_SIZE,
javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE))
232. .addGap(12, 12, 12)
233. .addGroup(jPanel1Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.TRAILING)
234. .addComponent(jLabel3)
235. .addComponent(dcTglTerima, javax.swing.GroupLayout.PREFERRED_SIZE,
javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE))
236. .addGap(8, 8, 8)
237. .addGroup(jPanel1Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.BASELINE)
238. .addComponent(jLabel4)
239. .addComponent(txtAsalSurat, javax.swing.GroupLayout.PREFERRED_SIZE,
javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE)
240. .addComponent(btnCariAsalSurat, javax.swing.GroupLayout.PREFERRED_SIZE, 22,
javax.swing.GroupLayout.PREFERRED_SIZE))
241. .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
242. .addGroup(jPanel1Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.BASELINE)
243. .addComponent(jLabel5)
244. .addComponent(txtPerihal, javax.swing.GroupLayout.PREFERRED_SIZE,
javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE))
245. .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.UNRELATED)
246. .addGroup(jPanel1Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
247. .addGroup(jPanel1Layout.createSequentialGroup()
248. .addGroup(jPanel1Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.BASELINE)
249. .addComponent(jLabel6)
250. .addComponent(txtJenisSurat, javax.swing.GroupLayout.PREFERRED_SIZE,
javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE))
251. .addGap(12, 12, 12)
252. .addGroup(jPanel1Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.BASELINE)
253. .addComponent(jLabel7)
254. .addComponent(txtDitujukan, javax.swing.GroupLayout.PREFERRED_SIZE,
javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE))
255. .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
256. .addGroup(jPanel1Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.BASELINE)
257. .addComponent(txtLampiran, javax.swing.GroupLayout.PREFERRED_SIZE,
javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE)
258. .addComponent(jLabel9))
259. .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
260. .addGroup(jPanel1Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
261. .addGroup(jPanel1Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.BASELINE)
262. .addComponent(txtScanFile, javax.swing.GroupLayout.PREFERRED_SIZE,
javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE)
263. .addComponent(ScanFile))
264. .addComponent(btnCariFile, javax.swing.GroupLayout.PREFERRED_SIZE, 21,
javax.swing.GroupLayout.PREFERRED_SIZE)))
265. .addComponent(btnCariJenisSurat, javax.swing.GroupLayout.PREFERRED_SIZE, 22,
javax.swing.GroupLayout.PREFERRED_SIZE)))
266. );
267. jPanel2.setBackground(new java.awt.Color(0, 102, 102));
268. jPanel2.setBorder(javax.swing.BorderFactory.createTitledBorder(""));
269. btnSimpan.setText("Simpan");
270. btnSimpan.addActionListener(new java.awt.event.ActionListener() {
271. public void actionPerformed(java.awt.event.ActionEvent evt) {
272. btnSimpanActionPerformed(evt);
273. }
274. });
275. btnBatal.setText("Batal");
276. btnBatal.addActionListener(new java.awt.event.ActionListener() {
277. public void actionPerformed(java.awt.event.ActionEvent evt) {
278. btnBatalActionPerformed(evt);
279. }
280. });
281. btnReset.setText("Reset");
282. btnReset.addActionListener(new java.awt.event.ActionListener() {
283. public void actionPerformed(java.awt.event.ActionEvent evt) {
284. btnResetActionPerformed(evt);
285. }
286. });
287. javax.swing.GroupLayout jPanel2Layout = new javax.swing.GroupLayout(jPanel2);
288. jPanel2.setLayout(jPanel2Layout);
289. jPanel2Layout.setHorizontalGroup(
290. jPanel2Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
291. .addGroup(jPanel2Layout.createSequentialGroup()
292. .addContainerGap(javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE)
293. .addComponent(btnReset)
294. .addGap(18, 18, 18)
295. .addComponent(btnSimpan)
296. .addGap(18, 18, 18)
297. .addComponent(btnBatal)
298. .addGap(23, 23, 23))
299. );
300. jPanel2Layout.setVerticalGroup(
301. jPanel2Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
302. .addGroup(jPanel2Layout.createSequentialGroup()
303. .addContainerGap()
304. .addGroup(jPanel2Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.BASELINE)
305. .addComponent(btnBatal, javax.swing.GroupLayout.DEFAULT_SIZE,
javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE)
306. .addComponent(btnSimpan)
307. .addComponent(btnReset)))
308. );
309. javax.swing.GroupLayout layout = new javax.swing.GroupLayout(getContentPane());
310. getContentPane().setLayout(layout);
311. layout.setHorizontalGroup(
312. layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
313. .addComponent(jPanel1, javax.swing.GroupLayout.DEFAULT_SIZE,
javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE)
314. .addComponent(jPanel2, javax.swing.GroupLayout.DEFAULT_SIZE,
javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE)
315. );
316. layout.setVerticalGroup(
317. layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
318. .addGroup(layout.createSequentialGroup()
319. .addComponent(jPanel1, javax.swing.GroupLayout.PREFERRED_SIZE,
javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE)
320. .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
321. .addComponent(jPanel2, javax.swing.GroupLayout.DEFAULT_SIZE,
javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE))
322. );
323. pack();
324. }// </editor-fold>
325. private void btnCariJenisSuratActionPerformed(java.awt.event.ActionEvent evt) {
326. controller.showLookupJS();
327. }
328. private void btnCariAsalSuratActionPerformed(java.awt.event.ActionEvent evt) {
329. controller.showLookupMitra();
330. }
331. private void btnCariFileActionPerformed(java.awt.event.ActionEvent evt) {
332. JFileChooser jfc = new JFileChooser();
333. jfc.showOpenDialog(null);
334. File file = jfc.getSelectedFile();
335. String scanFile = file.getAbsolutePath();
336. txtScanFile.setText(scanFile);
337. }
338. private void btnResetActionPerformed(java.awt.event.ActionEvent evt) {
339. controller.reset();
340. }
341. private void btnSimpanActionPerformed(java.awt.event.ActionEvent evt) {
342. if (!controller.getValidation().checkValidation()) {
343. JOptionPane.showMessageDialog(this, controller.getValidation().getErrorMessageString(), "Data belum
Valid!", JOptionPane.ERROR_MESSAGE);
344. } else if (JOptionPane.showConfirmDialog(this,
345. "Yakin mau simpan??",
346. "Konfirmasi",
347. JOptionPane.YES_NO_OPTION) == JOptionPane.YES_OPTION) {
348. if(controller.simpan()== true){
349. controller.reset();
350. DataSuratMasukView datasm = new DataSuratMasukView();
351. parent.getDesktopPanel().add(datasm);
352. datasm.setVisible(true);
353. this.dispose();
354. }
355. }
356. }
357. private void btnCariJenisSuratActionPerformed(java.awt.event.ActionEvent evt) {
358. controller.showLookupJS();
359. }
360. private void btnCariAsalSuratActionPerformed(java.awt.event.ActionEvent evt) {
361. controller.showLookupMitra();
362. }
363. private void btnCariFileActionPerformed(java.awt.event.ActionEvent evt) {
364. JFileChooser jfc = new JFileChooser();
365. jfc.showOpenDialog(null);
366. File file = jfc.getSelectedFile();
367. String scanFile = file.getAbsolutePath();
368. txtScanFile.setText(scanFile);
369. }
370. private void btnResetActionPerformed(java.awt.event.ActionEvent evt) {
371. controller.reset();
372. }
373. private void btnSimpanActionPerformed(java.awt.event.ActionEvent evt) {
374. if (!controller.getValidation().checkValidation()) {
375. JOptionPane.showMessageDialog(this, controller.getValidation().getErrorMessageString(), "Data belum
Valid!", JOptionPane.ERROR_MESSAGE);
376. } else if (JOptionPane.showConfirmDialog(this,
377. "Yakin mau simpan??",
378. "Konfirmasi",
379. JOptionPane.YES_NO_OPTION) == JOptionPane.YES_OPTION) {
380. if(controller.simpan()== true){
381. controller.reset();
382. DataSuratMasukView datasm = new DataSuratMasukView();
383. parent.getDesktopPanel().add(datasm);
384. datasm.setVisible(true);
385. this.dispose();}
386. }
387. }
388. private void btnBatalActionPerformed(java.awt.event.ActionEvent evt) {
389. dispose();
390. }
391. // Variables declaration - do not modify
392. private javax.swing.JLabel ScanFile;
393. private javax.swing.JButton btnBatal;
394. private javax.swing.JButton btnCariAsalSurat;
395. private javax.swing.JButton btnCariFile;
396. private javax.swing.JButton btnCariJenisSurat;
397. private javax.swing.JButton btnReset;
398. private javax.swing.JButton btnSimpan;
399. private com.toedter.calendar.JDateChooser dcTglSurat;
400. private com.toedter.calendar.JDateChooser dcTglTerima;
401. private javax.swing.JLabel jLabel1;
402. private javax.swing.JLabel jLabel10;
403. private javax.swing.JLabel jLabel2;
404. private javax.swing.JLabel jLabel3;
405. private javax.swing.JLabel jLabel4;
406. private javax.swing.JLabel jLabel5;
407. private javax.swing.JLabel jLabel6;
408. private javax.swing.JLabel jLabel7;
409. private javax.swing.JLabel jLabel9;
410. private javax.swing.JPanel jPanel1;
411. private javax.swing.JPanel jPanel2;
412. private javax.swing.JTextField txtAsalSurat;
413. private javax.swing.JTextField txtDitujukan;
414. private javax.swing.JTextField txtJenisSurat;
415. private javax.swing.JTextField txtKodeSM;
416. private javax.swing.JTextField txtLampiran;
417. private javax.swing.JTextField txtNoSurat;
418. private javax.swing.JTextField txtPerihal;
419. private javax.swing.JTextField txtScanFile;
420. // End of variables declaration
421. }

G. InputSuratKeluarView
1. package view;
2. import com.toedter.calendar.JDateChooser;
3. import controller.InputSKController;
4. import java.io.File;
5. import javax.swing.JButton;
6. import javax.swing.JFileChooser;
7. import javax.swing.JOptionPane;
8. import javax.swing.JTextField;
9. /**
10. *
11. * @author Uswatun Hasanah
12. */
13. public class InputSuratKeluarView extends javax.swing.JInternalFrame {
14. InputSKController controller = null;
15. FrameUtamaView parent;
16. public InputSuratKeluarView(FrameUtamaView parent) {
17. initComponents();
18. this.parent = parent;
19. controller = new InputSKController(parent, this);
20. controller.reset();
21. }
22. public JDateChooser getDcTglSurat() {
23. return dcTglSurat;
24. }
25. public void setDcTglSurat(JDateChooser dcTglSurat) {
26. this.dcTglSurat = dcTglSurat;
27. }
28. public JTextField getTxtJenisSurat() {
29. return txtJenisSurat;
30. }
31. public void setTxtJenisSurat(JTextField txtJenisSurat) {
32. this.txtJenisSurat = txtJenisSurat;
33. }
34. public JTextField getTxtLampiran() {
35. return txtLampiran;
36. }
37. public void setTxtLampiran(JTextField txtLampiran) {
38. this.txtLampiran = txtLampiran;
39. }
40. public JTextField getTxtNoSurat() {
41. return txtNoSurat;
42. }
43. public void setTxtNoSurat(JTextField txtNoSurat) {
44. this.txtNoSurat = txtNoSurat;
45. }
46. public JTextField getTxtPerihal() {
47. return txtPerihal;
48. }
49. public void setTxtPerihal(JTextField txtPerihal) {
50. this.txtPerihal = txtPerihal;
51. }
52. public JTextField getTxtScanFile() {
53. return txtScanFile;
54. }
55. public void setTxtScanFile(JTextField txtScanFile) {
56. this.txtScanFile = txtScanFile;
57. }
58. public JTextField getTxtTujuan() {
59. return txtTujuan;
60. }
61. public void setTxtTujuan(JTextField txtTujuan) {
62. this.txtTujuan = txtTujuan;
63. }
64. public JButton getBtnBatal() {
65. return btnBatal;
66. }
67. public void setBtnBatal(JButton btnBatal) {
68. this.btnBatal = btnBatal;
69. }
70. public JButton getBtnSimpan() {
71. return btnSimpan;
72. }
73. public void setBtnSimpan(JButton btnSimpan) {
74. this.btnSimpan = btnSimpan;
75. }
76. @SuppressWarnings("unchecked")
77. // <editor-fold defaultstate="collapsed" desc="Generated Code">
78. private void initComponents() {
79. jPanel1 = new javax.swing.JPanel();
80. jLabel1 = new javax.swing.JLabel();
81. jLabel2 = new javax.swing.JLabel();
82. jLabel3 = new javax.swing.JLabel();
83. jLabel4 = new javax.swing.JLabel();
84. jLabel5 = new javax.swing.JLabel();
85. jLabel6 = new javax.swing.JLabel();
86. txtNoSurat = new javax.swing.JTextField();
87. dcTglSurat = new com.toedter.calendar.JDateChooser();
88. txtTujuan = new javax.swing.JTextField();
89. btnCariTujuan = new widget.button.ButtonCari();
90. txtPerihal = new javax.swing.JTextField();
91. txtJenisSurat = new javax.swing.JTextField();
92. btnCariJS = new widget.button.ButtonCari();
93. txtScanFile = new javax.swing.JTextField();
94. btnCariFile = new widget.button.ButtonCari();
95. jLabel7 = new javax.swing.JLabel();
96. txtLampiran = new javax.swing.JTextField();
97. jPanel2 = new javax.swing.JPanel();
98. btnSimpan = new widget.button.ButtonSimpan();
99. btnBatal = new widget.button.ButtonBatal();
100. btnReset = new widget.button.ButtonReset();
101. setClosable(true);
102. jPanel1.setBackground(new java.awt.Color(255, 255, 255));
103. jPanel1.setBorder(javax.swing.BorderFactory.createTitledBorder("Input Surat Keluar"));
104. jLabel1.setText("No Surat ");
105. jLabel2.setText("Tanggal Surat ");
106. jLabel3.setText("Tujuan");
107. jLabel4.setText("Perihal");
108. jLabel5.setText("Jenis Surat");
109. jLabel6.setText("Scan File");
110. btnCariTujuan.addActionListener(new java.awt.event.ActionListener() {
111. public void actionPerformed(java.awt.event.ActionEvent evt) {
112. btnCariTujuanActionPerformed(evt);
113. }
114. });
115. btnCariJS.addActionListener(new java.awt.event.ActionListener() {
116. public void actionPerformed(java.awt.event.ActionEvent evt) {
117. btnCariJSActionPerformed(evt);
118. }
119. });
120. btnCariFile.addActionListener(new java.awt.event.ActionListener() {
121. public void actionPerformed(java.awt.event.ActionEvent evt) {
122. btnCariFileActionPerformed(evt);
123. }
124. });
125. jLabel7.setText("Lampiran");
126. javax.swing.GroupLayout jPanel1Layout = new javax.swing.GroupLayout(jPanel1);
127. jPanel1.setLayout(jPanel1Layout);
128. jPanel1Layout.setHorizontalGroup(
129. jPanel1Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
130. .addGroup(jPanel1Layout.createSequentialGroup()
131. .addContainerGap()
132. .addGroup(jPanel1Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING, false)
133. .addGroup(jPanel1Layout.createSequentialGroup()
134. .addGroup(jPanel1Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
135. .addComponent(jLabel3)
136. .addComponent(jLabel4)
137. .addComponent(jLabel1)
138. .addComponent(jLabel2)
139. .addComponent(jLabel5))
140. .addGap(48, 48, 48)
141. .addGroup(jPanel1Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING, false)
142. .addGroup(jPanel1Layout.createSequentialGroup()
143. .addComponent(txtTujuan, javax.swing.GroupLayout.PREFERRED_SIZE, 212,
javax.swing.GroupLayout.PREFERRED_SIZE)
144. .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
145. .addComponent(btnCariTujuan, javax.swing.GroupLayout.PREFERRED_SIZE, 21,
javax.swing.GroupLayout.PREFERRED_SIZE))
146. .addComponent(dcTglSurat, javax.swing.GroupLayout.DEFAULT_SIZE,
javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE)
147. .addComponent(txtNoSurat)
148. .addGroup(javax.swing.GroupLayout.Alignment.TRAILING, jPanel1Layout.createSequentialGroup()
149. .addComponent(txtJenisSurat)
150. .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
151. .addComponent(btnCariJS, javax.swing.GroupLayout.PREFERRED_SIZE, 23,
javax.swing.GroupLayout.PREFERRED_SIZE))
152. .addComponent(txtPerihal)))
153. .addGroup(javax.swing.GroupLayout.Alignment.TRAILING, jPanel1Layout.createSequentialGroup()
154. .addGroup(jPanel1Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
155. .addComponent(jLabel7)
156. .addComponent(jLabel6))
157. .addGap(75, 75, 75)
158. .addGroup(jPanel1Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
159. .addGroup(jPanel1Layout.createSequentialGroup()
160. .addComponent(txtScanFile)
161. .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
162. .addComponent(btnCariFile, javax.swing.GroupLayout.PREFERRED_SIZE, 21,
javax.swing.GroupLayout.PREFERRED_SIZE))
163. .addComponent(txtLampiran))))
164. .addContainerGap(javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE))
165. );
166. jPanel1Layout.setVerticalGroup(
167. jPanel1Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
168. .addGroup(jPanel1Layout.createSequentialGroup()
169. .addContainerGap(javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE)
170. .addGroup(jPanel1Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
171. .addComponent(btnCariJS, javax.swing.GroupLayout.PREFERRED_SIZE, 19,
javax.swing.GroupLayout.PREFERRED_SIZE)
172. .addGroup(jPanel1Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.BASELINE)
173. .addComponent(jLabel5)
174. .addComponent(txtJenisSurat, javax.swing.GroupLayout.PREFERRED_SIZE,
javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE)))
175. .addGap(9, 9, 9)
176. .addGroup(jPanel1Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.BASELINE)
177. .addComponent(jLabel1)
178. .addComponent(txtNoSurat, javax.swing.GroupLayout.PREFERRED_SIZE,
javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE))
179. .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
180. .addGroup(jPanel1Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.TRAILING)
181. .addComponent(jLabel2)
182. .addComponent(dcTglSurat, javax.swing.GroupLayout.PREFERRED_SIZE,
javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE))
183. .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
184. .addGroup(jPanel1Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
185. .addComponent(btnCariTujuan, javax.swing.GroupLayout.PREFERRED_SIZE, 19,
javax.swing.GroupLayout.PREFERRED_SIZE)
186. .addGroup(jPanel1Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.BASELINE)
187. .addComponent(txtTujuan, javax.swing.GroupLayout.PREFERRED_SIZE,
javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE)
188. .addComponent(jLabel3)))
189. .addGap(10, 10, 10)
190. .addGroup(jPanel1Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.BASELINE)
191. .addComponent(txtPerihal, javax.swing.GroupLayout.PREFERRED_SIZE,
javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE)
192. .addComponent(jLabel4))
193. .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.UNRELATED)
194. .addGroup(jPanel1Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.BASELINE)
195. .addComponent(jLabel7)
196. .addComponent(txtLampiran, javax.swing.GroupLayout.PREFERRED_SIZE,
javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE))
197. .addGap(9, 9, 9)
198. .addGroup(jPanel1Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.BASELINE)
199. .addComponent(jLabel6)
200. .addComponent(txtScanFile, javax.swing.GroupLayout.PREFERRED_SIZE,
javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE)
201. .addComponent(btnCariFile, javax.swing.GroupLayout.PREFERRED_SIZE, 20,
javax.swing.GroupLayout.PREFERRED_SIZE)))
202. );
203. jPanel2.setBackground(new java.awt.Color(0, 102, 102));
204. jPanel2.setBorder(javax.swing.BorderFactory.createTitledBorder(""));
205. btnSimpan.setText("Simpan");
206. btnSimpan.addActionListener(new java.awt.event.ActionListener() {
207. public void actionPerformed(java.awt.event.ActionEvent evt) {
208. btnSimpanActionPerformed(evt);
209. }
210. });
211. btnBatal.setText("Batal");
212. btnBatal.addActionListener(new java.awt.event.ActionListener() {
213. public void actionPerformed(java.awt.event.ActionEvent evt) {
214. btnBatalActionPerformed(evt);
215. }
216. });
217. btnReset.setText("Reset");
218. btnReset.addActionListener(new java.awt.event.ActionListener() {
219. public void actionPerformed(java.awt.event.ActionEvent evt) {
220. btnResetActionPerformed(evt);
221. }
222. });
223. javax.swing.GroupLayout jPanel2Layout = new javax.swing.GroupLayout(jPanel2);
224. jPanel2.setLayout(jPanel2Layout);
225. jPanel2Layout.setHorizontalGroup(
226. jPanel2Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
227. .addGroup(jPanel2Layout.createSequentialGroup()
228. .addContainerGap(javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE)
229. .addComponent(btnReset)
230. .addGap(18, 18, 18)
231. .addComponent(btnSimpan)
232. .addGap(18, 18, 18)
233. .addComponent(btnBatal)
234. .addGap(23, 23, 23))
235. );
236. jPanel2Layout.setVerticalGroup(
237. jPanel2Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
238. .addGroup(jPanel2Layout.createSequentialGroup()
239. .addContainerGap()
240. .addGroup(jPanel2Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.BASELINE)
241. .addComponent(btnBatal, javax.swing.GroupLayout.DEFAULT_SIZE,
javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE)
242. .addComponent(btnSimpan)
243. .addComponent(btnReset)))
244. );
245. javax.swing.GroupLayout layout = new javax.swing.GroupLayout(getContentPane());
246. getContentPane().setLayout(layout);
247. layout.setHorizontalGroup(
248. layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
249. .addComponent(jPanel2, javax.swing.GroupLayout.DEFAULT_SIZE,
javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE)
250. .addComponent(jPanel1, javax.swing.GroupLayout.DEFAULT_SIZE,
javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE)
251. );
252. layout.setVerticalGroup(
253. layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
254. .addGroup(layout.createSequentialGroup()
255. .addComponent(jPanel1, javax.swing.GroupLayout.PREFERRED_SIZE,
javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE)
256. .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
257. .addComponent(jPanel2, javax.swing.GroupLayout.DEFAULT_SIZE,
javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE))
258. );
259. pack();
260. }// </editor-fold>
261. private void btnResetActionPerformed(java.awt.event.ActionEvent evt) {
262. controller.reset();
263. }
264. private void btnSimpanActionPerformed(java.awt.event.ActionEvent evt) {
265. if (!controller.getValidation().checkValidation()) {
266. JOptionPane.showMessageDialog(this, controller.getValidation().getErrorMessageString(), "Data belum
Valid!", JOptionPane.ERROR_MESSAGE);
267. } else if (JOptionPane.showConfirmDialog(this,
268. "Yakin mau simpan??",
269. "Konfirmasi",
270. JOptionPane.YES_NO_OPTION) == JOptionPane.YES_OPTION) {
271. if(controller.simpan()== true){
272. controller.reset();
273. DataSuratKeluarView datask = new DataSuratKeluarView();
274. parent.getDesktopPanel().add(datask);
275. datask.setVisible(true);
276. this.dispose();
277. }
278. }
279. }
280. private void btnBatalActionPerformed(java.awt.event.ActionEvent evt) {
281. dispose();
282. }
283. private void btnCariFileActionPerformed(java.awt.event.ActionEvent evt) {
284. JFileChooser jfc = new JFileChooser();
285. jfc.showOpenDialog(null);
286. File file = jfc.getSelectedFile();
287. String scanFile = file.getAbsolutePath();
288. txtScanFile.setText(scanFile);
289. }
290. private void btnCariJSActionPerformed(java.awt.event.ActionEvent evt) {
291. controller.showLookupJS();
292. }
293. private void btnCariTujuanActionPerformed(java.awt.event.ActionEvent evt) {
294. controller.showLookupMitra();
295. }
296. // Variables declaration - do not modify
297. private javax.swing.JButton btnBatal;
298. private javax.swing.JButton btnCariFile;
299. private javax.swing.JButton btnCariJS;
300. private javax.swing.JButton btnCariTujuan;
301. private javax.swing.JButton btnReset;
302. private javax.swing.JButton btnSimpan;
303. private com.toedter.calendar.JDateChooser dcTglSurat;
304. private javax.swing.JLabel jLabel1;
305. private javax.swing.JLabel jLabel2;
306. private javax.swing.JLabel jLabel3;
307. private javax.swing.JLabel jLabel4;
308. private javax.swing.JLabel jLabel5;
309. private javax.swing.JLabel jLabel6;
310. private javax.swing.JLabel jLabel7;
311. private javax.swing.JPanel jPanel1;
312. private javax.swing.JPanel jPanel2;
313. private javax.swing.JTextField txtJenisSurat;
314. private javax.swing.JTextField txtLampiran;
315. private javax.swing.JTextField txtNoSurat;
316. private javax.swing.JTextField txtPerihal;
317. private javax.swing.JTextField txtScanFile;
318. private javax.swing.JTextField txtTujuan;
319. // End of variables declaration
320. }

H. DisposisiView.java
1. package view;
2. import com.toedter.calendar.JDateChooser;
3. import controller.DisposisiController;
4. import javax.swing.JButton;
5. import javax.swing.JComboBox;
6. import javax.swing.JOptionPane;
7. import javax.swing.JTable;
8. import javax.swing.JTextArea;
9. import javax.swing.JTextField;
10. import model.object.User;
11. /**
12. *
13. * @author Uswatun Hasanah
14. */
15. public class DisposisiView extends javax.swing.JInternalFrame {
16. DisposisiController controller = null;
17. User userLogin;
18. public DisposisiView(User userLogin) {
19. initComponents();
20. this.userLogin = userLogin;
21. controller = new DisposisiController(this, userLogin);
22. controller.reset();
23. }
24. public JComboBox<String> getCbDisposisiDari() {
25. return cbDisposisiDari;
26. }
27. public void setCbDisposisiDari(JComboBox<String> cbDisposisiDari) {
28. this.cbDisposisiDari = cbDisposisiDari;
29. }
30. public JComboBox<String> getCbDisposisiKe() {
31. return cbDisposisiKe;
32. }
33. public void setCbDisposisiKe(JComboBox<String> cbDisposisiKe) {
34. this.cbDisposisiKe = cbDisposisiKe;
35. }
36. public JDateChooser getDcTglDisposisi() {
37. return dcTglDisposisi;
38. }
39. public void setDcTglDisposisi(JDateChooser dcTglDisposisi) {
40. this.dcTglDisposisi = dcTglDisposisi;
41. }
42. public JButton getjButton1() {
43. return btnCariSM;
44. }
45. public void setjButton1(JButton jButton1) {
46. this.btnCariSM = jButton1;
47. }
48. public JTextArea getTxtAreaCatatan() {
49. return txtAreaCatatan;
50. }
51. public void setTxtAreaCatatan(JTextArea txtAreaCatatan) {
52. this.txtAreaCatatan = txtAreaCatatan;
53. }
54. public JTextField getTxtNoDisposisi() {
55. return txtNoDisposisi;
56. }
57. public void setTxtNoDisposisi(JTextField txtNoDisposisi) {
58. this.txtNoDisposisi = txtNoDisposisi;
59. }
60. public JTextField getTxtNoSurat() {
61. return txtNoSurat;
62. }
63. public void setTxtNoSurat(JTextField txtNoSurat) {
64. this.txtNoSurat = txtNoSurat;
65. }
66. @SuppressWarnings("unchecked")
67. // <editor-fold defaultstate="collapsed" desc="Generated Code">
68. private void initComponents() {
69. jPanel3 = new javax.swing.JPanel();
70. jLabel1 = new javax.swing.JLabel();
71. jLabel2 = new javax.swing.JLabel();
72. jLabel3 = new javax.swing.JLabel();
73. jLabel4 = new javax.swing.JLabel();
74. txtNoDisposisi = new javax.swing.JTextField();
75. txtNoSurat = new javax.swing.JTextField();
76. dcTglDisposisi = new com.toedter.calendar.JDateChooser();
77. cbDisposisiKe = new javax.swing.JComboBox<>();
78. jLabel6 = new javax.swing.JLabel();
79. jScrollPane2 = new javax.swing.JScrollPane();
80. txtAreaCatatan = new javax.swing.JTextArea();
81. jLabel8 = new javax.swing.JLabel();
82. cbDisposisiDari = new javax.swing.JComboBox<>();
83. btnCariSM = new widget.button.ButtonCari();
84. jPanel1 = new javax.swing.JPanel();
85. btnReset = new widget.button.ButtonReset();
86. btnKirim = new widget.button.ButtonKirim();
87. setClosable(true);
88. jPanel3.setBackground(new java.awt.Color(255, 255, 255));
89. jPanel3.setBorder(javax.swing.BorderFactory.createTitledBorder("Form Disposisi"));
90. jLabel1.setText("No Disposisi");
91. jLabel2.setText("No Surat");
92. jLabel3.setText("Tgl Disposisi");
93. jLabel4.setText("Disposisi ke");
94. cbDisposisiKe.setModel(new javax.swing.DefaultComboBoxModel<>(new String[] { "-", "Direktur",
"Administrasi" }));
95. jLabel6.setText("Catatan");
96. txtAreaCatatan.setColumns(20);
97. txtAreaCatatan.setRows(5);
98. jScrollPane2.setViewportView(txtAreaCatatan);
99. jLabel8.setText("Disposisi dari");
100. cbDisposisiDari.setModel(new javax.swing.DefaultComboBoxModel<>(new String[] { "-", "Direktur",
"Administrasi" }));
101. btnCariSM.addActionListener(new java.awt.event.ActionListener() {
102. public void actionPerformed(java.awt.event.ActionEvent evt) {
103. btnCariSMActionPerformed(evt);
104. }
105. });
106. javax.swing.GroupLayout jPanel3Layout = new javax.swing.GroupLayout(jPanel3);
107. jPanel3.setLayout(jPanel3Layout);
108. jPanel3Layout.setHorizontalGroup(
109. jPanel3Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
110. .addGroup(jPanel3Layout.createSequentialGroup()
111. .addContainerGap()
112. .addGroup(jPanel3Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
113. .addComponent(jLabel6)
114. .addComponent(jLabel2)
115. .addComponent(jLabel3)
116. .addComponent(jLabel4)
117. .addComponent(jLabel8)
118. .addComponent(jLabel1))
119. .addGap(33, 33, 33)
120. .addGroup(jPanel3Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.TRAILING, false)
121. .addComponent(dcTglDisposisi, javax.swing.GroupLayout.DEFAULT_SIZE,
javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE)
122. .addComponent(txtNoDisposisi, javax.swing.GroupLayout.Alignment.LEADING)
123. .addGroup(javax.swing.GroupLayout.Alignment.LEADING, jPanel3Layout.createSequentialGroup()
124. .addComponent(txtNoSurat, javax.swing.GroupLayout.PREFERRED_SIZE, 174,
javax.swing.GroupLayout.PREFERRED_SIZE)
125. .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
126. .addComponent(btnCariSM, javax.swing.GroupLayout.PREFERRED_SIZE, 0, Short.MAX_VALUE))
127. .addComponent(jScrollPane2, javax.swing.GroupLayout.Alignment.LEADING,
javax.swing.GroupLayout.DEFAULT_SIZE, 204, Short.MAX_VALUE)
128. .addComponent(cbDisposisiKe, javax.swing.GroupLayout.Alignment.LEADING, 0, 91,
Short.MAX_VALUE)
129. .addComponent(cbDisposisiDari, javax.swing.GroupLayout.Alignment.LEADING, 0,
javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE))
130. .addGap(0, 28, Short.MAX_VALUE))
131. );
132. jPanel3Layout.setVerticalGroup(
133. jPanel3Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
134. .addGroup(jPanel3Layout.createSequentialGroup()
135. .addGap(0, 0, Short.MAX_VALUE)
136. .addGroup(jPanel3Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
137. .addGroup(jPanel3Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.BASELINE)
138. .addComponent(txtNoSurat, javax.swing.GroupLayout.PREFERRED_SIZE,
javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE)
139. .addComponent(jLabel2))
140. .addComponent(btnCariSM, javax.swing.GroupLayout.PREFERRED_SIZE, 20,
javax.swing.GroupLayout.PREFERRED_SIZE))
141. .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
142. .addGroup(jPanel3Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.TRAILING)
143. .addComponent(jLabel1)
144. .addComponent(txtNoDisposisi, javax.swing.GroupLayout.PREFERRED_SIZE,
javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE))
145. .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
146. .addGroup(jPanel3Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
147. .addComponent(dcTglDisposisi, javax.swing.GroupLayout.PREFERRED_SIZE,
javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE)
148. .addComponent(jLabel3, javax.swing.GroupLayout.Alignment.TRAILING))
149. .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
150. .addGroup(jPanel3Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.BASELINE)
151. .addComponent(cbDisposisiKe, javax.swing.GroupLayout.PREFERRED_SIZE,
javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE)
152. .addComponent(jLabel4))
153. .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
154. .addGroup(jPanel3Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.BASELINE)
155. .addComponent(cbDisposisiDari, javax.swing.GroupLayout.PREFERRED_SIZE,
javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE)
156. .addComponent(jLabel8))
157. .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
158. .addGroup(jPanel3Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
159. .addComponent(jScrollPane2, javax.swing.GroupLayout.PREFERRED_SIZE, 86,
javax.swing.GroupLayout.PREFERRED_SIZE)
160. .addComponent(jLabel6))
161. .addContainerGap(13, Short.MAX_VALUE))
162. );

163. jPanel1.setBackground(new java.awt.Color(0, 102, 102));


164. jPanel1.setBorder(javax.swing.BorderFactory.createTitledBorder(""));
165. btnReset.setText("Reset");
166. btnReset.addActionListener(new java.awt.event.ActionListener() {
167. public void actionPerformed(java.awt.event.ActionEvent evt) {
168. btnResetActionPerformed(evt);
169. }
170. });
171. btnKirim.setText("Kirim");
172. btnKirim.addActionListener(new java.awt.event.ActionListener() {
173. public void actionPerformed(java.awt.event.ActionEvent evt) {
174. btnKirimActionPerformed(evt);
175. }
176. });
177. javax.swing.GroupLayout jPanel1Layout = new javax.swing.GroupLayout(jPanel1);
178. jPanel1.setLayout(jPanel1Layout);
179. jPanel1Layout.setHorizontalGroup(
180. jPanel1Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
181. .addGroup(javax.swing.GroupLayout.Alignment.TRAILING, jPanel1Layout.createSequentialGroup()
182. .addContainerGap(javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE)
183. .addComponent(btnReset)
184. .addGap(18, 18, 18)
185. .addComponent(btnKirim)
186. .addGap(36, 36, 36))
187. );
188. jPanel1Layout.setVerticalGroup(
189. jPanel1Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
190. .addGroup(jPanel1Layout.createSequentialGroup()
191. .addContainerGap()
192. .addGroup(jPanel1Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.BASELINE)
193. .addComponent(btnReset)
194. .addComponent(btnKirim))
195. .addContainerGap(javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE))
196. );
197. javax.swing.GroupLayout layout = new javax.swing.GroupLayout(getContentPane());
198. getContentPane().setLayout(layout);
199. layout.setHorizontalGroup(
200. layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
201. .addComponent(jPanel3, javax.swing.GroupLayout.DEFAULT_SIZE,
javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE)
202. .addComponent(jPanel1, javax.swing.GroupLayout.Alignment.TRAILING,
javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE,
Short.MAX_VALUE)
203. );
204. layout.setVerticalGroup(
205. layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
206. .addGroup(layout.createSequentialGroup()
207. .addComponent(jPanel3, javax.swing.GroupLayout.PREFERRED_SIZE,
javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE)
208. .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
209. .addComponent(jPanel1, javax.swing.GroupLayout.DEFAULT_SIZE,
javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE))
210. );
211. pack();
212. }// </editor-fold>
213. private void btnKirimActionPerformed(java.awt.event.ActionEvent evt) {
214. if (!controller.getValidation().checkValidation()) {
215. JOptionPane.showMessageDialog(this, controller.getValidation().getErrorMessageString(), "Data belum
Valid!", JOptionPane.ERROR_MESSAGE);
216. } else if (JOptionPane.showConfirmDialog(this,
217. "Yakin mau simpan??",
218. "Konfirmasi",
219. JOptionPane.YES_NO_OPTION) == JOptionPane.YES_OPTION) {
220. controller.simpanDisposisi();
221. controller.reset();
222. }
223. }
224. private void btnResetActionPerformed(java.awt.event.ActionEvent evt) {
225. controller.reset();
226. }
227. private void btnCariSMActionPerformed(java.awt.event.ActionEvent evt) {
228. controller.showLookupSM();
229. }
230. // Variables declaration - do not modify
231. private javax.swing.JButton btnCariSM;
232. private javax.swing.JButton btnKirim;
233. private javax.swing.JButton btnReset;
234. private javax.swing.JComboBox<String> cbDisposisiDari;
235. private javax.swing.JComboBox<String> cbDisposisiKe;
236. private com.toedter.calendar.JDateChooser dcTglDisposisi;
237. private javax.swing.JLabel jLabel1;
238. private javax.swing.JLabel jLabel2;
239. private javax.swing.JLabel jLabel3;
240. private javax.swing.JLabel jLabel4;
241. private javax.swing.JLabel jLabel6;
242. private javax.swing.JLabel jLabel8;
243. private javax.swing.JPanel jPanel1;
244. private javax.swing.JPanel jPanel3;
245. private javax.swing.JScrollPane jScrollPane2;
246. private javax.swing.JTextArea txtAreaCatatan;
247. private javax.swing.JTextField txtNoDisposisi;
248. private javax.swing.JTextField txtNoSurat;
249. // End of variables declaration
250. }

You might also like