public UIActionActivityDTO ToActionActivityDTO(UIActionActivity item, bool withDetails) { UIActionActivityDTO result = new UIActionActivityDTO(); result.Type = (Enum_ActionActivityType)item.Type; if (withDetails && result.Type == Enum_ActionActivityType.ColumnValue) { foreach (var dbitem in item.UIColumnValue) { result.UIColumnValue.Add(ToColumnValueDTO(dbitem)); } } if (withDetails && result.Type == Enum_ActionActivityType.UIEnablity) { foreach (var dbitem in item.UIEnablityDetails) { result.UIEnablityDetails.Add(ToUIEnablityDetailsDTO(result.UIEnablityDetails, dbitem)); } } if (withDetails && result.Type == Enum_ActionActivityType.ColumnValueRange) { foreach (var dbitem in item.UIColumnValueRange) { result.UIColumnValueRange.Add(ToUIColumnValueRangeDTO(dbitem)); } } //if (withDetails && result.Type == Enum_ActionActivityType.ColumnValueRangeReset) //{ // foreach (var dbitem in item.UIColumnValueRangeReset) // result.UIColumnValueRangeReset.Add(ToUIColumnValueRangeResetDTO(dbitem)); //} //if (withDetails && result.Type == Enum_ActionActivityType.RelationshipEnablity) //{ // var relationshipEnablity = item.RelationshipEnablity.First(); // result.RelationshipEnablityID = relationshipEnablity.ID; // result.RelationshipEnablity = ToRelationshipEnablityDTO(relationshipEnablity); //} result.ID = item.ID; result.EntityID = item.TableDrivedEntityID; // result.Step = (Enum_EntityActionActivityStep)item.StepType; // result.ResultSensetive = item.ResultSensetive == true; //result.ActionActivityType = (Enum_ActionActivityType)item.ActivityType; result.Title = item.Title; result.RelatedStates = ""; foreach (var state in item.EntityState_UIActionActivity) { result.RelatedStates += (result.RelatedStates == "" ? "" : " , ") + state.TableDrivedEntityState.Title; } return(result); }
//bool VisualActions { set; get; } //bool IncludeSteps { set; get; } //فرم جدا هم صدا زده شود public frmUIActionActivity(int actionActivityID, int entityID) { InitializeComponent(); //EntityID = entityID; //Catalog = catalog; //IncludeSteps = includeSteps; // SetAllowedActivityTypes(); ActionActivityID = actionActivityID; EntityID = entityID; //CodeFunctionParamType = codeFunctionParamType; //if(EntityID==0) //{ // optRelationshipEnablity.Visibility = Visibility.Collapsed; // tabRelationshipEnablity.Visibility = Visibility.Collapsed; // optColumnValue.Visibility = Visibility.Collapsed; // tabColumnValue.Visibility = Visibility.Collapsed; //} //else //{ SetCombos(); //if (ActionActivityTypes.Contains(Enum_ActionActivityType.CodeFunction)) // SetCodeFunctions(); if (ActionActivityID == 0) { Message = new UIActionActivityDTO(); dtgDetails.ItemsSource = Message.UIEnablityDetails; dtgColumnValue.ItemsSource = Message.UIColumnValue; dtgColumnValueRange.ItemsSource = Message.UIColumnValueRange; //dtgColumnValueRangeReset.ItemsSource = Message.UIColumnValueRangeReset; } else { GetActionActivity(ActionActivityID); } ControlHelper.GenerateContextMenu(dtgDetails); ControlHelper.GenerateContextMenu(dtgColumnValue); ControlHelper.GenerateContextMenu(dtgColumnValueRange); // ControlHelper.GenerateContextMenu(dtgColumnValueRangeReset); dtgColumnValueRange.CellEditEnded += DtgColumnValueRange_CellEditEnded; dtgColumnValueRange.RowLoaded += DtgColumnValueRange_RowLoaded; }
public int UpdateActionActivitys(UIActionActivityDTO UIActionActivity) { using (var projectContext = new DataAccess.MyProjectEntities()) { var dbActionActivity = projectContext.UIActionActivity.FirstOrDefault(x => x.ID == UIActionActivity.ID); if (dbActionActivity == null) { dbActionActivity = new DataAccess.UIActionActivity(); } if (dbActionActivity.UIColumnValue != null) { while (dbActionActivity.UIColumnValue.Any()) { projectContext.UIColumnValue.Remove(dbActionActivity.UIColumnValue.First()); } } if (UIActionActivity.UIColumnValue.Any()) { foreach (var item in UIActionActivity.UIColumnValue) { var dbColumnValue = new UIColumnValue(); dbColumnValue.ColumnID = item.ColumnID; dbColumnValue.ExactValue = item.ExactValue; dbColumnValue.EvenIsNotNew = item.EvenIsNotNew; dbColumnValue.EvenHasValue = item.EvenHasValue; //while (dbColumnValue.ColumnValue_ValidValues.Any()) // dbColumnValue.ColumnValue_ValidValues.Remove(dbColumnValue.ColumnValue_ValidValues.First()); //foreach (var value in UIActionActivity.ColumnValue.ValidValues) // dbColumnValue.ColumnValue_ValidValues.Add(new ColumnValue_ValidValues() { ValidValue = value.Value }); dbActionActivity.UIColumnValue.Add(dbColumnValue); } } //if (UIActionActivity.UIEnablity.EntityRelationshipTailID != 0) // dbUIEnablity.EntityRelationshipTailID = UIActionActivity.UIEnablity.EntityRelationshipTailID; //else // dbUIEnablity.EntityRelationshipTailID = null; while (dbActionActivity.UIEnablityDetails.Any()) { projectContext.UIEnablityDetails.Remove(dbActionActivity.UIEnablityDetails.First()); } foreach (var item in UIActionActivity.UIEnablityDetails) { //if (item.RelationshipID != 0) //{ // var relationship = projectContext.Relationship.First(x => x.ID == item.RelationshipID); // if (relationship.MasterTypeEnum == (short)Enum_MasterRelationshipType.FromPrimartyToForeign) // { // throw new Exception("امکان تععین وضعیت برای رابطه" + " " + relationship.ID + " " + "میسر نمی باشد"); // } // else // { // foreach (var relCol in relationship.RelationshipColumns) // { // UIEnablityDetails dbItem = new UIEnablityDetails(); // dbItem.Hidden = item.Hidden; // dbItem.Readonly = item.Readonly; // dbItem.ColumnID = relCol.FirstSideColumnID; // dbActionActivity.UIEnablityDetails.Add(dbItem); // } // } //} //else //{ UIEnablityDetails dbItem = new UIEnablityDetails(); dbItem.Hidden = item.Hidden; dbItem.Readonly = item.Readonly; if (item.ColumnID != 0) { dbItem.ColumnID = item.ColumnID; } else { dbItem.ColumnID = null; } if (item.RelationshipID != 0) { dbItem.RelationshipID = item.RelationshipID; } else { dbItem.RelationshipID = null; } //if (item.UICompositionID != 0) // dbItem.EntityUICompositionID = item.UICompositionID; //else // dbItem.EntityUICompositionID = null; dbActionActivity.UIEnablityDetails.Add(dbItem); //} } while (dbActionActivity.UIColumnValueRange.Any()) { projectContext.UIColumnValueRange.Remove(dbActionActivity.UIColumnValueRange.First()); } foreach (var item in UIActionActivity.UIColumnValueRange) { UIColumnValueRange dbItem = new UIColumnValueRange(); dbItem.ColumnValueRangeID = item.ColumnValueRangeID; dbItem.EnumTag = (short)item.EnumTag; dbItem.Value = item.Value; dbActionActivity.UIColumnValueRange.Add(dbItem); } //while (dbActionActivity.UIColumnValueRangeReset.Any()) // projectContext.UIColumnValueRangeReset.Remove(dbActionActivity.UIColumnValueRangeReset.First()); //foreach (var item in UIActionActivity.UIColumnValueRangeReset) //{ // UIColumnValueRangeReset dbItem = new UIColumnValueRangeReset(); // dbItem.ColumnValueRangeID = item.ColumnValueRangeID; // dbActionActivity.UIColumnValueRangeReset.Add(dbItem); //} //if (UIActionActivity.RelationshipEnablity != null && UIActionActivity.RelationshipEnablity.EntityRelationshipTailID != 0) //{ // var dbRelationshipEnablity = dbActionActivity.RelationshipEnablity.FirstOrDefault(); // if (dbRelationshipEnablity == null) // dbRelationshipEnablity = new RelationshipEnablity(); // dbRelationshipEnablity.EntityRelationshipTailID = UIActionActivity.RelationshipEnablity.EntityRelationshipTailID; // dbRelationshipEnablity.Enabled = UIActionActivity.RelationshipEnablity.Enable; // dbRelationshipEnablity.Readonly = UIActionActivity.RelationshipEnablity.Readonly; // if (dbRelationshipEnablity.ID == 0) // dbActionActivity.RelationshipEnablity.Add(dbRelationshipEnablity); //} //else //{ // //پاک کردنش //} dbActionActivity.ID = UIActionActivity.ID; dbActionActivity.Type = (short)UIActionActivity.Type; //dbActionActivity.ActivityType = (short)UIActionActivity.ActionActivityType; dbActionActivity.Title = UIActionActivity.Title; dbActionActivity.TableDrivedEntityID = UIActionActivity.EntityID; //dbActionActivity.StepType = (short)UIActionActivity.Step; //dbActionActivity.ResultSensetive = UIActionActivity.ResultSensetive; if (dbActionActivity.ID == 0) { projectContext.UIActionActivity.Add(dbActionActivity); } projectContext.SaveChanges(); return(dbActionActivity.ID); } }
private void btnNew_Click(object sender, RoutedEventArgs e) { Message = new UIActionActivityDTO(); ShowMessage(); }