提交 449ef2db authored 作者: 王鹏飞's avatar 王鹏飞

chore: update

上级 d2e4e5c7
...@@ -5,11 +5,15 @@ import { useCreateChart } from '@/hooks/useChartQuery' ...@@ -5,11 +5,15 @@ import { useCreateChart } from '@/hooks/useChartQuery'
import { useAI } from '@/hooks/useAI' import { useAI } from '@/hooks/useAI'
import { Column } from '@ant-design/plots' import { Column } from '@ant-design/plots'
export default function ButtonModal({ title = '新建柱状图', type = '1' }) { interface Props {
type: string
setOpen: (open: boolean) => void
}
const ModalContent = ({ setOpen, type }: Props) => {
const { data } = useDataQuery() const { data } = useDataQuery()
const { fieldOptions } = useDataFieldQuery() const { fieldOptions } = useDataFieldQuery()
const [open, setOpen] = useState(false)
const [form] = Form.useForm() const [form] = Form.useForm()
const [results, setResults] = useState({}) const [results, setResults] = useState({})
...@@ -63,30 +67,8 @@ export default function ButtonModal({ title = '新建柱状图', type = '1' }) { ...@@ -63,30 +67,8 @@ export default function ButtonModal({ title = '新建柱状图', type = '1' }) {
}) })
}) })
} }
return ( return (
<> <>
<Button type="primary" onClick={() => setOpen(true)}>
{title}
</Button>
<Modal
title={title}
open={open}
footer={
<Flex justify="center" gap={20}>
<Button type="primary" onClick={handlePreview}>
预览组件效果
</Button>
<Button type="primary">AI对话调整</Button>
<Button type="primary" autoInsertSpace onClick={handleSubmit}>
保存
</Button>
</Flex>
}
destroyOnClose
width={1000}
onCancel={() => setOpen(false)}>
<div style={{ minHeight: 300, padding: '20px 0' }}>
<Form <Form
form={form} form={form}
preserve={false} preserve={false}
...@@ -190,7 +172,29 @@ export default function ButtonModal({ title = '新建柱状图', type = '1' }) { ...@@ -190,7 +172,29 @@ export default function ButtonModal({ title = '新建柱状图', type = '1' }) {
</Divider> </Divider>
{!!Object.keys(results).length && <Column {...config} />} {!!Object.keys(results).length && <Column {...config} />}
</Form> </Form>
</div>
<Flex justify="center" gap={20}>
<Button type="primary" onClick={handlePreview}>
预览组件效果
</Button>
<Button type="primary">AI对话调整</Button>
<Button type="primary" autoInsertSpace onClick={handleSubmit}>
保存
</Button>
</Flex>
</>
)
}
export default function ButtonModal({ title = '新建柱状图', type = '1' }) {
const [open, setOpen] = useState(false)
return (
<>
<Button type="primary" onClick={() => setOpen(true)}>
{title}
</Button>
<Modal title={title} open={open} footer={null} destroyOnClose width={1000} onCancel={() => setOpen(false)}>
<ModalContent type={type} setOpen={(open) => setOpen(open)} />
</Modal> </Modal>
</> </>
) )
......
import { useEffect, useState } from 'react' import { useEffect, useState } from 'react'
import { useQuery } from '@tanstack/react-query' import { useQuery, useQueryClient } from '@tanstack/react-query'
import { getUser, getMapList, getMyList, getMyField, getProcessProgress } from '@/api/base' import { getUser, getMapList, getMyList, getMyField, getProcessProgress } from '@/api/base'
import { useUserStore } from '@/stores/user' import { useUserStore } from '@/stores/user'
import { useMapStore } from '@/stores/map' import { useMapStore } from '@/stores/map'
...@@ -111,7 +111,9 @@ export function useDataFieldQuery() { ...@@ -111,7 +111,9 @@ export function useDataFieldQuery() {
// 进度查询 // 进度查询
export function useProcessProgressQuery(params: { function_name: string }) { export function useProcessProgressQuery(params: { function_name: string }) {
const queryClient = useQueryClient()
const [enabled, setEnabled] = useState(false) const [enabled, setEnabled] = useState(false)
const query = useQuery({ const query = useQuery({
queryKey: ['processProgress', params], queryKey: ['processProgress', params],
queryFn: () => { queryFn: () => {
...@@ -119,11 +121,18 @@ export function useProcessProgressQuery(params: { function_name: string }) { ...@@ -119,11 +121,18 @@ export function useProcessProgressQuery(params: { function_name: string }) {
}, },
select: (res) => res.data, select: (res) => res.data,
enabled, enabled,
refetchInterval: enabled ? 10000 : false, refetchInterval: enabled ? 1000 : false,
staleTime: 0, staleTime: 0,
gcTime: 0, gcTime: 0,
placeholderData: (): any => {
return { data: { progress: -1, message: {} } }
},
}) })
const remove = () => {
queryClient.removeQueries({ queryKey: ['processProgress', params] })
}
// 开始轮询的方法 // 开始轮询的方法
const start = () => { const start = () => {
setEnabled(true) setEnabled(true)
...@@ -133,7 +142,6 @@ export function useProcessProgressQuery(params: { function_name: string }) { ...@@ -133,7 +142,6 @@ export function useProcessProgressQuery(params: { function_name: string }) {
const stop = () => { const stop = () => {
setEnabled(false) setEnabled(false)
} }
console.log(query.data)
// 组件卸载时清理 // 组件卸载时清理
useEffect(() => { useEffect(() => {
if (query.data?.result === 'SUCCESS' || query.data?.result === 'FAIL' || query.data?.result === null) { if (query.data?.result === 'SUCCESS' || query.data?.result === 'FAIL' || query.data?.result === null) {
...@@ -142,7 +150,7 @@ export function useProcessProgressQuery(params: { function_name: string }) { ...@@ -142,7 +150,7 @@ export function useProcessProgressQuery(params: { function_name: string }) {
return () => { return () => {
stop() stop()
} }
}, [query.data]) }, [query.data, enabled])
return { ...query, start, stop } return { ...query, start, stop, remove }
} }
...@@ -65,14 +65,12 @@ export default function ButtonModal() { ...@@ -65,14 +65,12 @@ export default function ButtonModal() {
const rule = Form.useWatch('rule', form) const rule = Form.useWatch('rule', form)
const rules = Form.useWatch('rules', form) || {} const rules = Form.useWatch('rules', form) || {}
const { mutate, isPending, progress, message } = useProcessData() const { mutate, isPending, progress, message, remove } = useProcessData()
// 开始处理 // 开始处理
const handleStart = () => { const handleStart = () => {
form.validateFields().then((values) => { form.validateFields().then((values) => {
const params = { ...values, fields: values.fields.join(','), rules: JSON.stringify(values.rules) } const params = { ...values, fields: values.fields.join(','), rules: JSON.stringify(values.rules) }
mutate(params, { mutate(params)
onSuccess: handleClose,
})
}) })
} }
...@@ -80,7 +78,7 @@ export default function ButtonModal() { ...@@ -80,7 +78,7 @@ export default function ButtonModal() {
const handleClose = () => { const handleClose = () => {
setOpen(false) setOpen(false)
setCurrent(0) setCurrent(0)
form.resetFields() remove()
} }
const steps = [ const steps = [
......
...@@ -7,7 +7,7 @@ import { useProcessProgressQuery } from '@/hooks/useQuery' ...@@ -7,7 +7,7 @@ import { useProcessProgressQuery } from '@/hooks/useQuery'
// 处理数据 // 处理数据
export function useProcessData() { export function useProcessData() {
const queryClient = useQueryClient() const queryClient = useQueryClient()
const { data, start } = useProcessProgressQuery({ function_name: 'missing' }) const { data, start, remove } = useProcessProgressQuery({ function_name: 'missing' })
const query = useMutation({ const query = useMutation({
mutationFn: (data: ProcessDataParams) => { mutationFn: (data: ProcessDataParams) => {
...@@ -19,5 +19,6 @@ export function useProcessData() { ...@@ -19,5 +19,6 @@ export function useProcessData() {
queryClient.invalidateQueries({ queryKey: ['data'] }) queryClient.invalidateQueries({ queryKey: ['data'] })
}, },
}) })
return { ...query, progress: data?.progress ?? -1, message: data?.message ?? {} }
return { ...query, progress: data.progress, message: data.message, remove }
} }
...@@ -220,7 +220,6 @@ export default function ButtonModal() { ...@@ -220,7 +220,6 @@ export default function ButtonModal() {
setCurrent(0) setCurrent(0)
setStep(-1) setStep(-1)
setConcatenatedFields([]) setConcatenatedFields([])
form.resetFields()
} }
return ( return (
......
...@@ -31,7 +31,7 @@ export default function ButtonModal() { ...@@ -31,7 +31,7 @@ export default function ButtonModal() {
setCurrent(current + 1) setCurrent(current + 1)
} }
const { mutate, isPending, progress, message } = useProcessData() const { mutate, isPending, progress, message, remove } = useProcessData()
// 开始处理 // 开始处理
const handleStart = () => { const handleStart = () => {
...@@ -46,8 +46,8 @@ export default function ButtonModal() { ...@@ -46,8 +46,8 @@ export default function ButtonModal() {
const handleClose = () => { const handleClose = () => {
setOpen(false) setOpen(false)
setCurrent(0) setCurrent(0)
remove()
} }
const [groupName, setGroupName] = useState('') const [groupName, setGroupName] = useState('')
// 步骤定义 // 步骤定义
......
...@@ -7,7 +7,7 @@ import { useProcessProgressQuery } from '@/hooks/useQuery' ...@@ -7,7 +7,7 @@ import { useProcessProgressQuery } from '@/hooks/useQuery'
// 处理数据 // 处理数据
export function useProcessData() { export function useProcessData() {
const queryClient = useQueryClient() const queryClient = useQueryClient()
const { data, start } = useProcessProgressQuery({ function_name: 'mapping' }) const { data, start, remove } = useProcessProgressQuery({ function_name: 'mapping' })
const query = useMutation({ const query = useMutation({
mutationFn: (data: ProcessDataParams) => { mutationFn: (data: ProcessDataParams) => {
...@@ -19,5 +19,5 @@ export function useProcessData() { ...@@ -19,5 +19,5 @@ export function useProcessData() {
queryClient.invalidateQueries({ queryKey: ['data'] }) queryClient.invalidateQueries({ queryKey: ['data'] })
}, },
}) })
return { ...query, progress: data?.progress ?? -1, message: data?.message ?? {} } return { ...query, progress: data.progress, message: data.message, remove }
} }
...@@ -103,7 +103,7 @@ export default function ButtonModal() { ...@@ -103,7 +103,7 @@ export default function ButtonModal() {
setCurrent(current + 1) setCurrent(current + 1)
} }
const { mutate, isPending, progress, message } = useProcessData() const { mutate, isPending, progress, message, remove } = useProcessData()
// 开始处理 // 开始处理
const handleStart = () => { const handleStart = () => {
...@@ -126,8 +126,8 @@ export default function ButtonModal() { ...@@ -126,8 +126,8 @@ export default function ButtonModal() {
const handleClose = () => { const handleClose = () => {
setOpen(false) setOpen(false)
setCurrent(0) setCurrent(0)
remove()
} }
const handleFunctionChange = (value: string) => { const handleFunctionChange = (value: string) => {
form.setFieldsValue({ content: `${value}()` }) form.setFieldsValue({ content: `${value}()` })
} }
......
...@@ -7,7 +7,7 @@ import { useProcessProgressQuery } from '@/hooks/useQuery' ...@@ -7,7 +7,7 @@ import { useProcessProgressQuery } from '@/hooks/useQuery'
// 处理数据 // 处理数据
export function useProcessData() { export function useProcessData() {
const queryClient = useQueryClient() const queryClient = useQueryClient()
const { data, start } = useProcessProgressQuery({ function_name: 'date' }) const { data, start, remove } = useProcessProgressQuery({ function_name: 'date' })
const query = useMutation({ const query = useMutation({
mutationFn: (data: ProcessDataParams) => { mutationFn: (data: ProcessDataParams) => {
...@@ -19,5 +19,5 @@ export function useProcessData() { ...@@ -19,5 +19,5 @@ export function useProcessData() {
queryClient.invalidateQueries({ queryKey: ['data'] }) queryClient.invalidateQueries({ queryKey: ['data'] })
}, },
}) })
return { ...query, progress: data?.progress ?? -1, message: data?.message ?? {} } return { ...query, progress: data.progress, message: data.message, remove }
} }
...@@ -27,7 +27,7 @@ export default function ButtonModal() { ...@@ -27,7 +27,7 @@ export default function ButtonModal() {
setCurrent(current + 1) setCurrent(current + 1)
} }
const { mutate, isPending, progress, message } = useProcessData() const { mutate, isPending, progress, message, remove } = useProcessData()
// 开始处理 // 开始处理
const handleStart = () => { const handleStart = () => {
...@@ -42,8 +42,8 @@ export default function ButtonModal() { ...@@ -42,8 +42,8 @@ export default function ButtonModal() {
const handleClose = () => { const handleClose = () => {
setOpen(false) setOpen(false)
setCurrent(0) setCurrent(0)
remove()
} }
// 步骤定义 // 步骤定义
const steps = [ const steps = [
{ {
......
...@@ -7,7 +7,7 @@ import { useProcessProgressQuery } from '@/hooks/useQuery' ...@@ -7,7 +7,7 @@ import { useProcessProgressQuery } from '@/hooks/useQuery'
// 处理数据 // 处理数据
export function useProcessData() { export function useProcessData() {
const queryClient = useQueryClient() const queryClient = useQueryClient()
const { data, start } = useProcessProgressQuery({ function_name: 'anonymization' }) const { data, start, remove } = useProcessProgressQuery({ function_name: 'anonymization' })
const query = useMutation({ const query = useMutation({
mutationFn: (data: ProcessDataParams) => { mutationFn: (data: ProcessDataParams) => {
...@@ -19,5 +19,5 @@ export function useProcessData() { ...@@ -19,5 +19,5 @@ export function useProcessData() {
queryClient.invalidateQueries({ queryKey: ['data'] }) queryClient.invalidateQueries({ queryKey: ['data'] })
}, },
}) })
return { ...query, progress: data?.progress ?? -1, message: data?.message ?? {} } return { ...query, progress: data.progress, message: data.message, remove }
} }
...@@ -44,7 +44,7 @@ export default function ButtonModal() { ...@@ -44,7 +44,7 @@ export default function ButtonModal() {
setCurrent(current + 1) setCurrent(current + 1)
} }
const { mutate, isPending, progress, message } = useProcessData() const { mutate, isPending, progress, message, remove } = useProcessData()
// 开始处理 // 开始处理
const handleStart = () => { const handleStart = () => {
...@@ -69,8 +69,8 @@ export default function ButtonModal() { ...@@ -69,8 +69,8 @@ export default function ButtonModal() {
const handleClose = () => { const handleClose = () => {
setOpen(false) setOpen(false)
setCurrent(0) setCurrent(0)
remove()
} }
const [groupName, setGroupName] = useState('') const [groupName, setGroupName] = useState('')
// 步骤定义 // 步骤定义
const steps = [ const steps = [
......
...@@ -7,7 +7,7 @@ import { useProcessProgressQuery } from '@/hooks/useQuery' ...@@ -7,7 +7,7 @@ import { useProcessProgressQuery } from '@/hooks/useQuery'
// 处理数据 // 处理数据
export function useProcessData() { export function useProcessData() {
const queryClient = useQueryClient() const queryClient = useQueryClient()
const { data, start } = useProcessProgressQuery({ function_name: 'grouping' }) const { data, start, remove } = useProcessProgressQuery({ function_name: 'grouping' })
const query = useMutation({ const query = useMutation({
mutationFn: (data: ProcessDataParams) => { mutationFn: (data: ProcessDataParams) => {
...@@ -19,5 +19,5 @@ export function useProcessData() { ...@@ -19,5 +19,5 @@ export function useProcessData() {
queryClient.invalidateQueries({ queryKey: ['data'] }) queryClient.invalidateQueries({ queryKey: ['data'] })
}, },
}) })
return { ...query, progress: data?.progress ?? -1, message: data?.message ?? {} } return { ...query, progress: data.progress, message: data.message, remove }
} }
...@@ -43,7 +43,7 @@ export default function ButtonModal() { ...@@ -43,7 +43,7 @@ export default function ButtonModal() {
setCurrent(current + 1) setCurrent(current + 1)
} }
const { mutate, isPending, progress, message } = useProcessData() const { mutate, isPending, progress, message, remove } = useProcessData()
// 开始处理 // 开始处理
const handleStart = () => { const handleStart = () => {
...@@ -63,8 +63,8 @@ export default function ButtonModal() { ...@@ -63,8 +63,8 @@ export default function ButtonModal() {
const handleClose = () => { const handleClose = () => {
setOpen(false) setOpen(false)
setCurrent(0) setCurrent(0)
remove()
} }
const handleFunctionChange = (value: string) => { const handleFunctionChange = (value: string) => {
form.setFieldsValue({ content: `${value}()` }) form.setFieldsValue({ content: `${value}()` })
} }
......
...@@ -7,7 +7,7 @@ import { useProcessProgressQuery } from '@/hooks/useQuery' ...@@ -7,7 +7,7 @@ import { useProcessProgressQuery } from '@/hooks/useQuery'
// 处理数据 // 处理数据
export function useProcessData() { export function useProcessData() {
const queryClient = useQueryClient() const queryClient = useQueryClient()
const { data, start } = useProcessProgressQuery({ function_name: 'logic' }) const { data, start, remove } = useProcessProgressQuery({ function_name: 'logic' })
const query = useMutation({ const query = useMutation({
mutationFn: (data: ProcessDataParams) => { mutationFn: (data: ProcessDataParams) => {
...@@ -19,5 +19,5 @@ export function useProcessData() { ...@@ -19,5 +19,5 @@ export function useProcessData() {
queryClient.invalidateQueries({ queryKey: ['data'] }) queryClient.invalidateQueries({ queryKey: ['data'] })
}, },
}) })
return { ...query, progress: data?.progress ?? -1, message: data?.message ?? {} } return { ...query, progress: data.progress, message: data.message, remove }
} }
...@@ -45,7 +45,7 @@ export default function ButtonModal() { ...@@ -45,7 +45,7 @@ export default function ButtonModal() {
setCurrent(current + 1) setCurrent(current + 1)
} }
const { mutate, isPending, progress, message } = useProcessData() const { mutate, isPending, progress, message, remove } = useProcessData()
// 开始处理 // 开始处理
const handleStart = () => { const handleStart = () => {
...@@ -63,8 +63,8 @@ export default function ButtonModal() { ...@@ -63,8 +63,8 @@ export default function ButtonModal() {
const handleClose = () => { const handleClose = () => {
setOpen(false) setOpen(false)
setCurrent(0) setCurrent(0)
remove()
} }
// 步骤定义 // 步骤定义
const steps = [ const steps = [
{ {
......
...@@ -7,7 +7,7 @@ import { useProcessProgressQuery } from '@/hooks/useQuery' ...@@ -7,7 +7,7 @@ import { useProcessProgressQuery } from '@/hooks/useQuery'
// 处理数据 // 处理数据
export function useProcessData() { export function useProcessData() {
const queryClient = useQueryClient() const queryClient = useQueryClient()
const { data, start } = useProcessProgressQuery({ function_name: 'mapping' }) const { data, start, remove } = useProcessProgressQuery({ function_name: 'mapping' })
const query = useMutation({ const query = useMutation({
mutationFn: (data: ProcessDataParams) => { mutationFn: (data: ProcessDataParams) => {
...@@ -19,5 +19,5 @@ export function useProcessData() { ...@@ -19,5 +19,5 @@ export function useProcessData() {
queryClient.invalidateQueries({ queryKey: ['data'] }) queryClient.invalidateQueries({ queryKey: ['data'] })
}, },
}) })
return { ...query, progress: data?.progress ?? -1, message: data?.message ?? {} } return { ...query, progress: data.progress, message: data.message, remove }
} }
...@@ -43,7 +43,7 @@ export default function ButtonModal() { ...@@ -43,7 +43,7 @@ export default function ButtonModal() {
setCurrent(current + 1) setCurrent(current + 1)
} }
const { mutate, isPending, progress, message } = useProcessData() const { mutate, isPending, progress, message, remove } = useProcessData()
// 开始处理 // 开始处理
const handleStart = () => { const handleStart = () => {
...@@ -63,8 +63,8 @@ export default function ButtonModal() { ...@@ -63,8 +63,8 @@ export default function ButtonModal() {
const handleClose = () => { const handleClose = () => {
setOpen(false) setOpen(false)
setCurrent(0) setCurrent(0)
remove()
} }
const handleFunctionChange = (value: string) => { const handleFunctionChange = (value: string) => {
form.setFieldsValue({ content: `${value}()` }) form.setFieldsValue({ content: `${value}()` })
} }
......
...@@ -7,7 +7,7 @@ import { useProcessProgressQuery } from '@/hooks/useQuery' ...@@ -7,7 +7,7 @@ import { useProcessProgressQuery } from '@/hooks/useQuery'
// 处理数据 // 处理数据
export function useProcessData() { export function useProcessData() {
const queryClient = useQueryClient() const queryClient = useQueryClient()
const { data, start } = useProcessProgressQuery({ function_name: 'numeric' }) const { data, start, remove } = useProcessProgressQuery({ function_name: 'numeric' })
const query = useMutation({ const query = useMutation({
mutationFn: (data: ProcessDataParams) => { mutationFn: (data: ProcessDataParams) => {
...@@ -19,5 +19,5 @@ export function useProcessData() { ...@@ -19,5 +19,5 @@ export function useProcessData() {
queryClient.invalidateQueries({ queryKey: ['data'] }) queryClient.invalidateQueries({ queryKey: ['data'] })
}, },
}) })
return { ...query, progress: data?.progress ?? -1, message: data?.message ?? {} } return { ...query, progress: data.progress, message: data.message, remove }
} }
...@@ -44,7 +44,7 @@ export default function ButtonModal() { ...@@ -44,7 +44,7 @@ export default function ButtonModal() {
setCurrent(current + 1) setCurrent(current + 1)
} }
const { mutate, isPending, progress, message } = useProcessData() const { mutate, isPending, progress, message, remove } = useProcessData()
// 开始处理 // 开始处理
const handleStart = () => { const handleStart = () => {
...@@ -64,6 +64,7 @@ export default function ButtonModal() { ...@@ -64,6 +64,7 @@ export default function ButtonModal() {
const handleClose = () => { const handleClose = () => {
setOpen(false) setOpen(false)
setCurrent(0) setCurrent(0)
remove()
} }
const handleFunctionChange = (value: string) => { const handleFunctionChange = (value: string) => {
......
...@@ -7,7 +7,7 @@ import { useProcessProgressQuery } from '@/hooks/useQuery' ...@@ -7,7 +7,7 @@ import { useProcessProgressQuery } from '@/hooks/useQuery'
// 处理数据 // 处理数据
export function useProcessData() { export function useProcessData() {
const queryClient = useQueryClient() const queryClient = useQueryClient()
const { data, start } = useProcessProgressQuery({ function_name: 'text' }) const { data, start, remove } = useProcessProgressQuery({ function_name: 'text' })
const query = useMutation({ const query = useMutation({
mutationFn: (data: ProcessDataParams) => { mutationFn: (data: ProcessDataParams) => {
...@@ -19,5 +19,5 @@ export function useProcessData() { ...@@ -19,5 +19,5 @@ export function useProcessData() {
queryClient.invalidateQueries({ queryKey: ['data'] }) queryClient.invalidateQueries({ queryKey: ['data'] })
}, },
}) })
return { ...query, progress: data?.progress ?? -1, message: data?.message ?? {} } return { ...query, progress: data.progress, message: data.message, remove }
} }
Markdown 格式
0%
您添加了 0 到此讨论。请谨慎行事。
请先完成此评论的编辑!
注册 或者 后发表评论