GroupsMapper.java 1.9 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344
  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. GroupsTrips selectTicketGroups(@Param("skuId") Long skuId, @Param("status") GroupsTrips.Status status, @Param("maxNum") Integer maxNum, @Param("ip") String ip);
  31. }