From 7f0fe17c0a8b93b171540a878a4e9031129ca86a Mon Sep 17 00:00:00 2001 From: Angeli <527971893@qq.com> Date: Mon, 20 May 2024 19:45:29 +0800 Subject: [PATCH] repo-sync-2024-05-20T19:45:15+0800 --- .../custom-render/case-when-render/index.tsx | 3 +- .../custom-render/groupby-render/index.tsx | 3 +- .../table/index.tsx | 4 +- .../add-http-data/http-data-add.view.tsx | 15 ++++++-- .../main-dag/graph-request-service.tsx | 37 +++++++++++++++++-- 5 files changed, 51 insertions(+), 11 deletions(-) diff --git a/apps/platform/src/modules/component-config/config-item-render/custom-render/case-when-render/index.tsx b/apps/platform/src/modules/component-config/config-item-render/custom-render/case-when-render/index.tsx index edf3c27..62ab75c 100644 --- a/apps/platform/src/modules/component-config/config-item-render/custom-render/case-when-render/index.tsx +++ b/apps/platform/src/modules/component-config/config-item-render/custom-render/case-when-render/index.tsx @@ -1,4 +1,5 @@ import { PlusCircleFilled, DeleteOutlined } from '@ant-design/icons'; +import { useDeepCompareEffect } from 'ahooks'; import { Button, Divider, Form, Input, Select, Switch } from 'antd'; import { parse } from 'query-string'; import { useEffect, useState, useMemo } from 'react'; @@ -119,7 +120,7 @@ export const CaseWhenRender = (prop: { node: AtomicConfigNode }) => { const { search } = useLocation(); const { projectId, dagId } = parse(search) as { projectId: string; dagId: string }; - useEffect(() => { + useDeepCompareEffect(() => { const getTables = async () => { const dataTableList: IDataTable[] = []; diff --git a/apps/platform/src/modules/component-config/config-item-render/custom-render/groupby-render/index.tsx b/apps/platform/src/modules/component-config/config-item-render/custom-render/groupby-render/index.tsx index dd5f537..c60166d 100644 --- a/apps/platform/src/modules/component-config/config-item-render/custom-render/groupby-render/index.tsx +++ b/apps/platform/src/modules/component-config/config-item-render/custom-render/groupby-render/index.tsx @@ -1,4 +1,5 @@ import { DeleteOutlined } from '@ant-design/icons'; +import { useDeepCompareEffect } from 'ahooks'; import { Form, Space, Select, Button, Input } from 'antd'; import classnames from 'classnames'; import { parse } from 'query-string'; @@ -57,7 +58,7 @@ export const GroupByRender = (prop: { node: AtomicConfigNode }) => { const [tables, setTables] = useState([]); const [outputTables, setOutputTables] = useState([]); - useEffect(() => { + useDeepCompareEffect(() => { const getTables = async () => { const dataTableList: IDataTable[] = []; const { search } = window.location; diff --git a/apps/platform/src/modules/component-config/config-item-render/custom-render/linear-model-parameters-modification/table/index.tsx b/apps/platform/src/modules/component-config/config-item-render/custom-render/linear-model-parameters-modification/table/index.tsx index b28bac0..f89dba7 100644 --- a/apps/platform/src/modules/component-config/config-item-render/custom-render/linear-model-parameters-modification/table/index.tsx +++ b/apps/platform/src/modules/component-config/config-item-render/custom-render/linear-model-parameters-modification/table/index.tsx @@ -9,8 +9,8 @@ import { LinearModelParamsModificationsRenderView } from '..'; import styles from '../index.less'; import type { ParametersDatum } from '../types'; -const MIN_FLOAT32 = -3.40282347e38; -const MAX_FLOAT32 = 3.40282347e38; +const MIN_FLOAT32 = -3.4e38; +const MAX_FLOAT32 = 3.4e38; type FormInstance = GetRef>; diff --git a/apps/platform/src/modules/data-table-add/add-http-data/http-data-add.view.tsx b/apps/platform/src/modules/data-table-add/add-http-data/http-data-add.view.tsx index f1884a6..1568656 100644 --- a/apps/platform/src/modules/data-table-add/add-http-data/http-data-add.view.tsx +++ b/apps/platform/src/modules/data-table-add/add-http-data/http-data-add.view.tsx @@ -2,6 +2,7 @@ import { DeleteOutlined, DownloadOutlined, PlusOutlined, + QuestionCircleOutlined, UploadOutlined, } from '@ant-design/icons'; import { @@ -12,21 +13,21 @@ import { Input, Select, Space, + Tooltip, Upload, message, } from 'antd'; import { Drawer } from 'antd'; +import { parse } from 'query-string'; import { useEffect, useRef } from 'react'; import { CSVLink } from 'react-csv'; -import { createFeatureDatasource } from '@/services/secretpad/FeatureDatasourceController'; +import { createFeatureDatasource } from '@/services/secretpad/FeatureDatasourceController'; import { Model, useModel } from '@/util/valtio-helper'; import { analysisCsv } from '../component/upload-table/util'; import styles from './index.less'; -import { parse } from 'query-string'; -import { flushSync } from 'react-dom'; const downloadData = [ { 特征名称: 'id1', 特征类型: 'string', 特征描述: '' }, @@ -204,7 +205,13 @@ export const HttpDataAddDrawer = ({ } > -
数据表类型:http数据源
+
+ 数据表类型 + + + + :http数据源 +
{ const { graphNodeId, status, codeName, ...options } = n; const configs = @@ -185,7 +187,6 @@ export class GraphRequestService extends DefaultRequestService { if (graphNodeStatus === NodeStatus.default && !isFinished) { graphNodeStatus = NodeStatus.unfinished; } - return { ...options, codeName, @@ -222,7 +223,7 @@ export class GraphRequestService extends DefaultRequestService { const { mode } = parse(window.location.search); const nodes = await Promise.all( n.map(async (i) => { - const { id, codeName, nodeDef, ...restNodes } = i; + const { id, codeName, nodeDef, styles, ...restNodes } = i; const config = this.componentConfigRegistry.getComponentConfig( codeName, mode as ComputeMode, @@ -250,6 +251,17 @@ export class GraphRequestService extends DefaultRequestService { } return newNodeDef; }; + + const getNewStyles = () => { + if (mlTrainCodeNames.includes(codeName as string)) { + return { + ...styles, + isContinueRun: true, + }; + } + return styles; + }; + return id ? { ...restNodes, @@ -258,11 +270,30 @@ export class GraphRequestService extends DefaultRequestService { inputs: [], outputs: outputPorts, nodeDef: getNewNodeDef(), + styles: getNewStyles(), } : i; }), ); + // 更新节点样式 + const styledNodes = ( + nodes as { + graphNodeId: string; + styles?: { + isContinueRun?: boolean; + isOpaque?: boolean; + isHighlighted: boolean; + }; + }[] + )?.map(({ graphNodeId, styles }) => { + return { + nodeId: graphNodeId, + styles, + }; + }); + mainDag.graphManager.executeAction(ActionType.changeStyles, styledNodes); + const edges = e.map((i) => { const { id, ...restEdges } = i; const { sourceAnchor, target, targetAnchor } = i;