Пример #1
0
 /**
  * Store a newly created resource in storage.
  * @param  Request $request
  * @return Response
  */
 public function store(Request $request)
 {
     $order = new OrderDelay();
     $order->fill($request->only('reason'));
     $order->student_id = $this->student->id;
     $order->academystructure_department_id = $this->student->academystructure_department_id;
     $order->semester_id = $this->semester->id;
     $order->state = 'تقديم';
     $order->save();
     // create order history record
     $history = new Orderhistory();
     $history->ref_key = 'order_delays';
     $history->ref_value = $order->id;
     $history->state = 'تقديم';
     $history->save();
     // check if financial item active then create debit record
     $invoice_item = FinancialInvoiceItem::where('slug', 'delayed_fee')->where('state', 'نشط')->first();
     if ($invoice_item) {
         $invoice_data = ['ref_key' => 'order_delays', 'ref_value' => $order->id, 'student_id' => $this->student->id, 'amount' => $invoice_item->amount, 'type' => 'debit', 'semester_id' => $this->semester->id, 'item_id' => $invoice_item->id, 'note' => 'تكلفة طلب تاجيل دراسة'];
         FinancialInvoice::create($invoice_data);
     }
     if ($request->has('files')) {
         OrderFile::whereIn('id', array_pluck($request->input('files'), 'id'))->update(['ref_value' => $order->id, 'ref_key' => 'order_delays']);
     }
     $order->load('files');
     return response()->json($order, 200, [], JSON_NUMERIC_CHECK);
 }
Пример #2
0
 /**
  * Store a newly created resource in storage.
  * @param  Request $request
  * @return Response
  */
 public function store(Request $request)
 {
     $order = new OrderQuranExcuse();
     $order->fill($request->only('reason', 'subject_id'));
     $order->student_id = $this->student->id;
     $order->semester_id = $this->semester->id;
     $order->state = 'تقديم';
     $order->save();
     // create order history record
     $history = new Orderhistory();
     $history->ref_key = 'order_quran_excuses';
     $history->ref_value = $order->id;
     $history->state = 'تقديم';
     $history->save();
     if ($request->has('files')) {
         $update_data = ['ref_value' => $order->id, 'ref_key' => 'order_quran_excuses'];
         OrderFile::whereIn('id', array_pluck($request->input('files'), 'id'))->update($update_data);
     }
     $order->load('files');
     return response()->json($order, 200, [], JSON_NUMERIC_CHECK);
 }
Пример #3
0
 public function change(Request $request)
 {
     $withdraw_order = Withdraw::findOrFail($request->order_id);
     $withdraw_order->state = $request->state;
     $withdraw_order->save();
     //save in history
     $order_history = new Orderhistory();
     $order_history->ref_key = 'order_withdraws';
     $order_history->ref_value = $request->order_id;
     $order_history->state = $request->state;
     $order_history->note = $request->note;
     $order_history->created_by = user()->id;
     $order_history->save();
     // accept state
     if ($request->state == 'قبول') {
         $withdraw_order->refund_state = $request->input('refund_state');
         $withdraw_order->save();
         //event
         //drop subject
         // credit
         //change student study state
         //add student history
         event(new WithdrawOrderAccepted($withdraw_order));
         //end event
     }
     $withdraw_order = Withdraw::with('student', 'files', 'history', 'history.user')->findOrFail($request->order_id);
     return redirect()->route('withdraw.show', $withdraw_order->id)->with('success', trans('orders::order.change_success'));
 }
Пример #4
0
 public function change(Request $request)
 {
     $delay_order_model = new Delay();
     $delay_order = $delay_order_model->findOrFail($request->order_id);
     $delay_order->state = $request->state;
     $delay_order->save();
     //save in history
     $order_history = new Orderhistory();
     $order_history->ref_key = 'order_delays';
     $order_history->ref_value = $request->order_id;
     $order_history->state = $request->state;
     $order_history->note = $request->note;
     $order_history->created_by = user()->id;
     $order_history->save();
     // accept state
     if ($request->state == 'قبول') {
         $delay_order->refund_state = $request->refund_state;
         $delay_order->return_semester_id = $request->return_semester_id;
         $delay_order->save();
         //event
         //drop subject
         // credit
         //change student study state
         //add student history
         event(new DelayOrderAccepted($delay_order));
         //end event
     }
     return redirect()->route('delay.show', $delay_order->id)->with('success', trans('orders::order.change_success'));
 }
Пример #5
0
 public function cancel($order_id)
 {
     $Equal_order = Equal::findOrFail($order_id);
     $Equal_order->state = 'الغاء بناء على طلب الطالب';
     $Equal_order->save();
     //save in history
     $order_history = new Orderhistory();
     $order_history->ref_key = 'order_equals';
     $order_history->ref_value = $order_id;
     $order_history->state = 'الغاء بناء على طلب الطالب';
     $order_history->note = '';
     $order_history->save();
     return redirect()->route('orders.index')->with('success', trans('orders::order.cancel_success'));
 }