yujian
2020-06-11 20bb4f95184453d4addfd27e40a78f3c63bcf6c3
fanli/src/main/java/com/yeshi/fanli/service/impl/user/cloud/UserCloudServiceImpl.java
@@ -15,7 +15,6 @@
import com.aliyun.openservices.ons.api.Message;
import com.aliyun.openservices.ons.api.Producer;
import com.yeshi.fanli.dao.mybatis.user.cloud.UserCloudMapper;
import com.yeshi.fanli.dto.aitaoker.RobotInfoDTO;
import com.yeshi.fanli.dto.aitaoker.WeiXinGroupDTO;
import com.yeshi.fanli.dto.jd.JDCouponInfo;
import com.yeshi.fanli.dto.jd.JDPingouInfo;
@@ -71,6 +70,7 @@
import com.yeshi.fanli.util.Constant;
import com.yeshi.fanli.util.ImageToBase64;
import com.yeshi.fanli.util.MoneyBigDecimalUtil;
import com.yeshi.fanli.util.RedisKeyEnum;
import com.yeshi.fanli.util.RedisManager;
import com.yeshi.fanli.util.StringUtil;
import com.yeshi.fanli.util.aitaoker.AitaokerApiUtil;
@@ -306,12 +306,27 @@
      List<WeiXinGroupDTO> list = AitaokerApiUtil.getContract(robotId);
      if (list == null || list.size() == 0)
         throw new UserCloudException(1, "未检索到对应群");
      String wxId = userCloud.getWxId();
      for (WeiXinGroupDTO dto : list) {
         userCloudGroupService.addGroup(uid, dto.getGroupId(), dto.getGroupName(), userCloud.getGroupNum());
         String groupId = dto.getGroupId();
         // 检测是否匹配群
         String key =  RedisKeyEnum.cloudMatchGroup.getKey() + StringUtil.Md5(wxId + "_" + groupId);
         String result = redisManager.getCommonString(key);
          if (!StringUtil.isNullOrEmpty(result)) {
            userCloudGroupService.addGroup(uid, dto.getGroupId(), dto.getGroupName(), userCloud.getGroupNum());
         }
      }
   }
   
   @Override
   public void cacheMatchGroup(String wxId, String groupId) {
       if (StringUtil.isNullOrEmpty(wxId) || StringUtil.isNullOrEmpty(groupId))
         return;
      String key =  RedisKeyEnum.cloudMatchGroup.getKey() + StringUtil.Md5(wxId + "_" + groupId);
      redisManager.cacheCommonString(key , "true" , 60*20);
   }
   @Override
   public void sendByDynamic(Long uid, String id) throws UserCloudException{
      sendCircleByDynamic(uid, id, UserCloudSendRecord.SEND_WAY_MANUAL);
@@ -374,6 +389,10 @@
      String wxId = userCloud.getWxId();
      if (StringUtil.isNullOrEmpty(wxId)) 
         throw new UserCloudException(1003, "微信号不存在,请先微信登录");
      if (!AitaokerApiUtil.onlineCheck(robotId)) {
         throw new UserCloudException(1003, "微信已掉线,请先重新登录微信");
      }
      
      // 验证开启状态
      List<UserCloudGroup> listGroup = userCloudGroupService.listByUid(uid);
@@ -679,6 +698,11 @@
      if (StringUtil.isNullOrEmpty(wxId)) 
         throw new UserCloudException(1002, "请先登录微信");
      
      if (!AitaokerApiUtil.onlineCheck(robotId)) {
         throw new UserCloudException(1003, "微信已掉线,请先重新登录微信");
      }
      // 验证开启状态
      List<UserCloudGroup> listGroup = userCloudGroupService.listByUid(uid);
      if (listGroup == null || listGroup.size() == 0)