package com.rj.service; import com.baomidou.mybatisplus.extension.service.IService; import com.rj.entity.LbGoods; import java.util.Map; public interface ILbGoodsService extends IService { Map add(LbGoods entity); Map update(LbGoods entity); Map deleteById(Long id); Map pageQuery( Integer current, Integer size, String tenantId, Long oldId, Long userId, String title, Long sellerId, Integer isShow, Integer status, Integer currentPage, String createdAtStart, String createdAtEnd, String updatedAtStart, String updatedAtEnd); /** * 分页调用第三方 {@code /api/order/goods},解析后 upsert 到 {@code lb_goods}。 * * @param token 可选;非空时作为请求头 token,否则使用 {@code hxr.admin.goods-api-token} */ Map syncFromHxrGoods(String tenantId, String token); /** * 分页拉取第三方 {@code /api/order/goods},仅组装为内存对象列表,不写入 {@code lb_goods}。 * * @param token 可选;非空时作为请求头 token,否则使用集成配置中的 goodsApiToken */ Map fetchGoodsFromHxrInMemory(String tenantId, String token); /** * 选取金额大于29000且24小时内更新的 {@code lb_goods},调用 hxrd {@code /api/order/buy} 抢购; * 成功笔数达到 {@code maxBuyCount} 后停止,且循环抢购总次数不超过 {@code maxBuyCount} 的5倍。 * * @param token 可选;非空时作为请求头 token,否则使用 {@code lb_third_integration_config} 中的 goodsApiToken * @param ;批量账号抢单时传入,用于日志标识当前抢单账号 */ default Map rushBuy(String tenantId, String token, Integer maxBuyCount) { return rushBuy(tenantId, token, maxBuyCount, null); } Map rushBuy(String tenantId, String token, Integer maxBuyCount, String rushBuyAccountLabel); }