errors.go 1.3 KB

123456789101112131415161718192021222324252627282930313233343536373839404142
  1. package qiyuesuosdk
  2. import (
  3. "errors"
  4. "strings"
  5. )
  6. var (
  7. // ErrCompanyNotRegistered 契约锁返回 code=2002002,表示 openCompanyId 尚未注册。
  8. ErrCompanyNotRegistered = errors.New("qiyuesuo: company not registered")
  9. // ErrInvalidParams 必填参数缺失。
  10. ErrInvalidParams = errors.New("qiyuesuo: invalid params")
  11. // ErrSealCreatePageUnavailable 制章页面链接未返回(可能未开通接口制章)。
  12. ErrSealCreatePageUnavailable = errors.New("qiyuesuo: seal create page unavailable")
  13. // ErrSealImageUnavailable 未获取到印章图片。
  14. ErrSealImageUnavailable = errors.New("qiyuesuo: seal image unavailable")
  15. // ErrSealNotFound 法人单位下未找到可用电子公章。
  16. ErrSealNotFound = errors.New("qiyuesuo: seal not found")
  17. )
  18. type apiResponse struct {
  19. Code int `json:"code"`
  20. Message string `json:"message"`
  21. }
  22. func (r apiResponse) err() error {
  23. if r.Message == "SUCCESS" || r.Message == "" {
  24. return nil
  25. }
  26. if r.Code == 2002002 {
  27. return ErrCompanyNotRegistered
  28. }
  29. return errors.New("qiyuesuo: " + r.Message)
  30. }
  31. // IsPersonalSignAuthRecordNotFound 个人静默签授权查询无记录(契约锁业务码,非系统故障)。
  32. func IsPersonalSignAuthRecordNotFound(err error) bool {
  33. if err == nil {
  34. return false
  35. }
  36. return strings.Contains(err.Error(), "未查询到静默签授权记录")
  37. }