2020-11-02 16:18:06 +01:00
< ? php
namespace App\Http\Controllers\bo ;
use App\Http\Controllers\Controller ;
2020-12-02 16:03:43 +01:00
use App\Jobs\ProcessExportCodesUniques ;
2020-11-02 16:18:06 +01:00
use App\Jobs\ProcessUniqueCode ;
use App\Models\Codes ;
2020-11-13 10:40:55 +01:00
use App\Models\Settings ;
2020-12-02 16:03:43 +01:00
use Exception ;
2020-11-02 16:18:06 +01:00
use Illuminate\Http\Request ;
class CodesController extends Controller
{
public function index () {
2020-11-05 17:14:32 +01:00
$nbCodeBase = Codes :: count ();
2020-11-02 16:18:06 +01:00
$nbCodeUsed = Codes :: where ( 'code_used' , 1 ) -> count ();
2020-12-02 16:03:43 +01:00
$nbCodeExported = Codes :: where ( 'code_exported' , 1 ) -> count ();
$nbCodeRemainingToExport = Codes :: where ( 'code_exported' , 0 ) -> count ();
return view ( 'bo.codes.index' , compact ( 'nbCodeBase' , 'nbCodeUsed' , 'nbCodeExported' , 'nbCodeRemainingToExport' ));
2020-11-02 16:18:06 +01:00
}
public function generate ( Request $request ) {
$quantity = $request -> quantity ;
$codeLength = $request -> code_length ;
2020-11-13 10:40:55 +01:00
$settings = Settings :: find ( 1 );
2020-11-02 16:18:06 +01:00
2020-11-13 10:40:55 +01:00
ProcessUniqueCode :: dispatch ( $quantity , $codeLength , $settings );
2020-11-02 16:18:06 +01:00
2020-11-19 10:05:37 +01:00
return back () -> with ( 'success' , " La génération à commencée, un mail de notification sera envoyé à l'adresse " . config ( 'mail.MAIL_ADMIN' ) . " lorsque le traitement sera terminé. " );
2020-11-02 16:18:06 +01:00
}
2020-11-20 15:18:31 +01:00
2020-12-02 16:03:43 +01:00
public function export ( Request $request ) {
$nbCodeFic = intval ( $request -> nb_code_fic );
$nbCodeTot = intval ( $request -> nb_code_tot );
$nbCodeLigne = intval ( $request -> nb_code_ligne );
ProcessExportCodesUniques :: dispatch ( $nbCodeFic , $nbCodeTot , $nbCodeLigne );
return back () -> with ( 'success' , " L'export des codes à commencé, un mail de notification sera envoyé à l'adresse " . config ( 'mail.MAIL_ADMIN' ) . " lorsque le traitement sera terminé. " );
}
2020-11-02 16:18:06 +01:00
}