github.com/SupenBysz/gf-admin-community@v0.7.4/sys_model/sys_enum/internal/invite/state.go (about)

     1  package invite
     2  
     3  import "github.com/kysion/base-library/utility/enum"
     4  
     5  // StateEnum 邀约状态: 0失效、1正常
     6  type StateEnum enum.IEnumCode[int]
     7  
     8  type inviteState struct {
     9  	Invalid StateEnum
    10  	Normal  StateEnum
    11  }
    12  
    13  var State = inviteState{
    14  	Invalid: enum.New[StateEnum](0, "失效"),
    15  	Normal:  enum.New[StateEnum](1, "正常"),
    16  }
    17  
    18  func (e inviteState) New(code int, description string) StateEnum {
    19  
    20  	if code == State.Normal.Code() {
    21  		return e.Normal
    22  	}
    23  
    24  	if (code & State.Invalid.Code()) == State.Invalid.Code() {
    25  		return e.Invalid
    26  	}
    27  
    28  	panic("Invite.State.New: error")
    29  }