protected override void InnerMap(AnnouncementDetails annDetails, Activity activity) { MapperFactory.GetMapper <AnnouncementComplex, Activity>().Map(annDetails, activity); if (annDetails.AnnouncementAttributes == null) { annDetails.AnnouncementAttributes = new List <AnnouncementAssignedAttribute>(); } annDetails.AnnouncementAttributes = annDetails.AnnouncementAttributes.Where(a => activity.Attributes != null && activity.Attributes.Any(x => x.Id == a.SisActivityAssignedAttributeId)).ToList(); if (activity.Attributes != null && activity.Attributes.Any()) { foreach (var attribute in activity.Attributes) { var annAttribute = annDetails.AnnouncementAttributes.FirstOrDefault(aa => aa.SisActivityAssignedAttributeId == attribute.Id); if (annAttribute == null) { annAttribute = new AnnouncementAssignedAttribute { AnnouncementRef = annDetails.Id }; annDetails.AnnouncementAttributes.Add(annAttribute); } MapperFactory.GetMapper <AnnouncementAssignedAttribute, ActivityAssignedAttribute>().Map(annAttribute, attribute); } } if (annDetails.AnnouncementStandards == null || activity.Standards == null || !activity.Standards.Any()) { annDetails.AnnouncementStandards = new List <AnnouncementStandardDetails>(); } if (activity.Standards != null && activity.Standards.Any()) { annDetails.AnnouncementStandards = annDetails.AnnouncementStandards.Where(a => activity.Standards.Any(s => s.Id == a.StandardRef)).ToList(); foreach (var activityStandard in activity.Standards) { var annStandard = annDetails.AnnouncementStandards.FirstOrDefault(x => x.StandardRef == activityStandard.Id); if (annStandard == null) { annStandard = new AnnouncementStandardDetails { AnnouncementRef = annDetails.Id }; annDetails.AnnouncementStandards.Add(annStandard); } annStandard.StandardRef = activityStandard.Id; if (annStandard.Standard == null) { annStandard.Standard = new Standard(); } annStandard.Standard.Id = activityStandard.Id; annStandard.Standard.Name = activityStandard.Name; } } }
protected override void InnerMap(Activity activity, AnnouncementComplex ann) { MapperFactory.GetMapper <Activity, ClassAnnouncement>().Map(activity, ann.ClassAnnouncementData); activity.Complete = ann.Complete; if (ann.CurrentStudentScore != null) { activity.Score = activity.Score ?? new Score(); MapperFactory.GetMapper <Score, StudentAnnouncementDetails>().Map(activity.Score, ann.CurrentStudentScore); } }
protected override void InnerMap(Activity activity, AnnouncementDetails annDetails) { MapperFactory.GetMapper <Activity, AnnouncementComplex>().Map(activity, annDetails); if (annDetails.AnnouncementAttributes != null && annDetails.AnnouncementAttributes.Count > 0) { if (activity.Attributes == null) { activity.Attributes = new List <ActivityAssignedAttribute>(); } var newAtts = new List <ActivityAssignedAttribute>(); foreach (var annAtt in annDetails.AnnouncementAttributes) { var att = activity.Attributes.FirstOrDefault(x => x.Id == annAtt.SisActivityAssignedAttributeId); if (att == null) { att = new ActivityAssignedAttribute { ActivityId = activity.Id }; newAtts.Add(att); } MapperFactory.GetMapper <ActivityAssignedAttribute, AnnouncementAssignedAttribute>().Map(att, annAtt); } activity.Attributes = activity.Attributes.Concat(newAtts); } if (annDetails.AnnouncementStandards != null && annDetails.AnnouncementStandards.Count > 0) { if (activity.Standards == null) { activity.Standards = new LinkedList <ActivityStandard>(); } var newStandards = new List <ActivityStandard>(); foreach (var annStandard in annDetails.AnnouncementStandards) { if (annStandard.Standard != null) { var activitySt = activity.Standards.FirstOrDefault(x => x.Id == annStandard.StandardRef); if (activitySt == null) { activitySt = new ActivityStandard(); newStandards.Add(activitySt); } activitySt.Id = annStandard.Standard.Id; activitySt.Name = annStandard.Standard.Name; } } activity.Standards = activity.Standards.Concat(newStandards); } }
protected override void InnerMap(ClassAnnouncement ann, Activity activity) { MapperFactory.GetMapper <Announcement, Activity>().Map(ann, activity); ann.MayBeExempt = activity.MayBeExempt; ann.IsScored = activity.IsScored; ann.MaxScore = activity.MaxScore; ann.ClassRef = activity.SectionId; ann.Expires = activity.Date; ann.MayBeDropped = activity.MayBeDropped; ann.WeightAddition = activity.WeightAddition; ann.WeightMultiplier = activity.WeightMultiplier; ann.Dropped = activity.IsDropped; ann.ClassAnnouncementTypeRef = activity.CategoryId; ann.VisibleForStudent = activity.DisplayInHomePortal; ann.ClassAnnouncementTypeName = activity.CategoryName; ann.SisActivityId = activity.Id; }
protected override void InnerMap(Activity activity, ClassAnnouncement ann) { MapperFactory.GetMapper <Activity, Announcement>().Map(activity, ann); activity.Date = ann.Expires; activity.CategoryId = ann.ClassAnnouncementTypeRef; activity.IsDropped = ann.Dropped; activity.MaxScore = ann.MaxScore; activity.WeightAddition = ann.WeightAddition; activity.WeightMultiplier = ann.WeightMultiplier; activity.MayBeDropped = ann.MayBeDropped; activity.Description = ann.Content; activity.DisplayInHomePortal = ann.VisibleForStudent; activity.MayBeExempt = ann.MayBeExempt; activity.IsScored = ann.IsScored; activity.SectionId = ann.ClassRef; }
protected override void InnerMap(AnnouncementComplex ann, Activity activity) { MapperFactory.GetMapper <Announcement, Activity>().Map(ann, activity); if (ann.ClassAnnouncementData == null) { throw new ChalkableException("Only classAnnouncement can be mapped from activity"); } MapperFactory.GetMapper <ClassAnnouncement, Activity>().Map(ann.ClassAnnouncementData, activity); ann.Complete = activity.Complete; if (activity.Score != null) { ann.CurrentStudentScore = ann.CurrentStudentScore ?? new StudentAnnouncementDetails { AnnouncementId = ann.Id, AnnouncementTitle = ann.Title, }; MapperFactory.GetMapper <StudentAnnouncementDetails, Score>().Map(ann.CurrentStudentScore, activity.Score); } }
protected override void InnerMap(AnnouncementAssignedAttribute announcementAttribute, ActivityAssignedAttribute activityAttribute) { announcementAttribute.Name = activityAttribute.Name; announcementAttribute.VisibleForStudents = activityAttribute.VisibleInHomePortal; announcementAttribute.Text = activityAttribute.Text; announcementAttribute.SisActivityAssignedAttributeId = activityAttribute.Id; announcementAttribute.AttributeTypeId = activityAttribute.AttributeId; announcementAttribute.SisActivityId = activityAttribute.ActivityId; if (activityAttribute.Attachment != null) { if (announcementAttribute.Attachment == null) { announcementAttribute.Attachment = new Attachment(); } MapperFactory.GetMapper <Attachment, StiAttachment>().Map(announcementAttribute.Attachment, activityAttribute.Attachment); } else { announcementAttribute.Attachment = null; announcementAttribute.AttachmentRef = null; } }