public Task <T> Get <T>(OdooSearchParameters getParams, OdooFieldParameters fieldParams, OdooPaginationParameters pagParams) { var searchReadCommand = new OdooSearchCommand(CreateRpcClient()); return(searchReadCommand.Execute <T>(this.SessionInfo, getParams, fieldParams, pagParams)); }
public Task <T> Get <T>(OdooSearchParameters getParams, OdooPaginationParameters pagParams) { return(Get <T>(getParams, new OdooFieldParameters(), pagParams)); }
public Task <T> Search <T>(OdooSearchParameters searchParams, OdooPaginationParameters pagParams) { var searchCommand = new OdooSearchCommand(CreateRpcClient()); return(searchCommand.Execute <T>(this.SessionInfo, searchParams, pagParams)); }
public Task <T> GetAll <T>(string model, OdooFieldParameters fieldParameters, OdooPaginationParameters pagParameters) { return(Get <T>(new OdooSearchParameters(model), fieldParameters, pagParameters)); }
private OdooRpcRequest CreateSearchRequest(OdooSessionInfo sessionInfo, string method, OdooSearchParameters searchParams, OdooFieldParameters fieldParams, OdooPaginationParameters pagParams) { List <object> requestArgs = new List <object>( new object[] { sessionInfo.Database, sessionInfo.UserId, sessionInfo.Password, searchParams.Model, method, new object[] { searchParams.DomainFilter.ToFilterArray() } } ); dynamic searchOptions = new ExpandoObject(); bool useSearchOptions = false; if (fieldParams != null && fieldParams.Count > 0) { searchOptions.fields = fieldParams.ToArray(); useSearchOptions = true; } if (pagParams != null && pagParams.IsDefined()) { pagParams.AddToParameters(searchOptions); useSearchOptions = true; } if (useSearchOptions) { requestArgs.Add(searchOptions); } return(new OdooRpcRequest() { service = "object", method = "execute_kw", args = requestArgs.ToArray(), context = sessionInfo.UserContext }); }
public Task <T> Execute <T>(OdooSessionInfo sessionInfo, OdooSearchParameters searchParams, OdooFieldParameters fieldParams, OdooPaginationParameters pagParams) { return(InvokeRpc <T>(sessionInfo, CreateSearchRequest(sessionInfo, "search_read", searchParams, fieldParams, pagParams))); }