FP PBKK
Anggota Kelompok :
Buatlah deskripsi studi kasus aplikasi ditinjau dari MVC nya(individu)
Aplikasi kami adalah aplikasi yang berupa aplikasi web yang terintegrasi dengan Google Apps Script yang bisa menampilkan data dari spreadsheet ke view website, meng-insert data dari view website ke spreadsheet, dan bisa melakukan read/menampilkan data sesuai dengan search term user dan bisa diurutkan berdasarkan kolom
Model:
Satu sheet (table) yang bernama Produk. Atribut: ID Produk, Nama Produk, Deskripsi Produk, Kategori Produk, Negara Asal, Kondisi Produk (baru atau bekas), Harga, Stok, dan Timestamp ketika produk di-insert atau di-update.
View:
Insert view (memasukkan data produk)
List view (lihat semua data produk, juga mengandung fungsionalitas delete)
Search view (lihat semua data produk yang sesuai dengan search terms)
Edit view (memodifikasi data produk)
Controller:
InsertController: menambahkan data produk baru ke spreadsheet
ListController: menampilkan seluruh data produk
SearchController: menampilkan data produk sesuai dengan pencarian
EditController: meminta data baru kepada pengguna dan mengubah data di sheets
DeleteController: menghapus record data yang dipilih
Buatlah rancangan umum arsitektur atau fitur yang ada dalam aplikasi (individu)
Website kami terdiri dari satu tampilan utama yang mana mengandung berbagai view yang disebutkan di atas. Aplikasi dibuat demikian agar seorang pengguna dapat dengan mudah melakukan semua fungsionalitas CRUD dengan cepat dan tanpa distraksi.
Fitur-fitur yang ada adalah aplikasi kami meliputi:
Create
Read
Update
Delete
Rancang desain databasenya (individu)
Buat desain front end (individu)
Tentukan Control yang akan menghandle logika back end. (individu)
1. Fungsi Create Record untuk membuat record baru :
function createRecord(values) {
try {
let valueRange = Sheets.newRowData();
valueRange.values = values;
let appendRequest = Sheets.newAppendCellsRequest();
appendRequest.sheetId = SPREADSHEETID;
appendRequest.rows = valueRange;
Sheets.Spreadsheets.Values.append(valueRange, SPREADSHEETID, DATARANGE,
{ valueInputOption: "RAW" });
} catch (err) {
console.log('Failed with error %s', err.message);
}
}
2. Fungsi Read Record untuk membaca record yang ada :
function readRecord(range) {
try {
let result = Sheets.Spreadsheets.Values.get(SPREADSHEETID, range);
return result.values;
} catch (err) {
console.log('Failed with error %s', err.message);
}
}
3. Fungsi Update Record untuk mengupdate record yang ada :
function updateRecord(values, updateRange) {
try {
let valueRange = Sheets.newValueRange();
valueRange.values = values;
Sheets.Spreadsheets.Values.update(valueRange, SPREADSHEETID, updateRange,
{ valueInputOption: "RAW" });
} catch (err) {
console.log('Failed with error %s', err.message);
}
}
4. Fungsi Delete Record untuk delete record yang ada :
function deleteRecord(id) {
const rowToDelete = getRowIndexById(id);
const deleteRequest = {
"deleteDimension": {
"range": {
"sheetId": DATASHEETID,
"dimension": "ROWS",
"startIndex": rowToDelete,
"endIndex": rowToDelete + 1
}
}
};
Sheets.Spreadsheets.batchUpdate({ "requests": [deleteRequest] }, SPREADSHEETID);
return getLastTenRecords();
}
5. Fungsi Search Record untuk mencari record dari record-record yang ada :
//SEARCH RECORDS
function handleSearchForm(formObject) {
$('#spinnerModal').modal('show');
google.script.run.withSuccessHandler(createTable).searchRecords(formObject);
document.getElementById("search-form").reset();
}
Implementasikan rancangan yang sudah dibuat menggunakan Framework NET, CI ataupun Framework Google (pilih salah satu - bisa kelompok maks 3)
Deploy : Deploy
Appscript : Appscript
Sheet : Sheet
Buat video presentasinya, upload di youtube, dan didokumentasikan di blog.
Comments
Post a Comment