commit to user
69
Fungsi untuk menghitung biaya pengiriman
function hitung_ongkirberat, tarif {
brt=berat1000; if brt 0 {
if berat 1000 { brt = 1;
ongkir=tarifbrt; } else {
bulat=berat-brt; ongkir=tarifbulat1000+1; }
} else { brt=berat1000;
ongkir=tarifbrt; }
return ongkir; }
- Pada Model
order_m :
function tmbh_orderdata=array {
if this-db-insertpesanan,data return true; return false;
} function insert_detaildata=array {
if this-db-insertdetail_pesanan,data return true;
return false; }
4.1.6 Halaman Account User
Berisi daftar menu pengaturan account setelah user login.
Gambar 4.7. Halaman Account
commit to user
70
4.1.7 Halaman Home Admin
Halaman Home berisi informasi umum setelah admin login.
Gambar 4.8. Halaman Home Admin
4.1.8 Halaman Pengaturan Pesanan Admin
Pada halaman ini berisi informasi mengenai semua pesanan. Untuk status
diba ta lka n
dan
diterima,
tidak ada aksi yang ditampilkan karena pesanan sudah selesai dan tidak bisa diubah. Untuk status
Suda h Diba yar,
hanya ada aksi edit dan tidak bisa dibatalkan. Sedang status
Belum Diba ya r
, aksi yang ditampilkan edit dan cancel untuk membatalkan.
Gambar 4.9. Halaman Pengaturan Pesanan Admin
4.1.9 Halaman Pengaturan Pengiriman Admin
Halaman ini berisi 4 sub kategori yaitu, kota, provinsi, kurir dan tarif. Ketika memasukkan tarif, memilih kurir dan kota lalu menentukan tarif.
commit to user
71
Gambar 4.10. Halaman Pengaturan Pengiriman Admin
4.1.10 Halaman Home Manajer
Halaman Home berisi informasi umum setelah admin login.
Gambar 4.11. Halaman Home Manajer
4.1.11 Halaman Laporan Grafik Transaksi Manajer
Berisi gambar grafik untuk jumlah per status pada bulan ini. Manajer bisa melihat daftar pesanan dengan filter status. Detail pesanan bisa dilihat
dengan mengklik id pesanan.
commit to user
72
Gambar 4.12. Halaman Laporan Grafik Transaksi Manajer Halaman detail order menampilkan secara detail isi pesanan tetapi
manajer tidak dapat mengubahnya.
Gambar 4. Halaman Detail Order Manajer
commit to user
73
Script program untuk menampilkan halaman grafik transaksi per status Gambar 4. :
- Pada Controller
La pora n
function trx {
Jika Tombol submit pada proses menampilkan data pesanan per status if _POST {
data=this-order_m-lap_by_statusthis-input-poststatus; if data {
this-table-set_headingNo Pesanan,Tanggal Pesan,Email User,Total,Status; foreach data as q {
ongkir = this-hitung_ongkirq-tot_berat, q-ongkir; total=q-subtotal + ongkir;
this-table-add_rowanchormanajerlaporandetail_pesanan.q-id_pesanan, q-id_pesanan, q-tgl_pesan,q-email,total,q-nama_status;
} this-table-set_templatethis-tmpl;
this-data-tabel=this-table-generate; } else
this-data-tabel=Tidak ada Pesanan dengan status yang dimaksud; }
this-data-stok = this-grafik_trx; this-data-stat=this-order_m-get_status;
this-data-tengah=manajertengahtrx;
this-load-viewmanajermanajer, this-data; }
Fungsi menampilkan grafik menggunakan library fusion chart
function grafik_trx {
graph_swfFile = this-config-itembase_url.publicChartsFCF_Column2D.swf ; graph_caption = Grafik Transaksi per status Bulan Ini ;
graph_title = Stok per Kategori Hari ini ; graph_width = 450 ;
graph_height = 250 ; data=this-grafik-grafik_status;
i=0; foreach data as y {
yrrData[i][1] = y-nama_status; yrrData[i][2] = y-jml;
i++; }
commit to user
74
strXML =
graph caption=.graph_caption.
formatNumberScale=0 decimalPrecision=0;
foreach yrrData as yrSubData { strXML .= set name= . yrSubData[1] . value= . yrSubData[2] .
color=.getFCColor. ; } strXML .= graph;
chart2=renderChartgraph_swfFile, graph_title, strXML, div , graph_width, graph_height;
return chart2; }
- Pada Model
Gra fik
dan
Order_m
function grafik_status {
query=this-db-queryselect ,count as jml from pesanan inner join ket_status on ket_status.id_status = pesanan.status where tgl_pesan Like -.datem.- group
by status; return query-result;
} function get_status {
return this-db-getket_status-result; }
Query untuk menampilkan daftar pesanan berdasarkan status yang dipilih
function lap_by_statusstatus {
this-db-selectpesanan.id_pesanan, tgl_pesan,
email,nama_status, select
sumjmlharga as
subtotal from
detail_pesanan where
detail_pesanan.id_pesanan =
pesanan.id_pesanan as
subtotal, select
sumjmlberat as subtotal from detail_pesanan where detail_pesanan.id_pesanan = pesanan.id_pesanan as tot_berat, ongkir;
this-db-frompesanan; this-db-joinmember,member.id_member=pesanan.id_member;
this-db-joinkurir,kurir.id_kurir = pesanan.id_kurir; this-db-joinalamat,alamat.id_alamat = pesanan.id_alamat;
this-db-joinket_status,ket_status.id_status=pesanan.status; this-db-joindetail_pesanan,detail_pesanan.id_pesanan=pesanan.id_pesanan;
this-db-wherestatus,status;
return this-db-get-result; }
commit to user
75
4.2 Analisa