fix(admin): make bulk wallet batches idempotent

This commit is contained in:
RWDai
2026-09-23 19:43:18 +08:00
parent 75471ae4a4
commit bcd121d447
19 changed files with 2396 additions and 95 deletions
@@ -343,3 +343,17 @@ CREATE INDEX IF NOT EXISTS idx_redeem_codes_status ON public.redeem_codes USING
CREATE INDEX IF NOT EXISTS idx_redeem_codes_redeemed_user ON public.redeem_codes USING btree (redeemed_by_user_id, redeemed_at);
CREATE INDEX IF NOT EXISTS idx_redeem_codes_redeemed_order ON public.redeem_codes USING btree (redeemed_payment_order_id);
CREATE TABLE IF NOT EXISTS public.admin_user_wallet_balance_batches (
admin_user_id character varying(64) NOT NULL,
idempotency_key character varying(128) NOT NULL,
request_fingerprint character varying(64) NOT NULL,
target_user_ids jsonb NOT NULL,
missing_user_ids jsonb NOT NULL,
warnings jsonb NOT NULL,
user_outcomes jsonb NOT NULL,
created_at_unix_secs bigint NOT NULL,
updated_at_unix_secs bigint NOT NULL
);
ALTER TABLE ONLY public.admin_user_wallet_balance_batches ADD CONSTRAINT admin_user_wallet_balance_batches_pkey PRIMARY KEY (admin_user_id, idempotency_key);