Ver Fonte

移植关注池、品牌库job

云殇忆 há 1 ano atrás
pai
commit
929a15291e
32 ficheiros alterados com 803 adições e 444 exclusões
  1. 0 196
      benyun-core/src/main/resources/application-prod.yaml
  2. 0 208
      ruoyi-admin/src/main/resources/application-prod.yml
  3. 21 0
      ruoyi-demo/src/main/java/com/ruoyi/demo/entity/BrandBusiness.java
  4. 28 5
      ruoyi-demo/src/main/java/com/ruoyi/demo/entity/BrandStatistics.java
  5. 30 5
      ruoyi-demo/src/main/java/com/ruoyi/demo/entity/BrandZone.java
  6. 2 0
      ruoyi-demo/src/main/java/com/ruoyi/demo/mapper/AttentionPoolDao.java
  7. 14 0
      ruoyi-demo/src/main/java/com/ruoyi/demo/mapper/BrandBusinessDao.java
  8. 18 0
      ruoyi-demo/src/main/java/com/ruoyi/demo/mapper/BrandCityDao.java
  9. 22 0
      ruoyi-demo/src/main/java/com/ruoyi/demo/mapper/BrandDao.java
  10. 1 0
      ruoyi-demo/src/main/java/com/ruoyi/demo/mapper/BrandEvolveDao.java
  11. 17 0
      ruoyi-demo/src/main/java/com/ruoyi/demo/mapper/BrandProvinceDao.java
  12. 17 0
      ruoyi-demo/src/main/java/com/ruoyi/demo/mapper/BrandStatisticsDao.java
  13. 21 0
      ruoyi-demo/src/main/java/com/ruoyi/demo/mapper/BrandZoneDao.java
  14. 1 0
      ruoyi-demo/src/main/java/com/ruoyi/demo/mapper/BusinessOpportunitiesDao.java
  15. 1 0
      ruoyi-demo/src/main/java/com/ruoyi/demo/mapper/FollowUpDao.java
  16. 5 5
      ruoyi-demo/src/main/java/com/ruoyi/demo/utils/statistics/AttentionPoolStat.java
  17. 7 7
      ruoyi-demo/src/main/java/com/ruoyi/demo/utils/statistics/BrandCityStat.java
  18. 2 2
      ruoyi-demo/src/main/java/com/ruoyi/demo/utils/statistics/BrandEvolveStat.java
  19. 5 5
      ruoyi-demo/src/main/java/com/ruoyi/demo/utils/statistics/BrandProvinceStat.java
  20. 5 4
      ruoyi-demo/src/main/java/com/ruoyi/demo/utils/statistics/BrandStat.java
  21. 7 7
      ruoyi-demo/src/main/java/com/ruoyi/demo/utils/statistics/BrandZoneStat.java
  22. 1 0
      ruoyi-demo/src/main/java/com/ruoyi/demo/utils/statistics/Together.java
  23. 14 0
      ruoyi-demo/src/main/resources/mapper/demo/AttentionPoolMapper.xml
  24. 32 0
      ruoyi-demo/src/main/resources/mapper/demo/BrandBusinessMapper.xml
  25. 65 0
      ruoyi-demo/src/main/resources/mapper/demo/BrandCity2Mapper.xml
  26. 117 0
      ruoyi-demo/src/main/resources/mapper/demo/BrandDao.xml
  27. 22 0
      ruoyi-demo/src/main/resources/mapper/demo/BrandEvolveMapper.xml
  28. 64 0
      ruoyi-demo/src/main/resources/mapper/demo/BrandProvince2Mapper.xml
  29. 97 0
      ruoyi-demo/src/main/resources/mapper/demo/BrandStatistics2Mapper.xml
  30. 151 0
      ruoyi-demo/src/main/resources/mapper/demo/BrandZone2Mapper.xml
  31. 8 0
      ruoyi-demo/src/main/resources/mapper/demo/BusinessOpportunitiesMapper.xml
  32. 8 0
      ruoyi-demo/src/main/resources/mapper/demo/FollowUpMapper.xml

+ 0 - 196
benyun-core/src/main/resources/application-prod.yaml

@@ -1,196 +0,0 @@
-server:
-  port: 8009
-  servlet:
-    context-path: /bailianAi
-    encoding:
-      enabled: true
-      force: true
-      charset: utf-8
---- # 数据源配置
-#spring:
-#  shardingsphere:
-#    datasource:
-#      names: ds1
-#      ds1:
-#        type: com.alibaba.druid.pool.DruidDataSource
-#        driver-class-name: com.mysql.cj.jdbc.Driver
-#        url: jdbc:mysql://localhost:3306/ddt?useUnicode=true&characterEncoding=UTF-8&useSSL=false&serverTimezone=Asia/Shanghai&allowPublicKeyRetrieval=true
-#        username: root
-#        password: Aa@1230
-#    sharding:
-#      tables:
-#        bl_wd_topological:
-#          actual-data-nodes: ds1.bl_wd_topological_$->{1..2}
-#          key-generator:
-#            column: center_wd_id
-#            type: SNOWFLAKE
-#          table-strategy:
-#            standard:
-#              sharding-column: center_wd_id
-#              precise-algorithm-class-name: com.benyun.core.utils.sharding.ConsistenceHashAlgorithm
-spring:
-  main:
-    allow-bean-definition-overriding: true
-
-  datasource:
-    type: com.zaxxer.hikari.HikariDataSource
-    # 动态数据源文档 https://www.kancloud.cn/tracy5546/dynamic-datasource/content
-    dynamic:
-      # 性能分析插件(有性能损耗 不建议生产环境使用)
-      p6spy: false
-      # 设置默认的数据源或者数据源组,默认值即为 master
-      primary: master
-      # 严格模式 匹配不到数据源则报错
-      strict: true
-      datasource:
-        # 主库数据源
-        master:
-          type: ${spring.datasource.type}
-          driverClassName: com.mysql.cj.jdbc.Driver
-          # jdbc 所有参数配置参考 https://lionli.blog.csdn.net/article/details/122018562
-          # rewriteBatchedStatements=true 批处理优化 大幅提升批量插入更新删除性能(对数据库有性能损耗 使用批量操作应考虑性能问题)
-          url: jdbc:mysql://192.168.0.31:3306/benyun-bailian?useUnicode=true&characterEncoding=utf8&zeroDateTimeBehavior=convertToNull&useSSL=true&serverTimezone=GMT%2B8&autoReconnect=true&rewriteBatchedStatements=true
-          username: root
-          password: LongX@321
-        # 从库数据源
-        slave:
-          lazy: true
-          type: ${spring.datasource.type}
-          driverClassName: com.mysql.cj.jdbc.Driver
-          url: jdbc:mysql://192.168.0.31:3306/benyun-bailian?useUnicode=true&characterEncoding=utf8&zeroDateTimeBehavior=convertToNull&useSSL=true&serverTimezone=GMT%2B8&autoReconnect=true&rewriteBatchedStatements=true
-          username: root
-          password: LongX@321
-      #        oracle:
-      #          type: ${spring.datasource.type}
-      #          driverClassName: oracle.jdbc.OracleDriver
-      #          url: jdbc:oracle:thin:@//localhost:1521/XE
-      #          username: ROOT
-      #          password: root
-      #          hikari:
-      #            connectionTestQuery: SELECT 1 FROM DUAL
-      #        postgres:
-      #          type: ${spring.datasource.type}
-      #          driverClassName: org.postgresql.Driver
-      #          url: jdbc:postgresql://localhost:5432/postgres?useUnicode=true&characterEncoding=utf8&useSSL=true&autoReconnect=true&reWriteBatchedInserts=true
-      #          username: root
-      #          password: root
-      #        sqlserver:
-      #          type: ${spring.datasource.type}
-      #          driverClassName: com.microsoft.sqlserver.jdbc.SQLServerDriver
-      #          url: jdbc:sqlserver://localhost:1433;DatabaseName=tempdb;SelectMethod=cursor;encrypt=false;rewriteBatchedStatements=true
-      #          username: SA
-      #          password: root
-      hikari:
-        # 最大连接池数量
-        maxPoolSize: 20
-        # 最小空闲线程数量
-        minIdle: 10
-        # 配置获取连接等待超时的时间
-        connectionTimeout: 30000
-        # 校验超时时间
-        validationTimeout: 5000
-        # 空闲连接存活最大时间,默认10分钟
-        idleTimeout: 600000
-        # 此属性控制池中连接的最长生命周期,值0表示无限生命周期,默认30分钟
-        maxLifetime: 1800000
-        # 连接测试query(配置检测连接是否有效)
-        connectionTestQuery: SELECT 1
-        # 多久检查一次连接的活性
-        keepaliveTime: 30000
-#  shardingsphere:
-#    datasource:
-#      names: ds1
-#      ds1:
-#        type: com.zaxxer.hikari.HikariDataSource
-#        driver-class-name: com.mysql.cj.jdbc.Driver
-#        jdbcUrl: jdbc:mysql://192.168.2.64:3306/bailian-ai-plus?useUnicode=true&characterEncoding=UTF-8&useSSL=false&serverTimezone=Asia/Shanghai&allowPublicKeyRetrieval=true
-#        username: root
-#        password: benyun
-#    sharding:
-#      tables:
-#        bl_wd_topological:
-#          actual-data-nodes: ds1.bl_wd_topological_$->{1..20}
-#          key-generator:
-#            column: center_wd_id
-#            type: SNOWFLAKE
-#          table-strategy:
-#            standard:
-#              sharding-column: center_wd_id
-#              precise-algorithm-class-name: com.benyun.core.utils.sharding.ConsistenceHashAlgorithm
-#        bl_topological_store_wd_statistics_category:
-#          actual-data-nodes: ds1.bl_topological_store_wd_statistics_category_$->{1..5}
-#          key-generator:
-#            column: center_wd_id
-#            type: SNOWFLAKE
-#          table-strategy:
-#            standard:
-#              sharding-column: center_wd_id
-#              precise-algorithm-class-name: com.benyun.core.utils.sharding.ConsistenceHashAlgorithm
-#        bl_topological_house_wd_statistics_data:
-#          actual-data-nodes: ds1.bl_topological_house_wd_statistics_data_$->{1..5}
-#          key-generator:
-#            column: center_wd_id
-#            type: SNOWFLAKE
-#          table-strategy:
-#            standard:
-#              sharding-column: center_wd_id
-#              precise-algorithm-class-name: com.benyun.core.utils.sharding.ConsistenceHashAlgorithm
-#        bl_topological_build_wd_statistics_category:
-#          actual-data-nodes: ds1.bl_topological_build_wd_statistics_category_$->{1..5}
-#          key-generator:
-#            column: center_wd_id
-#            type: SNOWFLAKE
-#          table-strategy:
-#            standard:
-#              sharding-column: center_wd_id
-#              precise-algorithm-class-name: com.benyun.core.utils.sharding.ConsistenceHashAlgorithm
-  #  redis: #redis配置
-  #    host: 192.168.2.64  #redis服务地址
-  #    database: 11
-  #    port: 6379       #redis连接端口
-  #    timeout: 5000ms  #连接超时时间
-  #    password: "123456"
-  #    pool:
-  #      minIdle: 1   #连接池中的最小空闲连接
-  #      maxIdle: 10  #连接池中的最大空闲连接
-  #      maxWait: 3   #连接池最大阻塞等待时间(使用负值表示没有限制)
-  #      maxActive: 8 #连接池最大连接数(使用赋值表示没有限制)
-  redis:
-    # 地址
-    host: 192.168.0.34
-    # 端口,默认为6379
-    port: 6379
-    # 数据库索引
-    database: 12
-    # 密码(如没有密码请注释掉)
-    password: lsf@12345
-    # 连接超时时间
-    timeout: 10s
-    # 是否开启ssl
-    ssl: false
-    lettuce:
-      pool:
-        min-idle: 0
-        max-active: 8
-        max-wait: -1
-        max-idle: 8
-        enabled: true
-
-
-#mybatis-plus配置
-mybatis-plus:
-  mapper-locations: classpath*:/*mapper/**/*.xml  #告诉mybatis数据库映射文件mapper.xml的位置
-#  configuration:
-#    log-impl: org.apache.ibatis.logging.stdout.StdOutImpl  #显示sql日志
-#  global-config:
-#    db-config:
-#      id-type: auto
-
-pagehelper:
-  helper-dialect: mysql
-  reasonable: true
-  support-methods-arguments: true
-  params: count=countSql
-
-clear:
-  BrandNames: 麦当劳,肯德基,益禾堂,华莱士,茶百道,书亦烧仙草,星巴克,三品王

+ 0 - 208
ruoyi-admin/src/main/resources/application-prod.yml

@@ -1,208 +0,0 @@
---- # 临时文件存储位置 避免临时文件被系统清理报错
-spring.servlet.multipart.location: /ruoyi/server/temp
-server:
-  port: 8080
-  servlet:
-    # 应用的访问路径
-    context-path: /jzyx
-
---- # 监控中心配置
-spring.boot.admin.client:
-  # 增加客户端开关
-  enabled: false
-  url: http://localhost:9090/admin
-  instance:
-    service-host-type: IP
-  username: ruoyi
-  password: 123456
-
---- # xxl-job 配置
-xxl.job:
-  # 执行器开关
-  enabled: true
-  # 调度中心地址:如调度中心集群部署存在多个地址则用逗号分隔。
-  admin-addresses: http://192.168.0.26:8080/xxl-job-admin
-  # 执行器通讯TOKEN:非空时启用
-  access-token: tokenixuemtuoekpjmixhddlhzssuquvvlxya
-  executor:
-    # 执行器AppName:执行器心跳注册分组依据;为空则关闭自动注册
-    appname: benyun-bailian
-    # 执行器端口号 执行器从9101开始往后写
-    port: 9106
-    # 执行器注册:默认IP:PORT
-    address:
-    # 执行器IP:默认自动获取IP
-    ip:
-    # 执行器运行日志文件存储磁盘路径
-    logpath: ./logs/xxl-job
-    # 执行器日志文件保存天数:大于3生效
-    logretentiondays: 30
-
---- # 数据源配置
-spring:
-  datasource:
-    type: com.zaxxer.hikari.HikariDataSource
-    # 动态数据源文档 https://www.kancloud.cn/tracy5546/dynamic-datasource/content
-    dynamic:
-      # 性能分析插件(有性能损耗 不建议生产环境使用)
-      p6spy: false
-      # 设置默认的数据源或者数据源组,默认值即为 master
-      primary: master
-      # 严格模式 匹配不到数据源则报错
-      strict: true
-      datasource:
-        # 主库数据源
-        master:
-          type: ${spring.datasource.type}
-          driverClassName: com.mysql.cj.jdbc.Driver
-          # jdbc 所有参数配置参考 https://lionli.blog.csdn.net/article/details/122018562
-          # rewriteBatchedStatements=true 批处理优化 大幅提升批量插入更新删除性能(对数据库有性能损耗 使用批量操作应考虑性能问题)
-          url: jdbc:mysql://192.168.0.31:3306/benyun-bailian?useUnicode=true&characterEncoding=utf8&zeroDateTimeBehavior=convertToNull&useSSL=true&serverTimezone=GMT%2B8&autoReconnect=true&rewriteBatchedStatements=true
-          username: root
-          password: LongX@321
-
-        # 从库数据源
-        slave:
-          lazy: true
-          type: ${spring.datasource.type}
-          driverClassName: com.mysql.cj.jdbc.Driver
-          url: jdbc:mysql://192.168.0.31:3306/benyun-bailian?useUnicode=true&characterEncoding=utf8&zeroDateTimeBehavior=convertToNull&useSSL=true&serverTimezone=GMT%2B8&autoReconnect=true&rewriteBatchedStatements=true
-          username: root
-          password: LongX@321
-#        oracle:
-#          type: ${spring.datasource.type}
-#          driverClassName: oracle.jdbc.OracleDriver
-#          url: jdbc:oracle:thin:@//localhost:1521/XE
-#          username: ROOT
-#          password: root
-#          hikari:
-#            connectionTestQuery: SELECT 1 FROM DUAL
-#        postgres:
-#          type: ${spring.datasource.type}
-#          driverClassName: org.postgresql.Driver
-#          url: jdbc:postgresql://localhost:5432/postgres?useUnicode=true&characterEncoding=utf8&useSSL=true&autoReconnect=true&reWriteBatchedInserts=true
-#          username: root
-#          password: root
-#        sqlserver:
-#          type: ${spring.datasource.type}
-#          driverClassName: com.microsoft.sqlserver.jdbc.SQLServerDriver
-#          url: jdbc:sqlserver://localhost:1433;DatabaseName=tempdb;SelectMethod=cursor;encrypt=false;rewriteBatchedStatements=true
-#          username: SA
-#          password: root
-      hikari:
-        # 最大连接池数量
-        maxPoolSize: 20
-        # 最小空闲线程数量
-        minIdle: 10
-        # 配置获取连接等待超时的时间
-        connectionTimeout: 30000
-        # 校验超时时间
-        validationTimeout: 5000
-        # 空闲连接存活最大时间,默认10分钟
-        idleTimeout: 600000
-        # 此属性控制池中连接的最长生命周期,值0表示无限生命周期,默认30分钟
-        maxLifetime: 1800000
-        # 连接测试query(配置检测连接是否有效)
-        connectionTestQuery: SELECT 1
-        # 多久检查一次连接的活性
-        keepaliveTime: 30000
-  redis:
-    # 地址
-    host: 192.168.0.34
-    # 端口,默认为6379
-    port: 6379
-    # 数据库索引
-    database: 12
-    # 密码(如没有密码请注释掉)
-    password: lsf@12345
-    # 连接超时时间
-    timeout: 10s
-    # 是否开启ssl
-    ssl: false
-    lettuce:
-      pool:
-        min-idle: 0
-        max-active: 12
-        max-wait: -1
-        max-idle: 8
-        enabled: true
-
-#redisson:
-#  # redis key前缀
-#  keyPrefix:
-#  # 线程池数量
-#  threads: 16
-#  # Netty线程池数量
-#  nettyThreads: 32
-##  singleServerConfig:
-#  # 单节点配置
-#  clusterServersConfig:
-#    # 客户端名称
-#    clientName: ${ruoyi.name}
-#    # 最小空闲连接数
-#    connectionMinimumIdleSize: 32
-#    # 连接池大小
-#    connectionPoolSize: 64
-#    # 连接空闲超时,单位:毫秒
-#    idleConnectionTimeout: 10000
-#    # 命令等待超时,单位:毫秒
-#    timeout: 6000
-#    # 发布和订阅连接池大小
-#    subscriptionConnectionPoolSize: 50
-
-
-
---- # mail 邮件发送
-mail:
-  enabled: false
-  host: smtp.163.com
-  port: 465
-  # 是否需要用户名密码验证
-  auth: true
-  # 发送方,遵循RFC-822标准
-  from: xxx@163.com
-  # 用户名(注意:如果使用foxmail邮箱,此处user为qq号)
-  user: xxx@163.com
-  # 密码(注意,某些邮箱需要为SMTP服务单独设置密码,详情查看相关帮助)
-  pass: xxxxxxxxxx
-  # 使用 STARTTLS安全连接,STARTTLS是对纯文本通信协议的扩展。
-  starttlsEnable: true
-  # 使用SSL安全连接
-  sslEnable: true
-  # SMTP超时时长,单位毫秒,缺省值不超时
-  timeout: 0
-  # Socket连接超时值,单位毫秒,缺省值不超时
-  connectionTimeout: 0
-
---- # sms 短信 支持 阿里云 腾讯云 云片 等等各式各样的短信服务商
-# https://wind.kim/doc/start 文档地址 各个厂商可同时使用
-sms:
-  # 阿里云 dysmsapi.aliyuncs.com
-  alibaba:
-    #请求地址 默认为 dysmsapi.aliyuncs.com 如无特殊改变可以不用设置
-    requestUrl: dysmsapi.aliyuncs.com
-    #阿里云的accessKey
-    accessKeyId: xxxxxxx
-    #阿里云的accessKeySecret
-    accessKeySecret: xxxxxxx
-    #短信签名
-    signature: 测试
-  tencent:
-    #请求地址默认为 sms.tencentcloudapi.com 如无特殊改变可不用设置
-    requestUrl: sms.tencentcloudapi.com
-    #腾讯云的accessKey
-    accessKeyId: xxxxxxx
-    #腾讯云的accessKeySecret
-    accessKeySecret: xxxxxxx
-    #短信签名
-    signature: 测试
-    #短信sdkAppId
-    sdkAppId: appid
-    #地域信息默认为 ap-guangzhou 如无特殊改变可不用设置
-    territory: ap-guangzhou
-
-pagehelper:
-  helper-dialect: mysql
-  reasonable: true
-  support-methods-arguments: true
-  params: count=countSql

+ 21 - 0
ruoyi-demo/src/main/java/com/ruoyi/demo/entity/BrandBusiness.java

@@ -0,0 +1,21 @@
+package com.ruoyi.demo.entity;
+
+import com.baomidou.mybatisplus.annotation.TableField;
+import com.baomidou.mybatisplus.annotation.TableName;
+import lombok.Data;
+
+@Data
+@TableName("bl_brand_business_statistics")
+public class BrandBusiness {
+    @TableField("brand_id")
+    private String brandId;
+
+    @TableField("brand_name")
+    private String brandName;
+
+    @TableField("business_status")
+    private String businessStatus;
+
+    @TableField("count")
+    private Integer count;
+}

+ 28 - 5
ruoyi-demo/src/main/java/com/ruoyi/demo/entity/BrandStatistics.java

@@ -1,5 +1,6 @@
 package com.ruoyi.demo.entity;
 
+import com.baomidou.mybatisplus.annotation.TableField;
 import com.baomidou.mybatisplus.annotation.TableName;
 import com.fasterxml.jackson.annotation.JsonFormat;
 import com.fasterxml.jackson.databind.annotation.JsonDeserialize;
@@ -13,16 +14,38 @@ import java.time.LocalDateTime;
 
 @Data
 @TableName("bl_brand_statistics")
-public class BrandStatistics implements Serializable {
+public class BrandStatistics {
+    @TableField("stat_id")
+    private String statId;
+
+    @TableField("brand_id")
     private String brandId;
+
+    @TableField("brand_name")
     private String brandName;
+
+    @TableField("cover_province_count")
     private int coverProvinceCount;
+
+    @TableField("cover_city_count")
     private int coverCityCount;
+
+    @TableField("cover_zone_count")
     private int coverZoneCount;
-    private int businessCount;
-    private int pauseBusinessCount;
-    private int noBusinessCount;
-    private int total;
+
+    @TableField("business_count")
+    private Integer businessCount;
+
+    @TableField("pause_business_count")
+    private Integer pauseBusinessCount;
+
+    @TableField("no_business_count")
+    private Integer noBusinessCount;
+
+    @TableField("total")
+    private Integer total;
+
+    @TableField("update_time")
     @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
     @JsonSerialize(using = LocalDateTimeSerializer.class)
     @JsonDeserialize(using = LocalDateTimeDeserializer.class)

+ 30 - 5
ruoyi-demo/src/main/java/com/ruoyi/demo/entity/BrandZone.java

@@ -1,5 +1,6 @@
 package com.ruoyi.demo.entity;
 
+import com.baomidou.mybatisplus.annotation.TableField;
 import com.baomidou.mybatisplus.annotation.TableName;
 import com.fasterxml.jackson.annotation.JsonFormat;
 import com.fasterxml.jackson.databind.annotation.JsonDeserialize;
@@ -9,22 +10,46 @@ import com.fasterxml.jackson.datatype.jsr310.ser.LocalDateTimeSerializer;
 import lombok.Data;
 
 import java.io.Serializable;
+import java.math.BigDecimal;
 import java.time.LocalDateTime;
 
 @Data
 @TableName("bl_brand_zone_distribution")
-public class BrandZone implements Serializable {
+public class BrandZone {
+    @TableField("dis_id")
     private String disId;
+
+    @TableField("brand_id")
     private String brandId;
-    private String industryCode;
+
+    @TableField("brand_name")
+    private String brandName;
+
+    @TableField("addr_code")
     private String addrCode;
+
+    @TableField("province")
     private String province;
+
+    @TableField("city")
     private String city;
+
+    @TableField("zone")
     private String zone;
-    private Float lat;
-    private Float lng;
+
+    @TableField("lat")
+    private BigDecimal lat;
+
+    @TableField("lng")
+    private BigDecimal lng;
+
+    @TableField("dis_count")
     private Integer disCount;
-    private Float avgScore;
+
+    @TableField("avg_score")
+    private BigDecimal avgScore;
+
+    @TableField("update_time")
     @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
     @JsonSerialize(using = LocalDateTimeSerializer.class)
     @JsonDeserialize(using = LocalDateTimeDeserializer.class)

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

@@ -16,4 +16,6 @@ public interface AttentionPoolDao extends BaseMapper<AttentionPool> {
     AttentionPool searchByAttentionIdAndUserId(@Param("attentionId") String attentionId, @Param("userId") String userId);
     AttentionPool searchByBrandIdOrWdIdAndUserId(@Param("brandId") String brandId, @Param("wdId") String wdId, @Param("userId") String userId);
     int deleteByBrandIdOrWdIdAndUserId(@Param("brandId") String brandId, @Param("wdId") String wdId, @Param("userId") String userId);
+    Integer selectCount(@Param("userId") String userId);
+    List<String> selectAllUser();
 }

+ 14 - 0
ruoyi-demo/src/main/java/com/ruoyi/demo/mapper/BrandBusinessDao.java

@@ -0,0 +1,14 @@
+package com.ruoyi.demo.mapper;
+
+import com.baomidou.mybatisplus.core.mapper.BaseMapper;
+import com.ruoyi.demo.entity.BrandBusiness;
+import org.apache.ibatis.annotations.Mapper;
+import org.apache.ibatis.annotations.Param;
+
+import java.util.List;
+
+@Mapper
+public interface BrandBusinessDao extends BaseMapper<BrandBusiness> {
+    List<BrandBusiness> selectByStatistics(@Param("ins") List<String> ins);
+    List<String> selectIns();
+}

+ 18 - 0
ruoyi-demo/src/main/java/com/ruoyi/demo/mapper/BrandCityDao.java

@@ -0,0 +1,18 @@
+package com.ruoyi.demo.mapper;
+
+import com.baomidou.mybatisplus.core.mapper.BaseMapper;
+import com.ruoyi.demo.entity.BrandCity;
+import org.apache.ibatis.annotations.Mapper;
+import org.apache.ibatis.annotations.Param;
+
+import java.util.List;
+
+
+@Mapper
+public interface BrandCityDao extends BaseMapper<BrandCity> {
+    List<BrandCity> searchByBrandId(String brandId);
+    List<BrandCity> searchByBrandIdOrderByCity(@Param("cities") String brandId,@Param("cities") String month);
+    void insertAll(@Param("cities") List<BrandCity> cities);
+    List<String> selectIns();
+    Integer selectCountByBrandId(String brandId);
+}

+ 22 - 0
ruoyi-demo/src/main/java/com/ruoyi/demo/mapper/BrandDao.java

@@ -0,0 +1,22 @@
+package com.ruoyi.demo.mapper;
+
+import com.baomidou.mybatisplus.core.mapper.BaseMapper;
+import com.ruoyi.demo.entity.Brand;
+import org.apache.ibatis.annotations.Mapper;
+import org.apache.ibatis.annotations.Param;
+
+import java.util.List;
+
+@Mapper
+public interface BrandDao extends BaseMapper<Brand> {
+    List<Brand> searchAll();
+    List<Brand> searchList(String text);
+    Brand searchById(String brandId);
+    List<Brand> searchByIndustryCodeList(String brandId, String industryCode);
+    void updatePerCapitaConsumptionByBrandId(String brandId);
+    void updateScoreByBrandId(String brandId);
+    void updateCommentCountByBrandId(String brandId);
+    void updateIndexScoreByBrandId(String brandId);
+    List<Brand> searchNotIns(@Param("notIns") List<String> notIns);
+    List<String> selectAllId();
+}

+ 1 - 0
ruoyi-demo/src/main/java/com/ruoyi/demo/mapper/BrandEvolveDao.java

@@ -11,4 +11,5 @@ import java.util.List;
 @Mapper
 public interface BrandEvolveDao extends BaseMapper<BrandEvolve> {
     List<BrandEvolveVo> selectByMulti(@Param("addrCodes") List<String> addrCodes, @Param("typeCodes") List<String> typeCodes, @Param("brandId") String brandId);
+    List<BrandEvolve> selectAllByStatistics();
 }

+ 17 - 0
ruoyi-demo/src/main/java/com/ruoyi/demo/mapper/BrandProvinceDao.java

@@ -0,0 +1,17 @@
+package com.ruoyi.demo.mapper;
+
+import com.baomidou.mybatisplus.core.mapper.BaseMapper;
+import com.ruoyi.demo.entity.BrandProvince;
+import org.apache.ibatis.annotations.Mapper;
+import org.apache.ibatis.annotations.Param;
+
+import java.util.List;
+
+@Mapper
+public interface BrandProvinceDao extends BaseMapper<BrandProvince> {
+    List<BrandProvince> searchByBrandId(String brandId);
+    List<BrandProvince> searchByBrandIdOrderByProvince(String brandId,String month);
+    void insertAll(@Param("provinces") List<BrandProvince> provinces);
+    List<String> selectIns();
+    Integer selectCountByBrandId(String brandId);
+}

+ 17 - 0
ruoyi-demo/src/main/java/com/ruoyi/demo/mapper/BrandStatisticsDao.java

@@ -0,0 +1,17 @@
+package com.ruoyi.demo.mapper;
+
+import com.baomidou.mybatisplus.core.mapper.BaseMapper;
+import com.ruoyi.demo.entity.BrandStatistics;
+import org.apache.ibatis.annotations.Mapper;
+import org.apache.ibatis.annotations.Param;
+
+import java.util.List;
+
+@Mapper
+public interface BrandStatisticsDao extends BaseMapper<BrandStatistics> {
+    BrandStatistics searchByBrandId(String brandId);
+    List<BrandStatistics> searchList();
+    void insertAll(@Param("brandStatistics") List<BrandStatistics> brandStatistics);
+    List<String> searchStated();
+    BrandStatistics searchByStatistics(@Param("brandId") String brandId);
+}

+ 21 - 0
ruoyi-demo/src/main/java/com/ruoyi/demo/mapper/BrandZoneDao.java

@@ -0,0 +1,21 @@
+package com.ruoyi.demo.mapper;
+
+import com.baomidou.mybatisplus.core.mapper.BaseMapper;
+import com.ruoyi.demo.entity.BrandZone;
+import org.apache.ibatis.annotations.Mapper;
+import org.apache.ibatis.annotations.Param;
+
+import java.util.List;
+
+@Mapper
+public interface BrandZoneDao extends BaseMapper<BrandZone> {
+    List<BrandZone> searchByBrandId(String brandId);
+    List<BrandZone> searchByMulti(List<String> addrCodes,List<String> industryCodes,List<String> brandIds);
+    void insertAll(@Param("brandZones") List<BrandZone> brandZones);
+    Integer searchProvinceCountByBrandId(String brandId);
+    Integer searchCityCountByBrandId(String brandId);
+    Integer searchZoneCountByBrandId(String brandId);
+    List<String> searchStatedBrandIds(@Param("month") String month);
+    List<BrandZone> searchQuicklyStatistics(@Param("ins") List<String> ins);
+    List<String> selectIns();
+}

+ 1 - 0
ruoyi-demo/src/main/java/com/ruoyi/demo/mapper/BusinessOpportunitiesDao.java

@@ -14,4 +14,5 @@ public interface BusinessOpportunitiesDao extends BaseMapper<BusinessOpportuniti
     int deleteByAttentionIdAndUserId(@Param("attentionId")String attentionId, @Param("userId") String userId);
     List<BusinessOpportunitiesClue> searchAllByMulti(@Param("text") String text, @Param("userId") String userId);
     int updateFollowUpCountByClueIdAndUserId(@Param("clueId") String clueId, @Param("count") Integer count , @Param("userId") String userId);
+    Integer selectCount(@Param("userId") String userId);
 }

+ 1 - 0
ruoyi-demo/src/main/java/com/ruoyi/demo/mapper/FollowUpDao.java

@@ -13,4 +13,5 @@ public interface FollowUpDao extends BaseMapper<FollowUpRecord> {
     List<FollowUpRecord> searchAllByClueIdAndUserId(@Param("clueId") String clueId, @Param("userId") String userId);
     int deleteByClueIdAndUserId(@Param("clueId") String clueId, @Param("userId") String userId);
     List<FollowUpRecord> searchAllByMulti(@Param("clueId") String clueId,@Param("text") String text, @Param("startTime") String startTime, @Param("endTime") String endTime, @Param("userId") String userId);
+    Integer selectCountByWay(@Param("userId") String userId, @Param("way") String way);
 }

+ 5 - 5
ruoyi-demo/src/main/java/com/ruoyi/demo/utils/statistics/AttentionPoolStat.java

@@ -1,10 +1,10 @@
 package com.ruoyi.demo.utils.statistics;
 
-import com.ruoyi.benyun.entity.AttentionPoolStatistics;
-import com.ruoyi.benyun.mapper.AttentionPoolDao;
-import com.ruoyi.benyun.mapper.AttentionPoolStatisticsDao;
-import com.ruoyi.benyun.mapper.BusinessOpportunitiesDao;
-import com.ruoyi.benyun.mapper.FollowUpDao;
+import com.ruoyi.demo.entity.AttentionPoolStatistics;
+import com.ruoyi.demo.mapper.AttentionPoolDao;
+import com.ruoyi.demo.mapper.AttentionPoolStatisticsDao;
+import com.ruoyi.demo.mapper.BusinessOpportunitiesDao;
+import com.ruoyi.demo.mapper.FollowUpDao;
 import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.stereotype.Component;
 

+ 7 - 7
ruoyi-demo/src/main/java/com/ruoyi/demo/utils/statistics/BrandCityStat.java

@@ -1,12 +1,12 @@
 package com.ruoyi.demo.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;
-import com.ruoyi.benyun.mapper.BrandDao;
-import com.ruoyi.benyun.mapper.BrandZoneDao;
-import com.ruoyi.benyun.mapper.StoreDao;
+import com.ruoyi.demo.entity.Brand;
+import com.ruoyi.demo.entity.BrandCity;
+import com.ruoyi.demo.mapper.BrandCityDao;
+import com.ruoyi.demo.mapper.BrandDao;
+import com.ruoyi.demo.mapper.BrandZoneDao;
+import com.ruoyi.demo.mapper.StoreWdDao;
 import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.stereotype.Component;
 
@@ -25,7 +25,7 @@ public class BrandCityStat {
     @Autowired
     BrandZoneDao brandZoneDao;
     @Autowired
-    StoreDao storeDao;
+    StoreWdDao storeDao;
 
     public void continueInsert(){
 //        List<String> ins = brandCityDao.selectIns();

+ 2 - 2
ruoyi-demo/src/main/java/com/ruoyi/demo/utils/statistics/BrandEvolveStat.java

@@ -1,7 +1,7 @@
 package com.ruoyi.demo.utils.statistics;
 
-import com.ruoyi.benyun.entity.BrandEvolve;
-import com.ruoyi.benyun.mapper.BrandEvolveDao;
+import com.ruoyi.demo.entity.BrandEvolve;
+import com.ruoyi.demo.mapper.BrandEvolveDao;
 import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.stereotype.Component;
 

+ 5 - 5
ruoyi-demo/src/main/java/com/ruoyi/demo/utils/statistics/BrandProvinceStat.java

@@ -1,11 +1,11 @@
 package com.ruoyi.demo.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 com.ruoyi.demo.entity.Brand;
+import com.ruoyi.demo.entity.BrandProvince;
+import com.ruoyi.demo.mapper.BrandCityDao;
+import com.ruoyi.demo.mapper.BrandDao;
+import com.ruoyi.demo.mapper.BrandProvinceDao;
 import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.stereotype.Component;
 

+ 5 - 4
ruoyi-demo/src/main/java/com/ruoyi/demo/utils/statistics/BrandStat.java

@@ -1,9 +1,10 @@
 package com.ruoyi.demo.utils.statistics;
 
 import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
-import com.ruoyi.benyun.entity.Brand;
-import com.ruoyi.benyun.entity.BrandBusiness;
-import com.ruoyi.benyun.entity.BrandStatistics;
+import com.ruoyi.demo.entity.Brand;
+import com.ruoyi.demo.entity.BrandBusiness;
+import com.ruoyi.demo.entity.BrandStatistics;
+import com.ruoyi.demo.mapper.*;
 import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.stereotype.Component;
 
@@ -19,7 +20,7 @@ public class BrandStat {
     @Autowired
     BrandZoneDao brandZoneDao;
     @Autowired
-    StoreDao storeDao;
+    StoreWdDao storeDao;
     @Autowired
     BrandStatisticsDao brandStatisticsDao;
     @Autowired

+ 7 - 7
ruoyi-demo/src/main/java/com/ruoyi/demo/utils/statistics/BrandZoneStat.java

@@ -1,12 +1,12 @@
 package com.ruoyi.demo.utils.statistics;
 
 import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
-import com.ruoyi.benyun.entity.AddrCategory;
-import com.ruoyi.benyun.entity.BrandZone;
-import com.ruoyi.benyun.mapper.AddrCategoryDao;
-import com.ruoyi.benyun.mapper.BrandDao;
-import com.ruoyi.benyun.mapper.BrandZoneDao;
-import com.ruoyi.benyun.mapper.StoreDao;
+import com.ruoyi.demo.entity.AddrCategory;
+import com.ruoyi.demo.entity.BrandZone;
+import com.ruoyi.demo.mapper.AddrCategoryDao;
+import com.ruoyi.demo.mapper.BrandDao;
+import com.ruoyi.demo.mapper.BrandZoneDao;
+import com.ruoyi.demo.mapper.StoreWdDao;
 import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.stereotype.Component;
 
@@ -18,7 +18,7 @@ import java.util.UUID;
 @Component
 public class BrandZoneStat {
     @Autowired
-    StoreDao storeDao;
+    StoreWdDao storeDao;
     @Autowired
     BrandZoneDao brandZoneDao;
     @Autowired

+ 1 - 0
ruoyi-demo/src/main/java/com/ruoyi/demo/utils/statistics/Together.java

@@ -1,5 +1,6 @@
 package com.ruoyi.demo.utils.statistics;
 
+import com.ruoyi.demo.mapper.*;
 import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.stereotype.Component;
 

+ 14 - 0
ruoyi-demo/src/main/resources/mapper/demo/AttentionPoolMapper.xml

@@ -76,4 +76,18 @@
             and attention_id = #{attentionId}
         </trim>
     </select>
+    <select id="selectAllUser" resultType="java.lang.String">
+        SELECT DISTINCT
+            user_id
+        FROM
+            `bl_attention_pool`;
+    </select>
+    <select id="selectCount" resultType="java.lang.Integer">
+        SELECT
+            COUNT(*) count
+        FROM
+            `bl_attention_pool`
+        WHERE
+            user_id = #{userId}
+    </select>
 </mapper>

+ 32 - 0
ruoyi-demo/src/main/resources/mapper/demo/BrandBusinessMapper.xml

@@ -0,0 +1,32 @@
+<?xml version="1.0" encoding="UTF-8" ?>
+<!DOCTYPE mapper
+        PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
+        "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
+<mapper namespace="com.ruoyi.demo.mapper.BrandBusinessDao">
+    <select id="selectByStatistics" resultType="com.ruoyi.demo.entity.BrandBusiness">
+        SELECT
+            brand_id,
+            brand_name,
+            business_status,
+            COUNT(*) count
+        FROM
+            `ddt_store_wd`
+        WHERE brand_id <![CDATA[<>]]> ''
+        AND brand_id IS NOT NULL
+        <if test="ins != null">
+            <foreach collection="ins" item="in" open="AND brand_id IN (" separator="," close=")">
+                #{in,jdbcType=VARCHAR}
+            </foreach>
+        </if>
+        GROUP BY
+            brand_id,
+            brand_name,
+            business_status;
+    </select>
+    <select id="selectIns" resultType="java.lang.String">
+        SELECT DISTINCT
+            brand_id
+        FROM
+            `bl_brand_business_statistics`
+    </select>
+</mapper>

+ 65 - 0
ruoyi-demo/src/main/resources/mapper/demo/BrandCity2Mapper.xml

@@ -0,0 +1,65 @@
+<?xml version="1.0" encoding="UTF-8" ?>
+<!DOCTYPE mapper
+    PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
+    "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
+<mapper namespace="com.ruoyi.demo.mapper.BrandCityDao">
+    <resultMap type="com.ruoyi.demo.entity.BrandCity" id="BrandCityResult">
+        <result property="disId" column="dis_id"/>
+        <result property="brandId" column="brand_id"/>
+        <result property="addrCode" column="addr_code"/>
+        <result property="city" column="city"/>
+        <result property="lat" column="lat"/>
+        <result property="lng" column="lng"/>
+        <result property="disCount" column="dis_count"/>
+        <result property="updateTime" column="update_time"/>
+    </resultMap>
+    <insert id="insertAll">
+        insert into `bl_brand_city_distribution` values
+        <foreach collection="cities" item="city" separator=",">
+            (#{city.disId},#{city.brandId},#{city.addrCode},#{city.city},#{city.lat},#{city.lng},#{city.disCount},#{city.updateTime})
+        </foreach>
+    </insert>
+    <select id="searchByBrandId" resultMap="BrandCityResult">
+        select * from bl_brand_city_distribution where brand_id = #{brandId}
+    </select>
+    <select id="searchByBrandIdOrderByCity" resultMap="BrandCityResult">
+        SELECT
+            category.addr_code,
+            category.city,
+            lat_gd lat,
+            lng_gd lng,
+            dis_count
+        FROM
+            `ddt_addr_category` category,
+            (
+                SELECT
+                    city,
+                    SUM(dis_count) dis_count
+                FROM
+                    `bl_brand_zone_distribution`
+                WHERE
+                    brand_id = #{brandId}
+                AND DATE_FORMAT(update_time, '%Y-%m') = #{month}
+                GROUP BY
+                    city
+            ) c
+        WHERE
+            category.city = c.city
+          AND district = ''
+          AND c.city <![CDATA[<>]]> ''
+    </select>
+    <select id="selectIns" resultType="java.lang.String">
+        SELECT DISTINCT
+            brand_id
+        FROM
+            `bl_brand_city_distribution`;
+    </select>
+    <select id="selectCountByBrandId" resultType="java.lang.Integer">
+        SELECT
+            COUNT(*) cover_city_count
+        FROM
+            `bl_brand_city_distribution`
+        WHERE
+            brand_id = #{brandId}
+    </select>
+</mapper>

+ 117 - 0
ruoyi-demo/src/main/resources/mapper/demo/BrandDao.xml

@@ -0,0 +1,117 @@
+<?xml version="1.0" encoding="UTF-8" ?>
+<!DOCTYPE mapper
+        PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
+        "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
+<mapper namespace="com.ruoyi.demo.mapper.BrandDao">
+    <resultMap type="com.ruoyi.demo.entity.Brand" id="BrandResult">
+        <result property="brandId" column="brand_id"/>
+        <result property="brandImg" column="brand_img"/>
+        <result property="brandName" column="brand_name"/>
+        <result property="industryCode" column="industry_code"/>
+        <result property="enterpriseUsci" column="enterprise_usci"/>
+        <result property="perCapitaConsumption" column="per_capita_consumption"/>
+        <result property="commentCount" column="comment_count"/>
+        <result property="score" column="score"/>
+        <result property="menuInfo" column="menu_info"/>
+        <result property="indexScore" column="index_score"/>
+        <result property="createDate" column="create_date"/>
+        <result property="audit" column="audit"/>
+        <result property="collectPerson" column="collect_person"/>
+        <result property="collectTime" column="collect_time"/>
+        <result property="enterTime" column="enter_time"/>
+        <result property="updateTime" column="update_time"/>
+        <result property="hash" column="hash"/>
+    </resultMap>
+    <select id="searchAll" resultMap="BrandResult">
+        select * from ddt_brand
+    </select>
+    <update id="updatePerCapitaConsumptionByBrandId">
+        UPDATE `ddt_brand`
+        SET per_capita_consumption = (
+            SELECT
+                ROUND(
+                            SUM(per_capita_consumption) / COUNT(*),
+                            2
+                    )
+            FROM
+                `ddt_store_wd`
+            WHERE
+                brand_id = #{brandId}
+        )
+        WHERE
+            brand_id = #{brandId};
+    </update>
+    <update id="updateScoreByBrandId">
+        UPDATE `ddt_brand`
+        SET score = (
+            SELECT
+                ROUND(SUM(score) / COUNT(*), 2)
+            FROM
+                `ddt_store_wd`
+            WHERE
+                brand_id = #{brandId}
+        )
+        WHERE
+            brand_id = #{brandId};
+    </update>
+    <update id="updateCommentCountByBrandId">
+        UPDATE `ddt_brand`
+        SET comment_count = (
+            SELECT
+                FLOOR(
+                        SUM(comment_count) / COUNT(*)
+                    )
+            FROM
+                `ddt_store_wd`
+            WHERE
+                brand_id = #{brandId}
+        )
+        WHERE
+            brand_id = #{brandId};
+    </update>
+    <update id="updateIndexScoreByBrandId">
+        UPDATE `ddt_brand`
+        SET index_score = (
+            SELECT
+                ROUND(
+                            SUM(index_score) / COUNT(*),
+                            2
+                    )
+            FROM
+                `ddt_store_wd`
+            WHERE
+                brand_id = #{brandId}
+        )
+        WHERE
+            brand_id = #{brandId};
+    </update>
+    <select id="searchList" resultMap="BrandResult">
+        select * from ddt_brand where brand_name like concat("%",#{text},"%")
+    </select>
+    <select id="searchById" resultMap="BrandResult">
+        select * from ddt_brand where brand_id = #{brandId}
+    </select>
+    <select id="searchByIndustryCodeList" resultMap="BrandResult">
+        select * from ddt_brand where industry_code = #{industryCode} and brand_id <![CDATA[<>]]> #{brandId}
+    </select>
+    <select id="searchNotIns" resultMap="BrandResult">
+        SELECT
+            *
+        FROM
+            `ddt_brand`
+        <where>
+            <if test="notIns != null">
+                <foreach collection="notIns" item="ontIn" open="brand_id NOT IN (" separator="," close=")">
+                    #{ontIn,jdbcType=VARCHAR}
+                </foreach>
+            </if>
+        </where>
+    </select>
+    <select id="selectAllId" resultType="java.lang.String">
+        SELECT DISTINCT
+            brand_id
+        FROM
+            `ddt_brand`
+        WHERE show_delete = 0;
+    </select>
+</mapper>

+ 22 - 0
ruoyi-demo/src/main/resources/mapper/demo/BrandEvolveMapper.xml

@@ -31,4 +31,26 @@
         ORDER BY
             time;
     </select>
+    <select id="selectAllByStatistics" resultType="com.ruoyi.demo.entity.BrandEvolve">
+        SELECT
+            brand_id,
+            brand_name,
+            addr_code,
+            type_code_by,
+            COUNT(*) count,
+	        DATE_FORMAT(collect_time, '%Y-%m-%d') stat_time
+        FROM
+            `ddt_store_wd` dsw,
+            `ddt_wd_info` dwi
+        WHERE
+            dsw.wd_id = dwi.wd_id
+        GROUP BY
+            brand_id,
+            brand_name,
+            addr_code,
+            type_code_by,
+            stat_time
+        ORDER BY
+            stat_time;
+    </select>
 </mapper>

+ 64 - 0
ruoyi-demo/src/main/resources/mapper/demo/BrandProvince2Mapper.xml

@@ -0,0 +1,64 @@
+<?xml version="1.0" encoding="UTF-8" ?>
+<!DOCTYPE mapper
+    PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
+    "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
+<mapper namespace="com.ruoyi.demo.mapper.BrandProvinceDao">
+    <resultMap type="com.ruoyi.demo.entity.BrandProvince" id="BrandProvinceResult">
+        <result property="disId" column="dis_id"/>
+        <result property="brandId" column="brand_id"/>
+        <result property="addrCode" column="addr_code"/>
+        <result property="province" column="province"/>
+        <result property="lat" column="lat"/>
+        <result property="lng" column="lng"/>
+        <result property="disCount" column="dis_count"/>
+        <result property="updateTime" column="update_time"/>
+    </resultMap>
+    <insert id="insertAll">
+        insert into `bl_brand_province_distribution` values
+        <foreach collection="provinces" item="prov" separator=",">
+            (#{prov.disId},#{prov.brandId},#{prov.addrCode},#{prov.province},#{prov.lat},#{prov.lng},#{prov.disCount},#{prov.updateTime})
+        </foreach>
+    </insert>
+    <select id="searchByBrandId" resultMap="BrandProvinceResult">
+        select * from bl_brand_province_distribution where brand_id = #{brandId}
+    </select>
+    <select id="searchByBrandIdOrderByProvince" resultMap="BrandProvinceResult">
+        SELECT
+            category.addr_code,
+            category.province,
+            lat_gd lat,
+            lng_gd lng,
+            dis_count
+        FROM
+            `ddt_addr_category` category,
+            (
+                SELECT
+                    province,
+                    SUM(dis_count) dis_count
+                FROM
+                    `bl_brand_zone_distribution`
+                WHERE
+                    brand_id = #{brandId}
+                AND DATE_FORMAT(update_time, '%Y-%m') = #{month}
+                GROUP BY
+                    province
+            ) p
+        WHERE
+            category.province = p.province
+          AND city = ''
+    </select>
+    <select id="selectIns" resultType="java.lang.String">
+        SELECT DISTINCT
+            brand_id
+        FROM
+            `bl_brand_province_distribution`;
+    </select>
+    <select id="selectCountByBrandId" resultType="java.lang.Integer">
+        SELECT
+            COUNT(*) cover_province_count
+        FROM
+            `bl_brand_province_distribution`
+        WHERE
+            brand_id = #{brandId}
+    </select>
+</mapper>

+ 97 - 0
ruoyi-demo/src/main/resources/mapper/demo/BrandStatistics2Mapper.xml

@@ -0,0 +1,97 @@
+<?xml version="1.0" encoding="UTF-8" ?>
+<!DOCTYPE mapper
+    PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
+    "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
+<mapper namespace="com.ruoyi.demo.mapper.BrandStatisticsDao">
+    <resultMap type="com.ruoyi.demo.entity.BrandStatistics" id="BrandStatisticsResult">
+        <result property="brandId" column="brand_id"/>
+        <result property="brandName" column="brand_name"/>
+        <result property="coverProvinceCount" column="cover_province_count"/>
+        <result property="coverCityCount" column="cover_city_count"/>
+        <result property="coverZoneCount" column="cover_zone_count"/>
+        <result property="businessCount" column="business_count"/>
+        <result property="pauseBusinessCount" column="pause_business_count"/>
+        <result property="noBusinessCount" column="no_business_count"/>
+        <result property="total" column="total"/>
+        <result property="updateTime" column="update_time"/>
+    </resultMap>
+    <insert id="insertAll">
+        insert into `bl_brand_statistics` values
+        <foreach collection="brandStatistics" item="stat" separator=",">
+            (#{stat.brandId},#{stat.brandName},#{stat.coverProvinceCount},#{stat.coverCityCount},#{stat.coverZoneCount},#{stat.businessCount},#{stat.pauseBusinessCount},#{stat.noBusinessCount},#{stat.total},#{stat.updateTime})
+        </foreach>
+    </insert>
+    <select id="searchByBrandId" resultMap="BrandStatisticsResult">
+        select * from bl_brand_statistics where brand_id = #{brandId}
+    </select>
+    <select id="searchList" resultMap="BrandStatisticsResult">
+        select * from bl_brand_statistics order by total desc;
+    </select>
+    <select id="searchStated" resultType="java.lang.String">
+        SELECT DISTINCT
+            brand_id
+        FROM
+            `bl_brand_statistics`
+    </select>
+    <select id="searchByStatistics" resultType="com.ruoyi.demo.entity.BrandStatistics">
+        SELECT
+            cover_province_count,
+            cover_city_count,
+            cover_zone_count,
+            business_count,
+            pause_business_count,
+            no_business_count
+        FROM
+            (
+                SELECT
+                    COUNT(*) cover_province_count
+                FROM
+                    `bl_brand_province_distribution`
+                WHERE
+                    brand_id = #{brandId}
+            ) province,
+            (
+                SELECT
+                    COUNT(*) cover_city_count
+                FROM
+                    `bl_brand_city_distribution`
+                WHERE
+                    brand_id = #{brandId}
+            ) city,
+            (
+                SELECT
+                    COUNT(*) cover_zone_count
+                FROM
+                    `bl_brand_zone_distribution`
+                WHERE
+                    brand_id = #{brandId}
+            ) zone,
+	(
+		SELECT
+			COUNT(*) business_count
+		FROM
+			`ddt_store_wd`
+		WHERE
+			business_status = '正常'
+		AND brand_id = #{brandId}
+	) nomal,
+	(
+		SELECT
+			COUNT(*) pause_business_count
+		FROM
+			`ddt_store_wd`
+		WHERE
+			business_status = '暂停'
+		AND brand_id = #{brandId}
+	) pause,
+	(
+		SELECT
+			COUNT(*) no_business_count
+		FROM
+			`ddt_store_wd`
+		WHERE
+			business_status = '尚未营业'
+		AND brand_id = #{brandId}
+	) noOpen
+    </select>
+</mapper>

+ 151 - 0
ruoyi-demo/src/main/resources/mapper/demo/BrandZone2Mapper.xml

@@ -0,0 +1,151 @@
+<?xml version="1.0" encoding="UTF-8" ?>
+<!DOCTYPE mapper
+    PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
+    "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
+<mapper namespace="com.ruoyi.demo.mapper.BrandZoneDao">
+    <resultMap type="com.ruoyi.demo.entity.BrandZone" id="BrandZoneResult">
+        <result property="disId" column="dis_id"/>
+        <result property="brandId" column="brand_id"/>
+<!--        <result property="industryCode" column="industry_code"/>-->
+        <result property="addrCode" column="addr_code"/>
+        <result property="province" column="province"/>
+        <result property="city" column="city"/>
+        <result property="zone" column="zone"/>
+        <result property="lat" column="lat"/>
+        <result property="lng" column="lng"/>
+        <result property="disCount" column="dis_count"/>
+        <result property="avgScore" column="avg_score"/>
+        <result property="updateTime" column="update_time"/>
+    </resultMap>
+    <resultMap type="com.ruoyi.demo.entity.BrandProvince" id="ProvinceResult">
+        <result property="disId" column="dis_id"/>
+        <result property="brandId" column="brand_id"/>
+        <result property="addrCode" column="addr_code"/>
+        <result property="province" column="province"/>
+        <result property="lat" column="lat"/>
+        <result property="lng" column="lng"/>
+        <result property="disCount" column="dis_count"/>
+        <result property="updateTime" column="update_time"/>
+    </resultMap>
+    <resultMap type="com.ruoyi.demo.entity.BrandCity" id="CityResult">
+        <result property="disId" column="dis_id"/>
+        <result property="brandId" column="brand_id"/>
+        <result property="addrCode" column="addr_code"/>
+        <result property="city" column="city"/>
+        <result property="lat" column="lat"/>
+        <result property="lng" column="lng"/>
+        <result property="disCount" column="dis_count"/>
+        <result property="updateTime" column="update_time"/>
+    </resultMap>
+    <insert id="insertAll">
+        insert into `bl_brand_zone_distribution`(dis_id,brand_id,brand_name,addr_code,dis_count,avg_score,update_time) values
+        <foreach collection="brandZones" item="brandZone" separator="," >
+            (#{brandZone.disId},#{brandZone.brandId},#{brandZone.brandName},#{brandZone.addrCode},#{brandZone.disCount},#{brandZone.avgScore},#{brandZone.updateTime})
+        </foreach>
+    </insert>
+    <select id="searchByBrandId" resultMap="BrandZoneResult">
+        select * from bl_brand_zone_distribution where brand_id = #{brandId}
+    </select>
+    <select id="searchByMulti" resultMap="BrandZoneResult">
+        SELECT
+            *
+        FROM
+            `bl_brand_zone_distribution`
+        <trim prefix="where" prefixOverrides="and">
+            <if test="brandIds != null">
+                <foreach collection="brandIds" item="brandId" open="and brand_id IN (" separator="," close=")">
+                    #{brandId,jdbcType=VARCHAR}
+                </foreach>
+            </if>
+            <if test="addrCodes != null">
+                <foreach collection="addrCodes" item="addrCode" open="and addr_code IN (" separator="," close=")">
+                    #{addrCode,jdbcType=VARCHAR}
+                </foreach>
+            </if>
+            <if test="industryCodes != null">
+                <foreach collection="industryCodes" item="industryCode" open="and industry_code IN (" separator="," close=")">
+                    #{industryCode,jdbcType=VARCHAR}
+                </foreach>
+            </if>
+        </trim>
+    </select>
+    <select id="searchProvinceCountByBrandId" resultType="java.lang.Integer">
+        SELECT
+            COUNT(*)
+        FROM
+            (
+                SELECT
+                    province
+                FROM
+                    `bl_brand_zone_distribution`
+                WHERE
+                    brand_id = #{brandId}
+                GROUP BY
+                    province
+            ) province
+    </select>
+    <select id="searchCityCountByBrandId" resultType="java.lang.Integer">
+        SELECT
+            COUNT(*)
+        FROM
+            (
+                SELECT
+                    city
+                FROM
+                    `bl_brand_zone_distribution`
+                WHERE
+                    brand_id = #{brandId}
+                GROUP BY
+                    city
+            ) city
+    </select>
+    <select id="searchZoneCountByBrandId" resultType="java.lang.Integer">
+        SELECT
+            COUNT(*)
+        FROM
+            `bl_brand_zone_distribution`
+        WHERE
+            brand_id = #{brandId}
+    </select>
+    <select id="searchStatedBrandIds" resultType="java.lang.String">
+        SELECT DISTINCT
+            brand_id
+        FROM
+            `bl_brand_zone_distribution`
+        <where>
+            <if test="month != null">
+                DATE_FORMAT(update_time, '%Y-%m') = #{month}
+            </if>
+        </where>
+    </select>
+    <select id="searchQuicklyStatistics" resultMap="BrandZoneResult">
+        SELECT
+            brand_id,
+            brand_name,
+            addr_code,
+            COUNT(*) dis_count,
+            ROUND(AVG(score), 2) avg_score
+        FROM
+            `ddt_store_wd` dsw,
+            `ddt_wd_info` dwi
+        WHERE
+            dsw.wd_id = dwi.wd_id
+        AND brand_id IS NOT NULL
+        AND brand_id <![CDATA[<>]]> ''
+        <if test="ins != null">
+            <foreach collection="ins" item="in" open="and brand_id in (" separator="," close=")">
+                #{in,jdbcType=VARCHAR}
+            </foreach>
+        </if>
+        GROUP BY
+            brand_id,
+            brand_name,
+            addr_code;
+    </select>
+    <select id="selectIns" resultType="java.lang.String">
+        SELECT DISTINCT
+            brand_id
+        FROM
+            `bl_brand_zone_distribution`;
+    </select>
+</mapper>

+ 8 - 0
ruoyi-demo/src/main/resources/mapper/demo/BusinessOpportunitiesMapper.xml

@@ -65,4 +65,12 @@
             </if>
         </trim>
     </select>
+    <select id="selectCount" resultType="java.lang.Integer">
+        SELECT
+            COUNT(*) count
+        FROM
+            `bl_business_opportunities_clue`
+        WHERE
+            user_id = #{userId};
+    </select>
 </mapper>

+ 8 - 0
ruoyi-demo/src/main/resources/mapper/demo/FollowUpMapper.xml

@@ -59,4 +59,12 @@
             </if>
         </trim>
     </select>
+    <select id="selectCountByWay" resultType="java.lang.Integer">
+        SELECT
+            COUNT(*)
+        FROM
+            `bl_follow_up_record`
+        WHERE user_id = #{userId}
+          AND follow_way = #{way};
+    </select>
 </mapper>