Files
crm.e5.pl/REST/index.php

79 lines
2.4 KiB
PHP
Raw Normal View History

2024-04-27 09:23:34 +02:00
<?php
ini_set('display_errors', 0);
ini_set('display_startup_errors', 0);
//error_reporting(E_ALL & ~E_NOTICE & ~E_STRICT);
chdir(dirname(__DIR__));
require_once('./REST/config.php');
require_once('./REST/functions.php');
if ($_GET['key'] != $restConfig['e5Key']) {
echo 'Unauthorized';
exit;
}
// Enable SugarCRM features
2025-07-06 08:39:16 +00:00
if (!defined('sugarEntry')) define('sugarEntry', true);
2024-04-27 09:23:34 +02:00
require_once('./include/entryPoint.php');
// Make action
switch ($_GET["action"]) {
2025-07-06 08:39:16 +00:00
case 'getInvoice':
2024-04-27 09:23:34 +02:00
sendInvoice($_GET['record']);
break;
case 'getProduct':
sendProduct($_GET['record']);
break;
case 'copySaleFromTwinpol':
copySaleFromTwinpol($_GET['record']);
break;
2025-07-06 08:39:16 +00:00
case 'export.products.list':
if ($_GET['since'] == null) {
echo 'No since date';
exit;
}
$products = [];
$db = $GLOBALS['db'];
$sixMonthsAgo = (new DateTime())->modify('-6 months')->format('Y-m-d H:i:s');
$sinceDate = date('Y-m-d H:i:s', intval($_GET['since']));;
$query = "
SELECT
p.id,
p.name,
p.code,
p.ean,
GROUP_CONCAT(s.stock_address SEPARATOR ', ') AS stock_addresses
FROM ecmproducts p
LEFT JOIN ecmproducts_stock_addresses s ON p.id = s.ecmproduct_id
WHERE p.active = 1
AND p.deleted = 0
AND p.date_modified > '$sixMonthsAgo'
2025-07-16 16:04:58 +00:00
AND (p.exportedAt IS NULL OR p.exportedAt < '$sinceDate')
2025-07-06 08:39:16 +00:00
GROUP BY p.id, p.name, p.code
";
$r = $db->query($query);
while ($row = $db->fetchByAssoc($r)) {
$p = [];
$p['id'] = $row['id'];
$p['ean'] = $row['ean'];
$p['name'] = $row['name'];
$p['code'] = $row['code'];
$p['stock_addresses'] = $row['stock_addresses'];
array_push($products, $p);
}
echo json_encode($products);
break;
case 'export.products.setExportedAt':
{
if ($_GET['exportedAt'] == null || $_GET['id'] == null) {
echo 'Wrong parameters';
exit;
}
$db = $GLOBALS['db'];
$exportedAt = date('Y-m-d H:i:s', intval($_GET['exportedAt']));;
$id = $_GET['id'];
$db->query("UPDATE ecmproducts SET exportedAt='$exportedAt' WHERE id='$id'");
break;
}
2025-08-26 22:14:04 +02:00
case 'createCSVReports':
createCSVReports();
break;
2025-07-06 08:39:16 +00:00
}