feat: 店铺密码检测任务(后台发起→客户端领取→紫鸟真实登录判定→回传结果)

- 新增 biz_shop_credential_check 表(V99)与 ShopCredentialCheck 全链路
- Controller /api/admin/shop-credential-checks(create/poll/report/latest,X-Internal-Token 鉴权)
- ShopManageService 列表附带 latestCheck(每店铺最近一次检测结果)
- 客户端通过 poll 领取(60s 轮询、原子置 RUNNING),报告 SUCCESS/FAILED/OTP_REQUIRED/NO_NEED_LOGIN/ERROR
This commit is contained in:
2026-08-31 17:02:49 +08:00
parent 26f4bb3f25
commit 7f4737c800
12 changed files with 667 additions and 1 deletions
@@ -0,0 +1,16 @@
CREATE TABLE IF NOT EXISTS `biz_shop_credential_check` (
`id` BIGINT NOT NULL AUTO_INCREMENT,
`shop_id` BIGINT NOT NULL,
`shop_name` VARCHAR(255) NOT NULL,
`status` VARCHAR(32) NOT NULL DEFAULT 'PENDING',
`detail` VARCHAR(1024) NULL,
`client_host` VARCHAR(255) NULL,
`try_requested_at` DATETIME NOT NULL DEFAULT CURRENT_TIMESTAMP,
`check_started_at` DATETIME NULL,
`check_finished_at` DATETIME NULL,
`created_at` DATETIME NOT NULL DEFAULT CURRENT_TIMESTAMP,
`updated_at` DATETIME NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP,
PRIMARY KEY (`id`),
KEY `idx_shop_credential_check_shop_status` (`shop_id`, `status`, `id`),
KEY `idx_shop_credential_check_status_id` (`status`, `id`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci;