This commit is contained in:
weiz 2023-11-27 17:30:04 +08:00
parent 7e9930a444
commit 762a5c5f11
2 changed files with 37 additions and 9 deletions

View File

@ -5,6 +5,7 @@ use app\common\enum\notice\NoticeEnum;
use app\common\model\land\Land;
use app\common\model\land\LandProduct;
use app\common\model\monitor\AirMonitor;
use app\common\model\monitor\MonitorData;
use app\common\model\monitor\SoilMonitor;
use app\common\model\product\ProductDevice;
use think\facade\Log;
@ -39,14 +40,31 @@ class IndexController extends BaseApiController
if($landProduct->isEmpty()){
$data['monitor'] = [];
}else{
$device = ProductDevice::where('product_id',$landProduct['product_id'])->select();
foreach($device as $v) {
if($v['device_type'] == 1){
$data['monitor']['soil_monitor_data'] = SoilMonitor::where('device_id',$v['device_id'])->order('id desc')->findOrEmpty()->toArray();
}
if($v['device_type'] == 2){
$data['monitor']['air_monitor_data'] = AirMonitor::where('device_id',$v['device_id'])->order('id desc')->findOrEmpty()->toArray();
}
$monitor = MonitorData::where('product_id',$landProduct['product_id'])->order('id desc')->findOrEmpty();
if($monitor->isEmpty()){
$data['monitor'] = [];
}else{
$data['monitor']['soil_monitor_data'] = [
'wind_direction'=>$monitor['wind_direction'],
'wind_speed'=>$monitor['wind_speed'],
'air_temperature'=>$monitor['air_temperature'],
'air_moisture'=>$monitor['air_moisture'],
'co2_content'=>$monitor['co2_content'],
'pressure'=>$monitor['pressure'],
'rainfall'=>$monitor['rainfall'],
'light_intensity'=>$monitor['light_intensity'],
'create_time' => $monitor['create_time']
];
$data['monitor']['air_monitor_data'] = [
'soil_temperature'=>$monitor['soil_temperature'],
'soil_moisture'=>$monitor['soil_moisture'],
'conductivity'=>$monitor['conductivity'],
'ph'=>$monitor['ph'],
'n_content'=>$monitor['n_content'],
'p_content'=>$monitor['p_content'],
'k_content'=>$monitor['k_content'],
'create_time' => $monitor['create_time']
];
}
}
return $this->success('请求成功',$data);

View File

@ -0,0 +1,10 @@
<?php
namespace app\common\model\monitor;
use app\common\model\BaseModel;
class MonitorData extends BaseModel
{
protected $name = 'monitor_data';
}