diff --git a/FlyCube/MpApi/Controller/PlaneController.class.php b/FlyCube/MpApi/Controller/PlaneController.class.php index d186f77..4865c17 100644 --- a/FlyCube/MpApi/Controller/PlaneController.class.php +++ b/FlyCube/MpApi/Controller/PlaneController.class.php @@ -197,6 +197,7 @@ class PlaneController extends PublicController $data['sitename'] = $_REQUEST['sitename']; if ($_REQUEST['bindroute']) { $data['bind_route'] = $_REQUEST['bindroute']; + $data['runing'] = str_replace([' ', '\t', '\n', '\r', '\0', '\x0B'], ',', $_REQUEST['bindroute']); //初始化runing字段 } else { $data['bind_route'] = null; } @@ -250,6 +251,7 @@ class PlaneController extends PublicController $data['sitename'] = $_REQUEST['sitename']; if ($_REQUEST['bindroute']) { $data['bind_route'] = $_REQUEST['bindroute']; + $data['runing'] = str_replace([' ', '\t', '\n', '\r', '\0', '\x0B'], ',', $_REQUEST['bindroute']); //初始化runing字段 } else { $data['bind_route'] = null; } @@ -261,6 +263,20 @@ class PlaneController extends PublicController $id = $_REQUEST['id']; $where['id'] = $id; $where['shop_id'] = $_REQUEST['shop_id']; + //检查当前站点是否有飞机正在执行任务 有则打断 不进行更新 + $field = array('runing'); + $tempCheck = $rsDb->where($where)->field($field)->find(); + if (!empty($tempCheck['runing'])) { + // 将 runing 字段的字符串按逗号分割成数组 + $runingArray = explode(',', $tempCheck['runing']); + // 去除空元素和空格 + $runingArray = array_map('trim', array_filter($runingArray)); + // 检查数组是否有值 + if (!empty($runingArray)) { + exit(json_encode(array('status' => 0, 'msg' => '此站点有飞机正在执行任务。待任务结束后再试!'))); + } + } + // 更新站点 if ($rsDb->where($where)->save($data) || $_REQUEST['size']) { //创建二维码 if ($token = $this->getAccessToken()) {