Categorygithub.com/Ayyasy123/Assignment_Day_26
modulepackage
0.0.0-20241123154204-262b7a624cf4
Repository: https://github.com/ayyasy123/assignment_day_26.git
Documentation: pkg.go.dev

# README

Assignment_Day_26

Deskripsi Proyek

Sistem backend untuk manajemen inventaris yang mencakup pengelolaan produk, inventaris, dan pesanan. Proyek ini dibangun menggunakan Golang dengan framework Gin, serta mendukung operasi CRUD melalui RESTful API.

Langkah-langkah Pengaturan

1. Persiapan Lingkungan

Pastikan Anda memiliki:

  • Go 1.19 atau versi terbaru.
  • MySQL (atau database relasional lain yang kompatibel).
  • Alat pengujian API seperti Postman atau Curl.

2. Menyiapkan Database

  1. Buat database baru di MySQL:

    CREATE DATABASE assignment_day_26;
    
  2. Import file ddl.sql untuk membuat tabel dan memasukkan data awal:

    mysql -u [username] -p assignment_day_26 < ddl.sql
    

3. Mengonfigurasi Proyek

  1. Pastikan koneksi ke database disesuaikan. Tambahkan informasi koneksi di file konfigurasi (misalnya config/db.go) atau langsung di main.go:

    dsn := "username:password@tcp(localhost:3306)/assignment_day_26?parseTime=true"
    db, err := gorm.Open(mysql.Open(dsn), &gorm.Config{})
    if err != nil {
        log.Fatalf("failed to connect database: %v", err)
    }
    
  2. Sesuaikan file konfigurasi jika Anda menggunakan lingkungan yang berbeda (contoh: .env).

4. Menjalankan Proyek

  1. Instal dependensi:

    go mod tidy
    
  2. Jalankan server:

    go run main.go
    
  3. Akses server:

    • API akan berjalan di http://localhost:8080.
    • Gunakan Postman atau Curl untuk mengakses endpoint yang tersedia.

5. Endpoint

MethodEndpointDeskripsi
Produk
POST/productMembuat produk baru
GET/productMembaca daftar semua produk
GET/product/:idMembaca detail produk berdasarkan ID
PUT/product/:idMemperbarui produk berdasarkan ID
DELETE/product/:idMenghapus produk berdasarkan ID
POST/upload-product-imageMengunggah gambar produk
POST/upload-product-image/:idMengunggah gambar produk berdasarkan ID
GET/download-product-image/:idMengunduh gambar produk berdasarkan ID
Inventaris
POST/inventoryMembuat inventaris baru
GET/inventory/:idMembaca detail inventaris berdasarkan ID
PUT/inventory/:idMemperbarui inventaris berdasarkan ID
Pesanan
POST/orderMembuat pesanan baru
GET/order/:idMembaca detail pesanan berdasarkan ID

# Packages

No description provided by the author
No description provided by the author
No description provided by the author