| 12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273 |
- <?php
- namespace app\controller\admin;
- use app\extra\basic\Base;
- use app\middleware\AuthMiddleware;
- use app\model\cpa\CpaAccountGroup;
- use app\service\cpa\AccountService;
- use app\service\cpa\GroupService;
- use DI\Attribute\Inject;
- use LinFly\Annotation\Attributes\Route\Controller;
- use LinFly\Annotation\Attributes\Route\GetMapping;
- use LinFly\Annotation\Attributes\Route\Middleware;
- use LinFly\Annotation\Attributes\Route\PostMapping;
- use support\Request;
- use support\Response;
- use Webman\RedisQueue\Redis;
- #[Controller("/api/account"),Middleware(AuthMiddleware::class)]
- class Account extends Base
- {
- #[Inject]
- protected AccountService $service;
- #[Inject]
- protected GroupService $serviceGroup;
- #[GetMapping('list')]
- public function getDataList(Request $request): Response
- {
- try {
- $param = $request->all();
- $data = $this->service->setModel()->getList($param,['groups']);
- return successTrans("success.data",pageFormat($data),200);
- } catch (\Throwable $th) {
- return error($th->getMessage());
- }
- }
- #[GetMapping('group')]
- public function getGroupList(Request $request): Response
- {
- try {
- $param = $request->all();
- $data = $this->serviceGroup->setModel()->getList($param);
- return successTrans("success.data",pageFormat($data),200);
- } catch (\Throwable $th) {
- return error($th->getMessage());
- }
- }
- #[PostMapping('sync')]
- public function syncAccount(Request $request): Response
- {
- try {
- $param = $this->_valid([
- "id.require" => "参数错误"
- ],$request->method());
- if (!is_array($param)) return error($param);
- $group = (new CpaAccountGroup)->where("account_id",$param['id'])->findOrEmpty();
- if ($group->isEmpty()) return error("组织信息错误");
- Redis::send("sync-account",["account_id" => $group['account_id']]);
- return success("发起同步成功");
- } catch (\Throwable $th) {
- return error($th->getMessage());
- }
- }
- }
|