permission.go 1.8 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253
  1. /*
  2. * @description: 权限相关
  3. * @Author: CP
  4. * @Date: 2020-12-25 14:58:52
  5. * @FilePath: \construction_management\web\viewmodels\permission.go
  6. */
  7. package viewmodels
  8. import validation "github.com/go-ozzo/ozzo-validation/v3"
  9. type Permission struct {
  10. BidsectionId string `form:"bidsectionId" json:"bidsectionId"`
  11. AccountId string `form:"accountId" json:"accountId"`
  12. ContractAdd int `form:"contractAdd" json:"contractAdd"`
  13. ContractDelete int `form:"contractDelete" json:"contractDelete"`
  14. ContractAccess int `form:"contractAccess" json:"contractAccess"`
  15. SafeAdd int `form:"safeAdd" json:"safeAdd"`
  16. SafeDelete int `form:"safeDelete" json:"safeDelete"`
  17. SafeAccess int `form:"safeAccess" json:"safeAccess"`
  18. QualityAdd int `form:"qualityAdd" json:"qualityAdd"`
  19. QualityDelete int `form:"qualityDelete" json:"qualityDelete"`
  20. QualityAccess int `form:"qualityAccess" json:"qualityAccess"`
  21. BidsectionType int `form:"bidsectionType" json:"bidsectionType"`
  22. }
  23. type PermissionView struct {
  24. ContractPermission string `from:"contract_permission" json:"contract"`
  25. QualityPermission string `from:"quality_permission" json:"quality"`
  26. SafePermission string `from:"safe_permission" json:"safe"`
  27. }
  28. func (l Permission) Validate() error {
  29. return validation.ValidateStruct(&l,
  30. validation.Field(&l.BidsectionId, validation.Required.Error("标段ID不能为空")),
  31. validation.Field(&l.AccountId, validation.Required.Error("账号ID不能为空")),
  32. )
  33. }
  34. func (l Permission) ValidateType() error {
  35. return validation.ValidateStruct(&l,
  36. validation.Field(&l.BidsectionType, validation.In(0, 1, 2).Error("未找到相关请求类型")),
  37. )
  38. }
  39. func (l Permission) ValidateSinglePermission() error {
  40. return validation.ValidateStruct(&l,
  41. validation.Field(&l.BidsectionId, validation.Required.Error("标段ID不能为空")),
  42. )
  43. }