vehicle added
This commit is contained in:
parent
a72814e377
commit
5dde392e10
@ -9,6 +9,7 @@ type Client struct {
|
||||
gorm.Model
|
||||
Bonuse Bonuse `json:"bonus_id"`
|
||||
Name string `json:"name"`
|
||||
Vehicles []Vehicle `json:"vehicles"`
|
||||
}
|
||||
|
||||
func (client *Client) CreateClient() map[string]interface{} {
|
||||
|
66
internal/models/vehicle.go
Normal file
66
internal/models/vehicle.go
Normal file
@ -0,0 +1,66 @@
|
||||
package models
|
||||
|
||||
import (
|
||||
u "gocommunity.ru/workshop/internal/utils"
|
||||
"fmt"
|
||||
"github.com/jinzhu/gorm"
|
||||
)
|
||||
|
||||
type Vehicle struct {
|
||||
gorm.Model
|
||||
ClientId int `json:"client_id"`
|
||||
Brand string `json:"brand"`
|
||||
Color string `json:"color"`
|
||||
}
|
||||
|
||||
func (vehicle *Vehicle) ValidateVehicle() (map[string]interface{}, bool) {
|
||||
|
||||
if vehicle.Brand == "" {
|
||||
return u.Message(false, "Name cannot be empty!"), false
|
||||
}
|
||||
|
||||
if vehicle.Color == "" {
|
||||
return u.Message(false, "Phone number cannot be empty!"), false
|
||||
}
|
||||
|
||||
if vehicle.ClientId <= 0 {
|
||||
return u.Message(false, "User not found!"), false
|
||||
}
|
||||
|
||||
return u.Message(true, "success"), true
|
||||
}
|
||||
|
||||
func (vehicle *Vehicle) CreateVehicle() map[string]interface{} {
|
||||
|
||||
if response, ok := vehicle.ValidateVehicle(); !ok {
|
||||
return response
|
||||
}
|
||||
|
||||
GetDB().Create(vehicle)
|
||||
|
||||
resp := u.Message(true, "success")
|
||||
resp["vehicle"] = vehicle
|
||||
return resp
|
||||
}
|
||||
|
||||
func Getvehicle(id uint) *Vehicle {
|
||||
|
||||
vehicle := &Vehicle{}
|
||||
err := GetDB().Table("vehicles").Where("id = ?", id).First(vehicle).Error
|
||||
if err != nil {
|
||||
return nil
|
||||
}
|
||||
return vehicle
|
||||
}
|
||||
|
||||
func Getvehicles(user uint) []*Vehicle {
|
||||
|
||||
vehiclesSlice := make([]*Vehicle, 0)
|
||||
err := GetDB().Table("vehicles").Where("user_id = ?", user).Find(&vehiclesSlice).Error
|
||||
if err != nil {
|
||||
fmt.Println(err)
|
||||
return nil
|
||||
}
|
||||
|
||||
return vehiclesSlice
|
||||
}
|
Loading…
Reference in New Issue
Block a user