Exemplo n.º 1
0
        private void AddConditionChildren(QueryConditionDefData result, Condition condition)
        {
            if (result == null)
            {
                return;
            }

            if (result.Items == null)
            {
                result.Items = new List <QueryItemDefData>();
            }

            var en = DataContext.GetEntityDataContext().Entities;

            var children = en.Object_Defs.OfType <Condition>()
                           .Where(o => o.Parent_Id == condition.Id && (o.Deleted == null || o.Deleted == false))
                           .OrderBy(o => o.Order_Index).ToList();

            foreach (var child in children)
            {
                var sub = CreateQueryCondition(child);
                if (sub != null)
                {
                    result.Items.Add(sub);
                }
            }
        }
Exemplo n.º 2
0
        private QueryConditionDefData CreateQueryCondition(Condition condition)
        {
            var result = new QueryConditionDefData
            {
                Id                 = condition.Id,
                Expression         = (ExpressionOperation)(condition.Expression ?? 0),
                Operation          = ToConditionOperation(condition.Operation),
                LeftSourceName     = condition.Left_Source,
                LeftAttributeId    = condition.Left_Attribute_Id,
                LeftAttributeName  = condition.Left_Attribute_Name,
                LeftValue          = condition.Left_Value,
                LeftParamName      = condition.Left_Param_Name,
                RightSourceName    = condition.Right_Source,
                RightAttributeId   = condition.Right_Attribute_Id,
                RightAttributeName = condition.Right_Attribute_Name,
                RightValue         = condition.Right_Value,
                RightParamName     = condition.Right_Param_Name,
                Permissions        = _permissionRepo.GetObjectDefPermissions(condition.Id)
            };

            AddConditionChildren(result, condition);

            return(result);
        }
Exemplo n.º 3
0
 public QueryConditionParamDefData(string paramName, QueryConditionDefData condition)
 {
     ParamName = paramName;
     Condition = condition;
 }