66 lines
1.9 KiB
Go
66 lines
1.9 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 profileMapping struct {
|
|
mapper *Mapper
|
|
}
|
|
|
|
// ToUserEntitySlice maps a User entity slice to User view model slice
|
|
func (mapping *profileMapping) ToProfileEntitySlice(list []viewmodel.Profile) (retVal []entity.Profile) {
|
|
retVal = make([]entity.Profile, 0)
|
|
|
|
for _, item := range list {
|
|
retVal = append(retVal, mapping.ToProfileEntity(item))
|
|
}
|
|
|
|
return retVal
|
|
}
|
|
|
|
func (mapping *profileMapping) ToProfileEntity(model viewmodel.Profile) entity.Profile {
|
|
return entity.Profile{
|
|
ID: model.ID,
|
|
Key: model.Key,
|
|
Name: model.Name,
|
|
Description: model.Description,
|
|
Created: model.Created,
|
|
Updated: model.Updated,
|
|
Active: model.Active,
|
|
Visible: model.Visible,
|
|
Blocked: model.Blocked,
|
|
Suspended: model.Suspended,
|
|
Organization: mapping.mapper.Organization.ToOrganizationEntity(model.Organization),
|
|
}
|
|
}
|
|
|
|
// ToUserEntitySlice maps a User entity slice to User view model slice
|
|
func (mapping *profileMapping) ToProfileModelSlice(list []entity.Profile) (retVal []viewmodel.Profile) {
|
|
retVal = make([]viewmodel.Profile, 0)
|
|
|
|
for _, item := range list {
|
|
retVal = append(retVal, mapping.ToProfileModel(item))
|
|
}
|
|
|
|
return retVal
|
|
}
|
|
|
|
func (mapping *profileMapping) ToProfileModel(model entity.Profile) viewmodel.Profile {
|
|
return viewmodel.Profile{
|
|
ID: model.ID,
|
|
Key: model.Key,
|
|
Name: model.Name,
|
|
Description: model.Description,
|
|
Created: model.Created,
|
|
Updated: model.Updated,
|
|
Active: model.Active,
|
|
Visible: model.Visible,
|
|
Blocked: model.Blocked,
|
|
Suspended: model.Suspended,
|
|
Organization: mapping.mapper.Organization.ToOrganizationModel(model.Organization),
|
|
}
|
|
}
|