Commit 4b76c368 authored by alissonalbuquerque's avatar alissonalbuquerque
Browse files

Add atualizacoes do PAD

parent 509b3e44
......@@ -6,6 +6,8 @@ use App\Http\Controllers\Controller;
use Illuminate\Http\Request;
use App\Models\PAD;
use App\Models\Tabelas\Constants;
use App\Models\User;
use App\Models\UserPad;
use Database\Seeders\PadSeeder;
use Exception;
use Illuminate\Support\Facades\Auth;
......@@ -46,8 +48,7 @@ class PadController extends Controller
/**
* Store a newly created resource in storage.
*
* @param \Illuminate\Http\Request $request
* @return \Illuminate\Http\Response
* @param \Illuminate\Http\Request $request
*/
public function store(Request $request)
{
......@@ -69,6 +70,16 @@ class PadController extends Controller
$model = new Pad($request->all());
if($model->save()) {
$users = User::find()->whereType(User::TYPE_TEACHER)->get();
foreach($users as $user) {
$modelUserPad = new UserPad();
$modelUserPad->user_id = $user->id;
$modelUserPad->pad_id = $model->id;
$modelUserPad->save();
}
return redirect()->route('pad_index')->with('success', 'PAD cadastrado com sucesso!');
} else {
return redirect()->route('pad_index')->with('success', 'Erro ao cadastrar o PAD!');
......
......@@ -2,6 +2,7 @@
namespace App\Models;
use App\Queries\UserQuery;
use Illuminate\Contracts\Auth\MustVerifyEmail;
use Illuminate\Database\Eloquent\Factories\HasFactory;
use Illuminate\Foundation\Auth\User as Authenticatable;
......@@ -135,6 +136,10 @@ class User extends Authenticatable
return $this->getTable() . '-' . $attribute;
}
public static function find() {
return new UserQuery(get_called_class());
}
/**
* @return string
*/
......
......@@ -4,8 +4,40 @@ namespace App\Queries;
use App\Models\User;
class UserQuery extends User {
class UserQuery {
// public static function whereType
private $query;
public function __construct()
{
$this->query = User::where([]);
}
/**
* @param integer $id
* @return UserQuery|Builder
*/
public function whereId($id, $expression = '=')
{
$this->query = $this->query->where('id', $expression, $id);
return $this->query;
}
/**
* @param integer $type
* @return UserQuery|Builder
*/
public function whereType($type, $expression = '=')
{
$this->query = $this->query->where('type', $expression, $type);
return $this->query;
}
/**
* @return Builder
*/
public function getQuery()
{
return $this->query;
}
}
\ No newline at end of file
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