status = 1; $e->message = 'message'; $e->serial_no = '';; $e->mac = ''; $getPostData = file_get_contents('php://input', 'r'); self::myLog('actionIndex postData:'.$getPostData); if (!$getPostData) { $e->status = 2; $e->message = '数据为空'; return $e; } $getPostData = json_decode($getPostData, true); $manufactureNo = isset($getPostData['manufacture'])?$getPostData['manufacture']:''; $deviceId = isset($getPostData['device_id'])?$getPostData['device_id']:''; $projectNo = isset($getPostData['project'])?$getPostData['project']:''; $modelNo = isset($getPostData['model'])?$getPostData['model']:''; $productionNo = isset($getPostData['production'])?$getPostData['production']:''; $timestamp = isset($getPostData['timestamp'])?$getPostData['timestamp']:''; $sign = isset($getPostData['sign'])?$getPostData['sign']:''; $salt = self::SIGN_SALT; $makeSign = md5($manufactureNo . $projectNo. $modelNo . $productionNo . $timestamp . $deviceId. $salt); if ($sign != $makeSign) { $e->status = 3; $e->message = '签名有误'; return $e; } // 检测是否授权过了的设备 $deviceModel = DeviceRepository::findOne(['device_id' => $deviceId]); if ($deviceModel && DeviceStatus::HAS_AUTH == $deviceModel->status) { $e->mac = $deviceModel->mac; $e->serial_no = $deviceModel->serial_no; $e->message = 'ok'; $e->status = 5; return $e; } $authResult = Device::authDevice($deviceId, $manufactureNo, $projectNo, $modelNo, $productionNo); if ($authResult->success) { $e->mac = $authResult->mac; $e->serial_no = $authResult->serial_no; $e->message = $authResult->message; $e->status = 0; } else { $e->status = 4; $e->message = $authResult->message; } return $e; } }