yujian
2019-12-19 626d711cb15896055c13fe344eb7fcc824589715
fanli/src/main/java/com/yeshi/fanli/service/impl/activity/ActivityUserServiceImpl.java
@@ -1,12 +1,15 @@
package com.yeshi.fanli.service.impl.activity;
import java.util.Date;
import java.util.List;
import javax.annotation.Resource;
import org.springframework.stereotype.Service;
import com.yeshi.fanli.dao.mybatis.activity.ActivityRuleUserMapper;
import com.yeshi.fanli.dao.mybatis.activity.ActivityUserMapper;
import com.yeshi.fanli.entity.bus.activity.ActivityRuleUser;
import com.yeshi.fanli.entity.bus.activity.ActivityUser;
import com.yeshi.fanli.service.inter.activity.ActivityUserService;
@@ -16,15 +19,89 @@
   @Resource
   private ActivityUserMapper activityUserMapper;
   @Resource
   private ActivityRuleUserMapper activityRuleUserMapper;
   @Override
   public ActivityUser selectByPrimaryKey(Long id) {
      return activityUserMapper.selectByPrimaryKey(id);
   }
   @Override
   public List<ActivityUser> listRand(int count) {
      return activityUserMapper.listRand(count);
   }
   @Override
   public void addActivityRuleUser(ActivityRuleUser ruleUser) {
      if (ruleUser == null || ruleUser.getActivityUser() == null)
         return;
      // 添加用户
      ActivityUser user = activityUserMapper.selectByName(ruleUser.getActivityUser().getNickName());
      if (user == null) {
         user = ruleUser.getActivityUser();
         user.setCreateTime(new Date());
         activityUserMapper.insertSelective(user);
      }
      ActivityRuleUser oldRuleUser = activityRuleUserMapper.selectByUserIdAndRuleCode(user.getId(),
            ruleUser.getRuleCode());
      if (oldRuleUser == null) {
         ruleUser.setActivityUser(user);
         ruleUser.setCreateTime(new Date());
         activityRuleUserMapper.insertSelective(ruleUser);
      } else {
         ActivityRuleUser update = new ActivityRuleUser();
         update.setId(oldRuleUser.getId());
         update.setOrderBy(ruleUser.getOrderBy());
         activityRuleUserMapper.updateByPrimaryKeySelective(update);
      }
   }
   @Override
   public List<ActivityRuleUser> listByRuleCode(Integer ruleCode, int page, int pageSize) {
      return activityRuleUserMapper.listByRuleCode(ruleCode, (page - 1) * pageSize, pageSize);
   }
   @Override
   public long countByRuleCode(Integer ruleCode) {
      return activityRuleUserMapper.countByRuleCode(ruleCode);
   }
   @Override
   public void deleteByRuleUserId(Long id) {
      ActivityRuleUser user = activityRuleUserMapper.selectByPrimaryKey(id);
      if (user.getActivityUser() != null)
         activityUserMapper.deleteByPrimaryKey(user.getActivityUser().getId());
      activityRuleUserMapper.deleteByPrimaryKey(id);
   }
   @Override
   public ActivityRuleUser selectRuleUserByPrimaryKey(Long id) {
      return activityRuleUserMapper.selectByPrimaryKey(id);
   }
   @Override
   public void updateActivityUser(ActivityUser au) {
      activityUserMapper.updateByPrimaryKeySelective(au);
   }
   @Override
   public void updateActivityRuleUser(ActivityRuleUser au) {
      activityRuleUserMapper.updateByPrimaryKeySelective(au);
   }
   @Override
   public ActivityUser getRandomByDaTaoKeCid(int cid) {
      int ruleId = 100 + cid;
      List<ActivityRuleUser> ruleList = activityRuleUserMapper.listByRuleCode(ruleId, 0, 100);
      return ruleList.get((int) (ruleList.size() * Math.random())).getActivityUser();
   }
   @Override
   public ActivityUser getRandomHaoHuo() {
      List<ActivityRuleUser> ruleList = activityRuleUserMapper.listByRuleCode(ActivityRuleUser.RULE_HAOHUO, 0, 100);
      return ruleList.get((int) (ruleList.size() * Math.random())).getActivityUser();
   }
}