Listing Program
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. );