GroupsMapper.java 1.8 KB

123456789101112131415161718192021222324252627282930313233343536373839404142
  1. package com.cyksj.mapper;
  2. import cn.hutool.core.date.DateTime;
  3. import com.baomidou.mybatisplus.core.mapper.BaseMapper;
  4. import com.cyksj.model.entity.AccountDoubleVerifyRecord;
  5. import com.cyksj.model.entity.GroupsTrips;
  6. import org.apache.ibatis.annotations.Param;
  7. import org.apache.ibatis.annotations.Select;
  8. import org.apache.ibatis.annotations.Update;
  9. import java.util.Date;
  10. import java.util.List;
  11. /**
  12. * @author chan
  13. * @date 2022/9/27 4:24 PM
  14. */
  15. public interface GroupsMapper extends BaseMapper<GroupsTrips> {
  16. @Update("update groups_trips set available_num = available_num - 1 where id = #{groupId} and available_num > 0")
  17. int decrAvailableNum(Long groupId);
  18. @Update("update groups_trips set available_num = available_num + 1 where id = #{groupId} and available_num < num")
  19. int incrAvailableNum(Long groupId);
  20. @Select("select count(*) from groups_trips where sku_id = #{skuId} and num = available_num")
  21. Integer selectEmptyNetflixTrips(Long skuId);
  22. List<AccountDoubleVerifyRecord> selectGPTDoubleVerifyTrips(Long goodsId);
  23. @Update("update groups_trips set available_num = (select count(*) from groups_relation where groups_id = #{groupsId} and status = 'none') where id = #{groupsId}")
  24. Integer updateAvailableNum(Long groupsId);
  25. List<GroupsTrips> getExpiryAccountGroups(@Param("nextBeginDay") DateTime nextBeginDay, @Param("list") List<Long> aiSkuIds);
  26. Long selectSameSpecItemGroupsByTime(@Param("groupsId") Long groupsId, @Param("skuId") Long skuId, @Param("expiryTime") Date expiryTime, @Param("betDay") DateTime betDay, @Param("extraNum") Integer extraNum);
  27. Long selectSameSpecEmptyGroups(Long skuId);
  28. Long selectMidJourneySameSpecItemGroups(@Param("groupsId") Long groupsId, @Param("skuId") Long skuId, @Param("expiryTime") Date expiryTime);
  29. Integer countExpiredNum(Long accountId);
  30. }