Esempio n. 1
0
        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);
            }
        }
Esempio n. 2
0
        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);
        }
Esempio n. 3
0
        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);
        }
Esempio n. 5
0
 private void btnNew_Click(object sender, RoutedEventArgs e)
 {
     Message = new EntityRelationshipTailDataMenuDTO();
     ShowMessage();
 }
Esempio n. 6
0
 private void GetEntityRelationshipTailDataMenu(int entityDataMenuID)
 {
     Message = bizEntityRelationshipTailDataMenu.GetEntityRelationshipTailDataMenu(MyProjectManager.GetMyProjectManager.GetRequester(), entityDataMenuID);
     ShowMessage();
 }