*/ class SlaController extends Controller { /** * Create a new controller instance. * @return type void */ public function __construct() { $this->middleware('auth'); $this->middleware('roles'); } /** * Display a listing of the resource. * @param type Sla_plan $sla * @return type Response */ public function index(Sla_plan $sla) { try { /* Declare a Variable $slas to store all Values From Sla_plan Table */ $slas = $sla->get(); /* Listing the values From Sla_plan Table */ return view('themes.default1.admin.helpdesk.manage.sla.index', compact('slas')); } catch (Exception $e) { return redirect()->back()->with('fails',$e->errorInfo[2]); } } /** * Show the form for creating a new resource. * @return type Response */ public function create() { try { /* Direct to Create Page */ return view('themes.default1.admin.helpdesk.manage.sla.create'); } catch (Exception $e) { return redirect()->back()->with('fails',$e->errorInfo[2]); } } /** * Store a newly created resource in storage. * @param type Sla_plan $sla * @param type SlaRequest $request * @return type Response */ public function store(Sla_plan $sla, SlaRequest $request) { try { /* Fill the request values to Sla_plan Table */ /* Check whether function success or not */ $sla->fill($request->input())->save(); /* redirect to Index page with Success Message */ return redirect('sla')->with('success', 'SLA Plan Created Successfully'); } catch (Exception $e) { /* redirect to Index page with Fails Message */ return redirect('sla')->with('fails', 'SLA Plan can not Create'.'
  • '.$e->errorInfo[2].'
  • '); } } /** * Show the form for editing the specified resource. * @param type int $id * @param type Sla_plan $sla * @return type Response */ public function edit($id, Sla_plan $sla) { try { /* Direct to edit page along values of perticular field using Id */ $slas = $sla->whereId($id)->first(); $slas->get(); return view('themes.default1.admin.helpdesk.manage.sla.edit', compact('slas')); } catch (Exception $e) { return redirect()->back()->with('fails',$e->errorInfo[2]); } } /** * Update the specified resource in storage. * @param type int $id * @param type Sla_plan $sla * @param type SlaUpdate $request * @return type Response */ public function update($id, Sla_plan $sla, SlaUpdate $request) { try { /* Fill values to selected field using Id except Check box */ $slas = $sla->whereId($id)->first(); $slas->fill($request->except('transient', 'ticket_overdue'))->save(); /* Update transient checkox field */ $slas->transient = $request->input('transient'); /* Update ticket_overdue checkox field */ $slas->ticket_overdue = $request->input('ticket_overdue'); /* Check whether function success or not */ $slas->save(); /* redirect to Index page with Success Message */ return redirect('sla')->with('success', 'SLA Plan Updated Successfully'); } catch (Exception $e) { /* redirect to Index page with Fails Message */ return redirect('sla')->with('fails', 'SLA Plan can not Update'.'
  • '.$e->errorInfo[2].'
  • '); } } /** * Remove the specified resource from storage. * @param type int $id * @param type Sla_plan $sla * @return type Response */ public function destroy($id, Sla_plan $sla) { $default_sla = Ticket::where('id','=','1')->first(); if($default_sla->sla == $id) { return redirect('departments')->with('fails', 'You cannot delete default department'); } else { $tickets = DB::table('tickets')->where('sla','=',$id)->update(['sla' => $default_sla->sla]); if($tickets > 0) { if($tickets > 1) { $text_tickets = "Tickets"; } else { $text_tickets = "Ticket"; } $ticket = '
  • '.$tickets.' '.$text_tickets.' have been moved to default SLA
  • '; } else { $ticket = ""; } $dept = DB::table('department')->where('sla','=',$id)->update(['sla' => $default_sla->sla]); if($dept > 0){ if($dept > 1){ $text_dept = "Emails"; } else { $text_dept = "Email"; } $dept = '
  • Associated department have been moved to default SLA
  • '; } else { $dept = ""; } $topic = DB::table('help_topic')->where('sla_plan','=',$id)->update(['sla_plan' => $default_sla->sla]); if($topic > 0){ if($topic > 1){ $text_topic = "Emails"; } else { $text_topic = "Email"; } $topic = '
  • Associated Help Topic have been moved to default SLA
  • '; } else { $topic = ""; } $message = $ticket.$dept.$topic; /* Delete a perticular field from the database by delete() using Id */ $slas = $sla->whereId($id)->first(); /* Check whether function success or not */ try{ $slas->delete(); /* redirect to Index page with Success Message */ return redirect('sla')->with('success', 'SLA Plan Deleted Successfully'.$message); } catch (Exception $e) { /* redirect to Index page with Fails Message */ return redirect('sla')->with('fails', 'SLA Plan can not Delete'.'
  • '.$e->errorInfo[2].'
  • '); } } } }