Example #1
0
 public function getPointsAttribute()
 {
     $id = $this->attributes['id'];
     return Cache::remember("user_{$id}_points", 3, function () use($id) {
         $marketActions = Log::with('market')->whereFlag(true)->where('user_id', $id)->get()->sum('market.reward');
         $otherActions = Log::where('user_id', $id)->whereFlag(true)->whereNull('market_item_id')->get()->sum('reward');
         $reduced = $this->reduced->select('market.reward')->sum('market.reward');
         return $marketActions + $otherActions - $reduced;
     });
 }
Example #2
0
 public function postListGridData(Request $req, $db = 'bidang')
 {
     /* paging biasa ======================================   select * from `dokumen` limit 0,10  */
     // if ($req->get('page')) {
     //     if ($req->get('page')==1) {
     //         $offset=$req->get('page')-1;
     //     }
     //     else{
     //          $offset=($req->get('page')-1)*$req->get('rows');
     //     }
     //     $data->skip($offset);
     // }
     // if ($req->get('rows')) {
     //     $data->take($req->get('rows'));
     // }
     // if ($req->get('sort') && $req->get('order')) {
     //     $data->orderBy($req->get('sort'), $req->get('order'));
     // }
     // $datax['rows']=$this->show_relasi_kolom($data->get());
     // $total['total'] = \DB::table('dokumen')->count();
     /**  ,=== snippet ===============================================================================
      */
     $offset = 1;
     if ($req->get('page')) {
         if ($req->get('page') == 1) {
             $offset = $req->get('page') - 1;
         } else {
             $offset = ($req->get('page') - 1) * $req->get('rows');
         }
     }
     $rows = 10;
     if ($req->get('rows')) {
         $rows = $req->get('rows');
     }
     // $log = Log::where('table','=',$db)->skip($page)->take($rows)->paginate();
     $log = Log::with('users', 'groups')->where('table', $db)->skip($offset)->take($rows)->paginate();
     // dd($rows);
     // dd($log->toArray());
     $newdata = [];
     $i = 0;
     foreach ($log->toArray()['data'] as $data) {
         $newdata[$i] = $data;
         $newdata[$i]['users_email'] = $data['users']['email'];
         $newdata[$i]['groups_name'] = $data['groups']['name'];
         $i++;
     }
     // $result['total']=$log->toArray()['total'];
     $result['total'] = count($log->toArray()['data']);
     // $result['rows']=$log->toArray()['data'];
     $result['rows'] = $newdata;
     return json_encode($result);
 }