Exemple #1
0
        public async Task <bool> SendReceiptTo1CAsync(Receipt parReceipt, WDB_SQLite parDB)
        {
            try
            {
                var r = new Receipt1C(parReceipt);

                var body = soapTo1C.GenBody("JSONCheck", new Parameters[] { new Parameters("JSONSting", r.GetBase64()) });

                var res = await soapTo1C.RequestAsync(Global.Server1C, body, 240000, "application/json");

                /*
                 *               HttpClient client = new HttpClient();
                 *
                 *               // Add a new Request Message
                 *               HttpRequestMessage requestMessage = new HttpRequestMessage(HttpMethod.Post, Global.Server1C);
                 *               //requestMessage.Headers.Add("Accept", "application/vnd.github.v3+json");
                 *               // Add our custom headers
                 *               requestMessage.Content = new StringContent(//r.GetSOAP()
                 *                   body, Encoding.UTF8, "application/json");
                 *               var response = await client.SendAsync(requestMessage);
                 *
                 *               if (response.IsSuccessStatusCode)
                 *               {
                 *                   var res = await response.Content.ReadAsStringAsync();
                 *                   parReceipt.StateReceipt = eStateReceipt.Send;
                 *                   db.SetStateReceipt(parReceipt);//Змінюєм стан чека на відправлено.
                 *                   return true;
                 *               }
                 *               else
                 *               {
                 *                   return false;
                 *               }
                 */

                if (!string.IsNullOrEmpty(res) && res.Equals("0"))
                {
                    parReceipt.StateReceipt = eStateReceipt.Send;
                    parDB.SetStateReceipt(parReceipt);//Змінюєм стан чека на відправлено.
                    return(true);
                }

                return(false);
            }
            catch (Exception ex)
            {
                Global.OnSyncInfoCollected?.Invoke(new SyncInformation {
                    TerminalId = Global.GetTerminalIdByIdWorkplace(parReceipt.IdWorkplace), Exception = ex, Status = eSyncStatus.NoFatalError, StatusDescription = "SendReceiptTo1CAsync=>" + parReceipt.ReceiptId.ToString() + " " + ex.Message + '\n' + new System.Diagnostics.StackTrace().ToString()
                });
                return(false);
            }
        }