From a2d9e3c3f55dcafe002f2f087bd52c468fb5fd64 Mon Sep 17 00:00:00 2001 From: chunquansang <916920620@è¯@qq.com> Date: Mon, 13 Nov 2023 14:49:12 +0800 Subject: [PATCH] =?UTF-8?q?feat=20=E5=AE=8C=E5=96=84=E9=A1=B9=E7=9B=AE?= =?UTF-8?q?=E9=83=A8=E7=BD=B2?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../ProjectList/components/MyCreateForm.tsx | 80 +--- .../components/MyCreateForm.tsx | 1 - src/pages/Setting/AlgorithmSetting.tsx | 1 + .../Setting/components/TableTransfer.tsx | 3 +- src/pages/Setting/components/UpdateForm.tsx | 414 ++++++------------ 5 files changed, 146 insertions(+), 353 deletions(-) diff --git a/src/pages/Project/ProjectList/components/MyCreateForm.tsx b/src/pages/Project/ProjectList/components/MyCreateForm.tsx index 29db1cb..83e3ace 100644 --- a/src/pages/Project/ProjectList/components/MyCreateForm.tsx +++ b/src/pages/Project/ProjectList/components/MyCreateForm.tsx @@ -21,6 +21,7 @@ import React, { useEffect, useRef, useState } from 'react'; // @ts-ignore import { FormListActionType } from '@ant-design/pro-form/lib'; import yaml from 'js-yaml'; +// @ts-ignore import cookie from 'react-cookies'; interface RecordType { @@ -62,82 +63,6 @@ const stepFormItemStyleProps: Record = { width: formContainerWidth, }; -const treeData1: any[] = [ - { - title: '0-0', - key: '0-0', - children: [ - { - title: '0-0-0', - key: '0-0-0', - children: [ - { title: '0-0-0-0', key: '0-0-0-0' }, - { title: '0-0-0-1', key: '0-0-0-1' }, - { title: '0-0-0-2', key: '0-0-0-2' }, - ], - }, - { - title: '0-0-1', - key: '0-0-1', - children: [ - { title: '0-0-1-0', key: '0-0-1-0' }, - { title: '0-0-1-1', key: '0-0-1-1' }, - { title: '0-0-1-2', key: '0-0-1-2' }, - { title: '0-0-1-0', key: '0-0-1-3' }, - { title: '0-0-1-1', key: '0-0-1-4' }, - { title: '0-0-1-2', key: '0-0-1-5' }, - { title: '0-0-1-0', key: '0-0-1-6' }, - { title: '0-0-1-1', key: '0-0-1-7' }, - { title: '0-0-1-2', key: '0-0-1-8' }, - { title: '0-0-1-0', key: '0-0-1-9' }, - { title: '0-0-1-1', key: '0-0-1-10' }, - { title: '0-0-1-2', key: '0-0-1-11' }, - { title: '0-0-1-0', key: '0-0-1-12' }, - { title: '0-0-1-1', key: '0-0-1-13' }, - { title: '0-0-1-2', key: '0-0-1-14' }, - { title: '0-0-1-0', key: '0-0-1-15' }, - { title: '0-0-1-1', key: '0-0-1-16' }, - { title: '0-0-1-2', key: '0-0-1-17' }, - { title: '0-0-1-0', key: '0-0-1-18' }, - { title: '0-0-1-1', key: '0-0-1-19' }, - { title: '0-0-1-2', key: '0-0-1-20' }, - { title: '0-0-1-0', key: '0-0-1-21' }, - { title: '0-0-1-1', key: '0-0-1-22' }, - { title: '0-0-1-2', key: '0-0-1-23' }, - { title: '0-0-1-0', key: '0-0-1-24' }, - { title: '0-0-1-1', key: '0-0-1-25' }, - { title: '0-0-1-2', key: '0-0-1-26' }, - { title: '0-0-1-0', key: '0-0-1-27' }, - { title: '0-0-1-1', key: '0-0-1-28' }, - { title: '0-0-1-2', key: '0-0-1-29' }, - { title: '0-0-1-0', key: '0-0-1-30' }, - { title: '0-0-1-1', key: '0-0-1-31' }, - { title: '0-0-1-2', key: '0-0-1-32' }, - { title: '0-0-1-0', key: '0-0-1-33' }, - { title: '0-0-1-1', key: '0-0-1-34' }, - { title: '0-0-1-2', key: '0-0-1-35' }, - ], - }, - { - title: '0-0-2', - key: '0-0-2', - }, - ], - }, - { - title: '0-1', - key: '0-1', - children: [ - { title: '0-1-0-0', key: '0-1-0-0' }, - { title: '0-1-0-1', key: '0-1-0-1' }, - { title: '0-1-0-2', key: '0-1-0-2' }, - ], - }, - { - title: '0-2', - key: '0-2', - }, -]; const MyCreateForm: React.FC = (props) => { const [treeData, setTreeData] = React.useState([]); @@ -555,9 +480,6 @@ const MyCreateForm: React.FC = (props) => { - - - ); }} diff --git a/src/pages/Resource/ModelVersionList/components/MyCreateForm.tsx b/src/pages/Resource/ModelVersionList/components/MyCreateForm.tsx index cbc65b2..37e087a 100644 --- a/src/pages/Resource/ModelVersionList/components/MyCreateForm.tsx +++ b/src/pages/Resource/ModelVersionList/components/MyCreateForm.tsx @@ -236,7 +236,6 @@ const MyCreateForm: React.FC = (props) => { <> - ); }} diff --git a/src/pages/Setting/AlgorithmSetting.tsx b/src/pages/Setting/AlgorithmSetting.tsx index 131e8ec..37f75bc 100644 --- a/src/pages/Setting/AlgorithmSetting.tsx +++ b/src/pages/Setting/AlgorithmSetting.tsx @@ -177,6 +177,7 @@ const AlgorithmSetting: React.FC = () => { { title: ( <> +
{JSON.stringify(item.configId)}
), diff --git a/src/pages/Setting/components/TableTransfer.tsx b/src/pages/Setting/components/TableTransfer.tsx index 9572508..9b0196c 100644 --- a/src/pages/Setting/components/TableTransfer.tsx +++ b/src/pages/Setting/components/TableTransfer.tsx @@ -39,7 +39,7 @@ for (let i = 0; i < 5; i += 1) { : '简短备注文案', }); } -console.log(tableListDataSource) + const columns1 = [ { title: '应用名称', @@ -226,7 +226,6 @@ const TableTransferList: React.FC = (props) => { const triggerShowSearch = (checked: boolean) => { setShowSearch(checked); }; - return ( <> { - return ( - <> - - - - ) -} -const dataSource = [ - { - key: '1', - name: '胡彦斌', - age: 32, - address: '西湖区湖底公园1号', - }, - { - key: '2', - name: '胡彦祖', - age: 42, - address: '西湖区湖底公园1号', - }, -]; -const columns = [ - { - title: '姓名', - dataIndex: 'name', - key: 'name', - }, - { - title: '年龄', - dataIndex: 'age', - key: 'age', - }, - { - title: '住址', - dataIndex: 'address', - key: 'address', - }, -]; const UpdateForm: React.FC = (props) => { const intl = useIntl(); @@ -122,62 +62,55 @@ const UpdateForm: React.FC = (props) => { const [targetKeys, setTargetKeys] = useState([]); const [current, setCurrent] = useState(0); - const [configData, setConfigData] = useState([]); + const [configData, setConfigData] = useState([]); const [addrValue, setAddr] = useState('') const [projectModelConfig, setProjectModelConfig] = useState({}) - + const [configResult, setConfigResult] = useState({}) const [deviceData, setDeviceData] = useState([]) - const handleSelectChange = (value)=>{ - postModelVersionGetModelVersionById({ id: value }).then((resp) => { - let data = resp.data.modelVersion.modelConfig?.params || []; - setConfigData(data); // 更新状态 - }); - } - - useEffect(() => { - if (addrValue) { - postModelVersionGetModelVersionById({ id: 23 }).then((resp) => { + const [selectValue, setSelectValue] = useState(0) + const [isInit, setIsInit] = useState(false) + const handleSelectChange = (value: number)=>{ + if (value !== projectModelConfig.modelVersionFkId) { + postModelVersionGetModelVersionById({ id: value }).then((resp) => { let data = resp.data.modelVersion.modelConfig?.params || []; - setConfigData(data); // 更新状态 + setConfigData(data); }); } - }, [addrValue]); + setSelectValue(value) + } + + + // useEffect(() => { + // if (selectValue > 0) { + // postModelVersionGetModelVersionById({ id: selectValue }).then((resp) => { + // let data = resp.data.modelVersion.modelConfig?.params || []; + // setConfigData(data); // 更新状态 + // }); + // } + // }, [selectValue]); const actionFormListRef = useRef< FormListActionType<{ name: string; }> >(); - const getModelData = () => { - // postDeviceGetDeviceFkSelect({keyword: ''}).then((res)=>{ - // let result = (res.data?.list || []).map((v: any)=>{ - // return { - // key: v.id, - // title: v.name, - // chosen: false, - // } - // }) - // setModalData(result); - // }) - // setMockData(tempMockData); - // setTargetKeys(tempTargetKeys); - }; useEffect(() => { setTargetKeys([]) setConfigData([]) + setIsInit(false) if (props.updateModalOpen) { // getModelData(); - console.log(props.projectModelConfigId) if (props.projectModelConfigId && props.projectModelConfigId !== 0) { postProjectModelConfigGetProjectModelConfigById({id: props.projectModelConfigId}).then((resp)=>{ setProjectModelConfig(resp.data.ProjectModelConfig) + setTargetKeys((resp.data.ProjectModelConfig?.devices || '').split(',').map((v: string)=>{return parseInt(v)})) + setConfigData(resp.data.ProjectModelConfig?.modelConfig || []) + setSelectValue(resp.data.ProjectModelConfig?.modelVersionFkId || 0) + setIsInit(true) }) } - // postDeviceGetDeviceList({groupFkId: 2, page: 1, pageSize:10}).then((resp)=>{ - // // console.log(111, resp) - // }) } else { } }, [props.updateModalOpen]) @@ -203,8 +136,8 @@ const UpdateForm: React.FC = (props) => { }) } }} - onFinish={async () => { - + onFinish={async (values) => { + setCurrent(0) return true; }} formProps={{ @@ -230,6 +163,63 @@ const UpdateForm: React.FC = (props) => { ); }} > + + name="config1" + title="项目参数配置" + stepProps={{ + description: '业务参数配置', + }} + onFinish={async (values: any) => { + let projectConfig:any = [] + Object.keys(values).forEach((key)=>{ + if (key !== 'modelFkId') { + projectConfig.push({name: key, value: values[key]}) + } + }) + configResult.projectConfig = projectConfig + return true; + }} + > + <> + + { + isInit && (projectModelConfig?.projectConfig || []).map((item: any, index: number)=>{ + let value_type = typeof item.value + if (value_type === 'number') { + return () + } else if (value_type === 'boolean') { + return () + } else if (value_type === 'string') { + return () + } else { + return + } + }) + } + + + + @@ -238,18 +228,24 @@ const UpdateForm: React.FC = (props) => { stepProps={{ description: '模型参数配置', }} - onFocus={()=>{ - console.log("进入") - }} onFinish={async (values: any) => { - return true; + configResult.modelVersionFkId = values.modelFkId + let modelConfig:any = [] + Object.keys(values).forEach((key)=>{ + if (key !== 'modelFkId') { + modelConfig.push({name: key, value: values[key]}) + } + }) + configResult.modelConfig = modelConfig + return true; }} > <> +
{props.projectModelConfigId}
{ - projectModelConfig.modelFkId && projectModelConfig.modelFkId !== 0 && ( + isInit && projectModelConfig.modelFkId && projectModelConfig.modelFkId !== 0 && ( = (props) => { /> ) } +
{selectValue}={projectModelConfig.modelVersionFkId}
{ - configData.length ? + isInit && (selectValue !== projectModelConfig.modelVersionFkId ? ( - configData.map((item:any, index)=> { + configData.map((item:any, index: number)=> { if (typeof item.default === 'number') { return () } else if (typeof item.default === 'boolean') { return ( = (props) => { name={item.name} label={item.name} initialValue={item.default} - tooltip={item.remark} />) } else { return ( = (props) => { name={item.name} label={item.name} initialValue={item.default} - tooltip={item.remark} />) } } ) - ): (projectModelConfig?.modelConfig || []).map((item, index)=>{ - let value_type = typeof item.value - if (value_type === 'number') { - return () - } else if (value_type === 'boolean') { - return () - } else if (value_type === 'string') { - return () - } else { - return - } - }) + ): (configData.map((item:any, index: number)=> { + if (typeof item.value === 'number') { + return () + } else if (typeof item.value === 'boolean') { + return () + } else { + return () + } + } + ))) } - - name="config1" - title="项目参数配置" - stepProps={{ - description: '业务参数配置', - }} - onFinish={async (values: any) => { - return true; - }} - > - <> - - { - (projectModelConfig?.projectConfig || []).map((item, index)=>{ - let value_type = typeof item.value - if (value_type === 'number') { - return () - } else if (value_type === 'boolean') { - return () - } else if (value_type === 'string') { - return () - } else { - return - } - }) - } - { - Object.keys(projectModelConfig?.projectConfig || {}).map((item:any, index)=> { - let value_type = typeof projectModelConfig.projectConfig[item] - console.log(value_type, projectModelConfig.projectConfig[item]) - - if (value_type === 'number') { - return () - } else if (value_type === 'boolean') { - return () - } else if (value_type === 'string') { - return () - } else { - return - } - } - ) - } - - - {/* 关联算法模型 */} = (props) => { description: '设备关联配置', }} onFinish={async (values: any) => { - console.log(targetKeys) - return true; + configResult.devices = targetKeys.join(',') + configResult.id = props.projectModelConfigId + putProjectModelConfigUpdateProjectModelConfig(configResult).then((resp)=>{ + message.success(intl.formatMessage({id: 'common.success', defaultMessage: '$$$'})) + props.handleModal() + props.reload() + return true + }).catch(()=>{ + message.error(intl.formatMessage({id: 'common.failure', defaultMessage: '$$$'})) + return false; + }) }} > <> @@ -437,51 +353,7 @@ const UpdateForm: React.FC = (props) => { - - - - - -// -// title={intl.formatMessage({ -// id: 'common.modal.table.update.title', -// defaultMessage: '$$$', -// })} -// open={props.updateModalOpen} -// form={form} -// autoFocusFirstInput -// modalProps={{ -// destroyOnClose: true, -// onCancel: () => props.handleModal(), -// }} -// submitTimeout={2000} -// onFinish={async (values:any) => { -// console.log(4444, props.values) -// putRoleUpdateDevicesInGroupModel({groupId: props.values.groupFkId, modelId: props.values.modelFkId, deviceIds: values?.devices || []}).then(()=>{ -// props.handleModal(); -// message.success(intl.formatMessage({id: 'common.success', defaultMessage: '$$$'})) -// }).catch(()=>{ -// message.error(intl.formatMessage({id: 'common.failure', defaultMessage: '$$$'})) -// }) -// return true; -// }} -// > -// -// item.title} -// /> -// -// -// - )} export default UpdateForm;