Files
as-daycard-openapi/src/main/resources/mapper/daycard/DayCardPoolDao.xml
zhaogd 30198c7191 初始化天卡开放平台后端项目
包含完整功能模块:
- 设备激活(直销激活码模式 + 代销免激活码模式)
- 微信支付 + 天卡订单
- 天卡池管理 + 异步橘视厅SDK激活
- 第三方合作伙伴接口(代销模式)
  - 签名鉴权(appKey/appSecret + nonce防重放)
  - 天卡消耗(事务 + 幂等 + 并发控制)
  - 媒资接口(三级授权过滤)
  - 审计日志
- 定价策略(3层:门店 > 渠道 > 平台)
- 分账(微信分账 + 分润规则)
- Docker部署(含Redis容器)
2026-07-26 12:34:13 +08:00

22 lines
713 B
XML

<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
<mapper namespace="io.as.modules.daycard.dao.DayCardPoolDao">
<!-- 使用 FOR UPDATE SKIP LOCKED 抢占一张未使用的天卡,避免并发下单分配到同一张卡 -->
<select id="selectOneForUpdateSkipLocked" resultType="io.as.modules.daycard.entity.DayCardPoolEntity">
SELECT * FROM day_card_pool
WHERE delete_flag = 'UNDEL'
AND (
status = 'UNUSED'
OR (status = 'REUSABLE' AND expire_at > NOW())
)
ORDER BY
CASE WHEN status = 'REUSABLE' THEN 0 ELSE 1 END,
id ASC
LIMIT 1
FOR UPDATE SKIP LOCKED
</select>
</mapper>