feat: live module and jenkins pipeline to harbor deploy
This commit is contained in:
@@ -0,0 +1,24 @@
|
||||
package platformsetting
|
||||
|
||||
import (
|
||||
"context"
|
||||
kratoserrors "github.com/go-kratos/kratos/v3/errors"
|
||||
)
|
||||
|
||||
var ErrInvalid = kratoserrors.BadRequest("PLATFORM_SETTING_INVALID", "diamond rate must be between 0.01 and 1.00")
|
||||
|
||||
type Setting struct{ DiamondRateCents int64 }
|
||||
type Repo interface {
|
||||
Get(context.Context) (*Setting, error)
|
||||
Save(context.Context, *Setting) error
|
||||
}
|
||||
type Usecase struct{ repo Repo }
|
||||
|
||||
func NewUsecase(repo Repo) *Usecase { return &Usecase{repo: repo} }
|
||||
func (uc *Usecase) Get(ctx context.Context) (*Setting, error) { return uc.repo.Get(ctx) }
|
||||
func (uc *Usecase) Save(ctx context.Context, v *Setting) error {
|
||||
if v == nil || v.DiamondRateCents < 1 || v.DiamondRateCents > 100 {
|
||||
return ErrInvalid
|
||||
}
|
||||
return uc.repo.Save(ctx, v)
|
||||
}
|
||||
Reference in New Issue
Block a user