From 73807e6eca56610b6aa48edf1917f8d54ce24de1 Mon Sep 17 00:00:00 2001
From: Jacek Kowalski <Jacek@jacekk.info>
Date: Sat, 01 Jul 2023 10:52:44 +0000
Subject: [PATCH] Support App Key authentication to wFirma.pl API

---
 src/InvoiceSynchronizer.php |   24 ++++++++----------------
 1 files changed, 8 insertions(+), 16 deletions(-)

diff --git a/src/InvoiceSynchronizer.php b/src/InvoiceSynchronizer.php
index 3ddf959..d51c4b0 100644
--- a/src/InvoiceSynchronizer.php
+++ b/src/InvoiceSynchronizer.php
@@ -2,20 +2,12 @@
 
 namespace SIPL\UCRM\wFirma;
 
-use \Webit\WFirmaSDK\Contractors as Contractors;
-use \Webit\WFirmaSDK\Invoices as Invoices;
-use \Webit\WFirmaSDK\Payments as Payments;
+use Webit\WFirmaSDK\Contractors as Contractors;
+use Webit\WFirmaSDK\Invoices as Invoices;
+use Webit\WFirmaSDK\Payments as Payments;
 
-class InvoiceSynchronizer {
-	protected $wfirma;
-	protected $helper;
-
-	function __construct(\Webit\WFirmaSDK\Entity\ModuleApiFactory $wFirmaApi, UcrmHelper $ucrmHelper) {
-		$this->wfirma = $wFirmaApi;
-		$this->helper = $ucrmHelper;
-	}
-
-	function getContractorId($clientId, $synchronize = TRUE) {
+class InvoiceSynchronizer extends Synchronizer {
+	protected function getContractorId($clientId, $synchronize = TRUE): ?Contractors\ContractorId {
 		if ($synchronize) {
 			$synchronizer = new ContractorSynchronizer($this->wfirma, $this->helper);
 			$synchronizer->synchronize($clientId);
@@ -37,7 +29,7 @@
 		return Contractors\ContractorId::create($wFirmaId);
 	}
 
-	function getTaxes() {
+	protected function getTaxes(): array {
 		$crm = $this->helper->getApi();
 		$taxesData = $crm->get('/taxes');
 
@@ -48,14 +40,14 @@
 		return $taxes;
 	}
 
-	function compareInvoicesContent(Invoices\InvoicesContent $c1, Invoices\InvoicesContent $c2) {
+	protected function compareInvoicesContent(Invoices\InvoicesContent $c1, Invoices\InvoicesContent $c2): int {
 		return
 			[$c1->name(), $c1->unit(), $c1->count(), $c1->price(), $c1->vat(), $c1->discount()]
 			<=>
 			[$c2->name(), $c2->unit(), $c2->count(), $c2->price(), $c2->vat(), $c2->discount()];
 	}
 
-	function synchronize($ucrmInvoiceId) {
+	function synchronize(int $ucrmInvoiceId): bool {
 		$crm = $this->helper->getApi();
 		$wFirmaInvoices = $this->wfirma->invoicesApi();
 

--
Gitblit v1.10.0