public TransitionDTO ToTransitionDTO(DR_Requester requester, DataAccess.Transition item, bool withDetails) { TransitionDTO result = new TransitionDTO(); result.ID = item.ID; result.CurrentStateID = item.CurrentStateID; result.NextStateID = item.NextStateID; result.Name = item.Name; result.ProcessID = item.ProcessID; if (withDetails) { BizState bizState = new BizState(); result.CurrentState = bizState.ToStateDTO(item.State, false); result.NextState = bizState.ToStateDTO(item.State1, false); BizActivity bizActivity = new BizActivity(); foreach (var act in item.TransitionActivity) { result.TransitionActivities.Add(bizActivity.ToActivityDTO(act.Activity, withDetails)); } foreach (var act in item.TransitionAction) { result.TransitionActions.Add(ToTransitionAction(requester, act, withDetails)); } } return(result); }
private void ConnectionManipulated(IConnection tmpconnection, IShape shape1, IShape shape2) { var transitionConnection = TransitionConnections.FirstOrDefault(x => x.Item2 == tmpconnection); //var shape1 = tmpconnection.Source; //var shape2 = tmpconnection.Target; IConnection newConnection = null; TransitionDTO transition = null; if (transitionConnection != null) { transition = transitionConnection.Item1; diagram.RemoveConnection(tmpconnection); TransitionConnections.Remove(transitionConnection); } else { transition = new TransitionDTO(); transition.ProcessID = ProcessID; } newConnection = CreateConnection(shape1, shape2); newConnection.Content = GetConnectionContent(transition); newConnection.TargetCapType = CapType.Arrow1Filled; transitionConnection = new Tuple <TransitionDTO, IConnection>(transition, newConnection); TransitionConnections.Add(transitionConnection); transitionConnection.Item1.CurrentStateID = (shape1 as StateShape).StateID; transitionConnection.Item1.CurrentState = States.First(x => x.ID == (shape1 as StateShape).StateID); transitionConnection.Item1.NextStateID = (shape2 as StateShape).StateID; transitionConnection.Item1.NextState = States.First(x => x.ID == (shape2 as StateShape).StateID); //////if (!transition.TransitionActions.Any()) //////{ ////// EditTransitionActions(transitionConnection); //////} }
public frmTransitionInfo(ProcessDTO process, TransitionDTO transition) { InitializeComponent(); Transition = transition; //TransitionActions = transitionActions; Process = process; ShowMessage(); SetBaseData(); dtgTransitionActionList.SelectionChanged += dtgTransitionActionList_SelectionChanged; ControlHelper.GenerateContextMenu(dtgFormulaList); ControlHelper.GenerateContextMenu(dtgTransitionActionList); ControlHelper.GenerateContextMenu(dtgListActivities); ControlHelper.GenerateContextMenu(dtgEntityGroup); ControlHelper.GenerateContextMenu(dtgActionTargets); dtgActionTargets.CellEditEnded += DtgActionTargets_CellEditEnded; dtgActionTargets.RowLoaded += DtgActionTargets_RowLoaded; colEntityGroup.EditItemEnabled = true; colEntityGroup.NewItemEnabled = true; colEntityGroup.EditItemClicked += ColEntityGroup_EditItemClicked; }
public frmTransitionAction(TransitionDTO transition) { InitializeComponent(); Transition = transition; //TransitionActions = transitionActions; dtgList.SelectionChanged += DtgList_SelectionChanged; SetBaseData(); tabControl.IsEnabled = false; //Actions = bizAction.GetActions(ProcessID,).Where(x => TransitionActions.Select(y => y.ActionID).Contains(x.ID)).ToList(); dtgList.ItemsSource = Transition.TransitionActions; if (Transition.TransitionActions.Count == 1) { TransitionActionSelected(Transition.TransitionActions.First()); } ControlHelper.GenerateContextMenu(dtgFormList); ControlHelper.GenerateContextMenu(dtgFormulaList); if (Transition.CurrentState != null) { if (Transition.CurrentState.StateType == StateType.Start) { tabForms.Visibility = Visibility.Collapsed; } } }
//private void btnEdit_Click(object sender, RoutedEventArgs e) //{ // if (TransitionEditActions != null) // { // TransitionEditActions(this, new TransitionEditArg() { Transition = Transition }); // } //} internal void SetInfo(TransitionDTO transition) { //بهتره همه دکمه ها یکی بشه lblTitle.Text = transition.Name + Environment.NewLine + "اقدام" + " : " + transition.TransitionActions.Count + "-" + "فعالیت" + " : " + transition.TransitionActivities.Count; var actionTooltip = ""; foreach (var item in transition.TransitionActions) { //if (item.Action == null) //{ // if (item.ActionID != 0) // { // BizAction bizAction = new MyModelManager.BizAction(); // item.Action = bizAction.GetAction(item.ActionID); // } //} actionTooltip += (actionTooltip == "" ? "" : Environment.NewLine) + item.Name; } var activityTooltip = ""; foreach (var item in transition.TransitionActivities) { activityTooltip += (activityTooltip == "" ? "" : Environment.NewLine) + item.Name; } lblTitle.ToolTip = "اقدامات" + Environment.NewLine + actionTooltip + Environment.NewLine + "فعالیتها" + Environment.NewLine + activityTooltip; }
public async Task <TransitionDTO> CreateAsync(TransitionDTO dto) { var model = _mapper.Map <Transition>(dto); await _unitOfWork.TransitionRepository.AddAsync(model); await _unitOfWork.SaveAsync(); return(_mapper.Map <TransitionDTO>(model)); }
private UC_ConnectionContent GetConnectionContent(TransitionDTO transition) { var content = new UC_ConnectionContent(transition); //content.TransitionEditActions += content_TransitionEditActions; //content.TransitionEditActivities += Content_TransitionEditActivities; content.TransitionInfo += Content_TransitionInfo; //content.TransitionEditForms += Content_TransitionEditForms; return(content); }
public UC_ConnectionContent(TransitionDTO transition) { //بهتره همه دکمه ها یکی بشه InitializeComponent(); Transition = transition; SetInfo(Transition); BizProcess bizProcess = new BizProcess(); var process = bizProcess.GetProcess(MyProjectManager.GetMyProjectManager.GetRequester(), transition.ProcessID, false); //if (process.EntityID == 0) //{ // btnEditTransitionActionForms.Visibility = Visibility.Collapsed; //} }
public async Task <TransitionDTO> UpdateAsync(TransitionDTO dto) { var model = _mapper.Map <Transition>(dto); if (model.IsFixed) { throw new ConstraintException("Can not be edited"); } if (dto.IsFixed) { throw new ArgumentException("Incorrect model"); } _unitOfWork.TransitionRepository.Update(model); await _unitOfWork.SaveAsync(); return(_mapper.Map <TransitionDTO>(model)); }
private IConnection GetConnection(TransitionDTO item) { //StateShape shape1 = GetStateShape(item.CurrentStateID); //StateShape shape2 = GetStateShape(item.CurrentStateID); foreach (var connection in diagram.Connections) { if (connection.Source is StateShape) { if (connection.Target is StateShape) { var source = (connection.Source as StateShape); var target = (connection.Target as StateShape); if (source.StateID == item.CurrentStateID && target.StateID == item.NextStateID) { return(connection); } } } } return(null); }