protected override ProcedureTypeGroupData Export(ProcedureTypeGroup entity, IReadContext context) { ProcedureTypeGroupData data = new ProcedureTypeGroupData(); data.Name = entity.Name; data.Class = entity.GetClass().FullName; data.Description = entity.Description; data.ProcedureTypes = CollectionUtils.Map <ProcedureType, ProcedureTypeData>( entity.ProcedureTypes, delegate(ProcedureType pt) { ProcedureTypeData ptdata = new ProcedureTypeData(); ptdata.Id = pt.Id; return(ptdata); }); return(data); }
protected override void Import(ProcedureTypeGroupData data, IUpdateContext context) { ProcedureTypeGroup group = LoadOrCreateProcedureTypeGroup(data.Name, data.Class, context); group.Description = data.Description; if (data.ProcedureTypes != null) { foreach (ProcedureTypeData s in data.ProcedureTypes) { ProcedureTypeSearchCriteria where = new ProcedureTypeSearchCriteria(); where.Id.EqualTo(s.Id); ProcedureType pt = CollectionUtils.FirstElement(context.GetBroker <IProcedureTypeBroker>().Find(where)); if (pt != null) { group.ProcedureTypes.Add(pt); } } } }