JensionDzero 1 yıl önce
ebeveyn
işleme
fc6d22d48a

+ 0 - 2
ruoyi-admin/src/main/java/com/ruoyi/web/controller/common/CaptchaController.java

@@ -120,7 +120,6 @@ public class CaptchaController {
         captcha.setGenerator(codeGenerator);
         captcha.createCode();
         String code = captcha.getCode();
-        System.out.println(code);
         if (isMath) {
             ExpressionParser parser = new SpelExpressionParser();
             Expression exp = parser.parseExpression(StringUtils.remove(code, "="));
@@ -129,7 +128,6 @@ public class CaptchaController {
         RedisUtils.setCacheObject(verifyKey, code, Duration.ofMinutes(Constants.CAPTCHA_EXPIRATION));
         ajax.put("uuid", uuid);
         ajax.put("img", captcha.getImageBase64());
-        System.out.println(code);
         return R.ok(ajax);
     }
 

+ 2 - 0
ruoyi-demo/src/main/java/com/ruoyi/demo/mapper/PlanItemMapper.java

@@ -22,4 +22,6 @@ public interface PlanItemMapper extends BaseMapper<PlanItem> {
 
     //根据设备编号获取所有相关itemId
     List<String> getItemIdsByCode(@Param("equipmentCode") String equipmentCode);
+
+    List<String> selectDeletePlanId(@Param("asList") List<String> asList);
 }

+ 2 - 10
ruoyi-demo/src/main/java/com/ruoyi/demo/service/impl/EquipmentServiceImpl.java

@@ -380,18 +380,10 @@ public class EquipmentServiceImpl implements EquipmentService {
         planItemMapper.deleteBatchIds(Arrays.asList(planItemIds));
 
         //查询已无推广设备广告的计划
-        QueryWrapper<Plan> queryWrapper = new QueryWrapper<>();
-        queryWrapper.select("plan_id");
-        queryWrapper.in("item_id",Arrays.asList(planItemIds));
-        queryWrapper.groupBy("plan_id");
-        queryWrapper.having("count(*) = 0");
-        List<Plan> plans = planMapper.selectList(queryWrapper);
+        List<String> plans = planItemMapper.selectDeletePlanId(Arrays.asList(planItemIds));
         if (!plans.isEmpty()){
             //删除广告计划
-            List<String> collect = plans.stream().map(item -> {
-                return item.getPlanId();
-            }).collect(Collectors.toList());
-            planMapper.deleteBatchIds(collect);
+            planMapper.deleteBatchIds(plans);
         }
     }
 

+ 11 - 0
ruoyi-demo/src/main/resources/mapper/demo/PlanItemMapper.xml

@@ -33,4 +33,15 @@
             `dl_plan_item`
         WHERE equipment_code = #{equipmentCode};
     </select>
+
+    <select id="selectDeletePlanId" resultType="java.lang.String">
+        SELECT plan_id FROM dl_plan_item WHERE plan_id IN (SELECT plan_id FROM dl_plan_item
+        <where>
+            <foreach collection="asList" item="item" separator="," open="item_id  in (" close=")">
+                #{item}
+            </foreach>
+        </where>
+
+        ) GROUP BY plan_id HAVING COUNT(IF(deleted = 0, 1, NULL)) = 0
+    </select>
 </mapper>