admin
2020-05-19 744594ef1a2f530fc3e86ea9dc48b62247f79420
fanli/src/main/java/com/yeshi/fanli/service/impl/user/UserInfoModifyRecordServiceImpl.java
@@ -6,8 +6,16 @@
import org.springframework.scheduling.annotation.Async;
import org.springframework.stereotype.Service;
import org.springframework.transaction.annotation.Transactional;
import com.aliyun.openservices.ons.api.Message;
import com.aliyun.openservices.ons.api.Producer;
import com.google.gson.Gson;
import com.yeshi.fanli.dao.mybatis.user.UserInfoModifyRecordMapper;
import com.yeshi.fanli.dto.mq.user.UserTopicTagEnum;
import com.yeshi.fanli.dto.mq.user.body.UserAccountBindingMQMsg;
import com.yeshi.fanli.dto.mq.user.body.UserInfoUpdateMQMsg;
import com.yeshi.fanli.dto.mq.user.body.UserInfoUpdateMQMsg.UserInfoUpdateTypeEnum;
import com.yeshi.fanli.entity.bus.user.BindingAccount;
import com.yeshi.fanli.entity.bus.user.UserExtraTaoBaoInfo;
import com.yeshi.fanli.entity.bus.user.UserInfo;
@@ -15,13 +23,16 @@
import com.yeshi.fanli.entity.bus.user.UserInfoModifyRecord;
import com.yeshi.fanli.entity.bus.user.UserInfoModifyRecord.ModifyTypeEnum;
import com.yeshi.fanli.log.LogHelper;
import com.yeshi.fanli.service.inter.integral.IntegralGetService;
import com.yeshi.fanli.service.inter.user.BindingAccountService;
import com.yeshi.fanli.service.inter.user.UserExtraTaoBaoInfoService;
import com.yeshi.fanli.service.inter.money.extract.BindingAccountService;
import com.yeshi.fanli.service.inter.user.UserInfoExtraService;
import com.yeshi.fanli.service.inter.user.UserInfoModifyRecordService;
import com.yeshi.fanli.service.inter.user.UserInfoService;
import com.yeshi.fanli.service.inter.user.integral.IntegralGetService;
import com.yeshi.fanli.service.inter.user.tb.UserExtraTaoBaoInfoService;
import com.yeshi.fanli.util.Constant;
import com.yeshi.fanli.util.StringUtil;
import com.yeshi.fanli.util.rocketmq.MQMsgBodyFactory;
import com.yeshi.fanli.util.rocketmq.MQTopicName;
@Service
public class UserInfoModifyRecordServiceImpl implements UserInfoModifyRecordService {
@@ -44,7 +55,11 @@
   @Resource
   private UserExtraTaoBaoInfoService userExtraTaoBaoInfoService;
   @Resource(name = "producer")
   private Producer producer;
   @Async()
   @Transactional
   @Override
   public void addModifyRecord(Long uid, ModifyTypeEnum type, String value) {
      try {
@@ -80,6 +95,41 @@
            record.setValue(value);
            record.setCreateTime(new Date());
            userInfoModifyRecordMapper.insertSelective(record);
            if (oldRecord == null) {// 新建
               // 发送账号修改消息
               UserAccountBindingMQMsg mqMsg = null;
               if (type == ModifyTypeEnum.bindPhone) {
                  mqMsg = new UserAccountBindingMQMsg(uid, UserAccountBindingMQMsg.TYPE_PHONE, value, new Date());
               } else if (type == ModifyTypeEnum.bindTaoBao) {
                  mqMsg = new UserAccountBindingMQMsg(uid, UserAccountBindingMQMsg.TYPE_TAOBAO, value,
                        new Date());
               } else if (type == ModifyTypeEnum.bindWeiXin) {
                  mqMsg = new UserAccountBindingMQMsg(uid, UserAccountBindingMQMsg.TYPE_WX, value, new Date());
               } else if (type == ModifyTypeEnum.bindAlipay) {
                  mqMsg = new UserAccountBindingMQMsg(uid, UserAccountBindingMQMsg.TYPE_ALIPAY, value,
                        new Date());
               }
               Message message = MQMsgBodyFactory.create(MQTopicName.TOPIC_USER,
                     UserTopicTagEnum.userAccountBinding, mqMsg);
               if (!Constant.IS_TEST)
                  producer.send(message);
            } else {// 修改
               UserInfoUpdateMQMsg mqMsg = null;
               if (type == ModifyTypeEnum.portrait) {
                  mqMsg = new UserInfoUpdateMQMsg(uid, UserInfoUpdateTypeEnum.portrait, value, new Date());
               } else if (type == ModifyTypeEnum.nickName)
                  mqMsg = new UserInfoUpdateMQMsg(uid, UserInfoUpdateTypeEnum.nickName, value, new Date());
               else if (type == ModifyTypeEnum.setWeiXinNum)
                  mqMsg = new UserInfoUpdateMQMsg(uid, UserInfoUpdateTypeEnum.wxId, value, new Date());
               if (mqMsg != null) {
                  Message message = MQMsgBodyFactory.create(MQTopicName.TOPIC_USER,
                        UserTopicTagEnum.userInfoUpdate, mqMsg);
                  producer.send(message);
               }
            }
         }
      } catch (Exception e) {
         e.printStackTrace();
@@ -112,10 +162,15 @@
         addModifyRecord(uid, ModifyTypeEnum.bindWeiXin, user.getWxUnionId());
      }
      if (user.getNickName() != null && !user.getNickName().startsWith("返利券")) {
      if (user.getNickName() != null && !user.getNickName().startsWith("返利券")
            && !user.getNickName().startsWith(Constant.systemCommonConfig.getDefaultNickName())) {
         addModifyRecord(uid, ModifyTypeEnum.nickName, user.getNickName() + "");
      }
      if (!Constant.systemCommonConfig.getDefaultPortrait().equalsIgnoreCase(user.getPortrait())) {
         addModifyRecord(uid, ModifyTypeEnum.portrait, user.getPortrait());
      }
      UserInfoExtra userInfoExtra = userInfoExtraService.getUserInfoExtra(uid);
      if (userInfoExtra != null) {
         if (userInfoExtra.getSex() != null)