123456789101112131415161718192021222324252627282930313233343536373839404142434445 |
- <?php
- // 离线故障处理
- ini_set('display_errors', 1);
- require_once './DB.php';
- date_default_timezone_set('Asia/Shanghai');
- $config = [
- 'hostname' => 'rm-wz98r5cn33zq4ou980o.mysql.rds.aliyuncs.com',
- 'username' => 'idcol20',
- 'password' => 'idcol@1234',
- 'dbname' => 'idcol',
- ];
- $begin = date('H:i',time());
- while (1) {
-
- $db = new Db($config);
- // 生成离线故障
- $sql = 'SELECT L.id FROM lampinfo as L left join warning_info_log AS WI on WI.lampid = L.id and WI.onlinestatus = 1 and WI.status = 0 where L.netstatus = 0 and WI.id is null';
- $list = $db->query($sql);
- // var_dump($list);die;
- foreach ($list as $value) {
- $alarm_info = array();
- $alarm_info['lampid'] = $value['id'];
- $alarm_info['onlinestatus'] = 1;
- $alarm_info['updatetime'] = date('Y-m-d H:i:s',time()-8*3600);
- $db->table('warning_info_log')->insert($alarm_info);
- }
- // 离线故障解除
- $sql = 'SELECT WI.id FROM warning_info_log as WI left join lampinfo AS L on WI.lampid = L.id where L.netstatus = 1 and WI.onlinestatus = 1 and WI.status != 1 and L.id is not null';
- $list = $db->query($sql);
- foreach ($list as $key => $value) {
- $db->table('warning_info_log')->where('id='.$value['id'])->update(['status'=>1]);
- }
- $db->close();
- $end = date('H:i',time());
- if ($end == $begin) {
- sleep(1);
- continue;
- }
- $begin = $end;
- }
|