From c4be8da9a9ea2d610e082b444d3a3bcde9084bf8 Mon Sep 17 00:00:00 2001 From: zhaoqifeng Date: Thu, 21 May 2020 12:58:44 +0800 Subject: [PATCH] =?UTF-8?q?=E6=B7=BB=E5=8A=A0resi=5Fhome=E6=9C=8D=E5=8A=A1?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- epmet-gateway/pom.xml | 5 + .../src/main/resources/bootstrap.yml | 22 ++- epmet-module/pom.xml | 1 + epmet-module/resi-home/pom.xml | 23 +++ .../resi-home/resi-home-client/pom.xml | 24 +++ .../java/com/epmet/dto/DemoTestFormDTO.java | 20 +++ .../resi-home/resi-home-server/Dockerfile | 11 ++ .../deploy/docker-compose-dev.yml | 17 ++ .../deploy/docker-compose-test.yml | 17 ++ .../resi-home/resi-home-server/pom.xml | 133 +++++++++++++++ .../java/com/epmet/ResiHomeApplication.java | 23 +++ .../com/epmet/config/ModuleConfigImpl.java | 26 +++ .../epmet/controller/ResiHomeController.java | 28 +++ .../com/epmet/feign/GovIssueFeignClient.java | 16 ++ .../epmet/feign/GovProjectFeignClient.java | 15 ++ .../fallback/GovIssueFeignClientFallBack.java | 14 ++ .../GovProjectFeignClientFallBack.java | 15 ++ .../src/main/resources/bootstrap.yml | 71 ++++++++ .../src/main/resources/logback-spring.xml | 159 ++++++++++++++++++ 19 files changed, 634 insertions(+), 6 deletions(-) create mode 100644 epmet-module/resi-home/pom.xml create mode 100644 epmet-module/resi-home/resi-home-client/pom.xml create mode 100644 epmet-module/resi-home/resi-home-client/src/main/java/com/epmet/dto/DemoTestFormDTO.java create mode 100644 epmet-module/resi-home/resi-home-server/Dockerfile create mode 100644 epmet-module/resi-home/resi-home-server/deploy/docker-compose-dev.yml create mode 100644 epmet-module/resi-home/resi-home-server/deploy/docker-compose-test.yml create mode 100644 epmet-module/resi-home/resi-home-server/pom.xml create mode 100644 epmet-module/resi-home/resi-home-server/src/main/java/com/epmet/ResiHomeApplication.java create mode 100644 epmet-module/resi-home/resi-home-server/src/main/java/com/epmet/config/ModuleConfigImpl.java create mode 100644 epmet-module/resi-home/resi-home-server/src/main/java/com/epmet/controller/ResiHomeController.java create mode 100644 epmet-module/resi-home/resi-home-server/src/main/java/com/epmet/feign/GovIssueFeignClient.java create mode 100644 epmet-module/resi-home/resi-home-server/src/main/java/com/epmet/feign/GovProjectFeignClient.java create mode 100644 epmet-module/resi-home/resi-home-server/src/main/java/com/epmet/feign/fallback/GovIssueFeignClientFallBack.java create mode 100644 epmet-module/resi-home/resi-home-server/src/main/java/com/epmet/feign/fallback/GovProjectFeignClientFallBack.java create mode 100644 epmet-module/resi-home/resi-home-server/src/main/resources/bootstrap.yml create mode 100644 epmet-module/resi-home/resi-home-server/src/main/resources/logback-spring.xml diff --git a/epmet-gateway/pom.xml b/epmet-gateway/pom.xml index 7e8232f7fb..02baae7b11 100644 --- a/epmet-gateway/pom.xml +++ b/epmet-gateway/pom.xml @@ -165,6 +165,9 @@ lb://gov-project-server lb://common-service-server + + + http://localhost:8104 @@ -235,6 +238,8 @@ lb://gov-project-server lb://common-service-server + + lb://resi-home-server diff --git a/epmet-gateway/src/main/resources/bootstrap.yml b/epmet-gateway/src/main/resources/bootstrap.yml index a009c0c628..ba74ff4bfd 100644 --- a/epmet-gateway/src/main/resources/bootstrap.yml +++ b/epmet-gateway/src/main/resources/bootstrap.yml @@ -181,7 +181,7 @@ spring: #政府端权限服务 - id: gov-access-server uri: @gateway.routes.gov-access-server.uri@ - order: 18 + order: 19 predicates: - Path=${server.servlet.context-path}/gov/access/** filters: @@ -191,7 +191,7 @@ spring: #政府端-我的-服务 - id: gov-mine-server uri: @gateway.routes.gov-mine-server.uri@ - order: 19 + order: 20 predicates: - Path=${server.servlet.context-path}/gov/mine/** filters: @@ -200,7 +200,7 @@ spring: #居民端党群e事 - id: resi-hall-server uri: @gateway.routes.resi-hall-server.uri@ - order: 20 + order: 21 predicates: - Path=${server.servlet.context-path}/resi/hall/** filters: @@ -209,7 +209,7 @@ spring: #政府工作端议题管理 - id: gov-issue-server uri: @gateway.routes.gov-issue-server.uri@ - order: 21 + order: 22 predicates: - Path=${server.servlet.context-path}/gov/issue/** filters: @@ -218,7 +218,7 @@ spring: #政府工作端项目管理 - id: gov-project-server uri: @gateway.routes.gov-project-server.uri@ - order: 22 + order: 23 predicates: - Path=${server.servlet.context-path}/gov/project/** filters: @@ -227,11 +227,20 @@ spring: #政府工作端项目管理 - id: common-service-server uri: @gateway.routes.common-service-server.uri@ - order: 23 + order: 24 predicates: - Path=${server.servlet.context-path}/commonservice/** filters: - StripPrefix=1 + #党建园地 + - id: resi-home-server + uri: @gateway.routes.resi-home-server.uri@ + order: 25 + predicates: + - Path=${server.servlet.context-path}/resi/home/** + filters: + - StripPrefix=1 + - CpAuth=true nacos: discovery: server-addr: @nacos.server-addr@ @@ -345,6 +354,7 @@ epmet: - /resi/hall/** - /gov/issue/** - /gov/project/** + - /resi/home/** swaggerUrls: jwt: diff --git a/epmet-module/pom.xml b/epmet-module/pom.xml index 5637182706..7cb7d3e138 100644 --- a/epmet-module/pom.xml +++ b/epmet-module/pom.xml @@ -34,6 +34,7 @@ gov-issue gov-project epmet-common-service + resi-home diff --git a/epmet-module/resi-home/pom.xml b/epmet-module/resi-home/pom.xml new file mode 100644 index 0000000000..9f05706cd0 --- /dev/null +++ b/epmet-module/resi-home/pom.xml @@ -0,0 +1,23 @@ + + + 4.0.0 + + + epmet-module + com.epmet + 2.0.0 + + + com.epmet + resi-home + pom + + + resi-home-client + resi-home-server + + + + \ No newline at end of file diff --git a/epmet-module/resi-home/resi-home-client/pom.xml b/epmet-module/resi-home/resi-home-client/pom.xml new file mode 100644 index 0000000000..e6c61b76a3 --- /dev/null +++ b/epmet-module/resi-home/resi-home-client/pom.xml @@ -0,0 +1,24 @@ + + + + resi-home + com.epmet + 2.0.0 + + 4.0.0 + + resi-home-client + + + javax.validation + validation-api + + + org.projectlombok + lombok + + + + \ No newline at end of file diff --git a/epmet-module/resi-home/resi-home-client/src/main/java/com/epmet/dto/DemoTestFormDTO.java b/epmet-module/resi-home/resi-home-client/src/main/java/com/epmet/dto/DemoTestFormDTO.java new file mode 100644 index 0000000000..ff6d66c808 --- /dev/null +++ b/epmet-module/resi-home/resi-home-client/src/main/java/com/epmet/dto/DemoTestFormDTO.java @@ -0,0 +1,20 @@ +package com.epmet.dto; + +import lombok.Data; + +import javax.validation.constraints.NotBlank; +import java.io.Serializable; + +/** + * @author zhaoqifeng + * @dscription + * @date 2020/5/21 10:31 + */ +@Data +public class DemoTestFormDTO implements Serializable { + private static final long serialVersionUID = -3091524430403897917L; + @NotBlank(message = "客户id不能为空") + private String customerId; + @NotBlank(message = "网格id不能为空") + private String gridId; +} \ No newline at end of file diff --git a/epmet-module/resi-home/resi-home-server/Dockerfile b/epmet-module/resi-home/resi-home-server/Dockerfile new file mode 100644 index 0000000000..00ce6c09fe --- /dev/null +++ b/epmet-module/resi-home/resi-home-server/Dockerfile @@ -0,0 +1,11 @@ +FROM java:8 + +RUN export LANG="zh_CN.UTF-8" +RUN ln -sf /usr/share/zoneinfo/Asia/Shanghai /etc/localtime +RUN echo 'Asia/Shanghai' > /etc/timezone + +COPY ./target/*.jar ./app.jar + +EXPOSE 8104 + +ENTRYPOINT ["sh", "-c", "$RUN_INSTRUCT"] \ No newline at end of file diff --git a/epmet-module/resi-home/resi-home-server/deploy/docker-compose-dev.yml b/epmet-module/resi-home/resi-home-server/deploy/docker-compose-dev.yml new file mode 100644 index 0000000000..3034f6ff01 --- /dev/null +++ b/epmet-module/resi-home/resi-home-server/deploy/docker-compose-dev.yml @@ -0,0 +1,17 @@ +version: "3.7" +services: + resi-home-server: + container_name: resi-home-server-dev + image: 192.168.1.130:10080/epmet-cloud-dev/resi-home-server:0.3.1 + ports: + - "8104:8104" + network_mode: host # 使用现有网络 + volumes: + - "/opt/epmet-cloud-logs/dev:/logs" + environment: + RUN_INSTRUCT: "java -Xms32m -Xmx200m -jar ./app.jar" + deploy: + resources: + limits: + cpus: '0.1' + memory: 250M \ No newline at end of file diff --git a/epmet-module/resi-home/resi-home-server/deploy/docker-compose-test.yml b/epmet-module/resi-home/resi-home-server/deploy/docker-compose-test.yml new file mode 100644 index 0000000000..2230b743f0 --- /dev/null +++ b/epmet-module/resi-home/resi-home-server/deploy/docker-compose-test.yml @@ -0,0 +1,17 @@ +version: "3.7" +services: + resi-home-server: + container_name: resi-home-server-test + image: registry-vpc.cn-qingdao.aliyuncs.com/epmet-cloud-release/resi-home-server:0.3.26 + ports: + - "8104:8104" + network_mode: host # 使用现有网络 + volumes: + - "/opt/epmet-cloud-logs/test:/logs" + environment: + RUN_INSTRUCT: "java -Xms32m -Xmx200m -jar ./app.jar" + deploy: + resources: + limits: + cpus: '0.1' + memory: 250M \ No newline at end of file diff --git a/epmet-module/resi-home/resi-home-server/pom.xml b/epmet-module/resi-home/resi-home-server/pom.xml new file mode 100644 index 0000000000..39e22431fa --- /dev/null +++ b/epmet-module/resi-home/resi-home-server/pom.xml @@ -0,0 +1,133 @@ + + + 4.0.0 + 0.3.1 + + + resi-home + com.epmet + 2.0.0 + + resi-home-server + jar + + + + com.epmet + resi-home-client + 2.0.0 + + + com.epmet + epmet-commons-tools + 2.0.0 + + + org.springframework.boot + spring-boot-starter-web + + + org.springframework + spring-context-support + + + org.springframework.boot + spring-boot-starter-actuator + + + com.alibaba.cloud + spring-cloud-starter-alibaba-nacos-discovery + + + com.alibaba.cloud + spring-cloud-starter-alibaba-nacos-config + + + + io.github.openfeign + feign-httpclient + 10.3.0 + + + + + + ${project.artifactId} + + + org.springframework.boot + spring-boot-maven-plugin + + + org.apache.maven.plugins + maven-surefire-plugin + + true + + + + + ${project.basedir}/src/main/java + + + true + ${basedir}/src/main/resources + + + + + + + dev + + true + + + 8104 + dev + + + 0 + 192.168.1.130 + 6379 + 123456 + + true + 122.152.200.70:8848 + fcd6fc8f-ca3a-4b01-8026-2b05cdc5976b + + + false + + + + + test + + + 8104 + test + + + 0 + r-m5eoz5b6tkx09y6bpz.redis.rds.aliyuncs.com + 6379 + EpmEtrEdIs!q@w + + true + 192.168.10.150:8848 + 67e3c350-533e-4d7c-9f8f-faf1b4aa82ae + + + false + + + + + + + \ No newline at end of file diff --git a/epmet-module/resi-home/resi-home-server/src/main/java/com/epmet/ResiHomeApplication.java b/epmet-module/resi-home/resi-home-server/src/main/java/com/epmet/ResiHomeApplication.java new file mode 100644 index 0000000000..9c7e8f6a66 --- /dev/null +++ b/epmet-module/resi-home/resi-home-server/src/main/java/com/epmet/ResiHomeApplication.java @@ -0,0 +1,23 @@ +package com.epmet; + +import org.springframework.boot.SpringApplication; +import org.springframework.boot.autoconfigure.SpringBootApplication; +import org.springframework.cloud.client.discovery.EnableDiscoveryClient; +import org.springframework.cloud.openfeign.EnableFeignClients; + +/** + * + * + * @author Mark sunlightcs@gmail.com + * @since 1.0.0 + */ +@SpringBootApplication +@EnableDiscoveryClient +@EnableFeignClients +public class ResiHomeApplication { + + public static void main(String[] args) { + SpringApplication.run(ResiHomeApplication.class, args); + } + +} diff --git a/epmet-module/resi-home/resi-home-server/src/main/java/com/epmet/config/ModuleConfigImpl.java b/epmet-module/resi-home/resi-home-server/src/main/java/com/epmet/config/ModuleConfigImpl.java new file mode 100644 index 0000000000..4081491cf9 --- /dev/null +++ b/epmet-module/resi-home/resi-home-server/src/main/java/com/epmet/config/ModuleConfigImpl.java @@ -0,0 +1,26 @@ +/** + * Copyright (c) 2018 人人开源 All rights reserved. + * + * https://www.renren.io + * + * 版权所有,侵权必究! + */ + +package com.epmet.config; + +import com.epmet.commons.tools.config.ModuleConfig; +import org.springframework.stereotype.Service; + +/** + * 模块配置信息 + * + * @author Mark sunlightcs@gmail.com + * @since 1.0.0 + */ +@Service +public class ModuleConfigImpl implements ModuleConfig { + @Override + public String getName() { + return "resihome"; + } +} diff --git a/epmet-module/resi-home/resi-home-server/src/main/java/com/epmet/controller/ResiHomeController.java b/epmet-module/resi-home/resi-home-server/src/main/java/com/epmet/controller/ResiHomeController.java new file mode 100644 index 0000000000..5de8b0304f --- /dev/null +++ b/epmet-module/resi-home/resi-home-server/src/main/java/com/epmet/controller/ResiHomeController.java @@ -0,0 +1,28 @@ +package com.epmet.controller; + +import com.epmet.commons.tools.utils.Result; +import com.epmet.commons.tools.validator.ValidatorUtils; +import com.epmet.dto.DemoTestFormDTO; +import org.slf4j.Logger; +import org.slf4j.LoggerFactory; +import org.springframework.web.bind.annotation.PostMapping; +import org.springframework.web.bind.annotation.RequestBody; +import org.springframework.web.bind.annotation.RequestMapping; +import org.springframework.web.bind.annotation.RestController; + +/** + * @author zhaoqifeng + * @dscription + * @date 2020/5/21 10:24 + */ +@RestController +@RequestMapping("/") +public class ResiHomeController { + private static final Logger logger = LoggerFactory.getLogger(ResiHomeController.class); + @PostMapping("test") + public Result test(@RequestBody DemoTestFormDTO formDTO) { + ValidatorUtils.validateEntity(formDTO); + logger.info(String.format("请求成功客户id[%s],网格id[%s]",formDTO.getCustomerId(),formDTO.getGridId())); + return new Result().ok("resi-home-server请求成功"); + } +} diff --git a/epmet-module/resi-home/resi-home-server/src/main/java/com/epmet/feign/GovIssueFeignClient.java b/epmet-module/resi-home/resi-home-server/src/main/java/com/epmet/feign/GovIssueFeignClient.java new file mode 100644 index 0000000000..3f62df0e31 --- /dev/null +++ b/epmet-module/resi-home/resi-home-server/src/main/java/com/epmet/feign/GovIssueFeignClient.java @@ -0,0 +1,16 @@ +package com.epmet.feign; + +import com.epmet.commons.tools.constant.ServiceConstant; +import com.epmet.feign.fallback.GovIssueFeignClientFallBack; +import org.springframework.cloud.openfeign.FeignClient; + + +/** + * @Description gov-issue服务fegin + * @Author wangc + * @Date 2020/5/12 10:00 + * url = "localhost:8101" + */ +@FeignClient(name = ServiceConstant.GOV_ISSUE_SERVER , fallback = GovIssueFeignClientFallBack.class) +public interface GovIssueFeignClient { +} diff --git a/epmet-module/resi-home/resi-home-server/src/main/java/com/epmet/feign/GovProjectFeignClient.java b/epmet-module/resi-home/resi-home-server/src/main/java/com/epmet/feign/GovProjectFeignClient.java new file mode 100644 index 0000000000..7bd2dd42ff --- /dev/null +++ b/epmet-module/resi-home/resi-home-server/src/main/java/com/epmet/feign/GovProjectFeignClient.java @@ -0,0 +1,15 @@ +package com.epmet.feign; + +import com.epmet.commons.tools.constant.ServiceConstant; +import com.epmet.feign.fallback.GovProjectFeignClientFallBack; +import org.springframework.cloud.openfeign.FeignClient; + +/** + * @author zhaoqifeng + * @dscription + * @date 2020/5/14 13:26 + */ +@FeignClient(name = ServiceConstant.GOV_PROJECT_SERVER, fallback = GovProjectFeignClientFallBack.class) +public interface GovProjectFeignClient { + +} diff --git a/epmet-module/resi-home/resi-home-server/src/main/java/com/epmet/feign/fallback/GovIssueFeignClientFallBack.java b/epmet-module/resi-home/resi-home-server/src/main/java/com/epmet/feign/fallback/GovIssueFeignClientFallBack.java new file mode 100644 index 0000000000..fc94db7f99 --- /dev/null +++ b/epmet-module/resi-home/resi-home-server/src/main/java/com/epmet/feign/fallback/GovIssueFeignClientFallBack.java @@ -0,0 +1,14 @@ +package com.epmet.feign.fallback; + +import com.epmet.feign.GovIssueFeignClient; +import org.springframework.stereotype.Component; + +/** + * + * @author zhaoqifeng + * @date 2020/5/21 12:12 + */ +@Component +public class GovIssueFeignClientFallBack implements GovIssueFeignClient { + +} diff --git a/epmet-module/resi-home/resi-home-server/src/main/java/com/epmet/feign/fallback/GovProjectFeignClientFallBack.java b/epmet-module/resi-home/resi-home-server/src/main/java/com/epmet/feign/fallback/GovProjectFeignClientFallBack.java new file mode 100644 index 0000000000..82af1ee7f1 --- /dev/null +++ b/epmet-module/resi-home/resi-home-server/src/main/java/com/epmet/feign/fallback/GovProjectFeignClientFallBack.java @@ -0,0 +1,15 @@ +package com.epmet.feign.fallback; + +import com.epmet.feign.GovProjectFeignClient; +import org.springframework.stereotype.Component; + +import java.util.List; + +/** + * @author zhaoqifeng + * @dscription + * @date 2020/5/14 13:26 + */ +@Component +public class GovProjectFeignClientFallBack implements GovProjectFeignClient { +} diff --git a/epmet-module/resi-home/resi-home-server/src/main/resources/bootstrap.yml b/epmet-module/resi-home/resi-home-server/src/main/resources/bootstrap.yml new file mode 100644 index 0000000000..78690a6d9f --- /dev/null +++ b/epmet-module/resi-home/resi-home-server/src/main/resources/bootstrap.yml @@ -0,0 +1,71 @@ +server: + port: @server.port@ + servlet: + context-path: /resi/home + +spring: + main: + allow-bean-definition-overriding: true + application: + name: resi-home-server + #环境 dev|test|prod + profiles: + active: dev + messages: + encoding: UTF-8 + basename: i18n/messages_common + jackson: + time-zone: GMT+8 + date-format: yyyy-MM-dd HH:mm:ss + redis: + database: @spring.redis.index@ + host: @spring.redis.host@ + port: @spring.redis.port@ + password: @spring.redis.password@ + timeout: 30s + cloud: + nacos: + discovery: + server-addr: @nacos.server-addr@ + #nacos的命名空间ID,默认是public + namespace: @nacos.discovery.namespace@ + #不把自己注册到注册中心的地址 + register-enabled: @nacos.register-enabled@ + ip: @nacos.ip@ + config: + enabled: @nacos.config-enabled@ + server-addr: @nacos.server-addr@ + namespace: @nacos.config.namespace@ + group: @nacos.config.group@ + file-extension: yaml +management: + endpoints: + web: + exposure: + include: "*" + endpoint: + health: + show-details: ALWAYS + + +feign: + hystrix: + enabled: true + client: + config: + default: + loggerLevel: BASIC + httpclient: + enabled: true + +hystrix: + command: + default: + execution: + isolation: + thread: + timeoutInMilliseconds: 60000 #缺省为1000 + +ribbon: + ReadTimeout: 300000 + ConnectTimeout: 300000 diff --git a/epmet-module/resi-home/resi-home-server/src/main/resources/logback-spring.xml b/epmet-module/resi-home/resi-home-server/src/main/resources/logback-spring.xml new file mode 100644 index 0000000000..142e0bb289 --- /dev/null +++ b/epmet-module/resi-home/resi-home-server/src/main/resources/logback-spring.xml @@ -0,0 +1,159 @@ + + + + + + + + + + + + + + debug + + + ${CONSOLE_LOG_PATTERN} + + UTF-8 + + + + + + + + ${log.path}/debug.log + + + %d{yyyy-MM-dd HH:mm:ss.SSS} [%thread] %-5level %logger{50} - %msg%n + UTF-8 + + + + + ${log.path}/debug-%d{yyyy-MM-dd}.%i.log + + 100MB + + + 15 + + + + debug + ACCEPT + DENY + + + + + + + ${log.path}/info.log + + + %d{yyyy-MM-dd HH:mm:ss.SSS} [%thread] %-5level %logger{50} - %msg%n + UTF-8 + + + + + ${log.path}/info-%d{yyyy-MM-dd}.%i.log + + 100MB + + + 15 + + + + info + ACCEPT + DENY + + + + + + + ${log.path}/warn.log + + + %d{yyyy-MM-dd HH:mm:ss.SSS} [%thread] %-5level %logger{50} - %msg%n + UTF-8 + + + + ${log.path}/warn-%d{yyyy-MM-dd}.%i.log + + 100MB + + + 15 + + + + warn + ACCEPT + DENY + + + + + + + ${log.path}/error.log + + + %d{yyyy-MM-dd HH:mm:ss.SSS} [%thread] %-5level %logger{50} - %msg%n + UTF-8 + + + + ${log.path}/error-%d{yyyy-MM-dd}.%i.log + + 100MB + + + 15 + + + + ERROR + ACCEPT + DENY + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +