public static IList <ConditionalOperator> GetConditionalOperators(string langCode, bool forceUpdate = false) { if (!ConditionalOperators.ContainsKey(langCode)) { ConditionalOperators.GetOrAdd(langCode, new List <ConditionalOperator>()); //TODO: Make database call to get name using LookupEnums.RelationalOperator //Iterate ConditionalOperators and only update it's LangName from MessageRefType table by Language. // Like Active = Activo same way Greater than in spanish = 'mas grande que' ConditionalOperators[langCode].Add(new ConditionalOperator { Operator = RelationalOperator.And, SysRefName = "&&", LangName = "And" }); ConditionalOperators[langCode].Add(new ConditionalOperator { Operator = RelationalOperator.Or, SysRefName = "||", LangName = "Or" }); ConditionalOperators[langCode].Add(new ConditionalOperator { Operator = RelationalOperator.GreaterThan, SysRefName = ">", LangName = "Greater Than" }); ConditionalOperators[langCode].Add(new ConditionalOperator { Operator = RelationalOperator.GreaterThanEqual, SysRefName = ">=", LangName = "Greater Than Equal to" }); ConditionalOperators[langCode].Add(new ConditionalOperator { Operator = RelationalOperator.LessThan, SysRefName = "<", LangName = "Less Than" }); ConditionalOperators[langCode].Add(new ConditionalOperator { Operator = RelationalOperator.LessThanEqual, SysRefName = "<=", LangName = "Less Than Equal to" }); ConditionalOperators[langCode].Add(new ConditionalOperator { Operator = RelationalOperator.Equal, SysRefName = "==", LangName = "Equals to" }); ConditionalOperators[langCode].Add(new ConditionalOperator { Operator = RelationalOperator.NotEqual, SysRefName = "!=", LangName = "Not Equals to" }); } return(ConditionalOperators[langCode]); }
public void GetEnum_StateUnderTest_ExpectedBehavior() { // Arrange // Act var result = ConditionalOperators.GetEnum(); // Assert Assert.True(result.Any()); }
internal QueryGenerator <T> Condition(ConditionalOperators conditionOperator) { if (_tempBodies.Any()) { var expression = _tempBodies.Last(); expression.Method = conditionOperator; } return(this); }
/// <summary> /// To start English version of it on Application start /// </summary> /// <param name="langCode">1 for EN</param> public static void Initialize(string langCode) { Tables = new Dictionary <EntitiesAlias, TableReference>(); RibbonMenus.GetOrAdd(langCode, new List <RibbonMenu>()); IdRefLangNames.GetOrAdd(langCode, new ConcurrentDictionary <int, IList <IdRefLangName> >()); PageInfos.GetOrAdd(langCode, new ConcurrentDictionary <EntitiesAlias, IList <PageInfo> >()); Operations.GetOrAdd(langCode, new ConcurrentDictionary <LookupEnums, IList <Operation> >()); DisplayMessages.GetOrAdd(langCode, new ConcurrentDictionary <string, DisplayMessage>()); ColumnSettings.GetOrAdd(langCode, new ConcurrentDictionary <EntitiesAlias, IList <ViewModels.ColumnSetting> >()); GridColumnSettings.GetOrAdd(langCode, new ConcurrentDictionary <EntitiesAlias, IList <ViewModels.ColumnSetting> >()); ValidationRegExpressions.GetOrAdd(langCode, new ConcurrentDictionary <EntitiesAlias, IList <ValidationRegEx> >()); MasterTables.GetOrAdd(langCode, new ConcurrentDictionary <EntitiesAlias, object>()); ConditionalOperators.GetOrAdd(langCode, new List <ConditionalOperator>()); SysSettings.GetOrAdd(langCode, new SysSetting()); BusinessConfiguration.GetOrAdd(langCode, new BusinessConfiguration()); }
/// <summary> /// To start English version of it on Application start /// </summary> /// <param name="langCode">1 for EN</param> public static void Initialize(string langCode) { RibbonMenus.GetOrAdd(langCode, new List <RibbonMenu>()); IdRefLangNames.GetOrAdd(langCode, new ConcurrentDictionary <int, IList <IdRefLangName> >()); PageInfos.GetOrAdd(langCode, new ConcurrentDictionary <EntitiesAlias, IList <PageInfo> >()); Operations.GetOrAdd(langCode, new ConcurrentDictionary <LookupEnums, IList <Operation> >()); DisplayMessages.GetOrAdd(langCode, new ConcurrentDictionary <string, DisplayMessage>()); ColumnSettings.GetOrAdd(langCode, new ConcurrentDictionary <EntitiesAlias, IList <ColumnSetting> >()); GridColumnSettings.GetOrAdd(langCode, new ConcurrentDictionary <EntitiesAlias, IList <ColumnSetting> >()); ValidationRegExpressions.GetOrAdd(langCode, new ConcurrentDictionary <EntitiesAlias, IList <ValidationRegEx> >()); MasterTables.GetOrAdd(langCode, new ConcurrentDictionary <EntitiesAlias, object>()); ConditionalOperators.GetOrAdd(langCode, new List <ConditionalOperator>()); BusinessConfiguration.GetOrAdd(langCode, new BusinessConfiguration()); List <Task> tasks = new List <Task>(); tasks.Add(Task.Factory.StartNew(() => { GetRibbonMenus(langCode); GetTables(); InitializerOperations(langCode); GetSystemSettings(langCode); })); if (tasks.Count > 0) { Task.WaitAll(tasks.ToArray()); } #region Nav Cache Commented Code ////string username = M4PBusinessContext.ComponentSettings.NavAPIUserName; ////string password = M4PBusinessContext.ComponentSettings.NavAPIPassword; ////string serviceURL = M4PBusinessContext.ComponentSettings.NavAPIUrl; ////NAVOrderItemResponse.GetOrAdd(langCode, new NAVOrderItemResponse()); ////DimensionValues.GetOrAdd(langCode, new NavSalesOrderDimensionResponse()); ////GetNavSalesOrderDimensionValues(langCode, username, password, serviceURL); ////CachedNavSalesOrder.GetOrAdd(langCode, new NavSalesOrderPostedInvoiceResponse()); ////GetCachedNavSalesOrderValues(langCode, username, password, serviceURL); ////CachedNavPurchaseOrder.GetOrAdd(langCode, new NavPurchaseOrderPostedInvoiceResponse()); ////GetCachedNavPurchaseOrderValues(langCode, username, password, serviceURL); ////CachedNavSalesLine.GetOrAdd(langCode, new NavSalesOrderItemResponse()); ////GetCachedNavSalesOrderItemValues(langCode, username, password, serviceURL); ////CachedNavPurchaseLine.GetOrAdd(langCode, new NavPurchaseOrderItemResponse()); ////GetCachedNavPurchaseOrderItemValues(langCode, username, password, serviceURL); #endregion Nav Cache Commented Code }
private static void InitializerOperations(string langCode) { GetOperations(langCode, LookupEnums.OperationType); GetDisplayMessageByCode(langCode, DbConstants.SaveSuccess); GetDisplayMessageByCode(langCode, DbConstants.DeleteSuccess); GetDisplayMessageByCode(langCode, DbConstants.UpdateSuccess); GetDisplayMessageByCode(langCode, DbConstants.SaveError); GetDisplayMessageByCode(langCode, DbConstants.DeleteError); GetDisplayMessageByCode(langCode, DbConstants.UpdateError); if (!ConditionalOperators.ContainsKey(langCode)) { ConditionalOperators.GetOrAdd(langCode, new List <ConditionalOperator>()); } ConditionalOperators[langCode].Add(new ConditionalOperator { Operator = RelationalOperator.And, SysRefName = "&&", LangName = "And" }); ConditionalOperators[langCode].Add(new ConditionalOperator { Operator = RelationalOperator.Or, SysRefName = "||", LangName = "Or" }); ConditionalOperators[langCode].Add(new ConditionalOperator { Operator = RelationalOperator.GreaterThan, SysRefName = ">", LangName = "Greater Than" }); ConditionalOperators[langCode].Add(new ConditionalOperator { Operator = RelationalOperator.GreaterThanEqual, SysRefName = ">=", LangName = "Greater Than Equal to" }); ConditionalOperators[langCode].Add(new ConditionalOperator { Operator = RelationalOperator.LessThan, SysRefName = "<", LangName = "Less Than" }); ConditionalOperators[langCode].Add(new ConditionalOperator { Operator = RelationalOperator.LessThanEqual, SysRefName = "<=", LangName = "Less Than Equal to" }); ConditionalOperators[langCode].Add(new ConditionalOperator { Operator = RelationalOperator.Equal, SysRefName = "==", LangName = "Equals to" }); ConditionalOperators[langCode].Add(new ConditionalOperator { Operator = RelationalOperator.NotEqual, SysRefName = "!=", LangName = "Not Equals to" }); }
static List <CsvLineRule> Create(IEnumerable <ICondition> conditions) { var aResult = new List <CsvLineRule>(); conditions = conditions ?? new List <Condition>(); conditions.Select(x => x.condition).ToList().ForEach(x => { if (!ConditionalOperators.GetEnum().Contains(x)) { throw new ConfigException($"Error en el archivo de configuración, el orperador {x} no exite" + $"{Environment.NewLine}" + $"Los operadores permitidos son:" + $"{String.Join(" ,", ConditionalOperators.GetEnum().Select(y => y))}"); } }); foreach (var item in conditions) { switch (item.condition) { case ConditionalOperators.equal: aResult.Add(new CsvLineRule(x => { var i = 0; foreach (var val in getValues(x, item.column)) { i++; var oEx = new ConditionException($"Posición({i}): el registro '{val}' es difetente de '{item.value}'"); if (float.TryParse(val, out var fVar) && float.TryParse(item.value, out var fItem)) { if (fVar != fItem) { throw oEx; } } else { if (val != item.value) { throw oEx; } } } return(true); })); break; case ConditionalOperators.greater: aResult.Add(new CsvLineRule(x => { var i = 0; foreach (var val in getValues(x, item.column)) { i++; if (float.TryParse(val, out var fVar) && float.TryParse(item.value, out var fItem)) { if (fVar <= fItem) { throw new ConditionException($"Posición({i}): el registro '{val}' es menor o igual que {item.value}"); } } else { throw new ConditionException($"Posición({i}): el registro '{val}' no tiene formato de número para la comparación de >"); } } return(true); })); break; case ConditionalOperators.greaterEqual: aResult.Add(new CsvLineRule(x => { var i = 0; foreach (var val in getValues(x, item.column)) { i++; if (float.TryParse(val, out var fVar) && float.TryParse(item.value, out var fItem)) { if (fVar < fItem) { throw new ConditionException($"Posición({i}): el registro '{val}' es menor que {item.value}"); } } else { throw new ConditionException($"Posición({i}): el registro '{val}' no tiene formato de número para la comparación de >="); } } return(true); })); break; case ConditionalOperators.minor: aResult.Add(new CsvLineRule(x => { var i = 0; foreach (var val in getValues(x, item.column)) { i++; if (float.TryParse(val, out var fVar) && float.TryParse(item.value, out var fItem)) { if (fVar >= fItem) { throw new ConditionException($"Posición({i}): el registro '{val}' es mayor o igual que {item.value}"); } } else { throw new ConditionException($"Posición({i}): el registro '{val}' no tiene formato de número para la comparación de <"); } } return(true); })); break; case ConditionalOperators.minorEqual: aResult.Add(new CsvLineRule(x => { var i = 0; foreach (var val in getValues(x, item.column)) { i++; if (float.TryParse(val, out var fVar) && float.TryParse(item.value, out var fItem)) { if (fVar > fItem) { throw new ConditionException($"Posición({i}): el registro '{val}' es mayor que '{item.value}'"); } } else { throw new ConditionException($"Posición({i}): el registro '{val}' no tiene formato de número para la comparación de >"); } } return(true); })); break; case ConditionalOperators.notEqual: aResult.Add(new CsvLineRule(x => { var i = 0; foreach (var val in getValues(x, item.column)) { var oEx = new ConditionException($"Posición({i}): el registro '{val}' no es diferente de '{item.value}'"); if (float.TryParse(val, out var fVar) && float.TryParse(item.value, out var fItem)) { if (fVar == fItem) { throw oEx; } } else { if (val == item.value) { throw oEx; } } } return(true); })); break; } } return(aResult); }
public FilterMethodAttribute(FilterMethods methodName, ConditionalOperators conditionalOperator, string propertyName = null) : this(methodName, propertyName) { ConditionalOperator = conditionalOperator; }
/// <summary> /// /// </summary> /// <param name="op">The operator for the conditions ('AND', or 'OR')</param> /// <param name="conditions">Conditions to add to the list (1 or more)</param> public ConditionList(ConditionalOperators op, params Condition[] conditions) { ConditionalOperator = op; Conditions = conditions.ToList(); }
/// <summary> /// Class representing a list of Conditions /// </summary> /// <param name="conditions">An Enumerable list of conditions</param> /// <param name="op">The operator for the conditions ('AND', or 'OR')</param> public ConditionList(List<Condition> conditions, ConditionalOperators op) { Conditions = conditions; ConditionalOperator = op; }