szollosil vor 1 Jahr
Ursprung
Commit
e58d4b399e

+ 18 - 7
custom/bbus/class/api_bbus.class.php

@@ -439,7 +439,6 @@ class BBus extends DolibarrApi
 	 *
 	 * Return an array with success information.
 	 *
-	 * @param  string $type_id	Type id
 	 * @param  string $ref	Facture ref
 	 * @param  string $datetime	invoice creation date
 	 *
@@ -451,7 +450,7 @@ class BBus extends DolibarrApi
 	 * @throws RestException 403
 	 * @throws RestException 404
 	 */
-	public function dateHandler(string $type_id, string $ref, string $datetime)
+	public function dateHandler(string $ref, string $datetime)
 	{
 		global $user, $conf;
 		ApiBbusLog::appLog("dateHandler");
@@ -482,16 +481,28 @@ class BBus extends DolibarrApi
 		//print_r($printDate);
 		//print_r($now);
 
+		$server_host = $conf->global->LOCAL_SERVER_HOST;
+		$sqlServerHost = "SELECT bbbs.server_host FROM llx_facture as f 
+		INNER JOIN llx_facturedet as fdet ON fdet.fk_facture = f.rowid
+		INNER JOIN llx_product_extrafields as pe ON pe.fk_object = fdet.fk_product
+		INNER JOIN llx_bbus_basicservices as bbbs ON bbbs.rowid = CAST(pe.basic_service AS integer)
+		WHERE f.ref = '{$ref}'";
+		$resultSH = $this->db->query($sqlServerHost);
+		if($this->db->num_rows($resultSH) > 0){
+			while($row = $this->db->fetch_object($resultSH)){
+				$server_host = $row->server_host;
+			}
+		}
+
 		if ($validDate <= $printDate && $printDate <= $now) {
-			$server_host = $this->getServerHost($type_id);
 			# Keresztvásárlás
 			if ($server_host == $conf->global->LOCAL_SERVER_HOST) {
 				ApiBbusLog::appLog("dateHandler: local");
 				ApiBbusLog::appLog("dateHandler: {$datetime_timestamp}");
-				$this->localDateHandler($ref, $datetime, $datetime_timestamp, $now, $type_id);
+				$this->localDateHandler($ref, $datetime, $datetime_timestamp, $now);
 			} else {
 				ApiBbusLog::appLog("dateHandler: curl");
-				$this->curlDateHandler($ref, $datetime, $type_id);
+				$this->curlDateHandler($ref, $datetime);
 			}
 		} else {
 			ApiBbusLog::appLog("dateHandler: Invalid date");
@@ -579,9 +590,9 @@ class BBus extends DolibarrApi
 		}
 	} */
 
-	public function curlDateHandler($ref, $datetime, $type_id)
+	public function curlDateHandler($ref, $datetime)
 	{
-		$params = compact('ref', 'datetime', 'type_id');
+		$params = compact('ref', 'datetime');
 		$datehandlerPostFields = json_encode($params);
 		ApiBbusLog::appLog("dateHandler: {$datehandlerPostFields}");
 		$this->curlRunner('bbus/printdate', $datehandlerPostFields, 'POST', true);

+ 2 - 1
custom/bbus/class/apiinvoicehelper.class.php

@@ -115,7 +115,8 @@ class ApiInvoiceHelper
 		$productObj = new Product($this->db);
 		$result = $productObj->fetch($product_id);
 		$productObj->fk_product = $product_id;
-		$productObj->subprice = $productObj->price_ttc;
+		//$productObj->subprice = $productObj->price_ttc;
+		$productObj->subprice = $productObj->price;
 		$productObj->qty = 1;
 		$productObj->array_options['options_discount_hours'] = null;
 		$productObj->array_options['options_discount_percent'] = null;

+ 109 - 10
custom/bbus/class/commissionhandler.class.php

@@ -103,7 +103,83 @@ class CommissionHandler
 
     function getAllCommission($allUsersString, $currency, $from, $to, $allComissionInvoicesOfUserInTheGroupFromUserInvoice)
     {
+        //print $allComissionInvoicesOfUserInTheGroupFromUserInvoice;
+        if($to == null){
+            $to = date('Y-m-d H:i:s', dol_now());
+        }
+        $crossShoppingFacturesString = '';
+
+        $sqlForCrossShoppingFactures = "SELECT f.ref
+        FROM llx_facture as f 
+        INNER JOIN llx_facture_extrafields as fe ON fe.fk_object = f.rowid 
+        LEFT JOIN llx_bbus_bbticket as bbt ON bbt.fk_facture = f.rowid WHERE";
+        if (!empty($allComissionInvoicesOfUserInTheGroupFromUserInvoice)) {
+            $sqlForCrossShoppingFactures .= " f.rowid NOT IN({$allComissionInvoicesOfUserInTheGroupFromUserInvoice}) AND";
+        }
+        $sqlForCrossShoppingFactures .= " (SELECT a.rowid FROM llx_facture as a WHERE a.fk_facture_source = f.rowid AND fk_user_closing IN ({$allUsersString})) Is NULL AND
+        fk_user_closing IN ({$allUsersString}) 
+        AND multicurrency_code = '{$currency}' 
+        AND date_closing BETWEEN '{$from}' AND '{$to}'";
+        $resultForCrossShoppingFactures = $this->db->query($sqlForCrossShoppingFactures);
+        if ($this->db->num_rows($resultForCrossShoppingFactures) > 0) {
+            while ($factureCSRow = pg_fetch_assoc($resultForCrossShoppingFactures)) {
+                if ($crossShoppingFacturesString == "") {
+                    $crossShoppingFacturesString .= "'" . $factureCSRow['ref'] . "'";
+                } else {
+                    $crossShoppingFacturesString .= ",'" . $factureCSRow['ref'] . "'";
+                }
+            }
+        }
+        $params = ["from" => $from, "to" => $to, "factures" => $crossShoppingFacturesString];
+        $postFields = json_encode($params);
+        $crossShoppingFactures = $this->curlRunner('bookingapi/getPrintedFacturesRefs', $postFields, 'POST', true);
+        global $db;
         $commissions = 0;
+        $sql = "SELECT f.rowid, f.total_ttc, fe.commission, f.ref, f.date_closing 
+        FROM llx_facture as f 
+        INNER JOIN llx_facture_extrafields as fe ON fe.fk_object = f.rowid 
+        INNER JOIN llx_bbus_bbticketinvoiceprinting as bbtip ON bbtip.invoice_number = f.ref WHERE ";
+        if ($crossShoppingFactures != '') {
+            $sql .= " f.ref not in ({$crossShoppingFactures}) AND";
+        }
+        if (!empty($allComissionInvoicesOfUserInTheGroupFromUserInvoice)) {
+            $sql .= " f.rowid NOT IN({$allComissionInvoicesOfUserInTheGroupFromUserInvoice}) AND";
+        }
+        $sql .= "
+        fk_user_closing IN ({$allUsersString}) 
+        AND multicurrency_code = '{$currency}' 
+        AND fe.commission_deduction is NULL
+        AND date_closing BETWEEN '{$from}' AND '{$to}'
+        GROUP BY f.rowid, f.total_ttc, fe.commission, f.ref";
+        //print $sql;
+        $result = $db->query($sql);
+        if ($db->num_rows($result) != 0) {
+            while ($row = pg_fetch_assoc($result)) {
+                    $commissions += $this->getAmountOfCommission($row);
+            }
+        }
+        if ($crossShoppingFactures != '') {
+            $sqlCS = "SELECT f.rowid, f.total_ttc, fe.commission, f.ref
+        FROM llx_facture as f 
+        INNER JOIN llx_facture_extrafields as fe ON fe.fk_object = f.rowid WHERE f.ref in ({$crossShoppingFactures}) AND";
+            if (!empty($allComissionInvoicesOfUserInTheGroupFromUserInvoice)) {
+                $sqlCS .= " f.rowid NOT IN({$allComissionInvoicesOfUserInTheGroupFromUserInvoice}) AND";
+            }
+            $sqlCS .= "
+        fk_user_closing IN ({$allUsersString}) 
+        AND multicurrency_code = '{$currency}' 
+        AND fe.commission_deduction is NULL
+        AND date_closing BETWEEN '{$from}' AND '{$to}'";
+            //print $sqlCS;
+            $resultCS = $db->query($sqlCS);
+            if ($db->num_rows($resultCS) != 0) {
+                while ($rowCS = pg_fetch_assoc($resultCS)) {
+                    $commissions += $this->getAmountOfCommission($rowCS);
+                }
+            }
+        }
+        return $commissions;
+        /* $commissions = 0;
         $sql = "SELECT f.rowid, f.total_ttc, fe.commission FROM llx_facture as f
         INNER JOIN llx_facture_extrafields as fe ON fe.fk_object = f.rowid
         WHERE f.fk_user_closing IN ({$allUsersString})
@@ -121,24 +197,48 @@ class CommissionHandler
         while ($row = pg_fetch_assoc($result)) {
             $commissions += $this->getAmountOfCommission($row);
         }
-        return $commissions;
+        return $commissions; */
     }
 
     function getCommisonByUserId($user_id, $currency, $from, $to, $allComissionInvoicesOfUserInTheGroupFromUserInvoice)
     {
-        $to = date('Y-m-d H:i:s', dol_now());
-        $crossShoppingFacturesString = "'MrNSTR2409-001003'";
+        //print $allComissionInvoicesOfUserInTheGroupFromUserInvoice;
+        if($to == null){
+            $to = date('Y-m-d H:i:s', dol_now());
+        }
+        $crossShoppingFacturesString = '';
 
+        $sqlForCrossShoppingFactures = "SELECT f.ref
+        FROM llx_facture as f 
+        INNER JOIN llx_facture_extrafields as fe ON fe.fk_object = f.rowid 
+        LEFT JOIN llx_bbus_bbticket as bbt ON bbt.fk_facture = f.rowid WHERE";
+        if (!empty($allComissionInvoicesOfUserInTheGroupFromUserInvoice)) {
+            $sqlForCrossShoppingFactures .= " f.rowid NOT IN({$allComissionInvoicesOfUserInTheGroupFromUserInvoice}) AND";
+        }
+        $sqlForCrossShoppingFactures .= " (SELECT a.rowid FROM llx_facture as a WHERE a.fk_facture_source = f.rowid AND fk_user_closing = {$user_id}) Is NULL AND
+        fk_user_closing = {$user_id} 
+        AND multicurrency_code = '{$currency}' 
+        AND date_closing BETWEEN '{$from}' AND '{$to}'";
+        //print $sqlForCrossShoppingFactures . '<br>';
+        $resultForCrossShoppingFactures = $this->db->query($sqlForCrossShoppingFactures);
+        if ($this->db->num_rows($resultForCrossShoppingFactures) > 0) {
+            while ($factureCSRow = pg_fetch_assoc($resultForCrossShoppingFactures)) {
+                if ($crossShoppingFacturesString == "") {
+                    $crossShoppingFacturesString .= "'" . $factureCSRow['ref'] . "'";
+                } else {
+                    $crossShoppingFacturesString .= ",'" . $factureCSRow['ref'] . "'";
+                }
+            }
+        }
         $params = ["from" => $from, "to" => $to, "factures" => $crossShoppingFacturesString];
         $postFields = json_encode($params);
         $crossShoppingFactures = $this->curlRunner('bookingapi/getPrintedFacturesRefs', $postFields, 'POST', true);
         global $db;
         $commissions = 0;
-        $sql = "SELECT f.rowid, f.total_ttc, fe.commission, f.ref, bbt.rowid as bbt_rowid, bbtip.rowid as bbtip_rowid
+        $sql = "SELECT f.rowid, f.total_ttc, fe.commission, f.ref, f.date_closing 
         FROM llx_facture as f 
         INNER JOIN llx_facture_extrafields as fe ON fe.fk_object = f.rowid 
-        LEFT JOIN llx_bbus_bbticket as bbt ON bbt.fk_facture = f.rowid
-        LEFT JOIN llx_bbus_bbticketinvoiceprinting as bbtip ON bbtip.invoice_number = f.ref WHERE ";
+        INNER JOIN llx_bbus_bbticketinvoiceprinting as bbtip ON bbtip.invoice_number = f.ref WHERE ";
         if ($crossShoppingFactures != '') {
             $sql .= " f.ref not in ({$crossShoppingFactures}) AND";
         }
@@ -149,16 +249,15 @@ class CommissionHandler
         fk_user_closing = {$user_id} 
         AND multicurrency_code = '{$currency}' 
         AND fe.commission_deduction is NULL
-        AND date_closing BETWEEN '{$from}' AND '{$to}'";
+        AND date_closing BETWEEN '{$from}' AND '{$to}'
+        GROUP BY f.rowid, f.total_ttc, fe.commission, f.ref";
         //print $sql;
         $result = $db->query($sql);
         if ($db->num_rows($result) != 0) {
             while ($row = pg_fetch_assoc($result)) {
-                if (is_null($row['bbt_rowid']) || !is_null($row['bbtip_rowid'])) {
-                $commissions += $this->getAmountOfCommission($row);
+                    $commissions += $this->getAmountOfCommission($row);
             }
         }
-        }
         if ($crossShoppingFactures != '') {
             $sqlCS = "SELECT f.rowid, f.total_ttc, fe.commission, f.ref
         FROM llx_facture as f 

+ 5 - 1
custom/bbus/class/roller_handling.class.php

@@ -242,8 +242,12 @@ trait RollerHandling
 		$error = 0;
 		ApiBbusLog::ScooterRentLog("RENT_scooterReplacement: ___START___");
 		# Take the scooter back
-		$this->RENT_scooterTakeBack($code_1, $scooter_1_status);
+		$scooter_1_data = $this->RENT_checkScooterStatus($code_1);
 		$scooter_2_data = $this->RENT_checkScooterStatus($code_2);
+		if ($scooter_1_data->status == $scooter_1_status) {
+			$scooter_1_status = '110';
+		}
+		$this->RENT_scooterTakeBack($code_1, $scooter_1_status);
 		if ($scooter_2_data->status == '110') {
 			$isReplaced = true;
 			$scooter_1_data = $this->RENT_checkScooterStatus($code_1);

+ 2 - 2
custom/financialreport/class/checkoutclosure_helper.class.php

@@ -54,8 +54,8 @@ class CheckoutclosureHelper extends FactureStat
         } else {
             $sql = "SELECT datec FROM " . MAIN_DB_PREFIX . "facture ORDER BY datec ASC LIMIT 1";
             $data = $this->db->query($sql);
-            $result = $this->db->fetch_object($data);
-            if($this->db->num_rows($result) > 0){
+            if($this->db->num_rows($data) > 0){
+                $result = $this->db->fetch_object($data);
                 foreach ($result as $row) {
                     return $row;
                 }

+ 76 - 12
custom/financialreport/class/helper.class.php

@@ -1,4 +1,5 @@
 <?php
+
 use PhpOffice\PhpSpreadsheet\Spreadsheet;
 use PhpOffice\PhpSpreadsheet\Writer\Xlsx;
 use PhpOffice\PhpSpreadsheet\Style\Alignment;
@@ -9,10 +10,14 @@ require_once DOL_DOCUMENT_ROOT . '/custom/settlements/class/usernaplo.class.php'
 require_once DOL_DOCUMENT_ROOT . '/custom/settlements/class/hotel.class.php';
 require_once DOL_DOCUMENT_ROOT . '/custom/settlements/class/group.class.php';
 require_once DOL_DOCUMENT_ROOT . '/custom/bbus/class/commissionhandler.class.php';
+require_once DOL_DOCUMENT_ROOT . '/custom/bbus/class/api_curl.class.php';
+
 
 
 class HelperUserInvoice
 {
+    use CurlApi;
+
     public $db;
 
     public function __construct(DoliDB $db)
@@ -102,7 +107,7 @@ class HelperUserInvoice
     {
         $salesUsers = [];
         $result = $this->db->query($sql);
-        if($this->db->num_rows($result) > 0){
+        if ($this->db->num_rows($result) > 0) {
             while ($row = pg_fetch_assoc($result)) {
                 $salesUsers[] = $row;
             }
@@ -956,7 +961,6 @@ class HelperUserInvoice
             while ($row = pg_fetch_assoc($data)) {
                 $usersOfGroup[] = $row;
             }
-
         }
         return $usersOfGroup;
     }
@@ -1193,7 +1197,7 @@ class HelperUserInvoice
         $userObj = new User($this->db);
         $sql = "SELECT * FROM llx_user as u INNER JOIN llx_user_extrafields as ue ON ue.fk_object = u.rowid WHERE u.rowid = {$user_id}";
         $result = $db->query($sql);
-        while($row = $db->fetch_object($result)){
+        while ($row = $db->fetch_object($result)) {
             $minimum_monthly_commission = $row->minimum_monthly_commission;
         }
         if (!$result) {
@@ -1335,7 +1339,7 @@ class HelperUserInvoice
         foreach ($userDataArray as $key => $period) {
             $from = $period['login'];
             $to = isset($period['logout']) ? $period['logout'] : (isset($deletedUsersArray[$userOfGroups['user_id']]) ? $deletedUsersArray[$userOfGroups['user_id']] : date('Y-m-d', dol_now()) . ' 23:59:59');
-            print $from . ' - ' . $to . '<br>';
+            //print $from . ' - ' . $to . '<br>';
             if (isset($from)) {
                 $commission_HUF = $commmissionhandler->getOccassionOfThisPeriodByDateAndUserId_HUF($userOfGroups['user_id'], $from, $to);
                 $commission_EURToHUF = $commmissionhandler->getOccassionOfThisPeriodByDateAndUserId_EURToHUF($userOfGroups['user_id'], $from, $to);
@@ -1354,14 +1358,32 @@ class HelperUserInvoice
         return $amount;
     }
 
+    function getAllFacturesOfThisUser($user_id, $from, $to)
+    {
+        $crossShoppingFacturesString = '';
+        $sql = "SELECT ref 
+            FROM llx_facture AS f 
+            WHERE fk_user_closing = {$user_id} 
+            AND date_closing BETWEEN '{$from}' AND '{$to}'";
+        $result = $this->db->query($sql);
+        if ($this->db->num_rows($result) > 0) {
+            while ($row = $this->db->fetch_object($result)) {
+                if ($crossShoppingFacturesString == "") {
+                    $crossShoppingFacturesString .= "'" . $row->ref . "'";
+                } else {
+                    $crossShoppingFacturesString .= ",'" . $row->ref . "'";
+                }
+            }
+        }
+        return $crossShoppingFacturesString;
+    }
+
     function getInvoicesRowidFromFacture($user_id, $from, $to)
     {
         $invocesRowidArray = [];
         $sql = "SELECT rowid FROM " . MAIN_DB_PREFIX . "facture AS f WHERE fk_user_closing = {$user_id} 
         AND EXISTS (SELECT * FROM " . MAIN_DB_PREFIX . "bbus_bbticketinvoiceprinting as bbip WHERE bbip.fk_facture = f.rowid ORDER BY bbip.rowid DESC LIMIT 1)
         AND date_closing BETWEEN '{$from}' AND '{$to}'";
-        //print $sql;
-        //exit;
         $resultInvoicesData = $this->db->query($sql);
         if ($this->db->num_rows($resultInvoicesData) != 0) {
             $result = pg_fetch_all($resultInvoicesData);
@@ -1371,15 +1393,35 @@ class HelperUserInvoice
             $invocesRowidString = implode(',', $invocesRowidArray);
         }
         $readyInvoices = $this->getAllComissionInvoicesOfUserInTheGroupFromUserInvoice($user_id, $from, $to);
-        //print $readyInvoices . '<br>';
-        //print $invocesRowidString . '<br>';
+
         if (!empty($readyInvoices)) {
             $invocesRowidString = $this->giveMeTheDifferenceInString($readyInvoices, $invocesRowidString);
         }
-        //print $invocesRowidString . '<br>';
         return $invocesRowidString;
     }
 
+    function getCrossShoppingInvoicesRowidFromFacture($allFactures, $from, $to)
+    {
+        $facturesRowids = '';
+        $params = ["from" => $from, "to" => $to, "factures" => $allFactures];
+        $postFields = json_encode($params);
+        $crossShoppingFactures = $this->curlRunner('bookingapi/getPrintedFacturesRefs', $postFields, 'POST', true);
+        if ($crossShoppingFactures !== '') {
+            $sql = "SELECT rowid FROM llx_facture WHERE ref IN ($crossShoppingFactures)";
+            $result = $this->db->query($sql);
+            if ($this->db->num_rows($result) > 0) {
+                while ($row = $this->db->fetch_object($result)) {
+                    if ($facturesRowids == "") {
+                        $facturesRowids .= $row->rowid;
+                    } else {
+                        $facturesRowids .= "," . $row->rowid;
+                    }
+                }
+            }
+        }
+        return $facturesRowids;
+    }
+
     function getInvoicesRowidFromFactureInAnIntervalByEveryUser($users, $from, $to, $exception)
     {
         $invocesRowidArray = [];
@@ -1401,6 +1443,29 @@ class HelperUserInvoice
         return $invocesRowidString;
     }
 
+    function getInvoicesRowidFromFactureInAnIntervalByEveryUserWithoutInvoicePrinting($users, $from, $to, $exception)
+    {
+        $crossShoppingFacturesString = '';
+        $sql = "SELECT f.ref FROM " . MAIN_DB_PREFIX . "facture as f WHERE fk_user_closing IN({$users})";
+        if ($exception != '') {
+            $sql .= " AND rowid NOT IN({$exception})";
+        }
+        $sql .= " AND date_closing BETWEEN '{$from}' AND '{$to}'";
+        //print $sql . "\r\n";
+        $resultInvoicesData = $this->db->query($sql);
+        if ($this->db->num_rows($resultInvoicesData) > 0) {
+            while ($row = $this->db->fetch_object($resultInvoicesData)) {
+                if ($crossShoppingFacturesString == "") {
+                    $crossShoppingFacturesString .= "'" . $row->ref . "'";
+                } else {
+                    $crossShoppingFacturesString .= ",'" . $row->ref . "'";
+                }
+            }
+        }
+        return $crossShoppingFacturesString;
+    }
+
+
     function getAllComissionInvoicesOfUserInTheGroupFromUserInvoice($user_id, $from, $to)
     {
         $arraytmp = [];
@@ -1414,6 +1479,7 @@ class HelperUserInvoice
             }
         }
         $invocesRowidString = implode(',', $arraytmp);
+        //print $invocesRowidString;
         return $invocesRowidString;
     }
 
@@ -1443,7 +1509,6 @@ class HelperUserInvoice
             return $string;
         }
         return $string;
-
     }
 
     function getHtmlForConfirmWindow($commission)
@@ -1902,7 +1967,6 @@ class HelperUserInvoice
             return $array;
         }
         return [];
-
     }
 
     function getAllEntities()
@@ -1926,4 +1990,4 @@ class HelperUserInvoice
         $popoupBox .= '" class="classfortooltip"><div onclick="popupboxClick(' . $id . ')" class="groupColumn2ndLine">' . $numberOfUsers . '</div>';
         return $popoupBox;
     }
-}
+}

+ 19 - 2
custom/financialreport/core/actions_addupdatedelete.inc.php

@@ -191,14 +191,18 @@ if ($action == 'confirm_settlement') {
 	}
 
 	foreach ($queryArray as $value) {
+		$invocesRowidString = '';
 		$from = $value['from'];
 		$to = $value['to'];
 		$exception = $helper->getAllComissionInvoicesOfUserInTheGroupFromUserInvoiceCreated($allUsersString, $queryArray[0]['from'], $queryArray[count($queryArray) - 1]['to']);
 		$invocesRowidString = $helper->getInvoicesRowidFromFactureInAnIntervalByEveryUser($allUsersString, $from, $to, $exception);
-
+		if($invocesRowidString != ''){
+			$invocesRowidString .= ",";
+		}
+		$allFactures = $helper->getInvoicesRowidFromFactureInAnIntervalByEveryUserWithoutInvoicePrinting($allUsersString, $from, $to, $exception);
+		$invocesRowidString .= $helper->getCrossShoppingInvoicesRowidFromFacture($allFactures, $from, $to);
 		$usrCount = 0;
 		$index = 0;
-
 		$usersArrayFilteredUsers = [];
 		$usersArrayFilteredUsersFrom = [];
 		foreach ($usersDateArrayTMP as $usrDate) {
@@ -230,6 +234,12 @@ if ($action == 'confirm_settlement') {
 
 		if ($usersString != '') {
 			$invocesRowidString = $helper->getInvoicesRowidFromFactureInAnIntervalByEveryUser($usersString, $from, $to, $exception);
+			$allFactures = $helper->getInvoicesRowidFromFactureInAnIntervalByEveryUserWithoutInvoicePrinting($allUsersString, $from, $to, $exception);
+			$crossShoppingString = $helper->getCrossShoppingInvoicesRowidFromFacture($allFactures, $from, $to);
+			if($invocesRowidString != '' && $crossShoppingString != ''){
+				$invocesRowidString .= ",";
+			}
+			$invocesRowidString .= $crossShoppingString;
 			$allComissionInvoicesOfUserInTheGroupFromUserInvoice = '';
 			$commissionHUF = $commmissionhandler->getAllCommission($usersString, 'HUF', $from, $to, $exception);
 			$commissionEUR = $commmissionhandler->getAllCommission($usersString, 'EUR', $from, $to, $exception);
@@ -360,7 +370,14 @@ if ($action == 'confirm_personal_settlement') {
 	$commissionArray['HUF'] = $result[2];
 
 	if ($commissionArray['HUF'] > 0) {
+		$invocesRowidString = '';
+		$allFactures = $helper->getAllFacturesOfThisUser($user_id, $from, $to);
 		$invocesRowidString = $helper->getInvoicesRowidFromFacture($user_id, $from, $to);
+		$crossShoppingString = $helper->getCrossShoppingInvoicesRowidFromFacture($allFactures, $from, $to);
+		if($invocesRowidString != '' && $crossShoppingString != ''){
+			$invocesRowidString .= ",";
+		}
+		$invocesRowidString .= $crossShoppingString;
 	}
 	$exceptionFrom = $exceptionTo = date("Y-m-d", strtotime($from));
 

BIN
custom/financialreport/export_11-10-24-6765720.xlsx