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

     1  package message
     2  
     3  import "github.com/kysion/base-library/utility/enum"
     4  
     5  // StateEnum 状态:0未读,1已读
     6  type StateEnum enum.IEnumCode[int]
     7  
     8  type state struct {
     9  	UnRead StateEnum
    10  	Readed StateEnum
    11  }
    12  
    13  var State = state{
    14  	UnRead: enum.New[StateEnum](0, "未读"),
    15  	Readed: enum.New[StateEnum](1, "已读"),
    16  }
    17  
    18  func (e state) New(code int) StateEnum {
    19  	if code == State.UnRead.Code() {
    20  		return State.UnRead
    21  	}
    22  	if (code & State.Readed.Code()) == State.Readed.Code() {
    23  		return State.Readed
    24  	}
    25  
    26  	panic("Message.Type.New: error")
    27  }