| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110 |
- package entity
- import (
- "git.sxidc.com/go-framework/baize/framework/core/tag/check"
- "git.sxidc.com/go-tools/utils/strutils"
- "github.com/pkg/errors"
- "time"
- )
- const (
- FieldID = "ID"
- FieldTenantID = "TenantID"
- FieldCreateUserID = "CreateUserID"
- FieldLastUpdateUserID = "LastUpdateUserID"
- FieldCreatedTime = "CreatedTime"
- FieldLastUpdatedTime = "LastUpdatedTime"
- )
- const (
- ColumnID = "id"
- ColumnTenantID = "tenant_id"
- ColumnCreateUserID = "create_user_id"
- ColumnLastUpdateUserID = "last_update_user_id"
- ColumnCreatedTime = "created_time"
- ColumnLastUpdatedTime = "last_updated_time"
- )
- type TenantIDField struct {
- TenantID string `sqlmapping:"column:tenant_id;" sqlresult:"column:tenant_id;" check:"required,len32"`
- }
- type UserIDFields struct {
- CreateUserID string `sqlmapping:"column:create_user_id;" sqlresult:"column:create_user_id;" check:"required,len32"`
- LastUpdateUserID string `sqlmapping:"column:last_update_user_id;" sqlresult:"column:last_update_user_id;" check:"required,len32"`
- }
- type TimeFields struct {
- CreatedTime time.Time `sqlmapping:"column:created_time;" sqlresult:"column:created_time;"`
- LastUpdatedTime time.Time `sqlmapping:"column:last_updated_time;" sqlresult:"column:last_updated_time;"`
- }
- func CheckFieldID(entity Entity) error {
- return checkIDTypeField(entity, FieldID, "ID")
- }
- func CheckFieldTenantID(entity Entity) error {
- return checkIDTypeField(entity, FieldTenantID, "租户ID")
- }
- func CheckFieldCreateUserID(entity Entity) error {
- return checkIDTypeField(entity, FieldCreateUserID, "创建用户ID")
- }
- func CheckFieldLastUpdateUserID(entity Entity) error {
- return checkIDTypeField(entity, FieldLastUpdateUserID, "最近更新用户ID")
- }
- func CheckFieldIDResult(checkResult check.Result) error {
- return checkIDTypeResult(checkResult, FieldID, "ID")
- }
- func CheckFieldTenantIDResult(checkResult check.Result) error {
- return checkIDTypeResult(checkResult, FieldTenantID, "租户ID")
- }
- func CheckFieldCreateUserIDResult(checkResult check.Result) error {
- return checkIDTypeResult(checkResult, FieldCreateUserID, "创建用户ID")
- }
- func CheckFieldLastUpdateUserIDResult(checkResult check.Result) error {
- return checkIDTypeResult(checkResult, FieldLastUpdateUserID, "最近更新用户ID")
- }
- func checkIDTypeField(entity Entity, fieldName string, fieldCNName string) error {
- checkResult := check.Struct(entity, map[string]string{
- fieldName: entity.DomainCNName() + fieldCNName,
- })
- err := checkResult.CheckFields(fieldName)
- if err != nil {
- return errors.New(entity.DomainCNName() + ": " + err.Error())
- }
- return nil
- }
- func checkIDTypeResult(checkResult check.Result, domainCNName string, fieldName string) error {
- err := checkResult.CheckFields(fieldName)
- if err != nil {
- return errors.New(domainCNName + ": " + err.Error())
- }
- return nil
- }
- const (
- idLen = 32
- )
- func CheckIDTypeValue(domainCNName string, fieldCNName string, id string) error {
- if strutils.IsStringEmpty(id) {
- return errors.New(domainCNName + fieldCNName + "为空")
- }
- if len(id) != idLen {
- return errors.New(domainCNName + fieldCNName + "长度不正确")
- }
- return nil
- }
|