Example #1
0
        /// <summary>
        /// Gets the Sale summary
        /// </summary>
        /// <param name="saleNumber">Sale number</param>
        /// <param name="tillNumber">Till number</param>
        /// <param name="registerNumber">Register number</param>
        /// <returns></returns>
        public async Task <HttpResponseMessage> SaleSummary(HttpContent content, double?kickBackAmount)
        {
            var client = new HttpRestClient();
            var url    = string.Format(Urls.SaleSummary, kickBackAmount);

            return(await client.PostAsync(url, content, _cacheManager.AuthKey));
        }
Example #2
0
        /// <summary>
        /// Method to verify the stock restrictions before adding to sale
        /// </summary>
        /// <param name="saleNumber">Sale number</param>
        /// <param name="tillNumber">Till number</param>
        /// <param name="stockCode">Stock code</param>
        /// <param name="quantity">Quantity</param>
        /// <param name="isReturn">Is Return</param>
        /// <returns>HTTP response from the API</returns>
        public async Task <HttpResponseMessage> VerifyStock(HttpContent content)
        {
            var url    = string.Format(Urls.VerifyStock);
            var client = new HttpRestClient();

            return(await client.PostAsync(url, content, _cacheManager.AuthKey));
        }
Example #3
0
        public async Task <HttpResponseMessage> PayoutComplete(HttpContent content)
        {
            var client = new HttpRestClient();

            return(await client.PostAsync(Urls.PayoutComplete, content,
                                          _cacheManager.AuthKey));
        }
Example #4
0
        /// <summary>
        /// Completes the override limit
        /// </summary>
        /// <param name="saleNumber">Sale number</param>
        /// <param name="tillNumber">Till number</param>
        /// <param name="registerNumber">Register number</param>
        /// <returns></returns>
        public async Task <HttpResponseMessage> CompleteOverrideLimit(int saleNumber,
                                                                      int tillNumber, byte registerNumber)
        {
            var url    = string.Format(Urls.CompleteOverrideLimit, saleNumber, tillNumber, registerNumber);
            var client = new HttpRestClient();

            return(await client.PostAsync(url, null, _cacheManager.AuthKey));
        }
        public async Task <HttpResponseMessage> SetCustomerForSale(string code, int saleNumber,
                                                                   int tillNumber, byte registerNumber)
        {
            var url    = string.Format(Urls.SetCustomerForSale, code, tillNumber, saleNumber, registerNumber);
            var client = new HttpRestClient(true);

            return(await client.PostAsync(url, null, _cacheManager.AuthKey));
        }
Example #6
0
        /// <summary>
        /// Updates the existing Sale line item
        /// </summary>
        /// <param name="saleNumber">Sale number</param>
        /// <param name="tillNumber">Till number</param>
        /// <param name="lineNumber">Line number</param>
        /// <param name="registerNumber">Register number</param>
        /// <param name="discount">Discount</param>
        /// <param name="discountType">Discount type</param>
        /// <param name="quantity">Quantity</param>
        /// <param name="price">Price</param>
        /// <param name="reason">Reason</param>
        /// <param name="reasonType">Reason type</param>
        /// <returns>Sale model</returns>
        public async Task <HttpResponseMessage> UpdateSaleLine(int saleNumber, int tillNumber, int lineNumber, byte registerNumber,
                                                               string discount, string discountType, string quantity, string price, string reason, string reasonType)
        {
            var updateSaleLineContract = new Mapper().MapUpdateSaleLineToSale(saleNumber, tillNumber, lineNumber, registerNumber,
                                                                              discount, discountType, quantity, price, reason, reasonType);
            var updateSale = JsonConvert.SerializeObject(updateSaleLineContract);
            var content    = new StringContent(updateSale, Encoding.UTF8, "application/json");
            var client     = new HttpRestClient(true);

            return(await client.PostAsync(Urls.UpdateSaleLine, content, _cacheManager.AuthKey));
        }
Example #7
0
        /// <summary>
        /// Affixes the bar code
        /// </summary>
        /// <param name="cardNumber">Card number</param>
        /// <param name="barCode">Bar code</param>
        /// <returns></returns>
        public async Task <HttpResponseMessage> AffixBarcode(string cardNumber, string barCode)
        {
            var data = new
            {
                cardNumber,
                barCode
            };
            var content = new StringContent(JsonConvert.SerializeObject(data)
                                            , Encoding.UTF8, "application/json");
            var client = new HttpRestClient();

            return(await client.PostAsync(Urls.AffixBarcode, content, _cacheManager.AuthKey));
        }
        public async Task <ShaparakWriteResponse> WriteExternalRequest(ShaparakWriteRequest model)
        {
            if (model == null)
            {
                throw new System.NullReferenceException("The model cannot be null.");
            }

            string url = $"{_baseUrl}/{URL_WRITE_REQUEST}";
            ShaparakWriteResponse result;

            using (var client = new HttpRestClient <ShaparakWriteRequest, ShaparakWriteResponse>()) {
                result = await client.PostAsync(url, model, getHeaders());
            }
            return(result);
        }
Example #9
0
        /// <summary>
        /// Calls the API for the Gst Pst tax exempt
        /// </summary>
        /// <param name="saleNumber">Sale number</param>
        /// <param name="tillNumber">Till number</param>
        /// <param name="shiftNumber">Shift number</param>
        /// <param name="registerNumber">Register</param>
        /// <param name="treatyNumber">Treaty number</param>
        /// <returns></returns>
        public async Task <HttpResponseMessage> GstPstTaxExempt(int saleNumber,
                                                                int tillNumber, int shiftNumber, byte registerNumber,
                                                                string treatyNumber)
        {
            var data = new
            {
                saleNumber,
                tillNumber,
                shiftNumber,
                registerNumber,
                treatyNumber
            };
            var content = new StringContent(JsonConvert.SerializeObject(data)
                                            , Encoding.UTF8, "application/json");
            var client = new HttpRestClient();

            return(await client.PostAsync(Urls.GstPstExempt, content, _cacheManager.AuthKey));
        }
Example #10
0
        /// <summary>
        /// Completes the Over limit for the current sale
        /// </summary>
        /// <param name="saleNumber">Sale number</param>
        /// <param name="tillNumber">Till number</param>
        /// <param name="reason">Reason</param>
        /// <param name="explanation">Explanation</param>
        /// <param name="location">Location</param>
        /// <param name="date">Date</param>
        /// <returns></returns>
        public async Task <HttpResponseMessage> CompleteOverLimit(int saleNumber, int tillNumber,
                                                                  string reason, string explanation, string location, DateTime date)
        {
            var data = new
            {
                saleNumber,
                tillNumber,
                reason,
                explanation,
                location,
                date
            };
            var content = new StringContent(JsonConvert.SerializeObject(data)
                                            , Encoding.UTF8, "application/json");
            var client = new HttpRestClient();

            return(await client.PostAsync(Urls.CompleteOverLimit, content, _cacheManager.AuthKey));
        }
Example #11
0
        /// <summary>
        /// Calls the AITE Validation API
        /// </summary>
        /// <param name="saleNumber">Sale number</param>
        /// <param name="tillNumber">Till for the sale</param>
        /// <param name="shiftNumber">Shift number</param>
        /// <param name="registerNumber">Register number</param>
        /// <param name="cardNumber">Card number</param>
        /// <param name="barCode">Bar code</param>
        /// <param name="checkMode">Check mode</param>
        /// <returns></returns>
        public async Task <HttpResponseMessage> ValidateAITE(int saleNumber,
                                                             int tillNumber, int shiftNumber, byte registerNumber,
                                                             string cardNumber, string barCode, int checkMode)
        {
            var data = new
            {
                saleNumber,
                tillNumber,
                shiftNumber,
                cardNumber,
                barCode,
                checkMode
            };
            var content = new StringContent(JsonConvert.SerializeObject(data)
                                            , Encoding.UTF8, "application/json");
            var client = new HttpRestClient();

            return(await client.PostAsync(Urls.ValidateAITE, content, _cacheManager.AuthKey));
        }
Example #12
0
        /// <summary>
        /// Removes the SITE Tax
        /// </summary>
        /// <param name="saleNumber">Sale number</param>
        /// <param name="tillNumber">Till number for the sale</param>
        /// <param name="registerNumber">Register number</param>
        /// <param name="treatyNumber">Treaty number</param>
        /// <param name="captureMethod">Capture Method</param>
        /// <param name="treatyName">Treaty name</param>
        /// <param name="permitNumber">Document number</param>
        /// <returns></returns>
        public async Task <HttpResponseMessage> RemoveSiteTax(int saleNumber,
                                                              int tillNumber, byte registerNumber, string treatyNumber,
                                                              int captureMethod, string treatyName, string permitNumber)
        {
            var data = new
            {
                saleNumber,
                tillNumber,
                registerNumber,
                treatyNumber,
                captureMethod,
                treatyName,
                permitNumber
            };
            var content = new StringContent(JsonConvert.SerializeObject(data)
                                            , Encoding.UTF8, "application/json");
            var client = new HttpRestClient();

            return(await client.PostAsync(Urls.RemoveSiteTax, content, _cacheManager.AuthKey));
        }
Example #13
0
        /// <summary>
        /// Updates the tender amount for the sale
        /// </summary>
        /// <param name="saleNumber">Sale number</param>
        /// <param name="tillNumber">Till number</param>
        /// <param name="code">Tender code</param>
        /// <param name="amount">Tender amount</param>
        /// <returns></returns>
        public async Task <HttpResponseMessage> UpdateTender(int saleNumber,
                                                             int tillNumber, string code, decimal?amount, string transactionType, bool isAmountEnteredManually)
        {
            var data = new
            {
                saleNumber,
                tillNumber,
                transactionType = transactionType,
                tillClose       = false,
                tender          = new
                {
                    tenderCode    = code,
                    amountEntered = amount
                }
            };
            var content = new StringContent(JsonConvert.SerializeObject(data)
                                            , Encoding.UTF8, "application/json");
            var client = new HttpRestClient();

            return(await client.PostAsync(string.Format(Urls.UpdateTender, isAmountEnteredManually),
                                          content, _cacheManager.AuthKey));
        }
Example #14
0
        /// <summary>
        /// Method to close batch
        /// </summary>
        /// <param name="content"></param>
        /// <returns></returns>
        public async Task <HttpResponseMessage> CloseBatch(HttpContent content)
        {
            var client = new HttpRestClient();

            return(await client.PostAsync(Urls.CloseBatch, content, _cacheManager.AuthKey));
        }
        public async Task <HttpResponseMessage> SaveStoreCredits(HttpContent content)
        {
            var client = new HttpRestClient();

            return(await client.PostAsync(Urls.SaveStoreCredit, content, _cacheManager.AuthKey));
        }
        /// <summary>
        /// Saves the gift certificates
        /// </summary>
        /// <param name="content">HTTP Content</param>
        /// <returns></returns>
        public async Task <HttpResponseMessage> SaveGiftCertificates(HttpContent content)
        {
            var client = new HttpRestClient();

            return(await client.PostAsync(Urls.SaveGiftCertificates, content, _cacheManager.AuthKey));
        }
        public async Task <HttpResponseMessage> SetloyalityCustomer(HttpContent content)
        {
            var client = new HttpRestClient(true);

            return(await client.PostAsync(Urls.SetLoyalityCustomer, content, _cacheManager.AuthKey));
        }
        public async Task <HttpResponseMessage> AddCustomer(HttpContent content)
        {
            var client = new HttpRestClient();

            return(await client.PostAsync(Urls.AddCustomer, content, _cacheManager.AuthKey));
        }
Example #19
0
        public async Task <HttpResponseMessage> LoginAsync(HttpContent content)
        {
            var httpClient = new HttpRestClient(true);

            return(await httpClient.PostAsync(Urls.Login, content));
        }
Example #20
0
        public async Task <HttpResponseMessage> PaymentByVendorCoupon(HttpContent content)
        {
            var client = new HttpRestClient();

            return(await client.PostAsync(Urls.PaymentVendorCoupon, content, _cacheManager.AuthKey));
        }
Example #21
0
        public async Task <HttpResponseMessage> VerifyByAccount(HttpContent content)
        {
            var client = new HttpRestClient();

            return(await client.PostAsync(Urls.VerifyByAccount, content, _cacheManager.AuthKey));
        }
Example #22
0
        /// <summary>
        /// Get card information and tender type for a swiped card
        /// </summary>
        /// <param name="content">content</param>
        /// <returns></returns>
        public async Task <HttpResponseMessage> GetCardInformation(HttpContent content)
        {
            var client = new HttpRestClient();

            return(await client.PostAsync(Urls.GetCardInformation, content, _cacheManager.AuthKey));
        }
Example #23
0
        /// <summary>
        /// Method to activate GiveX Card
        /// </summary>
        /// <param name="content"></param>
        /// <returns>API response </returns>
        public async Task <HttpResponseMessage> ActivateGivexCard(HttpContent content)
        {
            var client = new HttpRestClient(true);

            return(await client.PostAsync(Urls.ActivateGiveXCard, content, _cacheManager.AuthKey));
        }
Example #24
0
        public async Task <HttpResponseMessage> GetActiveTillsAsync(HttpContent content)
        {
            var httpClient = new HttpRestClient(true);

            return(await httpClient.PostAsync(Urls.ActiveTills, content));
        }
Example #25
0
        /// <summary>
        /// method to adjust amount of GiveX card
        /// </summary>
        /// <param name="content"></param>
        /// <returns>API response</returns>
        public async Task <HttpResponseMessage> SetAmount(HttpContent content)
        {
            var client = new HttpRestClient(true);

            return(await client.PostAsync(Urls.AdjustAmount, content, _cacheManager.AuthKey));
        }
Example #26
0
        public async Task <HttpResponseMessage> ChangeSpecialPrice(HttpContent content)
        {
            var client = new HttpRestClient();

            return(await client.PostAsync(Urls.EditSpecialPrice, content, _cacheManager.AuthKey));
        }
Example #27
0
        public async Task <HttpResponseMessage> UpdateTenderForCashdrop(HttpContent content)
        {
            var client = new HttpRestClient();

            return(await client.PostAsync(Urls.UpdateTenders, content, _cacheManager.AuthKey));
        }
Example #28
0
        /// <summary>
        /// Adds a new Bottle Return sale
        /// </summary>
        /// <param name="content">HTTP Payload</param>
        /// <returns>HTTP response from the API</returns>
        public async Task <HttpResponseMessage> AddBottleReturnSale(HttpContent content)
        {
            var client = new HttpRestClient();

            return(await client.PostAsync(Urls.BottleReturnUrl, content, _cacheManager.AuthKey));
        }
        public async Task <HttpResponseMessage> GetCustomerByCard(HttpContent content)
        {
            var client = new HttpRestClient(true);

            return(await client.PostAsync(Urls.GetCustomerByCard, content, _cacheManager.AuthKey));
        }
Example #30
0
        /// <summary>
        /// Overrides the over limit details
        /// </summary>
        /// <param name="content">HTTP Content</param>
        /// <returns></returns>
        public async Task <HttpResponseMessage> OverrideLimitOverride(StringContent content)
        {
            var client = new HttpRestClient();

            return(await client.PostAsync(Urls.OverrideLimitOverride, content, _cacheManager.AuthKey));
        }