dev-master
9999999-devParasut düzenli satis raporu
MIT
The Requires
by Ibrahim S. Orencik
1.0.0
1.0.0.0Parasut düzenli satis raporu
MIT
The Requires
by Ibrahim S. Orencik
Wallogit.com
2017 © Pedro Peláez
Parasut düzenli satis raporu
Paraşüt API'ını kullanarak satış faturalarının aylık rapor olarak e-posta gönderilmesini sağlayan Laravel kütüphanesi, (*1)
Paket bir Laravel paketi olduğu için öncelikle bir Laravel kurulumunuzun yapılmış olması gerekiyor. Laravel nasıl kurulur., (*3)
Paketi yüklemek için Laravel'in yüklü olduğu root klasörde aşağıdaki komutu çalıştırmanız gerekli, (*4)
``` bash $ composer require salyangoz/parasut-rapor, (*5)
#### Step: 3 Bu paket excel exportu farklı bir paket üzerinden çıkardığı için excel paketini de yüklemeniz gerek; ``` bash $ composer require maatwebsite/excel
Eklentinin mevcut Laravel'de kullanılabilmesi için Laravel klasörünüzdeki Config/app.php'ye şu değişiklikleri eklemeniz gerekli:, (*6)
'providers' => [
Salyangoz\ParasutRapor\ParasutRaporServiceProvider::class,
Maatwebsite\Excel\ExcelServiceProvider::class
],
Paket, proje için kullanılacak Paraşüt bilgilerinizi ve ayarlarınızı Laravel projenizdeki .env dosyasından alır. Hangi değişkenlerin tanımlanacağını bu repodaki .env.example dosyasından bakabilirsiniz., (*7)
Eğer projeniz için paketteki sabitleri değiştirmeniz gerekirse (E-mail metni gibi) publish etmeniz gerekir bunu yapmak için aşağıdaki komutu kullanabilirsiniz:, (*8)
php artisan vendor:publish --provider="Salyangoz\ParasutRapor\ParasutRaporServiceProvider", (*9)
Bu komutu çalıştırmanız ardından paketin config.php dosyası Laravel projenizin config dizinine parasut-rapor.php olarak kopyalanacaktır ve mail view dosyası resources/views yoluna kopyalanır, burda yaptığınız değişiklikler paket içindeki config dosyası ile birleşecek ya da overrite olacaktır., (*10)
Sipariş raporlarının belirttiğiniz mail adreslerine iletilmesi için aşağıdaki gibi bir cronjob tanımlamanız gerekli., (*11)
App\Console\Kernel.php, (*12)
namespace App\Console; use Illuminate\Console\Scheduling\Schedule; use Illuminate\Foundation\Console\Kernel as ConsoleKernel; class Kernel extends ConsoleKernel { protected $commands = [ \Salyangoz\ParasutRapor\Commands\Report::class ]; /** * Define the application's command schedule. * * @param \Illuminate\Console\Scheduling\Schedule $schedule * @return void */ protected function schedule(Schedule $schedule) { /* Aylık rapor */ $schedule->command('parasut-rapor:report')->monthly(); /* Haftalık */ $schedule->command('parasut-rapor:report')->weekly(); /* Günlük rapor */ #$schedule->command('parasut-rapor:report')->daily(); } /** * Register the Closure based commands for the application. * * @return void */ protected function commands() { require base_path('routes/console.php'); } }
Önemli Not: Laravel task zamanlayıcının çalışması için Web sunucunuzda cron'un çalışıyor olması gerekli., (*13)
Laravel task zamanlama nasıl tanımlanır, (*14)
Laravel task zamanlamanın da çalışır halde olduğundan emin olduktan olduğumuzda artık hazırız demektir!, (*15)
Aşağıdaki Konfigurasyonları da tamamladığınızda, taskın doğru çalışıp çalışmadığını, komut satırından doğrudan çalıştırarak test edebilirsiniz:, (*16)
$ php artisan parasut-rapor:report, (*17)
PARASUT_CLIENT_ID= PARASUT_CLIENT_SECRET= PARASUT_USERNAME= PARASUT_COMPANY_ID= PARASUT_PASSWORD= PARASUT_CATEGORY_ID= PARASUT_ACCOUNT_ID=
Laravel Mail sayfasındaki bilgiler ışığında laravel projenize mail kurulumunu yapınız. Ardından proje için aşağıda belirtilen değerleri giriniz., (*18)
EMAIL_FROM_EMAIL=Mailde görünecek gönderen email adresi EMAIL_FROM_NAME=Mailde görünecek gönderen adı EMAIL_TO_EMAIL=Raporların gönderileceği email adresleri. (,) ile ayrılır EMAIL_CC_EMAIL=Raporları cc ile gönderileceği email adresleri. (,) ile ayrılır
Maillerin hangi aralıklardaki siparişleri çekeceğini aşağıdaki ayar ile belirleyebilirsiniz. Buraya 3 farklı değer alınabilir., (*19)
monthly,weekly,daily., (*20)
Burada belirttiğiniz değer planladığınız cronjob ile aynı olmalı. Örneğin aylık raporlamayı açtıysanız, cronu da aylık olacak şekilde ayarlamalısınız., (*21)
PARASUT_REPORT_PERIOD=monthly
Sistem sadece belirttiğiniz karakterlerle başlayan faturaların raporunu alır. (Eğer boş bırakırsanız tüm faturaları)., (*22)
PARASUT_REPORT_INVOICE_PREFIX=KR,KU
Herhangi bir güvenlik açığı yakalarsanız, issue açmak yerine info@salyangoz.com.tr adresine bildirim yapabilirsiniz., (*23)
The MIT License (MIT). Please see License File for more information., (*24)
Salyangoz Web Adresi, (*25)
Parasut düzenli satis raporu
MIT
Parasut düzenli satis raporu
MIT