コード例 #1
0
        private void AddDataSelector(int entityID)
        {
            EditEntityAreaInitializer editEntityAreaInitializer1 = new EditEntityAreaInitializer();

            editEntityAreaInitializer1.EntityID      = entityID;
            editEntityAreaInitializer1.IntracionMode = CommonDefinitions.UISettings.IntracionMode.Select;
            editEntityAreaInitializer1.DataMode      = CommonDefinitions.UISettings.DataMode.One;
            var FirstSideEditEntityAreaResult = EditEntityAreaConstructor.GetEditEntityArea(editEntityAreaInitializer1);

            if (FirstSideEditEntityAreaResult.Item1 != null && FirstSideEditEntityAreaResult.Item1 is I_EditEntityAreaOneData)
            {
                EditEntityArea = FirstSideEditEntityAreaResult.Item1 as I_EditEntityAreaOneData;
                EditEntityArea.SetAreaInitializer(editEntityAreaInitializer1);
                View.AddDataSelector(EditEntityArea.TemporaryDisplayView);
            }
        }
コード例 #2
0
        private void View_ProcessSelected(object sender, ProcessSelectedArg e)
        {
            var states = AgentUICoreMediator.GetAgentUICoreMediator.workflowService.GetProcessInitializeStates(e.ProcessID);

            View.States = states;
            if (states.Count == 1)
            {
                View.SelectedStateID = states.First().ID;
            }
            var proccess = ProcessList.First(x => x.ID == e.ProcessID);

            if (proccess.EntityID != 0)
            {
                EditEntityAreaInitializer editEntityAreaInitializer = new EditEntityAreaInitializer();
                editEntityAreaInitializer.IntracionMode = CommonDefinitions.UISettings.IntracionMode.Select;
                editEntityAreaInitializer.DataMode      = CommonDefinitions.UISettings.DataMode.One;
                editEntityAreaInitializer.EntityID      = proccess.EntityID;
                var searchEditEntityAreaResult = EditEntityAreaConstructor.GetEditEntityArea(editEntityAreaInitializer);
                if (searchEditEntityAreaResult.Item1 == null)
                {
                    if (!string.IsNullOrEmpty(searchEditEntityAreaResult.Item2))
                    {
                        AgentUICoreMediator.GetAgentUICoreMediator.UIManager.ShowMessage(searchEditEntityAreaResult.Item2);
                    }
                    return;
                }
                SearchEditEntityArea = searchEditEntityAreaResult.Item1 as I_EditEntityAreaOneData;
                SearchEditEntityArea.SetAreaInitializer(editEntityAreaInitializer);
                SearchEditEntityArea.DataItemSelected += SearchEditEntityArea_DataItemSelected;
                (sender as I_View_WorkflowRequestCreator).SearchView = SearchEditEntityArea.TemporaryDisplayView;
            }
            else
            {
                View.RemoveEntitySelector();
            }
            CheckWorkflowTitle();
            //var adminRoles = workflowService.GetProcessAdminRoles(e.ProcessID);
            //(sender as I_View_WorkflowRequestCreator).AdminRoles = adminRoles;
            //(sender as I_View_WorkflowRequestCreator).RequesterRoles = GetRequester().Roles;
        }
コード例 #3
0
        private void ProcessSearchLookup_SelectionChanged(object sender, SelectionChangedArg e)
        {
            if (e.SelectedItem != null)
            {
                var process           = e.SelectedItem as ProcessDTO;
                var fullProcess       = AgentUICoreMediator.GetAgentUICoreMediator.workflowService.GetProcess(AgentUICoreMediator.GetAgentUICoreMediator.GetRequester(), process.ID, true);
                var transitionActions = AgentUICoreMediator.GetAgentUICoreMediator.workflowService.GetTransitionActionsByProcessID(AgentUICoreMediator.GetAgentUICoreMediator.GetRequester(), fullProcess.ID);
                transitionActions.Insert(0, new TransitionActionDTO()
                {
                    ID = 0, Name = "همه اقدامها"
                });
                View.SetTransitionActionItems(transitionActions);
                fullProcess.States.Insert(0, new WFStateDTO()
                {
                    ID = 0, Name = "بدون فیلتر"
                });
                View.SetCurrentStateItems(fullProcess.States);
                View.SetHistoryStateItems(fullProcess.States);

                if (fullProcess.EntityID == 0)
                {
                    EditEntityArea = null;
                    View.RemoveDataSelector();
                }
                else
                {
                    AddDataSelector(fullProcess.EntityID);
                }
            }
            else
            {
                EditEntityArea = null;
                View.RemoveDataSelector();
                View.SetTransitionActionItems(new List <TransitionActionDTO>());
                View.SetCurrentStateItems(new List <WFStateDTO>());
                View.SetHistoryStateItems(new List <WFStateDTO>());
            }
        }
コード例 #4
0
        /// <summary>
        /// /////////////////////////مشترک
        /// </summary>
        /// <param name="relationshipID"></param>
        /// <param name="editEntityArea"></param>
        /// <param name="parentRelationData"></param>
        /// <returns></returns>
        public ChildRelationshipInfo SerachDataFromParentRelationForChildDataView(RelationshipDTO relationship, I_EditEntityAreaOneData sourceEditEntityArea, I_EditEntityArea targetEditEntityArea, DP_DataRepository parentRelationData)
        {
            var requester = AgentUICoreMediator.GetAgentUICoreMediator.GetRequester();

            ChildRelationshipInfo childRelationshipInfo = null;

            childRelationshipInfo = parentRelationData.ChildRelationshipInfos.FirstOrDefault(x => x.Relationship.ID == relationship.ID);
            if (childRelationshipInfo == null)
            {
                childRelationshipInfo = parentRelationData.AddChildRelationshipInfo(relationship);
            }
            else
            {
                throw new Exception("Asd");
            }

            //سکوریتی داده اعمال میشود

            var searchDataItem = relationshipManager.GetSecondSideSearchDataItemByRelationship(parentRelationData, relationship.ID);

            if (searchDataItem != null)
            {
                // DR_SearchEditRequest request = new DR_SearchEditRequest(requester, searchDataItem, targetEditEntityArea.AreaInitializer.SecurityReadOnly, true);
                DR_SearchEditRequest request = new DR_SearchEditRequest(requester, searchDataItem);
                var childFullData            = AgentUICoreMediator.GetAgentUICoreMediator.requestRegistration.SendSearchEditRequest(request).ResultDataItems;
                var countRequest             = new DR_SearchCountRequest(requester);
                countRequest.SearchDataItems        = searchDataItem;
                countRequest.Requester.SkipSecurity = true;
                var  count            = AgentUICoreMediator.GetAgentUICoreMediator.requestRegistration.SendSearchCountRequest(countRequest);
                bool secutrityImposed = false;
                if (count.ResultCount != childFullData.Count)
                {
                    secutrityImposed = true;
                }


                if (!secutrityImposed)
                {
                    foreach (var data in childFullData)
                    {
                        data.IsDBRelationship = true;
                        data.DataView         = GetDataView(data);
                        childRelationshipInfo.AddDataToChildRelationshipInfo(data, true);
                    }
                }
                else
                {
                    childRelationshipInfo.SecurityIssue = true;
                }
            }
            return(childRelationshipInfo);
            //foreach (var item in childFullData)
            //    searchedData.Add(new Tuple<DP_DataRepository, DP_DataView>(item, null));

            //return AddEditSearchData(searchedData, editEntityArea);
        }