| 12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576777879 | package modelimport (	operationPb "kpt-tmr-group/proto/go/backend/operation"	"time")type SystemRole struct {	Id         int64                   `json:"id,omitempty"`	Name       string                  `json:"name,omitempty"`	Remarks    string                  `json:"remarks,omitempty"`	IsShow     operationPb.IsShow_Kind `json:"is_show,omitempty"`	CreateUser string                  `json:"create_user,omitempty"`	CreatedAt  int64                   `json:"created_at,omitempty"`	UpdatedAt  int64                   `json:"updated_at,omitempty"`}func (s *SystemRole) TableName() string {	return "system_role"}const (	LayoutTime = "2006-01-02 15:04:05"	LayoutDate = "20060102")func NewSystemRole(req *operationPb.AddRoleRequest) *SystemRole {	systemRole := &SystemRole{		Name:       req.Name,		Remarks:    req.Remarks,		IsShow:     operationPb.IsShow_OK,		CreateUser: req.CreateUser,	}	return systemRole}type SystemRoleSlice []*SystemRolefunc (s SystemRoleSlice) ToPB(groupPastureList map[int64][]*GroupPasture, systemMenuList map[int64][]*SystemMenu) []*operationPb.AddRoleRequest {	res := make([]*operationPb.AddRoleRequest, len(s))	for i, v := range s {		res[i] = &operationPb.AddRoleRequest{			Id:              uint32(v.Id),			Name:            v.Name,			Remarks:         v.Remarks,			CreateUser:      v.CreateUser,			IsShow:          v.IsShow,			CreatedAt:       uint32(v.CreatedAt),			CreatedAtFormat: time.Unix(v.CreatedAt, 0).Format(LayoutTime),		}		groupPasture, ok := groupPastureList[v.Id]		if ok {			for _, g := range groupPasture {				res[i].PastureList = append(res[i].PastureList, g.Name)				res[i].PastureId = append(res[i].PastureId, uint32(g.Id))			}		}		systemMenu, ok := systemMenuList[v.Id]		if ok {			for _, m := range systemMenu {				res[i].MenuList = append(res[i].MenuList, m.Name)				res[i].MenuId = append(res[i].MenuId, uint32(m.Id))			}		}	}	return res}func (s *SystemRole) ToPb() *operationPb.AddRoleRequest {	return &operationPb.AddRoleRequest{		Id:              uint32(s.Id),		Name:            s.Name,		CreateUser:      s.CreateUser,		IsShow:          s.IsShow,		CreatedAt:       uint32(s.CreatedAt),		CreatedAtFormat: time.Unix(s.CreatedAt, 0).Format(LayoutTime),	}}
 |