diff --git a/neutrino-proxy-server/src/main/java/fun/asgc/neutrino/proxy/server/dal/LicenseMapper.java b/neutrino-proxy-server/src/main/java/fun/asgc/neutrino/proxy/server/dal/LicenseMapper.java index f24dc5b8..d2547af7 100644 --- a/neutrino-proxy-server/src/main/java/fun/asgc/neutrino/proxy/server/dal/LicenseMapper.java +++ b/neutrino-proxy-server/src/main/java/fun/asgc/neutrino/proxy/server/dal/LicenseMapper.java @@ -74,6 +74,9 @@ public interface LicenseMapper extends SqlMapper { @Update("update `license` set is_online = :isOnline, update_time = :updateTime where id = :id") void updateOnlineStatus(@Param("id") Integer id, @Param("isOnline") Integer isOnline, @Param("updateTime") Date updateTime); + @Update("update `license` set is_online = :isOnline, update_time = :updateTime") + void updateOnlineStatus(@Param("isOnline") Integer isOnline, @Param("updateTime") Date updateTime); + @Update("update `license` set key = :key,update_time = :updateTime where id = :id") void reset(@Param("id") Integer id, @Param("key") String key, @Param("updateTime") Date updateTime); diff --git a/neutrino-proxy-server/src/main/java/fun/asgc/neutrino/proxy/server/dal/PortMappingMapper.java b/neutrino-proxy-server/src/main/java/fun/asgc/neutrino/proxy/server/dal/PortMappingMapper.java index 97245a7d..da2714ad 100644 --- a/neutrino-proxy-server/src/main/java/fun/asgc/neutrino/proxy/server/dal/PortMappingMapper.java +++ b/neutrino-proxy-server/src/main/java/fun/asgc/neutrino/proxy/server/dal/PortMappingMapper.java @@ -79,4 +79,7 @@ public interface PortMappingMapper extends SqlMapper { @Update("update `port_mapping` set is_online = :isOnline,update_time = :updateTime where license_id = :licenseId") void updateOnlineStatus(@Param("licenseId") Integer licenseId, @Param("isOnline") Integer isOnline, @Param("updateTime") Date updateTime); + + @Update("update `port_mapping` set is_online = :isOnline,update_time = :updateTime") + void updateOnlineStatus(@Param("isOnline") Integer isOnline, @Param("updateTime") Date updateTime); } diff --git a/neutrino-proxy-server/src/main/java/fun/asgc/neutrino/proxy/server/service/LicenseService.java b/neutrino-proxy-server/src/main/java/fun/asgc/neutrino/proxy/server/service/LicenseService.java index 4da7fe49..20eaaee3 100644 --- a/neutrino-proxy-server/src/main/java/fun/asgc/neutrino/proxy/server/service/LicenseService.java +++ b/neutrino-proxy-server/src/main/java/fun/asgc/neutrino/proxy/server/service/LicenseService.java @@ -22,9 +22,7 @@ package fun.asgc.neutrino.proxy.server.service; import com.google.common.collect.Sets; -import fun.asgc.neutrino.core.annotation.Autowired; -import fun.asgc.neutrino.core.annotation.Component; -import fun.asgc.neutrino.core.annotation.NonIntercept; +import fun.asgc.neutrino.core.annotation.*; import fun.asgc.neutrino.core.db.page.Page; import fun.asgc.neutrino.core.db.page.PageQuery; import fun.asgc.neutrino.core.util.CollectionUtil; @@ -202,4 +200,13 @@ public class LicenseService { } return licenseKey.substring(0, 10) + "****" + licenseKey.substring(licenseKey.length() - 10); } + + /** + * 服务端项目停止、启动时,更新在线状态为离线 + */ + @Init + @Destroy + public void destroy() { + licenseMapper.updateOnlineStatus(OnlineStatusEnum.OFFLINE.getStatus(), new Date()); + } } diff --git a/neutrino-proxy-server/src/main/java/fun/asgc/neutrino/proxy/server/service/PortMappingService.java b/neutrino-proxy-server/src/main/java/fun/asgc/neutrino/proxy/server/service/PortMappingService.java index fea4edce..15adbeb1 100644 --- a/neutrino-proxy-server/src/main/java/fun/asgc/neutrino/proxy/server/service/PortMappingService.java +++ b/neutrino-proxy-server/src/main/java/fun/asgc/neutrino/proxy/server/service/PortMappingService.java @@ -22,9 +22,7 @@ package fun.asgc.neutrino.proxy.server.service; import com.google.common.collect.Sets; -import fun.asgc.neutrino.core.annotation.Autowired; -import fun.asgc.neutrino.core.annotation.Component; -import fun.asgc.neutrino.core.annotation.NonIntercept; +import fun.asgc.neutrino.core.annotation.*; import fun.asgc.neutrino.core.db.page.Page; import fun.asgc.neutrino.core.db.page.PageQuery; import fun.asgc.neutrino.core.util.CollectionUtil; @@ -220,4 +218,13 @@ public class PortMappingService { return portMappingMapper.findEnableListByLicenseId(licenseId); } + /** + * 服务端项目停止、启动时,更新在线状态为离线 + */ + @Init + @Destroy + public void destroy() { + portMappingMapper.updateOnlineStatus(OnlineStatusEnum.OFFLINE.getStatus(), new Date()); + } + }