4 changed files with 133 additions and 0 deletions
@ -0,0 +1,50 @@ |
|||
<?php |
|||
|
|||
namespace App\Admin\Controllers; |
|||
|
|||
use App\Admin\Actions\Grid\CloneEquipResourceRecordAction; |
|||
use App\Admin\Repositories\EquipResourceRecord; |
|||
use App\Admin\Services\EquipInfoService; |
|||
use App\Http\Controllers\Controller; |
|||
use Dcat\Admin\Grid; |
|||
use Dcat\Admin\Layout\Content; |
|||
|
|||
class EquipInfoController extends Controller |
|||
{ |
|||
/** |
|||
* 查看数据点 |
|||
* @param Content $content |
|||
* @return Content |
|||
*/ |
|||
public function index(Content $content) |
|||
{ |
|||
return $content |
|||
->header('表格') |
|||
->description('表格功能展示') |
|||
->body($this->grid()); |
|||
} |
|||
/** |
|||
* Make a grid builder. |
|||
* |
|||
* @return Grid |
|||
*/ |
|||
protected function grid() |
|||
{ |
|||
return Grid::make(null, function (Grid $grid) { |
|||
$param = request()->all(); |
|||
|
|||
$grid->column('at'); |
|||
$grid->column('value'); |
|||
$grid->model()->setData(EquipInfoService::getDatapoints($param)); |
|||
$grid->disableCreateButton(); |
|||
$grid->disableActions(); |
|||
$grid->disableBatchDelete(); |
|||
$grid->disablePagination(); |
|||
|
|||
$grid->filter(function (Grid\Filter $filter) { |
|||
$filter->between('at', 'At')->datetime(); |
|||
|
|||
}); |
|||
}); |
|||
} |
|||
} |
@ -0,0 +1,40 @@ |
|||
<?php |
|||
|
|||
namespace App\Admin\Services; |
|||
|
|||
use GuzzleHttp\Client; |
|||
use Illuminate\Support\Facades\Http; |
|||
|
|||
class EquipInfoService |
|||
{ |
|||
public static function getDatapoints($param) |
|||
{ |
|||
$query = []; |
|||
if (!empty($param['at']['start'])){ |
|||
$query['start'] = str_replace(' ', 'T', $param['at']['start']); |
|||
|
|||
} |
|||
if (!empty($param['at']['end'])){ |
|||
$query['end'] = str_replace(' ', 'T', $param['at']['end']); |
|||
|
|||
} |
|||
|
|||
$query = http_build_query($query); |
|||
|
|||
$client = new Client([ |
|||
'base_uri' => config('onenet.api_host'), |
|||
'headers' => [ |
|||
'api-key' => "l5KGPjSqQVuwSSjlUAuBohPNVrM=", |
|||
] |
|||
|
|||
]); |
|||
|
|||
$response = $client->request('GET', 'devices/984998613/datapoints?' . $query); |
|||
|
|||
$res = json_decode($response->getBody()->getContents(), true); |
|||
|
|||
$res = !empty($res['data']['datastreams'][0]['datapoints']) ? $res['data']['datastreams'][0]['datapoints'] : []; |
|||
|
|||
return $res; |
|||
} |
|||
} |
Loading…
Reference in new issue