Browse Source

修改品牌库的统计分析job

云殇忆 1 year ago
parent
commit
bdffc38bef

+ 1 - 1
benyun-core/src/main/java/com/ruoyi/benyun/entity/Brand.java

@@ -42,7 +42,7 @@ public class Brand {
     @TableField("menu_info")
     private String menuInfo;
 
-    @TableField("indes_score")
+    @TableField("index_score")
     private BigDecimal indexScore;
 
     @TableField("create_date")

+ 1 - 1
benyun-core/src/main/java/com/ruoyi/benyun/mapper/BrandBusinessDao.java

@@ -9,6 +9,6 @@ import java.util.List;
 
 @Mapper
 public interface BrandBusinessDao extends BaseMapper<BrandBusiness> {
-    List<BrandBusiness> selectByStatistics(@Param("notIns") List<String> notIns);
+    List<BrandBusiness> selectByStatistics(@Param("ins") List<String> ins);
     List<String> selectIns();
 }

+ 1 - 0
benyun-core/src/main/java/com/ruoyi/benyun/mapper/BrandZoneDao.java

@@ -17,4 +17,5 @@ public interface BrandZoneDao extends BaseMapper<BrandZone> {
     Integer searchZoneCountByBrandId(String brandId);
     List<String> searchStatedBrandIds(@Param("month") String month);
     List<BrandZone> searchQuicklyStatistics(@Param("ins") List<String> ins);
+    List<String> selectIns();
 }

+ 6 - 2
benyun-core/src/main/java/com/ruoyi/benyun/utils/statistics/BrandBusinessStat.java

@@ -2,6 +2,7 @@ package com.ruoyi.benyun.utils.statistics;
 
 import com.ruoyi.benyun.entity.BrandBusiness;
 import com.ruoyi.benyun.mapper.BrandBusinessDao;
+import com.ruoyi.benyun.mapper.BrandZoneDao;
 import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.stereotype.Component;
 
@@ -11,10 +12,13 @@ import java.util.List;
 public class BrandBusinessStat {
     @Autowired
     BrandBusinessDao brandBusinessDao;
+    @Autowired
+    BrandZoneDao zoneDao;
 
     public void continueInsert(){
-        List<String> ins = brandBusinessDao.selectIns();
-        System.out.println("已经处理:" + ins.size() + "个");
+//        List<String> ins = brandBusinessDao.selectIns();
+//        System.out.println("已经处理:" + ins.size() + "个");
+        List<String> ins = zoneDao.selectIns();
         List<BrandBusiness> brandBusinesses = brandBusinessDao.selectByStatistics(ins);
         int i = 0;
         int total = brandBusinesses.size();

+ 8 - 3
benyun-core/src/main/java/com/ruoyi/benyun/utils/statistics/BrandCityStat.java

@@ -1,5 +1,6 @@
 package com.ruoyi.benyun.utils.statistics;
 
+import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
 import com.ruoyi.benyun.entity.Brand;
 import com.ruoyi.benyun.entity.BrandCity;
 import com.ruoyi.benyun.mapper.BrandCityDao;
@@ -27,9 +28,13 @@ public class BrandCityStat {
     StoreDao storeDao;
 
     public void continueInsert(){
-        List<String> notIns = brandCityDao.selectIns();
-        System.out.println("已处理:" + notIns.size() + "个");
-        List<Brand> brands = brandDao.searchNotIns(notIns);
+//        List<String> ins = brandCityDao.selectIns();
+//        System.out.println("已处理:" + notIns.size() + "个");
+//        List<Brand> brands = brandDao.searchNotIns(notIns);
+        List<String> ins = brandZoneDao.selectIns();
+        QueryWrapper<Brand> queryWrapper = new QueryWrapper<>();
+        queryWrapper.in("brand_id",ins);
+        List<Brand> brands = brandDao.selectList(queryWrapper);
         int index = 1;
         int total = brands.size();
         for (Brand brand : brands){

+ 11 - 3
benyun-core/src/main/java/com/ruoyi/benyun/utils/statistics/BrandProvinceStat.java

@@ -1,7 +1,9 @@
 package com.ruoyi.benyun.utils.statistics;
 
+import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
 import com.ruoyi.benyun.entity.Brand;
 import com.ruoyi.benyun.entity.BrandProvince;
+import com.ruoyi.benyun.mapper.BrandCityDao;
 import com.ruoyi.benyun.mapper.BrandDao;
 import com.ruoyi.benyun.mapper.BrandProvinceDao;
 import org.springframework.beans.factory.annotation.Autowired;
@@ -19,11 +21,17 @@ public class BrandProvinceStat {
     BrandDao brandDao;
     @Autowired
     BrandProvinceDao brandProvinceDao;
+    @Autowired
+    BrandCityDao cityDao;
 
     public void continueInsert(){
-        List<String> notIns = brandProvinceDao.selectIns();
-        System.out.println("已处理:" + notIns.size() + "个");
-        List<Brand> brands = brandDao.searchNotIns(notIns);
+//        List<String> notIns = brandProvinceDao.selectIns();
+//        System.out.println("已处理:" + notIns.size() + "个");
+//        List<Brand> brands = brandDao.searchNotIns(notIns);
+        List<String> ins = cityDao.selectIns();
+        QueryWrapper<Brand> queryWrapper = new QueryWrapper<>();
+        queryWrapper.in("brand_id",ins);
+        List<Brand> brands = brandDao.selectList(queryWrapper);
         int index = 1;
         int total = brands.size();
         for (Brand brand : brands){

+ 7 - 3
benyun-core/src/main/java/com/ruoyi/benyun/utils/statistics/BrandStat.java

@@ -32,10 +32,14 @@ public class BrandStat {
 
     public void continueInsertPlus2(){
 //        查询已统计的品牌
-        List<String> notIns = brandStatisticsDao.searchStated();
-        System.out.println("已处理品牌:"+notIns.size()+"个");
+//        List<String> notIns = brandStatisticsDao.searchStated();
+//        System.out.println("已处理品牌:"+notIns.size()+"个");
 //        处理剩下的
-        List<Brand> brands = brandMapper.searchNotIns(notIns);
+//        List<Brand> brands = brandMapper.searchNotIns(notIns);
+        List<String> ins = brandZoneDao.selectIns();
+        QueryWrapper<Brand> queryWrapper = new QueryWrapper<>();
+        queryWrapper.in("brand_id",ins);
+        List<Brand> brands = brandMapper.selectList(queryWrapper);
         int index = 0;
         int total = brands.size();
         for (Brand brand : brands){

+ 3 - 3
benyun-core/src/main/resources/mapper/benyun/BrandBusinessMapper.xml

@@ -13,9 +13,9 @@
             `ddt_store_wd`
         WHERE brand_id <![CDATA[<>]]> ''
         AND brand_id IS NOT NULL
-        <if test="notIns != null">
-            <foreach collection="notIns" item="notIn" open="AND brand_id NOT IN (" separator="," close=")">
-                #{notIn,jdbcType=VARCHAR}
+        <if test="ins != null">
+            <foreach collection="ins" item="in" open="AND brand_id IN (" separator="," close=")">
+                #{in,jdbcType=VARCHAR}
             </foreach>
         </if>
         GROUP BY

+ 6 - 0
benyun-core/src/main/resources/mapper/benyun/BrandZone2Mapper.xml

@@ -142,4 +142,10 @@
             brand_name,
             addr_code;
     </select>
+    <select id="selectIns" resultType="java.lang.String">
+        SELECT DISTINCT
+            brand_id
+        FROM
+            `bl_brand_zone_distribution`;
+    </select>
 </mapper>