public function downloadExcel(ReceiveSearchMovementRequest $request)
 {
     $filter = $request->except(['item_status', 'orderBy']);
     $orderBy = array_get($request->all(), 'sort_by', array());
     $receiveItems = ReceiveItem::whereByFilterAll($filter, $orderBy);
     $datetime = date('d-m-Y_H-i-s');
     Excel::create("movement_receive_{$datetime}", function ($excel) use($receiveItems) {
         $excel->sheet('Receive', function ($sheet) use($receiveItems) {
             $sheet->setAutoSize(true);
             $sheet->row(1, array(trans('receive.attributes.created_at'), trans('receive.attributes.document_no'), trans('receive.attributes.po_no'), trans('receive.attributes.ref_no'), trans('receive.attributes.project_code'), trans('receive.attributes.create_by'), trans('receive.attributes.remark'), trans('receive_item.attributes.mix_no'), trans('receive_item.attributes.product_code'), trans('receive_item.attributes.location_id'), trans('receive_item.attributes.product_description'), trans('receive_item.attributes.unit'), trans('receive_item.attributes.qty'), trans('receive_item.attributes.remark'), trans('receive_item.attributes.status')));
             $sheet->row(1, function ($row) {
                 $row->setBorder('solid', 'solid', 'solid', 'solid');
                 $row->setFont(array('size' => '16', 'bold' => true));
             });
             $i = 2;
             foreach ($receiveItems as $item) {
                 $sheet->row($i, array($item->receive->created_at->format('d/m/Y H:i'), $item->receive->document_no, $item->receive->po_no, $item->receive->ref_no, $item->receive->project_code, $item->receive->user->name, $item->receive->remark, $item->mix_no, $item->product_code, $item->location_name, $item->product_description, $item->product->unit->name, $item->qty, $item->remark, $item->status));
                 $i++;
             }
         });
     })->export('xls');
 }
Exemplo n.º 2
0
 public function updateQty(Request $request)
 {
     $id = $request->get('pk');
     $qty = $request->get('value');
     $mgs = [];
     $roles = ['value' => 'required|integer|digits_between:1,10'];
     $attributes = ['value' => trans('receive_item.attributes.qty')];
     $validator = Validator::make($request->all(), $roles, $mgs, $attributes);
     if ($validator->fails()) {
         return response()->json(['status' => 'error', 'mgs' => $validator->errors()->first('value')]);
     }
     $item = ReceiveItem::find($id);
     $item->qty = $qty;
     $item->save();
 }