ClientController.php 5.8 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174
  1. <?php
  2. declare(strict_types=1);
  3. namespace App\Controller;
  4. use App\JsonRpc\ChatServiceInterface;
  5. use App\JsonRpc\UserServiceInterface;
  6. use App\JsonRpc\ClientServiceInterface;
  7. use Hyperf\HttpServer\Contract\RequestInterface;
  8. use App\Tools\PublicData;
  9. use App\Tools\Result;
  10. use function Hyperf\Support\env;
  11. use Hyperf\Context\Context;
  12. use Hyperf\Di\Annotation\Inject;
  13. use Hyperf\Validation\Contract\ValidatorFactoryInterface;
  14. // use App\Controller\WebSocketController as WebSocket;
  15. use Hyperf\Context\ApplicationContext as ApplicationContext;
  16. use App\Controller\WebSocketController;
  17. use Swoole\WebSocket\Frame;
  18. /**
  19. *
  20. * Class ClientController
  21. * @package App\Controller
  22. */
  23. //#[AutoController]
  24. class ClientController extends AbstractController
  25. {
  26. #[Inject]
  27. protected ValidatorFactoryInterface $validationFactory;
  28. #[Inject]
  29. private ChatServiceInterface $chatServiceClient;
  30. #[Inject]
  31. private UserServiceInterface $userServiceClient;
  32. #[Inject]
  33. private ClientServiceInterface $clientServiceClient;
  34. public function __construct(
  35. ClientServiceInterface $clientServiceClient,
  36. ValidatorFactoryInterface $validationFactory,
  37. ChatServiceInterface $chatServiceClient,
  38. RequestInterface $request,
  39. UserServiceInterface $userServiceClient
  40. ) {
  41. $this->clientServiceClient = $clientServiceClient;
  42. $this->validationFactory = $validationFactory;
  43. $this->chatServiceClient = $chatServiceClient;
  44. $this->userServiceClient = $userServiceClient;
  45. $this->request = $request;
  46. }
  47. public function test()
  48. {
  49. // var_dump($this->validationFactory, '----------2-------');
  50. $test = $this->clientServiceClient->test(['name' => 'test']);
  51. return Result::success($test);
  52. }
  53. public function indexData()
  54. {
  55. $request_data = $this->request->all();
  56. var_dump($request_data, '---------------');
  57. $data = $this->clientServiceClient->indexData($request_data);
  58. var_dump($data, '-----1----------');
  59. return Result::success($data);
  60. }
  61. public function addWeb()
  62. {
  63. $request_data = $this->request->all();
  64. //校验数据
  65. var_dump($request_data, '---------------');
  66. $validator = $this->validationFactory->make(
  67. $request_data,
  68. [
  69. 'website_id' => 'required'
  70. ],
  71. [
  72. 'website_id.required' => 'website_id is required'
  73. ]
  74. );
  75. if ($validator->fails()) {
  76. return Result::error($validator->errors()->first());
  77. }
  78. $request_data['user_id'] = Context::get("UserId");
  79. // $request_data['website_id'] = Context::get("SiteId");
  80. $result = $this->clientServiceClient->addWeb($request_data);
  81. return $result ? Result::success($result['data']) : Result::error($result['message']);
  82. }
  83. public function deleteWeb()
  84. {
  85. $request_data = $this->request->all();
  86. $result = $this->clientServiceClient->deleteWeb($request_data);
  87. return $result ? Result::success($result['data']) : Result::error($result['message']);
  88. }
  89. public function getWebInfo()
  90. {
  91. $request_data = $this->request->all();
  92. $validator = $this->validationFactory->make(
  93. $request_data,
  94. [
  95. 'id' => 'required',
  96. ],
  97. [
  98. 'id.required' => 'ID必填',
  99. ]
  100. );
  101. if ($validator->fails()) {
  102. return Result::error($validator->errors()->first());
  103. }
  104. $result = $this->clientServiceClient->getWebInfo($request_data);
  105. return $result ? Result::success($result['data']) : Result::error($result['message']);
  106. }
  107. public function updateWeb()
  108. {
  109. $request_data = $this->request->all();
  110. $validator = $this->validationFactory->make(
  111. $request_data,
  112. [
  113. 'id' => 'required',
  114. 'port' => 'required',
  115. 'dir' => 'required',
  116. ],
  117. [
  118. 'id.required' => 'ID必填',
  119. 'port.required' => 'Port必填',
  120. 'dir.required' => '路径必填'
  121. ]
  122. );
  123. $result = $this->clientServiceClient->updateWeb($request_data);
  124. return $result ? Result::success($result['data']) : Result::error($result['message']);
  125. }
  126. public function getWebList()
  127. {
  128. $request_data = $this->request->all();
  129. $validator = $this->validationFactory->make(
  130. $request_data,
  131. [
  132. 'page' => 'required',
  133. 'pageSize' => 'required'
  134. ],
  135. [
  136. 'page.required' => 'Page is required',
  137. 'pageSize.required' => 'Page size is required'
  138. ]
  139. );
  140. if ($validator->fails()) {
  141. return Result::error($validator->errors()->first());
  142. }
  143. $result = $this->clientServiceClient->getWebList($request_data);
  144. return $result ? Result::success($result['data']) : Result::error($result['message']);
  145. }
  146. public function updateWebConfig()
  147. {
  148. $request_data = $this->request->all();
  149. $data = $this->clientServiceClient->updateWebConfig($request_data);
  150. return $data ? Result::success($data['data']) : Result::error($data['message']);
  151. }
  152. public function updateWebOutput()
  153. {
  154. $request_data = $this->request->all();
  155. $data = $this->clientServiceClient->updateWebOutput($request_data);
  156. }
  157. public function updateWebMove()
  158. {
  159. $request_data = $this->request->all();
  160. $data = $this->clientServiceClient->updateWebMove($request_data);
  161. }
  162. public function runWeb()
  163. {
  164. $request_data = $this->request->all();
  165. $data = $this->clientServiceClient->runWeb($request_data);
  166. }
  167. }