add application number

This commit is contained in:
2026-03-16 01:56:50 +07:00
parent 3a30123096
commit 825d330056
11 changed files with 99 additions and 12 deletions
@@ -1,11 +1,34 @@
package models
import "fmt"
type Application struct {
Name string `json:"name"`
Name string `json:"name"`
Number string `json:"-"`
}
func NewApplication(name string) *Application {
return &Application{
func NewApplication(
name string,
opts ...ApplicationOpt,
) *Application {
application := &Application{
Name: name,
}
for _, opt := range opts {
opt(application)
}
return application
}
type ApplicationOpt func(application *Application) error
func WithApplicationNumber(number int) ApplicationOpt {
return func(application *Application) error {
application.SetNumber(number)
return nil
}
}
func (a *Application) SetNumber(number int) {
a.Number = fmt.Sprintf("%d", number)
}