Inheritance: extends Domain\BaseModel, use trait Illuminate\Database\Eloquent\SoftDeletes
Example #1
0
 public static function boot()
 {
     parent::boot();
     static::creating(function ($model) {
         $student = Student::find($model->student_id);
         $recipient = BilletAssignor::first();
         $model->payer = $student->getPayer();
         $model->recipient = $recipient->getRecipient();
         $model->new_due_date = $model->due_date->toDateString();
         $model->payment_of_fine = $recipient->payment_of_fine;
         $model->interest = $recipient->interest;
         $model->is_interest = $recipient->is_interest;
         $model->days_protest = $recipient->days_protest;
         $model->bank = $recipient->bank;
         $model->agency = $recipient->agency;
         $model->digit_agency = $recipient->digit_agency;
         $model->account = $recipient->account;
         $model->digit_account = $recipient->digit_account;
         $model->wallet = $recipient->wallet;
         $model->agreement = $recipient->agreement;
         $model->portfolio_change = $recipient->portfolio_change;
         $model->range = $recipient->range;
         $model->client_id = $recipient->client_id;
         $model->ios = $recipient->ios;
         $model->kind_document = $recipient->kind_document;
     });
     static::updating(function ($model) {
         //
     });
 }
 public function test_index_returns_all_students_by_get()
 {
     Student::where('id', '>=', 1)->delete();
     $students = factory(Student::class, 3)->create();
     $this->get('api/v1/student');
     $this->seeStatusCode(200);
     foreach ($students as $student) {
         $this->seeJson(['name' => $student->name]);
     }
 }
Example #3
0
 /**
  * Get the validation rules that apply to the request.
  *
  * @return array
  */
 public function rules()
 {
     $id = $this->route('student');
     $user_id = 'NULL';
     $student = Student::find($id);
     $user = $student->user;
     if (isset($user)) {
         $user_id = $user->id;
     }
     return ['name' => 'required|max:45', 'sex' => 'required|in:male,female', 'father' => 'max:45', 'mother' => 'max:45', 'responsible' => 'required|max:45', 'cpf_responsible' => 'cpf|unique:students,cpf_responsible,' . $id, 'phone_father' => 'max:11|phone_br', 'phone_mother' => 'max:11|phone_br', 'phone_responsible' => 'required|max:11|phone_br', 'postcode' => 'required|max:8|regex:/[0-9]/', 'street' => 'required|max:60', 'number' => 'required|max:10', 'district' => 'required|max:60', 'city' => 'required|max:60', 'state' => 'required|max:2', 'phone' => 'required|max:10|phone_br', 'cellphone' => 'required|max:11|cellphone_br', 'complement' => 'max:30', 'monthly_payment' => 'required|numeric|positive', 'day_of_payment' => 'required|integer|min:1|max:31', 'installments' => 'integer', 'user' => 'required|array', 'user.username' => 'required|max:30|unique:users,username,' . $user_id . ',id,owner_type,Domain\\Student\\Student', 'user.email' => 'required|max:255|email|unique:users,email,' . $user_id . ',id,owner_type,Domain\\Student\\Student', 'status' => 'boolean'];
 }
Example #4
0
 /**
  * Run the database seeds.
  *
  * @return void
  */
 public function run()
 {
     DB::statement('SET FOREIGN_KEY_CHECKS=0;');
     Schedule::truncate();
     Billet::truncate();
     BilletAssignor::truncate();
     Classroom::truncate();
     ClassroomMatter::truncate();
     Config::truncate();
     Employee::truncate();
     Lesson::truncate();
     Matter::truncate();
     Schedule::truncate();
     Student::truncate();
     Teacher::truncate();
     factory(BilletAssignor::class, 1)->create();
     factory(Billet::class, 5)->create();
     $allClassrooms = factory(Classroom::class, 10)->create();
     factory(ClassroomMatter::class, 10)->create();
     factory(Config::class, 10)->create();
     $employee = factory(Employee::class)->create();
     factory(Lesson::class, 40)->create();
     $matters = factory(Matter::class, 10)->create();
     factory(Schedule::class, 3)->create();
     $student = factory(Student::class)->create();
     $teacher = factory(Teacher::class)->create();
     factory(User::class, 1)->create(['username' => 'funcionario', 'password' => bcrypt('funcionario123'), 'owner_type' => Employee::class, 'owner_id' => $employee->id]);
     factory(User::class, 1)->create(['username' => 'aluno', 'password' => bcrypt('aluno123'), 'owner_type' => Student::class, 'owner_id' => $student->id]);
     factory(User::class, 1)->create(['username' => 'professor', 'password' => bcrypt('professor123'), 'owner_type' => Teacher::class, 'owner_id' => $teacher->id]);
     $classrooms = factory(Classroom::class, 3)->create(['teacher_id' => $teacher->id]);
     $classrooms->each(function ($classroom) use($student, $matters) {
         $classroom->students()->attach($student);
         $matters->random(3)->each(function ($matter) use($classroom) {
             $classroom->matters()->attach($matter);
         });
     });
     $allClassrooms->random(3)->each(function ($classroom) use($student, $matters, $teacher) {
         $classroom->teacher()->associate($teacher);
         $classroom->students()->attach($student);
         $matters->random(3)->each(function ($matter) use($classroom) {
             $classroom->matters()->attach($matter);
         });
     });
     factory(User::class, 30)->create();
     DB::statement('SET FOREIGN_KEY_CHECKS=1;');
 }
 /**
  * Determine if the user is authorized to make this request.
  *
  * @return bool
  */
 public function authorize()
 {
     $id = $this->route('student_id');
     return Student::where('id', $id)->exists();
 }