diff --git a/src/pages/app/package/index.tsx b/src/pages/app/package/index.tsx index fbf3e16..4d2c6fe 100644 --- a/src/pages/app/package/index.tsx +++ b/src/pages/app/package/index.tsx @@ -3,7 +3,7 @@ import { Button, Form, Popconfirm, Divider, Space, Tooltip, Badge } from 'antd' import { useAtom, useAtomValue } from 'jotai' import { deleteAppPackageAtom, - saveOrUpdateAppPackageAtom, appPackageAtom, appPackagesAtom, appPackageSearchAtom, + saveOrUpdateAppPackageAtom, appPackageAtom, appPackagesAtom, appPackageSearchAtom, packageAppAtom, } from '@/store/app/package' import { useEffect, useMemo, useState } from 'react' import Action from '@/components/action/Action.tsx' @@ -32,6 +32,7 @@ const AppPackage = () => { const [ currentAppPackage, setAppPackage ] = useAtom(appPackageAtom) const { data, isFetching, isLoading, refetch } = useAtomValue(appPackagesAtom) const { mutate: deleteAppPackage, isPending: isDeleting } = useAtomValue(deleteAppPackageAtom) + const { mutate: packageApp, isPending: packageing } = useAtomValue(packageAppAtom) const [ open, setOpen ] = useState(false) const [ openFilter, setFilterOpen ] = useState(false) @@ -226,17 +227,27 @@ const AppPackage = () => { valueType: 'option', fixed: 'right', render: (_, record) => [ + { + packageApp(record) + }} + >{t('actions.package', '应用打包')}, + , { form.setFieldsValue(record) setOpen(true) }}>{t('actions.edit')}, + , { - deleteAppPackage(record.id ) + deleteAppPackage(record.id) }} title={t('message.deleteConfirm')}> @@ -312,7 +323,7 @@ const AppPackage = () => { onRow={(record) => { return { className: cx({ - 'ant-table-row-selected': currentAppPackage?.id === record.id + // 'ant-table-row-selected': currentAppPackage?.id === record.id }), onClick: () => { setAppPackage(record) diff --git a/src/store/app/package.ts b/src/store/app/package.ts index 0cb28c3..7e30a94 100644 --- a/src/store/app/package.ts +++ b/src/store/app/package.ts @@ -16,7 +16,7 @@ export const appPackageIdAtom = atom(0) export const appPackageIdsAtom = atom([]) -export const appPackageAtom = atom(undefined as unknown as APP.IAppPackage ) +export const appPackageAtom = atom(undefined as unknown as APP.IAppPackage) export const appPackageSearchAtom = atom({ key: '', @@ -88,3 +88,19 @@ export const deleteAppPackageAtom = atomWithMutation((get) => { } } }) + +//package 打包 +export const packageAppAtom = atomWithMutation((get) => { + return { + mutationKey: [ 'packageAppPackage' ], + mutationFn: async (data: APP.IAppPackage) => { + return await aPPServ.package({ id: data.id }) + }, + onSuccess: (res) => { + message.success('message.packageSuccess') + //更新列表 + get(queryClientAtom).invalidateQueries({ queryKey: [ 'appPackages', get(appPackageSearchAtom) ] }) + return res + } + } +})