diff --git a/frontend/providers/template/src/pages/api/resource/delJob.ts b/frontend/providers/template/src/pages/api/resource/delJob.ts index 8429d117824..20b1584054d 100644 --- a/frontend/providers/template/src/pages/api/resource/delJob.ts +++ b/frontend/providers/template/src/pages/api/resource/delJob.ts @@ -7,6 +7,7 @@ import { jsonRes } from '@/services/backend/response'; export default async function handler(req: NextApiRequest, res: NextApiResponse) { try { const { instanceName } = req.query as { instanceName: string }; + if (!instanceName) { throw new Error('Job name is empty'); } @@ -15,10 +16,22 @@ export default async function handler(req: NextApiRequest, res: NextApiResponse< kubeconfig: await authSession(req.headers) }); - // 删除 Job - const result = await k8sBatch.deleteNamespacedJob(instanceName, namespace); + const deleteOptions = { + propagationPolicy: 'Foreground' + }; + + const result = await k8sBatch.deleteNamespacedJob( + instanceName, + namespace, + undefined, + undefined, + undefined, + undefined, + deleteOptions.propagationPolicy, + deleteOptions + ); - jsonRes(res, { data: result }); + jsonRes(res, { data: 'success' }); } catch (err: any) { jsonRes(res, { code: 500, diff --git a/frontend/providers/workorder/public/locales/en/common.json b/frontend/providers/workorder/public/locales/en/common.json index 8b064dd7c91..543ecf3656c 100644 --- a/frontend/providers/workorder/public/locales/en/common.json +++ b/frontend/providers/workorder/public/locales/en/common.json @@ -63,5 +63,6 @@ "userId": "userId", "other": "other", "fastgpt": "FastGPT", - "account_center": "Account Center" -} \ No newline at end of file + "account_center": "Account Center", + "input_placeholder": "Enter your message here, you can paste the picture and upload it directly" +} diff --git a/frontend/providers/workorder/public/locales/zh/common.json b/frontend/providers/workorder/public/locales/zh/common.json index bc20ce70b92..fa4ffd93fd4 100644 --- a/frontend/providers/workorder/public/locales/zh/common.json +++ b/frontend/providers/workorder/public/locales/zh/common.json @@ -63,5 +63,6 @@ "userId": "用户ID", "other": "其他", "fastgpt": "FastGPT", - "account_center": "账号中心" -} \ No newline at end of file + "account_center": "账号中心", + "input_placeholder": "在此输入消息,可粘贴图片直接上传" +} diff --git a/frontend/providers/workorder/src/pages/workorder/detail/components/AppBaseInfo.tsx b/frontend/providers/workorder/src/pages/workorder/detail/components/AppBaseInfo.tsx index 9d11d1acb96..465f58060e3 100644 --- a/frontend/providers/workorder/src/pages/workorder/detail/components/AppBaseInfo.tsx +++ b/frontend/providers/workorder/src/pages/workorder/detail/components/AppBaseInfo.tsx @@ -126,8 +126,8 @@ const AppBaseInfo = ({ app }: { app: WorkOrderDB }) => { {t('Description')} - - {app?.description} + + {app?.description} diff --git a/frontend/providers/workorder/src/pages/workorder/detail/components/AppMainInfo.tsx b/frontend/providers/workorder/src/pages/workorder/detail/components/AppMainInfo.tsx index 5516700fa9a..51a6f45698f 100644 --- a/frontend/providers/workorder/src/pages/workorder/detail/components/AppMainInfo.tsx +++ b/frontend/providers/workorder/src/pages/workorder/detail/components/AppMainInfo.tsx @@ -23,7 +23,7 @@ import { import { fetchEventSource } from '@fortaine/fetch-event-source'; import { throttle } from 'lodash'; import { useTranslation } from 'next-i18next'; -import { useEffect, useLayoutEffect, useRef, useState } from 'react'; +import { useCallback, useEffect, useLayoutEffect, useRef, useState } from 'react'; const statusAnimation = keyframes` 0% { @@ -331,6 +331,25 @@ const AppMainInfo = ({ } }, [app?.dialogs, isManuallyHandled]); + const handlePaste = useCallback(async (e: React.ClipboardEvent) => { + const items = e.clipboardData.items; + const files: File[] = []; + + for (let i = 0; i < items.length; i++) { + if (items[i].type.indexOf('image') !== -1) { + const blob = items[i].getAsFile(); + if (blob) { + files.push(blob); + } + } + } + + if (files.length > 0) { + e.preventDefault(); + await uploadFiles(files); + } + }, []); + return ( <> @@ -449,6 +468,7 @@ const AppMainInfo = ({ } border={'1px solid #EAEBF0'} flexDirection={'column'} + onPaste={handlePaste} > {uploadedFiles && ( @@ -517,7 +537,7 @@ const AppMainInfo = ({