70 lines
2.1 KiB
Go
70 lines
2.1 KiB
Go
package entitymapping
|
|
|
|
import (
|
|
"bitbucket.org/nemt/nemt-portal-api/application/viewmodel"
|
|
"bitbucket.org/nemt/nemt-portal-api/domain/entity"
|
|
)
|
|
|
|
// providerMapping has method to map provider entities to view models
|
|
type notificationMapping struct {
|
|
mapper *Mapper
|
|
}
|
|
|
|
// ToUserEntitySlice maps a User entity slice to User view model slice
|
|
func (mapping *notificationMapping) ToNotificationEntitySlice(list []viewmodel.Notification) (retVal []entity.Notification) {
|
|
retVal = make([]entity.Notification, 0)
|
|
|
|
for _, item := range list {
|
|
retVal = append(retVal, mapping.ToNotificationEntity(item))
|
|
}
|
|
|
|
return retVal
|
|
}
|
|
|
|
func (mapping *notificationMapping) ToNotificationEntity(model viewmodel.Notification) entity.Notification {
|
|
return entity.Notification{
|
|
UUID: model.UUID,
|
|
To: model.To,
|
|
From: model.From,
|
|
Type: model.Type,
|
|
Subject: model.Subject,
|
|
Message: model.Message,
|
|
Created: model.Created,
|
|
Ride: entity.Ride{
|
|
UUID: model.Ride.UUID,
|
|
},
|
|
User: mapping.mapper.User.ToUserEntity(model.User),
|
|
CreatedUser: mapping.mapper.User.ToUserEntity(model.CreatedUser),
|
|
Read: model.Read,
|
|
MessageType: model.MessageType,
|
|
}
|
|
}
|
|
|
|
// ToUserEntitySlice maps a User entity slice to User view model slice
|
|
func (mapping *notificationMapping) ToNotificationModelSlice(list []entity.Notification) (retVal []viewmodel.Notification) {
|
|
retVal = make([]viewmodel.Notification, 0)
|
|
|
|
for _, item := range list {
|
|
retVal = append(retVal, mapping.ToNotificationModel(item))
|
|
}
|
|
|
|
return retVal
|
|
}
|
|
|
|
func (mapping *notificationMapping) ToNotificationModel(model entity.Notification) viewmodel.Notification {
|
|
return viewmodel.Notification{
|
|
UUID: model.UUID,
|
|
To: model.To,
|
|
From: model.From,
|
|
Type: model.Type,
|
|
Subject: model.Subject,
|
|
Message: model.Message,
|
|
Created: model.Created,
|
|
Ride: mapping.mapper.Ride.ToRideModel(model.Ride),
|
|
User: mapping.mapper.User.ToUserModel(model.User),
|
|
CreatedUser: mapping.mapper.User.ToUserModel(model.CreatedUser),
|
|
Read: model.Read,
|
|
MessageType: model.MessageType,
|
|
}
|
|
}
|