Compare commits

15 Commits

Author SHA1 Message Date
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", "name": "maiyoule/mqttclient_author",
"type": "library", "type": "library",
"description": "MQTT管理模块操作库", "description": "MQTT管理模块操作库",
"version": "1.1.0", "version": "1.2.2",
"license": "MIT", "license": "MIT",
"authors": [ "authors": [
{ {

View File

@@ -162,7 +162,7 @@ class AuthorServerClient
return new BizResponse(); return new BizResponse();
} }
$data = json_decode($content, true); $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) { } catch (ClientException $e) {
$body = $e->getResponse()->getBody()->getContents(); $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(), 'password' => $this->getPassword(),
'fettle' => $this->getFettle(), 'fettle' => $this->getFettle(),
'role' => $this->getRole(), '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)) { if (is_string($subscribe)) {
$biz = [$biz]; $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 $password = '';
private string $fettle = ''; private string $fettle = '';
private string $role = 'user'; private string $role = 'user';

View File

@@ -29,23 +29,37 @@ class AppUserUpdateRequest extends IRequest
if (!is_null($this->fettle)) { if (!is_null($this->fettle)) {
$data['fettle'] = $this->fettle; $data['fettle'] = $this->fettle;
} }
if (!is_null($this->biz)) { if (!empty($this->publish)) {
$data['biz'] = join(',', $this->biz); $data['publish'] = join(',', $this->getPublish());
}
if (!empty($this->subscribe)) {
$data['subscribe'] = join(',', $this->getSubscribe());
} }
return $data; 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; private string $username;

View File

@@ -6,19 +6,22 @@ class BizResponse
{ {
private int $code; private int $code;
private string $message; private string $message;
private $data; private mixed $data;
private string $errCode;
/** /**
* @param int $code * @param int $code
* @param string $message * @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->code = $code;
$this->message = $message; $this->message = $message;
$this->data = $data; $this->data = $data;
$this->errCode = $errCode;
} }
public function isSuccess(): bool public function isSuccess(): bool
@@ -49,7 +52,7 @@ class BizResponse
/** /**
* @return mixed * @return mixed
*/ */
public function getData() public function getData(): mixed
{ {
return $this->data; return $this->data;
} }
@@ -62,5 +65,15 @@ class BizResponse
$this->data = $data; $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; 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\AppUserCreateRequest;
use cn\com\maiyoule\mqttclient\biz\AppUserDeleteRequest; use cn\com\maiyoule\mqttclient\biz\AppUserDeleteRequest;
use cn\com\maiyoule\mqttclient\biz\AppUserUpdateRequest; use cn\com\maiyoule\mqttclient\biz\AppUserUpdateRequest;
use cn\com\maiyoule\mqttclient\exception\ApiException; use cn\com\maiyoule\mqttclient\exception\ApiException;
use cn\com\maiyoule\mqttclient\AuthorServerClient; use cn\com\maiyoule\mqttclient\AuthorServerClient;
use GuzzleHttp\Exception\GuzzleException;
use PHPUnit\Framework\Assert; use PHPUnit\Framework\Assert;
use PHPUnit\Framework\TestCase; 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());
}
}
} }