Commit fcc7b261 authored by Marcos Albano's avatar Marcos Albano 💬

Primeiro commit

parent 5cb75870
<?php
namespace App\Repositories\Exceptions;
use Exception;
class NoEntityDefined extends Exception
{
}
<?php
namespace App\Repositories\Exceptions;
use Exception;
class PropertyTableNotExists extends Exception
{
}
<?php
namespace App\Http\Controllers;
use App\Http\Requests\StoreUpdateAgendamentoRequest;
use App\Models\Agendamento;
use Illuminate\Http\Request;
use Illuminate\Support\Facades\DB;
class AgendamentoController extends Controller
{
protected $request;
private $repository;
public function __construct(Request $request, Agendamento $agendamento)
{
$this->request = $request;
$this->repository = $agendamento;
//$this->middleware('auth');
/*$this->middleware('auth')->only([
'create', 'store'
]);
$this->middleware('auth')->except([
'index', 'show'
]);
*/
}
/**
* Display a listing of the resource.
*
* @return \Illuminate\Http\Response
*/
public function index()
{
$agendamento = Agendamento::paginate();
return view('admin.pages.agendamentos.index', [
'agendamentos' => $agendamento
]);
}
/**
* Show the form for creating a new resource.
*
* @return \Illuminate\Http\Response
*/
public function create()
{
return view('admin.pages.agendamentos.create');
}
/**
* Store a newly created resource in storage.
*
* @param App\Http\Requests\StoreUpdateAgendamentoRequest; $request
* @return \Illuminate\Http\Response
*/
public function store(StoreUpdateAgendamentoRequest $request)
{
$data = $request->all();
$this->repository->create($data);
return redirect()->route('agendamentos.index');
}
/**
* Display the specified resource.
*
* @param int $id
* @return \Illuminate\Http\Response
*/
public function show($id)
{
// if(!$agendamento = $this->repository->find($id))
// return redirect()->back();
$agendamento = DB::table('agendamento.agendamentos')->where('id', $id)->first();
if(!$agendamento)
return redirect()->back();
return view('admin.pages.agendamentos.show', [
'agendamentos' => $agendamento
]);
}
/**
* Show the form for editing the specified resource.
*
* @param int $id
* @return \Illuminate\Http\Response
*/
public function edit($id)
{
if(!$agendamento = $this->repository->find($id))
return redirect()->back();
return view('admin.pages.agendamentos.edit', compact('agendamento'));
}
/**
* Update the specified resource in storage.
*
* @param App\Http\Requests\StoreUpdateAgendamentoRequest; $request
* @param int $id
* @return \Illuminate\Http\Response
*/
public function update(StoreUpdateAgendamentoRequest $request, $id)
{
if(!$agendamento = $this->repository->find($id))
return redirect()->back();
$agendamento->update($request->all());
return redirect()->route('agendamentos.index');
}
/**
* Remove the specified resource from storage.
*
* @param int $id
* @return \Illuminate\Http\Response
*/
public function destroy($id)
{
if(!$agendamento = $this->repository->find($id))
return redirect()->back();
$agendamento->delete();
return redirect()->route('agendamentos.index');
}
public function search(Request $request)
{
$filters = $request->except('_token');
$agendamentos = $this->repository->search($request->filter);
return view('admin.pages.agendamentos.index', [
'agendamentos' => $agendamentos,
'filters' => $filters,
]);
}
}
<?php
namespace App\Http\Controllers\Auth;
use App\Http\Controllers\Controller;
use App\Providers\RouteServiceProvider;
use Illuminate\Foundation\Auth\ConfirmsPasswords;
class ConfirmPasswordController extends Controller
{
/*
|--------------------------------------------------------------------------
| Confirm Password Controller
|--------------------------------------------------------------------------
|
| This controller is responsible for handling password confirmations and
| uses a simple trait to include the behavior. You're free to explore
| this trait and override any functions that require customization.
|
*/
use ConfirmsPasswords;
/**
* Where to redirect users when the intended url fails.
*
* @var string
*/
protected $redirectTo = RouteServiceProvider::HOME;
/**
* Create a new controller instance.
*
* @return void
*/
public function __construct()
{
$this->middleware('auth');
}
}
<?php
namespace App\Http\Controllers\Auth;
use App\Http\Controllers\Controller;
use Illuminate\Foundation\Auth\SendsPasswordResetEmails;
class ForgotPasswordController extends Controller
{
/*
|--------------------------------------------------------------------------
| Password Reset Controller
|--------------------------------------------------------------------------
|
| This controller is responsible for handling password reset emails and
| includes a trait which assists in sending these notifications from
| your application to your users. Feel free to explore this trait.
|
*/
use SendsPasswordResetEmails;
}
<?php
namespace App\Http\Controllers\Auth;
use App\Http\Controllers\Controller;
use App\Providers\RouteServiceProvider;
use Illuminate\Foundation\Auth\AuthenticatesUsers;
class LoginController extends Controller
{
/*
|--------------------------------------------------------------------------
| Login Controller
|--------------------------------------------------------------------------
|
| This controller handles authenticating users for the application and
| redirecting them to your home screen. The controller uses a trait
| to conveniently provide its functionality to your applications.
|
*/
use AuthenticatesUsers;
/**
* Where to redirect users after login.
*
* @var string
*/
protected $redirectTo = RouteServiceProvider::HOME;
/**
* Create a new controller instance.
*
* @return void
*/
public function __construct()
{
$this->middleware('guest')->except('logout');
}
}
<?php
namespace App\Http\Controllers\Auth;
use App\Http\Controllers\Controller;
use App\Models\User;
use App\Providers\RouteServiceProvider;
use Illuminate\Foundation\Auth\RegistersUsers;
use Illuminate\Support\Facades\Hash;
use Illuminate\Support\Facades\Validator;
class RegisterController extends Controller
{
/*
|--------------------------------------------------------------------------
| Register Controller
|--------------------------------------------------------------------------
|
| This controller handles the registration of new users as well as their
| validation and creation. By default this controller uses a trait to
| provide this functionality without requiring any additional code.
|
*/
use RegistersUsers;
/**
* Where to redirect users after registration.
*
* @var string
*/
protected $redirectTo = RouteServiceProvider::HOME;
/**
* Create a new controller instance.
*
* @return void
*/
public function __construct()
{
$this->middleware('guest');
}
/**
* Get a validator for an incoming registration request.
*
* @param array $data
* @return \Illuminate\Contracts\Validation\Validator
*/
protected function validator(array $data)
{
return Validator::make($data, [
'name' => ['required', 'string', 'max:255'],
'email' => ['required', 'string', 'email', 'max:255', 'unique:users'],
'password' => ['required', 'string', 'min:8', 'confirmed'],
]);
}
/**
* Create a new user instance after a valid registration.
*
* @param array $data
* @return \App\User
*/
protected function create(array $data)
{
return
User::create([
'name' => $data['name'],
'email' => $data['email'],
'password' => Hash::make($data['password']),
]);
}
}
<?php
namespace App\Http\Controllers\Auth;
use App\Http\Controllers\Controller;
use App\Providers\RouteServiceProvider;
use Illuminate\Foundation\Auth\ResetsPasswords;
class ResetPasswordController extends Controller
{
/*
|--------------------------------------------------------------------------
| Password Reset Controller
|--------------------------------------------------------------------------
|
| This controller is responsible for handling password reset requests
| and uses a simple trait to include this behavior. You're free to
| explore this trait and override any methods you wish to tweak.
|
*/
use ResetsPasswords;
/**
* Where to redirect users after resetting their password.
*
* @var string
*/
protected $redirectTo = RouteServiceProvider::HOME;
}
<?php
namespace App\Http\Controllers\Auth;
use App\Http\Controllers\Controller;
use App\Providers\RouteServiceProvider;
use Illuminate\Foundation\Auth\VerifiesEmails;
class VerificationController extends Controller
{
/*
|--------------------------------------------------------------------------
| Email Verification Controller
|--------------------------------------------------------------------------
|
| This controller is responsible for handling email verification for any
| user that recently registered with the application. Emails may also
| be re-sent if the user didn't receive the original email message.
|
*/
use VerifiesEmails;
/**
* Where to redirect users after verification.
*
* @var string
*/
protected $redirectTo = RouteServiceProvider::HOME;
/**
* Create a new controller instance.
*
* @return void
*/
public function __construct()
{
$this->middleware('auth');
$this->middleware('signed')->only('verify');
$this->middleware('throttle:6,1')->only('verify', 'resend');
}
}
<?php
namespace App\Http\Controllers;
use App\Http\Requests\StoreUpdateGlebaRequest;
use App\Models\Gleba;
use Illuminate\Http\Request;
class GlebaController extends Controller
{
protected $request;
private $repository;
public function __construct(Request $request, Gleba $gleba)
{
$this->request = $request;
$this->repository = $gleba;
//$this->middleware('auth');
/*$this->middleware('auth')->only([
'create', 'store'
]);
$this->middleware('auth')->except([
'index', 'show'
]);
*/
}
/**
* Display a listing of the resource.
*
* @return \Illuminate\Http\Response
*/
public function index()
{
$gleba = Gleba::paginate();
return view('admin.pages.glebas.index', [
'glebas' => $gleba
]);
}
/**
* Show the form for creating a new resource.
*
* @return \Illuminate\Http\Response
*/
public function create()
{
return view('admin.pages.glebas.create');
}
/**
* Store a newly created resource in storage.
*
* @param App\Http\Requests\StoreUpdateAgendamentoRequest; $request
* @return \Illuminate\Http\Response
*/
public function store(StoreUpdateGlebaRequest $request)
{
$data = $request->all();
$this->repository->create($data);
return redirect()->route('glebas.index');
}
/**
* Display the specified resource.
*
* @param int $id
* @return \Illuminate\Http\Response
*/
public function show($id)
{
if(!$gleba = $this->repository->find($id))
return redirect()->back();
return view('admin.pages.glebas.show', [
'glebas' => $gleba
]);
}
/**
* Show the form for editing the specified resource.
*
* @param int $id
* @return \Illuminate\Http\Response
*/
public function edit($id)
{
if(!$gleba = $this->repository->find($id))
return redirect()->back();
return view('admin.pages.glebas.edit', compact('id'));
}
/**
* Update the specified resource in storage.
*
* @param App\Http\Requests\StoreUpdateAgendamentoRequest; $request
* @param int $id
* @return \Illuminate\Http\Response
*/
public function update(StoreUpdateGlebaRequest $request, $id)
{
if(!$gleba = $this->repository->find($id))
return redirect()->back();
$gleba->update($request->all());
return redirect()->route('glebas.index');
}
/**
* Remove the specified resource from storage.
*
* @param int $id
* @return \Illuminate\Http\Response
*/
public function destroy($id)
{
if(!$gleba = $this->repository->find($id))
return redirect()->back();
$gleba->delete();
return redirect()->route('glebas.index');
}
public function search(Request $request)
{
$filters = $request->except('_token');
$glebas = $this->repository->search($request->filter);
return view('admin.pages.glebas.index', [
'glebas' => $glebas,
'filters' => $filters,
]);
}
}
<?php
namespace App\Http\Controllers;
use Illuminate\Http\Request;
class HomeController extends Controller
{
/**
* Create a new controller instance.
*
* @return void
*/
public function __construct()
{
$this->middleware('auth');
}
/**
* Show the application dashboard.
*
* @return \Illuminate\Contracts\Support\Renderable
*/
public function index()
{
return view('home');
}
}
\ No newline at end of file
<?php
namespace App\Http\Controllers;
use App\Http\Requests\StoreUpdateLoteRequest;
use App\Repositories\Contracts\LoteRepositoryInterface;
use Illuminate\Http\Request;
class LoteController extends Controller
{
protected $repository;
public function __construct(LoteRepositoryInterface $repository)
{
//dd($repository);
$this->repository = $repository;
}
/**
* Display a listing of the resource.
*
* @return \Illuminate\Http\Response
*/
public function index()
{
$repository = $this->repository
->relationShips([Titulo::class])
->paginate();
return view('admin.pages.lotes.index', [
'lotes' => $repository,
]);
}
/**
* Show the form for creating a new resource.
*
* @return \Illuminate\Http\Response
*/
public function create()
{
return view('admin.pages.lotes.create');
}
/**
* Store a newly created resource in storage.
*
* @param App\Http\Requests\StoreUpdateLoteRequest; $request
* @return \Illuminate\Http\Response
*/
public function store(StoreUpdateLoteRequest $request)
{
$data = $request->all();
$this->repository->store($data);
return redirect()->route('lotes.index');
// $this->repository->insert([
// 'municipio_id' => $request->municipio_id,
// 'numero' => $request->numero,
// 'proprietario' => $request->proprietario,
// 'cpf' => $request->cpf,
// 'dhc' => $request->dhc,
// 'dhm' => $request->dhm,
// 'area' => $request->area,
// ]);
}
/**
* Display the specified resource.
*
* @param int $id
* @return \Illuminate\Http\Response
*/
public function show($id)
{
if (!$repository = $this->repository->findById($id)) {
return redirect()->back();
}
return view('admin.pages.lotes.show', [
'lotes' => $repository,
]);
// $repository = DB::table('sige.lotes')->where('id', $id)->first();
// if(!$repository)
// return redirect()->back();
}
/**
* Show the form for editing the specified resource.
*
* @param int $id
* @return \Illuminate\Http\Response
*/
public function edit($id)
{
if (!$repository = $this->repository->findById($id)) {
return redirect()->back();
}
return view('admin.pages.lotes.edit', compact('lote'));
}
/**
* Update the specified resource in storage.
*
* @param App\Http\Requests\StoreUpdateLoteRequest; $request
* @param int $id
* @return \Illuminate\Http\Response
*/
public function update(StoreUpdateLoteRequest $request, $id)
{
$this->repository
->update($id, [
'municipio_id' => $request->municipio_id,
]);
// if (!$repository = $this->repository->findById($id)) {
// return redirect()->back();
// }
//$repository->update($request->all());
return redirect()->route('lotes.index');
}
/**
* Remove the specified resource from storage.
*
* @param int $id
* @return \Illuminate\Http\Response
*/
public function destroy($id)
{
if (!$repository = $this->repository->findById($id)) {
return redirect()->back();
}
$repository->delete();
return redirect()->route('lotes.index');
}
public function search(Request $request)
{
$filters = $request->except('_token');
$repository = $this->repository->search($request);
return view('admin.pages.lotes.index', [
'lotes' => $repository,
'filters' => $filters,
]);
}
}
<?php
namespace App\Http\Controllers;
use App\Http\Requests\StoreUpdateMunicipioRequest;
use App\Models\Municipio;
use Illuminate\Http\Request;
class MunicipioController extends Controller
{
protected $request;
private $repository;
public function __construct(Request $request, Municipio $municipio)
{
$this->request = $request;
$this->repository = $municipio;
//$this->middleware('auth');
/*$this->middleware('auth')->only([
'create', 'store'
]);
$this->middleware('auth')->except([
'index', 'show'
]);
*/
}
/**
* Display a listing of the resource.
*
* @return \Illuminate\Http\Response
*/
public function index()
{
$municipio = Municipio::paginate();
return view('admin.pages.municipios.index', [
'municipios' => $municipio
]);
}
/**
* Show the form for creating a new resource.
*
* @return \Illuminate\Http\Response
*/
public function create()
{
return view('admin.pages.municipios.create');
}
/**
* Store a newly created resource in storage.
*
* @param App\Http\Requests\StoreUpdateAgendamentoRequest; $request
* @return \Illuminate\Http\Response
*/
public function store(StoreUpdateMunicipioRequest $request)
{
$data = $request->all();
$this->repository->create($data);
return redirect()->route('municipios.index');
}
/**
* Display the specified resource.
*
* @param int $id
* @return \Illuminate\Http\Response
*/
public function show($id)
{
if(!$municipio = $this->repository->find($id))
return redirect()->back();
return view('admin.pages.municipios.show', [
'municipios' => $municipio
]);
}
/**
* Show the form for editing the specified resource.
*
* @param int $id
* @return \Illuminate\Http\Response
*/
public function edit($id)
{
if(!$municipio = $this->repository->find($id))
return redirect()->back();
return view('admin.pages.municipios.edit', compact('id'));
}
/**
* Update the specified resource in storage.
*
* @param App\Http\Requests\StoreUpdateAgendamentoRequest; $request
* @param int $id
* @return \Illuminate\Http\Response
*/
public function update(StoreUpdateMunicipioRequest $request, $id)
{
if(!$municipio = $this->repository->find($id))
return redirect()->back();
$municipio->update($request->all());
return redirect()->route('municipios.index');
}
/**
* Remove the specified resource from storage.
*
* @param int $id
* @return \Illuminate\Http\Response
*/
public function destroy($id)
{
if(!$municipio = $this->repository->find($id))
return redirect()->back();
$municipio->delete();
return redirect()->route('municipios.index');
}
public function search(Request $request)
{
$filters = $request->except('_token');
$municipios = $this->repository->search($request->filter);
return view('admin.pages.municipios.index', [
'municipios' => $municipios,
'filters' => $filters,
]);
}
}
<?php
namespace App\Http\Controllers;
use App\Models\Gleba;
use App\Models\Lote;
use App\Models\Municipio;
use App\Models\Titulo;
use Illuminate\Http\Request;
use Illuminate\Support\Facades\DB;
class OneToManyController extends Controller
{
public function oneToMany()
{
// //$municipio = Municipio::where('uf', 'CE')->get()->first();
// $municipios = Municipio::whereIn('nome', ['ABAIARA', 'ACARAÚ'])->with('lotes')->get();
// //dd($municipios);
// foreach ($municipios as $municipio) {
// echo "<br><b>{$municipio->nome}</b>";
// $lotes = $municipio->lotes()->get();
// $lotes = $municipio->lotes;
// foreach ($lotes as $lote) {
// echo "<br>{$lote->numero}";
// echo " - {$lote->proprietario}";
// echo " - {$lote->cpf}";
// }
// echo "<hr>";
// }
// $municipios = Municipio::get();
// foreach($municipios as $municipio) {
// $lotes = Lote::where('municipio_id', '=',"{$municipio->id}")->with('titulos')->get();
// //dd($municipio);
// foreach ($lotes as $lote) {
// $lotes = Lote::where(str_replace(array('.', '-'), '', "{$lote->cpf}"))->with('titulos')->get();
// dd($lote);
// echo "<br>Proprietário: {$lote->proprietario}";
// echo "<br>CPF: - {$lote->cpf}";
// echo "<hr>";
// $titulos = $lote->titulos()->get();
// $titulos = $lote->titulos;
// foreach ($titulos as $titulo) {
// echo "<br>Número Título: {$titulo->numero_titulo}";
// }
// }
// }
}
}
<?php
namespace App\Http\Controllers;
use App\Models\Lote;
use App\Models\Titulo;
use Illuminate\Http\Request;
class OneToOneController extends Controller
{
public function oneToOne()
{
$titulo = Titulo::where('lote_id', 277720)->get()->first();
$lote = $titulo->titulos();
dd($lote);
// echo "Número Título: " . "{$titulo->numero_titulo}<br>";
// $gleba = $titulo->gleba;
// echo "Municipio: " . "{$gleba->municipio_id}<br>";
// echo "Gleba: " . "{$gleba->nome}";
}
// public function oneToOneLoteTitulo()
// {
// $titulo = Titulo::find(10);
// echo "Número Título: " . "{$titulo->numero_titulo}<br>";
// $gleba = $titulo->gleba;
// echo "Municipio: " . "{$gleba->municipio_id}<br>";
// echo "Gleba: " . "{$gleba->nome}";
// }
}
<?php
namespace App\Http\Controllers\Admin;
use App\Http\Controllers\Controller;
use Illuminate\Http\Request;
class TesteController extends Controller
{
public function teste(){
return "Teste Controller";
}
}
<?php
namespace App\Http\Controllers;
use App\Http\Requests\StoreUpdateTituloRequest;
use App\Models\Titulo;
use Illuminate\Http\Request;
use Illuminate\Support\Facades\DB;
use function GuzzleHttp\Promise\all;
class TituloController extends Controller
{
protected $request;
//Injeção de dependência
public function __construct(Request $request, Titulo $titulo)
{
$this->request = $request;
$this->repository = $titulo;
}
/**
* Display a listing of the resource.
*
* @return \Illuminate\Http\Response
*/
public function index()
{
$titulos = Titulo::paginate();
return view('admin.pages.titulos.index', [
'titulos' => $titulos
]);
}
/**
* Show the form for creating a new resource.
*
* @return \Illuminate\Http\Response
*/
public function create()
{
return view('admin.pages.titulos.create');
}
/**
* Store a newly created resource in storage.
*
* @param App\Http\Requests\StoreUpdateTituloRequest $request
* @return \Illuminate\Http\Response
*/
public function store(StoreUpdateTituloRequest $request)
{
$data = $request->all();
$this->repository->create($data);
return redirect()->route('titulos.index');
}
/**
* Display the specified resource.
*
* @param int $id
* @return \Illuminate\Http\Response
*/
public function show($id)
{
if(!$titulo = Titulo::find($id))
return redirect()->back();
return view('admin.pages.titulos.show', [
'titulos' => $titulo
]);
}
/**
* Show the form for editing the specified resource.
*
* @param int $id
* @return \Illuminate\Http\Response
*/
public function edit($id)
{
if(!$titulo = $this->repository->find($id))
return redirect()->back();
//dd($titulo);
// return view('admin.pages.titulos.edit', [
// 'titulos' => $titulo
// ]);
return view('admin.pages.titulos.edit', compact('titulo'));
}
/**
* Update the specified resource in storage.
*
* @param \Illuminate\Http\Request $request
* @param int $id
* @return \Illuminate\Http\Response
*/
public function update(StoreUpdateTituloRequest $request, $id)
{
if(!$titulo = $this->repository->find($id))
return redirect()->back();
$titulo->update($request->all());
return redirect()->route('titulos.index');
}
/**
* Remove the specified resource from storage.
*
* @param int $id
* @return \Illuminate\Http\Response
*/
public function destroy($id)
{
if(!$titulo = $this->repository->find($id))
return redirect()->back();
$titulo->delete();
return redirect()->route('titulos.index');
}
public function search(Request $request)
{
$filters = $request->except('_token');
$titulo = $this->repository->search($request->filter);
return view('admin.pages.titulos.index', [
'titulos' => $titulo,
'filters' => $filters,
]);
}
}
...@@ -20,6 +20,9 @@ class RedirectIfAuthenticated ...@@ -20,6 +20,9 @@ class RedirectIfAuthenticated
{ {
if (Auth::guard($guard)->check()) { if (Auth::guard($guard)->check()) {
return redirect(RouteServiceProvider::HOME); return redirect(RouteServiceProvider::HOME);
return redirect(RouteServiceProvider::MUNICIPIO);
return redirect(RouteServiceProvider::GLEBA);
return redirect(RouteServiceProvider::LOTE);
} }
return $next($request); return $next($request);
......
<?php
namespace App\Http\Requests;
use Illuminate\Foundation\Http\FormRequest;
class StoreUpdateAgendamentoRequest extends FormRequest
{
/**
* Determine if the user is authorized to make this request.
*
* @return bool
*/
public function authorize()
{
return true;
}
/**
* Get the validation rules that apply to the request.
*
* @return array
*/
public function rules()
{
return [
'nome' => 'required|min:3|max:255',
'cpf' => 'required|max:11'
];
}
public function messages()
{
return [
'nome.required' => 'Nome é obrigatório!',
'cpf.required' => 'Cpf é obrigatório!'
];
}
}
<?php
namespace App\Http\Requests;
use Illuminate\Foundation\Http\FormRequest;
class StoreUpdateGlebaRequest extends FormRequest
{
/**
* Determine if the user is authorized to make this request.
*
* @return bool
*/
public function authorize()
{
return false;
}
/**
* Get the validation rules that apply to the request.
*
* @return array
*/
public function rules()
{
return [
//
];
}
}
<?php
namespace App\Http\Requests;
use Illuminate\Foundation\Http\FormRequest;
class StoreUpdateLoteRequest extends FormRequest
{
/**
* Determine if the user is authorized to make this request.
*
* @return bool
*/
public function authorize()
{
return true;
}
/**
* Get the validation rules that apply to the request.
*
* @return array
*/
public function rules()
{
return [
'municipio_id' => 'required',
];
}
}
<?php
namespace App\Http\Requests;
use Illuminate\Foundation\Http\FormRequest;
class StoreUpdateMunicipioRequest extends FormRequest
{
/**
* Determine if the user is authorized to make this request.
*
* @return bool
*/
public function authorize()
{
return true;
}
/**
* Get the validation rules that apply to the request.
*
* @return array
*/
public function rules()
{
return [
'nome' => 'required',
];
}
}
<?php
namespace App\Http\Requests;
use Illuminate\Foundation\Http\FormRequest;
class StoreUpdateTituloRequest extends FormRequest
{
/**
* Determine if the user is authorized to make this request.
*
* @return bool
*/
public function authorize()
{
return true;
}
/**
* Get the validation rules that apply to the request.
*
* @return array
*/
public function rules()
{
return [
'numero_titulo' => 'required',
];
}
public function messages()
{
return [
'numero_titulo.required' => 'Número Título é obrigatório!',
];
}
}
<?php
namespace App\Models;
use Illuminate\Database\Eloquent\Model;
use Illuminate\Support\Facades\DB;
class Agendamento extends Model
{
protected $table = 'agendamento.agendamentos';
protected $fillable = ['nome', 'cpf', 'telefone','servico', 'data'];
public function search($filter = null)
{
$results = $this->where(function ($query) use ($filter){
if($filter){
$query->where('nome', 'LIKE', "%{$filter}%");
}
})//->toSql();
->paginate();
return $results;
}
}
<?php
namespace App\Models;
use Illuminate\Database\Eloquent\Model;
class Gleba extends Model
{
protected $table = 'sige.glebas';
protected $fillable = ['id'];
public function search($filter = null)
{
$results = $this->where(function ($query) use ($filter){
if($filter){
$query->where('id', "$filter}");
}
})//->toSql();
->paginate();
return $results;
}
}
<?php
namespace App\Models;
use Illuminate\Database\Eloquent\Model;
class Lote extends Model
{
protected $table = 'sige.lotes';
protected $fillable = ['id', 'area', 'ativo', 'criado_por_id', 'dhc', 'dhm', 'modificado_por_id',
'municipio_id', 'nome', 'numero', 'perimetro', 'proprietario', 'situacao_juridica_id',
'titulo', 'sncr', 'cpf', 'protocolo', 'is_aprovado', 'data_termino_periodo_de_uso',
'status_estrutura', 'status_pessoa', 'status_uso', 'comunidade', 'localidade', 'projeto_especial',
'cnpj', 'status_titulo', 'migrado_para_access', 'cod_imo_rur'];
public function search($filter = null)
{
$results = $this->where(function ($query) use ($filter) {
if ($filter) {
$query->where('proprietario', 'LIKE', "%{$filter}%");
}
}) //->toSql();
->paginate();
return $results;
}
public function titulos()
{
return $this->hasOne(Lote::class, 277720 );
}
}
<?php
namespace App\Models;
use Illuminate\Database\Eloquent\Model;
class Municipio extends Model
{
protected $table = 'ibge.municipios';
protected $fillable = ['id', 'nome'];
public function search($filter = null)
{
$results = $this->where(function ($query) use ($filter){
if($filter){
$query->where('nome', "$filter}");
}
})//->toSql();
->paginate();
return $results;
}
public function gleba()
{
return $this->hasOne(Glebas::class);
}
public function lotes()
{
return $this->hasMany(Lote::class);
}
}
<?php
namespace App\Models;
use Illuminate\Database\Eloquent\Model;
class Titulo extends Model
{
protected $table = 'sige.titulos';
protected $fillable = ['id', 'numero_titulo', 'gleba_id'];
public function search($filter = null)
{
$results = $this->where(function ($query) use ($filter){
if($filter){
$query->where('numero_titulo', "{$filter}")
->orWhere('lote_id', "{$filter}")
->orWhere('gleba_id', "{$filter}");
}
})->paginate();
return $results;
}
// public function lotes()
// {
// return $this->belongsTo(Titulo::class);
// }
// public function gleba()
// {
// return $this->hasOne(Gleba::class,'id');
// }
}
...@@ -9,6 +9,7 @@ use Illuminate\Notifications\Notifiable; ...@@ -9,6 +9,7 @@ use Illuminate\Notifications\Notifiable;
class User extends Authenticatable class User extends Authenticatable
{ {
use Notifiable; use Notifiable;
protected $table = 'agendamento.users';
/** /**
* The attributes that are mass assignable. * The attributes that are mass assignable.
......
...@@ -13,7 +13,11 @@ class AppServiceProvider extends ServiceProvider ...@@ -13,7 +13,11 @@ class AppServiceProvider extends ServiceProvider
*/ */
public function register() public function register()
{ {
// //$this->app->bind('App\Repositories\Contracts\LoteRepositoryInterface', 'App\Repositories\Contracts\RepositoryInterface');
// $this->app->bind(
// LoteRepositoryInterface::class,
// EloquentLoteRepository::class
// );
} }
/** /**
...@@ -23,6 +27,10 @@ class AppServiceProvider extends ServiceProvider ...@@ -23,6 +27,10 @@ class AppServiceProvider extends ServiceProvider
*/ */
public function boot() public function boot()
{ {
// // $this->registerPolicies();
// Auth::provider('customcs', function ($app, array $config) {
// return $app->make(RepositoryServiceProvider::class, ['model' => $config['model']]);
// });
} }
} }
<?php
namespace App\Providers;
use Illuminate\Support\ServiceProvider;
use App\Repositories\Contracts\{
LoteRepositoryInterface,
};
use App\Repositories\Core\Eloquent\EloquentLoteRepository;
use App\Repositories\Core\QueryBuilder\{
QueryBuilderLoteRepository,
};
class RepositoryServiceProvider extends ServiceProvider
{
/**
* Register services.
*
* @return void
*/
public function register()
{
$this->app->bind(
LoteRepositoryInterface::class,
QueryBuilderLoteRepository::class
);
// $this->app->bind(
// LoteRepositoryInterface::class,
// EloquentLoteRepository::class
// );
}
/**
* Bootstrap services.
*
* @return void
*/
public function boot()
{
// $this->registerPolicies();
// Auth::provider('customcs', function ($app, array $config) {
// return $app->make(CustomEloquentUserProvider::class, ['model' => $config['model']]);
// });
}
}
...@@ -22,6 +22,9 @@ class RouteServiceProvider extends ServiceProvider ...@@ -22,6 +22,9 @@ class RouteServiceProvider extends ServiceProvider
* @var string * @var string
*/ */
public const HOME = '/home'; public const HOME = '/home';
public const MUNICIPIO = '/municipios';
public const GLEBA = '/glebas';
public const LOTE = '/lotes';
/** /**
* Define your route model bindings, pattern filters, etc. * Define your route model bindings, pattern filters, etc.
......
<?php
namespace App\Repositories\Contracts;
use Illuminate\Http\Request;
interface LoteRepositoryInterface
{
public function getAll();
public function findById($id);
public function findWhere($column, $valor);
public function findWhereFirst($column, $valor);
public function paginate($totalPage = 10);
public function store(array $data);
public function update($id, array $data);
public function delete($id);
public function search(Request $request);
public function relationShips(array $relationShips);
}
\ No newline at end of file
<?php
namespace App\Repositories\Contracts;
interface RepositoryInterface
{
public function getAll();
public function findById($id);
public function findWhere($column, $valor);
public function findWhereFirst($column, $valor);
public function paginate($totalPage = 10);
public function store(array $data);
public function update($id, array $data);
public function delete($id);
//public function search(array $data);
}
<?php
namespace App\Repositories\Core;
use App\Models\Lote;
use App\Models\Titulo;
use App\Repositories\Contracts\RepositoryInterface;
use App\Repositories\Exceptions\NoEntityDefined;
class BaseEloquentRepository implements RepositoryInterface
{
protected $entity;
public function __construct()
{
$this->entity = $this->resolveEntity();
}
public function getAll()
{
return $this->entity->get();
}
public function findById($id)
{
if (Lote::class) {
return Lote::find($id);
} else if (Titulo::class) {
return Titulo::find($id);
} else {
return $this->entity->find($id);
}
}
public function findWhere($column, $valor)
{
return $this->entity
->where($column, $valor)
->get();
}
public function findWhereFirst($column, $valor)
{
return $this->entity
->where($column, $valor)
->first();
}
public function paginate($totalPage = 10)
{
if (Lote::class) {
return Lote::paginate();
} else if (Titulo::class) {
return Titulo::paginate();
} else {
return $this->entity->paginate();
}
}
public function store(array $data)
{
$this->entity->create($data);
}
public function update($id, array $data)
{
$entity = $this->findById($id);
return $entity->update($data);
}
public function delete($id)
{
return $this->entity->find($id)->delete();
}
public function relationShips($relationShips)
{
//dd($relationShips);
$this->entity->hasOne($relationShips);
return $this->entity;
}
public function resolveEntity()
{
//dd(!method_exists($this->entity, 'entity'));
if (method_exists($this->entity, 'entity')) {
throw new NoEntityDefined;
}
return app($this->entity);
}
}
<?php
namespace App\Repositories\Core;
use Illuminate\Support\Facades\DB;
use App\Repositories\Contracts\RepositoryInterface;
use App\Repositories\Exceptions\PropertyTableNotExists;
class BaseQueryBuilderRepository implements RepositoryInterface
{
protected $tb;
public function __construct()
{
$this->tb = $this->resolveTable();
}
public function getAll()
{
return DB::table($this->tb)->get();
}
public function findById($id)
{
return DB::table($this->tb)->find($id);
}
public function findWhere($column, $valor)
{
return DB::table($this->tb)
->where($column, $valor)
->get();
}
public function findWhereFirst($column, $valor)
{
return DB::table($this->tb)
->where($column, $valor)
->first();
}
public function paginate($totalPage = 10)
{
return DB::table($this->tb)->paginate($totalPage);
}
public function store(array $data)
{
$this->DB::table($this->tb)
->create($data);
}
public function update($id, array $data)
{
return DB::table($this->tb)
->where('id', $id)
->update($data);
}
public function delete($id)
{
return DB::table($this->tb)
->where('id', $id)
->delete($id);
}
public function resolveTable()
{
if(!property_exists($this, 'table')){
throw new PropertyTableNotExists();
}
return app()->make($this->table);
}
}
\ No newline at end of file
<?php
namespace App\Repositories\Core\Eloquent;
use Illuminate\Http\Request;
use App\Models\Lote;
use App\Repositories\Contracts\LoteRepositoryInterface;
use App\Repositories\Core\BaseEloquentRepository;
class EloquentLoteRepository extends BaseEloquentRepository implements LoteRepositoryInterface
{
public function entity()
{
return Lote::class;
}
public function search(Request $request)
{
dd($this->entity);
return $this->entity
->where(function ($query) use ($request) {
if($request->proprietario){
$filter = $request->proprietario;
$query->where(function ($querySub) use ($filter){
$querySub->where('proprietario', 'LIKE', "%{$filter}%");
})
->orderBy('municipio_id', 'desc')
->paginate();
}
// if (isset($data['municipio_id'])) {
// $query->where('municipio_id', $data['municipio_id']);
// }
// if (isset($data['proprietario'])) {
// $query->where('proprietario', $data['proprietario']);
// }
})
->orderBy('municipio_id', 'desc')
->paginate();
}
}
<?php
namespace App\Repositories\Core\QueryBuilder;
use Illuminate\Http\Request;
use App\Repositories\Contracts\LoteRepositoryInterface;
use App\Repositories\Core\BaseEloquentRepository;
class QueryBuilderLoteRepository extends BaseEloquentRepository implements LoteRepositoryInterface
{
protected $table = 'sige.lotes';
public function search(Request $request)
{
return $this->entity
->where(function ($query) use ($request) {
if($request->proprietario){
$filter = $request->proprietario;
$query->where(function ($querySub) use ($filter){
$querySub->where('proprietario', 'LIKE', "%{$filter}%");
})
->orderBy('municipio_id', 'desc')
->paginate();
}
// if (isset($data['municipio_id'])) {
// $query->where('municipio_id', $data['municipio_id']);
// }
// if (isset($data['proprietario'])) {
// $query->where('proprietario', $data['proprietario']);
// }
})
->orderBy('municipio_id', 'desc')
->paginate();
}
}
\ No newline at end of file
...@@ -12,10 +12,13 @@ ...@@ -12,10 +12,13 @@
"fideloper/proxy": "^4.2", "fideloper/proxy": "^4.2",
"fruitcake/laravel-cors": "^1.0", "fruitcake/laravel-cors": "^1.0",
"guzzlehttp/guzzle": "^6.3", "guzzlehttp/guzzle": "^6.3",
"jeroennoten/laravel-adminlte": "^3.4",
"laravel/framework": "^7.0", "laravel/framework": "^7.0",
"laravel/tinker": "^2.0" "laravel/tinker": "^2.0",
"laravel/ui": "^2.1"
}, },
"require-dev": { "require-dev": {
"barryvdh/laravel-debugbar": "^3.4",
"facade/ignition": "^2.0", "facade/ignition": "^2.0",
"fzaninotto/faker": "^1.9.1", "fzaninotto/faker": "^1.9.1",
"mockery/mockery": "^1.3.1", "mockery/mockery": "^1.3.1",
...@@ -34,7 +37,9 @@ ...@@ -34,7 +37,9 @@
}, },
"autoload": { "autoload": {
"psr-4": { "psr-4": {
"App\\": "app/" "App\\": "app/",
"Lote\\": "app/"
}, },
"classmap": [ "classmap": [
"database/seeds", "database/seeds",
......
This diff is collapsed.
This diff is collapsed.
...@@ -80,7 +80,7 @@ return [ ...@@ -80,7 +80,7 @@ return [
| |
*/ */
'locale' => 'en', 'locale' => 'pt-br',
/* /*
|-------------------------------------------------------------------------- |--------------------------------------------------------------------------
...@@ -93,7 +93,7 @@ return [ ...@@ -93,7 +93,7 @@ return [
| |
*/ */
'fallback_locale' => 'en', 'fallback_locale' => 'pt-br',
/* /*
|-------------------------------------------------------------------------- |--------------------------------------------------------------------------
...@@ -174,6 +174,7 @@ return [ ...@@ -174,6 +174,7 @@ return [
// App\Providers\BroadcastServiceProvider::class, // App\Providers\BroadcastServiceProvider::class,
App\Providers\EventServiceProvider::class, App\Providers\EventServiceProvider::class,
App\Providers\RouteServiceProvider::class, App\Providers\RouteServiceProvider::class,
App\Providers\RepositoryServiceProvider::class,
], ],
......
...@@ -46,6 +46,11 @@ return [ ...@@ -46,6 +46,11 @@ return [
'provider' => 'users', 'provider' => 'users',
'hash' => false, 'hash' => false,
], ],
'customcs' => [
'driver' => 'session',
'provider' => 'csauth',
]
], ],
/* /*
...@@ -66,15 +71,18 @@ return [ ...@@ -66,15 +71,18 @@ return [
*/ */
'providers' => [ 'providers' => [
'users' => [ 'users' => [
'driver' => 'eloquent', 'driver' => 'eloquent',
'model' => App\Models\User::class, 'model' => App\Models\User::class,
], ],
// 'users' => [ // 'users' => [
// 'driver' => 'database', // 'driver' => 'database',
// 'table' => 'users', // 'table' => 'sec_user',
// ], // ],
], ],
/* /*
......
...@@ -15,7 +15,7 @@ return [ ...@@ -15,7 +15,7 @@ return [
| |
*/ */
'default' => env('DB_CONNECTION', 'mysql'), 'default' => env('DB_CONNECTION', 'postgres'),
/* /*
|-------------------------------------------------------------------------- |--------------------------------------------------------------------------
...@@ -66,7 +66,7 @@ return [ ...@@ -66,7 +66,7 @@ return [
'pgsql' => [ 'pgsql' => [
'driver' => 'pgsql', 'driver' => 'pgsql',
'url' => env('DATABASE_URL'), 'url' => env('DATABASE_URL'),
'host' => env('DB_HOST', '127.0.0.1'), 'host' => env('DB_HOST', '172.28.1.33'),
'port' => env('DB_PORT', '5432'), 'port' => env('DB_PORT', '5432'),
'database' => env('DB_DATABASE', 'forge'), 'database' => env('DB_DATABASE', 'forge'),
'username' => env('DB_USERNAME', 'forge'), 'username' => env('DB_USERNAME', 'forge'),
......
...@@ -2,7 +2,7 @@ ...@@ -2,7 +2,7 @@
/** @var \Illuminate\Database\Eloquent\Factory $factory */ /** @var \Illuminate\Database\Eloquent\Factory $factory */
use App\User; use App\Models\User;
use Faker\Generator as Faker; use Faker\Generator as Faker;
use Illuminate\Support\Str; use Illuminate\Support\Str;
......
...@@ -13,7 +13,7 @@ class CreateUsersTable extends Migration ...@@ -13,7 +13,7 @@ class CreateUsersTable extends Migration
*/ */
public function up() public function up()
{ {
Schema::create('users', function (Blueprint $table) { Schema::create('agendamento.users', function (Blueprint $table) {
$table->id(); $table->id();
$table->string('name'); $table->string('name');
$table->string('email')->unique(); $table->string('email')->unique();
...@@ -31,6 +31,6 @@ class CreateUsersTable extends Migration ...@@ -31,6 +31,6 @@ class CreateUsersTable extends Migration
*/ */
public function down() public function down()
{ {
Schema::dropIfExists('users'); Schema::dropIfExists('agendamento.users');
} }
} }
...@@ -4,7 +4,7 @@ use Illuminate\Database\Migrations\Migration; ...@@ -4,7 +4,7 @@ use Illuminate\Database\Migrations\Migration;
use Illuminate\Database\Schema\Blueprint; use Illuminate\Database\Schema\Blueprint;
use Illuminate\Support\Facades\Schema; use Illuminate\Support\Facades\Schema;
class CreateFailedJobsTable extends Migration class CreatePasswordResetsTable extends Migration
{ {
/** /**
* Run the migrations. * Run the migrations.
...@@ -13,13 +13,10 @@ class CreateFailedJobsTable extends Migration ...@@ -13,13 +13,10 @@ class CreateFailedJobsTable extends Migration
*/ */
public function up() public function up()
{ {
Schema::create('failed_jobs', function (Blueprint $table) { Schema::create('agendamento.password_resets', function (Blueprint $table) {
$table->id(); $table->string('email')->index();
$table->text('connection'); $table->string('token');
$table->text('queue'); $table->timestamp('created_at')->nullable();
$table->longText('payload');
$table->longText('exception');
$table->timestamp('failed_at')->useCurrent();
}); });
} }
...@@ -30,6 +27,6 @@ class CreateFailedJobsTable extends Migration ...@@ -30,6 +27,6 @@ class CreateFailedJobsTable extends Migration
*/ */
public function down() public function down()
{ {
Schema::dropIfExists('failed_jobs'); Schema::dropIfExists('agendamento.password_resets');
} }
} }
<?php
use Illuminate\Database\Migrations\Migration;
use Illuminate\Database\Schema\Blueprint;
use Illuminate\Support\Facades\Schema;
class CreateSigelotesTable extends Migration {
/**
* Run the migrations.
*
* @return void
*/
public function up()
{
Schema::create('sige.lotes', function(Blueprint $table)
{
$table->bigInteger('id', true);
$table->decimal('area', 19, 4)->nullable();
$table->boolean('ativo');
$table->bigInteger('criado_por_id');
$table->dateTime('dhc')->default('now()');
$table->dateTime('dhm')->default('now()');
$table->bigInteger('modificado_por_id');
$table->bigInteger('municipio_id');
$table->string('nome')->nullable();
$table->string('numero', 25);
$table->float('perimetro', 10, 0)->nullable();
$table->string('proprietario')->nullable();
$table->bigInteger('situacao_juridica_id');
$table->string('titulo', 25)->nullable();
$table->string('sncr')->nullable()->default('');
$table->string('cpf')->nullable();
$table->integer('protocolo')->nullable();
$table->boolean('is_aprovado')->nullable();
$table->string('data_termino_periodo_de_uso')->nullable();
$table->string('status_estrutura')->nullable();
$table->string('status_pessoa')->nullable();
$table->string('status_uso')->nullable();
$table->string('comunidade')->nullable();
$table->string('localidade')->nullable();
$table->boolean('projeto_especial')->nullable();
$table->string('cnpj')->nullable();
$table->string('status_titulo', 5)->nullable();
$table->boolean('migrado_para_access')->nullable()->default(0);
$table->integer('cod_imo_rur')->nullable();
$table->unique(['municipio_id','numero'], 'lotes_municipio_id_numero_key');
});
}
/**
* Reverse the migrations.
*
* @return void
*/
public function down()
{
Schema::drop('sige.lotes');
}
}
<?php
use Illuminate\Database\Migrations\Migration;
use Illuminate\Database\Schema\Blueprint;
class AddForeignKeysToSige.lotesTable extends Migration {
/**
* Run the migrations.
*
* @return void
*/
public function up()
{
Schema::table('sige.lotes', function(Blueprint $table)
{
$table->foreign('situacao_juridica_id', 'fk6lkvdhopqcod3gskomdxkfamx')->references('id')->on('sige.situacoes_juridicas')->onUpdate('RESTRICT')->onDelete('RESTRICT');
$table->foreign('situacao_juridica_id', 'fk8c22d30560bab12f')->references('id')->on('sige.situacoes_juridicas')->onUpdate('RESTRICT')->onDelete('RESTRICT');
$table->foreign('modificado_por_id', 'fk8c22d30562f306bd')->references('id')->on('sec_user')->onUpdate('RESTRICT')->onDelete('RESTRICT');
$table->foreign('criado_por_id', 'fk8c22d30575c5065e')->references('id')->on('sec_user')->onUpdate('RESTRICT')->onDelete('RESTRICT');
$table->foreign('municipio_id', 'fk8c22d3057bd78ff4')->references('id')->on('sige.municipios')->onUpdate('RESTRICT')->onDelete('RESTRICT');
$table->foreign('criado_por_id', 'fkcii953vpjpmou40rxokli4sim')->references('id')->on('sec_user')->onUpdate('RESTRICT')->onDelete('RESTRICT');
$table->foreign('municipio_id', 'fkcl79m7cgqcc9saq3k38mte6qx')->references('id')->on('ibge.municipios')->onUpdate('RESTRICT')->onDelete('RESTRICT');
$table->foreign('modificado_por_id', 'fkj71rlmgnl97lrvpik2vyipm0r')->references('id')->on('sec_user')->onUpdate('RESTRICT')->onDelete('RESTRICT');
$table->foreign('municipio_id', 'fk8c22d3059e521211')->references('id')->on('ibge.municipios')->onUpdate('RESTRICT')->onDelete('RESTRICT');
});
}
/**
* Reverse the migrations.
*
* @return void
*/
public function down()
{
Schema::table('sige.lotes', function(Blueprint $table)
{
$table->dropForeign('fk6lkvdhopqcod3gskomdxkfamx');
$table->dropForeign('fk8c22d30560bab12f');
$table->dropForeign('fk8c22d30562f306bd');
$table->dropForeign('fk8c22d30575c5065e');
$table->dropForeign('fk8c22d3057bd78ff4');
$table->dropForeign('fkcii953vpjpmou40rxokli4sim');
$table->dropForeign('fkcl79m7cgqcc9saq3k38mte6qx');
$table->dropForeign('fkj71rlmgnl97lrvpik2vyipm0r');
$table->dropForeign('fk8c22d3059e521211');
});
}
}
<?php
use Illuminate\Database\Migrations\Migration;
use Illuminate\Database\Schema\Blueprint;
class CreateSigeglebasTable extends Migration {
/**
* Run the migrations.
*
* @return void
*/
public function up()
{
Schema::create('sige.glebas', function(Blueprint $table)
{
$table->bigInteger('id')->primary('glebas_pkey');
$table->string('nome_oficial_registro', 200)->nullable();
$table->string('descricao_livro')->nullable();
$table->string('numero_processo')->nullable();
$table->string('folha')->nullable();
$table->string('nome', 100)->nullable();
$table->dateTime('data_publicacao_diario_oficial')->nullable();
$table->string('nome_escrevente')->nullable();
$table->dateTime('data_registro')->nullable();
$table->string('numero_diario_oficial', 50)->nullable();
$table->string('endereco_cartorio', 200)->nullable();
$table->string('matricula')->nullable();
$table->string('ato_arrecadacao')->nullable();
$table->string('descricao_registro')->nullable();
$table->string('numero_ficha')->nullable();
$table->string('nome_cartorio', 200)->nullable();
$table->decimal('area', 19, 4)->nullable();
$table->bigInteger('municipio_id')->nullable();
});
}
/**
* Reverse the migrations.
*
* @return void
*/
public function down()
{
Schema::drop('sige.glebas');
}
}
<?php
use Illuminate\Database\Migrations\Migration;
use Illuminate\Database\Schema\Blueprint;
class CreateSigelotesTable extends Migration {
/**
* Run the migrations.
*
* @return void
*/
public function up()
{
Schema::create('sige.lotes', function(Blueprint $table)
{
$table->bigInteger('id', true);
$table->decimal('area', 19, 4)->nullable();
$table->boolean('ativo');
$table->bigInteger('criado_por_id');
$table->dateTime('dhc')->default('now()');
$table->dateTime('dhm')->default('now()');
$table->bigInteger('modificado_por_id');
$table->bigInteger('municipio_id');
$table->string('nome')->nullable();
$table->string('numero', 25);
$table->float('perimetro', 10, 0)->nullable();
$table->string('proprietario')->nullable();
$table->bigInteger('situacao_juridica_id');
$table->string('titulo', 25)->nullable();
$table->string('sncr')->nullable()->default('');
$table->string('cpf')->nullable();
$table->integer('protocolo')->nullable();
$table->boolean('is_aprovado')->nullable();
$table->string('data_termino_periodo_de_uso')->nullable();
$table->string('status_estrutura')->nullable();
$table->string('status_pessoa')->nullable();
$table->string('status_uso')->nullable();
$table->string('comunidade')->nullable();
$table->string('localidade')->nullable();
$table->boolean('projeto_especial')->nullable();
$table->string('cnpj')->nullable();
$table->string('status_titulo', 5)->nullable();
$table->boolean('migrado_para_access')->nullable()->default(0);
$table->integer('cod_imo_rur')->nullable();
$table->unique(['municipio_id','numero'], 'lotes_municipio_id_numero_key');
});
}
/**
* Reverse the migrations.
*
* @return void
*/
public function down()
{
Schema::drop('sige.lotes');
}
}
<?php
use Illuminate\Database\Migrations\Migration;
use Illuminate\Database\Schema\Blueprint;
class AddForeignKeysToSige.lotesTable extends Migration {
/**
* Run the migrations.
*
* @return void
*/
public function up()
{
Schema::table('sige.lotes', function(Blueprint $table)
{
$table->foreign('situacao_juridica_id', 'fk6lkvdhopqcod3gskomdxkfamx')->references('id')->on('sige.situacoes_juridicas')->onUpdate('RESTRICT')->onDelete('RESTRICT');
$table->foreign('situacao_juridica_id', 'fk8c22d30560bab12f')->references('id')->on('sige.situacoes_juridicas')->onUpdate('RESTRICT')->onDelete('RESTRICT');
$table->foreign('modificado_por_id', 'fk8c22d30562f306bd')->references('id')->on('sec_user')->onUpdate('RESTRICT')->onDelete('RESTRICT');
$table->foreign('criado_por_id', 'fk8c22d30575c5065e')->references('id')->on('sec_user')->onUpdate('RESTRICT')->onDelete('RESTRICT');
$table->foreign('municipio_id', 'fk8c22d3057bd78ff4')->references('id')->on('sige.municipios')->onUpdate('RESTRICT')->onDelete('RESTRICT');
$table->foreign('criado_por_id', 'fkcii953vpjpmou40rxokli4sim')->references('id')->on('sec_user')->onUpdate('RESTRICT')->onDelete('RESTRICT');
$table->foreign('municipio_id', 'fkcl79m7cgqcc9saq3k38mte6qx')->references('id')->on('ibge.municipios')->onUpdate('RESTRICT')->onDelete('RESTRICT');
$table->foreign('modificado_por_id', 'fkj71rlmgnl97lrvpik2vyipm0r')->references('id')->on('sec_user')->onUpdate('RESTRICT')->onDelete('RESTRICT');
$table->foreign('municipio_id', 'fk8c22d3059e521211')->references('id')->on('ibge.municipios')->onUpdate('RESTRICT')->onDelete('RESTRICT');
});
}
/**
* Reverse the migrations.
*
* @return void
*/
public function down()
{
Schema::table('sige.lotes', function(Blueprint $table)
{
$table->dropForeign('fk6lkvdhopqcod3gskomdxkfamx');
$table->dropForeign('fk8c22d30560bab12f');
$table->dropForeign('fk8c22d30562f306bd');
$table->dropForeign('fk8c22d30575c5065e');
$table->dropForeign('fk8c22d3057bd78ff4');
$table->dropForeign('fkcii953vpjpmou40rxokli4sim');
$table->dropForeign('fkcl79m7cgqcc9saq3k38mte6qx');
$table->dropForeign('fkj71rlmgnl97lrvpik2vyipm0r');
$table->dropForeign('fk8c22d3059e521211');
});
}
}
<?php
use Illuminate\Database\Migrations\Migration;
use Illuminate\Database\Schema\Blueprint;
class CreateSigetiposleisTable extends Migration {
/**
* Run the migrations.
*
* @return void
*/
public function up()
{
Schema::create('sige.tiposleis', function(Blueprint $table)
{
$table->bigInteger('id')->primary('tiposleis_pkey');
$table->integer('item')->nullable();
$table->string('inciso')->nullable();
$table->string('alinea')->nullable();
$table->text('texto');
$table->string('nome', 200)->nullable();
$table->integer('paragrafo')->nullable();
$table->integer('ano')->nullable();
$table->integer('numero')->nullable()->unique('uk_8bqsqdc9qrlanc1249wwr7i9v');
$table->integer('artigo')->nullable();
});
}
/**
* Reverse the migrations.
*
* @return void
*/
public function down()
{
Schema::drop('sige.tiposleis');
}
}
<?php
use Illuminate\Database\Migrations\Migration;
use Illuminate\Database\Schema\Blueprint;
class CreateSigesituacoesJuridicasTable extends Migration {
/**
* Run the migrations.
*
* @return void
*/
public function up()
{
Schema::create('sige.situacoes_juridicas', function(Blueprint $table)
{
$table->bigInteger('id')->primary('situacoes_juridicas_pkey');
$table->boolean('ativo');
$table->dateTime('dhc');
$table->dateTime('dhm');
$table->string('nome', 50)->unique('situacoes_juridicas_nome_key');
$table->string('livro')->nullable();
$table->string('matricula')->nullable();
$table->string('nome_cartorio')->nullable();
$table->string('oficio')->nullable();
$table->string('registro')->nullable();
$table->string('nome_situacao')->nullable();
});
}
/**
* Reverse the migrations.
*
* @return void
*/
public function down()
{
Schema::drop('sige.situacoes_juridicas');
}
}
<?php
use Illuminate\Database\Migrations\Migration;
use Illuminate\Database\Schema\Blueprint;
class CreatePublicsecUserTable extends Migration {
/**
* Run the migrations.
*
* @return void
*/
public function up()
{
Schema::create('public.sec_user', function(Blueprint $table)
{
$table->bigInteger('id', true);
$table->bigInteger('version')->default(0);
$table->boolean('account_expired')->default(0);
$table->boolean('account_locked')->default(0);
$table->string('email', 75)->unique('sec_user_email_key');
$table->boolean('enabled')->default(1);
$table->string('password');
$table->boolean('password_expired')->default(0);
$table->string('username')->unique('sec_user_username_key');
$table->bigInteger('setor_id')->nullable();
$table->string('primeiro_nome')->nullable();
$table->string('ultimo_nome')->nullable();
$table->boolean('ativo')->nullable()->default(1);
$table->boolean('redefinir_senha')->nullable()->default(0);
});
}
/**
* Reverse the migrations.
*
* @return void
*/
public function down()
{
Schema::drop('public.sec_user');
}
}
<?php
use Illuminate\Database\Migrations\Migration;
use Illuminate\Database\Schema\Blueprint;
class AddForeignKeysToPublic.secUserTable extends Migration {
/**
* Run the migrations.
*
* @return void
*/
public function up()
{
Schema::table('public.sec_user', function(Blueprint $table)
{
$table->foreign('setor_id', 'fk375df2f925e4ddf4')->references('id')->on('sige.setores')->onUpdate('RESTRICT')->onDelete('RESTRICT');
$table->foreign('setor_id', 'fk7d53d8de25e4ddf4')->references('id')->on('sige.setores')->onUpdate('RESTRICT')->onDelete('RESTRICT');
});
}
/**
* Reverse the migrations.
*
* @return void
*/
public function down()
{
Schema::table('public.sec_user', function(Blueprint $table)
{
$table->dropForeign('fk375df2f925e4ddf4');
$table->dropForeign('fk7d53d8de25e4ddf4');
});
}
}
<?php
use Illuminate\Database\Migrations\Migration;
use Illuminate\Database\Schema\Blueprint;
class CreateSigemunicipiosTable extends Migration {
/**
* Run the migrations.
*
* @return void
*/
public function up()
{
Schema::create('sige.municipios', function(Blueprint $table)
{
$table->bigInteger('id', true);
$table->boolean('ativo')->nullable();
$table->bigInteger('cod_mun')->unique('municipios_cod_mun_key');
$table->bigInteger('criado_por_id')->nullable();
$table->dateTime('dhc')->nullable();
$table->dateTime('dhm')->nullable();
$table->string('macro_regiao', 50)->nullable();
$table->bigInteger('modificado_por_id')->nullable();
$table->bigInteger('nom_id')->nullable();
$table->string('nom_mun', 100)->unique('municipios_nom_mun_key');
$table->boolean('pendencias_integradas')->nullable();
$table->string('uf', 2)->nullable();
$table->string('origem_informacao', 20)->nullable();
$table->string('total_cadastrados_bd')->nullable();
$table->string('total_estimados')->nullable();
$table->string('total_estimados_posses_a_titular')->nullable();
$table->float('area_total_geral', 10, 0)->nullable();
$table->float('area_total_rural', 10, 0)->nullable();
$table->bigInteger('lotes_no_grafico')->nullable();
$table->bigInteger('lotes_previstos')->nullable();
$table->integer('fmp')->nullable();
$table->integer('mf')->nullable();
$table->integer('extratificacao0a1')->nullable();
$table->integer('extratificacao1a4')->nullable();
$table->integer('extratificacao4a15')->nullable();
$table->integer('extratificacao15acima')->nullable();
$table->string('situacao_da_arrecadacao_da_gleba', 100)->nullable();
$table->string('situacao_do_termo_de_adesao_ppgfa', 100)->nullable();
$table->float('area_municipal', 10, 0)->nullable();
$table->float('area_medida', 10, 0)->nullable();
$table->integer('total_posses_composses')->nullable();
$table->integer('total_titulados')->nullable();
$table->integer('total_titulos_de_dominio_entregues')->nullable();
$table->integer('total_pendencias')->nullable();
$table->integer('total_geral_lotes')->nullable();
$table->integer('titulos_prontos_para_entrega')->nullable();
});
}
/**
* Reverse the migrations.
*
* @return void
*/
public function down()
{
Schema::drop('sige.municipios');
}
}
<?php
use Illuminate\Database\Migrations\Migration;
use Illuminate\Database\Schema\Blueprint;
class AddForeignKeysToSige.municipiosTable extends Migration {
/**
* Run the migrations.
*
* @return void
*/
public function up()
{
Schema::table('sige.municipios', function(Blueprint $table)
{
$table->foreign('modificado_por_id', 'fk8d15cea062f306bd')->references('id')->on('sec_user')->onUpdate('RESTRICT')->onDelete('RESTRICT');
$table->foreign('criado_por_id', 'fk8d15cea075c5065e')->references('id')->on('sec_user')->onUpdate('RESTRICT')->onDelete('RESTRICT');
$table->foreign('nom_id', 'fk8d15cea0cb063b14')->references('id')->on('sige.noms')->onUpdate('RESTRICT')->onDelete('RESTRICT');
});
}
/**
* Reverse the migrations.
*
* @return void
*/
public function down()
{
Schema::table('sige.municipios', function(Blueprint $table)
{
$table->dropForeign('fk8d15cea062f306bd');
$table->dropForeign('fk8d15cea075c5065e');
$table->dropForeign('fk8d15cea0cb063b14');
});
}
}
<?php
use Illuminate\Database\Migrations\Migration;
use Illuminate\Database\Schema\Blueprint;
class CreateIbgemunicipiosTable extends Migration {
/**
* Run the migrations.
*
* @return void
*/
public function up()
{
Schema::create('ibge.municipios', function(Blueprint $table)
{
$table->bigInteger('id')->primary('municipios_pkey');
$table->string('nome', 32)->nullable();
$table->string('uf', 2)->nullable();
$table->string('mesoregiao', 34)->nullable();
$table->string('microregiao', 36)->nullable();
$table->float('latitude', 10, 0)->nullable();
$table->float('longitude', 10, 0)->nullable();
$table->bigInteger('area_modulo_fiscal')->nullable();
$table->string('regiao', 12)->nullable();
$table->boolean('is_participa_car')->nullable();
$table->string('mesoregia')->nullable();
});
}
/**
* Reverse the migrations.
*
* @return void
*/
public function down()
{
Schema::drop('ibge.municipios');
}
}
<?php
use Illuminate\Database\Migrations\Migration;
use Illuminate\Database\Schema\Blueprint;
class CreateSecUserTable extends Migration {
/**
* Run the migrations.
*
* @return void
*/
public function up()
{
Schema::create('sec_user', function(Blueprint $table)
{
$table->bigInteger('id', true);
$table->bigInteger('version')->default(0);
$table->boolean('account_expired')->default(0);
$table->boolean('account_locked')->default(0);
$table->string('email', 75)->unique('sec_user_email_key');
$table->boolean('enabled')->default(1);
$table->string('password');
$table->boolean('password_expired')->default(0);
$table->string('username')->unique('sec_user_username_key');
$table->bigInteger('setor_id')->nullable();
$table->string('primeiro_nome')->nullable();
$table->string('ultimo_nome')->nullable();
$table->boolean('ativo')->nullable()->default(1);
$table->boolean('redefinir_senha')->nullable()->default(0);
});
}
/**
* Reverse the migrations.
*
* @return void
*/
public function down()
{
Schema::drop('sec_user');
}
}
<?php
use Illuminate\Database\Migrations\Migration;
use Illuminate\Database\Schema\Blueprint;
class AddForeignKeysToSecUserTable extends Migration {
/**
* Run the migrations.
*
* @return void
*/
public function up()
{
Schema::table('sec_user', function(Blueprint $table)
{
$table->foreign('setor_id', 'fk375df2f925e4ddf4')->references('id')->on('sige.setores')->onUpdate('RESTRICT')->onDelete('RESTRICT');
$table->foreign('setor_id', 'fk7d53d8de25e4ddf4')->references('id')->on('sige.setores')->onUpdate('RESTRICT')->onDelete('RESTRICT');
});
}
/**
* Reverse the migrations.
*
* @return void
*/
public function down()
{
Schema::table('sec_user', function(Blueprint $table)
{
$table->dropForeign('fk375df2f925e4ddf4');
$table->dropForeign('fk7d53d8de25e4ddf4');
});
}
}
<?php
use Illuminate\Database\Migrations\Migration;
use Illuminate\Database\Schema\Blueprint;
class CreateSigesetoresTable extends Migration {
/**
* Run the migrations.
*
* @return void
*/
public function up()
{
Schema::create('sige.setores', function(Blueprint $table)
{
$table->bigInteger('id', true);
$table->boolean('ativo');
$table->dateTime('dhc')->default('now()');
$table->dateTime('dhm')->default('now()');
$table->string('nome', 20)->unique('setores_nome_key');
});
}
/**
* Reverse the migrations.
*
* @return void
*/
public function down()
{
Schema::drop('sige.setores');
}
}
...@@ -11,6 +11,6 @@ class DatabaseSeeder extends Seeder ...@@ -11,6 +11,6 @@ class DatabaseSeeder extends Seeder
*/ */
public function run() public function run()
{ {
// $this->call(UserSeeder::class); $this->call(UsersTableSeeder::class);
} }
} }
<?php
use App\Models\User;
use Illuminate\Database\Seeder;
class UsersTableSeeder extends Seeder
{
/**
* Run the database seeds.
*
* @return void
*/
public function run()
{
User::create([
'name' => 'Marcos Albano',
'email' => 'marcos.telematica@gmail.com',
'password' => bcrypt('123456'),
]);
}
}
<!-- Estrutura if -->
@if ($teste === '123')
É igual
@elseif($teste == 123)
É igual a 123
@else
É diferente
@endif
<!-- Estrutura unless -->
@unless ($teste === '123')
Estrutura unless
@else
Estrutura unless else
@endunless
<!-- Estrutura isset (Verifica se existe a variável)-->
@isset($teste2)
{{ $teste2 }}
@endisset
@empty($teste3)
<p>Vazio...</p>
@endempty
@auth
<p>Autenticado</p>
@else
<p>Não autenticado</p>
@endauth
@guest
<p>Não autenticado</p>
@endguest
@switch($teste)
@case(1)
<p>É igual a 1</p>
@break
@case(2)
<p>É igual a 2</p>
@break
@default
<p>Default</p>
@endswitch
\ No newline at end of file
This diff is collapsed.
...@@ -11,11 +11,16 @@ ...@@ -11,11 +11,16 @@
}, },
"devDependencies": { "devDependencies": {
"axios": "^0.19", "axios": "^0.19",
"bootstrap": "^4.0.0",
"cross-env": "^7.0", "cross-env": "^7.0",
"jquery": "^3.2",
"laravel-mix": "^5.0.1", "laravel-mix": "^5.0.1",
"lodash": "^4.17.13", "lodash": "^4.17.13",
"resolve-url-loader": "^3.1.0", "popper.js": "^1.12",
"sass": "^1.15.2", "resolve-url-loader": "^2.3.1",
"sass-loader": "^8.0.0" "sass": "^1.20.1",
"sass-loader": "^8.0.0",
"vue": "^2.5.17",
"vue-template-compiler": "^2.6.10"
} }
} }
This diff is collapsed.
This diff is collapsed.
{
"/js/app.js": "/js/app.js",
"/css/app.css": "/css/app.css"
}
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This source diff could not be displayed because it is too large. You can view the blob instead.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
/*!
* Font Awesome Free 5.13.0 by @fontawesome - https://fontawesome.com
* License - https://fontawesome.com/license/free (Icons: CC BY 4.0, Fonts: SIL OFL 1.1, Code: MIT License)
*/
@font-face {
font-family: 'Font Awesome 5 Brands';
font-style: normal;
font-weight: 400;
font-display: block;
src: url("../webfonts/fa-brands-400.eot");
src: url("../webfonts/fa-brands-400.eot?#iefix") format("embedded-opentype"), url("../webfonts/fa-brands-400.woff2") format("woff2"), url("../webfonts/fa-brands-400.woff") format("woff"), url("../webfonts/fa-brands-400.ttf") format("truetype"), url("../webfonts/fa-brands-400.svg#fontawesome") format("svg"); }
.fab {
font-family: 'Font Awesome 5 Brands';
font-weight: 400; }
/*!
* Font Awesome Free 5.13.0 by @fontawesome - https://fontawesome.com
* License - https://fontawesome.com/license/free (Icons: CC BY 4.0, Fonts: SIL OFL 1.1, Code: MIT License)
*/
@font-face{font-family:"Font Awesome 5 Brands";font-style:normal;font-weight:400;font-display:block;src:url(../webfonts/fa-brands-400.eot);src:url(../webfonts/fa-brands-400.eot?#iefix) format("embedded-opentype"),url(../webfonts/fa-brands-400.woff2) format("woff2"),url(../webfonts/fa-brands-400.woff) format("woff"),url(../webfonts/fa-brands-400.ttf) format("truetype"),url(../webfonts/fa-brands-400.svg#fontawesome) format("svg")}.fab{font-family:"Font Awesome 5 Brands";font-weight:400}
\ No newline at end of file
This diff is collapsed.
This diff is collapsed.
/*!
* Font Awesome Free 5.13.0 by @fontawesome - https://fontawesome.com
* License - https://fontawesome.com/license/free (Icons: CC BY 4.0, Fonts: SIL OFL 1.1, Code: MIT License)
*/
@font-face {
font-family: 'Font Awesome 5 Free';
font-style: normal;
font-weight: 400;
font-display: block;
src: url("../webfonts/fa-regular-400.eot");
src: url("../webfonts/fa-regular-400.eot?#iefix") format("embedded-opentype"), url("../webfonts/fa-regular-400.woff2") format("woff2"), url("../webfonts/fa-regular-400.woff") format("woff"), url("../webfonts/fa-regular-400.ttf") format("truetype"), url("../webfonts/fa-regular-400.svg#fontawesome") format("svg"); }
.far {
font-family: 'Font Awesome 5 Free';
font-weight: 400; }
/*!
* Font Awesome Free 5.13.0 by @fontawesome - https://fontawesome.com
* License - https://fontawesome.com/license/free (Icons: CC BY 4.0, Fonts: SIL OFL 1.1, Code: MIT License)
*/
@font-face{font-family:"Font Awesome 5 Free";font-style:normal;font-weight:400;font-display:block;src:url(../webfonts/fa-regular-400.eot);src:url(../webfonts/fa-regular-400.eot?#iefix) format("embedded-opentype"),url(../webfonts/fa-regular-400.woff2) format("woff2"),url(../webfonts/fa-regular-400.woff) format("woff"),url(../webfonts/fa-regular-400.ttf) format("truetype"),url(../webfonts/fa-regular-400.svg#fontawesome) format("svg")}.far{font-family:"Font Awesome 5 Free";font-weight:400}
\ No newline at end of file
/*!
* Font Awesome Free 5.13.0 by @fontawesome - https://fontawesome.com
* License - https://fontawesome.com/license/free (Icons: CC BY 4.0, Fonts: SIL OFL 1.1, Code: MIT License)
*/
@font-face {
font-family: 'Font Awesome 5 Free';
font-style: normal;
font-weight: 900;
font-display: block;
src: url("../webfonts/fa-solid-900.eot");
src: url("../webfonts/fa-solid-900.eot?#iefix") format("embedded-opentype"), url("../webfonts/fa-solid-900.woff2") format("woff2"), url("../webfonts/fa-solid-900.woff") format("woff"), url("../webfonts/fa-solid-900.ttf") format("truetype"), url("../webfonts/fa-solid-900.svg#fontawesome") format("svg"); }
.fa,
.fas {
font-family: 'Font Awesome 5 Free';
font-weight: 900; }
/*!
* Font Awesome Free 5.13.0 by @fontawesome - https://fontawesome.com
* License - https://fontawesome.com/license/free (Icons: CC BY 4.0, Fonts: SIL OFL 1.1, Code: MIT License)
*/
@font-face{font-family:"Font Awesome 5 Free";font-style:normal;font-weight:900;font-display:block;src:url(../webfonts/fa-solid-900.eot);src:url(../webfonts/fa-solid-900.eot?#iefix) format("embedded-opentype"),url(../webfonts/fa-solid-900.woff2) format("woff2"),url(../webfonts/fa-solid-900.woff) format("woff"),url(../webfonts/fa-solid-900.ttf) format("truetype"),url(../webfonts/fa-solid-900.svg#fontawesome) format("svg")}.fa,.fas{font-family:"Font Awesome 5 Free";font-weight:900}
\ No newline at end of file
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment