Quellcode durchsuchen

********************WX***********************
添加微服务和数据中台通讯方式

zhangweixin vor 4 Jahren
Ursprung
Commit
f61e58c821

+ 4 - 2
datacenter/src/main/kotlin/com/persagy/server/jms/TopicReceiver.kt

@@ -32,6 +32,8 @@ import com.persagy.server.datacenter.models.jms.SynchronousMessage
 import com.persagy.server.datacenter.models.jms.SynchronousMessageRel
 import com.persagy.service.SObjectService
 import com.persagy.service.utils.SJsonUtil
+import org.springframework.amqp.rabbit.annotation.RabbitHandler
+import org.springframework.amqp.rabbit.annotation.RabbitListener
 import org.springframework.stereotype.Component
 import org.springframework.stereotype.Service
 import java.util.*
@@ -61,8 +63,8 @@ class TopicReceiver {
      *
      * @param
      */
-//    @RabbitListener(queues = ["queue-center-adm"])
-//    @RabbitHandler
+    @RabbitListener(queues = ["queue-center-adm"])
+    @RabbitHandler
     fun receiveMessage(message: String) {
         try {
             println("接收数据中心消息 , $message")

+ 14 - 20
datacenter/src/main/kotlin/com/persagy/server/services/dict/dictnew/DictDefClassService.kt

@@ -123,16 +123,16 @@ object DictDefClassService : SObjectService<DefClass>(SMybatisDao(DefClass::clas
 //                    )
 //                    pageInfo = queryBuilder.pageQuery(1, 1000)
                         dictSchemeCategoryList = defClassService.select(
-                            SFilter.eq("parentCode","component"), SFilter.eq("type", "group"),
-                            SFilter.eq("groupCode", dictProject.groupCode!!)
+                            SFilter.eq("parentCode","component"),
+                            SFilter.eq("projectId",projectId!!)
                         ).exec()
                     }
                     "system" -> {
 //                    queryBuilder = select(SFilter.eq(SLength("id"), 2), SFilter.not(SFilter.eq("parentId","AllProfessionalSystemEquipment")))
 //                    pageInfo = queryBuilder.pageQuery(1, 1000)
                         dictSchemeCategoryList = defClassService.select(
-                            SFilter.eq("parentCode","system"), SFilter.eq("type", "group"),
-                            SFilter.eq("groupCode", dictProject.groupCode!!)
+                            SFilter.eq("parentCode","system"),
+                            SFilter.eq("projectId",projectId!!)
                         ).exec()
                     }
                     "major" -> {
@@ -168,8 +168,7 @@ object DictDefClassService : SObjectService<DefClass>(SMybatisDao(DefClass::clas
                                 defClass.aliasCode = dictMajor.aliasCode
                                 val defClassList = defClassService.select(
                                     SFilter.eq("parentCode", "system"),
-                                    SFilter.eq("type", "group"),
-                                    SFilter.eq("groupCode", dictProject.groupCode!!),
+                                    SFilter.eq("projectId",projectId!!),
                                     SFilter.eq("majorCode", defClass.code!!)
                                 ).exec()
                                 defClass.children = defClassList
@@ -180,8 +179,8 @@ object DictDefClassService : SObjectService<DefClass>(SMybatisDao(DefClass::clas
                     "space" -> {
                         /** 业务空间类型 */
                         dictSchemeCategoryList = defClassService.select(
-                            SFilter.eq("parentCode","space"), SFilter.eq("type", "group"),
-                            SFilter.eq("groupCode", dictProject.groupCode!!)
+                            SFilter.eq("parentCode","space"),
+                            SFilter.eq("projectId",projectId!!)
                         ).exec()
                     }
                     "majorEquipment" -> {
@@ -196,8 +195,7 @@ object DictDefClassService : SObjectService<DefClass>(SMybatisDao(DefClass::clas
                                 defClass.aliasCode = dictMajor.aliasCode
                                 val defClassList = defClassService.select(
                                     SFilter.eq("parentCode", "equipment"),
-                                    SFilter.eq("type", "group"),
-                                    SFilter.eq("groupCode", dictProject.groupCode!!),
+                                    SFilter.eq("projectId",projectId!!),
                                     SFilter.eq("majorCode", defClass.code!!)
                                 ).exec()
                                 defClass.children = defClassList
@@ -208,20 +206,18 @@ object DictDefClassService : SObjectService<DefClass>(SMybatisDao(DefClass::clas
                     "equipmentAndComponent" -> {
                         /** 设备和部件 */
                         dictSchemeCategoryList = defClassService.select(
-                            SFilter.or(SFilter.eq("parentCode","component"),SFilter.eq("parentCode","equipment")), SFilter.eq("type", "group"),
-                            SFilter.eq("groupCode", dictProject.groupCode!!)
+                            SFilter.or(SFilter.eq("parentCode","component"),SFilter.eq("parentCode","equipment")), SFilter.eq("projectId",projectId!!)
+
                         ).exec()
                     }
                     "equipmentComponent" ->{
                         /** 设备下的部件 */
                         dictSchemeCategoryList = defClassService.select(
-                            SFilter.eq("parentCode","equipment"), SFilter.eq("type", "group"),
-                            SFilter.eq("groupCode", dictProject.groupCode!!)
+                            SFilter.eq("parentCode","equipment"), SFilter.eq("projectId",projectId!!)
                         ).exec()
                         val defClassList = defClassService.select(
                             SFilter.eq("parentCode", "component"),
-                            SFilter.eq("type", "group"),
-                            SFilter.eq("groupCode", dictProject.groupCode!!)
+                            SFilter.eq("projectId",projectId!!)
                         ).exec()
                         if (dictSchemeCategoryList.size > 0){
                             for (dictSchemeCategory in dictSchemeCategoryList){
@@ -252,13 +248,11 @@ object DictDefClassService : SObjectService<DefClass>(SMybatisDao(DefClass::clas
                         }
                         /** 系统 */
                         val systemList = defClassService.select(
-                            SFilter.eq("parentCode", "system"), SFilter.eq("type", "group"),
-                            SFilter.eq("groupCode", dictProject.groupCode!!)
+                            SFilter.eq("parentCode", "system"), SFilter.eq("projectId",projectId!!)
                         ).exec()
                         /** 设备 */
                         val equipmentList = defClassService.select(
-                            SFilter.eq("parentCode","equipment"), SFilter.eq("type", "group"),
-                            SFilter.eq("groupCode", dictProject.groupCode!!)
+                            SFilter.eq("parentCode","equipment"), SFilter.eq("projectId",projectId!!)
                         ).exec()
                         /** 系统下的设备 */
                         for (system in systemList){

+ 1 - 1
datasyn/build.gradle

@@ -66,7 +66,7 @@ dependencies {
 
     ////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
     // spring cloud 依赖
-//    compile group: 'org.springframework.cloud', name: 'spring-cloud-starter-eureka', version: SPRING_CLOUD_VERSION
+    compile group: 'org.springframework.cloud', name: 'spring-cloud-starter-eureka', version: SPRING_CLOUD_VERSION
 
     ////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
     // MySQL

+ 44 - 0
datasyn/src/main/kotlin/com/persagy/server/syn/CustomProperties.kt

@@ -0,0 +1,44 @@
+/*
+ * *********************************************************************************************************************
+ *
+ *          !!
+ *        .F88X
+ *        X8888Y
+ *      .}888888N;
+ *        i888888N;        .:!              .I$WI:
+ *          R888888I      .'N88~            i8}+8Y&8"l8i$8>8W~'>W8}8]KW+8IIN"8&
+ *          .R888888I    .;N8888~          .X8'  "8I.!,/8"  !%NY8`"8I8~~8>,88I
+ *            +888888N;  .8888888Y                                  "&&8Y.}8,
+ *            ./888888N;  .R888888Y        .'}~    .>}'.`+>  i}!    "i'  +/'  .'i~  !11,.:">,  .~]!  .i}i
+ *              ~888888%:  .I888888l      .]88~`1/iY88Ii+1'.R$8$8]"888888888>  Y8$  W8E  X8E  W8888'188Il}Y88$*
+ *              18888888    E8888881    .]W%8$`R8X'&8%++N8i,8N%N8+l8%`  .}8N:.R$RE%N88N%N$K$R  188,FE$8%~Y88I
+ *            .E888888I  .i8888888'      .:$8I;88+`E8R:/8N,.>881.`$8E/1/]N8X.Y8N`"KF&&FK!'88*."88K./$88%RN888+~
+ *            8888888I  .,N888888~        ~88i"8W,!N8*.I88.}888%F,i$88"F88"  888:E8X.>88!i88>`888*.}Fl1]*}1YKi'
+ *          i888888N'      I888Y          ]88;/EX*IFKFK88X  K8R  .l8W  88Y  ~88}'88E&%8W.X8N``]88!.$8K  .:W8I
+ *        .i888888N;        I8Y          .&8$  .X88!  i881.:%888>I88  ;88]  +88+.';;;;:.Y88X  18N.,88l  .+88/
+ *      .:R888888I
+ *      .&888888I                                          Copyright (c) 2009-2021.  博锐尚格科技股份有限公司
+ *        ~8888'
+ *        .!88~                                                                     All rights reserved.
+ *
+ * *********************************************************************************************************************
+ */
+
+package com.persagy.server.syn
+
+import org.springframework.boot.context.properties.ConfigurationProperties
+import org.springframework.stereotype.Component
+
+/**
+ *
+ * @author wx  <zhangweixin@sagacloud.com>
+ * @date  2021/1/12 16:09
+ */
+@Component
+@ConfigurationProperties(prefix = "sagas")
+class CustomProperties {
+
+
+     var eurekaorhttp: Boolean = false
+
+}

+ 13 - 0
datasyn/src/main/kotlin/com/persagy/server/syn/DataSynApp.kt

@@ -33,9 +33,14 @@ import org.springframework.boot.SpringApplication
 import org.springframework.boot.autoconfigure.SpringBootApplication
 import org.springframework.boot.builder.SpringApplicationBuilder
 import org.springframework.boot.web.servlet.support.SpringBootServletInitializer
+import org.springframework.cloud.client.loadbalancer.LoadBalanced
+import org.springframework.cloud.netflix.eureka.EnableEurekaClient
+import org.springframework.context.annotation.Bean
 import org.springframework.context.annotation.ComponentScan
 import org.springframework.scheduling.annotation.EnableAsync
 import org.springframework.scheduling.annotation.EnableScheduling
+import org.springframework.web.client.RestTemplate
+
 
 /**
  * 应用配置
@@ -46,6 +51,7 @@ import org.springframework.scheduling.annotation.EnableScheduling
 @EnableScheduling   //开启定时注解
 @ComponentScan(basePackages = ["com.persagy", "com.persagy.server"])           // 配置组件扫描路径
 @MapperScan("com.persagy", "com.persagy.server")                       // Mapper组件扫描路径
+@EnableEurekaClient
 @SpringBootApplication
 open class DataSynApp : SpringBootServletInitializer() {
     companion object {
@@ -53,6 +59,13 @@ open class DataSynApp : SpringBootServletInitializer() {
         private val logger = LoggerFactory.getLogger(DataSynApp::class.java)
     } // Companion object
 
+
+    @Bean
+    @LoadBalanced //在注册中心里进行查找微服务,负载均衡
+    open fun restTemplate(): RestTemplate? {
+        return RestTemplate()
+    }
+
     /**
      * 配置应用
      *

+ 5 - 4
datasyn/src/main/kotlin/com/persagy/server/syn/RabbitMqConfig.java

@@ -30,6 +30,7 @@ import org.springframework.amqp.core.Binding;
 import org.springframework.amqp.core.BindingBuilder;
 import org.springframework.amqp.core.Queue;
 import org.springframework.amqp.core.TopicExchange;
+import org.springframework.beans.factory.annotation.Value;
 import org.springframework.context.annotation.Bean;
 import org.springframework.context.annotation.Configuration;
 
@@ -50,16 +51,16 @@ import org.springframework.context.annotation.Configuration;
 public class RabbitMqConfig {
 
 
-//    @Value("${mqtopid.exchange}")
+    @Value("${mqtopid.exchange}")
     private String exchange = "exchange-dmp";
 
-//    @Value("routingKey-center-adm")
+    @Value("routingKey-center-adm")
     private String orgRoutingKsy = "routingKey-center-adm";
 
-//    @Value("queue-center-adm")
+    @Value("queue-center-adm")
     private String admQueue = "queue-center-adm";
 
-//    @Value("queue-center-any")
+    @Value("queue-center-any")
     private String anyQueue = "queue-center-any";
 
     /**

+ 47 - 0
datasyn/src/main/kotlin/com/persagy/server/syn/ServiceNameConfig.kt

@@ -0,0 +1,47 @@
+/*
+ * *********************************************************************************************************************
+ *
+ *          !!
+ *        .F88X
+ *        X8888Y
+ *      .}888888N;
+ *        i888888N;        .:!              .I$WI:
+ *          R888888I      .'N88~            i8}+8Y&8"l8i$8>8W~'>W8}8]KW+8IIN"8&
+ *          .R888888I    .;N8888~          .X8'  "8I.!,/8"  !%NY8`"8I8~~8>,88I
+ *            +888888N;  .8888888Y                                  "&&8Y.}8,
+ *            ./888888N;  .R888888Y        .'}~    .>}'.`+>  i}!    "i'  +/'  .'i~  !11,.:">,  .~]!  .i}i
+ *              ~888888%:  .I888888l      .]88~`1/iY88Ii+1'.R$8$8]"888888888>  Y8$  W8E  X8E  W8888'188Il}Y88$*
+ *              18888888    E8888881    .]W%8$`R8X'&8%++N8i,8N%N8+l8%`  .}8N:.R$RE%N88N%N$K$R  188,FE$8%~Y88I
+ *            .E888888I  .i8888888'      .:$8I;88+`E8R:/8N,.>881.`$8E/1/]N8X.Y8N`"KF&&FK!'88*."88K./$88%RN888+~
+ *            8888888I  .,N888888~        ~88i"8W,!N8*.I88.}888%F,i$88"F88"  888:E8X.>88!i88>`888*.}Fl1]*}1YKi'
+ *          i888888N'      I888Y          ]88;/EX*IFKFK88X  K8R  .l8W  88Y  ~88}'88E&%8W.X8N``]88!.$8K  .:W8I
+ *        .i888888N;        I8Y          .&8$  .X88!  i881.:%888>I88  ;88]  +88+.';;;;:.Y88X  18N.,88l  .+88/
+ *      .:R888888I
+ *      .&888888I                                          Copyright (c) 2009-2021.  博锐尚格科技股份有限公司
+ *        ~8888'
+ *        .!88~                                                                     All rights reserved.
+ *
+ * *********************************************************************************************************************
+ */
+
+package com.persagy.server.syn
+
+import org.springframework.boot.context.properties.ConfigurationProperties
+import org.springframework.stereotype.Component
+
+/**
+ * 服务名 配置文件
+ *
+ * @author wx  <zhangweixin@sagacloud.com>
+ * @date  2021/1/14 10:52
+ */
+@Component
+@ConfigurationProperties(prefix = "servicename")
+class ServiceNameConfig {
+
+    /** 物理世界 */
+    lateinit var DMPORG: String
+    /** 中台 */
+    lateinit var DMPRWD: String
+
+}

+ 5 - 5
datasyn/src/main/kotlin/com/persagy/server/syn/Swagger3Config.kt

@@ -51,9 +51,9 @@ import org.springframework.web.method.HandlerMethod
 open class Swagger3Config {
 
     /** 标题 */
-    private val title = "数据中心 API"
+    private val title = "数据同步 API"
     /** API 版本号 */
-    private val version = "1.0"
+    private val version = "2.0"
 
     val operationCustomizer = GlobalHeaderOperationCustomizer()
 
@@ -62,7 +62,7 @@ open class Swagger3Config {
      */
     @Bean
     open fun openApi(): OpenAPI {
-        val contact = Contact().name("庞利祥").email("sybotan@126.com")
+        val contact = Contact().name("张维新").email("zhangweiixn@sagacloud.cn")
         return OpenAPI()
             .components(
                 Components()
@@ -71,12 +71,12 @@ open class Swagger3Config {
                 Info()
                 .title(title)
                 .version(version)
-                .termsOfService("http://www.sybotan.com")
+                .termsOfService("http://www.persagy.com")
                 .contact(contact)
                 .license(
                     License()
                     .name("Apache 2.0")
-                    .url("http://www.sybotan.com")))
+                    .url("http://www.persagy.com")))
     }
 
 

+ 77 - 0
datasyn/src/main/kotlin/com/persagy/server/syn/controllers/TestController.kt

@@ -0,0 +1,77 @@
+/*
+ * *********************************************************************************************************************
+ *
+ *          !!
+ *        .F88X
+ *        X8888Y
+ *      .}888888N;
+ *        i888888N;        .:!              .I$WI:
+ *          R888888I      .'N88~            i8}+8Y&8"l8i$8>8W~'>W8}8]KW+8IIN"8&
+ *          .R888888I    .;N8888~          .X8'  "8I.!,/8"  !%NY8`"8I8~~8>,88I
+ *            +888888N;  .8888888Y                                  "&&8Y.}8,
+ *            ./888888N;  .R888888Y        .'}~    .>}'.`+>  i}!    "i'  +/'  .'i~  !11,.:">,  .~]!  .i}i
+ *              ~888888%:  .I888888l      .]88~`1/iY88Ii+1'.R$8$8]"888888888>  Y8$  W8E  X8E  W8888'188Il}Y88$*
+ *              18888888    E8888881    .]W%8$`R8X'&8%++N8i,8N%N8+l8%`  .}8N:.R$RE%N88N%N$K$R  188,FE$8%~Y88I
+ *            .E888888I  .i8888888'      .:$8I;88+`E8R:/8N,.>881.`$8E/1/]N8X.Y8N`"KF&&FK!'88*."88K./$88%RN888+~
+ *            8888888I  .,N888888~        ~88i"8W,!N8*.I88.}888%F,i$88"F88"  888:E8X.>88!i88>`888*.}Fl1]*}1YKi'
+ *          i888888N'      I888Y          ]88;/EX*IFKFK88X  K8R  .l8W  88Y  ~88}'88E&%8W.X8N``]88!.$8K  .:W8I
+ *        .i888888N;        I8Y          .&8$  .X88!  i881.:%888>I88  ;88]  +88+.';;;;:.Y88X  18N.,88l  .+88/
+ *      .:R888888I
+ *      .&888888I                                          Copyright (c) 2009-2021.  博锐尚格科技股份有限公司
+ *        ~8888'
+ *        .!88~                                                                     All rights reserved.
+ *
+ * *********************************************************************************************************************
+ */
+
+package com.persagy.server.syn.controllers
+
+import com.alibaba.fastjson.JSONObject
+import com.persagy.server.syn.models.response.GroupResponse
+import com.persagy.service.models.enums.SResponseType
+import com.persagy.service.models.responses.SBaseResponse
+import io.swagger.v3.oas.annotations.Operation
+import io.swagger.v3.oas.annotations.tags.Tag
+import org.slf4j.LoggerFactory
+import org.springframework.beans.factory.annotation.Autowired
+import org.springframework.web.bind.annotation.GetMapping
+import org.springframework.web.bind.annotation.RequestMapping
+import org.springframework.web.bind.annotation.RestController
+import org.springframework.web.client.RestTemplate
+
+/**
+ *
+ * @author wx  <zhangweixin@sagacloud.com>
+ * @date  2021/1/12 9:31
+ */
+@Tag(name = "测试")
+@RestController
+@RequestMapping("/test01")
+class TestController {
+
+    companion object {
+        // 日志
+        private val logger = LoggerFactory.getLogger(TestController::class.java)
+    } // Companion object
+
+    // 注意获取这个实例
+    @Autowired
+    private val restTemplate: RestTemplate? = null
+
+    val DMPORG = "http://DMP-ORG"
+    /**
+     * 测试获取 ip
+     */
+    @Operation(summary = "测试获取ip", description = "",tags = ["001"])
+    @GetMapping(value = ["/test/ip"])
+    fun groupInfo(): SBaseResponse {
+        val jsonObject = JSONObject()
+        val jsonObject2 = JSONObject()
+        jsonObject["criteria"] = jsonObject2
+        val patchForObject =
+            restTemplate?.postForObject(DMPORG + "/org/group/query", jsonObject, GroupResponse::class.java)
+        return SBaseResponse(SResponseType.success)
+    }
+
+
+}

+ 353 - 123
datasyn/src/main/kotlin/com/persagy/server/syn/models/api/dict/DictTypeApi.kt

@@ -30,7 +30,9 @@ import com.alibaba.fastjson.JSONArray
 import com.alibaba.fastjson.JSONObject
 import com.persagy.base.extensions.toJson
 import com.persagy.base.utils.SHttpUtil
+import com.persagy.server.syn.CustomProperties
 import com.persagy.server.syn.Opts
+import com.persagy.server.syn.ServiceNameConfig
 import com.persagy.server.syn.models.DictPlatformInfo
 import com.persagy.server.syn.models.DictPlatformType
 import com.persagy.server.syn.models.DictProject
@@ -39,6 +41,7 @@ import com.persagy.server.syn.models.response.*
 import com.persagy.server.syn.services.dict.DClassDefService
 import com.persagy.service.utils.SSpringContextUtil
 import org.slf4j.LoggerFactory
+import org.springframework.web.client.RestTemplate
 
 /**
  * 字典API
@@ -54,6 +57,21 @@ object DictTypeApi {
         SSpringContextUtil.getBean(Opts::class.java) as Opts
     } // opts
 
+    /** 获取配置文件的服务名 */
+    val serviceNameConfig by lazy {
+        SSpringContextUtil.getBean(ServiceNameConfig::class.java) as ServiceNameConfig
+    }
+
+    /** 获取配置自定义属性 */
+    val customProperties by lazy {
+        SSpringContextUtil.getBean(CustomProperties::class.java) as CustomProperties
+    }
+
+    /** Rest服务 */
+    val restTemplate by lazy {
+        SSpringContextUtil.getBean(RestTemplate::class.java) as RestTemplate
+    }
+
     /**
      * 字典类型
      */
@@ -72,15 +90,28 @@ object DictTypeApi {
     fun groupQuery():ArrayList<Group> {
         var data = ArrayList<Group>()
         try {
-            val url = "${opts.dataPlatform}/org/group/query"
             val jsonObject = JSONObject()
             val jsonObject2 = JSONObject()
             jsonObject["criteria"] = jsonObject2
-            val postObject = SHttpUtil.postObject<GroupResponse>(url, jsonObject)
-            DClassDefService.logger.debug("集团结果:${postObject.toJson()}")
-            if (postObject.result == "success"){
-                if (!postObject.data.isNullOrEmpty()){
-                    data = postObject.data!!
+            /** 直接 http 请求还是通过注册中心 */
+            if (!customProperties.eurekaorhttp) {
+                val url = "${opts.dataPlatform}/org/group/query"
+                val postObject = SHttpUtil.postObject<GroupResponse>(url, jsonObject)
+                DClassDefService.logger.debug("集团结果:${postObject.toJson()}")
+                if (postObject.result == "success"){
+                    if (!postObject.data.isNullOrEmpty()){
+                        data = postObject.data!!
+                    }
+                }
+            } else {
+                /** 注册中心 */
+                val url = "${serviceNameConfig.DMPORG}/org/group/query"
+                val postForObject = restTemplate.postForObject(url, jsonObject, GroupResponse::class.java)
+                DClassDefService.logger.debug("集团结果:${postForObject.toJson()}")
+                if (postForObject.result == "success"){
+                    if (!postForObject.data.isNullOrEmpty()){
+                        data = postForObject.data!!
+                    }
                 }
             }
         } catch (e: Exception) {
@@ -96,19 +127,40 @@ object DictTypeApi {
      * @return 项目对象列表
      */
     fun dictProjectQuery(code: String): ArrayList<DictProject>{
-        val url = "${opts.dataPlatform}/org/project/query?userId=123456&groupCode=$code"
-        val jsonObject = JSONObject()
-        val jsonObject2 = JSONObject()
-        jsonObject2["groupCode"] = code
-        jsonObject["criteria"] = jsonObject2
-        DClassDefService.logger.debug("url:${url}")
-        DClassDefService.logger.debug("项目请求体:${jsonObject.toJson()}")
-        val postObject = SHttpUtil.postObject<DictProjectResponse>(url, jsonObject)
-        if (postObject.result == opts.SUCCESS_CODE){
-                if (!postObject.data.isNullOrEmpty()){
-                    return  postObject.data!!
+
+        try {
+            val jsonObject = JSONObject()
+            val jsonObject2 = JSONObject()
+            jsonObject2["groupCode"] = code
+            jsonObject["criteria"] = jsonObject2
+            /** 直接 http 请求还是通过注册中心 */
+            if (!customProperties.eurekaorhttp) {
+                val url = "${opts.dataPlatform}/org/project/query?userId=123456&groupCode=$code"
+
+                DClassDefService.logger.debug("url:${url}")
+                DClassDefService.logger.debug("项目请求体:${jsonObject.toJson()}")
+                val postObject = SHttpUtil.postObject<DictProjectResponse>(url, jsonObject)
+                if (postObject.result == opts.SUCCESS_CODE){
+                    if (!postObject.data.isNullOrEmpty()){
+                        return  postObject.data!!
+                    }
                 }
+            }else {
+                val url = "${serviceNameConfig.DMPORG}/org/project/query?userId=123456&groupCode=$code"
+                DClassDefService.logger.debug("url:${url}")
+                DClassDefService.logger.debug("项目请求体:${jsonObject.toJson()}")
+    //            val postObject = SHttpUtil.postObject<DictProjectResponse>(url, jsonObject)
+                val postObject = restTemplate.postForObject(url, jsonObject, DictProjectResponse::class.java)
+                if (postObject.result == opts.SUCCESS_CODE){
+                    if (!postObject.data.isNullOrEmpty()){
+                        return  postObject.data!!
+                    }
+                }
+            }
+        } catch (e: Exception) {
+            e.printStackTrace()
         }
+
         return ArrayList()
     } // Fun dictProjectQuery()
 
@@ -116,19 +168,36 @@ object DictTypeApi {
      * 平台字典对象类型
      */
     fun dictPlatform(): ArrayList<DictPlatformType>{
-        val url = "${opts.dataPlatform}/rwd/def/class/"
-        val jsonObject = JSONObject()
-        val jsonObject2 = JSONObject()
-        jsonObject2["type"] = "common"
-        jsonObject["criteria"] = jsonObject2
-        val postObject = SHttpUtil.postObject<DictPlatformTypeResponse>(url, jsonObject)
-        if (postObject.result == opts.SUCCESS_CODE) {
-            if (!postObject.data.isNullOrEmpty()){
-                return postObject.data!!
+
+        try {
+            val jsonObject = JSONObject()
+            val jsonObject2 = JSONObject()
+            jsonObject2["type"] = "common"
+            jsonObject["criteria"] = jsonObject2
+            /** 直接 http 请求还是通过注册中心 */
+            if (!customProperties.eurekaorhttp) {
+                val url = "${opts.dataPlatform}/rwd/def/class/"
+                val postObject = SHttpUtil.postObject<DictPlatformTypeResponse>(url, jsonObject)
+                if (postObject.result == opts.SUCCESS_CODE) {
+                    if (!postObject.data.isNullOrEmpty()){
+                        return postObject.data!!
+                    }
+                }
+            } else {
+                val url = "${serviceNameConfig.DMPRWD}/rwd/def/class/"
+    //            val postObject = SHttpUtil.postObject<DictPlatformTypeResponse>(url, jsonObject)
+                val postObject = restTemplate.postForObject(url, jsonObject, DictPlatformTypeResponse::class.java)
+                if (postObject.result == opts.SUCCESS_CODE) {
+                    if (!postObject.data.isNullOrEmpty()){
+                        return postObject.data!!
+                    }
+                }
             }
+        } catch (e: Exception) {
+            e.printStackTrace()
         }
         return ArrayList()
-    } // Fun dictPlatform()
+    }
 
 
     /**
@@ -138,21 +207,36 @@ object DictTypeApi {
      * @param   type        平台或集团
      */
     fun dictPlatformInfo(category: String,type: String): ArrayList<DictPlatformInfo>{
-        val url = "${opts.dataPlatform}/rwd/def/funcid"
-        val jsonObject = JSONObject()
-        val jsonObject2 = JSONObject()
-        jsonObject2["type"] = type
-        jsonObject2["classCode"] = category
-        jsonObject["criteria"] = jsonObject2
-
-        val postObject = SHttpUtil.postObject<DictPlatformInfoResponse>(url, jsonObject)
-        if (postObject.result == opts.SUCCESS_CODE) {
-            if (!postObject.data.isNullOrEmpty()){
-                return postObject.data!!
+        try {
+            val jsonObject = JSONObject()
+            val jsonObject2 = JSONObject()
+            jsonObject2["type"] = type
+            jsonObject2["classCode"] = category
+            jsonObject["criteria"] = jsonObject2
+            /** 直接 http 请求还是通过注册中心 */
+            if (!customProperties.eurekaorhttp) {
+                val url = "${opts.dataPlatform}/rwd/def/funcid"
+                val postObject = SHttpUtil.postObject<DictPlatformInfoResponse>(url, jsonObject)
+                if (postObject.result == opts.SUCCESS_CODE) {
+                    if (!postObject.data.isNullOrEmpty()){
+                        return postObject.data!!
+                    }
+                }
+            } else {
+                val url = "${serviceNameConfig.DMPRWD}/rwd/def/funcid"
+    //            val postObject = SHttpUtil.postObject<DictPlatformInfoResponse>(url, jsonObject)
+                val postObject = restTemplate.postForObject(url, jsonObject, DictPlatformInfoResponse::class.java)
+                if (postObject.result == opts.SUCCESS_CODE) {
+                    if (!postObject.data.isNullOrEmpty()){
+                        return postObject.data!!
+                    }
+                }
             }
+        } catch (e: Exception) {
+            e.printStackTrace()
         }
         return ArrayList()
-    } // Fun dictPlatformInfo()
+    }
 
     /**
      * 获取专业
@@ -161,17 +245,37 @@ object DictTypeApi {
      * @return 专业列表
      */
     fun dictMajor(type: String): ArrayList<DictMajorResponse.DataBean>{
-        val url = "${opts.dataPlatform}/dic/dt/data/query?groupCode=WD&userId=123456"
-        val jsonObject = JSONObject()
-        val jsonObject2 = JSONObject()
-        jsonObject2["type"] = type
-        jsonObject["criteria"] = jsonObject2
-        val postObject = SHttpUtil.postObject<DictMajorResponse>(url, jsonObject)
-        if (postObject.result == opts.SUCCESS_CODE) {
-            if (!postObject.data.isNullOrEmpty()){
-                return postObject.data!!
+        try {
+            try {
+                val jsonObject = JSONObject()
+                val jsonObject2 = JSONObject()
+                jsonObject2["type"] = type
+                jsonObject["criteria"] = jsonObject2
+                if (!customProperties.eurekaorhttp) {
+                    val url = "${opts.dataPlatform}/dic/dt/data/query?groupCode=WD&userId=123456"
+                    val postObject = SHttpUtil.postObject<DictMajorResponse>(url, jsonObject)
+                    if (postObject.result == opts.SUCCESS_CODE) {
+                        if (!postObject.data.isNullOrEmpty()){
+                            return postObject.data!!
+                        }
+                    }
+                }else {
+                    val url = "${serviceNameConfig.DMPRWD}/dic/dt/data/query?groupCode=WD&userId=123456"
+        //            val postObject = SHttpUtil.postObject<DictMajorResponse>(url, jsonObject)
+                    val postObject = restTemplate.postForObject(url, jsonObject, DictMajorResponse::class.java)
+                    if (postObject.result == opts.SUCCESS_CODE) {
+                        if (!postObject.data.isNullOrEmpty()){
+                            return postObject.data!!
+                        }
+                    }
+                }
+            } catch (e: Exception) {
+                e.printStackTrace()
             }
+        } catch (e: Exception) {
+            e.printStackTrace()
         }
+
         return ArrayList()
     } // Fun dictMajor()
 
@@ -180,17 +284,34 @@ object DictTypeApi {
      * 待处理
      */
     fun dictGroupScheme(groupId: String): ArrayList<DictGroupSchemeResponse.DataBean>{
-        val url = "${opts.dataPlatform}/dict/scheme/query"
-        val jsonObject = JSONObject()
-        val jsonObject2 = JSONObject()
-        jsonObject2["groupId"] = groupId
-        jsonObject["criteria"] = jsonObject2
-        val postObject = SHttpUtil.postObject<DictGroupSchemeResponse>(url, jsonObject)
-        if (postObject.result == opts.SUCCESS_CODE) {
-            if (!postObject.data.isNullOrEmpty()){
-                return postObject.data!!
+
+        try {
+            val jsonObject = JSONObject()
+            val jsonObject2 = JSONObject()
+            jsonObject2["groupId"] = groupId
+            jsonObject["criteria"] = jsonObject2
+            if (!customProperties.eurekaorhttp) {
+                val url = "${opts.dataPlatform}/dict/scheme/query"
+                val postObject = SHttpUtil.postObject<DictGroupSchemeResponse>(url, jsonObject)
+                if (postObject.result == opts.SUCCESS_CODE) {
+                    if (!postObject.data.isNullOrEmpty()){
+                        return postObject.data!!
+                    }
+                }
+            } else {
+                val url = "${serviceNameConfig.DMPRWD}/dict/scheme/query"
+    //            val postObject = SHttpUtil.postObject<DictGroupSchemeResponse>(url, jsonObject)
+                val postObject = restTemplate.postForObject(url, jsonObject, DictGroupSchemeResponse::class.java)
+                if (postObject.result == opts.SUCCESS_CODE) {
+                    if (!postObject.data.isNullOrEmpty()){
+                        return postObject.data!!
+                    }
+                }
             }
+        } catch (e: Exception) {
+            e.printStackTrace()
         }
+
         return ArrayList()
     } // Fun dictGroupScheme()
 
@@ -199,17 +320,34 @@ object DictTypeApi {
      * 待处理
      */
     fun dictSchemeCategoty(schemeId: Int): ArrayList<DictSchemeCategoryResponse.DataBean>{
-        val url = "${opts.dataPlatform}/dict/scheme/class/query"
-        val jsonObject = JSONObject()
-        val jsonObject2 = JSONObject()
-        jsonObject2["groupId"] = schemeId.toString()
-        jsonObject["criteria"] = jsonObject2
-        val postObject = SHttpUtil.postObject<DictSchemeCategoryResponse>(url, jsonObject)
-        if (postObject.result == opts.SUCCESS_CODE) {
-            if (!postObject.data.isNullOrEmpty()){
-                return postObject.data!!
+
+        try {
+            val jsonObject = JSONObject()
+            val jsonObject2 = JSONObject()
+            jsonObject2["groupId"] = schemeId.toString()
+            jsonObject["criteria"] = jsonObject2
+            if (!customProperties.eurekaorhttp) {
+                val url = "${opts.dataPlatform}/dict/scheme/class/query"
+                val postObject = SHttpUtil.postObject<DictSchemeCategoryResponse>(url, jsonObject)
+                if (postObject.result == opts.SUCCESS_CODE) {
+                    if (!postObject.data.isNullOrEmpty()){
+                        return postObject.data!!
+                    }
+                }
+            } else {
+                val url = "${serviceNameConfig.DMPRWD}/dict/scheme/class/query"
+    //            val postObject = SHttpUtil.postObject<DictSchemeCategoryResponse>(url, jsonObject)
+                val postObject = restTemplate.postForObject(url, jsonObject, DictSchemeCategoryResponse::class.java)
+                if (postObject.result == opts.SUCCESS_CODE) {
+                    if (!postObject.data.isNullOrEmpty()){
+                        return postObject.data!!
+                    }
+                }
             }
+        } catch (e: Exception) {
+            e.printStackTrace()
         }
+
         return ArrayList()
     } // Fun dictSchemeCategoty()
 
@@ -218,18 +356,34 @@ object DictTypeApi {
      * 待处理
      */
     fun dictSchemeCategotyInfo(schemeId: Int,code: String): ArrayList<DictSchemeCategoryResponseInfo.DataBean>{
-        val url = "${opts.dataPlatform}/dict/scheme/funcid/query"
-        val jsonObject = JSONObject()
-        val jsonObject2 = JSONObject()
-        jsonObject2["schemeId"] = schemeId.toString()
-        jsonObject2["classCode"] = code
-        jsonObject["criteria"] = jsonObject2
-        val postObject = SHttpUtil.postObject<DictSchemeCategoryResponseInfo>(url, jsonObject)
-        if (postObject.result == opts.SUCCESS_CODE) {
-            if (!postObject.data.isNullOrEmpty()){
-                return postObject.data!!
+        try {
+            val jsonObject = JSONObject()
+            val jsonObject2 = JSONObject()
+            jsonObject2["schemeId"] = schemeId.toString()
+            jsonObject2["classCode"] = code
+            jsonObject["criteria"] = jsonObject2
+            if (!customProperties.eurekaorhttp) {
+                val url = "${opts.dataPlatform}/dict/scheme/funcid/query"
+                val postObject = SHttpUtil.postObject<DictSchemeCategoryResponseInfo>(url, jsonObject)
+                if (postObject.result == opts.SUCCESS_CODE) {
+                    if (!postObject.data.isNullOrEmpty()){
+                        return postObject.data!!
+                    }
+                }
+            } else {
+                val url = "${serviceNameConfig.DMPRWD}/dict/scheme/funcid/query"
+    //            val postObject = SHttpUtil.postObject<DictSchemeCategoryResponseInfo>(url, jsonObject)
+                val postObject = restTemplate.postForObject(url, jsonObject, DictSchemeCategoryResponseInfo::class.java)
+                if (postObject.result == opts.SUCCESS_CODE) {
+                    if (!postObject.data.isNullOrEmpty()){
+                        return postObject.data!!
+                    }
+                }
             }
+        } catch (e: Exception) {
+            e.printStackTrace()
         }
+
         return ArrayList()
     } // Fun dictSchemeCategotyInfo()
 
@@ -238,19 +392,35 @@ object DictTypeApi {
      * 待处理
      */
     fun dictSchemeAndProject(projectId: String): ArrayList<DictSchemeAndProjectResponse.DataBean>{
-        val url = "${opts.dataPlatform}/dict/scheme/project/query"
-        val jsonObject = JSONObject()
-        val jsonObject2 = JSONObject()
-        val jsonArray = JSONArray()
-        jsonArray.fluentAdd(projectId)
-        jsonObject2["projectId"] = jsonArray
-        jsonObject["criteria"] = jsonObject2
-        val postObject = SHttpUtil.postObject<DictSchemeAndProjectResponse>(url, jsonObject)
-        if (postObject.result == opts.SUCCESS_CODE) {
-            if (!postObject.data.isNullOrEmpty()){
-                return postObject.data!!
+        try {
+            val jsonObject = JSONObject()
+            val jsonObject2 = JSONObject()
+            val jsonArray = JSONArray()
+            jsonArray.fluentAdd(projectId)
+            jsonObject2["projectId"] = jsonArray
+            jsonObject["criteria"] = jsonObject2
+            if (!customProperties.eurekaorhttp) {
+                val url = "${opts.dataPlatform}/dict/scheme/project/query"
+                val postObject = SHttpUtil.postObject<DictSchemeAndProjectResponse>(url, jsonObject)
+                if (postObject.result == opts.SUCCESS_CODE) {
+                    if (!postObject.data.isNullOrEmpty()){
+                        return postObject.data!!
+                    }
+                }
+            } else {
+                val url = "${serviceNameConfig.DMPRWD}/dict/scheme/project/query"
+    //            val postObject = SHttpUtil.postObject<DictSchemeAndProjectResponse>(url, jsonObject)
+                val postObject = restTemplate.postForObject(url, jsonObject, DictSchemeAndProjectResponse::class.java)
+                if (postObject.result == opts.SUCCESS_CODE) {
+                    if (!postObject.data.isNullOrEmpty()){
+                        return postObject.data!!
+                    }
+                }
             }
+        } catch (e: Exception) {
+            e.printStackTrace()
         }
+
         return ArrayList()
     } // dictSchemeAndProject()
 
@@ -261,16 +431,32 @@ object DictTypeApi {
      */
     fun dictGroup(groupId: String): ArrayList<DictPlatformType>{
         //type=group&groupCode=wd
-        val url = "${opts.dataPlatform}/rwd/def/class?groupCode=$groupId"
-        val jsonObject = JSONObject()
-        val jsonObject2 = JSONObject()
-        jsonObject["criteria"] = jsonObject2
-        val dictGroupCategoryResponse = SHttpUtil.postObject<DictPlatformTypeResponse>(url,jsonObject)
-        if (dictGroupCategoryResponse.result == opts.SUCCESS_CODE) {
-            if (!dictGroupCategoryResponse.data.isNullOrEmpty()){
-                return dictGroupCategoryResponse.data!!
+        try {
+            val jsonObject = JSONObject()
+            val jsonObject2 = JSONObject()
+            jsonObject["criteria"] = jsonObject2
+            if (!customProperties.eurekaorhttp) {
+                val url = "${opts.dataPlatform}/rwd/def/class?groupCode=$groupId"
+                val dictGroupCategoryResponse = SHttpUtil.postObject<DictPlatformTypeResponse>(url,jsonObject)
+                if (dictGroupCategoryResponse.result == opts.SUCCESS_CODE) {
+                    if (!dictGroupCategoryResponse.data.isNullOrEmpty()){
+                        return dictGroupCategoryResponse.data!!
+                    }
+                }
+            } else {
+                val url = "${serviceNameConfig.DMPRWD}/rwd/def/class?groupCode=$groupId"
+    //            val dictGroupCategoryResponse = SHttpUtil.postObject<DictPlatformTypeResponse>(url,jsonObject)
+                val dictGroupCategoryResponse = restTemplate.postForObject(url, jsonObject, DictPlatformTypeResponse::class.java)
+                if (dictGroupCategoryResponse.result == opts.SUCCESS_CODE) {
+                    if (!dictGroupCategoryResponse.data.isNullOrEmpty()){
+                        return dictGroupCategoryResponse.data!!
+                    }
+                }
             }
+        } catch (e: Exception) {
+            e.printStackTrace()
         }
+
         return ArrayList()
     } // Fun dictGroup()
 
@@ -278,17 +464,33 @@ object DictTypeApi {
      * 集团下对象信息点
      */
     fun dictGroupInfo(groupId: String,code: String): ArrayList<DictPlatformInfo>{
-        val url = "${opts.dataPlatform}/rwd/def/funcid?groupCode=$groupId"
-        val jsonObject = JSONObject()
-        val jsonObject2 = JSONObject()
-        jsonObject2["classCode"] = code
-        jsonObject["criteria"] = jsonObject2
-        val dictPlatformInfoResponse = SHttpUtil.postObject<DictPlatformInfoResponse>(url,jsonObject)
-        if (dictPlatformInfoResponse.result == opts.SUCCESS_CODE) {
-            if (!dictPlatformInfoResponse.data.isNullOrEmpty()){
-                return dictPlatformInfoResponse.data!!
+        try {
+            val jsonObject = JSONObject()
+            val jsonObject2 = JSONObject()
+            jsonObject2["classCode"] = code
+            jsonObject["criteria"] = jsonObject2
+            if (!customProperties.eurekaorhttp) {
+                val url = "${opts.dataPlatform}/rwd/def/funcid?groupCode=$groupId"
+                val dictPlatformInfoResponse = SHttpUtil.postObject<DictPlatformInfoResponse>(url,jsonObject)
+                if (dictPlatformInfoResponse.result == opts.SUCCESS_CODE) {
+                    if (!dictPlatformInfoResponse.data.isNullOrEmpty()){
+                        return dictPlatformInfoResponse.data!!
+                    }
+                }
+            } else {
+                val url = "${serviceNameConfig.DMPRWD}/rwd/def/funcid?groupCode=$groupId"
+    //            val dictPlatformInfoResponse = SHttpUtil.postObject<DictPlatformInfoResponse>(url,jsonObject)
+                val dictPlatformInfoResponse = restTemplate.postForObject(url, jsonObject, DictPlatformInfoResponse::class.java)
+                if (dictPlatformInfoResponse.result == opts.SUCCESS_CODE) {
+                    if (!dictPlatformInfoResponse.data.isNullOrEmpty()){
+                        return dictPlatformInfoResponse.data!!
+                    }
+                }
             }
+        } catch (e: Exception) {
+            e.printStackTrace()
         }
+
         return ArrayList()
     } // Fun dictGroupInfo()
 
@@ -299,17 +501,36 @@ object DictTypeApi {
      */
     fun dictProject(groupCode: String,projectId: String): ArrayList<DictPlatformType>{
         //type=group&groupCode=wd
-        val url = "${opts.dataPlatform}/rwd/def/class?groupCode=$groupCode&projectId=$projectId"
-        val jsonObject = JSONObject()
-        val jsonObject2 = JSONObject()
-        jsonObject["criteria"] = jsonObject2
-        logger.debug("url = $url")
-        logger.debug("boby = ${jsonObject.toJson()}")
-        val dictGroupCategoryResponse = SHttpUtil.postObject<DictPlatformTypeResponse>(url,jsonObject)
-        if (dictGroupCategoryResponse.result == opts.SUCCESS_CODE) {
-            if (!dictGroupCategoryResponse.data.isNullOrEmpty()){
-                return dictGroupCategoryResponse.data!!
+        try {
+            val jsonObject = JSONObject()
+            val jsonObject2 = JSONObject()
+            jsonObject["criteria"] = jsonObject2
+
+            if (!customProperties.eurekaorhttp) {
+                val url = "${opts.dataPlatform}/rwd/def/class?groupCode=$groupCode&projectId=$projectId"
+                logger.debug("url = $url")
+                logger.debug("boby = ${jsonObject.toJson()}")
+                val dictGroupCategoryResponse = SHttpUtil.postObject<DictPlatformTypeResponse>(url,jsonObject)
+                if (dictGroupCategoryResponse.result == opts.SUCCESS_CODE) {
+                    if (!dictGroupCategoryResponse.data.isNullOrEmpty()){
+                        return dictGroupCategoryResponse.data!!
+                    }
+                }
+            } else {
+                val url = "${serviceNameConfig.DMPRWD}/rwd/def/class?groupCode=$groupCode&projectId=$projectId"
+                logger.debug("url = $url")
+                logger.debug("boby = ${jsonObject.toJson()}")
+//                val dictGroupCategoryResponse = SHttpUtil.postObject<DictPlatformTypeResponse>(url,jsonObject)
+                val dictGroupCategoryResponse = restTemplate.postForObject(url, jsonObject, DictPlatformTypeResponse::class.java)
+                if (dictGroupCategoryResponse.result == opts.SUCCESS_CODE) {
+                    if (!dictGroupCategoryResponse.data.isNullOrEmpty()){
+                        return dictGroupCategoryResponse.data!!
+                    }
+                }
             }
+
+        } catch (e: Exception) {
+            e.printStackTrace()
         }
         return ArrayList()
     } // Fun dictGroup()
@@ -318,20 +539,29 @@ object DictTypeApi {
      * 集团下对象信息点
      */
     fun dictProjectInfo(groupId: String,code: String,projectId: String): ArrayList<DictPlatformInfo>{
-        val url = "${opts.dataPlatform}/rwd/def/funcid?groupCode=$groupId&projectId=$projectId"
         val jsonObject = JSONObject()
         val jsonObject2 = JSONObject()
         jsonObject2["classCode"] = code
         jsonObject["criteria"] = jsonObject2
-        val dictPlatformInfoResponse = SHttpUtil.postObject<DictPlatformInfoResponse>(url,jsonObject)
-        if (dictPlatformInfoResponse.result == opts.SUCCESS_CODE) {
-            if (!dictPlatformInfoResponse.data.isNullOrEmpty()){
-                return dictPlatformInfoResponse.data!!
+        if (!customProperties.eurekaorhttp) {
+            val url = "${opts.dataPlatform}/rwd/def/funcid?groupCode=$groupId&projectId=$projectId"
+            val dictPlatformInfoResponse = SHttpUtil.postObject<DictPlatformInfoResponse>(url,jsonObject)
+            if (dictPlatformInfoResponse.result == opts.SUCCESS_CODE) {
+                if (!dictPlatformInfoResponse.data.isNullOrEmpty()){
+                    return dictPlatformInfoResponse.data!!
+                }
+            }
+        }else {
+            val url = "${serviceNameConfig.DMPRWD}/rwd/def/funcid?groupCode=$groupId&projectId=$projectId"
+//            val dictPlatformInfoResponse = SHttpUtil.postObject<DictPlatformInfoResponse>(url,jsonObject)
+            val dictPlatformInfoResponse = restTemplate.postForObject(url, jsonObject, DictPlatformInfoResponse::class.java)
+            if (dictPlatformInfoResponse.result == opts.SUCCESS_CODE) {
+                if (!dictPlatformInfoResponse.data.isNullOrEmpty()){
+                    return dictPlatformInfoResponse.data!!
+                }
             }
         }
         return ArrayList()
-    } // Fun dictGroupInfo()
-
-
+    }
 
-} // Object DictTypeApi
+}

+ 5 - 0
datasyn/src/main/kotlin/com/persagy/server/syn/services/dict/DClassDefService.kt

@@ -30,6 +30,8 @@ import com.persagy.base.extensions.toJson
 import com.persagy.database.SFilter
 import com.persagy.mybatis.SMybatisDao
 import com.persagy.server.datacenter.models.entities.dictnew.*
+import com.persagy.server.syn.CustomProperties
+import com.persagy.server.syn.ServiceNameConfig
 import com.persagy.server.syn.models.api.dict.DictTypeApi
 import com.persagy.server.syn.task.SyncTaskDict
 import com.persagy.server.syn.utils.ParamTools
@@ -37,6 +39,7 @@ import com.persagy.service.SBaseService
 import com.persagy.service.SObjectService
 import com.persagy.service.models.enums.SResponseType
 import com.persagy.service.models.responses.SBaseResponse
+import com.persagy.service.utils.SSpringContextUtil
 import org.slf4j.LoggerFactory
 import java.util.concurrent.Executors
 
@@ -47,6 +50,8 @@ import java.util.concurrent.Executors
  */
 object DClassDefService : SObjectService<DefClass>(SMybatisDao(DefClass::class.java)) {
 
+
+
     /** 日志 */
     val logger = LoggerFactory.getLogger(DClassDefService::class.java)
     /** 集团服务 */

+ 29 - 8
datasyn/src/main/resources/application-dev.yml

@@ -1,15 +1,14 @@
-server:
-  port: 8082
 
 spring:
+
   datasource:
-#    url:                                jdbc:postgresql://60.205.177.43:5432/datacenterlabsl
-#    username:                           postgres
-#    password:                           123qwe!@#
-    url:                                jdbc:postgresql://192.168.64.14:5432/datacenterlabsl
-#    url:                                jdbc:postgresql://39.102.40.239:5432/datacenter
+    #    url:                                jdbc:postgresql://60.205.177.43:5432/datacenterlabsl
+    #    username:                           postgres
+    #    password:                           123qwe!@#
+    #    url:                                jdbc:postgresql://192.168.64.14:5432/datacenterlabsl
+    url:                                jdbc:postgresql://39.102.40.239:5432/datacenter
     username:                           postgres
-#    password:                           persagy_2020qwe!@#
+    #    password:                           persagy_2020qwe!@#
     password:                           cGVyc2FneV8yMDIwcXdlIUAj
 
     #配置rabbitMq 服务器
@@ -21,6 +20,19 @@ spring:
     #虚拟host 可以不设置,使用server默认host
     virtual-host: /test
 
+server:
+  port: 8082
+
+# spring-cloud相关配置
+eureka:
+  client:                                   #客户端注册进eureka服务列表内
+    service-url:
+#      defaultZone:                          http://192.168.64.18:9931/eureka
+      defaultZone:                          http://frame:123456@192.168.64.18:9931/eureka
+#      defaultZone:                          http://admin:1qaz2wsx@127.0.0.1:8888/eureka/ #增加密码
+      enable-self-preservation: false # 设为false,关闭自我保护
+      eviction-interval-timer-in-ms: 5000 # 清理间隔(单位毫秒,默认是60*1000)启用主动失效,
+
 saga:
   dataPlatform:                        http://39.102.40.239:9970
 
@@ -28,4 +40,13 @@ mqtopid:
   exchange:                           exchange-dmp
   routingKey:
 
+custom:
+  #true 代表eureka  false  代表 http
+  eurekaorhttp:                       true
+
+# 服务名
+servicename:
+
+  DMPORG:                             DMP-ORG   #物理3世界
+  DMPRWD:                             DMP-RWD   #中台
 

+ 37 - 0
datasyn/src/main/resources/application-test.yml

@@ -0,0 +1,37 @@
+server:
+  port: 8089
+
+eureka:
+  client:                                   #客户端注册进eureka服务列表内
+    service-url:
+      #      defaultZone:                          http://192.168.64.18:9931/eureka
+      defaultZone:                          http://frame:123456@192.168.64.18:9931/eureka
+      #      defaultZone:                          http://admin:1qaz2wsx@127.0.0.1:8888/eureka/ #增加密码
+      enable-self-preservation: false # 设为false,关闭自我保护
+      eviction-interval-timer-in-ms: 5000 # 清理间隔(单位毫秒,默认是60*1000)启用主动失效,
+
+
+spring:
+  datasource:
+    url:                                jdbc:postgresql://192.168.64.15:5432/datacenter
+    username:                           postgres
+    password:                           cGVyc2FneV8yMDIwcXdlIUAj
+
+
+
+
+    #配置rabbitMq 服务器
+  rabbitmq:
+    host: 192.168.64.15
+    port: 9936
+    username: admin
+    password: brzj123456
+    #虚拟host 可以不设置,使用server默认host
+    virtual-host: /test
+
+saga:
+#  dataPlatform:                        http://192.168.64.17:8832
+  dataPlatform:                        http://39.102.40.239:9970
+mqtopid:
+  exchange:                           exchange-dmp
+  routingKey:

+ 1 - 1
datasyn/src/main/resources/application.yml

@@ -1,7 +1,7 @@
 
 spring:
   application:
-    name:                               datasyn
+    name:                                   datasyn
   kafka:
     producer:
       retries:                              0

+ 27 - 0
equip-component/src/main/resources/application-test.yml

@@ -0,0 +1,27 @@
+
+# spring-cloud相关配置
+eureka:
+  client:                                   #客户端注册进eureka服务列表内
+    service-url:
+      defaultZone:                          http://eureka-service:8761/eureka
+
+  instance:
+    # 实例ID
+    # instance-id:                            ${spring.application.name}:${server.port}:${project.version}
+    # 优先使用IP地址方式进行注册服务
+    prefer-ip-address:                      true
+
+server:
+  port: 8080
+
+spring:
+  datasource:
+#    url:                                jdbc:postgresql://data-center:5432/datacenter
+#    username:                           postgres
+#    password:                           123qwe!@#
+    url:                                jdbc:postgresql://datacenter:5432/datacenter
+    username:                           postgres
+#    password:                           persagy_2020qwe!@#
+    password:                           cGVyc2FneV8yMDIwcXdlIUAj
+
+