12 Commits
54 changed files with 1197 additions and 779 deletions
@@ -38,6 +38,7 @@
<dependency> <dependency>
<groupId>org.jeecgframework.boot</groupId> <groupId>org.jeecgframework.boot</groupId>
<artifactId>jeecg-boot-base-core</artifactId> <artifactId>jeecg-boot-base-core</artifactId>
<classifier>xj</classifier>
<scope>provided</scope> <scope>provided</scope>
</dependency> </dependency>
</dependencies> </dependencies>
+1
View File
@@ -33,6 +33,7 @@
<dependency> <dependency>
<groupId>org.jeecgframework.boot</groupId> <groupId>org.jeecgframework.boot</groupId>
<artifactId>jeecg-boot-base-core</artifactId> <artifactId>jeecg-boot-base-core</artifactId>
<classifier>xj</classifier>
<scope>provided</scope> <scope>provided</scope>
</dependency> </dependency>
</dependencies> </dependencies>
@@ -13,6 +13,7 @@
<dependency> <dependency>
<groupId>org.jeecgframework.boot</groupId> <groupId>org.jeecgframework.boot</groupId>
<artifactId>jeecg-boot-base-core</artifactId> <artifactId>jeecg-boot-base-core</artifactId>
<classifier>xj</classifier>
</dependency> </dependency>
<!-- feign --> <!-- feign -->
@@ -13,18 +13,22 @@
<dependency> <dependency>
<groupId>com.renkang</groupId> <groupId>com.renkang</groupId>
<artifactId>health-consultation-api</artifactId> <artifactId>health-consultation-api</artifactId>
<classifier>xj</classifier>
</dependency> </dependency>
<dependency> <dependency>
<groupId>com.renkang</groupId> <groupId>com.renkang</groupId>
<artifactId>health-emergency-api</artifactId> <artifactId>health-emergency-api</artifactId>
<classifier>xj</classifier>
</dependency> </dependency>
<dependency> <dependency>
<groupId>com.renkang</groupId> <groupId>com.renkang</groupId>
<artifactId>health-im-api</artifactId> <artifactId>health-im-api</artifactId>
<classifier>xj</classifier>
</dependency> </dependency>
<dependency> <dependency>
<groupId>org.jeecgframework.boot</groupId> <groupId>org.jeecgframework.boot</groupId>
<artifactId>jeecg-system-cloud-api</artifactId> <artifactId>jeecg-system-cloud-api</artifactId>
<classifier>xj</classifier>
</dependency> </dependency>
<dependency> <dependency>
@@ -50,4 +54,21 @@
</plugin> </plugin>
</plugins> </plugins>
</build> </build>
<profiles>
<profile>
<id>biz-obf</id>
<build>
<plugins>
<plugin>
<groupId>com.github.wvengen</groupId>
<artifactId>proguard-maven-plugin</artifactId>
</plugin>
<plugin>
<groupId>org.codehaus.mojo</groupId>
<artifactId>build-helper-maven-plugin</artifactId>
</plugin>
</plugins>
</build>
</profile>
</profiles>
</project> </project>
@@ -0,0 +1,38 @@
-keepattributes *Annotation*, Signature, InnerClasses, EnclosingMethod, Exceptions, MethodParameters
-keep @org.springframework.stereotype.Service class *
-keep @org.springframework.web.bind.annotation.RestController class *
-keep @org.springframework.context.annotation.Configuration class * { *; }
-keep @org.springframework.stereotype.Component class *
-keep class lombok.** { *; }
-keepclassmembers enum * { # 保留枚举结构
public static **[] values();
public static ** valueOf(java.lang.String);
}
-keepclassmembers class * implements java.io.Serializable { *; }
-keepclassmembers class * {
@org.springframework.web.bind.annotation.*Mapping *;
}
-keepclassmembers class * {
private static synthetic java.lang.Object $deserializeLambda$(java.lang.invoke.SerializedLambda);
}
-keepclassmembers class * {
@lombok.Getter *;
@lombok.Setter *;
}
# MyBatis 专用保留规则
-keep interface com.renkang.**.mapper.** { *; }
-keep class com.renkang.**.entity.** { *; }
-keep class com.renkang.**.bean.** { *; }
-keep class com.renkang.**.model.** { *; }
-keep class com.renkang.**.vo.** { *; }
-keepparameternames
# 关闭优化和压缩(避免框架兼容性问题)
-dontshrink # 不删除未使用代码
-dontoptimize # 不优化字节码[5,6](@ref)
-keepdirectories
-dontusemixedcaseclassnames
-adaptclassstrings
# 混淆选项
-useuniqueclassmembernames # 成员名称唯一化
-ignorewarnings
@@ -4,11 +4,11 @@ import com.renkang.consultation.api.storge.redis.ConHealthInfoRedisTunnel;
import com.renkang.consultation.entity.ConHealthInfo; import com.renkang.consultation.entity.ConHealthInfo;
import com.renkang.consultation.mapper.ConHealthInfoMapper; import com.renkang.consultation.mapper.ConHealthInfoMapper;
import org.springframework.beans.factory.annotation.Autowired; import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Repository; import org.springframework.stereotype.Component;
import java.util.List; import java.util.List;
@Repository @Component
public class ComposeConHealthInfo { public class ComposeConHealthInfo {
@@ -5,9 +5,9 @@ import com.renkang.consultation.entity.ConKnowledge;
import com.renkang.consultation.mapper.ConKnowledgeMapper; import com.renkang.consultation.mapper.ConKnowledgeMapper;
import org.springframework.beans.factory.annotation.Autowired; import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.data.redis.core.RedisTemplate; import org.springframework.data.redis.core.RedisTemplate;
import org.springframework.stereotype.Repository; import org.springframework.stereotype.Component;
@Repository @Component
public class ComposeConKnowledge { public class ComposeConKnowledge {
@@ -4,11 +4,11 @@ import com.renkang.consultation.api.storge.db.ConKnowledgeCategoryDbTunnel;
import com.renkang.consultation.api.storge.redis.ConKnowledgeCategoryRedisTunnel; import com.renkang.consultation.api.storge.redis.ConKnowledgeCategoryRedisTunnel;
import com.renkang.consultation.entity.ConKnowledgeCategory; import com.renkang.consultation.entity.ConKnowledgeCategory;
import org.springframework.beans.factory.annotation.Autowired; import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Repository; import org.springframework.stereotype.Component;
import java.util.List; import java.util.List;
@Repository @Component
public class ComposeConKnowledgeCategory { public class ComposeConKnowledgeCategory {
@Autowired @Autowired
@@ -5,11 +5,11 @@ import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
import com.renkang.consultation.entity.ConKnowledgeCategory; import com.renkang.consultation.entity.ConKnowledgeCategory;
import com.renkang.consultation.mapper.ConKnowledgeCategoryMapper; import com.renkang.consultation.mapper.ConKnowledgeCategoryMapper;
import org.springframework.beans.factory.annotation.Autowired; import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Repository; import org.springframework.stereotype.Component;
import java.util.List; import java.util.List;
@Repository @Component
public class ConKnowledgeCategoryDbTunnel { public class ConKnowledgeCategoryDbTunnel {
@@ -5,9 +5,9 @@ import com.renkang.consultation.entity.ConDoctorFollow;
import org.springframework.beans.factory.annotation.Autowired; import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.data.redis.core.RedisTemplate; import org.springframework.data.redis.core.RedisTemplate;
import org.springframework.data.redis.core.ZSetOperations; import org.springframework.data.redis.core.ZSetOperations;
import org.springframework.stereotype.Repository; import org.springframework.stereotype.Component;
@Repository @Component
public class ConDoctorFollowReidsTunnel { public class ConDoctorFollowReidsTunnel {
@Autowired @Autowired
@@ -4,11 +4,11 @@ import com.renkang.consultation.api.RedisConstants;
import com.renkang.consultation.entity.ConHealthInfo; import com.renkang.consultation.entity.ConHealthInfo;
import org.springframework.beans.factory.annotation.Autowired; import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.data.redis.core.RedisTemplate; import org.springframework.data.redis.core.RedisTemplate;
import org.springframework.stereotype.Repository; import org.springframework.stereotype.Component;
import java.util.List; import java.util.List;
@Repository @Component
public class ConHealthInfoRedisTunnel { public class ConHealthInfoRedisTunnel {
@Autowired @Autowired
@@ -5,9 +5,9 @@ import com.renkang.consultation.entity.ConHospitalFollow;
import org.springframework.beans.factory.annotation.Autowired; import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.data.redis.core.RedisTemplate; import org.springframework.data.redis.core.RedisTemplate;
import org.springframework.data.redis.core.ZSetOperations; import org.springframework.data.redis.core.ZSetOperations;
import org.springframework.stereotype.Repository; import org.springframework.stereotype.Component;
@Repository @Component
public class ConHospitalFollowReidsTunnel { public class ConHospitalFollowReidsTunnel {
@Autowired @Autowired
@@ -4,11 +4,11 @@ import com.renkang.consultation.api.RedisConstants;
import com.renkang.consultation.entity.ConKnowledgeCategory; import com.renkang.consultation.entity.ConKnowledgeCategory;
import org.springframework.beans.factory.annotation.Autowired; import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.data.redis.core.RedisTemplate; import org.springframework.data.redis.core.RedisTemplate;
import org.springframework.stereotype.Repository; import org.springframework.stereotype.Component;
import java.util.List; import java.util.List;
@Repository @Component
public class ConKnowledgeCategoryRedisTunnel { public class ConKnowledgeCategoryRedisTunnel {
@@ -6,6 +6,7 @@ import lombok.extern.slf4j.Slf4j;
import org.jeecg.common.constant.CommonConstant; import org.jeecg.common.constant.CommonConstant;
import org.jeecg.common.util.RedisUtil; import org.jeecg.common.util.RedisUtil;
import org.springframework.beans.factory.annotation.Autowired; import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.beans.factory.annotation.Value;
import org.springframework.scheduling.annotation.Scheduled; import org.springframework.scheduling.annotation.Scheduled;
import org.springframework.stereotype.Component; import org.springframework.stereotype.Component;
@@ -21,6 +22,9 @@ public class HolidayManager {
@Autowired @Autowired
private RedisUtil redisUtil; private RedisUtil redisUtil;
@Value("${transfer.server.url:101.201.149.156:8610}")
private String domainUrl;
//@Scheduled(cron = "0 0 0 1 1 ? *") //@Scheduled(cron = "0 0 0 1 1 ? *")
@Scheduled(cron = "0 0 0 1 1 ?") @Scheduled(cron = "0 0 0 1 1 ?")
@PostConstruct @PostConstruct
@@ -69,7 +73,7 @@ public class HolidayManager {
//补班数据 //补班数据
List<String> listRemove = new ArrayList<String>(); List<String> listRemove = new ArrayList<String>();
String url = "http://timor.tech/api/holiday/year/" + year + "/"; String url = "http://"+domainUrl+"/api/holiday/year/" + year + "/";
String rsa = HttpUtil.get(url); String rsa = HttpUtil.get(url);
Map map = JSONObject.parseObject(rsa, Map.class); Map map = JSONObject.parseObject(rsa, Map.class);
Map holidayMap = (Map) map.get("holiday"); Map holidayMap = (Map) map.get("holiday");
@@ -1,15 +1,12 @@
FROM anapsix/alpine-java:8_server-jre_unlimited FROM anapsix/alpine-java:8_server-jre_unlimited
MAINTAINER xxx@163.com ENV PROFILE_NAME=dev \
SERVER_PORT=7010 \
NACOS_SERVER_ADDR=nacos250:8848 \
ENV PROFILE_NAME dev NACOS_USERNAME=xjuser \
ENV SERVER_PORT 7010 NACOS_PASSWORD=Aa135790!123 \
ENV NACOS_SERVER_ADDR nacos250:8848 NACOS_NAMESPACE=3af98a54-4a44-4576-8e28-bf5781c0dccf \
ENV NACOS_USERNAME xjuser NACOS_GROUP=dev
ENV NACOS_PASSWORD Aa135790!123
ENV NACOS_NAMESPACE 3af98a54-4a44-4576-8e28-bf5781c0dccf
ENV NACOS_GROUP dev
RUN ln -sf /usr/share/zoneinfo/Asia/Shanghai /etc/localtime RUN ln -sf /usr/share/zoneinfo/Asia/Shanghai /etc/localtime
@@ -20,6 +17,6 @@ WORKDIR /health-consultation-start
EXPOSE 7010 EXPOSE 7010
ADD ./target/health-consultation-start.jar ./ COPY ./target/health-consultation-start-xj.jar ./
CMD sleep 1;java -Dfile.encoding=utf-8 -Djava.security.egd=file:/dev/./urandom -jar health-consultation-start.jar CMD sleep 1;java -Dfile.encoding=utf-8 -Djava.security.egd=file:/dev/./urandom -jar health-consultation-start-xj.jar
@@ -9,6 +9,11 @@
<modelVersion>4.0.0</modelVersion> <modelVersion>4.0.0</modelVersion>
<artifactId>health-consultation-start</artifactId> <artifactId>health-consultation-start</artifactId>
<properties>
<maven.install.skip>true</maven.install.skip>
</properties>
<dependencies> <dependencies>
<!--微服务启动 starter--> <!--微服务启动 starter-->
<dependency> <dependency>
@@ -24,6 +29,7 @@
<dependency> <dependency>
<groupId>com.renkang</groupId> <groupId>com.renkang</groupId>
<artifactId>health-consultation-biz</artifactId> <artifactId>health-consultation-biz</artifactId>
<classifier>${biz-classifier}</classifier>
</dependency> </dependency>
</dependencies> </dependencies>
-4
View File
@@ -13,10 +13,6 @@
<version>2.0.0</version> <version>2.0.0</version>
<packaging>pom</packaging> <packaging>pom</packaging>
<properties>
<maven.install.skip>true</maven.install.skip>
</properties>
<!--项目子模块--> <!--项目子模块-->
<modules> <modules>
<module>health-consultation-api</module> <module>health-consultation-api</module>
@@ -13,6 +13,7 @@
<dependency> <dependency>
<groupId>org.jeecgframework.boot</groupId> <groupId>org.jeecgframework.boot</groupId>
<artifactId>jeecg-boot-base-core</artifactId> <artifactId>jeecg-boot-base-core</artifactId>
<classifier>xj</classifier>
</dependency> </dependency>
<!-- feign --> <!-- feign -->
@@ -9,6 +9,7 @@
<modelVersion>4.0.0</modelVersion> <modelVersion>4.0.0</modelVersion>
<artifactId>health-emergency-biz</artifactId> <artifactId>health-emergency-biz</artifactId>
<dependencies> <dependencies>
<!--定时任务--> <!--定时任务-->
<dependency> <dependency>
@@ -18,15 +19,18 @@
<dependency> <dependency>
<groupId>com.renkang</groupId> <groupId>com.renkang</groupId>
<artifactId>health-emergency-api</artifactId> <artifactId>health-emergency-api</artifactId>
<classifier>xj</classifier>
</dependency> </dependency>
<dependency> <dependency>
<groupId>org.jeecgframework.boot</groupId> <groupId>org.jeecgframework.boot</groupId>
<artifactId>jeecg-system-cloud-api</artifactId> <artifactId>jeecg-system-cloud-api</artifactId>
<classifier>xj</classifier>
</dependency> </dependency>
<dependency> <dependency>
<groupId>com.renkang</groupId> <groupId>com.renkang</groupId>
<artifactId>health-im-api</artifactId> <artifactId>health-im-api</artifactId>
<classifier>xj</classifier>
</dependency> </dependency>
</dependencies> </dependencies>
@@ -47,4 +51,21 @@
</plugin> </plugin>
</plugins> </plugins>
</build> </build>
<profiles>
<profile>
<id>biz-obf</id>
<build>
<plugins>
<plugin>
<groupId>com.github.wvengen</groupId>
<artifactId>proguard-maven-plugin</artifactId>
</plugin>
<plugin>
<groupId>org.codehaus.mojo</groupId>
<artifactId>build-helper-maven-plugin</artifactId>
</plugin>
</plugins>
</build>
</profile>
</profiles>
</project> </project>
@@ -0,0 +1,38 @@
-keepattributes *Annotation*, Signature, InnerClasses, EnclosingMethod, Exceptions, MethodParameters
-keep @org.springframework.stereotype.Service class *
-keep @org.springframework.web.bind.annotation.RestController class *
-keep @org.springframework.context.annotation.Configuration class * { *; }
-keep @org.springframework.stereotype.Component class *
-keep class lombok.** { *; }
-keepclassmembers enum * { # 保留枚举结构
public static **[] values();
public static ** valueOf(java.lang.String);
}
-keepclassmembers class * implements java.io.Serializable { *; }
-keepclassmembers class * {
@org.springframework.web.bind.annotation.*Mapping *;
}
-keepclassmembers class * {
private static synthetic java.lang.Object $deserializeLambda$(java.lang.invoke.SerializedLambda);
}
-keepclassmembers class * {
@lombok.Getter *;
@lombok.Setter *;
}
# MyBatis 专用保留规则
-keep interface com.renkang.**.mapper.** { *; }
-keep class com.renkang.**.entity.** { *; }
-keep class com.renkang.**.bean.** { *; }
-keep class com.renkang.**.model.** { *; }
-keep class com.renkang.**.vo.** { *; }
-keepparameternames
# 关闭优化和压缩(避免框架兼容性问题)
-dontshrink # 不删除未使用代码
-dontoptimize # 不优化字节码[5,6](@ref)
-keepdirectories
-dontusemixedcaseclassnames
-adaptclassstrings
# 混淆选项
-useuniqueclassmembernames # 成员名称唯一化
-ignorewarnings
@@ -1,15 +1,12 @@
FROM anapsix/alpine-java:8_server-jre_unlimited FROM anapsix/alpine-java:8_server-jre_unlimited
MAINTAINER xxx@163.com ENV PROFILE_NAME=dev \
SERVER_PORT=7011 \
NACOS_SERVER_ADDR=nacos250:8848 \
ENV PROFILE_NAME dev NACOS_USERNAME=xjuser \
ENV SERVER_PORT 7011 NACOS_PASSWORD=Aa135790!123 \
ENV NACOS_SERVER_ADDR nacos250:8848 NACOS_NAMESPACE=3af98a54-4a44-4576-8e28-bf5781c0dccf \
ENV NACOS_USERNAME xjuser NACOS_GROUP=dev
ENV NACOS_PASSWORD Aa135790!123
ENV NACOS_NAMESPACE 3af98a54-4a44-4576-8e28-bf5781c0dccf
ENV NACOS_GROUP dev
RUN ln -sf /usr/share/zoneinfo/Asia/Shanghai /etc/localtime RUN ln -sf /usr/share/zoneinfo/Asia/Shanghai /etc/localtime
@@ -20,6 +17,6 @@ WORKDIR /health-emergency-start
EXPOSE 7011 EXPOSE 7011
ADD ./target/health-emergency-start.jar ./ COPY ./target/health-emergency-start-xj.jar ./
CMD sleep 1;java -Dfile.encoding=utf-8 -Djava.security.egd=file:/dev/./urandom -jar health-emergency-start.jar CMD sleep 1;java -Dfile.encoding=utf-8 -Djava.security.egd=file:/dev/./urandom -jar health-emergency-start-xj.jar
@@ -9,6 +9,11 @@
<modelVersion>4.0.0</modelVersion> <modelVersion>4.0.0</modelVersion>
<artifactId>health-emergency-start</artifactId> <artifactId>health-emergency-start</artifactId>
<properties>
<maven.install.skip>true</maven.install.skip>
</properties>
<dependencies> <dependencies>
<!--微服务启动 starter--> <!--微服务启动 starter-->
<dependency> <dependency>
@@ -20,6 +25,7 @@
<dependency> <dependency>
<groupId>com.renkang</groupId> <groupId>com.renkang</groupId>
<artifactId>health-emergency-biz</artifactId> <artifactId>health-emergency-biz</artifactId>
<classifier>${biz-classifier}</classifier>
</dependency> </dependency>
</dependencies> </dependencies>
-4
View File
@@ -13,10 +13,6 @@
<version>2.0.0</version> <version>2.0.0</version>
<packaging>pom</packaging> <packaging>pom</packaging>
<properties>
<maven.install.skip>true</maven.install.skip>
</properties>
<!--项目子模块--> <!--项目子模块-->
<modules> <modules>
<module>health-emergency-api</module> <module>health-emergency-api</module>
+1
View File
@@ -28,6 +28,7 @@
<dependency> <dependency>
<groupId>org.jeecgframework.boot</groupId> <groupId>org.jeecgframework.boot</groupId>
<artifactId>jeecg-boot-base-core</artifactId> <artifactId>jeecg-boot-base-core</artifactId>
<classifier>xj</classifier>
</dependency> </dependency>
</dependencies> </dependencies>
+21
View File
@@ -9,14 +9,17 @@
<modelVersion>4.0.0</modelVersion> <modelVersion>4.0.0</modelVersion>
<artifactId>health-im-biz</artifactId> <artifactId>health-im-biz</artifactId>
<dependencies> <dependencies>
<dependency> <dependency>
<groupId>com.renkang</groupId> <groupId>com.renkang</groupId>
<artifactId>health-im-api</artifactId> <artifactId>health-im-api</artifactId>
<classifier>xj</classifier>
</dependency> </dependency>
<dependency> <dependency>
<groupId>org.jeecgframework.boot</groupId> <groupId>org.jeecgframework.boot</groupId>
<artifactId>jeecg-system-cloud-api</artifactId> <artifactId>jeecg-system-cloud-api</artifactId>
<classifier>xj</classifier>
</dependency> </dependency>
<!--腾讯云即时对话pom--> <!--腾讯云即时对话pom-->
<dependency> <dependency>
@@ -35,6 +38,7 @@
<dependency> <dependency>
<groupId>com.renkang</groupId> <groupId>com.renkang</groupId>
<artifactId>health-consultation-api</artifactId> <artifactId>health-consultation-api</artifactId>
<classifier>xj</classifier>
</dependency> </dependency>
</dependencies> </dependencies>
<build> <build>
@@ -54,4 +58,21 @@
</plugin> </plugin>
</plugins> </plugins>
</build> </build>
<profiles>
<profile>
<id>biz-obf</id>
<build>
<plugins>
<plugin>
<groupId>com.github.wvengen</groupId>
<artifactId>proguard-maven-plugin</artifactId>
</plugin>
<plugin>
<groupId>org.codehaus.mojo</groupId>
<artifactId>build-helper-maven-plugin</artifactId>
</plugin>
</plugins>
</build>
</profile>
</profiles>
</project> </project>
+38
View File
@@ -0,0 +1,38 @@
-keepattributes *Annotation*, Signature, InnerClasses, EnclosingMethod, Exceptions, MethodParameters
-keep @org.springframework.stereotype.Service class *
-keep @org.springframework.web.bind.annotation.RestController class *
-keep @org.springframework.context.annotation.Configuration class * { *; }
-keep @org.springframework.stereotype.Component class *
-keep class lombok.** { *; }
-keepclassmembers enum * { # 保留枚举结构
public static **[] values();
public static ** valueOf(java.lang.String);
}
-keepclassmembers class * implements java.io.Serializable { *; }
-keepclassmembers class * {
@org.springframework.web.bind.annotation.*Mapping *;
}
-keepclassmembers class * {
private static synthetic java.lang.Object $deserializeLambda$(java.lang.invoke.SerializedLambda);
}
-keepclassmembers class * {
@lombok.Getter *;
@lombok.Setter *;
}
# MyBatis 专用保留规则
-keep interface com.renkang.**.mapper.** { *; }
-keep class com.renkang.**.entity.** { *; }
-keep class com.renkang.**.bean.** { *; }
-keep class com.renkang.**.model.** { *; }
-keep class com.renkang.**.vo.** { *; }
-keepparameternames
# 关闭优化和压缩(避免框架兼容性问题)
-dontshrink # 不删除未使用代码
-dontoptimize # 不优化字节码[5,6](@ref)
-keepdirectories
-dontusemixedcaseclassnames
-adaptclassstrings
# 混淆选项
-useuniqueclassmembernames # 成员名称唯一化
-ignorewarnings
+9 -12
View File
@@ -1,15 +1,12 @@
FROM anapsix/alpine-java:8_server-jre_unlimited FROM anapsix/alpine-java:8_server-jre_unlimited
MAINTAINER xxx@163.com ENV PROFILE_NAME=dev \
SERVER_PORT=7012 \
NACOS_SERVER_ADDR=nacos250:8848 \
ENV PROFILE_NAME dev NACOS_USERNAME=xjuser \
ENV SERVER_PORT 7012 NACOS_PASSWORD=Aa135790!123 \
ENV NACOS_SERVER_ADDR nacos250:8848 NACOS_NAMESPACE=3af98a54-4a44-4576-8e28-bf5781c0dccf \
ENV NACOS_USERNAME xjuser NACOS_GROUP=dev
ENV NACOS_PASSWORD Aa135790!123
ENV NACOS_NAMESPACE 3af98a54-4a44-4576-8e28-bf5781c0dccf
ENV NACOS_GROUP dev
RUN ln -sf /usr/share/zoneinfo/Asia/Shanghai /etc/localtime RUN ln -sf /usr/share/zoneinfo/Asia/Shanghai /etc/localtime
@@ -20,6 +17,6 @@ WORKDIR /health-im-start
EXPOSE 7012 EXPOSE 7012
ADD ./target/health-im-start.jar ./ COPY ./target/health-im-start-xj.jar ./
CMD sleep 1;java -Dfile.encoding=utf-8 -Djava.security.egd=file:/dev/./urandom -jar health-im-start.jar CMD sleep 1;java -Dfile.encoding=utf-8 -Djava.security.egd=file:/dev/./urandom -jar health-im-start-xj.jar
+6
View File
@@ -9,6 +9,11 @@
<modelVersion>4.0.0</modelVersion> <modelVersion>4.0.0</modelVersion>
<artifactId>health-im-start</artifactId> <artifactId>health-im-start</artifactId>
<properties>
<maven.install.skip>true</maven.install.skip>
</properties>
<dependencies> <dependencies>
<!--微服务启动 starter--> <!--微服务启动 starter-->
<dependency> <dependency>
@@ -20,6 +25,7 @@
<dependency> <dependency>
<groupId>com.renkang</groupId> <groupId>com.renkang</groupId>
<artifactId>health-im-biz</artifactId> <artifactId>health-im-biz</artifactId>
<classifier>${biz-classifier}</classifier>
</dependency> </dependency>
</dependencies> </dependencies>
-4
View File
@@ -13,10 +13,6 @@
<version>2.0.0</version> <version>2.0.0</version>
<packaging>pom</packaging> <packaging>pom</packaging>
<properties>
<maven.install.skip>true</maven.install.skip>
</properties>
<!--项目子模块--> <!--项目子模块-->
<modules> <modules>
<module>health-im-api</module> <module>health-im-api</module>
+37
View File
@@ -24,11 +24,19 @@
<groupId>com.renkang</groupId> <groupId>com.renkang</groupId>
<artifactId>health-consultation-api</artifactId> <artifactId>health-consultation-api</artifactId>
<version>${renkang.version}</version> <version>${renkang.version}</version>
<classifier>xj</classifier>
</dependency> </dependency>
<dependency> <dependency>
<groupId>com.renkang</groupId> <groupId>com.renkang</groupId>
<artifactId>health-consultation-biz</artifactId> <artifactId>health-consultation-biz</artifactId>
<version>${renkang.version}</version> <version>${renkang.version}</version>
<classifier>xj</classifier>
</dependency>
<dependency>
<groupId>com.renkang</groupId>
<artifactId>health-consultation-biz</artifactId>
<version>${renkang.version}</version>
<classifier>obf</classifier>
</dependency> </dependency>
<!-- emergency 应急模块--> <!-- emergency 应急模块-->
@@ -36,11 +44,19 @@
<groupId>com.renkang</groupId> <groupId>com.renkang</groupId>
<artifactId>health-emergency-api</artifactId> <artifactId>health-emergency-api</artifactId>
<version>${renkang.version}</version> <version>${renkang.version}</version>
<classifier>xj</classifier>
</dependency> </dependency>
<dependency> <dependency>
<groupId>com.renkang</groupId> <groupId>com.renkang</groupId>
<artifactId>health-emergency-biz</artifactId> <artifactId>health-emergency-biz</artifactId>
<version>${renkang.version}</version> <version>${renkang.version}</version>
<classifier>xj</classifier>
</dependency>
<dependency>
<groupId>com.renkang</groupId>
<artifactId>health-emergency-biz</artifactId>
<version>${renkang.version}</version>
<classifier>obf</classifier>
</dependency> </dependency>
<!-- IM IM通信模块--> <!-- IM IM通信模块-->
@@ -48,11 +64,19 @@
<groupId>com.renkang</groupId> <groupId>com.renkang</groupId>
<artifactId>health-im-api</artifactId> <artifactId>health-im-api</artifactId>
<version>${renkang.version}</version> <version>${renkang.version}</version>
<classifier>xj</classifier>
</dependency> </dependency>
<dependency> <dependency>
<groupId>com.renkang</groupId> <groupId>com.renkang</groupId>
<artifactId>health-im-biz</artifactId> <artifactId>health-im-biz</artifactId>
<version>${renkang.version}</version> <version>${renkang.version}</version>
<classifier>xj</classifier>
</dependency>
<dependency>
<groupId>com.renkang</groupId>
<artifactId>health-im-biz</artifactId>
<version>${renkang.version}</version>
<classifier>obf</classifier>
</dependency> </dependency>
<!-- watch 手表模块--> <!-- watch 手表模块-->
@@ -60,23 +84,33 @@
<groupId>com.renkang</groupId> <groupId>com.renkang</groupId>
<artifactId>health-watch-api</artifactId> <artifactId>health-watch-api</artifactId>
<version>${renkang.version}</version> <version>${renkang.version}</version>
<classifier>xj</classifier>
</dependency> </dependency>
<dependency> <dependency>
<groupId>com.renkang</groupId> <groupId>com.renkang</groupId>
<artifactId>health-watch-biz</artifactId> <artifactId>health-watch-biz</artifactId>
<version>${renkang.version}</version> <version>${renkang.version}</version>
<classifier>xj</classifier>
</dependency>
<dependency>
<groupId>com.renkang</groupId>
<artifactId>health-watch-biz</artifactId>
<version>${renkang.version}</version>
<classifier>obf</classifier>
</dependency> </dependency>
<!-- modules 组件--> <!-- modules 组件-->
<dependency> <dependency>
<groupId>com.renkang</groupId> <groupId>com.renkang</groupId>
<artifactId>data-center-api</artifactId> <artifactId>data-center-api</artifactId>
<version>${renkang.version}</version> <version>${renkang.version}</version>
<classifier>xj</classifier>
</dependency> </dependency>
<dependency> <dependency>
<groupId>com.renkang</groupId> <groupId>com.renkang</groupId>
<artifactId>font-resources</artifactId> <artifactId>font-resources</artifactId>
<version>${renkang.version}</version> <version>${renkang.version}</version>
<classifier>xj</classifier>
</dependency> </dependency>
<!-- starter --> <!-- starter -->
@@ -84,16 +118,19 @@
<groupId>com.renkang</groupId> <groupId>com.renkang</groupId>
<artifactId>renkang-starter-batch</artifactId> <artifactId>renkang-starter-batch</artifactId>
<version>${renkang.version}</version> <version>${renkang.version}</version>
<classifier>xj</classifier>
</dependency> </dependency>
<dependency> <dependency>
<groupId>com.renkang</groupId> <groupId>com.renkang</groupId>
<artifactId>renkang-starter-aspose-word</artifactId> <artifactId>renkang-starter-aspose-word</artifactId>
<version>${renkang.version}</version> <version>${renkang.version}</version>
<classifier>xj</classifier>
</dependency> </dependency>
<dependency> <dependency>
<groupId>com.renkang</groupId> <groupId>com.renkang</groupId>
<artifactId>renkang-test</artifactId> <artifactId>renkang-test</artifactId>
<version>${renkang.version}</version> <version>${renkang.version}</version>
<classifier>xj</classifier>
<scope>test</scope> <scope>test</scope>
</dependency> </dependency>
+1
View File
@@ -15,6 +15,7 @@
<dependency> <dependency>
<groupId>org.jeecgframework.boot</groupId> <groupId>org.jeecgframework.boot</groupId>
<artifactId>jeecg-boot-base-core</artifactId> <artifactId>jeecg-boot-base-core</artifactId>
<classifier>xj</classifier>
</dependency> </dependency>
<dependency> <dependency>
<groupId>com.alibaba</groupId> <groupId>com.alibaba</groupId>
+25 -1
View File
@@ -10,26 +10,32 @@
</parent> </parent>
<artifactId>health-watch-biz</artifactId> <artifactId>health-watch-biz</artifactId>
<dependencies> <dependencies>
<dependency> <dependency>
<groupId>com.renkang</groupId> <groupId>com.renkang</groupId>
<artifactId>health-watch-api</artifactId> <artifactId>health-watch-api</artifactId>
<classifier>xj</classifier>
</dependency> </dependency>
<dependency> <dependency>
<groupId>com.renkang</groupId> <groupId>com.renkang</groupId>
<artifactId>health-emergency-api</artifactId> <artifactId>health-emergency-api</artifactId>
<classifier>xj</classifier>
</dependency> </dependency>
<dependency> <dependency>
<groupId>org.jeecgframework.boot</groupId> <groupId>org.jeecgframework.boot</groupId>
<artifactId>jeecg-system-cloud-api</artifactId> <artifactId>jeecg-system-cloud-api</artifactId>
<classifier>xj</classifier>
</dependency> </dependency>
<dependency> <dependency>
<groupId>com.renkang</groupId> <groupId>com.renkang</groupId>
<artifactId>renkang-starter-batch</artifactId> <artifactId>renkang-starter-batch</artifactId>
<classifier>xj</classifier>
</dependency> </dependency>
<dependency> <dependency>
<groupId>com.renkang</groupId> <groupId>com.renkang</groupId>
<artifactId>data-center-api</artifactId> <artifactId>data-center-api</artifactId>
<classifier>xj</classifier>
</dependency> </dependency>
<dependency> <dependency>
@@ -39,6 +45,7 @@
<dependency> <dependency>
<groupId>com.renkang</groupId> <groupId>com.renkang</groupId>
<artifactId>renkang-starter-aspose-word</artifactId> <artifactId>renkang-starter-aspose-word</artifactId>
<classifier>xj</classifier>
</dependency> </dependency>
<dependency> <dependency>
<groupId>com.alibaba</groupId> <groupId>com.alibaba</groupId>
@@ -55,6 +62,7 @@
<dependency> <dependency>
<groupId>com.renkang</groupId> <groupId>com.renkang</groupId>
<artifactId>font-resources</artifactId> <artifactId>font-resources</artifactId>
<classifier>xj</classifier>
</dependency> </dependency>
</dependencies> </dependencies>
<build> <build>
@@ -74,5 +82,21 @@
</plugin> </plugin>
</plugins> </plugins>
</build> </build>
<profiles>
<profile>
<id>biz-obf</id>
<build>
<plugins>
<plugin>
<groupId>com.github.wvengen</groupId>
<artifactId>proguard-maven-plugin</artifactId>
</plugin>
<plugin>
<groupId>org.codehaus.mojo</groupId>
<artifactId>build-helper-maven-plugin</artifactId>
</plugin>
</plugins>
</build>
</profile>
</profiles>
</project> </project>
@@ -0,0 +1,41 @@
-keepattributes *Annotation*, Signature, InnerClasses, EnclosingMethod, Exceptions, MethodParameters
-keep @org.springframework.stereotype.Service class *
-keep @org.springframework.web.bind.annotation.RestController class *
-keep @org.springframework.context.annotation.Configuration class * { *; }
-keep @org.springframework.stereotype.Component class *
-keep class lombok.** { *; }
-keepclassmembers enum * { # 保留枚举结构
public static **[] values();
public static ** valueOf(java.lang.String);
}
-keepclassmembers class * implements java.io.Serializable { *; }
-keepclassmembers class * {
@org.springframework.web.bind.annotation.*Mapping *;
}
-keepclassmembers class * {
private static synthetic java.lang.Object $deserializeLambda$(java.lang.invoke.SerializedLambda);
}
-keepclassmembers class * {
@lombok.Getter *;
@lombok.Setter *;
}
# MyBatis 专用保留规则
-keep interface com.renkang.**.mapper.** { *; }
-keep class com.renkang.**.mapper.provider** { *; }
-keep class com.renkang.**.entity.** { *; }
-keep class com.renkang.**.bean.** { *; }
-keep class com.renkang.**.model.** { *; }
-keep class com.renkang.**.vo.** { *; }
-keep class com.renkang.**.task.**
-keep class com.renkang.**.task.**Constants { *; }
-keepparameternames
# 关闭优化和压缩(避免框架兼容性问题)
-dontshrink # 不删除未使用代码
-dontoptimize # 不优化字节码[5,6](@ref)
-keepdirectories
-dontusemixedcaseclassnames
-adaptclassstrings
# 混淆选项
-useuniqueclassmembernames # 成员名称唯一化
-ignorewarnings
+9 -12
View File
@@ -1,15 +1,12 @@
FROM anapsix/alpine-java:8_server-jre_unlimited FROM anapsix/alpine-java:8_server-jre_unlimited
MAINTAINER xxx@163.com ENV PROFILE_NAME=dev \
SERVER_PORT=7098 \
NACOS_SERVER_ADDR=nacos250:8848 \
ENV PROFILE_NAME dev NACOS_USERNAME=xjuser \
ENV SERVER_PORT 7098 NACOS_PASSWORD=Aa135790!123 \
ENV NACOS_SERVER_ADDR nacos250:8848 NACOS_NAMESPACE=3af98a54-4a44-4576-8e28-bf5781c0dccf \
ENV NACOS_USERNAME xjuser NACOS_GROUP=dev
ENV NACOS_PASSWORD Aa135790!123
ENV NACOS_NAMESPACE 3af98a54-4a44-4576-8e28-bf5781c0dccf
ENV NACOS_GROUP dev
RUN ln -sf /usr/share/zoneinfo/Asia/Shanghai /etc/localtime RUN ln -sf /usr/share/zoneinfo/Asia/Shanghai /etc/localtime
@@ -20,6 +17,6 @@ WORKDIR /health-watch-start
EXPOSE 7098 EXPOSE 7098
ADD ./target/health-watch-start.jar ./ COPY ./target/health-watch-start-xj.jar ./
CMD sleep 1;java -Dfile.encoding=utf-8 -Djava.security.egd=file:/dev/./urandom -jar health-watch-start.jar CMD sleep 1;java -Dfile.encoding=utf-8 -Djava.security.egd=file:/dev/./urandom -jar health-watch-start-xj.jar
+6
View File
@@ -11,6 +11,10 @@
<artifactId>health-watch-start</artifactId> <artifactId>health-watch-start</artifactId>
<properties>
<maven.install.skip>true</maven.install.skip>
</properties>
<dependencies> <dependencies>
<!--微服务启动 starter--> <!--微服务启动 starter-->
<dependency> <dependency>
@@ -22,11 +26,13 @@
<dependency> <dependency>
<groupId>com.renkang</groupId> <groupId>com.renkang</groupId>
<artifactId>health-watch-biz</artifactId> <artifactId>health-watch-biz</artifactId>
<classifier>${biz-classifier}</classifier>
</dependency> </dependency>
<dependency> <dependency>
<groupId>com.renkang</groupId> <groupId>com.renkang</groupId>
<artifactId>renkang-test</artifactId> <artifactId>renkang-test</artifactId>
<classifier>xj</classifier>
<scope>test</scope> <scope>test</scope>
</dependency> </dependency>
-4
View File
@@ -20,8 +20,4 @@
<version>2.0.0</version> <version>2.0.0</version>
<packaging>pom</packaging> <packaging>pom</packaging>
<properties>
<maven.install.skip>true</maven.install.skip>
</properties>
</project> </project>
@@ -4,6 +4,7 @@ import org.jeecg.modules.exports.entity.CommonExportsInfo;
import org.jeecg.modules.imports.entity.CommonImports; import org.jeecg.modules.imports.entity.CommonImports;
import org.jeecg.modules.imports.entity.CommonImportsDetail; import org.jeecg.modules.imports.entity.CommonImportsDetail;
import org.jeecg.modules.imports.entity.CommonImportsInfo; import org.jeecg.modules.imports.entity.CommonImportsInfo;
import org.springframework.stereotype.Component;
import java.util.Collections; import java.util.Collections;
import java.util.List; import java.util.List;
@@ -11,6 +12,7 @@ import java.util.List;
/** /**
* @author Jiang Shunzhi * @author Jiang Shunzhi
*/ */
@Component
public class ImportExportApiFallback implements ImportExportApi { public class ImportExportApiFallback implements ImportExportApi {
File diff suppressed because it is too large Load Diff
@@ -14,13 +14,13 @@ import org.springframework.stereotype.Component;
@Data @Data
public class StaticConfig { public class StaticConfig {
@Value("${jeecg.oss.accessKey}") @Value("${jeecg.oss.accessKey:}")
private String accessKeyId; private String accessKeyId;
@Value("${jeecg.oss.secretKey}") @Value("${jeecg.oss.secretKey:}")
private String accessKeySecret; private String accessKeySecret;
@Value(value = "${spring.mail.username}") @Value(value = "${spring.mail.username:}")
private String emailFrom; private String emailFrom;
static { static {
@@ -13,13 +13,13 @@ import org.springframework.context.annotation.Configuration;
@Configuration @Configuration
public class OssConfiguration { public class OssConfiguration {
@Value("${jeecg.oss.endpoint}") @Value("${jeecg.oss.endpoint:}")
private String endpoint; private String endpoint;
@Value("${jeecg.oss.accessKey}") @Value("${jeecg.oss.accessKey:}")
private String accessKeyId; private String accessKeyId;
@Value("${jeecg.oss.secretKey}") @Value("${jeecg.oss.secretKey:}")
private String accessKeySecret; private String accessKeySecret;
@Value("${jeecg.oss.bucketName}") @Value("${jeecg.oss.bucketName:}")
private String bucketName; private String bucketName;
@Value("${jeecg.oss.staticDomain:}") @Value("${jeecg.oss.staticDomain:}")
private String staticDomain; private String staticDomain;
@@ -15,6 +15,7 @@
<dependency> <dependency>
<groupId>org.jeecgframework.boot</groupId> <groupId>org.jeecgframework.boot</groupId>
<artifactId>jeecg-system-cloud-api</artifactId> <artifactId>jeecg-system-cloud-api</artifactId>
<classifier>xj</classifier>
</dependency> </dependency>
</dependencies> </dependencies>
+1
View File
@@ -20,6 +20,7 @@
<dependency> <dependency>
<groupId>org.jeecgframework.boot</groupId> <groupId>org.jeecgframework.boot</groupId>
<artifactId>jeecg-boot-base-core</artifactId> <artifactId>jeecg-boot-base-core</artifactId>
<classifier>xj</classifier>
</dependency> </dependency>
</dependencies> </dependencies>
</project> </project>
+20 -1
View File
@@ -20,10 +20,12 @@
<dependency> <dependency>
<groupId>com.renkang</groupId> <groupId>com.renkang</groupId>
<artifactId>health-consultation-api</artifactId> <artifactId>health-consultation-api</artifactId>
<classifier>xj</classifier>
</dependency> </dependency>
<dependency> <dependency>
<groupId>org.jeecgframework.boot</groupId> <groupId>org.jeecgframework.boot</groupId>
<artifactId>jeecg-system-local-api</artifactId> <artifactId>jeecg-system-local-api</artifactId>
<classifier>xj</classifier>
</dependency> </dependency>
<dependency> <dependency>
<groupId>org.hibernate</groupId> <groupId>org.hibernate</groupId>
@@ -79,8 +81,25 @@
<dependency> <dependency>
<groupId>com.renkang</groupId> <groupId>com.renkang</groupId>
<artifactId>health-watch-api</artifactId> <artifactId>health-watch-api</artifactId>
<classifier>xj</classifier>
</dependency> </dependency>
</dependencies> </dependencies>
<profiles>
<profile>
<id>biz-obf</id>
<build>
<plugins>
<plugin>
<groupId>com.github.wvengen</groupId>
<artifactId>proguard-maven-plugin</artifactId>
</plugin>
<plugin>
<groupId>org.codehaus.mojo</groupId>
<artifactId>build-helper-maven-plugin</artifactId>
</plugin>
</plugins>
</build>
</profile>
</profiles>
</project> </project>
@@ -0,0 +1,38 @@
-keepattributes *Annotation*, Signature, InnerClasses, EnclosingMethod, Exceptions, MethodParameters
-keep @org.springframework.stereotype.Service class *
-keep @org.springframework.web.bind.annotation.RestController class *
-keep @org.springframework.context.annotation.Configuration class * { *; }
-keep @org.springframework.stereotype.Component class *
-keep class lombok.** { *; }
-keepclassmembers enum * { # 保留枚举结构
public static **[] values();
public static ** valueOf(java.lang.String);
}
-keepclassmembers class * implements java.io.Serializable { *; }
-keepclassmembers class * {
@org.springframework.web.bind.annotation.*Mapping *;
}
-keepclassmembers class * {
private static synthetic java.lang.Object $deserializeLambda$(java.lang.invoke.SerializedLambda);
}
-keepclassmembers class * {
@lombok.Getter *;
@lombok.Setter *;
}
# MyBatis 专用保留规则
-keep interface org.jeecg.**.mapper.** { *; }
-keep class org.jeecg.**.entity.** { *; }
-keep class org.jeecg.**.bean.** { *; }
-keep class org.jeecg.**.model.** { *; }
-keep class org.jeecg.**.vo.** { *; }
-keepparameternames
# 关闭优化和压缩(避免框架兼容性问题)
-dontshrink # 不删除未使用代码
-dontoptimize # 不优化字节码[5,6](@ref)
-keepdirectories
-dontusemixedcaseclassnames
-adaptclassstrings
# 混淆选项
-useuniqueclassmembernames # 成员名称唯一化
-ignorewarnings
@@ -48,10 +48,7 @@ import org.jeecg.modules.system.manager.UserCacheManager;
import org.jeecg.modules.system.service.IHealthUserEmployeeExService; import org.jeecg.modules.system.service.IHealthUserEmployeeExService;
import org.jeecg.modules.system.service.ISysUserDepartChangeApplyService; import org.jeecg.modules.system.service.ISysUserDepartChangeApplyService;
import org.jeecg.modules.system.service.ISysUserService; import org.jeecg.modules.system.service.ISysUserService;
import org.jeecg.modules.system.vo.ItemVo; import org.jeecg.modules.system.vo.*;
import org.jeecg.modules.system.vo.NoSelfManagerUser;
import org.jeecg.modules.system.vo.SysDepartVo;
import org.jeecg.modules.system.vo.UserEmployeeVo;
import org.jeecg.redis.RedisStreamKeyEnum; import org.jeecg.redis.RedisStreamKeyEnum;
import org.jeecg.redis.RedisStreamUtil; import org.jeecg.redis.RedisStreamUtil;
import org.jeecg.util.AsyncUtils; import org.jeecg.util.AsyncUtils;
@@ -114,6 +111,7 @@ public class HealthUserEmployeeExController extends JeecgController<HealthUserEm
* @param pageNo * @param pageNo
* @param pageSize * @param pageSize
* @param req * @param req
* @param idStatus 是否需要脱敏标识 idStatus=1说明身份证号需要脱敏处理
* @return * @return
*/ */
//@AutoLog(value = "员工-分页列表查询") //@AutoLog(value = "员工-分页列表查询")
@@ -122,10 +120,11 @@ public class HealthUserEmployeeExController extends JeecgController<HealthUserEm
public Result<IPage<UserEmployee>> queryPageList(UserFilter userFilter, public Result<IPage<UserEmployee>> queryPageList(UserFilter userFilter,
@RequestParam(name = "pageNo", defaultValue = "1") Integer pageNo, @RequestParam(name = "pageNo", defaultValue = "1") Integer pageNo,
@RequestParam(name = "pageSize", defaultValue = "10") Integer pageSize, @RequestParam(name = "pageSize", defaultValue = "10") Integer pageSize,
@RequestParam(required = false) Integer idStatus,
HttpServletRequest req) { HttpServletRequest req) {
Page<UserEmployee> page = new Page<>(pageNo, pageSize); Page<UserEmployee> page = new Page<>(pageNo, pageSize);
IPage<UserEmployee> pageList = healthUserEmployeeExService.selectHealthUserEmployeeExList(page, userFilter); IPage<UserEmployee> pageList = healthUserEmployeeExService.selectHealthUserEmployeeExList(page, userFilter,idStatus);
return Result.OK(pageList); return Result.OK(pageList);
} }
@@ -415,7 +414,7 @@ public class HealthUserEmployeeExController extends JeecgController<HealthUserEm
exportParams.setSecondTitle("导出人:"+sysUser.getRealname()+" ["+ DateUtils.formatDateTime() +"]"); exportParams.setSecondTitle("导出人:"+sysUser.getRealname()+" ["+ DateUtils.formatDateTime() +"]");
map.put(NormalExcelConstants.PARAMS, exportParams); map.put(NormalExcelConstants.PARAMS, exportParams);
//表格对应实体 //表格对应实体
map.put(NormalExcelConstants.CLASS, UserEmployeeVo.class); map.put(NormalExcelConstants.CLASS, UserEmployeeImportVo.class);
//数据集合 //数据集合
map.put(NormalExcelConstants.DATA_LIST, new ArrayList<>()); map.put(NormalExcelConstants.DATA_LIST, new ArrayList<>());
mapList.add(map); mapList.add(map);
@@ -439,25 +438,6 @@ public class HealthUserEmployeeExController extends JeecgController<HealthUserEm
} }
map.put(NormalExcelConstants.DATA_LIST, itemVos); map.put(NormalExcelConstants.DATA_LIST, itemVos);
mapList.add(map); mapList.add(map);
//合同
map = Maps.newHashMap();
exportParams = new ExportParams("合同数据查询", "合同查询范围");
//表格对应实体
map.put(NormalExcelConstants.PARAMS, exportParams);
map.put(NormalExcelConstants.CLASS, ItemVo.class);
List<DictModel> contracts = dictCacheManager.queryDictItemsByCode("contract");
itemVos = Lists.newArrayList();
if(!CollectionUtils.isEmpty(contracts)) {
for (int i = 0; i < contracts.size(); i++) {
ItemVo itemVo = new ItemVo();
itemVo.setId(i + 1);
itemVo.setCode(contracts.get(i).getValue());
itemVo.setName(contracts.get(i).getText());
itemVos.add(itemVo);
}
}
map.put(NormalExcelConstants.DATA_LIST, itemVos);
mapList.add(map);
//职务级别 //职务级别
map = Maps.newHashMap(); map = Maps.newHashMap();
exportParams = new ExportParams("职务级别数据查询", "职务级别查询范围"); exportParams = new ExportParams("职务级别数据查询", "职务级别查询范围");
@@ -477,25 +457,6 @@ public class HealthUserEmployeeExController extends JeecgController<HealthUserEm
} }
map.put(NormalExcelConstants.DATA_LIST, itemVos); map.put(NormalExcelConstants.DATA_LIST, itemVos);
mapList.add(map); mapList.add(map);
//职业工种
map = Maps.newHashMap();
exportParams = new ExportParams("职业工种数据查询", "职业工种查询范围");
//表格对应实体
map.put(NormalExcelConstants.PARAMS, exportParams);
map.put(NormalExcelConstants.CLASS, ItemVo.class);
List<DictModel> workTypes = dictCacheManager.queryDictItemsByCode("work_type");
itemVos = Lists.newArrayList();
if(!CollectionUtils.isEmpty(workTypes)) {
for (int i = 0; i < workTypes.size(); i++) {
ItemVo itemVo = new ItemVo();
itemVo.setId(i + 1);
itemVo.setCode(workTypes.get(i).getValue());
itemVo.setName(workTypes.get(i).getText());
itemVos.add(itemVo);
}
}
map.put(NormalExcelConstants.DATA_LIST, itemVos);
mapList.add(map);
//婚姻状况 //婚姻状况
map = Maps.newHashMap(); map = Maps.newHashMap();
exportParams = new ExportParams("婚姻状况数据查询", "婚姻状况查询范围"); exportParams = new ExportParams("婚姻状况数据查询", "婚姻状况查询范围");
@@ -534,25 +495,6 @@ public class HealthUserEmployeeExController extends JeecgController<HealthUserEm
} }
map.put(NormalExcelConstants.DATA_LIST, itemVos); map.put(NormalExcelConstants.DATA_LIST, itemVos);
mapList.add(map); mapList.add(map);
//职称
map = Maps.newHashMap();
exportParams = new ExportParams("职称数据查询", "职称查询范围");
//表格对应实体
map.put(NormalExcelConstants.PARAMS, exportParams);
map.put(NormalExcelConstants.CLASS, ItemVo.class);
List<DictModel> eTitles = dictCacheManager.queryDictItemsByCode("e_title");
itemVos = Lists.newArrayList();
if(!CollectionUtils.isEmpty(eTitles)) {
for (int i = 0; i < eTitles.size(); i++) {
ItemVo itemVo = new ItemVo();
itemVo.setId(i + 1);
itemVo.setCode(eTitles.get(i).getValue());
itemVo.setName(eTitles.get(i).getText());
itemVos.add(itemVo);
}
}
map.put(NormalExcelConstants.DATA_LIST, itemVos);
mapList.add(map);
ModelAndView mv = new ModelAndView(new JeecgEntityExcelView()); ModelAndView mv = new ModelAndView(new JeecgEntityExcelView());
//此处设置的filename无效 ,前端会重更新设置一下 //此处设置的filename无效 ,前端会重更新设置一下
mv.addObject(NormalExcelConstants.FILE_NAME, "员工信息导入模版"); mv.addObject(NormalExcelConstants.FILE_NAME, "员工信息导入模版");
@@ -586,7 +528,7 @@ public class HealthUserEmployeeExController extends JeecgController<HealthUserEm
try { try {
String taskCode = SystemConstant.TASK_IMPORT_USER_EMP_INFO; String taskCode = SystemConstant.TASK_IMPORT_USER_EMP_INFO;
String importTitle = "员工信息导入"; String importTitle = "员工信息导入";
return importsUtilService.importExcelReflectDetail(file,params, UserEmployeeVo.class,taskCode,importTitle, commonImportsOption); return importsUtilService.importExcelReflectDetail(file,params, UserEmployeeImportVo.class,taskCode,importTitle, commonImportsOption);
} catch (Exception e) { } catch (Exception e) {
log.error("员工信息导入失败!" + e.getMessage(), e); log.error("员工信息导入失败!" + e.getMessage(), e);
return Result.error("员工信息数据导入失败!"); return Result.error("员工信息数据导入失败!");
@@ -50,8 +50,8 @@ public class SysCommentController extends JeecgController<SysComment, ISysCommen
/** /**
* 在线预览文件地址 * 在线预览文件地址
*/ */
@Value("${jeecg.file-view-domain}/onlinePreview") // @Value("${jeecg.file-view-domain}/onlinePreview")
private String onlinePreviewDomain; // private String onlinePreviewDomain;
/** /**
* 查询评论+文件 * 查询评论+文件
@@ -130,10 +130,10 @@ public class SysCommentController extends JeecgController<SysComment, ISysCommen
* *
* @return * @return
*/ */
@GetMapping(value = "/getFileViewDomain") // @GetMapping(value = "/getFileViewDomain")
public Result<String> getFileViewDomain() { // public Result<String> getFileViewDomain() {
return Result.OK(onlinePreviewDomain); // return Result.OK(onlinePreviewDomain);
} // }
/** /**
@@ -40,7 +40,7 @@ public interface IHealthUserEmployeeExService extends IService<HealthUserEmploye
// 导出员工清单完成 // 导出员工清单完成
String FINISH = "8"; String FINISH = "8";
IPage<UserEmployee> selectHealthUserEmployeeExList(Page page, UserFilter filter); IPage<UserEmployee> selectHealthUserEmployeeExList(Page page, UserFilter filter,Integer idStatus);
IPage<UserEmployee> selectHealthUserEmployeeExListAll(Page page, UserFilter filter); IPage<UserEmployee> selectHealthUserEmployeeExListAll(Page page, UserFilter filter);
@@ -3,10 +3,7 @@ package org.jeecg.modules.system.service.impl;
import cn.hutool.core.collection.CollUtil; import cn.hutool.core.collection.CollUtil;
import cn.hutool.core.collection.CollectionUtil; import cn.hutool.core.collection.CollectionUtil;
import cn.hutool.core.date.DateUtil; import cn.hutool.core.date.DateUtil;
import cn.hutool.core.util.IdcardUtil; import cn.hutool.core.util.*;
import cn.hutool.core.util.ObjUtil;
import cn.hutool.core.util.ObjectUtil;
import cn.hutool.core.util.StrUtil;
import com.alibaba.csp.sentinel.util.StringUtil; import com.alibaba.csp.sentinel.util.StringUtil;
import com.alibaba.fastjson.JSON; import com.alibaba.fastjson.JSON;
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
@@ -67,6 +64,7 @@ import org.jeecg.modules.system.mapper.*;
import org.jeecg.modules.system.service.*; import org.jeecg.modules.system.service.*;
import org.jeecg.modules.system.vo.NoSelfManagerUser; import org.jeecg.modules.system.vo.NoSelfManagerUser;
import org.jeecg.modules.system.vo.SysDepartVo; import org.jeecg.modules.system.vo.SysDepartVo;
import org.jeecg.modules.system.vo.UserEmployeeImportVo;
import org.jeecg.modules.system.vo.UserEmployeeVo; import org.jeecg.modules.system.vo.UserEmployeeVo;
import org.jeecg.redis.RedisStreamKeyEnum; import org.jeecg.redis.RedisStreamKeyEnum;
import org.jeecg.redis.RedisStreamUtil; import org.jeecg.redis.RedisStreamUtil;
@@ -184,7 +182,7 @@ public class HealthUserEmployeeExServiceImpl extends ServiceImpl<HealthUserEmplo
} }
@Override @Override
public IPage<UserEmployee> selectHealthUserEmployeeExList(Page page, UserFilter filter) { public IPage<UserEmployee> selectHealthUserEmployeeExList(Page page, UserFilter filter,Integer idStatus) {
//四级单位判断 //四级单位判断
if (StringUtil.isNotBlank(filter.getDeptCode())) { if (StringUtil.isNotBlank(filter.getDeptCode())) {
filter.setOrgCode(filter.getDeptCode()); filter.setOrgCode(filter.getDeptCode());
@@ -228,6 +226,10 @@ public class HealthUserEmployeeExServiceImpl extends ServiceImpl<HealthUserEmplo
//根据身份证号获取年龄 //根据身份证号获取年龄
userEmployee.setAge(IdcardUtil.getAgeByIdCard(userEmployee.getIdCard())); userEmployee.setAge(IdcardUtil.getAgeByIdCard(userEmployee.getIdCard()));
} }
//新疆项目需要身份证脱敏处理
if(null != idStatus && idStatus == 1){
userEmployee.setIdCard(DesensitizedUtil.idCardNum(userEmployee.getIdCard(),3,3));
}
}); });
return userEmployeeIPage; return userEmployeeIPage;
} }
@@ -848,7 +850,9 @@ public class HealthUserEmployeeExServiceImpl extends ServiceImpl<HealthUserEmplo
extension.setId(userId); extension.setId(userId);
extension.setCreatedon(new Date()); extension.setCreatedon(new Date());
// 添加当前年龄 // 添加当前年龄
extension.setCurrentAge(GlobalUtils.getAgeByIdCard(userEmployee.getIdCard())); if(StrUtil.isNotEmpty(userEmployee.getIdCard())){
extension.setCurrentAge(GlobalUtils.getAgeByIdCard(userEmployee.getIdCard()));
}
int i = healthUserEmployeeExMapper.insert(extension); int i = healthUserEmployeeExMapper.insert(extension);
// 保存员工岗位信息,其他用户类型无岗位 // 保存员工岗位信息,其他用户类型无岗位
SysUserPost sysUserPost = new SysUserPost(); SysUserPost sysUserPost = new SysUserPost();
@@ -1170,7 +1174,7 @@ public class HealthUserEmployeeExServiceImpl extends ServiceImpl<HealthUserEmplo
} }
StringBuilder sd = new StringBuilder(); StringBuilder sd = new StringBuilder();
UserEmployeeVo userEmployeeVo = new UserEmployeeVo(); UserEmployeeImportVo userEmployeeVo = new UserEmployeeImportVo();
ReflectHelper reflectHelperDetail = new ReflectHelper(detail); ReflectHelper reflectHelperDetail = new ReflectHelper(detail);
ReflectHelper reflectHelperExcel = new ReflectHelper(userEmployeeVo); ReflectHelper reflectHelperExcel = new ReflectHelper(userEmployeeVo);
Object[] objects = ReflectHelper.getFiledName(userEmployeeVo); Object[] objects = ReflectHelper.getFiledName(userEmployeeVo);
@@ -1224,47 +1228,33 @@ public class HealthUserEmployeeExServiceImpl extends ServiceImpl<HealthUserEmplo
sd.append("上传的部门错误,上传单位不存在该部门!"); sd.append("上传的部门错误,上传单位不存在该部门!");
} }
} }
if (StrUtil.isBlank(userEmployeeVo.getIdCard()) if (StrUtil.isBlank(userEmployeeVo.getRealname())
|| StrUtil.isBlank(userEmployeeVo.getUsername())
|| StrUtil.isBlank(userEmployeeVo.getEmpSysno()) || StrUtil.isBlank(userEmployeeVo.getEmpSysno())
|| StrUtil.isBlank(userEmployeeVo.getSex())) { || StrUtil.isBlank(userEmployeeVo.getSex())) {
sd.append("上传的身份证号、登录账号、员工工号、性别不能为空!"); sd.append("上传的员工姓名、员工工号、性别不能为空!");
} }
if (StrUtil.isBlank(userEmployeeVo.getPhone())
|| StrUtil.isBlank(userEmployeeVo.getEmpNation())
|| StrUtil.isBlank(userEmployeeVo.getEmpType())
|| StrUtil.isBlank(userEmployeeVo.getEmpJob())) {
sd.append("上传的手机号码、民族信息、合同类型、职务级别不能为空!");
}
if (StrUtil.isBlank(userEmployeeVo.getEmpDegree())
|| StrUtil.isBlank(userEmployeeVo.getMedicalWorkTypeCode())
|| StrUtil.isBlank(userEmployeeVo.getEmpMarriage())) {
sd.append("上传的学历、职业工种、婚姻状况不能为空!");
}
// if (!IdcardUtil.isValidCard(userEmployeeVo.getIdCard())) {
// sd.append("身份证号不合法!");
// }
//校验上传的账号是否有存在的 //校验上传的账号是否有存在的
if (CollectionUtil.isEmpty(list)) { if (CollectionUtil.isEmpty(list)) {
list.add(userEmployeeVo.getUsername()); list.add(userEmployeeVo.getEmpSysno());
} else { } else {
if (list.contains(userEmployeeVo.getUsername())) { if (list.contains(userEmployeeVo.getEmpSysno())) {
sd.append("上传文件的登录账号重复"); sd.append("上传文件中存在重复的工号");
} else { } else {
list.add(userEmployeeVo.getUsername()); list.add(userEmployeeVo.getEmpSysno());
} }
} }
//校验账号是否存在 //校验账号是否存在(登录账号为非必填, 若不填使用工号作为员工登录账号)
List<SysUser> users = sysUserService.lambdaQuery().eq(SysUser::getUsername, userEmployeeVo.getUsername()).list(); String userName = StrUtil.isEmpty(userEmployeeVo.getUsername())? userEmployeeVo.getEmpSysno() : userEmployeeVo.getUsername();
if (CollectionUtil.isNotEmpty(users)) { boolean noExists = sysUserService.lambdaQuery().eq(SysUser::getUsername,userName).or().eq(SysUser::getWorkNo,userEmployeeVo.getEmpSysno()).exists();
sd.append("该登录账号已存在!"); if (noExists) {
sd.append("该登录账号或工号已存在!");
} }
//校验身份证是否存在 //校验身份证是否存在
SysUser sysUser = sysUserService.queryUserByCardId(userEmployeeVo.getIdCard()); SysUser sysUser = sysUserService.queryUserByCardId(userEmployeeVo.getIdCard());
if (Objects.nonNull(sysUser)) { if (Objects.nonNull(sysUser)) {
sd.append("该身份证号已存在!"); sd.append("该身份证号已存在!");
} }
if (validateMobilePhone(userEmployeeVo.getPhone())) { if (StrUtil.isNotEmpty(userEmployeeVo.getPhone()) && validateMobilePhone(userEmployeeVo.getPhone())) {
sd.append("手机号不合规!"); sd.append("手机号不合规!");
} }
//字典校验 //字典校验
@@ -1283,21 +1273,11 @@ public class HealthUserEmployeeExServiceImpl extends ServiceImpl<HealthUserEmplo
if (StrUtil.isBlank(nation)) { if (StrUtil.isBlank(nation)) {
sd.append("民族信息不符合规范,参见字典说明!"); sd.append("民族信息不符合规范,参见字典说明!");
} }
//合同类型
String contract = dictCacheManager.queryDictTextByKey("contract", userEmployeeVo.getEmpType());
if (StrUtil.isBlank(contract)) {
sd.append("合同类型不符合规范,参见字典说明!");
}
//职务级别 //职务级别
String eJob = dictCacheManager.queryDictTextByKey("e_job", userEmployeeVo.getEmpJob()); String eJob = dictCacheManager.queryDictTextByKey("e_job", userEmployeeVo.getEmpJob());
if (StrUtil.isBlank(eJob)) { if (StrUtil.isBlank(eJob)) {
sd.append("职务级别不符合规范,参见字典说明!"); sd.append("职务级别不符合规范,参见字典说明!");
} }
//工种
String workType = dictCacheManager.queryDictTextByKey("work_type", userEmployeeVo.getMedicalWorkTypeCode());
if (StrUtil.isBlank(workType)) {
sd.append("职业工种符合规范,参见字典说明!");
}
//婚姻状态 //婚姻状态
String mrState = dictCacheManager.queryDictTextByKey("mr_state", userEmployeeVo.getEmpMarriage()); String mrState = dictCacheManager.queryDictTextByKey("mr_state", userEmployeeVo.getEmpMarriage());
if (StrUtil.isBlank(mrState)) { if (StrUtil.isBlank(mrState)) {
@@ -1356,7 +1336,7 @@ public class HealthUserEmployeeExServiceImpl extends ServiceImpl<HealthUserEmplo
info.setHandleMsg(statusIndex + "/" + detailList.size()); info.setHandleMsg(statusIndex + "/" + detailList.size());
importsController.editInfo(info); importsController.editInfo(info);
} }
UserEmployeeVo userEmployeeVo = new UserEmployeeVo(); UserEmployeeImportVo userEmployeeVo = new UserEmployeeImportVo();
ReflectHelper reflectHelperDetail = new ReflectHelper(detail); ReflectHelper reflectHelperDetail = new ReflectHelper(detail);
ReflectHelper reflectHelperExcel = new ReflectHelper(userEmployeeVo); ReflectHelper reflectHelperExcel = new ReflectHelper(userEmployeeVo);
Object[] objects = ReflectHelper.getFiledName(userEmployeeVo); Object[] objects = ReflectHelper.getFiledName(userEmployeeVo);
@@ -1386,14 +1366,20 @@ public class HealthUserEmployeeExServiceImpl extends ServiceImpl<HealthUserEmplo
BeanUtils.copyProperties(userEmployeeVo, userEmployee); BeanUtils.copyProperties(userEmployeeVo, userEmployee);
BeanUtils.copyProperties(userEmployeeVo, userEmployeeEx); BeanUtils.copyProperties(userEmployeeVo, userEmployeeEx);
userEmployee.setExtension(userEmployeeEx); userEmployee.setExtension(userEmployeeEx);
//如果不传登录用户名 ,使用工号作为登录用户名
if(StrUtil.isEmpty(userEmployee.getUsername())){
userEmployee.setUsername(userEmployeeVo.getEmpSysno());
}
//新增随机密码 //新增随机密码
userEmployee.setPassword(generateDefaultPassword(userEmployeeVo.getIdCard(), userEmployeeVo.getUsername())); userEmployee.setPassword(userEmployee.getUsername() + "@W123456");
//新增sex //新增sex
if (StrUtil.isNotBlank(userEmployeeVo.getSex())) { if (StrUtil.isNotBlank(userEmployeeVo.getSex())) {
userEmployee.setSex(Integer.parseInt(userEmployeeVo.getSex())); userEmployee.setSex(Integer.parseInt(userEmployeeVo.getSex()));
} }
//根据身份证号获取年龄 //根据身份证号获取年龄
userEmployee.setAge(IdcardUtil.getAgeByIdCard(userEmployee.getIdCard())); if(StrUtil.isNotEmpty(userEmployee.getIdCard())){
userEmployee.setAge(IdcardUtil.getAgeByIdCard(userEmployee.getIdCard()));
}
//调用新增service //调用新增service
boolean success = saveAndUser(userEmployee); boolean success = saveAndUser(userEmployee);
if (success) { if (success) {
@@ -1410,6 +1396,7 @@ public class HealthUserEmployeeExServiceImpl extends ServiceImpl<HealthUserEmplo
} catch (Exception ex) { } catch (Exception ex) {
info.setImportStatus(ImportConstant.UPDATE_FAILED); info.setImportStatus(ImportConstant.UPDATE_FAILED);
info.setImportMsg("更新失败==" + ex.getMessage()); info.setImportMsg("更新失败==" + ex.getMessage());
ex.printStackTrace();
} finally { } finally {
importsController.editInfo(info); importsController.editInfo(info);
} }
@@ -0,0 +1,46 @@
package org.jeecg.modules.system.vo;
import com.fasterxml.jackson.annotation.JsonFormat;
import lombok.Data;
import org.jeecgframework.poi.excel.annotation.Excel;
import org.springframework.format.annotation.DateTimeFormat;
import java.io.Serializable;
import java.util.Date;
@Data
public class UserEmployeeImportVo implements Serializable {
@Excel(name = "登录账号", width = 18)
private String username;
@Excel(name = "真实姓名", width = 15)
private String realname;
@Excel(name = "性别(必填)", width = 15, dicCode = "sex2")
private String sex;
@Excel(name = "员工编号(必填)", width = 18)
private String empSysno;
@Excel(name = "身份证号", width = 18)
private String idCard;
@Excel(name = "单位(必填)", width = 15)
private String unit;
@Excel(name = "部门(必填)", width = 18)
private String depart;
@Excel(name = "出生日期", width = 15, format = "yyyy-MM-dd")
@JsonFormat(timezone = "GMT+8", pattern = "yyyy-MM-dd")
@DateTimeFormat(pattern = "yyyy-MM-dd")
private Date birthday;
@Excel(name = "手机号", width = 15)
private String phone;
@Excel(name = "邮箱", width = 15)
private String email;
@Excel(name = "职务", width = 18, dicCode = "e_job")
private String empJob;
@Excel(name = "民族", width = 15, dicCode = "nation")
private String empNation;
@Excel(name = "学历", width = 15, dicCode = "emp_education")
private String empDegree;
@Excel(name = "婚姻状况", width = 18, dicCode = "mr_state")
private String empMarriage;
@Excel(name = "籍贯", width = 15)
private String empNativeplace;
}
@@ -30,12 +30,14 @@ public class WxConfig {
configImpl.setSecret(config.getSecret()); configImpl.setSecret(config.getSecret());
configMap.put(miniAppName, configImpl); configMap.put(miniAppName, configImpl);
}); });
String defaultAppName = miniAppProperties.getDefaultAppName();
if (StrUtil.isBlank(defaultAppName) || !configMap.containsKey(defaultAppName)) {
defaultAppName = configMap.keySet().iterator().next();
}
WxMaService wxMaService = new WxMaServiceImpl(); WxMaService wxMaService = new WxMaServiceImpl();
wxMaService.setMultiConfigs(configMap, defaultAppName); if (!configMap.isEmpty()) {
String defaultAppName = miniAppProperties.getDefaultAppName();
if (StrUtil.isBlank(defaultAppName) || !configMap.containsKey(defaultAppName)) {
defaultAppName = configMap.keySet().iterator().next();
}
wxMaService.setMultiConfigs(configMap, defaultAppName);
}
return wxMaService; return wxMaService;
} }
} }
+9 -12
View File
@@ -1,15 +1,12 @@
FROM anapsix/alpine-java:8_server-jre_unlimited FROM anapsix/alpine-java:8_server-jre_unlimited
MAINTAINER xxx@163.com ENV PROFILE_NAME=dev \
SERVER_PORT=7001 \
NACOS_SERVER_ADDR=nacos250:8848 \
ENV PROFILE_NAME dev NACOS_USERNAME=xjuser \
ENV SERVER_PORT 7001 NACOS_PASSWORD=Aa135790!123 \
ENV NACOS_SERVER_ADDR nacos250:8848 NACOS_NAMESPACE=3af98a54-4a44-4576-8e28-bf5781c0dccf \
ENV NACOS_USERNAME xjuser NACOS_GROUP=dev
ENV NACOS_PASSWORD Aa135790!123
ENV NACOS_NAMESPACE 3af98a54-4a44-4576-8e28-bf5781c0dccf
ENV NACOS_GROUP dev
RUN ln -sf /usr/share/zoneinfo/Asia/Shanghai /etc/localtime RUN ln -sf /usr/share/zoneinfo/Asia/Shanghai /etc/localtime
@@ -19,6 +16,6 @@ WORKDIR /jeecg-system-start
EXPOSE 7001 EXPOSE 7001
ADD ./target/jeecg-system-start.jar ./ COPY ./target/jeecg-system-start-xj.jar ./
CMD sleep 1;java -Dfile.encoding=utf-8 -Djava.security.egd=file:/dev/./urandom -jar jeecg-system-start.jar CMD sleep 1;java -Dfile.encoding=utf-8 -Djava.security.egd=file:/dev/./urandom -jar jeecg-system-start-xj.jar
+5
View File
@@ -11,6 +11,10 @@
<artifactId>jeecg-system-start</artifactId> <artifactId>jeecg-system-start</artifactId>
<description>System项目微服务启动</description> <description>System项目微服务启动</description>
<properties>
<maven.install.skip>false</maven.install.skip>
</properties>
<dependencies> <dependencies>
<!-- 引入jeecg-boot-starter-cloud依赖 --> <!-- 引入jeecg-boot-starter-cloud依赖 -->
<dependency> <dependency>
@@ -21,6 +25,7 @@
<dependency> <dependency>
<groupId>org.jeecgframework.boot</groupId> <groupId>org.jeecgframework.boot</groupId>
<artifactId>jeecg-system-biz</artifactId> <artifactId>jeecg-system-biz</artifactId>
<classifier>${biz-classifier}</classifier>
</dependency> </dependency>
</dependencies> </dependencies>
-4
View File
@@ -12,10 +12,6 @@
<artifactId>jeecg-system</artifactId> <artifactId>jeecg-system</artifactId>
<packaging>pom</packaging> <packaging>pom</packaging>
<properties>
<maven.install.skip>true</maven.install.skip>
</properties>
<modules> <modules>
<module>jeecg-system-api</module> <module>jeecg-system-api</module>
<module>jeecg-system-biz</module> <module>jeecg-system-biz</module>
+97
View File
@@ -15,6 +15,7 @@
</parent> </parent>
<properties> <properties>
<biz-classifier>xj</biz-classifier>
<!-- 基础配置 --> <!-- 基础配置 -->
<java.version>1.8</java.version> <java.version>1.8</java.version>
<maven.compiler.source>8</maven.compiler.source> <maven.compiler.source>8</maven.compiler.source>
@@ -257,6 +258,13 @@
<groupId>org.jeecgframework.boot</groupId> <groupId>org.jeecgframework.boot</groupId>
<artifactId>jeecg-system-biz</artifactId> <artifactId>jeecg-system-biz</artifactId>
<version>${renkang.version}</version> <version>${renkang.version}</version>
<classifier>xj</classifier>
</dependency>
<dependency>
<groupId>org.jeecgframework.boot</groupId>
<artifactId>jeecg-system-biz</artifactId>
<version>${renkang.version}</version>
<classifier>obf</classifier>
</dependency> </dependency>
<!-- jeecg tools --> <!-- jeecg tools -->
@@ -270,18 +278,21 @@
<groupId>org.jeecgframework.boot</groupId> <groupId>org.jeecgframework.boot</groupId>
<artifactId>jeecg-boot-base-core</artifactId> <artifactId>jeecg-boot-base-core</artifactId>
<version>${jeecgboot-renkang.version}</version> <version>${jeecgboot-renkang.version}</version>
<classifier>xj</classifier>
</dependency> </dependency>
<!-- system 单体 api --> <!-- system 单体 api -->
<dependency> <dependency>
<groupId>org.jeecgframework.boot</groupId> <groupId>org.jeecgframework.boot</groupId>
<artifactId>jeecg-system-local-api</artifactId> <artifactId>jeecg-system-local-api</artifactId>
<version>${renkang.version}</version> <version>${renkang.version}</version>
<classifier>xj</classifier>
</dependency> </dependency>
<!-- system 微服务 api --> <!-- system 微服务 api -->
<dependency> <dependency>
<groupId>org.jeecgframework.boot</groupId> <groupId>org.jeecgframework.boot</groupId>
<artifactId>jeecg-system-cloud-api</artifactId> <artifactId>jeecg-system-cloud-api</artifactId>
<version>${renkang.version}</version> <version>${renkang.version}</version>
<classifier>xj</classifier>
</dependency> </dependency>
<!--微服务启动依赖--> <!--微服务启动依赖-->
@@ -646,6 +657,13 @@
<build> <build>
<plugins> <plugins>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-jar-plugin</artifactId>
<configuration>
<classifier>xj</classifier> <!-- 设置classifier -->
</configuration>
</plugin>
<!-- 指定JDK编译版本 --> <!-- 指定JDK编译版本 -->
<plugin> <plugin>
<groupId>org.apache.maven.plugins</groupId> <groupId>org.apache.maven.plugins</groupId>
@@ -728,12 +746,90 @@
<configuration> <configuration>
<!--设置为true,以便把本地的system的jar也包括进来--> <!--设置为true,以便把本地的system的jar也包括进来-->
<includeSystemScope>true</includeSystemScope> <includeSystemScope>true</includeSystemScope>
<!-- 可选:为可执行包设置新 classifier -->
<classifier>xj</classifier>
</configuration> </configuration>
</plugin> </plugin>
</plugins> </plugins>
</pluginManagement> </pluginManagement>
</build> </build>
</profile> </profile>
<profile>
<id>biz-obf</id>
<properties>
<biz-classifier>obf</biz-classifier>
</properties>
<build>
<pluginManagement>
<plugins>
<plugin>
<groupId>com.github.wvengen</groupId>
<artifactId>proguard-maven-plugin</artifactId>
<version>2.7.0</version>
<executions>
<execution>
<phase>package</phase> <!-- 在打包阶段执行混淆 -->
<goals>
<goal>proguard</goal>
</goals>
</execution>
</executions>
<configuration>
<putLibraryJarsInTempDir>true</putLibraryJarsInTempDir>
<injar>${project.build.finalName}-xj.jar</injar>
<outjar>${project.build.finalName}-obf.jar</outjar> <!-- 输出混淆后JAR -->
<obfuscate>true</obfuscate>
<libs>
<lib>${java.home}/lib/rt.jar</lib> <!-- JDK 核心库 -->
</libs>
<proguardInclude>proguard.cfg</proguardInclude> <!-- 模块独立规则 -->
</configuration>
</plugin>
<plugin>
<groupId>org.codehaus.mojo</groupId>
<artifactId>build-helper-maven-plugin</artifactId>
<version>3.6.1</version>
<executions>
<execution>
<id>attach-obf-jar</id>
<phase>package</phase>
<goals>
<goal>attach-artifact</goal>
</goals>
<configuration>
<artifacts>
<artifact>
<file>${project.build.directory}/${project.build.finalName}-obf.jar
</file>
<type>jar</type>
<classifier>obf</classifier> <!-- 关键:标识混淆JAR -->
</artifact>
</artifacts>
</configuration>
</execution>
</executions>
</plugin>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-dependency-plugin</artifactId>
<executions>
<execution>
<id>copy-dependencies</id>
<phase>prepare-package</phase>
<goals>
<goal>copy-dependencies</goal>
</goals>
<configuration>
<outputDirectory>${project.build.directory}/dependency</outputDirectory>
<includeScope>provided</includeScope>
</configuration>
</execution>
</executions>
</plugin>
</plugins>
</pluginManagement>
</build>
</profile>
<profile> <profile>
<id>local</id> <id>local</id>
<activation> <activation>
@@ -810,6 +906,7 @@
<artifactId>maven-jar-plugin</artifactId> <artifactId>maven-jar-plugin</artifactId>
<version>3.3.0</version> <version>3.3.0</version>
<configuration> <configuration>
<classifier>xj</classifier>
<archive> <archive>
<manifest> <manifest>
<mainClass>${start-class}</mainClass> <mainClass>${start-class}</mainClass>