Browse Source

调试登录功能,vid相同,执行delete and insert

刘立冬 1 month ago
parent
commit
58ccdff6e2

+ 9 - 15
risk-control-core/src/main/java/com/tzld/piaoquan/risk/control/service/impl/QywxUserDataService.java

@@ -133,21 +133,15 @@ public class QywxUserDataService {
             userBase.setCreateTime(new Date(createTime * 1000));
         }
 
-        // 查询是否已存在
-        UserBaseExample example = new UserBaseExample();
-        log.info("processBaseInfo, vid: {}, uuid: {}", data.vid.toString(), envelop.getUuid());
-        example.createCriteria().andVidEqualTo(data.vid.toString());
-        List<UserBase> existUsers = userBaseMapper.selectByExample(example);
-        if (!existUsers.isEmpty()) {
-            log.info("User already exists, updating: {}", data.vid);
-            UserBase existUser = existUsers.get(0);
-            userBase.setId(existUser.getId());
-            userBase.setCreateTime(existUser.getCreateTime());
-            UserBaseExample updateExample = new UserBaseExample();
-            updateExample.createCriteria().andVidEqualTo(data.vid.toString());
-            userBaseMapper.updateByExampleSelective(userBase, updateExample); // 按 vid 更新        } else {
-            userBaseMapper.insertSelective(userBase);
-        }
+        // 2. 根据 vid 删除所有旧记录
+        UserBaseExample deleteExample = new UserBaseExample();
+        deleteExample.createCriteria().andVidEqualTo(data.vid.toString());
+        int deletedCount = userBaseMapper.deleteByExample(deleteExample);
+        log.info("Deleted {} old records for vid: {}", deletedCount, data.vid);
+
+        // 3. 插入新记录
+        userBaseMapper.insertSelective(userBase);
+        log.info("Inserted new record for vid: {}", data.vid);
     }
 
     public void cancelScanCode(String originalJson) {