success = false; $e->message = ''; $e->serial_no = ''; $e->mac = ''; $tt = time(); $batchNo = self::getBatchNo($manufactureNo, $projectNo, $modelNo, $productionNo); $batchModel = CreateBatchRepository::findOne(['batch_no' => $batchNo]); if (empty($batchModel)) { $e->message = '没有该批次'; } $count = DeviceRepository::rowsCount(['batch_id' => $batchModel->batch_id, 'is_delete' => 0]); if ($count > $batchModel->num) { // 超过了限制数,记录到另外一个表里面 // to do 记录到表里面 $e->message = '授权失败'; return $e; } $deviceModel = DeviceRepository::findOne(['device_id' => $deviceId, 'is_delete' => 0]); if (empty($deviceModel)) { $newDeviceModel = DeviceRepository::findOne(['device_id'=> null, 'is_delete' => 0, 'status' => DeviceStatus::NO_AUTH]); $newDeviceModel->device_id = $deviceId; $newDeviceModel->status = DeviceStatus::HAS_AUTH; $newDeviceModel->apply_at = $tt ; $newDeviceModel->auth_at = $tt; $newDeviceModel->save(); $e->message = '授权成功'; $e->success = true; $e->serial_no = $newDeviceModel->serial_no; $e->mac = $newDeviceModel->mac; return $e; } if (DeviceStatus::HAS_AUTH == $deviceModel->status) { $e->message = '授权成功'; $e->success = true; $e->serial_no = $deviceModel->serial_no; $e->mac = $deviceModel->mac; } elseif (DeviceStatus::FAIL_AUTH == $deviceModel->status) { $e->message = '授权失败'; } else { $e->message = '授权失败!'; } return $e; } }