Mba Devi Pengen Bikin Usaha Kecil Kecilan Yakni Jualan Cangkir Unik Kekinian Top Markotop Di Instagram dan Tiktok,
Alhamdulillah setelah 3 bulan berjalan bisninsnya laris manis, setiap hari bisa ada 1000 order cangkirNah Tapi Dia Pusing Banget
Nih Karena Setiap Harinya dia harus begadang ngurusin rekap penjualan, mana bonnya kadang ada yang lupa kecatat, kadang ada
yang salah kirim
karena itu dia minta tolong nih sama kalian buat bikinin blue print sistem cangkir UKTM ini yang nantinya bisa diimplementasi dan
menyelesaikan masalah mba Devi.
Berikut ini hasil wawancara sama Mba Devi terkait data data yang dibutuhkan/dihasilkan dalam membuat sistem produksi cangkir.
[Invoice Produksi]
Invoice Number : INV-73456
Kode Barang : GTX-1212
Nama Barang : Cangkir Gurame
Harga Barang : 20000
Jumlah : 12
Total : 240000
Tanggal Pesan : 12-11-2020
Penerima : Mas Anton
Alamat Penerima : Jalan Bunga no 24, Jakarta Barat
[Status Produksi]
Invoince Number : INV-73456
Status : [desain, konfirmasi, Cetak, Siap, Kirim, Sampai]
Catatan : Sudah disetujui oleh customer
Tanggal Masuk : 13-11-2020
Tanggal Produksi : 13-11-2020
Tanggal Seleai : 13-11-2020
[Pembayaran]
Invoice Number : INV-73456
Metode Bayar : Transfer [Transfer,CC,Shopee,Tokopedia]
Bukti Bayar : <File Foto>
Status : Lunas [Pending, Lunas, Batal]
Tanggal Bayar : 12-11-2020
Note:
1. Barang akan di produksi ketika pembayaran telah lunas
Pertanyaan:
1. Tolong bikin model database sederhannya;
2. Tolong bikin query pada service tersebut untuk:
a. melihat list list status dan invoice produksi
SELECT a.invoice_no,
a.total_item b. create, update, delete produksi
a.total_price, - INSERT:
a.created_at,
INSERT INTO invoice (item_id, invoice_no, total_item, total_price, receiver_name, receiver_address,
b.status AS production_status,
created_at, created_by)
b.request_date,
values (1, 'INV-73456', 12, 20000, 'Mas Anton', 'Jalan Bunga no 24, Jakarta Barat', NOW(), 'USER1');
b.production_date,
b.completed_date,
c.payment_method, - UPDATE
c.status AS payment_status UPDATE production_status SET status = ‘LUNAS’ WHERE invoice_id = ‘NV-73456’;
FROM invoice a -
JOIN production_status b DELETE
ON a.id = b.invoice_id
DELETE FROM production_status WHERE invoice_id = ‘NV-73456’;
JOIN payment c
ON a.id = c.invoice_id;
3. Tolong bikin model REST API
sederhana pada service produksi untuk menunjang komunikasi antar service
Bisa dibagi menjadi beberapa service per entitas database (micro-service based).
1. Invoice Service
1. GET invoice List
Content-Type application/json
Headers Authorization: Bearer [token] Use jwt nad the payload is user_id
message string
total_item string
total_price string
receiver_name string
receiver_address string
production_status string
payment_method string
payment_status string
2. User service
1. GET User Detail
Content-Type application/json
Headers Authorization: Bearer [token] Use jwt nad the payload is user_id
message string
phone_number string
name string
date_of_birth string