diff --git a/packages/ui/certd-client/src/views/sys/plugin/crud.tsx b/packages/ui/certd-client/src/views/sys/plugin/crud.tsx index 1c8eac4d..1565ab16 100644 --- a/packages/ui/certd-client/src/views/sys/plugin/crud.tsx +++ b/packages/ui/certd-client/src/views/sys/plugin/crud.tsx @@ -91,6 +91,7 @@ export default function ({ crudExpose, context }: CreateCrudOptionsProps): Creat }, afterSubmit() { notification.success({ message: "操作成功" }); + crudExpose.doRefresh(); }, async doSubmit({ form }: any) { return await api.ImportPlugin({ diff --git a/packages/ui/certd-server/src/modules/plugin/service/plugin-service.ts b/packages/ui/certd-server/src/modules/plugin/service/plugin-service.ts index 2793ebfc..c4908734 100644 --- a/packages/ui/certd-server/src/modules/plugin/service/plugin-service.ts +++ b/packages/ui/certd-server/src/modules/plugin/service/plugin-service.ts @@ -438,25 +438,25 @@ export class PluginService extends BaseService { ...loaded, metadata: yaml.dump(metadata), extra: yaml.dump(extra), - content: req.content, + content: loaded.content, disabled: false }; if (!pluginEntity.pluginType) { throw new Error(`插件类型不能为空`); } - if (old) { - if (!req.override) { - throw new Error(`插件${loaded.author}/${loaded.name}已存在`); - } - //update - pluginEntity.id = old.id; - await this.update(pluginEntity); - } else { + if (!old) { //add const {id} = await this.add(pluginEntity); pluginEntity.id = id; + } else{ + if (!req.override) { + throw new Error(`插件${loaded.author}/${loaded.name}已存在`); + } + pluginEntity.id = old.id; } + //update + await this.update(pluginEntity); return { id: pluginEntity.id };