public static AnnouncementAssignedAttributeInfo Create(AnnouncementAssignedAttribute attribute, AttributeAttachmentContentInfo attachmentContentInfo) { return(new AnnouncementAssignedAttributeInfo { AttachmentContentInfo = attachmentContentInfo, Attribute = attribute }); }
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; } } }
public static IList <Pair <AnnouncementAssignedAttribute, AnnouncementAssignedAttribute> > CopyNonStiAttributes(IDictionary <int, int> fromToAnnouncementIds, UnitOfWork unitOfWork, IServiceLocatorSchool serviceLocator, ConnectorLocator connectorLocator) { //var attachmentDA = new AttachmentDataAccess(unitOfWork); var annAssignedAttributeDA = new AnnouncementAssignedAttributeDataAccess(unitOfWork); var attributesForCopying = annAssignedAttributeDA.GetLastListByAnnIds(fromToAnnouncementIds.Select(x => x.Key).ToList(), int.MaxValue) .Where(x => !x.SisActivityAssignedAttributeId.HasValue).ToList(); var fromToAttributes = new List <Pair <AnnouncementAssignedAttribute, AnnouncementAssignedAttribute> >(); foreach (var announcementPair in fromToAnnouncementIds) { var assignedAttToCopy = attributesForCopying.Where(x => x.AnnouncementRef == announcementPair.Key).ToList(); foreach (var attributeToCopy in assignedAttToCopy) { var newAttribute = new AnnouncementAssignedAttribute { AnnouncementRef = announcementPair.Value, AttributeTypeId = attributeToCopy.AttributeTypeId, Name = attributeToCopy.Name, Text = attributeToCopy.Text, VisibleForStudents = attributeToCopy.VisibleForStudents, AttachmentRef = attributeToCopy.AttachmentRef, Attachment = attributeToCopy.Attachment }; //if (attributeToCopy.Attachment != null) //{ // var attachment = new Attachment // { // Name = attributeToCopy.Attachment.Name, // PersonRef = serviceLocator.Context.PersonId.Value, // Uuid = null, // UploadedDate = serviceLocator.Context.NowSchoolTime, // LastAttachedDate = serviceLocator.Context.NowSchoolTime, // }; // attachment.Id = attachmentDA.InsertWithEntityId(attachment); // newAttribute.AttachmentRef = attachment.Id; // newAttribute.Attachment = attachment; //} fromToAttributes.Add(new Pair <AnnouncementAssignedAttribute, AnnouncementAssignedAttribute>(attributeToCopy, newAttribute)); } } annAssignedAttributeDA.Insert(fromToAttributes.Select(x => x.Second).ToList()); return(fromToAttributes); }
public static AnnouncementAssignedAttributeViewData Create(AnnouncementAssignedAttribute attr, AttachmentInfo attachmentInfo) { var result = new AnnouncementAssignedAttributeViewData { Id = attr.Id, Name = attr.Name, Text = attr.Text, AttributeTypeId = attr.AttributeTypeId, VisibleForStudents = attr.VisibleForStudents, AnnouncementRef = attr.AnnouncementRef, SisActivityAssignedAttributeId = attr.SisActivityAssignedAttributeId, AttributeAttachment = attachmentInfo != null?AttachmentViewData.Create(attachmentInfo) : null }; return(result); }
public AnnouncementAssignedAttribute Add(AnnouncementTypeEnum announcementType, int announcementId, int attributeTypeId) { var ann = ServiceLocator.GetAnnouncementService(announcementType).GetAnnouncementById(announcementId); Trace.Assert(Context.PersonId.HasValue); Trace.Assert(Context.SchoolLocalId.HasValue); var attributeType = ServiceLocator.AnnouncementAttributeService.GetAttributeById(attributeTypeId, true); using (var uow = Update()) { if (!CanAttach(ann)) { throw new ChalkableSecurityException(); } var annAttribute = new AnnouncementAssignedAttribute { AnnouncementRef = ann.Id, AttributeTypeId = attributeType.Id, Text = "", VisibleForStudents = false, Name = attributeType.Name }; if (announcementType == AnnouncementTypeEnum.Class) { var announcement = ServiceLocator.ClassAnnouncementService.GetClassAnnouncemenById(announcementId); if (announcement.SisActivityId.HasValue) { var activityAssignedAttr = new ActivityAssignedAttribute(); MapperFactory.GetMapper <ActivityAssignedAttribute, AnnouncementAssignedAttribute>().Map(activityAssignedAttr, annAttribute); activityAssignedAttr.Text = " "; activityAssignedAttr = ConnectorLocator.ActivityAssignedAttributeConnector.CreateActivityAttribute(announcement.SisActivityId.Value, activityAssignedAttr); MapperFactory.GetMapper <AnnouncementAssignedAttribute, ActivityAssignedAttribute>().Map(annAttribute, activityAssignedAttr); annAttribute.Name = attributeType.Name;//activity attr returns null name } } var da = new AnnouncementAssignedAttributeDataAccess(uow); var id = da.InsertWithEntityId(annAttribute); uow.Commit(); return(da.GetById(id)); } }
public static IList <AnnouncementAssignedAttribute> CopyNonStiAttributes(int fromAnnouncementId, IList <int> toAnnouncementIds, UnitOfWork unitOfWork, IServiceLocatorSchool serviceLocator, ConnectorLocator connectorLocator) { var da = new AnnouncementAssignedAttributeDataAccess(unitOfWork); var attributesForCopying = da.GetListByAnntId(fromAnnouncementId); attributesForCopying = attributesForCopying.Where(x => !x.SisActivityAssignedAttributeId.HasValue).ToList(); var attributes = new List <AnnouncementAssignedAttribute>(); foreach (var attributeForCopying in attributesForCopying) { foreach (var toAnnouncementId in toAnnouncementIds) { var attribute = new AnnouncementAssignedAttribute { AnnouncementRef = toAnnouncementId, AttributeTypeId = attributeForCopying.AttributeTypeId, Name = attributeForCopying.Name, Text = attributeForCopying.Text, VisibleForStudents = attributeForCopying.VisibleForStudents, AttachmentRef = attributeForCopying.AttachmentRef, Attachment = attributeForCopying.Attachment }; //if (attributeForCopying.Attachment != null) //{ // var attContent = serviceLocator.AttachementService.GetAttachmentContent(attributeForCopying.Attachment); // if (attContent.Content != null) // { // var att = AttachmentService.Upload(attContent.Attachment.Name, attContent.Content, attContent.Attachment.IsStiAttachment, unitOfWork, serviceLocator, connectorLocator); // attribute.AttachmentRef = att.Id; // attribute.Attachment = att; // } //} attributes.Add(attribute); } } da.Insert(attributes); return(da.GetLastListByAnnIds(toAnnouncementIds, attributes.Count)); }
private static FeedDetailsExportModel Create(Person person, string schoolName, string sy, DateTime nowSchoolTime, DateTime?startRange, DateTime?endRange , AnnouncementDetails ann, ClassDetails classDetails, IList <DayType> dayTypes , IList <Staff> staffs, Standard standard, AnnouncementAssignedAttribute attribute, AttachmentItem attachmentItem, Person student, int studentOrder) { var res = new FeedDetailsExportModel(person, schoolName, sy, nowSchoolTime, startRange, endRange, ann, classDetails, dayTypes, staffs, standard, attribute, student, studentOrder); if (attachmentItem != null) { res.AnnouncementAttachmentId = attachmentItem.Id; res.AnnouncementAttachmentName = attachmentItem.Name; res.Document = attachmentItem.Document; res.AnnouncementAttachmentImage = attachmentItem.Image; res.AnnouncementAttachmentOrder = attachmentItem.Order; } return(res); }
protected FeedDetailsExportModel(Person person, string schoolName, string sy, DateTime nowSchoolTime, DateTime?startRange, DateTime?endRange, AnnouncementDetails ann , ClassDetails classDetails, IList <DayType> dayTypes, IList <Staff> staffs, Standard standard, AnnouncementAssignedAttribute attribute, Person student, int studentOrder) : base(person, schoolName, sy, nowSchoolTime, startRange, endRange, classDetails, dayTypes, staffs, ann, standard) { AnnouncementDescription = ann.Content; HasAttributes = ann.AnnouncementAttributes.Count > 0; IsLessonPlan = ann.LessonPlanData != null; IsSupplemental = ann.SupplementalAnnouncementData != null; if (ann.ClassAnnouncementData != null) { TotalPoint = (double?)ann.ClassAnnouncementData.MaxScore ?? ClassAnnouncement.DEFAULT_MAX_SCORE; WeightAddition = (double?)ann.ClassAnnouncementData.WeightAddition ?? ClassAnnouncement.DEFAULT_WEIGHT_ADDITION; WeigntMultiplier = (double?)ann.ClassAnnouncementData.WeightMultiplier ?? ClassAnnouncement.DEFAULT_WEGIHT_MULTIPLIER; ShowScoreSettings = CanShowScoreSettings(ann.ClassAnnouncementData); } if (IsSupplemental && student != null) { StudentId = student.Id; StudentDisplayName = student.FirstName + " " + student.LastName; StudentOrder = studentOrder; } if (standard != null) { StandardId = standard.Id; StandardName = standard.Name; StandardDescription = standard.Description; } if (attribute != null) { AttributeId = attribute.Id; AttributeName = attribute.Name; AttributeDescription = attribute.Text; if (attribute.Attachment != null) { AttributeAttachmentName = attribute.Attachment.Name; } } }
private bool IsMissingAttachment(AnnouncementAssignedAttribute attribute) { return(attribute.Attachment != null && string.IsNullOrEmpty(attribute.Attachment.Uuid) && ServiceLocator.CrocodocService.IsDocument(attribute.Attachment.Name)); }