All checks were successful
构建并部署到测试环境(无 SSH) / build-and-deploy (push) Successful in 7m8s
- client_order: 新增 getOrCreateWallet 兜底,钱包不存在时自动创建 - device_import: 设备导入事务内同步创建设备钱包 - iot_card_import: IoT卡批量导入后批量创建卡钱包 - queue/handler: 传递 AssetWalletStore 给两个导入 handler - migration 000098: 为存量IoT卡和设备补建资产钱包
23 lines
1.0 KiB
SQL
23 lines
1.0 KiB
SQL
-- 为已有存量资产补建资产钱包
|
|
-- IoT 卡和设备导入时未创建钱包,需要补建以确保 C 端购买流程正常
|
|
|
|
-- 为没有钱包的 IoT 卡创建钱包
|
|
INSERT INTO tb_asset_wallet (resource_type, resource_id, balance, frozen_balance, currency, status, version, shop_id_tag, created_at, updated_at)
|
|
SELECT 'iot_card', c.id, 0, 0, 'CNY', 1, 0, COALESCE(c.shop_id, 0), NOW(), NOW()
|
|
FROM tb_iot_card c
|
|
WHERE c.deleted_at IS NULL
|
|
AND NOT EXISTS (
|
|
SELECT 1 FROM tb_asset_wallet w
|
|
WHERE w.resource_type = 'iot_card' AND w.resource_id = c.id AND w.deleted_at IS NULL
|
|
);
|
|
|
|
-- 为没有钱包的设备创建钱包
|
|
INSERT INTO tb_asset_wallet (resource_type, resource_id, balance, frozen_balance, currency, status, version, shop_id_tag, created_at, updated_at)
|
|
SELECT 'device', d.id, 0, 0, 'CNY', 1, 0, COALESCE(d.shop_id, 0), NOW(), NOW()
|
|
FROM tb_device d
|
|
WHERE d.deleted_at IS NULL
|
|
AND NOT EXISTS (
|
|
SELECT 1 FROM tb_asset_wallet w
|
|
WHERE w.resource_type = 'device' AND w.resource_id = d.id AND w.deleted_at IS NULL
|
|
);
|