Guest User

Untitled

a guest
Mar 22nd, 2018
93
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 4.64 KB | None | 0 0
  1. public function handle($request, Closure $next){
  2. $tenantId = Auth::user()->tenant_id;
  3.  
  4. Landlord::addTenant('tenant_id', $tenantId);
  5.  
  6. return $next($request);
  7. }
  8.  
  9. <?php
  10.  
  11. namespace AppHttpMiddleware;
  12.  
  13. use Closure;
  14. use AppUser;
  15. use IlluminateSupportFacadesAuth;
  16.  
  17. class MultiTenant
  18. {
  19. /**
  20. * Handle an incoming request.
  21. *
  22. * @param IlluminateHttpRequest $request
  23. * @param Closure $next
  24. * @return mixed
  25. */
  26.  
  27. public function handle($request, Closure $next)
  28. {
  29. if (Auth::check()) {
  30. $tenantId = Auth::user()->company_id;
  31.  
  32. Landlord::addTenant('company_id', $tenantId); // Different column name, but same concept
  33. }
  34.  
  35. return $next($request);
  36. }
  37. }
  38.  
  39. <?php
  40.  
  41. /*
  42. |--------------------------------------------------------------------------
  43. | Web Routes
  44. |--------------------------------------------------------------------------
  45. |
  46. | This file is where you may define all of the routes that are handled
  47. | by your application. Just tell Laravel the URIs it should respond
  48. | to using a Closure or controller method. Build something great!
  49. |
  50. */
  51.  
  52. Route::get('/', function () {
  53. return view('welcome');
  54. });
  55.  
  56. Auth::routes();
  57. Route::group(['middleware' => ['multitenant']], function () {
  58. Route::get('/home', 'HomeController@index');
  59.  
  60. //Clients
  61. Route::resource('clients', 'ClientController');
  62. });
  63.  
  64. <?php
  65.  
  66. namespace App;
  67.  
  68. use IlluminateDatabaseEloquentModel;
  69. use HipsterJazzboLandlordBelongsToTenants;
  70.  
  71. class Client extends Model
  72. {
  73. use BelongsToTenants;
  74. //
  75. protected $fillable = [
  76. 'organization',
  77. ];
  78.  
  79. }
  80.  
  81. Route::group(['middleware' => ['landlord']], function () {
  82. // Your routes
  83. });
  84.  
  85. public function handle($request, Closure $next)
  86. {
  87. if (Auth::check()) {
  88. $tenantId = Auth::user()->company_id;
  89.  
  90. Landlord::addTenant('company_id', $tenantId); // Different column name, but same concept
  91. }
  92.  
  93. return $next($request);
  94. }
  95.  
  96. use HipsterJazzboLandlordBelongsToTenant;
  97.  
  98. class User extends Authenticatable
  99. {
  100. use BelongsToTenant;
  101. }
  102.  
  103. 'providers' => [
  104. // ...
  105. HipsterJazzboLandlordLandlordServiceProvider::class
  106. // ...
  107. ],
  108.  
  109. 'aliases' => [
  110.  
  111. // ...
  112. 'Landlord' => HipsterJazzboLandlordFacadesLandlord::class,
  113. // ...
  114. ],
  115.  
  116. public function handle($request, Closure $next)
  117. {
  118. if (Auth::check()) {
  119. $tenant_id = Auth::user()->id;
  120.  
  121. Landlord::addTenant('user_id', $tenant_id);
  122. }
  123.  
  124. return $next($request);
  125. }
  126.  
  127. Route::group(['middleware' => ['multitenant']], function () {
  128.  
  129. Route::get('pagamento/list','PagamentoController@index')->name('pagamento.index');
  130. Route::get('pagamento/create','PagamentoController@create')->name('pagamento.create');
  131. Route::post('pagamento','PagamentoController@store')->name('pagamento.store');
  132.  
  133. });
  134.  
  135. public static function store($request)
  136. {
  137. $pagador = self::pagador($request);
  138. $biller = new Biller();
  139. $data = $biller->create($request);
  140. SolicitacaoPagamento::create(['user_id' => auth()->user()->id,
  141. 'pagador_id' => $pagador->id,
  142. 'valor' => '100',
  143. 'vencimento' => '2018-03-20',
  144. 'codigo_barras' => $data->codigo,
  145. 'status' => 'DISPONIVEL_PARA_PAGAMENTO']);
  146. Landlord::addTenant('user_id', auth()->user()->id);
  147. }
  148.  
  149. /**
  150. * Retorna a lista com as solicitações de pagamentos
  151. *
  152. * @return IlluminateHttpResponse
  153. */
  154. private static function pagador($request)
  155. {
  156. $endereco = self::endereco($request);
  157.  
  158. $pagador = Pagador::firstOrCreate(['user_id' => auth()->user()->id,
  159. 'nome' => $request->get('nome'),
  160. 'endereco_id' => $endereco->id,
  161. 'num_documento' => $request->get('num_documento'),
  162. 'email' => $request->get('email'),
  163. 'celular' => $request->get('celular')]);
  164.  
  165. return $pagador;
  166. }
  167.  
  168. private static function endereco($request)
  169. {
  170. $endereco = Endereco::firstOrCreate(['user_id' => auth()->user()->id,
  171. 'rua' => $request->get('rua'),
  172. 'numero' => $request->get('numero'),
  173. 'complemento' => $request->get('complemento'),
  174. 'bairro' => $request->get('bairro'),
  175. 'cidade' => $request->get('cidade'),
  176. 'cep' => $request->get('cep'),
  177. 'uf' => $request->get('uf'),
  178. 'pais' => $request->get('pais')]);
  179.  
  180. return $endereco;
  181. }
Add Comment
Please, Sign In to add comment