log
This commit is contained in:
@@ -6,6 +6,7 @@ use App\Order as AppOrder;
|
||||
use Codexshaper\WooCommerce\Facades\Order;
|
||||
use Illuminate\Console\Command;
|
||||
use Illuminate\Support\Collection;
|
||||
use Illuminate\Support\Facades\Mail;
|
||||
|
||||
class OrderUpdateGm extends Command
|
||||
{
|
||||
@@ -42,35 +43,70 @@ class OrderUpdateGm extends Command
|
||||
{
|
||||
$all_orderswoo = new Collection();
|
||||
$page = 1;
|
||||
$orderupdated = 0;
|
||||
do{
|
||||
$orderswoo = Order::all($options = ['per_page' => 100, 'page' => $page,'status'=> ["pending","processing","on-hold"]]);
|
||||
$all_orderswoo = $all_orderswoo->merge($orderswoo);
|
||||
$page++;
|
||||
} while($orderswoo->count() > 0);
|
||||
|
||||
|
||||
foreach($all_orderswoo as $orderwoo ){
|
||||
$this->info("Processing order #{$orderwoo->id}...");
|
||||
$ordergm = AppOrder::where('IdInternet', $orderwoo->id)->latest('DataOra')->first();
|
||||
if($ordergm){
|
||||
$this->info("Order #{$orderwoo->id} found in GM, checking status...");
|
||||
if($orderwoo->status == 'processing'){
|
||||
$this->info("Order #{$orderwoo->id} is processing, checking if it needs to be completed...");
|
||||
if($ordergm->EnabledWoo == 1){
|
||||
$this->info("Order #{$orderwoo->id} needs to be completed, updating WooCommerce...");
|
||||
$data = [
|
||||
'status' => 'completed',
|
||||
];
|
||||
$orderwooupdate = Order::update($orderwoo->id,$data);
|
||||
|
||||
// sum the number updated of order to the log
|
||||
$orderupdated++;
|
||||
|
||||
}
|
||||
}
|
||||
elseif ($orderwoo->status == 'on-hold'){
|
||||
|
||||
$this->info("Order #{$orderwoo->id} is on-hold, checking if it needs to be processed...");
|
||||
if($ordergm->FlagSospeso == 0) {
|
||||
$this->info("Order #{$orderwoo->id} needs to be processed, updating WooCommerce...");
|
||||
$data = [
|
||||
'status' => 'processing',
|
||||
];
|
||||
$orderwooupdate = Order::update($orderwoo->id,$data);
|
||||
}
|
||||
|
||||
// sum the number updated of order to the log
|
||||
$orderupdated++;
|
||||
}
|
||||
|
||||
}
|
||||
}
|
||||
else{
|
||||
$this->info("Order #{$orderwoo->id} not found in GM, skipping...");
|
||||
}
|
||||
}
|
||||
|
||||
// get the directory actual name and put in the log file
|
||||
$dir = basename(__DIR__);
|
||||
|
||||
$log = $dir . ' Ordini aggiornati' . "\n";
|
||||
|
||||
// check if there are orders to log
|
||||
if($orderupdated > 0) {
|
||||
// Send the email to the admin with the details of the order log
|
||||
Mail::raw($log, function ($message, $orderupdated) {
|
||||
$message->to("log@fioredellavita.it");
|
||||
//$message->bcc('');
|
||||
$message->subject("Ordini Aggiornati su GM:" . $orderupdated);
|
||||
|
||||
});
|
||||
}
|
||||
|
||||
|
||||
|
||||
}
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user