Commit 9b9ce9e6 9b9ce9e6917579f81b7354b68347e4686968fc38 by xianghan@topdraw.cn

Merge branch 'feature/1.1.0' into develop

2 parents 3cb72785 8640e451
......@@ -4,6 +4,7 @@ package com.topdraw;
import com.topdraw.utils.SpringContextHolder;
import org.springframework.boot.SpringApplication;
import org.springframework.boot.autoconfigure.SpringBootApplication;
import org.springframework.boot.autoconfigure.amqp.RabbitAutoConfiguration;
import org.springframework.boot.autoconfigure.security.servlet.SecurityAutoConfiguration;
import org.springframework.boot.builder.SpringApplicationBuilder;
import org.springframework.boot.web.servlet.support.SpringBootServletInitializer;
......
......@@ -29,6 +29,10 @@ public class MemberProfile implements Serializable {
@Column(name = "id")
private Long id;
// 手机号
@Column(name = "phone")
private String phone;
// 会员id
@Column(name = "member_id", nullable = false)
private Long memberId;
......
......@@ -2,6 +2,7 @@ package com.topdraw.business.basicdata.member.profile.service.dto;
import lombok.Data;
import javax.persistence.Column;
import java.io.Serializable;
import java.sql.Timestamp;
......@@ -19,6 +20,9 @@ public class MemberProfileDTO implements Serializable {
// 会员id
private Long memberId;
// 手机号
private String phone;
// 姓名
private String realname;
......
package com.topdraw.config;
import org.springframework.amqp.core.*;
import org.springframework.amqp.rabbit.config.SimpleRabbitListenerContainerFactory;
import org.springframework.amqp.rabbit.connection.CachingConnectionFactory;
import org.springframework.amqp.rabbit.connection.ConnectionFactory;
import org.springframework.amqp.rabbit.core.RabbitTemplate;
import org.springframework.amqp.rabbit.listener.RabbitListenerContainerFactory;
import org.springframework.beans.factory.annotation.Qualifier;
import org.springframework.beans.factory.annotation.Value;
import org.springframework.boot.autoconfigure.amqp.SimpleRabbitListenerContainerFactoryConfigurer;
import org.springframework.context.annotation.Bean;
import org.springframework.context.annotation.Configuration;
import org.springframework.context.annotation.Primary;
@Configuration
public class RabbitMqConfig {
/** 路由(事件)--direct route.key*/
public static final String UC_ROUTE_KEY_DIRECT_EVENT_AAA = "uc.route.key.direct.event.aaa";
/** 队列-- */
public static final String UC_QUEUE_FANOUT_IPTV = "uc.fanout.iptv";
public static final String UC_QUEUE_FANOUT_WEIXIN = "uc.fanout.weixin";
public static final String UC_EXCHANGE_FANOUT = "uc.fanout";
@Bean(name = "userCenterConnectionFactory")
@Primary
public ConnectionFactory userCenterConnectionFactory(){
CachingConnectionFactory connectionFactory = new CachingConnectionFactory();
/*connectionFactory.setHost("47.100.212.170");
connectionFactory.setPort(5672);
connectionFactory.setUsername("test");
connectionFactory.setPassword("test");
connectionFactory.setVirtualHost("/");*/
connectionFactory.setHost("172.23.51.109");
connectionFactory.setPort(5672);
connectionFactory.setUsername("admin");
connectionFactory.setPassword("Tjlh@2021");
// connectionFactory.setVirtualHost("member_center");
connectionFactory.setVirtualHost("/");
return connectionFactory;
}
@Bean(name = "memberServiceConnectionFactory")
public ConnectionFactory memberServiceConnectionFactory(){
CachingConnectionFactory connectionFactory = new CachingConnectionFactory();
/*connectionFactory.setHost("139.196.145.150");
connectionFactory.setPort(5672);
connectionFactory.setUsername("admin");
connectionFactory.setPassword("Topdraw1qaz");
connectionFactory.setVirtualHost("member_center");*/
connectionFactory.setHost("172.0.31.108");
connectionFactory.setPort(5672);
connectionFactory.setUsername("admin");
connectionFactory.setPassword("Tjlh@2021");
connectionFactory.setVirtualHost("member_center");
return connectionFactory;
}
@Bean(name = "userCenterRabbitListenerContainerFactory")
@Primary
public RabbitListenerContainerFactory userCenterRabbitListenerContainerFactory(
SimpleRabbitListenerContainerFactoryConfigurer containerFactoryConfigurer,
@Qualifier("userCenterConnectionFactory") ConnectionFactory connectionFactory) {
SimpleRabbitListenerContainerFactory factory = new SimpleRabbitListenerContainerFactory();
containerFactoryConfigurer.configure(factory,connectionFactory);
return factory;
}
@Bean(name = "memberServiceRabbitListenerContainerFactory")
public RabbitListenerContainerFactory memberServiceRabbitListenerContainerFactory(
SimpleRabbitListenerContainerFactoryConfigurer containerFactoryConfigurer,
@Qualifier("memberServiceConnectionFactory") ConnectionFactory connectionFactory) {
SimpleRabbitListenerContainerFactory factory = new SimpleRabbitListenerContainerFactory();
containerFactoryConfigurer.configure(factory,connectionFactory);
return factory;
}
/*
@Bean(name = "userCenterRabbitTemplate")
public RabbitTemplate userCenterRabbitTemplate(ConnectionFactory userCenterConnectionFactory){
RabbitTemplate u = new RabbitTemplate(userCenterConnectionFactory);
return u;
}
@Bean(name = "memberServiceRabbitTemplate")
public RabbitTemplate memberServiceRabbitTemplate(ConnectionFactory memberServiceConnectionFactory){
RabbitTemplate u = new RabbitTemplate(memberServiceConnectionFactory);
return u;
}
*/
/**
* 处理事件
* @return org.springframework.amqp.core.Queue
* @author XiangHan
* @date 2021/9/7 10:19 上午
*/
@Bean
public Queue eventDirect() {
return new Queue(UC_ROUTE_KEY_DIRECT_EVENT_AAA);
}
}
package com.topdraw.mq.config;
import org.springframework.amqp.core.*;
import org.springframework.beans.factory.annotation.Value;
import org.springframework.context.annotation.Bean;
import org.springframework.context.annotation.Configuration;
@Configuration
public class RabbitMqConfig {
/** 路由(事件)--direct route.key*/
public static final String UC_ROUTE_KEY_DIRECT_EVENT_AAA = "uc.route.key.direct.event.aaa";
/** 队列-- */
public static final String UC_QUEUE_FANOUT_IPTV = "uc.fanout.iptv";
public static final String UC_QUEUE_FANOUT_WEIXIN = "uc.fanout.weixin";
public static final String UC_EXCHANGE_FANOUT = "uc.fanout";
/**
* 处理事件
* @return org.springframework.amqp.core.Queue
* @author XiangHan
* @date 2021/9/7 10:19 上午
*/
@Bean
public Queue eventDirect() {
return new Queue(UC_ROUTE_KEY_DIRECT_EVENT_AAA);
}
}
package com.topdraw.mq.consumer;
import com.topdraw.config.ServiceEnvConfig;
import com.topdraw.mq.config.RabbitMqConfig;
import com.topdraw.mq.domain.DataSyncMsg;
import com.topdraw.config.RabbitMqConfig;
import com.topdraw.mq.domain.TableOperationMsg;
import com.topdraw.util.JSONUtil;
import lombok.extern.slf4j.Slf4j;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
import org.springframework.amqp.core.AcknowledgeMode;
import org.springframework.amqp.core.ExchangeTypes;
import org.springframework.amqp.rabbit.annotation.*;
import org.springframework.beans.factory.annotation.Autowired;
......@@ -34,7 +32,8 @@ public class MemberServiceConsumer {
@RabbitListener(bindings = {
@QueueBinding(value = @Queue(value = "#{memberServiceConsumer.platform()}"),
exchange = @Exchange(value = RabbitMqConfig.UC_EXCHANGE_FANOUT,type = ExchangeTypes.FANOUT))
})
}
,containerFactory = "memberServiceRabbitListenerContainerFactory")
public void memberServiceFanoutConsumer(String content) {
try {
log.info(" receive dataSync msg , content is : {} ", content);
......
package com.topdraw.mq.consumer;
import com.topdraw.mq.config.RabbitMqConfig;
import com.topdraw.config.RabbitMqConfig;
import com.topdraw.mq.domain.DataSyncMsg;
import com.topdraw.resttemplate.RestTemplateClient;
import com.topdraw.util.JSONUtil;
......@@ -25,7 +25,8 @@ public class UserCenterConsumer {
* @date 2021/9/7 11:26 上午
*/
@RabbitHandler
@RabbitListener(queues = RabbitMqConfig.UC_ROUTE_KEY_DIRECT_EVENT_AAA)
@RabbitListener(queues = RabbitMqConfig.UC_ROUTE_KEY_DIRECT_EVENT_AAA,
containerFactory = "userCenterRabbitListenerContainerFactory")
public void ucEventConsumer(String content) {
log.info(" receive dataSync msg , content is : {} ", content);
DataSyncMsg dataSyncMsg = this.parseContent(content);
......
......@@ -47,6 +47,7 @@ public class RestTemplateClient {
String content = JSON.toJSONString(dataSyncMsg);
HashMap<Object, Object> objectObjectHashMap = new HashMap<>();
objectObjectHashMap.put("content", content);
log.info("===>>>" + content);
restTemplate.postForEntity(url, objectObjectHashMap, String.class);
/* ResponseEntity<String> responseEntity = restTemplate.postForEntity(url, objectObjectHashMap, String.class);
if (responseEntity.getStatusCode().is2xxSuccessful()) {
......
......@@ -2,14 +2,13 @@
spring:
datasource:
# 测试/演示库
#url: jdbc:log4jdbc:mysql://139.196.37.202:3306/tj_user_0819?serverTimezone=Asia/Shanghai&characterEncoding=utf8&useSSL=false
#username: root
#password: Topdraw1qaz
url: jdbc:log4jdbc:mysql://122.112.214.149:3306/tj_user?serverTimezone=Asia/Shanghai&characterEncoding=utf8&useSSL=false
url: jdbc:log4jdbc:mysql://139.196.37.202:3306/tj_user_0819?serverTimezone=Asia/Shanghai&characterEncoding=utf8&useSSL=false
username: root
password: root
password: Topdraw1qaz
# url: jdbc:log4jdbc:mysql://122.112.214.149:3306/tj_user?serverTimezone=Asia/Shanghai&characterEncoding=utf8&useSSL=false
# username: root
# password: root
driverClassName: net.sf.log4jdbc.sql.jdbcapi.DriverSpy
# driverClassName: com.mysql.jdbc.Driver
#Druid
type: com.alibaba.druid.pool.DruidDataSource
druid:
......@@ -40,6 +39,25 @@ spring:
url-pattern: /*
exclusions: "*.js,*.gif,*.jpg,*.bmp,*.png,*.css,*.ico,/druid/*"
rabbitmq:
user-center:
host: 47.100.212.170 # rabbitmq的连接地址
#host: 139.196.192.242 # rabbitmq的连接地址
port: 5672 # rabbitmq的连接端口号
virtual-host: / # rabbitmq的虚拟host
username: test # rabbitmq的用户名
password: test # rabbitmq的密码
publisher-confirms: true #如果对异步消息需要回调必须设置为true
member-service:
host: 139.196.145.150 # rabbitmq的连接地址
port: 5672 # rabbitmq的连接端口号
virtual-host: member_center # rabbitmq的虚拟host
username: admin # rabbitmq的用户名
password: Topdraw1qaz # rabbitmq的密码
publisher-confirms: true #如果对异步消息需要回调必须设置为true
#配置 Jpa
jpa:
hibernate:
......@@ -53,23 +71,11 @@ spring:
redis:
#数据库索引
database: 6
host: 127.0.0.1
host: 122.112.214.149
port: 6379
password:
#连接超时时间
timeout: 5000
rabbitmq:
host: 47.100.212.170 # rabbitmq的连接地址
# host: 122.112.214.149 # rabbitmq的连接地址
#host: 139.196.192.242 # rabbitmq的连接地址
port: 5672 # rabbitmq的连接端口号
#virtual-host: /member_center # rabbitmq的虚拟host
#username: member_center # rabbitmq的用户名
#password: Tjlh@2021 # rabbitmq的密码
virtual-host: test # rabbitmq的虚拟host
username: omo_test # rabbitmq的用户名
password: omo_test # rabbitmq的密码
publisher-confirms: true #如果对异步消息需要回调必须设置为true
#jwt。依赖的common中有需要jwt的部分属性。
jwt:
......@@ -94,6 +100,8 @@ generator:
swagger:
enabled: true
# 文件存储路径(相对路径)
file:
path: system/file
......@@ -106,7 +114,7 @@ file:
uc:
service:
# uc两侧部署,需配置位于哪一侧 mobile小屏侧 vis大屏侧
type: mobile
type: vis
api:
# baseUrl: http://139.196.4.234:8447
......
#配置数据源
spring:
datasource:
# 测试/演示库
#url: jdbc:log4jdbc:mysql://139.196.37.202:3306/tj_user_0819?serverTimezone=Asia/Shanghai&characterEncoding=utf8&useSSL=false
#username: root
#password: Topdraw1qaz
url: jdbc:log4jdbc:mysql://122.112.214.149:3306/tj_user?serverTimezone=Asia/Shanghai&characterEncoding=utf8&useSSL=false
url: jdbc:log4jdbc:mysql://172.0.31.91:3306/tj_user?serverTimezone=Asia/Shanghai&characterEncoding=utf8&useSSL=false
username: root
password: root
password: Tjlh@2021
driverClassName: net.sf.log4jdbc.sql.jdbcapi.DriverSpy
# driverClassName: com.mysql.jdbc.Driver
#Druid
type: com.alibaba.druid.pool.DruidDataSource
druid:
......@@ -52,23 +47,24 @@ spring:
max-request-size: 200MB
redis:
#数据库索引
database: 6
database: 0
host: 127.0.0.1
port: 6379
password:
#连接超时时间
timeout: 5000
rabbitmq:
host: 122.112.214.149 # rabbitmq的连接地址
#host: 139.196.192.242 # rabbitmq的连接地址
host: 172.0.31.96 # rabbitmq的连接地址
port: 5672 # rabbitmq的连接端口号
#virtual-host: /member_center # rabbitmq的虚拟host
#username: member_center # rabbitmq的用户名
#password: Tjlh@2021 # rabbitmq的密码
virtual-host: / # rabbitmq的虚拟host
username: guest # rabbitmq的用户名
password: guest # rabbitmq的密码
virtual-host: member_center # rabbitmq的虚拟host
username: admin # rabbitmq的用户名
password: Tjlh@2021 # rabbitmq的密码
publisher-confirms: true #如果对异步消息需要回调必须设置为true
listener:
direct:
auto-startup: false
simple:
auto-startup: false
#jwt。依赖的common中有需要jwt的部分属性。
jwt:
......@@ -105,8 +101,8 @@ file:
uc:
service:
# uc两侧部署,需配置位于哪一侧 mobile小屏侧 vis大屏侧
type: mobile
type: vis
api:
# baseUrl: http://139.196.4.234:8447
baseUrl: http://localhost:8447
baseUrl: http://172.0.31.94:8447
......
server:
port: 8449
port: 8448
spring:
application:
......