package common import "errors" const ( ForeignUserIDStart = 10000000 UserSourceLocal = "local" UserSourceSynced = "synced" ) func IsSyncedUser(source string, id int) bool { return source == UserSourceSynced && id > 0 && id < ForeignUserIDStart } func IsLocalUser(source string, id int) bool { if source == UserSourceLocal { return true } if id >= ForeignUserIDStart { return true } return false } func ValidateUserSource(source string, id int) error { if source == UserSourceSynced && id >= ForeignUserIDStart { return errors.New("synced 用户 ID 必须小于 1千万") } if source == UserSourceLocal && id > 0 && id < ForeignUserIDStart { return errors.New("local 用户 ID 必须大于等于 1千万") } return nil }