first commit
This commit is contained in:
@@ -0,0 +1,87 @@
|
||||
package scripts
|
||||
|
||||
import (
|
||||
"fmt"
|
||||
"log"
|
||||
|
||||
"backendcareit/database"
|
||||
)
|
||||
|
||||
func CheckAdmin() {
|
||||
// Nyambungin ke database
|
||||
db, err := database.KonekDB()
|
||||
if err != nil {
|
||||
log.Fatalf("Gagal koneksi database: %v", err)
|
||||
}
|
||||
|
||||
// Set koneksi database
|
||||
database.DB = db
|
||||
|
||||
// Cek data admin
|
||||
type AdminRuangan struct {
|
||||
ID_Admin int `gorm:"column:ID_Admin"`
|
||||
Nama_Admin string `gorm:"column:Nama_Admin"`
|
||||
Password string `gorm:"column:Password"`
|
||||
ID_Ruangan *int `gorm:"column:ID_Ruangan"`
|
||||
}
|
||||
var admins []AdminRuangan
|
||||
|
||||
// Ambil semua admin
|
||||
result := db.Table("admin_ruangan").Find(&admins)
|
||||
if result.Error != nil {
|
||||
log.Fatalf("Gagal query admin: %v", result.Error)
|
||||
}
|
||||
|
||||
fmt.Printf("Total admin ditemukan: %d\n\n", len(admins))
|
||||
|
||||
if len(admins) == 0 {
|
||||
fmt.Println("⚠️ Tidak ada data admin di database!")
|
||||
fmt.Println("\nJalankan script insert_admin.go untuk menambahkan data admin:")
|
||||
fmt.Println(" go run scripts/insert_admin.go")
|
||||
return
|
||||
}
|
||||
|
||||
// Tampilin semua admin
|
||||
for i, admin := range admins {
|
||||
fmt.Printf("Admin #%d:\n", i+1)
|
||||
fmt.Printf(" ID_Admin: %d\n", admin.ID_Admin)
|
||||
fmt.Printf(" Nama_Admin: '%s'\n", admin.Nama_Admin)
|
||||
fmt.Printf(" Password: '%s' (length: %d)\n", admin.Password, len(admin.Password))
|
||||
if admin.ID_Ruangan != nil {
|
||||
fmt.Printf(" ID_Ruangan: %d\n", *admin.ID_Ruangan)
|
||||
} else {
|
||||
fmt.Printf(" ID_Ruangan: NULL\n")
|
||||
}
|
||||
fmt.Println()
|
||||
}
|
||||
|
||||
// Test query buat username 'admin'
|
||||
var admin AdminRuangan
|
||||
err = db.Table("admin_ruangan").
|
||||
Where("Nama_Admin = ?", "admin").
|
||||
First(&admin).Error
|
||||
|
||||
if err != nil {
|
||||
fmt.Println("❌ Query dengan Nama_Admin = 'admin' GAGAL")
|
||||
fmt.Printf(" Error: %v\n", err)
|
||||
} else {
|
||||
fmt.Println("✅ Query dengan Nama_Admin = 'admin' BERHASIL")
|
||||
fmt.Printf(" ID_Admin: %d\n", admin.ID_Admin)
|
||||
fmt.Printf(" Nama_Admin: '%s'\n", admin.Nama_Admin)
|
||||
fmt.Printf(" Password: '%s'\n", admin.Password)
|
||||
}
|
||||
|
||||
// Test query case-insensitive
|
||||
err = db.Table("admin_ruangan").
|
||||
Where("LOWER(Nama_Admin) = LOWER(?)", "admin").
|
||||
First(&admin).Error
|
||||
|
||||
if err != nil {
|
||||
fmt.Println("❌ Query case-insensitive GAGAL")
|
||||
fmt.Printf(" Error: %v\n", err)
|
||||
} else {
|
||||
fmt.Println("✅ Query case-insensitive BERHASIL")
|
||||
fmt.Printf(" ID_Admin: %d\n", admin.ID_Admin)
|
||||
fmt.Printf(" Nama_Admin: '%s'\n", admin.Nama_Admin)
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,47 @@
|
||||
package scripts
|
||||
|
||||
import (
|
||||
"fmt"
|
||||
"log"
|
||||
|
||||
"backendcareit/database"
|
||||
)
|
||||
|
||||
func main() {
|
||||
// Nyambungin ke database
|
||||
db, err := database.KonekDB()
|
||||
if err != nil {
|
||||
log.Fatalf("Gagal koneksi database: %v", err)
|
||||
}
|
||||
|
||||
// Set koneksi database
|
||||
database.DB = db
|
||||
|
||||
// Cek admin udah ada atau belum
|
||||
var count int64
|
||||
db.Table("admin_ruangan").Where("Nama_Admin = ?", "admin").Count(&count)
|
||||
|
||||
if count > 0 {
|
||||
fmt.Println("Admin dengan username 'admin' sudah ada di database.")
|
||||
fmt.Println("Ngapus admin yang lama...")
|
||||
db.Table("admin_ruangan").Where("Nama_Admin = ?", "admin").Delete(nil)
|
||||
}
|
||||
|
||||
// Masukin admin yang baru
|
||||
result := db.Exec(`
|
||||
INSERT INTO admin_ruangan (Nama_Admin, Password, ID_Ruangan)
|
||||
VALUES (?, ?, ?)
|
||||
`, "admin", "admin123", nil)
|
||||
|
||||
if result.Error != nil {
|
||||
log.Fatalf("Gagal insert admin: %v", result.Error)
|
||||
}
|
||||
|
||||
if result.RowsAffected > 0 {
|
||||
fmt.Println("✓ Data admin berhasil ditambahkan!")
|
||||
fmt.Println(" Username: admin")
|
||||
fmt.Println(" Password: admin123")
|
||||
} else {
|
||||
fmt.Println("Tidak ada data yang ditambahkan.")
|
||||
}
|
||||
}
|
||||
Reference in New Issue
Block a user