/**
  * Store a newly created resource in storage.
  *
  * @param  \Illuminate\Http\Request  $request
  * @return \Illuminate\Http\Response
  */
 public function store(Request $request)
 {
     $input = Input::all();
     $this->validate($request, ['LicencePlate' => ['required', 'exists:cars', 'regex:/\\b([A-Z]{3}\\s?(\\d{3}|\\d{2}|d{1})\\s?[A-Z])|([A-Z]\\s?(\\d{3}|\\d{2}|\\d{1})\\s?[A-Z]{3})|(([A-HK-PRSVWY][A-HJ-PR-Y])\\s?([0][2-9]|[1-9][0-9])\\s?[A-HJ-PR-Z]{3})\\b/'], 'StaffId' => 'required|exists:staff,Id', 'Ongoing' => 'boolean', 'Type' => 'required', 'StartDate' => 'required|date_format:Y-m-d|after:yesterday', 'EndDate' => 'required|date_format:Y-m-d|after:StartDate', 'Cost' => 'required|numeric|min:0', 'Paid' => 'boolean']);
     Repair::create($input);
     return Redirect::route('repairs.index')->with('message', 'Repair created');
 }
Ejemplo n.º 2
0
 /**
  * Store a newly created resource in storage.
  *
  * @param  Request  $request
  * @return Response
  */
 public function store(Request $request)
 {
     // get all repair data
     $repairin = $request->all();
     $tech_arr = $request->input('technicans');
     $repairin['tech_no'] = count($tech_arr);
     $repairin['fail_id'] = $request->input('fail_id');
     //create new repair
     $repair = Repair::create($repairin);
     //loop throught technincans fields
     foreach ($tech_arr as $tech) {
         $tech_obj = Technican::find($tech);
         //instert into techincans pivot table
         $tech_obj->repair()->attach($repair->rep_id);
     }
     $part_arr = $request->input('part_id');
     $qty_arr = $request->input('part_qty');
     foreach ($part_arr as $key => $part) {
         if ($part != 0) {
             $part_obj = SparePart::find($part);
             $rep_id = $repair->rep_id;
             $qty = $qty_arr[$key];
             $part_obj->repair()->attach($rep_id, ['part_qty' => $qty]);
         }
     }
     //  return $repairin;
     return redirect('maintainance/repairs');
 }
Ejemplo n.º 3
0
 public function handleAction(Request $request)
 {
     $action = $request->input('_action');
     if ($action == 'addDevice') {
         $this->validate($request, ['serial_number' => 'unique:devices']);
         $date = Device::convertDate($request->input('purchased_at'));
         $id = DB::table('devices')->insertGetId(['serial_number' => $request->input('serial_number'), 'purchased_at' => $date, 'model_id' => $request->input('model_id')]);
         //Device::create( $request->all() );
         return response(['status' => 'success', 'new_added_id' => $id]);
     } else {
         if ($action == 'createRepair') {
             if ($request['device_id'] != '') {
                 $id = File::create($request->all())->id;
                 Repair::create(['file_id' => $id, 'device_id' => $request->input('device_id'), 'accessory' => $request->input('accessory'), 'description' => $request->input('description')]);
                 $leftmenu['files'] = 'active';
                 $param['code_status_id'] = '4';
                 $param['file_id'] = $id;
                 $param['created_at'] = date('d/m/Y, H:i:s');
                 $param['user_id'] = Auth::user()->id;
                 $param['comment'] = '';
                 $response = StatusFile::create($param);
                 File::find($id)->touch();
                 if (isset($request['devis'])) {
                     $param['code_status_id'] = "15";
                     $response = StatusFile::create($param);
                     File::find($id)->touch();
                 }
                 return response(['status' => 'success', 'redirect' => '/file/repair/' . $id]);
             } else {
                 return response(['status' => 'error']);
             }
         } else {
             if ($action == 'createOrder') {
                 $order_details = session()->has('order_details') ? session('order_details') : false;
                 if ($order_details) {
                     $id = File::create($request->all())->id;
                     Order::create(["file_id" => $id, "total_details_amount" => $order_details['total']]);
                     $param['code_status_id'] = '4';
                     $param['file_id'] = $id;
                     $param['created_at'] = date('d/m/Y, H:i:s');
                     $param['user_id'] = Auth::user()->id;
                     $param['comment'] = '';
                     $response = StatusFile::create($param);
                     File::find($id)->touch();
                     foreach ($order_details as $order_item) {
                         if (isset($order_item['price'])) {
                             OrderDetails::create(["file_id" => $id, "article_id" => $order_item['article_id'], "price" => $order_item['price'], "quantity" => $order_item['quantity']]);
                         }
                     }
                     $request->session()->forget('order_details');
                     return response(['status' => 'success', 'redirect' => '/file/order/' . $id]);
                 }
                 return response(['status' => 'error']);
             } else {
                 if ($action == 'calculateOrder') {
                     $list = json_decode($request['_params'], true);
                     $response = Order::calculateTotal($list['orders']);
                     $list['orders']['total'] = $response;
                     $response != 0 ? Session::put('order_details', $list['orders']) : '';
                     $response = $response != 0 ? ['status' => 'success', 'total' => $response] : ['status' => 'error'];
                     return response($response);
                 } else {
                     return response(['status' => 'error']);
                 }
             }
         }
     }
 }
 /**
  * Store a newly created resource in storage.
  *
  * @param  Request  $request
  * @return Response
  */
 public function store(Request $request)
 {
     // get all repair data
     $repairin = $request->all();
     $tech_arr = $request->input('technicans');
     $repairin['tech_no'] = count($tech_arr);
     $repairin['fail_id'] = $request->input('fail_id');
     //create new repair
     /*  if (Gate::denies('maintain')) {
           abort(403, 'هذا الإجراء ليس من صلاحياتك');
         }*/
     $this->validate($request, ['rep_dur' => 'required', 'rep_details' => 'required', 'rep_date' => 'required', 'rep_status' => 'required', 'technicans' => 'exists:technicans,id']);
     $repair = Repair::create($repairin);
     //loop throught technincans fields
     foreach ($tech_arr as $tech) {
         $tech_obj = Technican::find($tech);
         //instert into techincans pivot table
         $tech_obj->repair()->attach($repair->rep_id);
     }
     $part_arr = $request->input('part_id');
     $qty_arr = $request->input('part_qty');
     foreach ($part_arr as $key => $part) {
         if ($part != 0) {
             $part_obj = SparePart::find($part);
             $rep_id = $repair->rep_id;
             $qty = $qty_arr[$key];
             $part_obj->repair()->attach($rep_id, ['part_qty' => $qty]);
         }
     }
     $fail = Failure::findOrFail($repairin['fail_id']);
     $fail->status = 1;
     $fail->save();
     return redirect('maintainance/repairs/waiting');
 }