32 lines
811 B
Go
32 lines
811 B
Go
package transfer
|
|
|
|
import (
|
|
"codeword/internal/models"
|
|
"codeword/internal/proto/broker"
|
|
)
|
|
|
|
func PrivilegeModelToProto(privilege *models.Privilege) *broker.PrivilegeMessage {
|
|
if privilege == nil {
|
|
return &broker.PrivilegeMessage{}
|
|
}
|
|
|
|
return &broker.PrivilegeMessage{
|
|
PrivilegeID: privilege.PrivilegeID,
|
|
ServiceKey: privilege.ServiceKey,
|
|
Type: models.PrivilegeBrokerTypeMap[privilege.Type],
|
|
Value: privilege.Value,
|
|
Amount: privilege.Amount,
|
|
}
|
|
}
|
|
|
|
func PrivilegeArrayModelToProto(privileges []models.Privilege) []*broker.PrivilegeMessage {
|
|
privilegesProto := make([]*broker.PrivilegeMessage, len(privileges))
|
|
|
|
for index, privilege := range privileges {
|
|
privilegeCopy := privilege
|
|
privilegesProto[index] = PrivilegeModelToProto(&privilegeCopy)
|
|
}
|
|
|
|
return privilegesProto
|
|
}
|