public function destroy($code) { $earnings = Earning::where('code', '=', $code)->get(); foreach ($earnings as $earning) { switch ($earning->earnable_type) { case 'Receivable': $receivable = Receivable::find($earning->earnable_id); $receivable->balance += $receivable->balance + $earning->payment; $receivable->save(); $earning->delete(); break; case 'Installment': $installment = Installment::find($earning->earnable_id); $installment->balance += $installment->balance + $earning->payment; $installment->paid = 0; $installment->save(); $earning->delete(); break; case 'Registration': $registration = Registration::find($earning->earnable_id); $registration->cost_is_paid = 0; $registration->save(); $earning->delete(); break; case 'Movement': $movement = Movement::find($earning->earnable_id); $movement->paid = 0; $movement->save(); $earning->delete(); break; case 'Punishment': $punishment = Punishment::find($earning->earnable_id); $punishment->paid = 0; $punishment->save(); $earning->delete(); break; case 'Resign': $resign = Resign::find($earning->earnable_id); $resign->is_earned = 0; $resign->save(); $earning->delete(); break; default: $earning->delete(); break; } } }
public function destroy($id) { $resign = Resign::find($id); $placements = Placement::where('resign_id', '=', $id)->get(); foreach ($placements as $placement) { $placement->resign_id = 0; $placement->active = 1; $placement->save(); } Returnment::where('resign_id', '=', $id)->delete(); Earning::where('earnable_type', '=', 'Resign')->where('earnable_id', '=', $id)->delete(); Resign::destroy($id); Session::flash('message', 'Sukses membatalkan penon-aktifan siswa'); }