registeredRecordRepository = $registeredRecordRepository; } /** * 新用户注册账本列表 */ public function index(Request $request) { $registeredList = $this->registeredRecordRepository->lists($request->all()); if (count($registeredList)>0) { $behavior_absolute_progression = RegisteredRecord::select('absolute_progression')->orderBy('id', 'DESC')->first();//行为绝对级数 $behavior_trigger_times = RegisteredRecord::select('trigger_type')->where('trigger_type', '!=', null)->count();//总触发数 $behavior_effective_trigger = RegisteredRecord::select('trigger_type')->where('trigger_type', 1)->count();//有效触发数 $physical_exertion = RegisteredRecord::select('physical_exertion')->sum('physical_exertion');//总消耗体力值 $generation_quantity = RegisteredRecord::select('generation_quantity')->sum('generation_quantity');//总生成彩虹豆 $quantity_issued = RegisteredRecord::select('quantity_issued')->sum('quantity_issued');//总发放彩虹豆 foreach ($registeredList as $k => $v) { $v['all_absolute_progression'] = $behavior_absolute_progression->absolute_progression; $v['all_trigger_times'] = $behavior_trigger_times; $v['all_effective_trigger'] = $behavior_effective_trigger; $v['physical_exertion'] = intval($physical_exertion); $v['generation_quantity'] = intval($generation_quantity); $v['quantity_issued'] = intval($quantity_issued); } } $fractal = new Manager(); $resource = new Collection($registeredList, new RegisteredRecordTransformer()); $resource->setPaginator(new IlluminatePaginatorAdapter($registeredList)); $data = $fractal->createData($resource)->toArray(); $data['extra'] = [ 'filters' => [ 'id', 'uid', 'created_at', 'absolute_progression', 'trigger_type', 'virus_behavior_id' ], 'columns' => [ 'id', 'created_at', 'virus_behavior_id', 'uid', 'trigger_time', 'physical_exertion', 'trigger_type', 'generation_type', 'absolute_progression', 'superior_uid', 'release_status', 'generation_quantity', 'quantity_issued', 'behavior_cycle_type', 'name', 'relative_series', 'is_open', 'bahavior_created_at', 'all_absolute_progression', 'all_trigger_times', 'all_effective_trigger', 'all_physical_exertion', 'all_generation_quantity', 'all_quantity_issued' ] ]; return $data; } }