private ArchiveItemDTO ToArchiveItemDTO(DR_Requester requester, ArchiveItem item, bool withDetails) { ArchiveItemDTO result = new ArchiveItemDTO(); result.ID = item.ID; result.Name = item.Name; result.UserID = item.UserID; result.FolderID = item.FolderID; result.FileType = (Enum_ArchiveItemFileType)item.FileType; result.MainType = (Enum_ArchiveItemMainType)item.MainType; result.CreationDate = item.CreationDate; foreach (var tag in item.ArchiveItem_Tag) { result.TagIDs.Add(tag.TagID); } //result.vwDatItemID = item.MyDataItemID; //روش خوبی نیست که برای هر دیتا آیتم اطلاعات داده گرفته شود result.DatItem = bizDataItem.ToDataViewDTO(requester, item.MyDataItem, true); result.AttechedFileID = item.FileRepositoryID; if (item.ThumbnailFileRepositoryID != null) { result.ThumbnailFile = bizFileRepository.ToFileRepository(item.FileRepository); } if (withDetails) { if (item.FileRepository1 != null) { result.AttechedFile = bizFileRepository.ToFileRepository(item.FileRepository1); } } return(result); }
public void ChangeArchiveItemVisibility(ArchiveItemDTO archiveDataItemItem, bool v) { foreach (UC_ArchiveItem item in lstArchiveItem.Items) { if (item.ArchiveItemDataItem == archiveDataItemItem) { item.Visibility = v ? Visibility.Visible : Visibility.Collapsed; } } }
private void Uc_ArchiveItem_DoubleClicked(object sender, EventArgs e, ArchiveItemDTO item) { if (ArchiveItemDoubleCliked != null) { ArchiveItemDoubleCliked(this, new ArchiveItemSelectedArg() { ArchiveItem = item }); } }
private DataLogDTO GetCreateItemDataLog(ArchiveItemDTO archiveItem, string exceptionMessage) { var dataLog = new DataLogDTO(); dataLog.LocationInfo = ""; dataLog.Duration = 0; dataLog.DatItem = archiveItem.DatItem; dataLog.MainType = DataLogType.ArchiveInsert; dataLog.RelatedItemID = archiveItem.ID; if (!string.IsNullOrEmpty(exceptionMessage)) { dataLog.MajorException = true; dataLog.MajorFunctionExceptionMessage = exceptionMessage; //dataLog.ArchiveItemLog = new ArchiveItemLogDTO(); //dataLog.ArchiveItemLog.Exception = exceptionMessage; } return(dataLog); }
public UC_ArchiveItem(ArchiveItemDTO archiveItemDataItem) { InitializeComponent(); ArchiveItemDataItem = archiveItemDataItem; lblTitle.Text = archiveItemDataItem.Name; if (!string.IsNullOrEmpty(archiveItemDataItem.Tooltip)) { ToolTipService.SetToolTip(this, archiveItemDataItem.Tooltip); } if (!string.IsNullOrEmpty(archiveItemDataItem.Color)) { grdMain.Background = new SolidColorBrush((Color)System.Windows.Media.ColorConverter.ConvertFromString(archiveItemDataItem.Color)); } if (archiveItemDataItem != null) { if (archiveItemDataItem.ThumbnailFile != null && archiveItemDataItem.ThumbnailFile.Content != null) { var imageSource = new BitmapImage(); imageSource.BeginInit(); imageSource.StreamSource = new MemoryStream(archiveItemDataItem.ThumbnailFile.Content); imageSource.EndInit(); // Assign the Source property of your image imgItem.Source = imageSource; } else { if (archiveItemDataItem.MainType == Enum_ArchiveItemMainType.Pdf) { imgItem.Source = GetImageSource(@"..\..\images\pdf.png"); } else if (archiveItemDataItem.MainType == Enum_ArchiveItemMainType.MsWord) { imgItem.Source = GetImageSource(@"..\..\images\msword.png"); } } } else { imgItem.Source = GetImageSource(@"..\..\images\document.png"); } }
private void Uc_ArchiveItem_MouseRightButtonUp(object sender, MouseButtonEventArgs e, ArchiveItemDTO item) { if (ArchiveItemRightCliked != null) { ArchiveItemRightCliked(this, new ArchiveItemSelectedArg() { ArchiveItem = item }); } }
public ArchiveResult CreateArchiveItems(ArchiveItemDTO archiveItem, DR_Requester requester) { return(bizArchiveManager.CreateArchiveItems(archiveItem, requester)); }
private Tuple <Enum_ArchiveItemMainType, Enum_ArchiveItemFileType> GetArchiveItemType(ArchiveItemDTO message) { if (message.AttechedFile != null && message.AttechedFile.FileExtension != null) { var extention = message.AttechedFile.FileExtension.ToLower(); if (extention == "jpg") { return(new Tuple <Enum_ArchiveItemMainType, Enum_ArchiveItemFileType>(Enum_ArchiveItemMainType.Image, Enum_ArchiveItemFileType.JPEG)); } else if (extention == "bmp") { return(new Tuple <Enum_ArchiveItemMainType, Enum_ArchiveItemFileType>(Enum_ArchiveItemMainType.Image, Enum_ArchiveItemFileType.BMP)); } else if (extention == "pdf") { return(new Tuple <Enum_ArchiveItemMainType, Enum_ArchiveItemFileType>(Enum_ArchiveItemMainType.Pdf, Enum_ArchiveItemFileType.PDF)); } else if (extention == "doc") { return(new Tuple <Enum_ArchiveItemMainType, Enum_ArchiveItemFileType>(Enum_ArchiveItemMainType.MsWord, Enum_ArchiveItemFileType.DOC)); } else if (extention == "docx") { return(new Tuple <Enum_ArchiveItemMainType, Enum_ArchiveItemFileType>(Enum_ArchiveItemMainType.MsWord, Enum_ArchiveItemFileType.DOCX)); } } return(new Tuple <Enum_ArchiveItemMainType, Enum_ArchiveItemFileType>(Enum_ArchiveItemMainType.UnKnown, Enum_ArchiveItemFileType.UnKnown)); }
public ArchiveResult CreateArchiveItems(ArchiveItemDTO message, DR_Requester requester) { ArchiveResult result = new ArchiveResult(); try { // افزوده شدن نامه ها به آرشیو بعدا بررسی شود if (message.ID != 0) { throw new Exception(); } BizTableDrivedEntity bizTableDrivedEntity = new BizTableDrivedEntity(); if (!bizTableDrivedEntity.DataIsAccessable(requester, message.DatItem.TargetEntityID, new List <SecurityAction>() { SecurityAction.ArchiveEdit })) { throw new Exception("عدم دسترسی ثبت آرشیو"); } using (var context = new MyIdeaDataDBEntities()) { var dbArchiveItem = new ArchiveItem(); if (message.DatItem.DataItemID == 0) { dbArchiveItem.MyDataItemID = bizDataItem.GetOrCreateDataItem(message.DatItem); message.DatItem.DataItemID = dbArchiveItem.MyDataItemID; } else { dbArchiveItem.MyDataItemID = message.DatItem.DataItemID; } //var dataItem = bizDataItem.GetOrCreateDataItem(message.DatItem); //var archiveItemDataItem = new MyDataItem_ArchiveItem(); dbArchiveItem.FolderID = message.FolderID; dbArchiveItem.CreationDate = DateTime.Now; dbArchiveItem.UserID = requester.Identity; dbArchiveItem.Name = message.Name; var type = GetArchiveItemType(message); message.FileType = type.Item2; message.MainType = type.Item1; dbArchiveItem.FileType = (short)message.FileType; dbArchiveItem.MainType = (short)message.MainType; if (message.AttechedFile != null && message.AttechedFile.Content != null) { dbArchiveItem.FileSize = message.AttechedFile.Content.Count(); dbArchiveItem.FileRepository1 = bizFileRepository.ToFileRepository(context, message.AttechedFile); } SetPossibleThumbnail(context, dbArchiveItem, message.MainType, message.FileType, message.AttechedFile.Content, message.AttechedFile.FileName); //if (!hasThumbnail) //{ // dbArchiveItem.ThumbnailFileRepositoryID = null; // // dbArchiveItem.FileRepository1 = null; //} foreach (var tagid in message.TagIDs) { dbArchiveItem.ArchiveItem_Tag.Add(new ArchiveItem_Tag() { TagID = tagid }); } context.ArchiveItem.Add(dbArchiveItem); context.SaveChanges(); message.ID = dbArchiveItem.ID; result.Result = true; //انتیتی فرمورک قاطی داره رابطه فایل را برای تامبنیل هم میزاره //context.SaveChanges(); } } catch (Exception ex) { result.Result = false; result.Message = ex.Message; } finally { var logResult = bizLogManager.AddLog(GetCreateItemDataLog(message, result.Message), requester); if (!string.IsNullOrEmpty(logResult)) { result.Message += (!string.IsNullOrEmpty(result.Message) ? Environment.NewLine : "") + "خطا در ثبت لاگ" + " , " + logResult; } } return(result); }