format('Ym'); return $prefix.$invoice_number; } public static function getInvoiceStorageDir($invoice_date){ return "/invoice/".\Carbon::parse($invoice_date)->format('Y/m/'); } public static function makeInvoiceFilename($invoice_number){ return "Rechnung-".$invoice_number.".pdf"; } public static function isInvoice(ShoppingOrder $shopping_order){ return isset($shopping_order->invoice['filename']) ? true : false; } public static function getFilename($shopping_order){ return isset($shopping_order->invoice['filename']) ? $shopping_order->invoice['filename'] : false; } public static function getDir($shopping_order){ return isset($shopping_order->invoice['dir']) ? $shopping_order->invoice['dir'] : false; } public static function getDate($shopping_order){ return isset($shopping_order->invoice['invoice_date']) ? $shopping_order->invoice['invoice_date'] : false; } public static function getNumber($shopping_order){ return isset($shopping_order->invoice['invoice_number']) ? $shopping_order->invoice['invoice_number'] : false; } public static function getDownloadURL(ShoppingOrder $shopping_order, $do = false){ // return route('storage_file', [$shopping_order->id, 'cms_download_file', $do]); } public static function getDownloadPath(ShoppingOrder $shopping_order, $full = false){ $dir = self::getDir($shopping_order); $filename = self::getFilename($shopping_order); if(!$full){ return $dir.$filename; } return \Storage::disk('public')->path($dir.$filename); } public static function sendInvoiceMail($shopping_order){ $bcc = []; $billing_email = $shopping_order->shopping_user->billing_email; if(!$billing_email){ if($shopping_order->mode === 'test'){ $billing_email = config('app.checkout_test_mail'); }else{ $billing_email = config('app.checkout_mail'); } } if($shopping_order->mode === 'test'){ $bcc[] = config('app.checkout_test_mail'); }else{ $bcc[] = config('app.checkout_mail'); } Mail::to($billing_email)->bcc($bcc)->send(new MailInvoice($shopping_order)); } }