浏览代码

ticket info changes

szollosil 9 月之前
父节点
当前提交
a38c9744f6
共有 1 个文件被更改,包括 27 次插入14 次删除
  1. 27 14
      custom/bbus/class/api_bbus.class.php

+ 27 - 14
custom/bbus/class/api_bbus.class.php

@@ -259,6 +259,19 @@ class BBus extends DolibarrApi
 			foreach ($row as $key => $value) {
 				$sub[$key] = $value;
 			}
+			$sub['isExpired'] = false;
+			$sub['isUsed'] = false;
+			if (strtotime($sub['available_at']) < dol_now()) {
+				$sub['isExpired'] = true;
+				$sub['isExpiredText'] = 'Expired ticket! Too old. ' . $sub['available_at'];
+			} elseif (!is_null($sub['expire_at']) && strtotime($sub['expire_at']) < dol_now() ) {
+				$sub['isExpired'] = true;
+				$sub['isExpiredText'] = 'Expired ticket! ' . $sub['expire_at'];
+			} 
+			if (intval($sub['usage']) > 0) {
+				$sub['isUsed'] = true;
+				$sub['isUsedText'] = 'Used ticket! ' . $sub['validated_at'];
+			}
 			$sub['ticket_type'] = $ticketChecker->getTicketTypeByProductId($row['ticket_id']);
 			$json[] = $sub;
 		}
@@ -489,8 +502,8 @@ class BBus extends DolibarrApi
 		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)){
+		if ($this->db->num_rows($resultSH) > 0) {
+			while ($row = $this->db->fetch_object($resultSH)) {
 				$server_host = $row->server_host;
 			}
 		}
@@ -657,7 +670,7 @@ class BBus extends DolibarrApi
 			dol_include_once('/eventwizard/class/eventdetails.class.php');
 			$sqlBasicService = "SELECT pe.basic_service FROM llx_product as p
 			INNER JOIN llx_product_extrafields as pe ON pe.fk_object = p.rowid";
-			if(!$conf->global->CROSSSHOPPING_ENABLED){
+			if (!$conf->global->CROSSSHOPPING_ENABLED) {
 				$sqlBasicService .= " LEFT JOIN llx_bbus_basicservices as bs ON bs.basic_service_id::TEXT = pe.basic_service WHERE bs.server_host = 'excelia'";
 			}
 			$sqlBasicService .= " GROUP BY pe.basic_service";
@@ -748,14 +761,14 @@ class BBus extends DolibarrApi
 			LEFT JOIN llx_actioncomm_extrafields as ace ON ace.fk_object = ac.id
 			INNER JOIN llx_eventwizard_eventdetails as ed ON ac.fk_element = ed.rowid
 			INNER JOIN llx_eventwizard_eventproduct as ep ON ep.fk_eventdetails = ac.fk_element";
-			if($hotelsales !== 0){
-				$sql .= " INNER JOIN llx_product_extrafields as pre ON pre.fk_object = ep.fk_product";
-			}
-			$sql .= " WHERE ac.code = 'AC_EVENT'";
-			if($hotelsales !== 0){
-				$sql .= " AND pre.hotelsales = 1";
-			}
-			$sql .= " AND ep.fk_product IN ({$product_id})
+		if ($hotelsales !== 0) {
+			$sql .= " INNER JOIN llx_product_extrafields as pre ON pre.fk_object = ep.fk_product";
+		}
+		$sql .= " WHERE ac.code = 'AC_EVENT'";
+		if ($hotelsales !== 0) {
+			$sql .= " AND pre.hotelsales = 1";
+		}
+		$sql .= " AND ep.fk_product IN ({$product_id})
 			AND ac.datep > '{$date_from}' 
 			ORDER BY ac.datep ASC";
 		ApiBbusLog::appLog($sql);
@@ -2457,7 +2470,7 @@ class BBus extends DolibarrApi
 			//exit;
 		}
 		foreach ($productsArray as $key => $value) {
-			if($key > 4999){
+			if ($key > 4999) {
 				$content = "-- product rowid: {$key}
 				INSERT INTO llx_product_temp (";
 				$valueContent = "";
@@ -2518,8 +2531,8 @@ class BBus extends DolibarrApi
 		$array = [];
 		$sql = "SELECT rowid FROM llx_bbus_basicservices WHERE is_event = '1'";
 		$result = $db->query($sql);
-		if($db->num_rows($result) > 0){
-			while($row = $db->fetch_object($result)){
+		if ($db->num_rows($result) > 0) {
+			while ($row = $db->fetch_object($result)) {
 				$array[] = $row->rowid;
 			}
 		}