public OdooQuery <T> ThenOrderByDescending(Expression <Func <T, object> > expression) { var odooPropertyName = OdooExpresionMapper.GetOdooPropertyName(expression); this.Order += $", {odooPropertyName} DESC"; return(this); }
public OdooQuery <T> OrderBy(Expression <Func <T, object> > expression) { var odooPropertyName = OdooExpresionMapper.GetOdooPropertyName(expression); this.Order = $"{odooPropertyName} ASC"; return(this); }
public OdooDictionaryModel Add <T>(Expression <Func <T> > expression, object value) where T : IOdooAtributtesModel { if (TableName != null && TryGetOdooTableName(expression, out var tableName)) { TableName = tableName; } this[OdooExpresionMapper.GetOdooPropertyName(expression)] = value; return(this); }
public OdooDictionaryModel Add <T>(Expression <Func <T, Enum> > expression, Enum value) where T : IOdooAtributtesModel { if (TableName != null && TryGetOdooTableName(expression, out var tableName)) { TableName = tableName; } Add(OdooExpresionMapper.GetOdooPropertyName(expression), value.OdooValue()); return(this); }
public OdooQuery <T> Where <TForeignKeyLevel1>(Expression <Func <T, long?> > expression, Expression <Func <TForeignKeyLevel1, object> > expressionForeignKeyLevel1, OdooOperator odooOperator, object value) where TForeignKeyLevel1 : IOdooModel, new() { var fields = OdooExtensions.GetOdooPropertyName <T>(OdooExpresionMapper.GetPropertyName(expression)) + '.' + OdooExtensions.GetOdooPropertyName <TForeignKeyLevel1>(OdooExpresionMapper.GetPropertyName(expressionForeignKeyLevel1)); Filters.Add(new OdooFilter { fields, odooOperator.Description(), value }); return(this); }
public OdooQuery <T> Where(Expression <Func <T, object> > expression, OdooOperator odooOperator, object value) { Filters.Add(OdooFilterMapper.ToOdooExpresion <T>(OdooExpresionMapper.GetPropertyName(expression), odooOperator, value)); return(this); }