Browse Source

修复DynamicEvaluateRecordServiceImpl重复注册问题

woody 1 year ago
parent
commit
27dbb8d3cc

+ 124 - 124
vehicle-server/src/main/java/com/chelvc/cloud/vehicle/server/service/impl/DynamicEvaluateRecordServiceImpl.java

@@ -1,5 +1,9 @@
 package com.chelvc.cloud.vehicle.server.service.impl;
 
+import java.util.Date;
+import java.util.List;
+import java.util.Objects;
+
 import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
 import com.baomidou.mybatisplus.core.conditions.update.LambdaUpdateWrapper;
 import com.baomidou.mybatisplus.core.toolkit.Wrappers;
@@ -26,13 +30,8 @@ import lombok.extern.slf4j.Slf4j;
 import org.apache.dubbo.config.annotation.DubboService;
 import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.context.annotation.Lazy;
-import org.springframework.stereotype.Service;
 import org.springframework.transaction.annotation.Transactional;
 
-import java.util.Date;
-import java.util.List;
-import java.util.Objects;
-
 /**
  * @PACKAGE_NAME: net.yeeu.collision.dynamic.service.impl
  * @NAME: DynamicEvaluateRecordServiceImpl
@@ -40,141 +39,142 @@ import java.util.Objects;
  * @DATE: 2023/8/8 18:40
  */
 @Slf4j
-@Service
 @RequiredArgsConstructor(onConstructor = @__({@Autowired, @Lazy}))
 @DubboService(interfaceClass = com.chelvc.cloud.vehicle.api.service.DynamicEvaluateRecordService.class)
 public class DynamicEvaluateRecordServiceImpl extends ServiceImpl<DynamicEvaluateRecordMapper, DynamicEvaluateRecord>
-        implements DynamicEvaluateRecordService, com.chelvc.cloud.vehicle.api.service.DynamicEvaluateRecordService{
+        implements DynamicEvaluateRecordService, com.chelvc.cloud.vehicle.api.service.DynamicEvaluateRecordService {
 
-  private final DynamicEvaluateRecordMapper baseMapper;
+    private final DynamicEvaluateRecordMapper baseMapper;
 
-  private final DynamicContentService iDynamicContentService;
+    private final DynamicContentService iDynamicContentService;
 
-  private final DynamicCommentService iDynamicCommentService;
+    private final DynamicCommentService iDynamicCommentService;
 
-  private LambdaQueryWrapper<DynamicEvaluateRecord> buildAddWrapper(Long contentId, Long userId) {
-    LambdaQueryWrapper<DynamicEvaluateRecord> lqw = Wrappers.lambdaQuery();
-    lqw.eq(DynamicEvaluateRecord::getContentId, contentId);
-    lqw.eq(DynamicEvaluateRecord::getUserId, userId);
-    return lqw;
-  }
+    private LambdaQueryWrapper<DynamicEvaluateRecord> buildAddWrapper(Long contentId, Long userId) {
+        LambdaQueryWrapper<DynamicEvaluateRecord> lqw = Wrappers.lambdaQuery();
+        lqw.eq(DynamicEvaluateRecord::getContentId, contentId);
+        lqw.eq(DynamicEvaluateRecord::getUserId, userId);
+        return lqw;
+    }
 
-  /**
-   * 新增内容评价(点赞/踩)列
-   */
-  @Override
-  @Transactional(rollbackFor = Exception.class)
-  public Boolean updateRecord(AddDynamicEvaluateRecordParam param, Long userId) {
-    Integer actionType = param.getActionType().getValue();
-    Integer recordType = param.getRecordType().getValue();
-    Integer dynamicStatusType = param.getDynamicStatusType().getValue();
-    LambdaQueryWrapper<DynamicEvaluateRecord> lqw =
-        buildAddWrapper(param.getContentId(), userId);
-    if(Objects.equals(ActionType.ADD.getValue(), actionType)){
-      //判断该用户是否有点赞/踩记录,点击新增记录,取消删除记录
-      executeWrapper(lqw, param, true, userId);
-      if (Objects.equals(RecordType.COMMENT.getValue(), recordType)) {
-        iDynamicCommentService.addNum(dynamicStatusType, param.getContentId());
-      } else if(Objects.equals(RecordType.DYNAMIC.getValue(), recordType)){
-        iDynamicContentService.addNum(dynamicStatusType, param.getContentId());
-      }
-    } else if (Objects.equals(ActionType.CANCEL.getValue(), actionType)) {
-      lqw.eq(DynamicEvaluateRecord::getOperaterType, dynamicStatusType);
-      //判断该用户是否有点赞/踩记录,点击新增记录,取消删除记录
-      executeWrapper(lqw, param, false, userId);
-      if (Objects.equals(RecordType.COMMENT.getValue(), recordType)) {
-        iDynamicCommentService.reduceNum(dynamicStatusType, param.getContentId());
-      } else if(Objects.equals(RecordType.DYNAMIC.getValue(), recordType)){
-        iDynamicContentService.reduceNum(dynamicStatusType, param.getContentId());
-      }
+    /**
+     * 新增内容评价(点赞/踩)列
+     */
+    @Override
+    @Transactional(rollbackFor = Exception.class)
+    public Boolean updateRecord(AddDynamicEvaluateRecordParam param, Long userId) {
+        Integer actionType = param.getActionType().getValue();
+        Integer recordType = param.getRecordType().getValue();
+        Integer dynamicStatusType = param.getDynamicStatusType().getValue();
+        LambdaQueryWrapper<DynamicEvaluateRecord> lqw =
+                buildAddWrapper(param.getContentId(), userId);
+        if (Objects.equals(ActionType.ADD.getValue(), actionType)) {
+            //判断该用户是否有点赞/踩记录,点击新增记录,取消删除记录
+            executeWrapper(lqw, param, true, userId);
+            if (Objects.equals(RecordType.COMMENT.getValue(), recordType)) {
+                iDynamicCommentService.addNum(dynamicStatusType, param.getContentId());
+            } else if (Objects.equals(RecordType.DYNAMIC.getValue(), recordType)) {
+                iDynamicContentService.addNum(dynamicStatusType, param.getContentId());
+            }
+        } else if (Objects.equals(ActionType.CANCEL.getValue(), actionType)) {
+            lqw.eq(DynamicEvaluateRecord::getOperaterType, dynamicStatusType);
+            //判断该用户是否有点赞/踩记录,点击新增记录,取消删除记录
+            executeWrapper(lqw, param, false, userId);
+            if (Objects.equals(RecordType.COMMENT.getValue(), recordType)) {
+                iDynamicCommentService.reduceNum(dynamicStatusType, param.getContentId());
+            } else if (Objects.equals(RecordType.DYNAMIC.getValue(), recordType)) {
+                iDynamicContentService.reduceNum(dynamicStatusType, param.getContentId());
+            }
+        }
+        return true;
     }
-    return true;
-  }
 
-  @Override
-  public DynamicEvaluateRecordDTO queryOperaterType(Long id, Long userId, Integer recordType) {
-    LambdaQueryWrapper<DynamicEvaluateRecord> lwq = Wrappers.lambdaQuery();
-    lwq.eq(DynamicEvaluateRecord::getContentId, id);
-    lwq.eq(DynamicEvaluateRecord::getUserId, userId);
-    lwq.eq(DynamicEvaluateRecord::getContentType, recordType);
-    lwq.orderByDesc(DynamicEvaluateRecord::getCreateTime);
-    List<DynamicEvaluateRecord> dynamicEvaluateRecordEntities = baseMapper.selectList(lwq);
-    if (dynamicEvaluateRecordEntities != null && dynamicEvaluateRecordEntities.size() > 0){
-      DynamicEvaluateRecord entity = dynamicEvaluateRecordEntities.get(0);
-      return ObjectUtils.copying(entity, DynamicEvaluateRecordDTO.class);
+    @Override
+    public DynamicEvaluateRecordDTO queryOperaterType(Long id, Long userId, Integer recordType) {
+        LambdaQueryWrapper<DynamicEvaluateRecord> lwq = Wrappers.lambdaQuery();
+        lwq.eq(DynamicEvaluateRecord::getContentId, id);
+        lwq.eq(DynamicEvaluateRecord::getUserId, userId);
+        lwq.eq(DynamicEvaluateRecord::getContentType, recordType);
+        lwq.orderByDesc(DynamicEvaluateRecord::getCreateTime);
+        List<DynamicEvaluateRecord> dynamicEvaluateRecordEntities = baseMapper.selectList(lwq);
+        if (dynamicEvaluateRecordEntities != null && dynamicEvaluateRecordEntities.size() > 0) {
+            DynamicEvaluateRecord entity = dynamicEvaluateRecordEntities.get(0);
+            return ObjectUtils.copying(entity, DynamicEvaluateRecordDTO.class);
+        }
+        return null;
     }
-    return null;
-  }
 
-  @Override
-  public Integer queryNewInformNum(Long userId) {
-    LambdaQueryWrapper<DynamicEvaluateRecord> lwq = Wrappers.lambdaQuery();
-    lwq.eq(DynamicEvaluateRecord::getTargetUserId, userId);
-    lwq.eq(DynamicEvaluateRecord::getFlag, 0);
-    return baseMapper.selectCount(lwq);
-  }
+    @Override
+    public Integer queryNewInformNum(Long userId) {
+        LambdaQueryWrapper<DynamicEvaluateRecord> lwq = Wrappers.lambdaQuery();
+        lwq.eq(DynamicEvaluateRecord::getTargetUserId, userId);
+        lwq.eq(DynamicEvaluateRecord::getFlag, 0);
+        return baseMapper.selectCount(lwq);
+    }
 
-  @Override
-  public void changeEvaluateInformFlag(Long userId) {
-    LambdaUpdateWrapper<DynamicEvaluateRecord> lwq = Wrappers.lambdaUpdate();
-    lwq.eq(DynamicEvaluateRecord::getTargetUserId, userId);
-    lwq.eq(DynamicEvaluateRecord::getFlag, 0);
-    lwq.set(DynamicEvaluateRecord::getFlag, 1);
-    baseMapper.update(null, lwq);
-  }
+    @Override
+    public void changeEvaluateInformFlag(Long userId) {
+        LambdaUpdateWrapper<DynamicEvaluateRecord> lwq = Wrappers.lambdaUpdate();
+        lwq.eq(DynamicEvaluateRecord::getTargetUserId, userId);
+        lwq.eq(DynamicEvaluateRecord::getFlag, 0);
+        lwq.set(DynamicEvaluateRecord::getFlag, 1);
+        baseMapper.update(null, lwq);
+    }
 
-  @Override
-  public Pagination<EvaluateDTO> selectEvaluateListByUserId(Long userId, Paging paging) {
-    Page<DynamicEvaluateRecord> page = this.lambdaQuery()
-            .eq(DynamicEvaluateRecord::getTargetUserId, userId)
-            .orderByAsc(DynamicEvaluateRecord::getCreateTime).page(DatabaseContextHolder.page(paging));
-    List<DynamicEvaluateRecord> dynamicEvaluateRecords = page.getRecords();
-    List<EvaluateDTO> copy = ObjectUtils.copying(dynamicEvaluateRecords, EvaluateDTO.class);
-    if(copy != null && copy.size() > 0){
-      for (EvaluateDTO evaluateDTO : copy) {
-        Integer contentType = evaluateDTO.getContentType();
-        if(contentType == 1){
-            evaluateDTO.setDynamicContentDTO(iDynamicContentService.queryById(evaluateDTO.getContentId(), evaluateDTO.getUserId()));
-        } else {
-          DynamicCommentDTO dynamicCommentDTO = iDynamicCommentService.queryById(evaluateDTO.getContentId());
-          if(dynamicCommentDTO != null){
-            evaluateDTO.setDynamicContentDTO(iDynamicContentService.queryById(dynamicCommentDTO.getDynamicId(), evaluateDTO.getUserId()));
-          }
-          evaluateDTO.setDynamicCommentDTO(dynamicCommentDTO);
+    @Override
+    public Pagination<EvaluateDTO> selectEvaluateListByUserId(Long userId, Paging paging) {
+        Page<DynamicEvaluateRecord> page = this.lambdaQuery()
+                .eq(DynamicEvaluateRecord::getTargetUserId, userId)
+                .orderByAsc(DynamicEvaluateRecord::getCreateTime).page(DatabaseContextHolder.page(paging));
+        List<DynamicEvaluateRecord> dynamicEvaluateRecords = page.getRecords();
+        List<EvaluateDTO> copy = ObjectUtils.copying(dynamicEvaluateRecords, EvaluateDTO.class);
+        if (copy != null && copy.size() > 0) {
+            for (EvaluateDTO evaluateDTO : copy) {
+                Integer contentType = evaluateDTO.getContentType();
+                if (contentType == 1) {
+                    evaluateDTO.setDynamicContentDTO(iDynamicContentService.queryById(evaluateDTO.getContentId(),
+                            evaluateDTO.getUserId()));
+                } else {
+                    DynamicCommentDTO dynamicCommentDTO = iDynamicCommentService.queryById(evaluateDTO.getContentId());
+                    if (dynamicCommentDTO != null) {
+                        evaluateDTO.setDynamicContentDTO(iDynamicContentService.queryById(dynamicCommentDTO.getDynamicId(), evaluateDTO.getUserId()));
+                    }
+                    evaluateDTO.setDynamicCommentDTO(dynamicCommentDTO);
+                }
+            }
         }
-      }
+        return DatabaseContextHolder.pagination(page, copy);
     }
-    return DatabaseContextHolder.pagination(page, copy);
-  }
 
-  /**
-   * 判断该用户是否有点赞/踩记录,点击新增记录,取消删除记录
-   * @param lqw
-   * @param param
-   * @param b
-   */
-  public void executeWrapper(LambdaQueryWrapper<DynamicEvaluateRecord> lqw,
-      AddDynamicEvaluateRecordParam param, boolean b, Long userId){
-    DynamicEvaluateRecord DynamicEvaluateRecord = baseMapper.selectOne(lqw);
-    if(b){
-      if(DynamicEvaluateRecord != null){
-        throw new ResourceUnavailableException("处理失败");
-      }
-      DynamicEvaluateRecord contentEvaluateRecord = ObjectUtils.copying(param,
-          DynamicEvaluateRecord.class);
-      contentEvaluateRecord.setContentType(param.getRecordType().getValue());
-      contentEvaluateRecord.setOperaterType(param.getDynamicStatusType().getValue());
-      contentEvaluateRecord.setUserId(userId);
-      contentEvaluateRecord.setFlag(0);
-      contentEvaluateRecord.setCreateTime(new Date());
-      baseMapper.insert(contentEvaluateRecord);
-    } else {
-      if(DynamicEvaluateRecord == null){
-        throw new ResourceUnavailableException("处理失败");
-      }
-      baseMapper.deleteByRecordId(DynamicEvaluateRecord.getId());
+    /**
+     * 判断该用户是否有点赞/踩记录,点击新增记录,取消删除记录
+     *
+     * @param lqw
+     * @param param
+     * @param b
+     */
+    public void executeWrapper(LambdaQueryWrapper<DynamicEvaluateRecord> lqw,
+                               AddDynamicEvaluateRecordParam param, boolean b, Long userId) {
+        DynamicEvaluateRecord DynamicEvaluateRecord = baseMapper.selectOne(lqw);
+        if (b) {
+            if (DynamicEvaluateRecord != null) {
+                throw new ResourceUnavailableException("处理失败");
+            }
+            DynamicEvaluateRecord contentEvaluateRecord = ObjectUtils.copying(param,
+                    DynamicEvaluateRecord.class);
+            contentEvaluateRecord.setContentType(param.getRecordType().getValue());
+            contentEvaluateRecord.setOperaterType(param.getDynamicStatusType().getValue());
+            contentEvaluateRecord.setUserId(userId);
+            contentEvaluateRecord.setFlag(0);
+            contentEvaluateRecord.setCreateTime(new Date());
+            baseMapper.insert(contentEvaluateRecord);
+        } else {
+            if (DynamicEvaluateRecord == null) {
+                throw new ResourceUnavailableException("处理失败");
+            }
+            baseMapper.deleteByRecordId(DynamicEvaluateRecord.getId());
+        }
+        log.info("用户:[{}]{}{}{}", userId, param.getRecordType().getDesc(),
+                param.getActionType().getDesc(), param.getDynamicStatusType().getDesc());
     }
-    log.info("用户:[{}]{}{}{}",userId, param.getRecordType().getDesc(),
-        param.getActionType().getDesc(), param.getDynamicStatusType().getDesc());
-  }
 }