diff --git a/backend/app/service/app_install.go b/backend/app/service/app_install.go index 84b05850e..a15b69ab2 100644 --- a/backend/app/service/app_install.go +++ b/backend/app/service/app_install.go @@ -164,25 +164,25 @@ func (a AppInstallService) Operate(req request.AppInstalledOperate) error { if err != nil { return handleErr(install, err, out) } - return nil + return syncById(install.ID) case constant.Start: out, err := compose.Start(dockerComposePath) if err != nil { return handleErr(install, err, out) } - install.Status = constant.Running + return syncById(install.ID) case constant.Stop: out, err := compose.Stop(dockerComposePath) if err != nil { return handleErr(install, err, out) } - install.Status = constant.Stopped + return syncById(install.ID) case constant.Restart: out, err := compose.Restart(dockerComposePath) if err != nil { return handleErr(install, err, out) } - install.Status = constant.Running + return syncById(install.ID) case constant.Delete: tx, ctx := getTxAndContext() if err := deleteAppInstall(ctx, install, req.DeleteBackup, req.ForceDelete, req.DeleteDB); err != nil && !req.ForceDelete { @@ -198,8 +198,6 @@ func (a AppInstallService) Operate(req request.AppInstalledOperate) error { default: return errors.New("operate not support") } - - return appInstallRepo.Save(&install) } func (a AppInstallService) SyncAll() error { diff --git a/backend/app/service/app_utils.go b/backend/app/service/app_utils.go index 0b8ae6742..34c35c440 100644 --- a/backend/app/service/app_utils.go +++ b/backend/app/service/app_utils.go @@ -401,6 +401,7 @@ func handleErr(install model.AppInstall, err error, out string) error { if out != "" { install.Message = out reErr = errors.New(out) + install.Status = constant.Error } _ = appInstallRepo.Save(&install) return reErr diff --git a/frontend/src/views/app-store/installed/index.vue b/frontend/src/views/app-store/installed/index.vue index ae96eb6f2..aeb623180 100644 --- a/frontend/src/views/app-store/installed/index.vue +++ b/frontend/src/views/app-store/installed/index.vue @@ -296,6 +296,9 @@ const operate = async () => { MsgSuccess(i18n.global.t('commons.msg.operationSuccess')); search(); }) + .catch(() => { + search(); + }) .finally(() => { loading.value = false; }); @@ -398,7 +401,7 @@ onMounted(() => { search(); timer = setInterval(() => { search(); - }, 1000 * 8); + }, 10000 * 6); }); onUnmounted(() => { diff --git a/frontend/src/views/host/file-management/index.vue b/frontend/src/views/host/file-management/index.vue index 9584ecafc..52ce62efe 100644 --- a/frontend/src/views/host/file-management/index.vue +++ b/frontend/src/views/host/file-management/index.vue @@ -43,20 +43,22 @@ - {{ $t('file.upload') }} - {{ $t('file.remoteFile') }} - - {{ $t('file.copy') }} - - - {{ $t('file.move') }} - - - {{ $t('file.compress') }} - - - {{ $t('file.download') }} - + + {{ $t('file.upload') }} + {{ $t('file.remoteFile') }} + + {{ $t('file.copy') }} + + + {{ $t('file.move') }} + + + {{ $t('file.compress') }} + + + {{ $t('file.download') }} + +