提交 0338efeb 编写于 作者: ibizdev's avatar ibizdev

ibiz4j 发布系统代码 [ ibiz-pay,支付]

上级 bc177e9b
...@@ -14,6 +14,10 @@ services: ...@@ -14,6 +14,10 @@ services:
memory: 400M memory: 400M
mode: replicated mode: replicated
replicas: 1 replicas: 1
restart_policy:
condition: on-failure
max_attempts: 3
window: 120s
volumes: volumes:
- "nfs:/app/file" - "nfs:/app/file"
......
...@@ -20,18 +20,17 @@ ...@@ -20,18 +20,17 @@
<appender name="file" class="ch.qos.logback.core.rolling.RollingFileAppender"> <appender name="file" class="ch.qos.logback.core.rolling.RollingFileAppender">
<rollingPolicy class="ch.qos.logback.core.rolling.TimeBasedRollingPolicy"> <rollingPolicy class="ch.qos.logback.core.rolling.TimeBasedRollingPolicy">
<!--日志文件输出的文件名--> <!--日志文件输出的文件名-->
<FileNamePattern>${LOG_PATH}/ibzpay.%d{yyyy-MM-dd}.log</FileNamePattern> <FileNamePattern>${LOG_PATH}/ibzpay.%d{yyyy-MM-dd}.%i.log</FileNamePattern>
<!--日志文件最大的大小-->
<timeBasedFileNamingAndTriggeringPolicy class="ch.qos.logback.core.rolling.SizeAndTimeBasedFNATP">
<maxFileSize>100MB</maxFileSize>
</timeBasedFileNamingAndTriggeringPolicy>
<!--日志文件保留天数--> <!--日志文件保留天数-->
<MaxHistory>30</MaxHistory> <MaxHistory>30</MaxHistory>
</rollingPolicy> </rollingPolicy>
<encoder class="ch.qos.logback.classic.encoder.PatternLayoutEncoder"> <encoder class="ch.qos.logback.classic.encoder.PatternLayoutEncoder">
<pattern>${LOG_PATTERN}</pattern> <pattern>${LOG_PATTERN}</pattern>
</encoder> </encoder>
<!--日志文件最大的大小-->
<triggeringPolicy class="ch.qos.logback.core.rolling.SizeBasedTriggeringPolicy">
<MaxFileSize>100MB</MaxFileSize>
</triggeringPolicy>
</appender> </appender>
<!-- 日志输出级别 --> <!-- 日志输出级别 -->
<root level="INFO"> <root level="INFO">
......
...@@ -23,6 +23,7 @@ import com.baomidou.mybatisplus.extension.service.IService; ...@@ -23,6 +23,7 @@ import com.baomidou.mybatisplus.extension.service.IService;
/** /**
* 实体[PayOpenAccess] 服务对象接口 * 实体[PayOpenAccess] 服务对象接口
*/ */
@com.baomidou.dynamic.datasource.annotation.DS("db2")
public interface IPayOpenAccessService extends IService<PayOpenAccess> { public interface IPayOpenAccessService extends IService<PayOpenAccess> {
boolean create(PayOpenAccess et); boolean create(PayOpenAccess et);
......
...@@ -23,6 +23,7 @@ import com.baomidou.mybatisplus.extension.service.IService; ...@@ -23,6 +23,7 @@ import com.baomidou.mybatisplus.extension.service.IService;
/** /**
* 实体[PayTrade] 服务对象接口 * 实体[PayTrade] 服务对象接口
*/ */
@com.baomidou.dynamic.datasource.annotation.DS("db2")
public interface IPayTradeService extends IService<PayTrade> { public interface IPayTradeService extends IService<PayTrade> {
boolean create(PayTrade et); boolean create(PayTrade et);
......
...@@ -51,9 +51,6 @@ public class PayOpenAccessServiceImpl extends ServiceImpl<PayOpenAccessMapper, P ...@@ -51,9 +51,6 @@ public class PayOpenAccessServiceImpl extends ServiceImpl<PayOpenAccessMapper, P
@Autowired @Autowired
@Lazy @Lazy
protected cn.ibizlab.core.pay.service.IPayTradeService paytradeService; protected cn.ibizlab.core.pay.service.IPayTradeService paytradeService;
@Autowired
@Lazy
IPayOpenAccessService proxyService;
protected int batchSize = 500; protected int batchSize = 500;
...@@ -139,7 +136,7 @@ public class PayOpenAccessServiceImpl extends ServiceImpl<PayOpenAccessMapper, P ...@@ -139,7 +136,7 @@ public class PayOpenAccessServiceImpl extends ServiceImpl<PayOpenAccessMapper, P
if (null == et) { if (null == et) {
return false; return false;
} else { } else {
return checkKey(et) ? proxyService.update(et) : proxyService.create(et); return checkKey(et) ? getProxyService().update(et) : getProxyService().create(et);
} }
} }
...@@ -156,10 +153,10 @@ public class PayOpenAccessServiceImpl extends ServiceImpl<PayOpenAccessMapper, P ...@@ -156,10 +153,10 @@ public class PayOpenAccessServiceImpl extends ServiceImpl<PayOpenAccessMapper, P
} }
} }
if (create.size() > 0) { if (create.size() > 0) {
proxyService.createBatch(create); getProxyService().createBatch(create);
} }
if (update.size() > 0) { if (update.size() > 0) {
proxyService.updateBatch(update); getProxyService().updateBatch(update);
} }
return true; return true;
} }
...@@ -177,10 +174,10 @@ public class PayOpenAccessServiceImpl extends ServiceImpl<PayOpenAccessMapper, P ...@@ -177,10 +174,10 @@ public class PayOpenAccessServiceImpl extends ServiceImpl<PayOpenAccessMapper, P
} }
} }
if (create.size() > 0) { if (create.size() > 0) {
proxyService.createBatch(create); getProxyService().createBatch(create);
} }
if (update.size() > 0) { if (update.size() > 0) {
proxyService.updateBatch(update); getProxyService().updateBatch(update);
} }
} }
...@@ -229,6 +226,10 @@ public class PayOpenAccessServiceImpl extends ServiceImpl<PayOpenAccessMapper, P ...@@ -229,6 +226,10 @@ public class PayOpenAccessServiceImpl extends ServiceImpl<PayOpenAccessMapper, P
public IPayOpenAccessService getProxyService() {
return cn.ibizlab.util.security.SpringContextHolder.getBean(this.getClass());
}
} }
......
...@@ -51,9 +51,6 @@ public class PayTradeServiceImpl extends ServiceImpl<PayTradeMapper, PayTrade> i ...@@ -51,9 +51,6 @@ public class PayTradeServiceImpl extends ServiceImpl<PayTradeMapper, PayTrade> i
@Autowired @Autowired
@Lazy @Lazy
protected cn.ibizlab.core.pay.service.IPayOpenAccessService payopenaccessService; protected cn.ibizlab.core.pay.service.IPayOpenAccessService payopenaccessService;
@Autowired
@Lazy
IPayTradeService proxyService;
protected int batchSize = 500; protected int batchSize = 500;
...@@ -144,7 +141,7 @@ public class PayTradeServiceImpl extends ServiceImpl<PayTradeMapper, PayTrade> i ...@@ -144,7 +141,7 @@ public class PayTradeServiceImpl extends ServiceImpl<PayTradeMapper, PayTrade> i
if (null == et) { if (null == et) {
return false; return false;
} else { } else {
return checkKey(et) ? proxyService.update(et) : proxyService.create(et); return checkKey(et) ? getProxyService().update(et) : getProxyService().create(et);
} }
} }
...@@ -162,10 +159,10 @@ public class PayTradeServiceImpl extends ServiceImpl<PayTradeMapper, PayTrade> i ...@@ -162,10 +159,10 @@ public class PayTradeServiceImpl extends ServiceImpl<PayTradeMapper, PayTrade> i
} }
} }
if (create.size() > 0) { if (create.size() > 0) {
proxyService.createBatch(create); getProxyService().createBatch(create);
} }
if (update.size() > 0) { if (update.size() > 0) {
proxyService.updateBatch(update); getProxyService().updateBatch(update);
} }
return true; return true;
} }
...@@ -184,10 +181,10 @@ public class PayTradeServiceImpl extends ServiceImpl<PayTradeMapper, PayTrade> i ...@@ -184,10 +181,10 @@ public class PayTradeServiceImpl extends ServiceImpl<PayTradeMapper, PayTrade> i
} }
} }
if (create.size() > 0) { if (create.size() > 0) {
proxyService.createBatch(create); getProxyService().createBatch(create);
} }
if (update.size() > 0) { if (update.size() > 0) {
proxyService.updateBatch(update); getProxyService().updateBatch(update);
} }
} }
...@@ -262,6 +259,10 @@ public class PayTradeServiceImpl extends ServiceImpl<PayTradeMapper, PayTrade> i ...@@ -262,6 +259,10 @@ public class PayTradeServiceImpl extends ServiceImpl<PayTradeMapper, PayTrade> i
public IPayTradeService getProxyService() {
return cn.ibizlab.util.security.SpringContextHolder.getBean(this.getClass());
}
} }
......
...@@ -261,6 +261,7 @@ ...@@ -261,6 +261,7 @@
<version>${baomidou-jobs.version}</version> <version>${baomidou-jobs.version}</version>
</dependency> </dependency>
</dependencies> </dependencies>
</dependencyManagement> </dependencyManagement>
...@@ -344,7 +345,6 @@ ...@@ -344,7 +345,6 @@
<groupId>mysql</groupId> <groupId>mysql</groupId>
<artifactId>mysql-connector-java</artifactId> <artifactId>mysql-connector-java</artifactId>
</dependency> </dependency>
<!-- mp动态数据源 --> <!-- mp动态数据源 -->
<dependency> <dependency>
<groupId>com.baomidou</groupId> <groupId>com.baomidou</groupId>
...@@ -352,7 +352,6 @@ ...@@ -352,7 +352,6 @@
</dependency> </dependency>
</dependencies> </dependencies>
</project> </project>
...@@ -14,6 +14,10 @@ services: ...@@ -14,6 +14,10 @@ services:
memory: 400M memory: 400M
mode: replicated mode: replicated
replicas: 1 replicas: 1
restart_policy:
condition: on-failure
max_attempts: 3
window: 120s
volumes: volumes:
- "nfs:/app/file" - "nfs:/app/file"
......
...@@ -13,6 +13,7 @@ import org.springframework.boot.ApplicationRunner; ...@@ -13,6 +13,7 @@ import org.springframework.boot.ApplicationRunner;
import org.springframework.boot.autoconfigure.condition.ConditionalOnProperty; import org.springframework.boot.autoconfigure.condition.ConditionalOnProperty;
import org.springframework.context.annotation.Lazy; import org.springframework.context.annotation.Lazy;
import org.springframework.stereotype.Component; import org.springframework.stereotype.Component;
import org.springframework.util.ObjectUtils;
import org.springframework.util.DigestUtils; import org.springframework.util.DigestUtils;
import java.io.InputStream; import java.io.InputStream;
import java.util.*; import java.util.*;
...@@ -25,58 +26,55 @@ import java.util.*; ...@@ -25,58 +26,55 @@ import java.util.*;
@ConditionalOnProperty( name = "ibiz.enablePermissionValid", havingValue = "true") @ConditionalOnProperty( name = "ibiz.enablePermissionValid", havingValue = "true")
public class PermissionSyncJob implements ApplicationRunner { public class PermissionSyncJob implements ApplicationRunner {
@Autowired
@Lazy
private IBZUAAFeignClient client;
@Value("${ibiz.systemid:ibzpay}") @Value("${ibiz.systemid:ibzpay}")
private String systemId; private String systemId;
@Value("${ibiz.systemname:ibzpay}") @Value("${ibiz.systemname:ibzpay}")
private String systemName; private String systemName;
@Autowired @Autowired
@Lazy @Lazy
IBZLiteFeignClient liteFeignClient; private IBZUAAFeignClient uaaClient;
@Autowired
@Lazy
IBZLiteFeignClient liteClient;
@Override @Override
public void run(ApplicationArguments args) { public void run(ApplicationArguments args) {
try { try {
Thread.sleep(10000); Thread.sleep(10000);
InputStream permission = this.getClass().getResourceAsStream("/permission/systemResource.json"); //获取当前系统所有实体资源能力 InputStream permission = this.getClass().getResourceAsStream("/permission/systemResource.json"); //权限资源
String permissionResult = IOUtils.toString(permission,"UTF-8"); if (!ObjectUtils.isEmpty(permission)) {
JSONObject system= new JSONObject(); String strPermission = IOUtils.toString(permission, "UTF-8");
system.put("pssystemid",systemId); JSONObject system = new JSONObject() {{
system.put("pssystemname",systemName); put("pssystemid", systemId);
system.put("sysstructure",JSONObject.parseObject(permissionResult)); put("pssystemname", systemName);
system.put("md5check",DigestUtils.md5DigestAsHex(permissionResult.getBytes())); put("sysstructure", JSONObject.parseObject(strPermission));
if(client.syncSysAuthority(system)) { put("md5check", DigestUtils.md5DigestAsHex(strPermission.getBytes()));
log.info("向[UAA]同步系统资源成功"); }};
}else{ if (uaaClient.syncSysAuthority(system)) {
log.error("向[UAA]同步系统资源失败"); log.info("向[uaa]同步系统资源成功");
} else {
log.error("向[uaa]同步系统资源失败");
} }
} }
catch (Exception ex) { } catch (Exception ex) {
log.error(String.format("向[UAA]同步系统资源失败,请检查[UAA]服务是否正常! [%s]",ex)); log.error("向[uaa]同步系统资源失败,请检查[uaa]服务是否正常运行! {}", ex.getMessage());
} }
try { try {
InputStream sysModel = this.getClass().getResourceAsStream("/sysmodel/ibzpay.json"); //获取当前系统所有实体资源能力 InputStream model = this.getClass().getResourceAsStream("/sysmodel/ibzpay.json"); //系统模型
String strSysModel = IOUtils.toString(sysModel,"UTF-8"); if (!ObjectUtils.isEmpty(model)) {
if(liteFeignClient.syncSysModel(JSONObject.parseObject(strSysModel))) { String strModel = IOUtils.toString(model, "UTF-8");
log.info("向[lite]同步系统模型成功"); if (liteClient.syncSysModel(JSONObject.parseObject(strModel))) {
}else{ log.info("向[lite]同步模型成功");
log.error("向[lite]同步系统模型失败"); } else {
log.error("向[lite]同步模型失败");
} }
} }
catch (Exception ex) { } catch (Exception ex) {
log.error(String.format("向[lite]同步系统模型失败,请检查[lite]服务是否正常! [%s]",ex)); log.error("向[lite]同步系统模型失败,请检查[lite]服务是否正常运行! {}", ex.getMessage());
} }
} }
} }
\ No newline at end of file
...@@ -125,3 +125,4 @@ server: ...@@ -125,3 +125,4 @@ server:
min-response-size: 10240 min-response-size: 10240
Markdown 格式
0% or
您添加了 0 到此讨论。请谨慎行事。
先完成此消息的编辑!
想要评论请 注册