예제 #1
0
        /// <summary>
        /// This method is used to get the distinct list
        /// </summary>
        /// <param name="actionToBeConverted"></param>
        /// <returns></returns>
        private IObservableList GetDistinctList(ObservableList <ConvertableActionDetails> actionToBeConverted)
        {
            ObservableList <ConvertableActionDetails> list = new ObservableList <ConvertableActionDetails>();

            foreach (var act in actionToBeConverted)
            {
                ConvertableActionDetails det = list.Where(x => x.SourceActionTypeName == act.SourceActionTypeName && x.TargetActionTypeName == act.TargetActionTypeName).FirstOrDefault();
                if (det == null)
                {
                    list.Add(act);
                }
            }
            return(list);
        }
예제 #2
0
        private void btnShowConvertibleActionTypes_Click(object sender, RoutedEventArgs e)
        {
            // clearing the list of actions to be converted before clicking on Convertible Actions buttons again to reflect the fresh list of convertible actions
            lstActionToBeConverted.Clear();

            // fetching list of selected convertible activities from the first grid
            List <Activity> lstSelectedActivities = mBusinessFlow.Activities.Where(x => x.SelectedForConversion).ToList();

            if (lstSelectedActivities.Count != 0)
            {
                foreach (Activity convertibleActivity in lstSelectedActivities)
                {
                    foreach (Act act in convertibleActivity.Acts)
                    {
                        if ((act is IObsoleteAction) && (((IObsoleteAction)act).IsObsoleteForPlatform(act.Platform)) &&
                            (act.Active))
                        {
                            ConvertableActionDetails existingConvertibleActionType = lstActionToBeConverted.Where(x => x.SourceActionType == act.GetType() && x.TargetActionTypeName == ((IObsoleteAction)act).TargetActionTypeName()).FirstOrDefault();
                            if (existingConvertibleActionType == null)
                            {
                                ConvertableActionDetails newConvertibleActionType = new ConvertableActionDetails();
                                newConvertibleActionType.SourceActionTypeName = act.ActionDescription.ToString();
                                newConvertibleActionType.SourceActionType     = act.GetType();
                                newConvertibleActionType.TargetActionType     = ((IObsoleteAction)act).TargetAction();
                                if (newConvertibleActionType.TargetActionType == null)
                                {
                                    continue;
                                }
                                newConvertibleActionType.TargetActionTypeName = ((IObsoleteAction)act).TargetActionTypeName();
                                newConvertibleActionType.ActionCount          = 1;
                                newConvertibleActionType.Actions.Add(act);
                                newConvertibleActionType.ActivityList.Add(convertibleActivity.ActivityName);
                                lstActionToBeConverted.Add(newConvertibleActionType);
                            }
                            else
                            {
                                if (!existingConvertibleActionType.Actions.Contains(act))
                                {
                                    existingConvertibleActionType.ActionCount++;
                                    existingConvertibleActionType.Actions.Add(act);
                                    existingConvertibleActionType.ActivityList.Add(convertibleActivity.ActivityName);
                                }
                            }
                        }
                    }
                }
                if (lstActionToBeConverted.Count != 0)
                {
                    gridConvertibleActions.DataSourceList = lstActionToBeConverted;
                    SetGridView();
                    gridConvertibleActions.Visibility      = Visibility.Visible;
                    btnConvert.Visibility                  = Visibility.Visible;
                    conversionConfigLblPanel.Visibility    = Visibility.Visible;
                    conversionConfigRadBtnPanel.Visibility = Visibility.Visible;
                    conversionBtnPanel.Visibility          = Visibility.Visible;
                    return;
                }
                else
                {
                    gridConvertibleActions.Visibility      = Visibility.Collapsed;
                    btnConvert.Visibility                  = Visibility.Collapsed;
                    conversionConfigLblPanel.Visibility    = Visibility.Collapsed;
                    conversionConfigRadBtnPanel.Visibility = Visibility.Collapsed;
                    Reporter.ToUser(eUserMsgKey.NoConvertibleActionsFound);
                    return;
                }
            }
            else
            {
                gridConvertibleActions.Visibility = Visibility.Collapsed;
            }
            btnConvert.Visibility = Visibility.Collapsed;
            conversionConfigLblPanel.Visibility    = Visibility.Collapsed;
            conversionConfigRadBtnPanel.Visibility = Visibility.Collapsed;
            Reporter.ToUser(eUserMsgKey.NoActivitySelectedForConversion);
        }