Exemple #1
0
        public async Task <string> Get(string login, DateTime?startDate, DateTime?endDate, InvoiceDateQuery dateToQuery, string[] code = null, string[] ids = null, string[] fields = null, int limit = 50,
                                       int offset = 0)
        {
            var request = _sierraRestClient.Execute(Branch.invoices, "/", Method.GET);

            if (startDate.HasValue && endDate.HasValue)
            {
                request.AddQueryParameter(dateToQuery.ToString(), DateHelpers.FormatSierraDateRange(startDate.Value, endDate.Value));
            }
            request.AddQueryParameter("login", login.Trim());

            if (fields != null)
            {
                request.AddQueryParameter("fields", string.Join(",", fields));
            }

            if (code != null)
            {
                request.AddQueryParameter("code", string.Join(",", code));
            }

            if (ids != null)
            {
                request.AddQueryParameter("id", string.Join(",", ids));
            }

            request.AddQueryParameter("limit", limit.ToString());

            request.AddQueryParameter("offset", offset.ToString());

            // execute the request
            var result = await _sierraRestClient.Client.ExecuteAsync(request);

            return(result.Content);
        }
Exemple #2
0
        /// <inheritdoc />
        /// <summary>
        /// Returns a true if barcode is already in the system
        /// </summary>
        /// <param name="barcode"></param>
        /// <returns></returns>
        public virtual bool CheckIfBarcodeExists(string barcode)
        {
            var request = _sierraRestClient.Execute(Branch.patrons, "/find", Method.GET);

            request.AddQueryParameter("varFieldTag", "b");
            request.AddQueryParameter("varFieldContent", barcode.Trim());
            request.AddQueryParameter("fields", "id");

            var result = _sierraRestClient.Client.Execute(request);

            return(result.StatusCode != HttpStatusCode.NotFound);
        }
Exemple #3
0
        public async Task <string> Get(string[] itemIds = null, string status      = "", string[] bibIds = null, string[] fields = null, string[] locations = null, int limit = 50,
                                       int offset       = 0, string suppressedOnly = "")
        {
            var request = _sierraRestClient.Execute(Branch.items, "/", Method.GET);

            if (fields != null)
            {
                request.AddQueryParameter("fields", string.Join(",", fields));
            }

            if (itemIds != null)
            {
                request.AddQueryParameter("id", string.Join(",", itemIds));
            }

            if (locations != null)
            {
                request.AddQueryParameter("locations", string.Join(",", locations));
            }

            if (!string.IsNullOrWhiteSpace(status))
            {
                request.AddQueryParameter("status", status);
            }
            if (!string.IsNullOrWhiteSpace(suppressedOnly))
            {
                request.AddQueryParameter("suppressed", suppressedOnly);
            }

            if (bibIds != null)
            {
                request.AddQueryParameter("bibIds", string.Join(",", bibIds));
            }

            request.AddQueryParameter("limit", limit.ToString());

            // execute the request
            var result = await _sierraRestClient.Client.ExecuteAsync(request);

            return(result.Content);
        }
        /// <summary>
        /// Returns a full patron objedt with all var fields.
        /// </summary>
        /// <param name="index"></param>
        /// <param name="fields"></param>
        /// <param name="query"></param>
        /// <param name="limit"></param>
        /// <returns></returns>
        public async Task <string> Search(Indexes index, string query, string[] fields = null, int limit = 20)
        {
            if (fields is null)
            {
                fields = new[] { "title", "author", "publishYear" };
            }
            var request = _sierraRestClient.Execute(Branch.bibs, "/search", Method.GET);

            if (index != Indexes.none)
            {
                request.AddQueryParameter("index", index.ToString());
            }
            request.AddQueryParameter("fields", string.Join(",", fields));
            request.AddQueryParameter("text", query.ToLower());
            request.AddQueryParameter("limit", limit.ToString());

            // execute the request
            var result = await _sierraRestClient.Client.ExecuteGetAsync(request);

            return(result.Content);
        }
Exemple #5
0
        public async Task <string> Get(int id, string fields)
        {
            var request = _sierraRestClient.Execute(Branch.patrons, @"/" + id, Method.GET);

            request.AddQueryParameter("fields", fields);
            // execute the request
            var x = await _sierraRestClient.Client.ExecuteAsync(request);

            return(x.Content);
        }