admin
2025-02-25 30d8e227e8d823b6c38c3b9c90ac2df03b63befe
fanli/src/main/java/com/yeshi/fanli/dao/taobao/TLJBuyGoodsDao.java
@@ -1,78 +1,91 @@
package com.yeshi.fanli.dao.taobao;
import java.util.List;
import org.springframework.data.domain.Sort;
import org.springframework.data.mongodb.core.query.Criteria;
import org.springframework.data.mongodb.core.query.Query;
import org.springframework.stereotype.Repository;
import com.yeshi.fanli.dao.MongodbBaseDao;
import com.yeshi.fanli.entity.taobao.TLJBuyGoods;
@Repository
public class TLJBuyGoodsDao extends MongodbBaseDao<TLJBuyGoods> {
   public List<TLJBuyGoods> listByDayOrderByUpdateTime(String appKey, String day, int page, int pageSize) {
      Query query = new Query();
      Criteria ca = Criteria.where("day").is(day);
      if (appKey != null)
         ca = ca.and("appKey").is(appKey);
      query.addCriteria(ca);
      query.limit(pageSize);
      query.skip((page - 1) * pageSize).with(new Sort(Sort.Direction.DESC, "updateTime"));
      return mongoTemplate.find(query, TLJBuyGoods.class);
   }
   public long countByDayAndAppKey(String appKey, String day) {
      Query query = new Query();
      Criteria ca = Criteria.where("day").is(day);
      if (appKey != null)
         ca = ca.and("appKey").is(appKey);
      query.addCriteria(ca);
      return mongoTemplate.count(query, TLJBuyGoods.class);
   }
   public void deleteByGoodsId(Long goodsId) {
      Query query = new Query();
      Criteria ca = Criteria.where("goods.auctionId").is(goodsId);
      query.addCriteria(ca);
      List<TLJBuyGoods> list = mongoTemplate.find(query, TLJBuyGoods.class);
      if (list == null || list.size() == 0) {
         return;
      }
      for (TLJBuyGoods TLJBuyGoods : list) {
         mongoTemplate.remove(TLJBuyGoods);
      }
   }
   public List<TLJBuyGoods> listByAuctionId(Long auctionid) {
      Query query = new Query();
      Criteria ca = Criteria.where("goods.auctionId").is(auctionid);
      query.addCriteria(ca);
      return mongoTemplate.find(query, TLJBuyGoods.class);
   }
   /**
    * 减红包个数
    *
    * @param id
    */
   public void subHongBaoCount(String id, int count) {
      Query query = new Query();
      query.addCriteria(Criteria.where("id").is(id).andOperator(Criteria.where("leftHongBaoCount").gt(count - 1)));
      org.springframework.data.mongodb.core.query.Update update = new org.springframework.data.mongodb.core.query.Update();
      update = update.inc("leftHongBaoCount", 0 - count);
      mongoTemplate.updateFirst(query, update, TLJBuyGoods.class);
   }
   public TLJBuyGoods selectByAuctionIdAndDay(Long auctionId, String day) {
      Query query = new Query();
      Criteria ca = Criteria.where("goods.auctionId").is(auctionId).and("day").is(day);
      query.addCriteria(ca);
      return mongoTemplate.findOne(query, TLJBuyGoods.class);
   }
}
package com.yeshi.fanli.dao.taobao;
import java.util.List;
import com.yeshi.fanli.util.taobao.TaoBaoUtil;
import org.springframework.data.domain.Sort;
import org.springframework.data.mongodb.core.query.Criteria;
import org.springframework.data.mongodb.core.query.Query;
import org.springframework.stereotype.Repository;
import com.yeshi.common.MongodbBaseDao;
import com.yeshi.fanli.entity.taobao.TLJBuyGoods;
@Repository
public class TLJBuyGoodsDao extends MongodbBaseDao<TLJBuyGoods> {
   public List<TLJBuyGoods> listByDayOrderByUpdateTime(String appKey, String day, int page, int pageSize) {
      Query query = new Query();
      Criteria ca = Criteria.where("day").is(day);
      if (appKey != null)
         ca = ca.and("appKey").is(appKey);
      query.addCriteria(ca);
      query.limit(pageSize);
      query.skip((page - 1) * pageSize).with(new Sort(Sort.Direction.DESC, "updateTime"));
      return mongoTemplate.find(query, TLJBuyGoods.class);
   }
   public long countByDayAndAppKey(String appKey, String day) {
      Query query = new Query();
      Criteria ca = Criteria.where("day").is(day);
      if (appKey != null)
         ca = ca.and("appKey").is(appKey);
      query.addCriteria(ca);
      return mongoTemplate.count(query, TLJBuyGoods.class);
   }
   public void deleteByGoodsId(String goodsId) {
      Query query = new Query();
      Criteria ca = TaoBaoUtil.getAuctionIdEqualCriteria("goods.auctionId",goodsId);
      query.addCriteria(ca);
      List<TLJBuyGoods> list = mongoTemplate.find(query, TLJBuyGoods.class);
      if (list == null || list.size() == 0) {
         return;
      }
      for (TLJBuyGoods TLJBuyGoods : list) {
         mongoTemplate.remove(TLJBuyGoods);
      }
   }
   public List<TLJBuyGoods> listByAuctionId(String auctionid) {
      Query query = new Query();
      Criteria ca =TaoBaoUtil.getAuctionIdEqualCriteria("goods.auctionId",auctionid);
      query.addCriteria(ca);
      return mongoTemplate.find(query, TLJBuyGoods.class);
   }
   /**
    * 根据商品ID删除
    *
    * @param auctionId
    */
   public void deleteByAuctionId(String auctionId) {
      Query query = new Query();
      Criteria ca = TaoBaoUtil.getAuctionIdEqualCriteria("goods.auctionId",auctionId) ;
      query.addCriteria(ca);
      mongoTemplate.findAndRemove(query, TLJBuyGoods.class);
   }
   /**
    * 减红包个数
    *
    * @param id
    */
   public void subHongBaoCount(String id, int count) {
      Query query = new Query();
      query.addCriteria(Criteria.where("id").is(id).andOperator(Criteria.where("leftHongBaoCount").gt(count - 1)));
      org.springframework.data.mongodb.core.query.Update update = new org.springframework.data.mongodb.core.query.Update();
      update = update.inc("leftHongBaoCount", 0 - count);
      mongoTemplate.updateFirst(query, update, TLJBuyGoods.class);
   }
   public TLJBuyGoods selectByAuctionIdAndDay(String auctionId, String day) {
      Query query = new Query();
      Criteria ca = TaoBaoUtil.getAuctionIdEqualCriteria("goods.auctionId",auctionId).and("day").is(day);
      query.addCriteria(ca);
      return mongoTemplate.findOne(query, TLJBuyGoods.class);
   }
}