generated from PenaSide/GolangTemplate
56 lines
1.5 KiB
Go
56 lines
1.5 KiB
Go
package transfer
|
|
|
|
import (
|
|
"gitea.pena/PenaSide/customer/internal/models"
|
|
"gitea.pena/PenaSide/customer/internal/proto/broker"
|
|
)
|
|
|
|
func PrivilegeProtoToModel(privilege *broker.PrivilegeMessage) *models.Privilege {
|
|
if privilege == nil {
|
|
return &models.Privilege{}
|
|
}
|
|
|
|
return &models.Privilege{
|
|
PrivilegeID: privilege.GetPrivilegeID(),
|
|
ServiceKey: privilege.GetServiceKey(),
|
|
Type: models.PrivilegeTypeMap[privilege.GetType()],
|
|
Value: privilege.GetValue(),
|
|
Amount: privilege.GetAmount(),
|
|
}
|
|
}
|
|
|
|
func PrivilegeArrayProtoToModel(privileges []*broker.PrivilegeMessage) []models.Privilege {
|
|
privilegesModel := make([]models.Privilege, len(privileges))
|
|
|
|
for index, privilege := range privileges {
|
|
privilegesModel[index] = *PrivilegeProtoToModel(privilege)
|
|
}
|
|
|
|
return privilegesModel
|
|
}
|
|
|
|
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
|
|
}
|