Exemple #1
0
 async Task <ifPOS.v1.ReceiptResponse> ifPOS.v1.IPOS.SignAsync(ifPOS.v1.ReceiptRequest request)
 {
     if (_requestType.StartsWith("rest://"))
     {
         return(await JsonSignAsync(request));
     }
     else
     {
         return(await XmlSignAsync(request));
     }
 }
Exemple #2
0
        private async Task <ifPOS.v1.ReceiptResponse> JsonSignAsync(ifPOS.v1.ReceiptRequest request)
        {
            var jsonstring  = JsonConvert.SerializeObject(request);
            var jsonContent = new StringContent(jsonstring, Encoding.UTF8, "application/json");

            using (var client = new HttpClient())
            {
                using (var response = await client.PostAsync(Path.Combine(_url, "v1/Sign"), jsonContent))
                {
                    response.EnsureSuccessStatusCode();

                    var content = await response.Content.ReadAsStringAsync();

                    return(JsonConvert.DeserializeObject <ifPOS.v1.ReceiptResponse>(content.ToString()));
                }
            }
        }
Exemple #3
0
        private async Task <ifPOS.v1.ReceiptResponse> XmlSignAsync(ifPOS.v1.ReceiptRequest request)
        {
            var xmlString  = Serialize(request);
            var xmlContent = new StringContent(xmlString, Encoding.UTF8, "application/xml");

            using (var client = new HttpClient())
            {
                using (var response = await client.PostAsync(Path.Combine(_url, "v1/Sign"), xmlContent))
                {
                    response.EnsureSuccessStatusCode();

                    var content = await response.Content.ReadAsStringAsync();

                    var    xml      = XElement.Parse(content);
                    string jsonText = JsonConvert.SerializeXNode(xml);
                    return(JsonConvert.DeserializeObject <ifPOS.v1.ReceiptResponse>(jsonText));
                }
            }
        }
Exemple #4
0
 public static ifPOS.v0.ReceiptRequest Into(this ifPOS.v1.ReceiptRequest from)
 {
     return(new ifPOS.v0.ReceiptRequest()
     {
         ftCashBoxID = from.ftCashBoxID,
         ftQueueID = from.ftQueueID,
         ftPosSystemId = from.ftPosSystemId,
         cbTerminalID = from.cbTerminalID,
         cbReceiptReference = from.cbReceiptReference,
         cbReceiptMoment = from.cbReceiptMoment,
         cbChargeItems = ConvertArray(from.cbChargeItems, i => i.Into()),
         cbPayItems = ConvertArray(from.cbPayItems, i => i.Into()),
         ftReceiptCase = from.ftReceiptCase,
         ftReceiptCaseData = from.ftReceiptCaseData,
         cbReceiptAmount = from.cbReceiptAmount,
         cbUser = from.cbUser,
         cbArea = from.cbArea,
         cbCustomer = from.cbCustomer,
         cbSettlement = from.cbSettlement,
         cbPreviousReceiptReference = from.cbPreviousReceiptReference,
     });
 }
 public Task <ifPOS.v1.ReceiptResponse> SignAsync(ifPOS.v1.ReceiptRequest request) => _innerPOS.SignAsync(request);
 public static void PrintRequest(ifPOS.v1.ReceiptRequest receiptRequest)
 {
     Console.WriteLine("{0:G} ReceiptRequest:", DateTime.Now);
     Console.WriteLine(JsonConvert.SerializeObject(receiptRequest, Formatting.Indented));
 }
Exemple #7
0
 public Task <ifPOS.v1.ReceiptResponse> SignAsync(ifPOS.v1.ReceiptRequest request) => Task.Run(() => {
     var response = _innerPOS.Sign(request.Into());
     return(response.Into());
 });