data pubblicazione

This commit is contained in:
paoloar77
2024-06-21 13:19:35 +02:00
parent da8c6f1853
commit e31decc10b
5 changed files with 244 additions and 9 deletions

View File

@@ -84,10 +84,6 @@ function updateValueByKeyArr(&$array, $key, $newValue)
$array[$key] = $newValue;
}
function setPreOrderByIdArticolo($idarticolo, $aggiornapreordine, $debug)
{
return setPreOrder($idarticolo, $aggiornapreordine, $debug);
}
function formatDateToItalian($date_string, $input_format = 'Y-m-d H:i:s.u')
{
@@ -288,6 +284,96 @@ function setPreOrder($sku, $aggiornapreordine, $debug)
}
}
function setDataPubblicazione($sku, $debug)
{
try {
// Aggiorna Preorder
$product = Product::where('sku', $sku)->first();
if ($debug) {
echo "Product: " . $sku;
showarray($product);
}
if ($product) {
$titolo = $product['name'];
if ($debug)
echo "Prodotto trovato: " . $titolo . " StockQty = " . $product['stock_quantity'] . "<br>";
$idprodotto = $product['parent_id'];
if (true) {
$data = [];
$article = getArticoloById($sku);
echo $article->titolo . " DataPubblicazione: " . $article->DataPubblicazione . "<br>";
$datepubblstr = "";
$datepubbl_ts = 0;
if ($article->DataPubblicazione) {
$datepubbl = DateTime::createFromFormat('Y-m-d H:i:s.u', $article->DataPubblicazione);
if ($datepubbl !== false) {
$datepubbl_ts = $datepubbl->getTimestamp();
$datepubblstr = $datepubbl->format('d/m/Y');
}
}
if ($idprodotto > 0) {
if ($debug) {
echo "Variazioni: " . $product['parent_id'] . "<br>";
echo "Data Pubblicazione: " . $datepubblstr . "<br>";
}
$variations = Variation::all($product['parent_id']);
if ($debug)
showarray($variations);
for ($i = 0; $i < count($variations); $i++) {
$variation = $variations[$i];
if ($variation->id == $product['id']) {
// convert object into array
$data = json_decode(json_encode($variation), true);
break;
}
}
$agg = true;
// $data['meta_data'] = $product['meta_data'];
if ($data) {
$dataPubbSaved = getValueByKey($product['meta_data'], 'DataPubblicazione');
if ($dataPubbSaved != $datepubbl_ts) {
updateValueByKey($data['meta_data'], 'DataPubblicazione', $datepubbl_ts);
updateValueByKey($data['meta_data'], 'DataPubbStr', $datepubblstr);
if ($debug) {
echo "<br>Dati da Salvare:";
showarray($data);
}
$variation = Variation::update($idprodotto, $product['id'], $data);
if ($variation) {
if ($debug)
echo "Aggiornato: [ParentId=" . $idprodotto . '] ProdId= ' . $product['id'] . ' ' . $variation['name'] . "<br>";
}
return true;
}
}
}
}
} else {
if ($debug)
echo "Il prodotto non esiste";
}
return false;
} catch (Exception $e) {
echo "Errore: " . $e->getMessage();
}
}
function isArticleInPrevendita($id, $checkqtanegativa)
{
return loadArticleByIdArticle($id, true);
@@ -483,6 +569,7 @@ function libriInPrevendita()
} else {
$myview .= '<a href="' . $article->permalink . '/apimacro/public/aggiornapreorder/' . $article->IdArticolo . '/-1/" target="_blank">Impostalo Non Disponibile</a>' . $sep;
}
$myview .= '<a href="' . $article->permalink . '/apimacro/public/aggiornadatapubblicazione/' . $article->IdArticolo . '/" target="_blank">Aggiorna Data Pubb</a>' . $sep;
echo $myview;
@@ -597,6 +684,10 @@ function setProductFromGM($article, $initlog, ProductLogger &$passproductLogger)
'key' => 'ristampa',
'value' => $article->Ristampa
],
[
'key' => 'DataPubblicazione',
'value' => $article->DataPubblicazione
],
]
];