forked from wuhan-support/backend
-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathtypes.go
55 lines (48 loc) · 2.41 KB
/
types.go
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
package main
import (
"github.com/jinzhu/gorm"
"gopkg.in/go-playground/validator.v9"
)
type GeneralResponse struct {
Message string `json:"message"`
}
type ReportRequest struct {
Type string `json:"type" validate:"required"`
Cause string `json:"cause" validate:"required"`
Content string `json:"content" validate:"required"`
}
type CustomValidator struct {
validator *validator.Validate
}
type SubmissionSupply struct {
gorm.Model
Name string `json:"name,omitempty" gorm:"" validate:"required"`
Need uint `json:"need,omitempty" gorm:"" validate:"required"`
Daily uint `json:"daily,omitempty" gorm:"" validate:"required"`
Have uint `json:"have,omitempty" gorm:"" validate:"required"`
Requirements string `json:"requirements,omitempty" gorm:"" validate:"required"`
}
type Submission struct {
//ID int `json:"id" gorm:"primary_key;not null;auto_increment"`
gorm.Model
Name string `json:"name,omitempty" gorm:"" validate:"required,max=100"`
Province string `json:"province,omitempty" gorm:"" validate:"required"`
City string `json:"city,omitempty" gorm:"" validate:"required"`
Suburb string `json:"suburb,omitempty" gorm:"" validate:"required"`
Address string `json:"address,omitempty" gorm:"" validate:"required"`
Patients int `json:"patients,omitempty" gorm:"" validate:""`
Beds int `json:"beds,omitempty" gorm:"" validate:""`
ContactName string `json:"contactName,omitempty" gorm:"" validate:""`
ContactOrg string `json:"contactOrg,omitempty" gorm:"" validate:"required"`
ContactPhone string `json:"contactPhone,omitempty" gorm:"" validate:"required"`
Supplies []SubmissionSupply `json:"supplies,omitempty" gorm:"" validate:"required"`
Pathways string `json:"pathways,omitempty" gorm:"" validate:"required"`
LogisticStatus string `json:"logisticStatus,omitempty" gorm:"" validate:""`
Source string `json:"source,omitempty" gorm:"" validate:""`
Proof string `json:"proof,omitempty" gorm:"" validate:""`
Notes string `json:"notes,omitempty" gorm:"type:text" validate:""`
}
type GetSubmissionsRequest struct {
Page int `json:"page" validate:"required"`
Limit int `json:"limit" validate:"required"`
}