public ScheduleProtectionLabsDataViewModel(Labs lab, int subGroupId) { SuGroupId = subGroupId; LabId = lab.Id; Order = lab.Order; Name = lab.Theme; }
public LabsDataViewModel(Labs labs) { Theme = labs.Theme; LabsId = labs.Id; Duration = labs.Duration; SubjectId = labs.SubjectId; Order = labs.Order; PathFile = labs.Attachments; ShortName = labs.ShortName; Attachments = FilesManagementService.GetAttachments(labs.Attachments); }
public Labs SaveLabs(Labs labs, IList<Attachment> attachments, Int32 userId) { using (var repositoriesContainer = new LmPlatformRepositoriesContainer()) { if (!string.IsNullOrEmpty(labs.Attachments)) { var deleteFiles = repositoriesContainer.AttachmentRepository.GetAll( new Query<Attachment>(e => e.PathName == labs.Attachments)).ToList().Where(e => attachments.All(x => x.Id != e.Id)).ToList(); foreach (var attachment in deleteFiles) { FilesManagementService.DeleteFileAttachment(attachment); } } else { labs.Attachments = GetGuidFileName(); } FilesManagementService.SaveFiles(attachments.Where(e => e.Id == 0), labs.Attachments); foreach (var attachment in attachments) { if (attachment.Id == 0) { attachment.PathName = labs.Attachments; repositoriesContainer.AttachmentRepository.Save(attachment); } } repositoriesContainer.LabsRepository.Save(labs); repositoriesContainer.ApplyChanges(); if (labs.IsNew && !labs.Subject.SubjectModules.Any(m => m.Module.ModuleType == ModuleType.Practical) && labs.Subject.SubjectModules.Any(m => m.Module.ModuleType == ModuleType.Labs)) ConceptManagementService.AttachFolderToLabSection(labs.Theme, userId, labs.SubjectId); } return labs; }