34 lines
775 B
Go
34 lines
775 B
Go
package repository
|
|
|
|
import (
|
|
"BE-MiniERP/modules/inventory/models"
|
|
|
|
"gorm.io/gorm"
|
|
)
|
|
|
|
type WarehouseRepository struct {
|
|
DB *gorm.DB
|
|
}
|
|
|
|
func NewWarehouseRepository(db *gorm.DB) *WarehouseRepository {
|
|
return &WarehouseRepository{DB: db}
|
|
}
|
|
|
|
func (r *WarehouseRepository) FindAll() ([]models.Warehouse, error) {
|
|
var warehouses []models.Warehouse
|
|
err := r.DB.Find(&warehouses).Error
|
|
return warehouses, err
|
|
}
|
|
|
|
func (r *WarehouseRepository) Create(wh *models.Warehouse) error {
|
|
return r.DB.Create(wh).Error
|
|
}
|
|
|
|
func (r *WarehouseRepository) Update(id uint, wh *models.Warehouse) error {
|
|
return r.DB.Model(&models.Warehouse{}).Where("id = ?", id).Updates(wh).Error
|
|
}
|
|
|
|
func (r *WarehouseRepository) Delete(id uint) error {
|
|
return r.DB.Delete(&models.Warehouse{}, id).Error
|
|
}
|