DKA2213
PROGRAMMING II
TAJUK APLIKASI :
TAGELIO ALEGANTE
1
ISI KANDUNGAN
1. 1.0 Pengenalan 3
Projek
2
1.0 PENGENALAN
Sistem penempahan makanan TAGLIO ELEGANTE adalah sebuah aplikasi yang ringkas untuk syarikat
produksi makanan. Pengguna yang ingin membuat pesanan boleh membuat pilihan makanan, kudapan, dan
minuman secara langsung, serta memilih bilangan item yang mereka mahu. Mereka juga boleh menentukan
kuantiti untuk setiap item yang mereka pesan. Aplikasi ini secara automatik mengira jumlah keseluruhan
pesanan yang dibuat oleh pengguna. Selain itu, aplikasi ini menyediakan paparan semula bagi data yang
dimasukkan oleh pengguna berserta jumlah harga, membolehkan pengguna untuk memeriksa kembali pesanan
mereka untuk sebarang kesilapan. Pengguna juga dapat melihat jumlah harga yang perlu mereka bayar tanpa
perlu mengira sendiri, menjadikannya lebih mudah jika pesanan yang mereka buat adalah dalam kuantiti yang
besar.
System Architect : Mereka bentuk aplikasi dari segi pergerakan sistem, keperluan
sistem, dan ciri-ciri sistem. Mereka juga menganalisis kehendak pelanggan.
Programmer : Menulis kod atur cara untuk membangunkan aplikasi.
3
2.2 Struktur Organisasi Tempat Kerja
( Project Leader )
4
2.3 Keperluan Pengguna
Pengguna perlu memasukkan maklumat seperti nama, emel, jumlah hidangan makanan yang
ingin ditempah, serta kuantiti makanan dan minuman mengikut kehendak mereka.
Aplikasi ini menerima maklumat pesanan makanan dari pengguna seperti nama, emel, jumlah
hidangan yang dipesan, dan kuantiti setiap hidangan serta minuman. Setelah butang 'KIRA'
ditekan, aplikasi akan menganalisis pesanan yang dibuat oleh pengguna, termasuk jumlah
hidangan dan kuantiti makanan serta minuman yang dipilih. Setelah analisis selesai, aplikasi
akan mengira jumlah keseluruhan hidangan dan minuman yang dipesan oleh pengguna dan
menentukan nilai bayaran yang perlu dibayar. Ini memudahkan pengguna untuk mengetahui
jumlah yang perlu dibayar tanpa perlu mengira sendiri.
5
2.5 Rekabentuk Antara Muka Pengguna Grafik
6
7
3.0 PEMBANGUNAN APLIKASI
TAGELIO ALEGANTE
Home.java
/*
* To change this license header, choose License Headers in Project Properties.
* To change this template file, choose Tools | Templates
* and open the template in the editor.
*/
package simple_pos;
/**
*
* @author user
*/
public class home extends javax.swing.JFrame {
/**
* Creates new form home
*/
public home() {
initComponents();
}
/**
* This method is called from within the constructor to initialize the form.
* WARNING: Do NOT modify this code. The content of this method is always
* regenerated by the Form Editor.
*/
@SuppressWarnings("unchecked")
// <editor-fold defaultstate="collapsed" desc="Generated Code">
private void initComponents() {
setDefaultCloseOperation(javax.swing.WindowConstants.EXIT_ON_CLOSE);
jLabel2.setIcon(new
javax.swing.ImageIcon("C:\\Users\\user\\Documents\\NetBeansProjects\\TAGLIO_E
LEGANTE\\src\\pic\\bg1 (1).jpg")); // NOI18N
jButton1.setText("ORDER HERE!");
8
jButton1.addActionListener(new java.awt.event.ActionListener() {
public void actionPerformed(java.awt.event.ActionEvent evt) {
jButton1ActionPerformed(evt);
}
});
.addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
.addComponent(jButton1, javax.swing.GroupLayout.PREFERRED_SIZE,
40, javax.swing.GroupLayout.PREFERRED_SIZE))
);
pack();
}// </editor-fold>
dispose();
/**
* @param args the command line arguments
*/
9
public static void main(String args[]) {
/* Set the Nimbus look and feel */
//<editor-fold defaultstate="collapsed" desc=" Look and feel setting code
(optional) ">
/* If Nimbus (introduced in Java SE 6) is not available, stay with the default
look and feel.
* For details see
http://download.oracle.com/javase/tutorial/uiswing/lookandfeel/plaf.html
*/
try {
for (javax.swing.UIManager.LookAndFeelInfo info :
javax.swing.UIManager.getInstalledLookAndFeels()) {
if ("Nimbus".equals(info.getName())) {
javax.swing.UIManager.setLookAndFeel(info.getClassName());
break;
}
}
} catch (ClassNotFoundException ex) {
java.util.logging.Logger.getLogger(home.class.getName()).log(java.util.logging.Leve
l.SEVERE, null, ex);
} catch (InstantiationException ex) {
java.util.logging.Logger.getLogger(home.class.getName()).log(java.util.logging.Leve
l.SEVERE, null, ex);
} catch (IllegalAccessException ex) {
java.util.logging.Logger.getLogger(home.class.getName()).log(java.util.logging.Leve
l.SEVERE, null, ex);
} catch (javax.swing.UnsupportedLookAndFeelException ex) {
java.util.logging.Logger.getLogger(home.class.getName()).log(java.util.logging.Leve
l.SEVERE, null, ex);
}
//</editor-fold>
public NewFrame() {
}
}
}
NewFrame.java
package simple_pos;
import java.text.DecimalFormat;
import java.util.Vector;
import javax.swing.table.DefaultTableModel;
/**
*
* @author sasindu
*/
public class NewJFrame extends javax.swing.JFrame {
public NewJFrame() {
initComponents();
jTable1.getColumnModel().getColumn(0).setPreferredWidth(30);
jTable1.getColumnModel().getColumn(1).setPreferredWidth(200);
v.add(id);
v.add(Name);
v.add(Qty);
v.add(Price);
dt.addRow(v);
11
}
dt.removeRow(jTable1.convertRowIndexToModel(row));
}
}
v.add(id);
v.add(Name);
v.add(Qty);
v.add(TotalPrice); // total price
dt.addRow(v);
}
12
public void cal(){
//cal total table values
tot += value ;
@SuppressWarnings("unchecked")
// <editor-fold defaultstate="collapsed" desc="Generated Code">
private void initComponents() {
setDefaultCloseOperation(javax.swing.WindowConstants.EXIT_ON_CLOSE);
b.setColumns(20);
b.setRows(5);
jScrollPane2.setViewportView(b);
pack();
}// </editor-fold>
cal();
cal();
cal();
}
cal();
}
cal();
}
cal();
}
cal();
}
cal();
}
cal();
}
22
DefaultTableModel dt = (DefaultTableModel) jTable1.getModel();
//remove product
int rw = jTable1.getSelectedRow();
dt.removeRow(rw);
case "1":
q1.setText("0");
break;
case "2":
q2.setText("0");
break;
case "3":
q3.setText("0");
break;
case "4":
q4.setText("0");
break;
case "5":
q5.setText("0");
break;
case "6":
q6.setText("0");
case "7":
q7.setText("0");
break;
case "8":
q8.setText("0");
break;
case "9":
q9.setText("0");
break;
default:
System.out.println("over");
}
}
23
private void jTable1MouseClicked(java.awt.event.MouseEvent evt) {
// TODO add your handling code here:
}
bal.setText(String.valueOf(df.format(balance)));
try {
b.setText(b.getText() + "---------------------------------------------------------------------\n");
b.setText(b.getText() + "Sub Total : " + total.getText() +"\n");
b.setText(b.getText() + "Cash : " + pay.getText() +"\n");
b.setText(b.getText() + "Balance : " + bal.getText() +"\n");
b.setText(b.getText() + "---------------------------------------------------------------------\n");
b.setText(b.getText() + " Thanks For Your Business...!"+"\n");
b.setText(b.getText() + "---------------------------------------------------------------------\n");
b.setText(b.getText() + " Software by Youtube Dapp Code"+"\n");
24
b.print(); //print
} catch (Exception e) {
System.out.println(e);
/**
* @param args the command line arguments
*/
public static void main(String args[]) {
/* Set the Nimbus look and feel */
//<editor-fold defaultstate="collapsed" desc=" Look and feel setting code (optional) ">
/* If Nimbus (introduced in Java SE 6) is not available, stay with the default look and feel.
* For details see http://download.oracle.com/javase/tutorial/uiswing/lookandfeel/plaf.html
*/
try {
for (javax.swing.UIManager.LookAndFeelInfo info : javax.swing.UIManager.getInstalledLookAndFeels())
{
if ("Nimbus".equals(info.getName())) {
javax.swing.UIManager.setLookAndFeel(info.getClassName());
break;
}
}
} catch (ClassNotFoundException ex) {
java.util.logging.Logger.getLogger(NewJFrame.class.getName()).log(java.util.logging.Level.SEVERE,
null, ex);
} catch (InstantiationException ex) {
java.util.logging.Logger.getLogger(NewJFrame.class.getName()).log(java.util.logging.Level.SEVERE,
null, ex);
} catch (IllegalAccessException ex) {
java.util.logging.Logger.getLogger(NewJFrame.class.getName()).log(java.util.logging.Level.SEVERE,
null, ex);
} catch (javax.swing.UnsupportedLookAndFeelException ex) {
java.util.logging.Logger.getLogger(NewJFrame.class.getName()).log(java.util.logging.Level.SEVERE,
null, ex);
}
//</editor-fold>
26
4.0 PENGUJIAN APLIKASI
27
8. 5/4/2024 Pengujian proses Sistem dapat Berjaya Tiada
pengiraan jumlah mengira Catatan
jumlah yang
dipilih oleh
pengguna
28
5.0 MANUAL PENGGUNA
1. Mula
29
4. Pengguna perlu menetang butang PAY selepas memilih makanan.
30
5. Paparan ini akan memaparkan makanan, harga dan resit
pembelian.
31
6. Pengguna boleh menetang butang ”DELETE” jika terdapat
kesalahan data yang dimasukkan oleh mereka.
32