cup 2 年之前
父节点
当前提交
3fc435ef81

+ 3 - 16
mp-service/src/main/java/com/qs/mp/admin/service/impl/MarketingServiceImpl.java

@@ -124,14 +124,7 @@ public class MarketingServiceImpl extends ServiceImpl<MarketingMapper, Marketing
         int prizeQuantity = marketingAwardsList.stream().mapToInt(MarketingAwards::getQuantity).sum();
         int prizeQuantity = marketingAwardsList.stream().mapToInt(MarketingAwards::getQuantity).sum();
 
 
         // 校准并获取真实参与人数
         // 校准并获取真实参与人数
-        List<MarketingUserCode> realUserList = marketingUserCodeService.list(new LambdaQueryWrapper<MarketingUserCode>()
-                .eq(MarketingUserCode::getMarketingId, marketing.getId())
-                .eq(MarketingUserCode::getUserType, UserTypeEnum.ORDINARY.getValue())
-                .groupBy(MarketingUserCode::getUserId));
-        int realNum = 0;
-        if (CollectionUtils.isNotEmpty(realUserList)) {
-            realNum = realUserList.size();
-        }
+        int realNum = marketingUserCodeService.countRealUserNumByMarketingId(marketing.getId());
 
 
         // 设置需要的内定人数
         // 设置需要的内定人数
         int insideNum = 0;
         int insideNum = 0;
@@ -355,14 +348,8 @@ public class MarketingServiceImpl extends ServiceImpl<MarketingMapper, Marketing
 
 
 
 
         // 真实用户
         // 真实用户
-        List<MarketingUserCode> realUserList = marketingUserCodeService.list(new LambdaQueryWrapper<MarketingUserCode>()
-                .eq(MarketingUserCode::getMarketingId, marketing.getId())
-                .eq(MarketingUserCode::getUserType, UserTypeEnum.ORDINARY.getValue())
-                .groupBy(MarketingUserCode::getUserId));
-        int realNum = 0;
-        if (CollectionUtils.isNotEmpty(realUserList)) {
-            realNum = realUserList.size();
-        }
+        int realNum = marketingUserCodeService.countRealUserNumByMarketingId(marketing.getId());
+
 
 
         // 获取最新活动信息
         // 获取最新活动信息
         marketing.setRealNum(realNum);
         marketing.setRealNum(realNum);

+ 7 - 0
mp-service/src/main/java/com/qs/mp/user/mapper/MarketingUserCodeMapper.java

@@ -22,4 +22,11 @@ public interface MarketingUserCodeMapper extends BaseMapper<MarketingUserCode> {
      * @return
      * @return
      */
      */
     List<MarketingUserCodeListVO> listMarketingUserCodeByQueryWrapper(@Param(Constants.WRAPPER) QueryWrapper<MarketingUserCode> queryWrapper);
     List<MarketingUserCodeListVO> listMarketingUserCodeByQueryWrapper(@Param(Constants.WRAPPER) QueryWrapper<MarketingUserCode> queryWrapper);
+
+    /**
+     * 获取活动参与的真实用户
+     * @param marketingId
+     * @return
+     */
+    int countRealUserNumByMarketingId(@Param("marketingId") Long marketingId);
 }
 }

+ 8 - 0
mp-service/src/main/java/com/qs/mp/user/service/IMarketingUserCodeService.java

@@ -24,4 +24,12 @@ public interface IMarketingUserCodeService extends IService<MarketingUserCode> {
      * @return
      * @return
      */
      */
     List<MarketingUserCodeListVO> listMarketingUserCodeByQueryWrapper(QueryWrapper<MarketingUserCode> queryWrapper);
     List<MarketingUserCodeListVO> listMarketingUserCodeByQueryWrapper(QueryWrapper<MarketingUserCode> queryWrapper);
+
+    /**
+     * 获取活动参与的真实用户
+     * @param marketingId
+     * @return
+     */
+    int countRealUserNumByMarketingId(Long marketingId);
+
 }
 }

+ 5 - 0
mp-service/src/main/java/com/qs/mp/user/service/impl/MarketingUserCodeServiceImpl.java

@@ -22,6 +22,11 @@ import java.util.List;
 public class MarketingUserCodeServiceImpl extends ServiceImpl<MarketingUserCodeMapper, MarketingUserCode> implements IMarketingUserCodeService {
 public class MarketingUserCodeServiceImpl extends ServiceImpl<MarketingUserCodeMapper, MarketingUserCode> implements IMarketingUserCodeService {
 
 
 
 
+    @Override
+    public int countRealUserNumByMarketingId(Long marketingId) {
+        return getBaseMapper().countRealUserNumByMarketingId(marketingId);
+    }
+
     @Override
     @Override
     public List<MarketingUserCodeListVO> listMarketingUserCodeByQueryWrapper(QueryWrapper<MarketingUserCode> queryWrapper) {
     public List<MarketingUserCodeListVO> listMarketingUserCodeByQueryWrapper(QueryWrapper<MarketingUserCode> queryWrapper) {
         return getBaseMapper().listMarketingUserCodeByQueryWrapper(queryWrapper);
         return getBaseMapper().listMarketingUserCodeByQueryWrapper(queryWrapper);

+ 9 - 0
mp-service/src/main/resources/mapper/user/MarketingUserCodeMapper.xml

@@ -35,4 +35,13 @@
                 left join mp_marketing_awards_prize t5 on t2.prize_id = t5.id
                 left join mp_marketing_awards_prize t5 on t2.prize_id = t5.id
         ${ew.customSqlSegment}
         ${ew.customSqlSegment}
     </select>
     </select>
+
+    <select id="countRealUserNumByMarketingId" resultType="int">
+        select count(*)
+        from (select user_id
+              from mp_marketing_user_code
+              where user_type = '00'
+              and marketing_id = #{marketingId}
+              group by user_id) t1;
+    </select>
 </mapper>
 </mapper>