public int UpdateEntityRelationshipTailDataMenu(EntityRelationshipTailDataMenuDTO message) { using (var projectContext = new DataAccess.MyProjectEntities()) { EntityRelationshipTailDataMenu dbItem = null; if (message.ID == 0) { dbItem = new EntityRelationshipTailDataMenu(); projectContext.EntityRelationshipTailDataMenu.Add(dbItem); } else { dbItem = projectContext.EntityRelationshipTailDataMenu.First(x => x.ID == message.ID); } dbItem.Name = message.Name; dbItem.EntityRelationshipTailID = message.EntityRelationshipTailID; while (dbItem.EntityRelationshipTailDataMenuItems.Any()) { projectContext.EntityRelationshipTailDataMenuItems.Remove(dbItem.EntityRelationshipTailDataMenuItems.First()); } foreach (var fitem in message.Items.Where(x => x.DataMenuSettingID != 0)) { dbItem.EntityRelationshipTailDataMenuItems.Add(new EntityRelationshipTailDataMenuItems() { DataMenuSettingID = fitem.DataMenuSettingID, Path = fitem.Path, TableDrivedEntityID = fitem.TableDrivedEntityID }); } projectContext.SaveChanges(); return(dbItem.ID); } }
public ftmEntityRelationshipTailDataMenu(int EntityRelationshipTailDataMenu, int relationshipTailID) { InitializeComponent(); EntityRelationshipTail = bizEntityRelationshipTail.GetEntityRelationshipTail(MyProjectManager.GetMyProjectManager.GetRequester(), relationshipTailID); // BizTableDrivedEntity biz = new BizTableDrivedEntity(); // var entity = biz.GetTableDrivedEntity(MyProjectManager.GetMyProjectManager.GetRequester(), EntityID, EntityColumnInfoType.WithSimpleColumns, EntityRelationshipInfoType.WithoutRelationships); // if (entity.IsView) // colRelationshipTail.IsVisible = false; // EntityDataMenuID = entityDataMenuID; SetItems(); if (EntityRelationshipTailDataMenu == 0) { Message = new EntityRelationshipTailDataMenuDTO(); ShowMessage(); } else { GetEntityRelationshipTailDataMenu(EntityRelationshipTailDataMenu); } colDataMenu.DisplayMemberPath = "Name"; colDataMenu.SelectedValueMemberPath = "ID"; ControlHelper.GenerateContextMenu(dtgColumns); }
public EntityRelationshipTailDataMenuDTO ToEntityRelationshipTailDataMenuDTO(EntityRelationshipTailDataMenu item, bool withDetails) { EntityRelationshipTailDataMenuDTO result = new EntityRelationshipTailDataMenuDTO(); result.ID = item.ID; result.EntityRelationshipTailID = item.EntityRelationshipTailID; result.Name = item.Name; foreach (var fitem in item.EntityRelationshipTailDataMenuItems) { result.Items.Add(new EntityRelationshipTailDataMenuItemsDTO() { ID = fitem.ID, DataMenuSettingID = fitem.DataMenuSettingID, Path = fitem.Path, TableDrivedEntityID = fitem.TableDrivedEntityID }); } return(result); }
private DataLinkItemGroup GetIncludedDataLinkItems(EntityRelationshipTailDTO relationshipTail, DataLinkDTO selectedDataLink, DP_DataView relationshipFirstData, DP_DataView targetData, int level , EntityRelationshipTailDataMenuDTO relationshipTailDataMenuDTO, DataLinkItem parentDataLinkItem = null, DataLinkItemGroup result = null, List <DataLinkItem> allItems = null) { if (result == null) { result = new DataLinkItemGroup(); } if (relationshipTail != null && relationshipTail.ChildTail != null) { RelationshipTailDataManager relationshipTailDataManager = new RelationshipTailDataManager(); //var firstData = new DP_DataRepository(); //firstData.TargetEntityID = FirstData.TargetEntityID; //firstData.DataView = FirstData; //foreach (var key in FirstData.KeyProperties) //{ // firstData.AddProperty(new ColumnDTO() { ID = key.ColumnID }, key.Value); //} var searchDataTuple = AgentUICoreMediator.GetAgentUICoreMediator.RelationshipDataManager.GetSecondSideSearchDataItemByRelationship(relationshipFirstData, relationshipTail.Relationship.ID); var searchPhraseToOtherData = relationshipTailDataManager.GetTargetSearchItemFromRelationshipTail(targetData, relationshipTail.ChildTail.ReverseRelationshipTail); searchDataTuple.Phrases.AddRange(searchPhraseToOtherData.Phrases); var requester = AgentUICoreMediator.GetAgentUICoreMediator.GetRequester(); //سکوریتی داده اعمال میشود var searchRequest = new DR_SearchViewRequest(requester, searchDataTuple); //searchRequest.EntityID = parentTail.RelationshipTargetEntityID; var searchResult = AgentUICoreMediator.GetAgentUICoreMediator.requestRegistration.SendSearchViewRequest(searchRequest); if (parentDataLinkItem != null) { parentDataLinkItem.TailPath = relationshipTail.RelationshipIDPath; if (relationshipTailDataMenuDTO != null) { if (relationshipTailDataMenuDTO.Items.Any(x => x.Path == parentDataLinkItem.TailPath)) { parentDataLinkItem.DataMenuID = relationshipTailDataMenuDTO.Items.First(x => x.Path == parentDataLinkItem.TailPath).DataMenuSettingID; } } } if (searchResult.Result == Enum_DR_ResultType.SeccessfullyDone) { foreach (var item in searchResult.ResultDataItems) { DataLinkItem found = null; if (allItems == null) { allItems = new List <DataLinkItem>(); } else { if (selectedDataLink.NotJointEntities == true) { if (allItems.Any(x => AgentHelper.DataItemsAreEqual(item, x.DataItem))) { var fItem = allItems.First(x => AgentHelper.DataItemsAreEqual(item, x.DataItem)); found = fItem; } } } if (found == null) { found = new DataLinkItem(); found.DataItem = item; found.Level = level; result.Items.Add(found); allItems.Add(found); } if (parentDataLinkItem != null) { result.Relations.Add(new DataLinkRelation(parentDataLinkItem, found)); } GetIncludedDataLinkItems(relationshipTail.ChildTail, selectedDataLink, item, targetData, level + 1, relationshipTailDataMenuDTO, found, result); } } else { AgentUICoreMediator.GetAgentUICoreMediator.UIManager.ShowInfo(searchResult.Message, searchResult.Details, MyUILibrary.Temp.InfoColor.Red); } } return(result); }
private void btnNew_Click(object sender, RoutedEventArgs e) { Message = new EntityRelationshipTailDataMenuDTO(); ShowMessage(); }
private void GetEntityRelationshipTailDataMenu(int entityDataMenuID) { Message = bizEntityRelationshipTailDataMenu.GetEntityRelationshipTailDataMenu(MyProjectManager.GetMyProjectManager.GetRequester(), entityDataMenuID); ShowMessage(); }