diff --git a/openGauss-datakit/visualtool-api/src/main/java/org/opengauss/admin/web/controller/SystemPluginController.java b/openGauss-datakit/visualtool-api/src/main/java/org/opengauss/admin/web/controller/SystemPluginController.java index c28203ee75957667b1753181d719976b2b9bace5..972d5a1caf841c3f476c2863697f482a5f1d9084 100644 --- a/openGauss-datakit/visualtool-api/src/main/java/org/opengauss/admin/web/controller/SystemPluginController.java +++ b/openGauss-datakit/visualtool-api/src/main/java/org/opengauss/admin/web/controller/SystemPluginController.java @@ -301,6 +301,7 @@ public class SystemPluginController extends BaseController { .pluginProvider(pluginInfo.getPluginDescriptor().getProvider()).isNeedConfigured(isNeedConfigured) .pluginType(pluginType).pluginVersion(pluginInfo.getPluginDescriptor().getPluginVersion()) .theme(theme).build(); + setPluginStatus(plugin, pluginInfo); sysPluginService.save(plugin); } else { // update plugin version,desc,provider @@ -308,6 +309,7 @@ public class SystemPluginController extends BaseController { plugin.setPluginDesc(pluginInfo.getPluginDescriptor().getDescription()); plugin.setPluginDescEn(descriptionEn); plugin.setPluginProvider(pluginInfo.getPluginDescriptor().getProvider()); + setPluginStatus(plugin, pluginInfo); LambdaQueryWrapper queryWrapper = new LambdaQueryWrapper<>(); queryWrapper.eq(SysPlugin::getPluginId, pluginInfo.getPluginId()); sysPluginService.update(plugin, queryWrapper); @@ -335,6 +337,14 @@ public class SystemPluginController extends BaseController { return result; } + private void setPluginStatus(SysPlugin plugin, PluginInfo pluginInfo) { + if (PluginState.STARTED.equals(pluginInfo.getPluginState())) { + plugin.setPluginStatus(SysPluginStatus.START.getCode()); + } else { + plugin.setPluginStatus(SysPluginStatus.DISABLE.getCode()); + } + } + /** * uninstall plugin If there are submenus added by other plugins under your own menu, you cannot uninstall them *