Compare commits

16 Commits

Author SHA1 Message Date
2801dec5b9 Merge tag '1.2.2' into develop 2025-05-15 20:01:42 +08:00
9607f69e24 Merge branch 'release/1.2.2' 2025-05-15 20:01:42 +08:00
6d3709da51 1.2.2 2025-05-15 20:01:31 +08:00
1456b21f34 加入错误码 2025-05-15 20:01:03 +08:00
7343267d3c Merge branch 'release/1.2.1' 2025-05-15 17:53:37 +08:00
430af8aede Merge tag '1.2.1' into develop 2025-05-15 17:53:37 +08:00
9028a8c59d 1.2.1 2025-05-15 17:53:26 +08:00
daefbe884c 增加用户的过期时间 2025-05-15 17:52:55 +08:00
9ad385e044 Merge branch 'release/1.1.2' 2025-05-15 16:34:04 +08:00
9b926634cf Merge tag '1.1.2' into develop 2025-05-15 16:34:04 +08:00
320739411a 1.1.2 2025-05-15 16:33:52 +08:00
cffc90dfc9 更新创建和修改参数 2025-05-15 16:32:42 +08:00
5b84406652 Merge branch 'release/1.1.1' 2025-05-13 23:49:39 +08:00
3c5020b80b Merge tag '1.1.1' into develop 2025-05-13 23:49:39 +08:00
e50eed84a2 1.1.1 2025-05-13 23:49:29 +08:00
41da8f6aee 增加回调地址设置 2025-05-13 23:48:58 +08:00
7 changed files with 134 additions and 21 deletions

View File

@@ -2,7 +2,7 @@
"name": "maiyoule/mqttclient_author",
"type": "library",
"description": "MQTT管理模块操作库",
"version": "1.1.0",
"version": "1.2.2",
"license": "MIT",
"authors": [
{

View File

@@ -162,7 +162,7 @@ class AuthorServerClient
return new BizResponse();
}
$data = json_decode($content, true);
return new BizResponse($data['code'] ?? 0, $data['message'] ?? '', $data['data'] ?? []);
return new BizResponse($data['code'] ?? 0, $data['message'] ?? '', $data['data'] ?? [], $data['err'] ?? '');
} catch (ClientException $e) {
$body = $e->getResponse()->getBody()->getContents();

View File

@@ -0,0 +1,37 @@
<?php
namespace cn\com\maiyoule\mqttclient\biz;
use cn\com\maiyoule\mqttclient\IRequest;
class AppUpdateCallbackRequest extends IRequest
{
public function path(): string
{
return 'app/callback/update';
}
public function body(): array
{
return [
'url' => $this->getUrl()
];
}
private string $url;
/**
* @return string
*/
public function getUrl(): string
{
return $this->url;
}
public function setUrl(string $url): void
{
$this->url = $url;
}
}

View File

@@ -18,25 +18,60 @@ class AppUserCreateRequest extends IRequest
'password' => $this->getPassword(),
'fettle' => $this->getFettle(),
'role' => $this->getRole(),
'biz' => join(',', $this->getBiz())
'publish' => join(',', $this->getPublish()),
'subscribe' => join(',', $this->getSubscribe()),
'expire' => $this->expireAt
];
}
private array $biz = [];
private array $subscribe = [];
public function getBiz(): array
public function getSubscribe(): array
{
return $this->biz;
return $this->subscribe;
}
public function setBiz(array|string $biz): void
public function setSubscribe(array|string $subscribe): void
{
if (is_string($biz)) {
$biz = [$biz];
if (is_string($subscribe)) {
$subscribe = [$subscribe];
}
$this->biz = $biz;
$this->subscribe = $subscribe;
}
/**
* @var string 过期时间
*/
private string $expireAt = '';
public function getExpireAt(): string
{
return $this->expireAt;
}
public function setExpireAt(string $expireAt): void
{
$this->expireAt = $expireAt;
}
private array $publish = [];
public function getPublish(): array
{
return $this->publish;
}
public function setPublish(array|string $publish): void
{
if (is_string($publish)) {
$publish = [$publish];
}
$this->publish = $publish;
}
private string $password = '';
private string $fettle = '';
private string $role = 'user';

View File

@@ -29,23 +29,37 @@ class AppUserUpdateRequest extends IRequest
if (!is_null($this->fettle)) {
$data['fettle'] = $this->fettle;
}
if (!is_null($this->biz)) {
$data['biz'] = join(',', $this->biz);
if (!empty($this->publish)) {
$data['publish'] = join(',', $this->getPublish());
}
if (!empty($this->subscribe)) {
$data['subscribe'] = join(',', $this->getSubscribe());
}
return $data;
}
private ?array $biz = null;
private array $subscribe = [];
public function getBiz(): array
public function getSubscribe(): array
{
return $this->biz;
return $this->subscribe;
}
public function setBiz(array $biz): void
public function setSubscribe(array|string $subscribe): void
{
$this->biz = $biz;
if (is_string($subscribe)) {
$subscribe = [$subscribe];
}
$this->subscribe = $subscribe;
}
private array $publish = [];
public function getPublish(): array
{
return $this->publish;
}
private string $username;

View File

@@ -6,19 +6,22 @@ class BizResponse
{
private int $code;
private string $message;
private $data;
private mixed $data;
private string $errCode;
/**
* @param int $code
* @param string $message
* @param $data
* @param array $data
* @param string $errCode
*/
public function __construct(int $code = -1, string $message = '', $data = [])
public function __construct(int $code = -1, string $message = '', mixed $data = [], string $errCode = '')
{
$this->code = $code;
$this->message = $message;
$this->data = $data;
$this->errCode = $errCode;
}
public function isSuccess(): bool
@@ -49,7 +52,7 @@ class BizResponse
/**
* @return mixed
*/
public function getData()
public function getData(): mixed
{
return $this->data;
}
@@ -62,5 +65,15 @@ class BizResponse
$this->data = $data;
}
public function getErrCode(): string
{
return $this->errCode;
}
public function setErrCode(string $errCode): void
{
$this->errCode = $errCode;
}
}

View File

@@ -2,11 +2,13 @@
namespace cn\com\maiyoule\mqttclient\test;
use cn\com\maiyoule\mqttclient\biz\AppUpdateCallbackRequest;
use cn\com\maiyoule\mqttclient\biz\AppUserCreateRequest;
use cn\com\maiyoule\mqttclient\biz\AppUserDeleteRequest;
use cn\com\maiyoule\mqttclient\biz\AppUserUpdateRequest;
use cn\com\maiyoule\mqttclient\exception\ApiException;
use cn\com\maiyoule\mqttclient\AuthorServerClient;
use GuzzleHttp\Exception\GuzzleException;
use PHPUnit\Framework\Assert;
use PHPUnit\Framework\TestCase;
@@ -80,4 +82,16 @@ class AppManagerTest extends TestCase
}
}
public function testUpdateAppUrl()
{
$request = new AppUpdateCallbackRequest();
$request->setUrl('http://202.200.18.46:8000/api.php');
try {
$biz = $this->manager->exec($request);
$this->assertTrue($biz->isSuccess(), $biz->getMessage());
} catch (GuzzleException|ApiException $e) {
$this->fail($e->getMessage());
}
}
}