|
|
@@ -1,55 +1,50 @@
|
|
|
-package com.leanwo.gateway.imp;
|
|
|
-
|
|
|
-import java.rmi.ServerException;
|
|
|
-import java.util.List;
|
|
|
-
|
|
|
-import org.slf4j.Logger;
|
|
|
-import org.slf4j.LoggerFactory;
|
|
|
-import org.springframework.beans.factory.annotation.Autowired;
|
|
|
-import org.springframework.stereotype.Service;
|
|
|
-import com.leanwo.gateway.dto.AccountManagementDto;
|
|
|
-import com.leanwo.gateway.server.ProdogServer;
|
|
|
-import com.leanwo.gateway.service.GatewayService;
|
|
|
-
|
|
|
-/**
|
|
|
- * 网关服务
|
|
|
- */
|
|
|
-@Service
|
|
|
-public class GatewayServiceImpl implements GatewayService {
|
|
|
-
|
|
|
- private final static Logger logger = LoggerFactory.getLogger(GatewayServiceImpl.class.getName());
|
|
|
-
|
|
|
- @Autowired
|
|
|
- private ProdogServer prodogServer;
|
|
|
-
|
|
|
- /** 账套缓存 */
|
|
|
- private List<AccountManagementDto> accountManagementDtos = null;
|
|
|
-
|
|
|
- @Override
|
|
|
- public Long getAccountIdByDomainName(String domainName) {
|
|
|
- if (accountManagementDtos == null) {
|
|
|
- reloadAccountManagement();
|
|
|
- }
|
|
|
-
|
|
|
- if (accountManagementDtos != null && accountManagementDtos.size() > 0) {
|
|
|
- for (AccountManagementDto accountManagementDto : accountManagementDtos) {
|
|
|
- if (accountManagementDto != null) {
|
|
|
- if (domainName.contains(accountManagementDto.getDomainName())) {
|
|
|
- return accountManagementDto.getAccountId();
|
|
|
- }
|
|
|
- }
|
|
|
- }
|
|
|
- }
|
|
|
-
|
|
|
- return 0L;
|
|
|
- }
|
|
|
-
|
|
|
- @Override
|
|
|
- public void reloadAccountManagement() {
|
|
|
- try {
|
|
|
- accountManagementDtos = prodogServer.getAccountManagementDtoCache();
|
|
|
- } catch (ServerException e) {
|
|
|
- logger.error("网关服务器从应用服务器获取账套信息失败。", e);
|
|
|
- }
|
|
|
- }
|
|
|
-}
|
|
|
+package com.leanwo.gateway.service;
|
|
|
+
|
|
|
+import java.util.List;
|
|
|
+
|
|
|
+
|
|
|
+import org.slf4j.Logger;
|
|
|
+import org.slf4j.LoggerFactory;
|
|
|
+import org.springframework.beans.factory.annotation.Autowired;
|
|
|
+import org.springframework.stereotype.Service;
|
|
|
+
|
|
|
+import com.leanwo.gateway.dto.AccountManagementDto;
|
|
|
+
|
|
|
+@Service
|
|
|
+public class AccountManagementServiceImpl implements AccountManagementService {
|
|
|
+
|
|
|
+ private static Logger logger = LoggerFactory.getLogger(AccountManagementServiceImpl.class);
|
|
|
+
|
|
|
+ @Autowired
|
|
|
+ private ProdogServer prodogServer;
|
|
|
+
|
|
|
+
|
|
|
+ private List<AccountManagementDto> accountManagementDtos = null;
|
|
|
+
|
|
|
+ @Override
|
|
|
+ public List<AccountManagementDto> loadAccountManagement(boolean force) {
|
|
|
+ if (accountManagementDtos == null || force) {
|
|
|
+ accountManagementDtos = prodogServer.getAccountManagementDtoCache();
|
|
|
+ }
|
|
|
+ return accountManagementDtos;
|
|
|
+ }
|
|
|
+
|
|
|
+ @Override
|
|
|
+ public Long getAccountIdByDomainName(String domainName) {
|
|
|
+ if (accountManagementDtos == null) {
|
|
|
+ loadAccountManagement(true);
|
|
|
+ }
|
|
|
+
|
|
|
+ if (accountManagementDtos != null && accountManagementDtos.size() > 0) {
|
|
|
+ for (AccountManagementDto accountManagementDto : accountManagementDtos) {
|
|
|
+ if (accountManagementDto != null) {
|
|
|
+ if (domainName.contains(accountManagementDto.getDomainName())) {
|
|
|
+ return accountManagementDto.getAccountId();
|
|
|
+ }
|
|
|
+ }
|
|
|
+ }
|
|
|
+ }
|
|
|
+
|
|
|
+ return 0L;
|
|
|
+ }
|
|
|
+}
|