50 lines
1.0 KiB
Go
50 lines
1.0 KiB
Go
package mock
|
|
|
|
import (
|
|
"fmt"
|
|
|
|
"git.proximination.com/pclatihan/wstempl/model"
|
|
"github.com/brianvoe/gofakeit/v7"
|
|
)
|
|
|
|
type MockV2 struct{}
|
|
|
|
func NewMockV2() *MockV2 {
|
|
return &MockV2{}
|
|
}
|
|
|
|
func (m MockV2) GetBarang(nama string) (model.Barang, error) {
|
|
model := model.Barang{
|
|
Nama: nama,
|
|
Merk: gofakeit.Name(),
|
|
Panjang: gofakeit.Numerify("#"),
|
|
Lebar: gofakeit.Numerify("#"),
|
|
Tinggi: gofakeit.Numerify("#"),
|
|
Unit: gofakeit.AppName(),
|
|
Status: gofakeit.RandomString([]string{"Sehat", "Rusak", "Dicuri Orang"}),
|
|
}
|
|
return model, nil
|
|
}
|
|
|
|
func (m MockV2) GetDaftarBarang() (model.DaftarBarang, error) {
|
|
daftar := model.DaftarBarang{
|
|
Items: DaftarBoongan(25),
|
|
}
|
|
return daftar, nil
|
|
}
|
|
|
|
func DaftarBoongan(num int) []model.BarangDalamList {
|
|
result := []model.BarangDalamList{}
|
|
|
|
for i := 0; i < num; i++ {
|
|
nama := gofakeit.Word()
|
|
data := model.BarangDalamList{
|
|
Nama: nama,
|
|
Merk: gofakeit.ProductCategory(),
|
|
Url: fmt.Sprintf("barang/%s", nama),
|
|
}
|
|
result = append(result, data)
|
|
}
|
|
return result
|
|
}
|