Masuk ke folder dalam root XAMPP dengan direktori /htdocs/ . Kemudian klik kanan folder htdocs, dan buka pada windows terminal seperti yang ditandai pada tampilan berikut:
ketikan pada terminal yang terbuka composer create-project –prefer-dist laravel/laravel:^7.0 nama-blog ganti nama-blog dengan nama file yang diinginkan. Ketika sudah selesai meng-install, pindah ke direktori yang dibuat sebelumnya dimana saya buat “nama-blog” dengan cd nama-blog. Berikutnya pada terminal tersebut ketikan composer require laravel/ui:^2.4 untuk membantu layout dari laravel. Setelah selesai, jalankan php artisan ui vue –auth , Kemudian akan diminta melakukan npm install dan npm run dev . Jika mengalami error, install node.js pada link berikut ini: node.js. Setelah menginstall, restart komputer/laptop. Setelah melakukan restart, bukan kembali terminal dan PASTIKAN berada didalam folder yang tadi dibuat dimana ditutorial ini bernama nama-blog. Jalankan npm install ; npm run dev pada terminal. Untuk mengetes, silahkan jalankan php artisan serve maka akan terdapat link yang dapat ditekan dengan ctrl+klik pada link http yang dikirimkan. Maka tampilan web akan muncul pada browser.
Pada pertemuan kali ini saya akan menambah 2 halaman baru pada web ini, Yaitu halaman About Us dan Contact Us.nb : klik foto jika terlihat kurang jelas
Pertama-tama kita harus menambahkan route about dan contact pada file routes.php pada folder config
2. Setelah menambahkan route pada file routes.php langkah selanjutnya adalah membuat function about dan contact pada file Welcome.php
Dan tentu saja kita perlu membuat 2 file yang bernama about.php dan contact.php pada folder views
Setelah menambahkan langkah langkah diatas maka hasil dari kerja kita diatas maka akan jadi deh
1. Sebutkan aplikasi POS yang biasa dipakai di masyarakat?
Salah satu aplikasi POS yang biasa digunakan di masyarakat adalah Moka POS. Moka adalah perusahaan rintisan Software as a Service dari Indonesia dan bergerak di ranah aplikasi kasir. Produknya mengakomodir 3 tipe bisnis utama, yaitu makanan dan minuman, ritel, dan layanan. Jadi, Moka Pos sendiri biasa digunakan terlebih pada restoran dan cafe-cafe.
2. Fitur apa saja yang ada di dalam aplikasi tersebut , buatlah screenshotnya dan jelaskan?
Moka POS, banyak outlet Jika kita memiliki banyak usaha (outlet), tak perlu device yang berbeda- beda per usahanya untuk masalah POS. Moka POS dapat menyimpan beberapa data login usaha yang pastinya memudahkan kelancaran bisnis.
Pemilihan Berbagai PembayaranDi Moka POS, kita bisa melakukan pembagian beberapa metode pembayaran, seperti pembayaran via E-Wallet, kartu kredit, kartu debit, dll. Jadi, setiap transaksi akan dicatat metode pembayarannya.
Table ManagementFitur table management memudahkan untuk mengatur serta melihat posisi-posisi meja (Food n Beverages Business), serta mengatur apakah sebuah meja sedang ditempati atau tidak, serta bisa diberi waktu/lama seorang pelanggan berada di meja tersebut.
Memiliki Akun Role Berbeda-bedaSetiap akun yang dapat mengakses sebuah POS dari usaha kita bisa diberikan role dan hak yang berbeda-beda sesuai kebutuhan, seperti akses untuk melihat, akses untuk mengubah, dll.
Mengirim receipts via email Moka POS juga bisa mengirim setiap receipts transaksi yang terjadi pada usaha kita via email yang telah di daftarkan sebelumnya, atau pun bisa juga via SMS.
Bisa connect >1 perangkat Selain itu, Moka POS bisa digunakan oleh lebih dari 1 orang (perangkat) dalam waktu yang bersamaan tanpa mengganggu aktivitas antar pengguna nya.
3. Buat rancangan UI dan navigasi aplikasi POS mu sendiri?
4. Dengan menggunakan framework .NET implementasikan aplikasi POS yang dirancang!
MVVM adalah sebuah variasi dari MVC yang memisahkan view menjadi dua, yaitu view dan view model yang terhubung melalui data binding.
Pada tugas 4 ini, saya akan mencoba untuk menerapkan WVVM dengan menggunakan WPF (Windows Presantation Foundation)
1. Buat proyek baru di Visual Studio 2019, pilih jenis proyek Visual C#, Windows, WPF Application untuk membuat aplikasi desktop yang memakai WPF.
2. Buat sebuah model baru dengan men-klik kanan nama proyek dan memilih Add, Class. Beri nama model ini sebagai ItemPenjualan yang kode programnya terlihat seperti berikut ini:
3. Berikutnya, ubah kode program di MainWindow.xaml
4. Lalu, buat sebuah class baru dengan nama ItemPenjualanViewModel
5. Langkah berikutnya, kita perlu menghubungkan antara view, view model dan model.
6. Lalu ubah MainWindow.xaml untuk binding
7. Selanjutnya, kita perlu menyimpan model ke database, yang pertama dilakukan adalah menginstall MySQL Connector versi 6.8.7
8. Setelah itu, kita perlu menambahkan referensi, dengan cara klik kanan pada Reference > Add Reference > Pilih MySql.Data.Entity For EF 6 & System.ComponentModel.DataAnnotations .
9. Lalu pada Nuget Manager, install EntityFramework
10. Buat database, lalu ubah code pada App.config sesuai dengan nama database, username, dan password
11. Tambahkan sebuah atribut di model agar nilai property Id dihasilkan secara otomatis oleh database (melalui auto number) 12. Lalu buat class LatihanContext 13. Buat kelas MyHistoryContext
14. Ubah code pada ItemPenjualanViewModel untuk menambahkan SimpanCommand
15. Jalankan perintah Enable-Migrations pada Package Manager Console
16. Lalu jalankan Add-Migration, dan setelah itu Update Database
17.
Masih terjadi kendala saat akan menyimpan ke database.
Halo teman-teman Hari ini kita akan implementasi bikin aplikasi Currency Converter sederhana .NET Framework C#. Kita bakal bikin dua versi, statis dan dinamis menggunakan Currency Converter API
1. Membuat Project Baru
Pertama, buka Visual Studio Community dan membuat sebuah project baru dengan form “Windows Forms Application” dengan bahasa pemrograman C#
2. Buat Design Dari Currency Converter
Pada tahap berikutnya langkah yang harus dilakukan adalah membuat design dari Currency Converter yang kita inginkan dengan cara menarik fitur yang ada di bagian toolbox.
3. Source Code
using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using System.Windows.Forms;
using System.Globalization;
namespace CurrencyConverter
{
public partial class Form1 : Form
{
public Form1()
{
InitializeComponent();
}
private void label1_Click(object sender, EventArgs e)
{
}
private void comboBox1_SelectedIndexChanged(object sender, EventArgs e)
{
}
private void label2_Click(object sender, EventArgs e)
{
}
private void Form1_Load(object sender, EventArgs e)
{
}
private void comboBox2_SelectedIndexChanged(object sender, EventArgs e)
{
}
private void button1_Click(object sender, EventArgs e)
{
Convert();
}
private void Convert()
{
var value1 = double.Parse(this.textBox1.Text);
double value2 = value1;
string from = this.comboBox2.SelectedItem.ToString().ToLower();
string to = this.comboBox1.SelectedItem.ToString().ToLower();
if (from == "eur")
{
value2 = value1 * GetCurrencyRateInEuro(to);
}
if (to == "eur")
{
value2 = value1 / GetCurrencyRateInEuro(from);
}
float toRate = GetCurrencyRateInEuro(to);
float fromRate = GetCurrencyRateInEuro(from);
// Calculate exchange rate From A to B
value2 = (value1 * toRate) / fromRate;
if (from == to) value2 = value1;
this.label3.Text = Math.Round(value2, 6) + "";
}
/// <summary>
/// Gets all available currency tags
/// </summary>
public static string[] GetCurrencyTags()
{
// Hardcoded currency tags neccesairy to parse the ecb xml's
return new string[] {"eur", "usd", "jpy", "bgn", "czk", "dkk", "gbp", "huf", "ltl", "lvl"
, "pln", "ron", "sek", "chf", "nok", "hrk", "rub", "try", "aud", "brl", "cad", "cny", "hkd", "idr", "ils"
, "inr", "krw", "mxn", "myr", "nzd", "php", "sgd", "zar"};
}
/// <summary>
/// Get currency exchange rate in euro's
/// </summary>
public static float GetCurrencyRateInEuro(string currency)
{
if (currency.ToLower() == "")
throw new ArgumentException("Invalid Argument! currency parameter cannot be empty!");
if (currency.ToLower() == "eur")
throw new ArgumentException("Invalid Argument! Cannot get exchange rate from EURO to EURO");
try
{
// Create with currency parameter, a valid RSS url to ECB euro exchange rate feed
string rssUrl = string.Concat("http://www.ecb.int/rss/fxref-", currency.ToLower() + ".html");
// Create & Load New Xml Document
System.Xml.XmlDocument doc = new System.Xml.XmlDocument();
doc.Load(rssUrl);
// Create XmlNamespaceManager for handling XML namespaces.
System.Xml.XmlNamespaceManager nsmgr = new System.Xml.XmlNamespaceManager(doc.NameTable);
nsmgr.AddNamespace("rdf", "http://purl.org/rss/1.0/");
nsmgr.AddNamespace("cb", "http://www.cbwiki.net/wiki/index.php/Specification_1.1");
// Get list of daily currency exchange rate between selected "currency" and the EURO
System.Xml.XmlNodeList nodeList = doc.SelectNodes("//rdf:item", nsmgr);
// Loop Through all XMLNODES with daily exchange rates
foreach (System.Xml.XmlNode node in nodeList)
{
// Create a CultureInfo, this is because EU and USA use different sepperators in float (, or .)
CultureInfo ci = (CultureInfo)CultureInfo.CurrentCulture.Clone();
ci.NumberFormat.CurrencyDecimalSeparator = ".";
try
{
// Get currency exchange rate with EURO from XMLNODE
float exchangeRate = float.Parse(
node.SelectSingleNode("//cb:statistics//cb:exchangeRate//cb:value", nsmgr).InnerText,
NumberStyles.Any,
ci);
return exchangeRate;
}
catch { }
}
// currency not parsed!!
// return default value
return 0;
}
catch
{
// currency not parsed!!
// return default value
return 0;
}
}
/// <summary>
/// Get The Exchange Rate Between 2 Currencies
/// </summary>
public static float GetExchangeRate(string from, string to, float amount = 1)
{
// If currency's are empty abort
if (from == null || to == null)
return 0;
// Convert Euro to Euro
if (from.ToLower() == "eur" && to.ToLower() == "eur")
return amount;
try
{
// First Get the exchange rate of both currencies in euro
float toRate = GetCurrencyRateInEuro(to);
float fromRate = GetCurrencyRateInEuro(from);
// Convert Between Euro to Other Currency
if (from.ToLower() == "eur")
{
return (amount * toRate);
}
else if (to.ToLower() == "eur")
{
return (amount / fromRate);
}
else
{
// Calculate non EURO exchange rates From A to B
return (amount * toRate) / fromRate;
}
}
catch { return 0; }
}
}
}
Download Visual Studio Installer. Pilih versi sesuai sistem operasi dan kebutuhan. Pada artikel ini saya akan menggunakan Visual Studio 2019 Community Edition.
Jalankan Visual Studion Installer kemudian pilih workload untuk .Net Framework kemudian install. Disini saya menginstall .NET Core cross-platform development dan .NET Destop Development.
Buka Visual Studio.
Create New Project dengan memilih Console Application menggunakan C#
Beri nama dan atur lokasi penyimpanan untuk aplikasi yang ingin kita buat.
Kemudian pilih target framework .NET Core 3.1 LTS kemudian create project.