diff --git a/app/Services/Admin/DeviceService.php b/app/Services/Admin/DeviceService.php index 7a646d4..23c2495 100644 --- a/app/Services/Admin/DeviceService.php +++ b/app/Services/Admin/DeviceService.php @@ -2,13 +2,13 @@ namespace App\Services\Admin; +use App\Admin\Components; +use App\Filters\Admin\DeviceFilter; +use App\Iot\Linkos\HttpClient; use App\Models\Device; use App\Models\MonitorMode; use App\Models\{MeteorologicalDailyReport, MeteorologicalReport, SoilDailyReport, SoilReport, AirLog, FarmWormPhoto, MonitorDevice, RegionMonitor, Region, FarmWormReport}; -use App\Filters\Admin\DeviceFilter; use Carbon\Carbon; -use App\Admin\Components; -use App\Iot\Linkos\HttpClient; /** * @method Device getModel() * @method Device|\Illuminate\Database\Query\Builder query() @@ -59,7 +59,7 @@ class DeviceService extends BaseService $diffDays = 0; $day = date('Y-m-d'); $xKeys = []; - + if($startTime && $endTime){ $startDay = Carbon::parse($startTime); $endDay = Carbon::parse($endTime); @@ -77,7 +77,7 @@ class DeviceService extends BaseService } }else{ //调整截至到当前小时 - + $th = $startDay->format('H'); $eh = $endDay->format('H');; if($day == date('Y-m-d')){ @@ -170,7 +170,7 @@ class DeviceService extends BaseService $yData = ['北风','东北风','东风','东南风','南风','西南风','西风','西北风']; $_chartCard = amisMake()->Card()->body( amisMake()->Chart()->config( - Components::make()->chartScatterConfig($field['name'], $xKeys, + Components::make()->chartScatterConfig($field['name'], $xKeys, [ 'name'=> $field['name'], 'type' => 'scatter', @@ -220,7 +220,7 @@ class DeviceService extends BaseService ); break; } - + if($k%$columnNum != 0){ $_chartCard->className('m-r'); } @@ -278,14 +278,14 @@ class DeviceService extends BaseService }else{ $_fields = explode(',', $device->pivot->fields); } - + if($diffDays) { - $modelQuery = $dayliyReportQuery->whereBetween('reported_at', [$startTime, $endTime]); + $modelQuery = (clone $dayliyReportQuery)->whereBetween('reported_at', [$startTime, $endTime]); }else{ - $modelQuery = $reportQuery->whereDate('reported_at', $day); + $modelQuery = (clone $reportQuery)->whereDate('reported_at', $day); } if($modelQuery){ - $datalist = $modelQuery->where('device_id', $device->id)->get()->keyBy('reported_at')->toArray(); + $datalist = (clone $modelQuery)->where('device_id', $device->id)->get()->keyBy('reported_at')->toArray(); } //组装数据; @@ -339,7 +339,7 @@ class DeviceService extends BaseService if($config && $config['open_is_enable'] ){ $rule = $config['open_config']; $res = $this->verifyRule($rule, $log); - + if($res['status'] && !$airState){//如果判定成功,且设备当前是关闭状态 $msg = ''; $column = $res['keys'][0]; @@ -348,7 +348,7 @@ class DeviceService extends BaseService foreach($_columns as $cc){ $msg.= $fieldNameMap[$cc].'达到'.$log->$cc.$fieldUnitMap[$cc].'值,且'; } - + $msg = mb_substr($msg, 0, -2); }else{ $msg = $fieldNameMap[$column].'达到'.$log->$column.$fieldUnitMap[$column].'值'; @@ -369,7 +369,7 @@ class DeviceService extends BaseService foreach($_columns as $cc){ $msg.= $fieldNameMap[$cc].'达到'.$log->$cc.$fieldUnitMap[$cc].'值,且'; } - + $msg = mb_substr($msg, 0, -2); }else{ $msg = $fieldNameMap[$column].'达到'.$log->$column.$fieldUnitMap[$column].'值';