Commit 6298d498fe60d582d095582e3469c4330ea16e43
Merge branch 'ft_local_dev' into 'main'
pref:优化物模型 封装输入参数输出参数通用表单 优化相关代码 fix:DEFECT-839 设备访问令牌重复后提示undefind See merge request huang/yun-teng-iot-front!387
Showing
8 changed files
with
645 additions
and
899 deletions
| @@ -118,8 +118,10 @@ const transform: AxiosTransform = { | @@ -118,8 +118,10 @@ const transform: AxiosTransform = { | ||
| 118 | errorLogStore.addAjaxErrorInfo(error); | 118 | errorLogStore.addAjaxErrorInfo(error); |
| 119 | const { response, code, message, config } = error || {}; | 119 | const { response, code, message, config } = error || {}; |
| 120 | const errorMessageMode = config?.requestOptions?.errorMessageMode || 'none'; | 120 | const errorMessageMode = config?.requestOptions?.errorMessageMode || 'none'; |
| 121 | - // const msg: string = response?.data?.msg ?? ''; | ||
| 122 | - const msg: string = response?.data?.message || response?.data?.msg; | 121 | + const errorMsgIsObj = typeof response.data === 'object'; |
| 122 | + const msg: string = errorMsgIsObj | ||
| 123 | + ? response?.data?.message || response?.data?.msg | ||
| 124 | + : response.data; | ||
| 123 | const err: string = error?.toString?.() ?? ''; | 125 | const err: string = error?.toString?.() ?? ''; |
| 124 | let errMessage = ''; | 126 | let errMessage = ''; |
| 125 | try { | 127 | try { |
| @@ -2,24 +2,15 @@ | @@ -2,24 +2,15 @@ | ||
| 2 | <div> | 2 | <div> |
| 3 | <BasicForm @register="register"> | 3 | <BasicForm @register="register"> |
| 4 | <template #outputParamSlot> | 4 | <template #outputParamSlot> |
| 5 | - <div> | ||
| 6 | - <template v-for="(item, index) in outputParamData" :key="item"> | ||
| 7 | - <span style="display: none">{{ item + index }}</span> | ||
| 8 | - <InputParamItem | ||
| 9 | - :title="item.name" | ||
| 10 | - :item="item" | ||
| 11 | - class="mt-4" | ||
| 12 | - :index="item.id" | ||
| 13 | - :ref="dynamicBindRef.outputParamItemRef" | ||
| 14 | - @delete="deleteOutParItem" | ||
| 15 | - @edit="editOutParItem" | ||
| 16 | - /> | ||
| 17 | - </template> | ||
| 18 | - <div style="display: flex" :class="{ 'mt-2': outputParamData.length > 0 }"> | ||
| 19 | - <span class="add-style">+</span> | ||
| 20 | - <span class="add-style" @click="handleAddOutParam">增加参数</span> | ||
| 21 | - </div> | ||
| 22 | - </div> | 5 | + <CommomParam |
| 6 | + ref="CommomParamInParamRef" | ||
| 7 | + :isExcludeStruct="true" | ||
| 8 | + :isInputParam="true" | ||
| 9 | + :inputParamData="inputParamData" | ||
| 10 | + @emitAddInParam="handleAddInParam" | ||
| 11 | + @emitEditInParam="handleEditInParam" | ||
| 12 | + @emitDeletelnParam="handleDelInParam" | ||
| 13 | + /> | ||
| 23 | </template> | 14 | </template> |
| 24 | </BasicForm> | 15 | </BasicForm> |
| 25 | <AddParamsModal @register="registerModal" @data="getData" /> | 16 | <AddParamsModal @register="registerModal" @data="getData" /> |
| @@ -30,16 +21,15 @@ | @@ -30,16 +21,15 @@ | ||
| 30 | import { BasicForm, useForm } from '/@/components/Form'; | 21 | import { BasicForm, useForm } from '/@/components/Form'; |
| 31 | import { attrSchemas } from './config'; | 22 | import { attrSchemas } from './config'; |
| 32 | import { useModal } from '/@/components/Modal'; | 23 | import { useModal } from '/@/components/Modal'; |
| 33 | - import InputParamItem from './components/InputParamItem.vue'; | ||
| 34 | - import AddParamsModal from './components/AddParamsModal.vue'; | ||
| 35 | import { validateValueStruct } from '../hook/useValidateParital'; | 24 | import { validateValueStruct } from '../hook/useValidateParital'; |
| 36 | import { useChangeTypeGetTypeForm } from '../hook/useTypeGetForm'; | 25 | import { useChangeTypeGetTypeForm } from '../hook/useTypeGetForm'; |
| 37 | import { buildUUID } from '/@/utils/uuid'; | 26 | import { buildUUID } from '/@/utils/uuid'; |
| 27 | + import AddParamsModal from './components/AddParamsModal.vue'; | ||
| 28 | + import CommomParam from './components/CommomParam.vue'; | ||
| 38 | 29 | ||
| 39 | - const outputParamData: any = ref([]); | ||
| 40 | - const dynamicBindRef = { | ||
| 41 | - outputParamItemRef: ref([]), | ||
| 42 | - }; | 30 | + const inputParamData: any = ref([]); |
| 31 | + | ||
| 32 | + const CommomParamInParamRef = ref<InstanceType<typeof CommomParam>>(); | ||
| 43 | 33 | ||
| 44 | const [registerModal, { openModal }] = useModal(); | 34 | const [registerModal, { openModal }] = useModal(); |
| 45 | 35 | ||
| @@ -55,42 +45,28 @@ | @@ -55,42 +45,28 @@ | ||
| 55 | }); | 45 | }); |
| 56 | 46 | ||
| 57 | const getData = (d, f) => { | 47 | const getData = (d, f) => { |
| 58 | - if (f == 'output') { | 48 | + if (f == 'input') { |
| 59 | if (d.id !== null) { | 49 | if (d.id !== null) { |
| 60 | - const findIndex = unref(outputParamData).findIndex((f) => f.id == d.id); | ||
| 61 | - if (findIndex !== -1) unref(outputParamData).splice(findIndex, 1, d); | 50 | + const findIndex = unref(inputParamData).findIndex((f) => f.id == d.id); |
| 51 | + if (findIndex !== -1) unref(inputParamData).splice(findIndex, 1, d); | ||
| 62 | } else { | 52 | } else { |
| 63 | - unref(outputParamData).push({ ...d, id: buildUUID() }); | 53 | + unref(inputParamData).push({ ...d, id: buildUUID() }); |
| 64 | } | 54 | } |
| 65 | } | 55 | } |
| 66 | }; | 56 | }; |
| 67 | 57 | ||
| 68 | - const handleAddOutParam = () => { | ||
| 69 | - openModal(true, { | ||
| 70 | - isUpdate: true, | ||
| 71 | - flag: 'output', | ||
| 72 | - excludeStruct: true, | ||
| 73 | - }); | ||
| 74 | - }; | 58 | + const handleAddInParam = (b, o) => openModal(b, o); |
| 75 | 59 | ||
| 76 | - const deleteOutParItem = (index) => { | ||
| 77 | - unref(outputParamData).splice(index, 1); | ||
| 78 | - }; | 60 | + const handleEditInParam = (b, o) => openModal(b, o); |
| 79 | 61 | ||
| 80 | - const editOutParItem = (item) => { | ||
| 81 | - openModal(true, { | ||
| 82 | - isUpdate: false, | ||
| 83 | - record: item, | ||
| 84 | - flag: 'output', | ||
| 85 | - excludeStruct: true, | ||
| 86 | - }); | ||
| 87 | - }; | 62 | + const handleDelInParam = (i) => unref(inputParamData).splice(i, 1); |
| 88 | 63 | ||
| 64 | + //回显不同类型数据 | ||
| 89 | const setTypeData = (T, D) => { | 65 | const setTypeData = (T, D) => { |
| 90 | if (T === 'INT' || T === 'DOUBLE' || T === 'TEXT') { | 66 | if (T === 'INT' || T === 'DOUBLE' || T === 'TEXT') { |
| 91 | return { | 67 | return { |
| 92 | ...D?.dataSpecs, | 68 | ...D?.dataSpecs, |
| 93 | - valueRange: D?.dataSpecs, | 69 | + valueRange: { ...D?.dataSpecs }, |
| 94 | }; | 70 | }; |
| 95 | } else if (T === 'BOOL') { | 71 | } else if (T === 'BOOL') { |
| 96 | return { | 72 | return { |
| @@ -100,22 +76,23 @@ | @@ -100,22 +76,23 @@ | ||
| 100 | } | 76 | } |
| 101 | }; | 77 | }; |
| 102 | 78 | ||
| 103 | - //回显数据 | ||
| 104 | const setFormData = (v) => { | 79 | const setFormData = (v) => { |
| 105 | - setFieldsValue({ ...v[0] }); | ||
| 106 | - setFieldsValue(setTypeData(v[0].dataType, v[0])); | ||
| 107 | - const { dataSpecsList } = v[0]; | ||
| 108 | - if (dataSpecsList !== undefined) { | ||
| 109 | - outputParamData.value = [...new Array(dataSpecsList.length).keys()]; | ||
| 110 | - outputParamData.value = dataSpecsList; | 80 | + try { |
| 81 | + setFieldsValue({ ...v[0] }); | ||
| 82 | + setFieldsValue(setTypeData(v[0]?.dataType, v[0])); | ||
| 83 | + //回显结构体数据 | ||
| 84 | + const { dataSpecsList } = v[0]; | ||
| 85 | + if (dataSpecsList !== undefined) { | ||
| 86 | + inputParamData.value = [...new Array(dataSpecsList.length).keys()]; | ||
| 87 | + inputParamData.value = dataSpecsList; | ||
| 88 | + } | ||
| 89 | + } catch (e) { | ||
| 90 | + console.log('Attribute error info', e); | ||
| 111 | } | 91 | } |
| 112 | }; | 92 | }; |
| 113 | 93 | ||
| 114 | //获取结构体数据 | 94 | //获取结构体数据 |
| 115 | - const getStructList = () => { | ||
| 116 | - const val = unref(dynamicBindRef.outputParamItemRef)?.map((item: any) => item.getFormData()); | ||
| 117 | - return val; | ||
| 118 | - }; | 95 | + const getStructList = () => CommomParamInParamRef.value?.getInputStructList(); |
| 119 | 96 | ||
| 120 | const getBoolOrStructData = (T, S, B) => { | 97 | const getBoolOrStructData = (T, S, B) => { |
| 121 | if (T === 'STRUCT') { | 98 | if (T === 'STRUCT') { |
| @@ -135,12 +112,7 @@ | @@ -135,12 +112,7 @@ | ||
| 135 | const dataSpecs = useChangeTypeGetTypeForm(values.dataType, values); | 112 | const dataSpecs = useChangeTypeGetTypeForm(values.dataType, values); |
| 136 | const dataSpecsListBool = useChangeTypeGetTypeForm(values.dataType, values); | 113 | const dataSpecsListBool = useChangeTypeGetTypeForm(values.dataType, values); |
| 137 | const { valueRange, step, unit, outputParam, ...value } = values; | 114 | const { valueRange, step, unit, outputParam, ...value } = values; |
| 138 | - const none = { | ||
| 139 | - ...outputParam, | ||
| 140 | - ...step, | ||
| 141 | - ...unit, | ||
| 142 | - ...valueRange, | ||
| 143 | - }; | 115 | + const none = [valueRange, step, unit, outputParam]; //没用,防止eslint报未使用变量 |
| 144 | console.log(none); | 116 | console.log(none); |
| 145 | return { | 117 | return { |
| 146 | ...value, | 118 | ...value, |
| @@ -153,7 +125,7 @@ | @@ -153,7 +125,7 @@ | ||
| 153 | 125 | ||
| 154 | const resetFormData = () => { | 126 | const resetFormData = () => { |
| 155 | resetFields(); | 127 | resetFields(); |
| 156 | - outputParamData.value = []; | 128 | + inputParamData.value = []; |
| 157 | }; | 129 | }; |
| 158 | 130 | ||
| 159 | defineExpose({ | 131 | defineExpose({ |
| @@ -162,9 +134,4 @@ | @@ -162,9 +134,4 @@ | ||
| 162 | getFormData, | 134 | getFormData, |
| 163 | }); | 135 | }); |
| 164 | </script> | 136 | </script> |
| 165 | -<style lang="less" scoped> | ||
| 166 | - .add-style { | ||
| 167 | - color: #0170cc; | ||
| 168 | - cursor: pointer; | ||
| 169 | - } | ||
| 170 | -</style> | 137 | +<style lang="less" scoped></style> |
| @@ -2,24 +2,15 @@ | @@ -2,24 +2,15 @@ | ||
| 2 | <div> | 2 | <div> |
| 3 | <BasicForm @register="register"> | 3 | <BasicForm @register="register"> |
| 4 | <template #outputParamSlot> | 4 | <template #outputParamSlot> |
| 5 | - <div> | ||
| 6 | - <template v-for="(item, index) in outputParamData" :key="item"> | ||
| 7 | - <span style="display: none">{{ item }}</span> | ||
| 8 | - <InputParamItem | ||
| 9 | - :title="item.name" | ||
| 10 | - :item="item" | ||
| 11 | - class="mt-4" | ||
| 12 | - :index="index" | ||
| 13 | - :ref="dynamicBindRef.outputParamItemRef" | ||
| 14 | - @delete="deleteOutParItem" | ||
| 15 | - @edit="editOutParItem" | ||
| 16 | - /> | ||
| 17 | - </template> | ||
| 18 | - <div style="display: flex" :class="{ 'mt-2': outputParamData.length > 0 }"> | ||
| 19 | - <span class="add-style">+</span> | ||
| 20 | - <span class="add-style" @click="handleAddOutParam">增加参数</span> | ||
| 21 | - </div> | ||
| 22 | - </div> | 5 | + <CommomParam |
| 6 | + ref="CommomParamInParamRef" | ||
| 7 | + :isInputParam="true" | ||
| 8 | + :isExcludeStruct="false" | ||
| 9 | + :inputParamData="inputParamData" | ||
| 10 | + @emitAddInParam="handleAddInParam" | ||
| 11 | + @emitEditInParam="handleEditInParam" | ||
| 12 | + @emitDeletelnParam="handleDelInParam" | ||
| 13 | + /> | ||
| 23 | </template> | 14 | </template> |
| 24 | </BasicForm> | 15 | </BasicForm> |
| 25 | <AddParamsModal @register="registerModal" @data="getData" /> | 16 | <AddParamsModal @register="registerModal" @data="getData" /> |
| @@ -30,14 +21,13 @@ | @@ -30,14 +21,13 @@ | ||
| 30 | import { BasicForm, useForm } from '/@/components/Form'; | 21 | import { BasicForm, useForm } from '/@/components/Form'; |
| 31 | import { eventSchemas } from './config'; | 22 | import { eventSchemas } from './config'; |
| 32 | import { useModal } from '/@/components/Modal'; | 23 | import { useModal } from '/@/components/Modal'; |
| 33 | - import InputParamItem from './components/InputParamItem.vue'; | ||
| 34 | - import AddParamsModal from './components/AddParamsModal.vue'; | ||
| 35 | import { buildUUID } from '/@/utils/uuid'; | 24 | import { buildUUID } from '/@/utils/uuid'; |
| 25 | + import AddParamsModal from './components/AddParamsModal.vue'; | ||
| 26 | + import CommomParam from './components/CommomParam.vue'; | ||
| 36 | 27 | ||
| 37 | - const outputParamData: any = ref([]); | ||
| 38 | - const dynamicBindRef = { | ||
| 39 | - outputParamItemRef: ref([]), | ||
| 40 | - }; | 28 | + const inputParamData: any = ref([]); |
| 29 | + | ||
| 30 | + const CommomParamInParamRef = ref<InstanceType<typeof CommomParam>>(); | ||
| 41 | 31 | ||
| 42 | const [registerModal, { openModal }] = useModal(); | 32 | const [registerModal, { openModal }] = useModal(); |
| 43 | 33 | ||
| @@ -53,59 +43,42 @@ | @@ -53,59 +43,42 @@ | ||
| 53 | }); | 43 | }); |
| 54 | 44 | ||
| 55 | const getData = (d, f) => { | 45 | const getData = (d, f) => { |
| 56 | - if (f == 'output') { | 46 | + if (f == 'input') { |
| 57 | if (d.id !== null) { | 47 | if (d.id !== null) { |
| 58 | - const findIndex = unref(outputParamData).findIndex((f) => f.id == d.id); | ||
| 59 | - if (findIndex !== -1) unref(outputParamData).splice(findIndex, 1, d); | 48 | + const findIndex = unref(inputParamData).findIndex((f) => f.id == d.id); |
| 49 | + if (findIndex !== -1) unref(inputParamData).splice(findIndex, 1, d); | ||
| 60 | } else { | 50 | } else { |
| 61 | - unref(outputParamData).push({ ...d, id: buildUUID() }); | 51 | + unref(inputParamData).push({ ...d, id: buildUUID() }); |
| 62 | } | 52 | } |
| 63 | } | 53 | } |
| 64 | }; | 54 | }; |
| 65 | 55 | ||
| 66 | - const handleAddOutParam = () => { | ||
| 67 | - openModal(true, { | ||
| 68 | - isUpdate: true, | ||
| 69 | - flag: 'output', | ||
| 70 | - excludeStruct: false, | ||
| 71 | - }); | ||
| 72 | - }; | 56 | + const handleAddInParam = (b, o) => openModal(b, o); |
| 73 | 57 | ||
| 74 | - const deleteOutParItem = (index) => { | ||
| 75 | - unref(outputParamData).splice(index, 1); | ||
| 76 | - }; | 58 | + const handleEditInParam = (b, o) => openModal(b, o); |
| 77 | 59 | ||
| 78 | - const editOutParItem = (item) => { | ||
| 79 | - openModal(true, { | ||
| 80 | - isUpdate: false, | ||
| 81 | - record: item, | ||
| 82 | - flag: 'output', | ||
| 83 | - excludeStruct: false, | ||
| 84 | - }); | ||
| 85 | - }; | 60 | + const handleDelInParam = (i) => unref(inputParamData).splice(i, 1); |
| 86 | 61 | ||
| 87 | //回显数据 | 62 | //回显数据 |
| 88 | const setFormData = (v) => { | 63 | const setFormData = (v) => { |
| 89 | setFieldsValue(v[0]); | 64 | setFieldsValue(v[0]); |
| 90 | const { outputData } = v[0]; | 65 | const { outputData } = v[0]; |
| 91 | if (outputData !== undefined) { | 66 | if (outputData !== undefined) { |
| 92 | - outputParamData.value = [...new Array(outputData.length).keys()]; | ||
| 93 | - outputParamData.value = outputData; | 67 | + inputParamData.value = [...new Array(outputData.length).keys()]; |
| 68 | + inputParamData.value = outputData; | ||
| 94 | } | 69 | } |
| 95 | }; | 70 | }; |
| 96 | 71 | ||
| 97 | //获取数据 | 72 | //获取数据 |
| 98 | - const getStructList = () => { | ||
| 99 | - const val = unref(dynamicBindRef.outputParamItemRef)?.map((item: any) => item.getFormData()); | ||
| 100 | - return val; | ||
| 101 | - }; | 73 | + const getStructList = () => CommomParamInParamRef.value?.getInputStructList(); |
| 102 | 74 | ||
| 103 | async function getFormData() { | 75 | async function getFormData() { |
| 104 | const values = await validate(); | 76 | const values = await validate(); |
| 105 | if (!values) return; | 77 | if (!values) return; |
| 106 | const outputData = getStructList(); | 78 | const outputData = getStructList(); |
| 107 | const { outputParam, ...value } = values; | 79 | const { outputParam, ...value } = values; |
| 108 | - console.log(outputParam); | 80 | + const none = [outputParam]; //没用,防止eslint报未使用变量 |
| 81 | + console.log(none); | ||
| 109 | return { | 82 | return { |
| 110 | ...value, | 83 | ...value, |
| 111 | ...{ outputData }, | 84 | ...{ outputData }, |
| @@ -115,7 +88,7 @@ | @@ -115,7 +88,7 @@ | ||
| 115 | //清空数据 | 88 | //清空数据 |
| 116 | const resetFormData = () => { | 89 | const resetFormData = () => { |
| 117 | resetFields(); | 90 | resetFields(); |
| 118 | - outputParamData.value = []; | 91 | + inputParamData.value = []; |
| 119 | }; | 92 | }; |
| 120 | 93 | ||
| 121 | defineExpose({ | 94 | defineExpose({ |
| @@ -124,9 +97,4 @@ | @@ -124,9 +97,4 @@ | ||
| 124 | getFormData, | 97 | getFormData, |
| 125 | }); | 98 | }); |
| 126 | </script> | 99 | </script> |
| 127 | -<style lang="less" scoped> | ||
| 128 | - .add-style { | ||
| 129 | - color: #0170cc; | ||
| 130 | - cursor: pointer; | ||
| 131 | - } | ||
| 132 | -</style> | 100 | +<style lang="less" scoped></style> |
| @@ -2,44 +2,26 @@ | @@ -2,44 +2,26 @@ | ||
| 2 | <div> | 2 | <div> |
| 3 | <BasicForm @register="register"> | 3 | <BasicForm @register="register"> |
| 4 | <template #inputParamSlot> | 4 | <template #inputParamSlot> |
| 5 | - <div> | ||
| 6 | - <template v-for="(item, index) in inputParamData" :key="item.id"> | ||
| 7 | - <span style="display: none">{{ item }}</span> | ||
| 8 | - <InputParamItem | ||
| 9 | - :title="item.name" | ||
| 10 | - :item="item" | ||
| 11 | - class="mt-4" | ||
| 12 | - :index="index" | ||
| 13 | - :ref="dynamicBindRef.inputParamItemRef" | ||
| 14 | - @delete="deleteInParItem" | ||
| 15 | - @edit="editInParItem" | ||
| 16 | - /> | ||
| 17 | - </template> | ||
| 18 | - <div style="display: flex" :class="{ 'mt-2': inputParamData.length > 0 }"> | ||
| 19 | - <span class="add-style">+</span> | ||
| 20 | - <span class="add-style" @click="handleAddInParam">增加参数</span> | ||
| 21 | - </div> | ||
| 22 | - </div> | 5 | + <CommomParam |
| 6 | + ref="CommomParamInParamRef" | ||
| 7 | + :isInputParam="true" | ||
| 8 | + :isExcludeStruct="false" | ||
| 9 | + :inputParamData="inputParamData" | ||
| 10 | + @emitAddInParam="handleAddInParam" | ||
| 11 | + @emitEditInParam="handleEditInParam" | ||
| 12 | + @emitDeletelnParam="handleDelInParam" | ||
| 13 | + /> | ||
| 23 | </template> | 14 | </template> |
| 24 | <template #outputParamSlot> | 15 | <template #outputParamSlot> |
| 25 | - <div> | ||
| 26 | - <template v-for="(item, index) in outputParamData" :key="item.id"> | ||
| 27 | - <span style="display: none">{{ item }}</span> | ||
| 28 | - <InputParamItem | ||
| 29 | - :title="item.name" | ||
| 30 | - :item="item" | ||
| 31 | - class="mt-4" | ||
| 32 | - :index="index" | ||
| 33 | - :ref="dynamicBindRef.outputParamItemRef" | ||
| 34 | - @delete="deleteOutParItem" | ||
| 35 | - @edit="editOutParItem" | ||
| 36 | - /> | ||
| 37 | - </template> | ||
| 38 | - <div style="display: flex" :class="{ 'mt-2': outputParamData.length > 0 }"> | ||
| 39 | - <span class="add-style">+</span> | ||
| 40 | - <span class="add-style" @click="handleAddOutParam">增加参数</span> | ||
| 41 | - </div> | ||
| 42 | - </div> | 16 | + <CommomParam |
| 17 | + ref="CommomParamOutParamRef" | ||
| 18 | + :isOutputParam="true" | ||
| 19 | + :isExcludeStruct="false" | ||
| 20 | + :outputParamData="outputParamData" | ||
| 21 | + @emitAddOutParam="handleAddOutParam" | ||
| 22 | + @emitEditOutParam="handleEditOutParam" | ||
| 23 | + @emitDeleteOutParam="handleDelOutParam" | ||
| 24 | + /> | ||
| 43 | </template> | 25 | </template> |
| 44 | </BasicForm> | 26 | </BasicForm> |
| 45 | <AddParamsModal @register="registerModal" @data="getData" /> | 27 | <AddParamsModal @register="registerModal" @data="getData" /> |
| @@ -50,16 +32,15 @@ | @@ -50,16 +32,15 @@ | ||
| 50 | import { BasicForm, useForm } from '/@/components/Form'; | 32 | import { BasicForm, useForm } from '/@/components/Form'; |
| 51 | import { serviceSchemas } from './config'; | 33 | import { serviceSchemas } from './config'; |
| 52 | import { useModal } from '/@/components/Modal'; | 34 | import { useModal } from '/@/components/Modal'; |
| 53 | - import InputParamItem from './components/InputParamItem.vue'; | ||
| 54 | - import AddParamsModal from './components/AddParamsModal.vue'; | ||
| 55 | import { buildUUID } from '/@/utils/uuid'; | 35 | import { buildUUID } from '/@/utils/uuid'; |
| 36 | + import AddParamsModal from './components/AddParamsModal.vue'; | ||
| 37 | + import CommomParam from './components/CommomParam.vue'; | ||
| 56 | 38 | ||
| 57 | const inputParamData: any = ref([]); | 39 | const inputParamData: any = ref([]); |
| 58 | const outputParamData: any = ref([]); | 40 | const outputParamData: any = ref([]); |
| 59 | - const dynamicBindRef = { | ||
| 60 | - inputParamItemRef: ref([]), | ||
| 61 | - outputParamItemRef: ref([]), | ||
| 62 | - }; | 41 | + |
| 42 | + const CommomParamInParamRef = ref<InstanceType<typeof CommomParam>>(); | ||
| 43 | + const CommomParamOutParamRef = ref<InstanceType<typeof CommomParam>>(); | ||
| 63 | 44 | ||
| 64 | const [registerModal, { openModal }] = useModal(); | 45 | const [registerModal, { openModal }] = useModal(); |
| 65 | 46 | ||
| @@ -92,47 +73,17 @@ | @@ -92,47 +73,17 @@ | ||
| 92 | } | 73 | } |
| 93 | }; | 74 | }; |
| 94 | 75 | ||
| 95 | - const handleAddInParam = () => { | ||
| 96 | - openModal(true, { | ||
| 97 | - isUpdate: true, | ||
| 98 | - flag: 'input', | ||
| 99 | - excludeStruct: false, | ||
| 100 | - }); | ||
| 101 | - }; | 76 | + const handleAddInParam = (b, o) => openModal(b, o); |
| 102 | 77 | ||
| 103 | - const deleteInParItem = (index) => { | ||
| 104 | - unref(inputParamData).splice(index, 1); | ||
| 105 | - }; | 78 | + const handleEditInParam = (b, o) => openModal(b, o); |
| 106 | 79 | ||
| 107 | - const editInParItem = (item) => { | ||
| 108 | - openModal(true, { | ||
| 109 | - isUpdate: false, | ||
| 110 | - record: item, | ||
| 111 | - flag: 'input', | ||
| 112 | - excludeStruct: false, | ||
| 113 | - }); | ||
| 114 | - }; | 80 | + const handleDelInParam = (i) => unref(inputParamData).splice(i, 1); |
| 115 | 81 | ||
| 116 | - const handleAddOutParam = () => { | ||
| 117 | - openModal(true, { | ||
| 118 | - isUpdate: true, | ||
| 119 | - flag: 'output', | ||
| 120 | - excludeStruct: false, | ||
| 121 | - }); | ||
| 122 | - }; | 82 | + const handleAddOutParam = (b, o) => openModal(b, o); |
| 123 | 83 | ||
| 124 | - const deleteOutParItem = (index) => { | ||
| 125 | - unref(outputParamData).splice(index, 1); | ||
| 126 | - }; | 84 | + const handleEditOutParam = (b, o) => openModal(b, o); |
| 127 | 85 | ||
| 128 | - const editOutParItem = (item) => { | ||
| 129 | - openModal(true, { | ||
| 130 | - isUpdate: false, | ||
| 131 | - record: item, | ||
| 132 | - flag: 'output', | ||
| 133 | - excludeStruct: false, | ||
| 134 | - }); | ||
| 135 | - }; | 86 | + const handleDelOutParam = (i) => unref(outputParamData).splice(i, 1); |
| 136 | 87 | ||
| 137 | //回显数据 | 88 | //回显数据 |
| 138 | const setFormData = (v) => { | 89 | const setFormData = (v) => { |
| @@ -148,15 +99,9 @@ | @@ -148,15 +99,9 @@ | ||
| 148 | } | 99 | } |
| 149 | }; | 100 | }; |
| 150 | 101 | ||
| 151 | - const getInputStructList = () => { | ||
| 152 | - const val = unref(dynamicBindRef.inputParamItemRef)?.map((item: any) => item.getFormData()); | ||
| 153 | - return val; | ||
| 154 | - }; | 102 | + const getInputStructList = () => CommomParamInParamRef.value?.getInputStructList(); |
| 155 | 103 | ||
| 156 | - const getOutputStructList = () => { | ||
| 157 | - const val = unref(dynamicBindRef.outputParamItemRef)?.map((item: any) => item.getFormData()); | ||
| 158 | - return val; | ||
| 159 | - }; | 104 | + const getOutputStructList = () => CommomParamOutParamRef.value?.getOutputStructList(); |
| 160 | 105 | ||
| 161 | //获取数据 | 106 | //获取数据 |
| 162 | async function getFormData() { | 107 | async function getFormData() { |
| @@ -165,8 +110,8 @@ | @@ -165,8 +110,8 @@ | ||
| 165 | const inputParams = getInputStructList(); | 110 | const inputParams = getInputStructList(); |
| 166 | const outputParams = getOutputStructList(); | 111 | const outputParams = getOutputStructList(); |
| 167 | const { inputParam, outputParam, ...value } = values; | 112 | const { inputParam, outputParam, ...value } = values; |
| 168 | - console.log(inputParam); | ||
| 169 | - console.log(outputParam); | 113 | + const none = [inputParam, outputParam]; //没用,防止eslint报未使用变量 |
| 114 | + console.log(none); | ||
| 170 | return { | 115 | return { |
| 171 | ...value, | 116 | ...value, |
| 172 | ...{ inputParams }, | 117 | ...{ inputParams }, |
| @@ -187,9 +132,4 @@ | @@ -187,9 +132,4 @@ | ||
| 187 | getFormData, | 132 | getFormData, |
| 188 | }); | 133 | }); |
| 189 | </script> | 134 | </script> |
| 190 | -<style lang="less" scoped> | ||
| 191 | - .add-style { | ||
| 192 | - color: #0170cc; | ||
| 193 | - cursor: pointer; | ||
| 194 | - } | ||
| 195 | -</style> | 135 | +<style lang="less" scoped></style> |
| @@ -2,24 +2,15 @@ | @@ -2,24 +2,15 @@ | ||
| 2 | <div> | 2 | <div> |
| 3 | <BasicForm @register="registerForm"> | 3 | <BasicForm @register="registerForm"> |
| 4 | <template #structSlot> | 4 | <template #structSlot> |
| 5 | - <div> | ||
| 6 | - <template v-for="(item, index) in outputParamData" :key="item"> | ||
| 7 | - <span style="display: none">{{ item }}</span> | ||
| 8 | - <InputParamItem | ||
| 9 | - :title="item.name" | ||
| 10 | - :item="item" | ||
| 11 | - class="mt-4" | ||
| 12 | - :index="index" | ||
| 13 | - :ref="dynamicBindRef.outputParamItemRef" | ||
| 14 | - @delete="deleteOutParItem" | ||
| 15 | - @edit="editOutParItem" | ||
| 16 | - /> | ||
| 17 | - </template> | ||
| 18 | - <div style="display: flex" :class="{ 'mt-2': outputParamData.length > 0 }"> | ||
| 19 | - <span class="add-style">+</span> | ||
| 20 | - <span class="add-style" @click="handleAddOutParam">增加参数</span> | ||
| 21 | - </div> | ||
| 22 | - </div> | 5 | + <CommomParam |
| 6 | + ref="CommomParamInParamRef" | ||
| 7 | + :isExcludeStruct="true" | ||
| 8 | + :isInputParam="true" | ||
| 9 | + :inputParamData="inputParamData" | ||
| 10 | + @emitAddInParam="handleAddInParam" | ||
| 11 | + @emitEditInParam="handleEditInParam" | ||
| 12 | + @emitDeletelnParam="handleDelInParam" | ||
| 13 | + /> | ||
| 23 | </template> | 14 | </template> |
| 24 | </BasicForm> | 15 | </BasicForm> |
| 25 | <AddParamsModal @register="registerModal" @data="getData" /> | 16 | <AddParamsModal @register="registerModal" @data="getData" /> |
| @@ -30,16 +21,17 @@ | @@ -30,16 +21,17 @@ | ||
| 30 | import { BasicForm, useForm } from '/@/components/Form'; | 21 | import { BasicForm, useForm } from '/@/components/Form'; |
| 31 | import { addParamsSchemas } from '../config'; | 22 | import { addParamsSchemas } from '../config'; |
| 32 | import { useModal } from '/@/components/Modal'; | 23 | import { useModal } from '/@/components/Modal'; |
| 33 | - import InputParamItem from './InputParamItem.vue'; | ||
| 34 | - import AddParamsModal from './AddParamsModal.vue'; | ||
| 35 | import { buildUUID } from '/@/utils/uuid'; | 24 | import { buildUUID } from '/@/utils/uuid'; |
| 36 | import { useChangeTypeGetTypeForm, useUpdateFormExcludeStruct } from '../../hook/useTypeGetForm'; | 25 | import { useChangeTypeGetTypeForm, useUpdateFormExcludeStruct } from '../../hook/useTypeGetForm'; |
| 26 | + import AddParamsModal from './AddParamsModal.vue'; | ||
| 27 | + import CommomParam from './CommomParam.vue'; | ||
| 37 | 28 | ||
| 38 | defineEmits(['register']); | 29 | defineEmits(['register']); |
| 39 | - const outputParamData: any = ref([]); | ||
| 40 | - const dynamicBindRef = { | ||
| 41 | - outputParamItemRef: ref([]), | ||
| 42 | - }; | 30 | + |
| 31 | + const inputParamData: any = ref([]); | ||
| 32 | + | ||
| 33 | + const CommomParamInParamRef = ref<InstanceType<typeof CommomParam>>(); | ||
| 34 | + | ||
| 43 | const [registerModal, { openModal }] = useModal(); | 35 | const [registerModal, { openModal }] = useModal(); |
| 44 | 36 | ||
| 45 | const [registerForm, { validate, setFieldsValue, resetFields, updateSchema }] = useForm({ | 37 | const [registerForm, { validate, setFieldsValue, resetFields, updateSchema }] = useForm({ |
| @@ -54,41 +46,25 @@ | @@ -54,41 +46,25 @@ | ||
| 54 | }); | 46 | }); |
| 55 | 47 | ||
| 56 | const getData = (d, f) => { | 48 | const getData = (d, f) => { |
| 57 | - if (f == 'output') { | 49 | + if (f === 'input') { |
| 58 | if (d.id !== null) { | 50 | if (d.id !== null) { |
| 59 | - const findIndex = unref(outputParamData).findIndex((f) => f.id == d.id); | ||
| 60 | - if (findIndex !== -1) unref(outputParamData).splice(findIndex, 1, d); | 51 | + const findIndex = unref(inputParamData).findIndex((f) => f.id == d.id); |
| 52 | + if (findIndex !== -1) unref(inputParamData).splice(findIndex, 1, d); | ||
| 61 | } else { | 53 | } else { |
| 62 | - unref(outputParamData).push({ ...d, id: buildUUID() }); | 54 | + unref(inputParamData).push({ ...d, id: buildUUID() }); |
| 63 | } | 55 | } |
| 64 | } | 56 | } |
| 65 | }; | 57 | }; |
| 66 | 58 | ||
| 67 | - const handleAddOutParam = () => { | ||
| 68 | - openModal(true, { | ||
| 69 | - isUpdate: true, | ||
| 70 | - flag: 'output', | ||
| 71 | - excludeStruct: true, | ||
| 72 | - }); | ||
| 73 | - }; | 59 | + const handleAddInParam = (b, o) => openModal(b, o); |
| 74 | 60 | ||
| 75 | - const deleteOutParItem = (index) => { | ||
| 76 | - unref(outputParamData).splice(index, 1); | ||
| 77 | - }; | 61 | + const handleEditInParam = (b, o) => openModal(b, o); |
| 78 | 62 | ||
| 79 | - const editOutParItem = (item) => { | ||
| 80 | - openModal(true, { | ||
| 81 | - isUpdate: false, | ||
| 82 | - record: item, | ||
| 83 | - flag: 'output', | ||
| 84 | - excludeStruct: true, | ||
| 85 | - }); | ||
| 86 | - }; | 63 | + const handleDelInParam = (i) => unref(inputParamData).splice(i, 1); |
| 87 | 64 | ||
| 88 | const updateFormExcludeStruct = (flag) => useUpdateFormExcludeStruct(flag, updateSchema); | 65 | const updateFormExcludeStruct = (flag) => useUpdateFormExcludeStruct(flag, updateSchema); |
| 89 | 66 | ||
| 90 | - const getOutputStructList = () => | ||
| 91 | - unref(dynamicBindRef.outputParamItemRef)?.map((item: any) => item.getFormData()); | 67 | + const getOutputStructList = () => CommomParamInParamRef.value?.getInputStructList(); |
| 92 | 68 | ||
| 93 | const getBoolOrStruct = (T, S, B) => { | 69 | const getBoolOrStruct = (T, S, B) => { |
| 94 | if (T === 'STRUCT') { | 70 | if (T === 'STRUCT') { |
| @@ -112,76 +88,60 @@ | @@ -112,76 +88,60 @@ | ||
| 112 | const values = await validate(); | 88 | const values = await validate(); |
| 113 | if (!values) return; | 89 | if (!values) return; |
| 114 | const outputParams = getOutputStructList(); | 90 | const outputParams = getOutputStructList(); |
| 115 | - outputParams.forEach((f) => { | 91 | + outputParams?.forEach((f) => { |
| 116 | f.dataType = 'STRUCT'; | 92 | f.dataType = 'STRUCT'; |
| 117 | - f.childDataType = values.dataType; | ||
| 118 | - f.childName = values.name; | 93 | + f.childSpecsDTO = getIntOrText(f.childDataType, f.dataSpecs); |
| 94 | + f.childEnumSpecsDTO = getBoolOrStruct(f.childDataType, null, f.dataSpecsList); | ||
| 119 | }); | 95 | }); |
| 120 | const dataSpecs = useChangeTypeGetTypeForm(values.dataType, values); | 96 | const dataSpecs = useChangeTypeGetTypeForm(values.dataType, values); |
| 121 | const dataSpecsList = useChangeTypeGetTypeForm(values.dataType, values); | 97 | const dataSpecsList = useChangeTypeGetTypeForm(values.dataType, values); |
| 122 | - const { boolClose, boolOpen, step, unit, valueRange, ...value } = values; | ||
| 123 | - const none = { | ||
| 124 | - ...boolClose, | ||
| 125 | - ...boolOpen, | ||
| 126 | - ...step, | ||
| 127 | - ...unit, | ||
| 128 | - ...valueRange, | ||
| 129 | - }; | 98 | + const { boolClose, boolOpen, step, unit, valueRange, length, ...value } = values; |
| 99 | + const none = [valueRange, step, unit, boolOpen, boolClose, length]; //没用,防止eslint报未使用变量 | ||
| 130 | console.log(none); | 100 | console.log(none); |
| 131 | return { | 101 | return { |
| 102 | + ...{ childName: value.name }, | ||
| 103 | + ...{ childDataType: value.dataType }, | ||
| 132 | ...value, | 104 | ...value, |
| 133 | ...{ | 105 | ...{ |
| 134 | dataSpecs: getIntOrText(values.dataType, dataSpecs), | 106 | dataSpecs: getIntOrText(values.dataType, dataSpecs), |
| 135 | }, | 107 | }, |
| 136 | - // ...{ | ||
| 137 | - // childSpecsDTO: getIntOrText(values.dataType, dataSpecs), | ||
| 138 | - // }, | ||
| 139 | ...{ | 108 | ...{ |
| 140 | dataSpecsList: getBoolOrStruct(values.dataType, outputParams, dataSpecsList), | 109 | dataSpecsList: getBoolOrStruct(values.dataType, outputParams, dataSpecsList), |
| 141 | }, | 110 | }, |
| 142 | - // ...{ childEnumSpecsDTO: getBoolOrStruct(values.dataType, outputParams, dataSpecsList) }, | ||
| 143 | - // ...{ | ||
| 144 | - // childDataType: values.dataType, | ||
| 145 | - // childName: values.name, | ||
| 146 | - // }, | ||
| 147 | }; | 111 | }; |
| 148 | }; | 112 | }; |
| 149 | 113 | ||
| 150 | const setFormData = (v) => { | 114 | const setFormData = (v) => { |
| 151 | - setFieldsValue(v); | ||
| 152 | - setFieldsValue({ | ||
| 153 | - ...v.dataSpecs, | ||
| 154 | - valueRange: v.dataSpecs, | ||
| 155 | - }); | ||
| 156 | try { | 115 | try { |
| 116 | + setFieldsValue(v); | ||
| 157 | setFieldsValue({ | 117 | setFieldsValue({ |
| 158 | - boolClose: v.dataType == 'BOOL' ? v.dataSpecsList[0].name : '', | ||
| 159 | - boolOpen: v.dataType == 'BOOL' ? v.dataSpecsList[1].name : '', | 118 | + ...v.dataSpecs, |
| 119 | + valueRange: v.dataSpecs, | ||
| 160 | }); | 120 | }); |
| 161 | - } catch (e) { | ||
| 162 | - console.log(e); | ||
| 163 | - } | ||
| 164 | - const { dataSpecsList, dataType, childDataType } = v; | ||
| 165 | - if (childDataType == 'BOOL') { | ||
| 166 | setFieldsValue({ | 121 | setFieldsValue({ |
| 167 | - dataType: childDataType, | ||
| 168 | - boolClose: dataSpecsList[0].name, | ||
| 169 | - boolOpen: dataSpecsList[1].name, | 122 | + boolClose: v.dataType == 'BOOL' ? v.dataSpecsList[0].name : '', |
| 123 | + boolOpen: v.dataType == 'BOOL' ? v.dataSpecsList[1].name : '', | ||
| 170 | }); | 124 | }); |
| 171 | - } | ||
| 172 | - try { | 125 | + const { dataSpecsList, dataType, childDataType } = v; |
| 126 | + if (childDataType == 'BOOL') { | ||
| 127 | + setFieldsValue({ | ||
| 128 | + dataType: childDataType, | ||
| 129 | + boolClose: dataSpecsList[0].name, | ||
| 130 | + boolOpen: dataSpecsList[1].name, | ||
| 131 | + }); | ||
| 132 | + } | ||
| 173 | if (dataType == 'BOOL' || dataType == 'STRUCT') { | 133 | if (dataType == 'BOOL' || dataType == 'STRUCT') { |
| 174 | - outputParamData.value = [...new Array(dataSpecsList.length).keys()]; | ||
| 175 | - outputParamData.value = dataSpecsList; | 134 | + inputParamData.value = [...new Array(dataSpecsList.length).keys()]; |
| 135 | + inputParamData.value = dataSpecsList; | ||
| 176 | } | 136 | } |
| 177 | } catch (e) { | 137 | } catch (e) { |
| 178 | - console.log(e); | 138 | + console.log('AddParamForm error info', e); |
| 179 | } | 139 | } |
| 180 | }; | 140 | }; |
| 181 | 141 | ||
| 182 | const resetFormData = () => { | 142 | const resetFormData = () => { |
| 183 | resetFields(); | 143 | resetFields(); |
| 184 | - outputParamData.value = []; | 144 | + inputParamData.value = []; |
| 185 | }; | 145 | }; |
| 186 | 146 | ||
| 187 | defineExpose({ | 147 | defineExpose({ |
| 1 | +<template> | ||
| 2 | + <!-- 输入参数 --> | ||
| 3 | + <div v-if="isInputParam"> | ||
| 4 | + <template v-for="(item, index) in inputParamData" :key="item.name"> | ||
| 5 | + <span style="display: none">{{ item }}</span> | ||
| 6 | + <InputParamItem | ||
| 7 | + :title="item.name" | ||
| 8 | + :item="item" | ||
| 9 | + class="mt-4" | ||
| 10 | + :index="index" | ||
| 11 | + :ref="dynamicBindRef.inputParamItemRef" | ||
| 12 | + @delete="deleteInParItem" | ||
| 13 | + @edit="editInParItem" | ||
| 14 | + /> | ||
| 15 | + </template> | ||
| 16 | + <div style="display: flex" :class="{ 'mt-2': inputParamData.length > 0 }"> | ||
| 17 | + <span class="add-style">+</span> | ||
| 18 | + <span class="add-style" @click="handleAddInParam">增加参数</span> | ||
| 19 | + </div> | ||
| 20 | + </div> | ||
| 21 | + <!-- 输出参数 --> | ||
| 22 | + <div v-if="isOutputParam"> | ||
| 23 | + <template v-for="(item, index) in outputParamData" :key="item.name"> | ||
| 24 | + <span style="display: none">{{ item + index }}</span> | ||
| 25 | + <InputParamItem | ||
| 26 | + :title="item.name" | ||
| 27 | + :item="item" | ||
| 28 | + class="mt-4" | ||
| 29 | + :index="index" | ||
| 30 | + :ref="dynamicBindRef.outputParamItemRef" | ||
| 31 | + @delete="deleteOutParItem" | ||
| 32 | + @edit="editOutParItem" | ||
| 33 | + /> | ||
| 34 | + </template> | ||
| 35 | + <div style="display: flex" :class="{ 'mt-2': outputParamData.length > 0 }"> | ||
| 36 | + <span class="add-style">+</span> | ||
| 37 | + <span class="add-style" @click="handleAddOutParam">增加参数</span> | ||
| 38 | + </div> | ||
| 39 | + </div> | ||
| 40 | +</template> | ||
| 41 | +<script lang="ts" setup> | ||
| 42 | + import { ref, unref } from 'vue'; | ||
| 43 | + import InputParamItem from './InputParamItem.vue'; | ||
| 44 | + | ||
| 45 | + const props = defineProps({ | ||
| 46 | + isExcludeStruct: { type: Boolean, default: true }, | ||
| 47 | + isInputParam: { type: Boolean, default: false }, | ||
| 48 | + isOutputParam: { type: Boolean, default: false }, | ||
| 49 | + inputParamData: { | ||
| 50 | + type: Array as PropType<any[]>, | ||
| 51 | + default: () => [], | ||
| 52 | + }, | ||
| 53 | + outputParamData: { | ||
| 54 | + type: Array as PropType<any[]>, | ||
| 55 | + default: () => [], | ||
| 56 | + }, | ||
| 57 | + }); | ||
| 58 | + | ||
| 59 | + const emit = defineEmits([ | ||
| 60 | + 'emitAddInParam', | ||
| 61 | + 'emitEditInParam', | ||
| 62 | + 'emitDeletelnParam', | ||
| 63 | + 'emitAddOutParam', | ||
| 64 | + 'emitEditOutParam', | ||
| 65 | + 'emitDeleteOutParam', | ||
| 66 | + ]); | ||
| 67 | + | ||
| 68 | + const dynamicBindRef = { | ||
| 69 | + inputParamItemRef: ref([]), | ||
| 70 | + outputParamItemRef: ref([]), | ||
| 71 | + }; | ||
| 72 | + | ||
| 73 | + const commomAddParamObj = { | ||
| 74 | + isUpdate: true, | ||
| 75 | + excludeStruct: props.isExcludeStruct ? true : false, | ||
| 76 | + }; | ||
| 77 | + | ||
| 78 | + const commomEditParamObj = { | ||
| 79 | + isUpdate: false, | ||
| 80 | + excludeStruct: props.isExcludeStruct ? true : false, | ||
| 81 | + }; | ||
| 82 | + | ||
| 83 | + const handleAddInParam = () => { | ||
| 84 | + emit('emitAddInParam', true, { | ||
| 85 | + ...commomAddParamObj, | ||
| 86 | + flag: 'input', | ||
| 87 | + }); | ||
| 88 | + }; | ||
| 89 | + | ||
| 90 | + const deleteInParItem = (index) => { | ||
| 91 | + emit('emitDeletelnParam', index); | ||
| 92 | + }; | ||
| 93 | + | ||
| 94 | + const editInParItem = (item) => { | ||
| 95 | + emit('emitEditInParam', true, { | ||
| 96 | + ...commomEditParamObj, | ||
| 97 | + record: item, | ||
| 98 | + flag: 'input', | ||
| 99 | + }); | ||
| 100 | + }; | ||
| 101 | + | ||
| 102 | + const handleAddOutParam = () => { | ||
| 103 | + emit('emitAddOutParam', true, { | ||
| 104 | + ...commomAddParamObj, | ||
| 105 | + flag: 'output', | ||
| 106 | + }); | ||
| 107 | + }; | ||
| 108 | + | ||
| 109 | + const deleteOutParItem = (index) => { | ||
| 110 | + emit('emitDeleteOutParam', index); | ||
| 111 | + }; | ||
| 112 | + | ||
| 113 | + const editOutParItem = (item) => { | ||
| 114 | + emit('emitEditOutParam', true, { | ||
| 115 | + ...commomEditParamObj, | ||
| 116 | + record: item, | ||
| 117 | + flag: 'output', | ||
| 118 | + }); | ||
| 119 | + }; | ||
| 120 | + | ||
| 121 | + const getInputStructList = () => | ||
| 122 | + unref(dynamicBindRef.inputParamItemRef)?.map((item: any) => item.getFormData()); | ||
| 123 | + | ||
| 124 | + const getOutputStructList = () => | ||
| 125 | + unref(dynamicBindRef.outputParamItemRef)?.map((item: any) => item.getFormData()); | ||
| 126 | + | ||
| 127 | + defineExpose({ | ||
| 128 | + getInputStructList, | ||
| 129 | + getOutputStructList, | ||
| 130 | + }); | ||
| 131 | +</script> | ||
| 132 | +<style lang="less" scoped> | ||
| 133 | + .add-style { | ||
| 134 | + color: #0170cc; | ||
| 135 | + cursor: pointer; | ||
| 136 | + } | ||
| 137 | +</style> |
| @@ -5,15 +5,15 @@ export const mockData = { | @@ -5,15 +5,15 @@ export const mockData = { | ||
| 5 | _ppk: {}, | 5 | _ppk: {}, |
| 6 | events: [ | 6 | events: [ |
| 7 | { | 7 | { |
| 8 | - createTs: 1666596472189, | 8 | + createTs: 1668151471327, |
| 9 | custom: true, | 9 | custom: true, |
| 10 | - description: '监播动作结果上报事件', | ||
| 11 | - eventName: '监播动作结果上报事件', | 10 | + eventName: 'SDK运行状态', |
| 12 | eventType: 'INFO_EVENT_TYPE', | 11 | eventType: 'INFO_EVENT_TYPE', |
| 13 | - identifier: 'MonitorActionEvent', | 12 | + identifier: 'ContentSdkStatusEvent', |
| 14 | outputData: [ | 13 | outputData: [ |
| 15 | { | 14 | { |
| 16 | id: buildUUID(), | 15 | id: buildUUID(), |
| 16 | + | ||
| 17 | custom: true, | 17 | custom: true, |
| 18 | dataSpecs: { | 18 | dataSpecs: { |
| 19 | dataType: 'INT', | 19 | dataType: 'INT', |
| @@ -26,12 +26,13 @@ export const mockData = { | @@ -26,12 +26,13 @@ export const mockData = { | ||
| 26 | }, | 26 | }, |
| 27 | dataType: 'INT', | 27 | dataType: 'INT', |
| 28 | direction: 'PARAM_OUTPUT', | 28 | direction: 'PARAM_OUTPUT', |
| 29 | - identifier: 'ActionType', | ||
| 30 | - name: '监播操作类型', | 29 | + identifier: 'Status', |
| 30 | + name: '状态类型值', | ||
| 31 | paraOrder: 0, | 31 | paraOrder: 0, |
| 32 | }, | 32 | }, |
| 33 | { | 33 | { |
| 34 | id: buildUUID(), | 34 | id: buildUUID(), |
| 35 | + | ||
| 35 | custom: true, | 36 | custom: true, |
| 36 | dataSpecs: { | 37 | dataSpecs: { |
| 37 | dataType: 'TEXT', | 38 | dataType: 'TEXT', |
| @@ -39,293 +40,247 @@ export const mockData = { | @@ -39,293 +40,247 @@ export const mockData = { | ||
| 39 | }, | 40 | }, |
| 40 | dataType: 'TEXT', | 41 | dataType: 'TEXT', |
| 41 | direction: 'PARAM_OUTPUT', | 42 | direction: 'PARAM_OUTPUT', |
| 42 | - identifier: 'FileKey', | ||
| 43 | - name: '上传文件ossKey', | 43 | + identifier: 'Message', |
| 44 | + name: '消息内容', | ||
| 44 | paraOrder: 1, | 45 | paraOrder: 1, |
| 45 | }, | 46 | }, |
| 46 | { | 47 | { |
| 47 | id: buildUUID(), | 48 | id: buildUUID(), |
| 49 | + | ||
| 48 | custom: true, | 50 | custom: true, |
| 49 | dataSpecsList: [ | 51 | dataSpecsList: [ |
| 50 | { | 52 | { |
| 51 | id: buildUUID(), | 53 | id: buildUUID(), |
| 52 | - dataType: 'BOOL', | ||
| 53 | - name: '1', | ||
| 54 | - value: 0, | ||
| 55 | - }, | ||
| 56 | - { | ||
| 57 | - id: buildUUID(), | ||
| 58 | - dataType: 'BOOL', | ||
| 59 | - name: '0', | ||
| 60 | - value: 1, | ||
| 61 | - }, | ||
| 62 | - ], | ||
| 63 | - dataType: 'BOOL', | ||
| 64 | - direction: 'PARAM_OUTPUT', | ||
| 65 | - identifier: 'Extension', | ||
| 66 | - name: '扩展信息', | ||
| 67 | - paraOrder: 2, | ||
| 68 | - }, | ||
| 69 | - { | ||
| 70 | - id: buildUUID(), | ||
| 71 | - custom: true, | ||
| 72 | - dataSpecsList: [ | ||
| 73 | - { | ||
| 74 | - id: buildUUID(), | ||
| 75 | - childDataType: 'DOUBLE', | ||
| 76 | - childName: '峰值', | 54 | + |
| 55 | + childDataType: 'INT', | ||
| 56 | + childName: '测试结构体回显1', | ||
| 77 | childSpecsDTO: { | 57 | childSpecsDTO: { |
| 78 | - dataType: 'DOUBLE', | ||
| 79 | - max: '33', | ||
| 80 | - min: '22', | ||
| 81 | - step: '2', | ||
| 82 | - unit: 'm³/s', | ||
| 83 | - unitName: '立方米每秒', | 58 | + dataType: 'INT', |
| 59 | + max: '22', | ||
| 60 | + min: '11', | ||
| 61 | + step: '3', | ||
| 84 | }, | 62 | }, |
| 85 | custom: true, | 63 | custom: true, |
| 86 | dataSpecs: { | 64 | dataSpecs: { |
| 87 | - dataType: 'DOUBLE', | ||
| 88 | - max: '33', | ||
| 89 | - min: '22', | ||
| 90 | - step: '2', | ||
| 91 | - unit: 'm³/s', | ||
| 92 | - unitName: '立方米每秒', | 65 | + dataType: 'INT', |
| 66 | + max: '22', | ||
| 67 | + min: '11', | ||
| 68 | + step: '3', | ||
| 93 | }, | 69 | }, |
| 94 | dataType: 'STRUCT', | 70 | dataType: 'STRUCT', |
| 95 | - identifier: 'bass', | 71 | + identifier: '1', |
| 96 | isStd: 0, | 72 | isStd: 0, |
| 97 | - name: '峰值', | 73 | + name: '测试结构体回显1', |
| 98 | }, | 74 | }, |
| 99 | { | 75 | { |
| 100 | id: buildUUID(), | 76 | id: buildUUID(), |
| 77 | + | ||
| 101 | childDataType: 'BOOL', | 78 | childDataType: 'BOOL', |
| 102 | childEnumSpecsDTO: [ | 79 | childEnumSpecsDTO: [ |
| 103 | { | 80 | { |
| 104 | dataType: 'BOOL', | 81 | dataType: 'BOOL', |
| 105 | - name: '1', | 82 | + name: 'ffg', |
| 106 | value: 0, | 83 | value: 0, |
| 107 | }, | 84 | }, |
| 108 | { | 85 | { |
| 109 | dataType: 'BOOL', | 86 | dataType: 'BOOL', |
| 110 | - name: '0', | 87 | + name: 'ggg', |
| 111 | value: 1, | 88 | value: 1, |
| 112 | }, | 89 | }, |
| 113 | ], | 90 | ], |
| 114 | - childName: '平均速率', | 91 | + childName: '测试结构体回显2', |
| 115 | custom: true, | 92 | custom: true, |
| 116 | dataSpecsList: [ | 93 | dataSpecsList: [ |
| 117 | { | 94 | { |
| 118 | - id: buildUUID(), | ||
| 119 | dataType: 'BOOL', | 95 | dataType: 'BOOL', |
| 120 | - name: '1', | 96 | + name: 'ffg', |
| 121 | value: 0, | 97 | value: 0, |
| 122 | }, | 98 | }, |
| 123 | { | 99 | { |
| 124 | - id: buildUUID(), | ||
| 125 | dataType: 'BOOL', | 100 | dataType: 'BOOL', |
| 126 | - name: '0', | 101 | + name: 'ggg', |
| 127 | value: 1, | 102 | value: 1, |
| 128 | }, | 103 | }, |
| 129 | ], | 104 | ], |
| 130 | dataType: 'STRUCT', | 105 | dataType: 'STRUCT', |
| 131 | - identifier: 'average', | 106 | + identifier: '3', |
| 132 | isStd: 0, | 107 | isStd: 0, |
| 133 | - name: '平均速率', | 108 | + name: '测试结构体回显2', |
| 134 | }, | 109 | }, |
| 135 | - ], | ||
| 136 | - dataType: 'STRUCT', | ||
| 137 | - direction: 'PARAM_OUTPUT', | ||
| 138 | - identifier: 'ceshi', | ||
| 139 | - name: '网速', | ||
| 140 | - paraOrder: 3, | ||
| 141 | - }, | ||
| 142 | - ], | ||
| 143 | - productKey: 'hsrnXEfGFDv', | ||
| 144 | - required: false, | ||
| 145 | - }, | ||
| 146 | - ], | ||
| 147 | - productKey: 'hsrnXEfGFDv', | ||
| 148 | - properties: [ | ||
| 149 | - // { | ||
| 150 | - // createTs: 1667876342551, | ||
| 151 | - // custom: true, | ||
| 152 | - // customFlag: true, | ||
| 153 | - // dataSpecs: { | ||
| 154 | - // dataType: 'TEXT', | ||
| 155 | - // length: 10240, | ||
| 156 | - // }, | ||
| 157 | - // dataType: 'TEXT', | ||
| 158 | - // description: '内容推荐', | ||
| 159 | - // identifier: 'Brightness', | ||
| 160 | - // name: '亮度百分比', | ||
| 161 | - // productKey: 'hsrnXEfGFDv', | ||
| 162 | - // required: false, | ||
| 163 | - // rwFlag: 'READ_WRITE', | ||
| 164 | - // std: false, | ||
| 165 | - // }, | ||
| 166 | - // { | ||
| 167 | - // createTs: 1667876342551, | ||
| 168 | - // custom: true, | ||
| 169 | - // customFlag: true, | ||
| 170 | - // dataSpecsList: [ | ||
| 171 | - // { | ||
| 172 | - // dataType: 'BOOL', | ||
| 173 | - // name: '开', | ||
| 174 | - // value: 0, | ||
| 175 | - // }, | ||
| 176 | - // { | ||
| 177 | - // dataType: 'BOOL', | ||
| 178 | - // name: '关', | ||
| 179 | - // value: 1, | ||
| 180 | - // }, | ||
| 181 | - // ], | ||
| 182 | - // dataType: 'BOOL', | ||
| 183 | - // description: '内容推荐', | ||
| 184 | - // identifier: 'Brightness', | ||
| 185 | - // name: '亮度百分比', | ||
| 186 | - // productKey: 'hsrnXEfGFDv', | ||
| 187 | - // required: false, | ||
| 188 | - // rwFlag: 'READ_WRITE', | ||
| 189 | - // std: false, | ||
| 190 | - // }, | ||
| 191 | - // { | ||
| 192 | - // createTs: 1667876342551, | ||
| 193 | - // custom: true, | ||
| 194 | - // customFlag: true, | ||
| 195 | - // dataSpecs: { | ||
| 196 | - // dataType: 'INT', | ||
| 197 | - // max: '1024', | ||
| 198 | - // min: '-1024', | ||
| 199 | - // step: '1', | ||
| 200 | - // unit: 'var', | ||
| 201 | - // }, | ||
| 202 | - // dataType: 'INT', | ||
| 203 | - // description: '内容推荐。0:未知状态,1:熄屏,2:亮屏', | ||
| 204 | - // identifier: 'RunningState', | ||
| 205 | - // name: '运行状态', | ||
| 206 | - // productKey: 'hsrnXEfGFDv', | ||
| 207 | - // required: false, | ||
| 208 | - // rwFlag: 'READ_WRITE', | ||
| 209 | - // std: false, | ||
| 210 | - // }, | ||
| 211 | - { | ||
| 212 | - createTs: 1666604372638, | ||
| 213 | - custom: true, | ||
| 214 | - customFlag: true, | ||
| 215 | - dataSpecsList: [ | ||
| 216 | - { | ||
| 217 | - childDataType: 'BOOL', | ||
| 218 | - childEnumSpecsDTO: [ | ||
| 219 | { | 110 | { |
| 220 | - dataType: 'BOOL', | ||
| 221 | - name: '左眼', | ||
| 222 | - value: 0, | 111 | + id: buildUUID(), |
| 112 | + | ||
| 113 | + childDataType: 'TEXT', | ||
| 114 | + childName: '测试结构体回显3', | ||
| 115 | + childSpecsDTO: { | ||
| 116 | + dataType: 'TEXT', | ||
| 117 | + length: 10240, | ||
| 118 | + }, | ||
| 119 | + custom: true, | ||
| 120 | + dataSpecs: { | ||
| 121 | + dataType: 'TEXT', | ||
| 122 | + length: 10240, | ||
| 123 | + }, | ||
| 124 | + dataType: 'STRUCT', | ||
| 125 | + identifier: '33', | ||
| 126 | + isStd: 0, | ||
| 127 | + name: '测试结构体回显3', | ||
| 223 | }, | 128 | }, |
| 224 | { | 129 | { |
| 225 | - dataType: 'BOOL', | ||
| 226 | - name: '右眼', | ||
| 227 | - value: 1, | 130 | + id: buildUUID(), |
| 131 | + | ||
| 132 | + childDataType: 'DOUBLE', | ||
| 133 | + childName: '测试结构体回显4', | ||
| 134 | + childSpecsDTO: { | ||
| 135 | + dataType: 'DOUBLE', | ||
| 136 | + max: '44.0', | ||
| 137 | + min: '33.0', | ||
| 138 | + step: '5.0', | ||
| 139 | + unit: 'gear', | ||
| 140 | + unitName: '档', | ||
| 141 | + }, | ||
| 142 | + custom: true, | ||
| 143 | + dataSpecs: { | ||
| 144 | + dataType: 'DOUBLE', | ||
| 145 | + max: '44.0', | ||
| 146 | + min: '33.0', | ||
| 147 | + step: '5.0', | ||
| 148 | + unit: 'gear', | ||
| 149 | + unitName: '档', | ||
| 150 | + }, | ||
| 151 | + dataType: 'STRUCT', | ||
| 152 | + identifier: '4', | ||
| 153 | + isStd: 0, | ||
| 154 | + name: '测试结构体回显4', | ||
| 228 | }, | 155 | }, |
| 229 | ], | 156 | ], |
| 230 | - childName: '眼睛', | 157 | + dataType: 'STRUCT', |
| 158 | + direction: 'PARAM_OUTPUT', | ||
| 159 | + identifier: '1', | ||
| 160 | + name: '测试结构体回显', | ||
| 161 | + paraOrder: 2, | ||
| 162 | + }, | ||
| 163 | + { | ||
| 164 | + id: buildUUID(), | ||
| 165 | + | ||
| 231 | custom: true, | 166 | custom: true, |
| 232 | dataSpecsList: [ | 167 | dataSpecsList: [ |
| 233 | { | 168 | { |
| 234 | dataType: 'BOOL', | 169 | dataType: 'BOOL', |
| 235 | - name: '左眼', | 170 | + name: 'er', |
| 236 | value: 0, | 171 | value: 0, |
| 237 | }, | 172 | }, |
| 238 | { | 173 | { |
| 239 | dataType: 'BOOL', | 174 | dataType: 'BOOL', |
| 240 | - name: '右眼', | 175 | + name: 'dd', |
| 241 | value: 1, | 176 | value: 1, |
| 242 | }, | 177 | }, |
| 243 | ], | 178 | ], |
| 244 | - dataType: 'STRUCT', | ||
| 245 | - identifier: 'Eye', | ||
| 246 | - isStd: 0, | ||
| 247 | - name: '眼睛', | 179 | + dataType: 'BOOL', |
| 180 | + direction: 'PARAM_OUTPUT', | ||
| 181 | + identifier: '2212', | ||
| 182 | + name: 'bool类型', | ||
| 183 | + paraOrder: 3, | ||
| 248 | }, | 184 | }, |
| 185 | + ], | ||
| 186 | + productKey: 'hsrnXEfGFDv', | ||
| 187 | + required: false, | ||
| 188 | + }, | ||
| 189 | + ], | ||
| 190 | + productKey: 'hsrnXEfGFDv', | ||
| 191 | + properties: [ | ||
| 192 | + { | ||
| 193 | + createTs: 1668152010679, | ||
| 194 | + custom: true, | ||
| 195 | + customFlag: true, | ||
| 196 | + dataSpecsList: [ | ||
| 249 | { | 197 | { |
| 250 | - childDataType: 'INT', | ||
| 251 | - childName: '鼻子', | 198 | + id: buildUUID(), |
| 199 | + | ||
| 200 | + childDataType: 'TEXT', | ||
| 201 | + childName: '测试化学需氧量text类型', | ||
| 252 | childSpecsDTO: { | 202 | childSpecsDTO: { |
| 253 | - dataType: 'INT', | ||
| 254 | - max: '22', | ||
| 255 | - min: '12', | ||
| 256 | - step: '5', | ||
| 257 | - unit: '只', | ||
| 258 | - unitName: '只', | 203 | + dataType: 'TEXT', |
| 204 | + length: 10240, | ||
| 259 | }, | 205 | }, |
| 260 | custom: true, | 206 | custom: true, |
| 261 | dataSpecs: { | 207 | dataSpecs: { |
| 262 | - dataType: 'INT', | ||
| 263 | - max: '22', | ||
| 264 | - min: '12', | ||
| 265 | - step: '5', | ||
| 266 | - unit: '只', | ||
| 267 | - unitName: '只', | 208 | + dataType: 'TEXT', |
| 209 | + length: 10240, | ||
| 268 | }, | 210 | }, |
| 269 | dataType: 'STRUCT', | 211 | dataType: 'STRUCT', |
| 270 | - identifier: 'Boless', | 212 | + identifier: 'text', |
| 271 | isStd: 0, | 213 | isStd: 0, |
| 272 | - name: '鼻子', | 214 | + name: '测试化学需氧量text类型', |
| 273 | }, | 215 | }, |
| 274 | { | 216 | { |
| 275 | - childDataType: 'TEXT', | ||
| 276 | - childName: '脸颊', | 217 | + id: buildUUID(), |
| 218 | + | ||
| 219 | + childDataType: 'INT', | ||
| 220 | + childName: '测试化学需氧量int类型', | ||
| 277 | childSpecsDTO: { | 221 | childSpecsDTO: { |
| 278 | - dataType: 'TEXT', | ||
| 279 | - length: 10240, | 222 | + dataType: 'INT', |
| 223 | + max: '22', | ||
| 224 | + min: '11', | ||
| 225 | + step: '2', | ||
| 226 | + unit: 'mm/hour', | ||
| 227 | + unitName: '降雨量', | ||
| 280 | }, | 228 | }, |
| 281 | custom: true, | 229 | custom: true, |
| 282 | dataSpecs: { | 230 | dataSpecs: { |
| 283 | - dataType: 'TEXT', | ||
| 284 | - length: 10240, | 231 | + dataType: 'INT', |
| 232 | + max: '22', | ||
| 233 | + min: '11', | ||
| 234 | + step: '2', | ||
| 235 | + unit: 'mm/hour', | ||
| 236 | + unitName: '降雨量', | ||
| 285 | }, | 237 | }, |
| 286 | dataType: 'STRUCT', | 238 | dataType: 'STRUCT', |
| 287 | - identifier: 'Facebook', | 239 | + identifier: 'ibt', |
| 288 | isStd: 0, | 240 | isStd: 0, |
| 289 | - name: '脸颊', | 241 | + name: '测试化学需氧量int类型', |
| 290 | }, | 242 | }, |
| 291 | { | 243 | { |
| 244 | + id: buildUUID(), | ||
| 245 | + | ||
| 292 | childDataType: 'BOOL', | 246 | childDataType: 'BOOL', |
| 293 | childEnumSpecsDTO: [ | 247 | childEnumSpecsDTO: [ |
| 294 | { | 248 | { |
| 295 | dataType: 'BOOL', | 249 | dataType: 'BOOL', |
| 296 | - name: '左耳', | 250 | + name: '需要', |
| 297 | value: 0, | 251 | value: 0, |
| 298 | }, | 252 | }, |
| 299 | { | 253 | { |
| 300 | dataType: 'BOOL', | 254 | dataType: 'BOOL', |
| 301 | - name: '右耳', | 255 | + name: '不需要', |
| 302 | value: 1, | 256 | value: 1, |
| 303 | }, | 257 | }, |
| 304 | ], | 258 | ], |
| 305 | - childName: '耳朵', | 259 | + childName: '测试化学需氧量bool类型', |
| 306 | custom: true, | 260 | custom: true, |
| 307 | dataSpecsList: [ | 261 | dataSpecsList: [ |
| 308 | { | 262 | { |
| 309 | dataType: 'BOOL', | 263 | dataType: 'BOOL', |
| 310 | - name: '左耳', | 264 | + name: '需要', |
| 311 | value: 0, | 265 | value: 0, |
| 312 | }, | 266 | }, |
| 313 | { | 267 | { |
| 314 | dataType: 'BOOL', | 268 | dataType: 'BOOL', |
| 315 | - name: '右耳', | 269 | + name: '不需要', |
| 316 | value: 1, | 270 | value: 1, |
| 317 | }, | 271 | }, |
| 318 | ], | 272 | ], |
| 319 | dataType: 'STRUCT', | 273 | dataType: 'STRUCT', |
| 320 | - identifier: 'Eyear', | 274 | + identifier: 'bol', |
| 321 | isStd: 0, | 275 | isStd: 0, |
| 322 | - name: '耳朵', | 276 | + name: '测试化学需氧量bool类型', |
| 323 | }, | 277 | }, |
| 324 | ], | 278 | ], |
| 325 | dataType: 'STRUCT', | 279 | dataType: 'STRUCT', |
| 326 | - description: '用于人脸特征下发,基于人脸门禁1.0物模型\n设备级开关', | ||
| 327 | - identifier: 'SupportFaceFeature', | ||
| 328 | - name: '支持人脸特征下发', | 280 | + description: |
| 281 | + '化学需氧量COD(Chemical Oxygen Demand)是以化学方法测量水样中需要被氧化的还原性物质的量', | ||
| 282 | + identifier: 'COD', | ||
| 283 | + name: '化学需氧量', | ||
| 329 | productKey: 'hsrnXEfGFDv', | 284 | productKey: 'hsrnXEfGFDv', |
| 330 | required: false, | 285 | required: false, |
| 331 | rwFlag: 'READ_WRITE', | 286 | rwFlag: 'READ_WRITE', |
| @@ -334,13 +289,14 @@ export const mockData = { | @@ -334,13 +289,14 @@ export const mockData = { | ||
| 334 | ], | 289 | ], |
| 335 | services: [ | 290 | services: [ |
| 336 | { | 291 | { |
| 337 | - callType: 'ASYNC', | ||
| 338 | - createTs: 1667963835032, | 292 | + callType: 'SYNC', |
| 293 | + createTs: 1668148397946, | ||
| 339 | custom: true, | 294 | custom: true, |
| 340 | - description: '配置模型', | ||
| 341 | - identifier: 'ConfigModel', | 295 | + description: '删除模型1', |
| 296 | + identifier: 'DeleteModel', | ||
| 342 | inputParams: [ | 297 | inputParams: [ |
| 343 | { | 298 | { |
| 299 | + id: buildUUID(), | ||
| 344 | custom: true, | 300 | custom: true, |
| 345 | dataSpecs: { | 301 | dataSpecs: { |
| 346 | dataType: 'TEXT', | 302 | dataType: 'TEXT', |
| @@ -349,100 +305,269 @@ export const mockData = { | @@ -349,100 +305,269 @@ export const mockData = { | ||
| 349 | dataType: 'TEXT', | 305 | dataType: 'TEXT', |
| 350 | direction: 'PARAM_INPUT', | 306 | direction: 'PARAM_INPUT', |
| 351 | identifier: 'AlgorithmID', | 307 | identifier: 'AlgorithmID', |
| 352 | - name: '算法任务-人脸识别', | 308 | + name: 'text类型', |
| 353 | paraOrder: 0, | 309 | paraOrder: 0, |
| 354 | }, | 310 | }, |
| 355 | { | 311 | { |
| 312 | + id: buildUUID(), | ||
| 313 | + custom: true, | ||
| 314 | + dataSpecsList: [ | ||
| 315 | + { | ||
| 316 | + id: buildUUID(), | ||
| 317 | + | ||
| 318 | + childDataType: 'INT', | ||
| 319 | + childName: '结构体里面1', | ||
| 320 | + childSpecsDTO: { | ||
| 321 | + dataType: 'INT', | ||
| 322 | + max: '22', | ||
| 323 | + min: '11', | ||
| 324 | + step: '3', | ||
| 325 | + unit: 'W/㎡', | ||
| 326 | + unitName: '太阳总辐射', | ||
| 327 | + }, | ||
| 328 | + custom: true, | ||
| 329 | + dataSpecs: { | ||
| 330 | + dataType: 'INT', | ||
| 331 | + max: '22', | ||
| 332 | + min: '11', | ||
| 333 | + step: '3', | ||
| 334 | + unit: 'W/㎡', | ||
| 335 | + unitName: '太阳总辐射', | ||
| 336 | + }, | ||
| 337 | + dataType: 'STRUCT', | ||
| 338 | + identifier: '1', | ||
| 339 | + isStd: 0, | ||
| 340 | + name: '结构体里面1', | ||
| 341 | + }, | ||
| 342 | + { | ||
| 343 | + id: buildUUID(), | ||
| 344 | + | ||
| 345 | + childDataType: 'BOOL', | ||
| 346 | + childEnumSpecsDTO: [ | ||
| 347 | + { | ||
| 348 | + dataType: 'BOOL', | ||
| 349 | + name: '关', | ||
| 350 | + value: 0, | ||
| 351 | + }, | ||
| 352 | + { | ||
| 353 | + dataType: 'BOOL', | ||
| 354 | + name: '开', | ||
| 355 | + value: 1, | ||
| 356 | + }, | ||
| 357 | + ], | ||
| 358 | + childName: '结构体里面2', | ||
| 359 | + custom: true, | ||
| 360 | + dataSpecsList: [ | ||
| 361 | + { | ||
| 362 | + dataType: 'BOOL', | ||
| 363 | + name: '关', | ||
| 364 | + value: 0, | ||
| 365 | + }, | ||
| 366 | + { | ||
| 367 | + dataType: 'BOOL', | ||
| 368 | + name: '开', | ||
| 369 | + value: 1, | ||
| 370 | + }, | ||
| 371 | + ], | ||
| 372 | + dataType: 'STRUCT', | ||
| 373 | + identifier: '2', | ||
| 374 | + isStd: 0, | ||
| 375 | + name: '结构体里面2', | ||
| 376 | + }, | ||
| 377 | + { | ||
| 378 | + id: buildUUID(), | ||
| 379 | + | ||
| 380 | + childDataType: 'TEXT', | ||
| 381 | + childName: '结构体里面3', | ||
| 382 | + childSpecsDTO: { | ||
| 383 | + dataType: 'TEXT', | ||
| 384 | + length: 10240, | ||
| 385 | + }, | ||
| 386 | + custom: true, | ||
| 387 | + dataSpecs: { | ||
| 388 | + dataType: 'TEXT', | ||
| 389 | + length: 10240, | ||
| 390 | + }, | ||
| 391 | + dataType: 'STRUCT', | ||
| 392 | + identifier: '3', | ||
| 393 | + isStd: 0, | ||
| 394 | + name: '结构体里面3', | ||
| 395 | + }, | ||
| 396 | + ], | ||
| 397 | + dataType: 'STRUCT', | ||
| 398 | + direction: 'PARAM_INPUT', | ||
| 399 | + identifier: '1', | ||
| 400 | + name: '结构体里面数据', | ||
| 401 | + paraOrder: 1, | ||
| 402 | + }, | ||
| 403 | + { | ||
| 404 | + id: buildUUID(), | ||
| 405 | + | ||
| 406 | + custom: true, | ||
| 407 | + dataSpecsList: [ | ||
| 408 | + { | ||
| 409 | + dataType: 'BOOL', | ||
| 410 | + name: '开启', | ||
| 411 | + value: 0, | ||
| 412 | + }, | ||
| 413 | + { | ||
| 414 | + dataType: 'BOOL', | ||
| 415 | + name: '战斗', | ||
| 416 | + value: 1, | ||
| 417 | + }, | ||
| 418 | + ], | ||
| 419 | + dataType: 'BOOL', | ||
| 420 | + direction: 'PARAM_INPUT', | ||
| 421 | + identifier: 'bool', | ||
| 422 | + name: '布尔类型', | ||
| 423 | + paraOrder: 2, | ||
| 424 | + }, | ||
| 425 | + { | ||
| 426 | + id: buildUUID(), | ||
| 427 | + | ||
| 356 | custom: true, | 428 | custom: true, |
| 357 | dataSpecs: { | 429 | dataSpecs: { |
| 358 | - dataType: 'DOUBLE', | 430 | + dataType: 'INT', |
| 359 | max: '22', | 431 | max: '22', |
| 360 | min: '11', | 432 | min: '11', |
| 361 | - step: '3', | ||
| 362 | - unit: 'mm/hour', | ||
| 363 | - unitName: '降雨量', | 433 | + step: '4', |
| 434 | + unit: 'dS/m', | ||
| 435 | + unitName: '土壤EC值', | ||
| 364 | }, | 436 | }, |
| 365 | - dataType: 'DOUBLE', | 437 | + dataType: 'INT', |
| 366 | direction: 'PARAM_INPUT', | 438 | direction: 'PARAM_INPUT', |
| 367 | - identifier: 'Threshold', | ||
| 368 | - name: '结果置信度阈值', | ||
| 369 | - paraOrder: 1, | 439 | + identifier: 'int', |
| 440 | + name: 'int类型', | ||
| 441 | + paraOrder: 3, | ||
| 370 | }, | 442 | }, |
| 443 | + ], | ||
| 444 | + outputParams: [ | ||
| 371 | { | 445 | { |
| 446 | + id: buildUUID(), | ||
| 447 | + | ||
| 448 | + custom: true, | ||
| 449 | + dataSpecs: { | ||
| 450 | + dataType: 'TEXT', | ||
| 451 | + length: 10240, | ||
| 452 | + }, | ||
| 453 | + dataType: 'TEXT', | ||
| 454 | + direction: 'PARAM_OUTPUT', | ||
| 455 | + identifier: '2', | ||
| 456 | + name: '测试输出回显text类型', | ||
| 457 | + paraOrder: 0, | ||
| 458 | + }, | ||
| 459 | + { | ||
| 460 | + id: buildUUID(), | ||
| 461 | + | ||
| 372 | custom: true, | 462 | custom: true, |
| 373 | dataSpecs: { | 463 | dataSpecs: { |
| 374 | dataType: 'INT', | 464 | dataType: 'INT', |
| 375 | - max: '1024', | ||
| 376 | - min: '-1024', | ||
| 377 | - step: '1', | 465 | + max: '22', |
| 466 | + min: '11', | ||
| 467 | + step: '3', | ||
| 378 | unit: 'W/㎡', | 468 | unit: 'W/㎡', |
| 379 | unitName: '太阳总辐射', | 469 | unitName: '太阳总辐射', |
| 380 | }, | 470 | }, |
| 381 | dataType: 'INT', | 471 | dataType: 'INT', |
| 382 | - direction: 'PARAM_INPUT', | ||
| 383 | - identifier: 'Switch', | ||
| 384 | - name: '功能开关', | ||
| 385 | - paraOrder: 2, | 472 | + direction: 'PARAM_OUTPUT', |
| 473 | + identifier: 'int', | ||
| 474 | + name: '测试输出回显int类型', | ||
| 475 | + paraOrder: 1, | ||
| 386 | }, | 476 | }, |
| 387 | { | 477 | { |
| 478 | + id: buildUUID(), | ||
| 479 | + | ||
| 388 | custom: true, | 480 | custom: true, |
| 389 | dataSpecsList: [ | 481 | dataSpecsList: [ |
| 390 | { | 482 | { |
| 391 | dataType: 'BOOL', | 483 | dataType: 'BOOL', |
| 392 | - name: '关', | 484 | + name: 'd', |
| 393 | value: 0, | 485 | value: 0, |
| 394 | }, | 486 | }, |
| 395 | { | 487 | { |
| 396 | dataType: 'BOOL', | 488 | dataType: 'BOOL', |
| 397 | - name: '开', | 489 | + name: 'ff', |
| 398 | value: 1, | 490 | value: 1, |
| 399 | }, | 491 | }, |
| 400 | ], | 492 | ], |
| 401 | dataType: 'BOOL', | 493 | dataType: 'BOOL', |
| 402 | - direction: 'PARAM_INPUT', | ||
| 403 | - identifier: 'NumThreads', | ||
| 404 | - name: '使用线程数', | ||
| 405 | - paraOrder: 3, | 494 | + direction: 'PARAM_OUTPUT', |
| 495 | + identifier: 'bol', | ||
| 496 | + name: '测试输出回显bool类型', | ||
| 497 | + paraOrder: 2, | ||
| 406 | }, | 498 | }, |
| 407 | { | 499 | { |
| 500 | + id: buildUUID(), | ||
| 501 | + | ||
| 408 | custom: true, | 502 | custom: true, |
| 409 | dataSpecsList: [ | 503 | dataSpecsList: [ |
| 410 | { | 504 | { |
| 505 | + id: buildUUID(), | ||
| 506 | + | ||
| 507 | + childDataType: 'INT', | ||
| 508 | + childName: '测试输出回显结构体类型1', | ||
| 509 | + childSpecsDTO: { | ||
| 510 | + dataType: 'INT', | ||
| 511 | + max: '22', | ||
| 512 | + min: '11', | ||
| 513 | + step: '4', | ||
| 514 | + unit: 'mm/hour', | ||
| 515 | + unitName: '降雨量', | ||
| 516 | + }, | ||
| 517 | + custom: true, | ||
| 518 | + dataSpecs: { | ||
| 519 | + dataType: 'INT', | ||
| 520 | + max: '22', | ||
| 521 | + min: '11', | ||
| 522 | + step: '4', | ||
| 523 | + unit: 'mm/hour', | ||
| 524 | + unitName: '降雨量', | ||
| 525 | + }, | ||
| 526 | + dataType: 'STRUCT', | ||
| 527 | + identifier: '1', | ||
| 528 | + isStd: 0, | ||
| 529 | + name: '测试输出回显结构体类型1', | ||
| 530 | + }, | ||
| 531 | + { | ||
| 532 | + id: buildUUID(), | ||
| 533 | + | ||
| 411 | childDataType: 'BOOL', | 534 | childDataType: 'BOOL', |
| 412 | childEnumSpecsDTO: [ | 535 | childEnumSpecsDTO: [ |
| 413 | { | 536 | { |
| 414 | dataType: 'BOOL', | 537 | dataType: 'BOOL', |
| 415 | - name: '关1', | 538 | + name: 'ff', |
| 416 | value: 0, | 539 | value: 0, |
| 417 | }, | 540 | }, |
| 418 | { | 541 | { |
| 419 | dataType: 'BOOL', | 542 | dataType: 'BOOL', |
| 420 | - name: '开1', | 543 | + name: 'gg', |
| 421 | value: 1, | 544 | value: 1, |
| 422 | }, | 545 | }, |
| 423 | ], | 546 | ], |
| 424 | - childName: '结构体里面1', | 547 | + childName: '测试输出回显结构体类型2', |
| 425 | custom: true, | 548 | custom: true, |
| 426 | dataSpecsList: [ | 549 | dataSpecsList: [ |
| 427 | { | 550 | { |
| 428 | dataType: 'BOOL', | 551 | dataType: 'BOOL', |
| 429 | - name: '关1', | 552 | + name: 'ff', |
| 430 | value: 0, | 553 | value: 0, |
| 431 | }, | 554 | }, |
| 432 | { | 555 | { |
| 433 | dataType: 'BOOL', | 556 | dataType: 'BOOL', |
| 434 | - name: '开1', | 557 | + name: 'gg', |
| 435 | value: 1, | 558 | value: 1, |
| 436 | }, | 559 | }, |
| 437 | ], | 560 | ], |
| 438 | dataType: 'STRUCT', | 561 | dataType: 'STRUCT', |
| 439 | - identifier: 's11', | 562 | + identifier: '3', |
| 440 | isStd: 0, | 563 | isStd: 0, |
| 441 | - name: '结构体里面1', | 564 | + name: '测试输出回显结构体类型2', |
| 442 | }, | 565 | }, |
| 443 | { | 566 | { |
| 567 | + id: buildUUID(), | ||
| 568 | + | ||
| 444 | childDataType: 'TEXT', | 569 | childDataType: 'TEXT', |
| 445 | - childName: '结构体里面2', | 570 | + childName: '测试输出回显结构体类型3', |
| 446 | childSpecsDTO: { | 571 | childSpecsDTO: { |
| 447 | dataType: 'TEXT', | 572 | dataType: 'TEXT', |
| 448 | length: 10240, | 573 | length: 10240, |
| @@ -453,374 +578,21 @@ export const mockData = { | @@ -453,374 +578,21 @@ export const mockData = { | ||
| 453 | length: 10240, | 578 | length: 10240, |
| 454 | }, | 579 | }, |
| 455 | dataType: 'STRUCT', | 580 | dataType: 'STRUCT', |
| 456 | - identifier: 's2', | ||
| 457 | - isStd: 0, | ||
| 458 | - name: '结构体里面2', | ||
| 459 | - }, | ||
| 460 | - { | ||
| 461 | - childDataType: 'DOUBLE', | ||
| 462 | - childName: '结构体里面3', | ||
| 463 | - childSpecsDTO: { | ||
| 464 | - dataType: 'DOUBLE', | ||
| 465 | - max: '22', | ||
| 466 | - min: '11', | ||
| 467 | - step: '3', | ||
| 468 | - unit: 'mm/s', | ||
| 469 | - unitName: '毫米每秒', | ||
| 470 | - }, | ||
| 471 | - custom: true, | ||
| 472 | - dataSpecs: { | ||
| 473 | - dataType: 'DOUBLE', | ||
| 474 | - max: '22', | ||
| 475 | - min: '11', | ||
| 476 | - step: '3', | ||
| 477 | - unit: 'mm/s', | ||
| 478 | - unitName: '毫米每秒', | ||
| 479 | - }, | ||
| 480 | - dataType: 'STRUCT', | ||
| 481 | - identifier: 's3', | 581 | + identifier: '12', |
| 482 | isStd: 0, | 582 | isStd: 0, |
| 483 | - name: '结构体里面3', | 583 | + name: '测试输出回显结构体类型3', |
| 484 | }, | 584 | }, |
| 485 | ], | 585 | ], |
| 486 | dataType: 'STRUCT', | 586 | dataType: 'STRUCT', |
| 487 | - direction: 'PARAM_INPUT', | ||
| 488 | - identifier: 's1', | ||
| 489 | - name: '结构体1', | ||
| 490 | - paraOrder: 4, | 587 | + direction: 'PARAM_OUTPUT', |
| 588 | + identifier: 'struct', | ||
| 589 | + name: '测试输出回显结构体类型', | ||
| 590 | + paraOrder: 3, | ||
| 491 | }, | 591 | }, |
| 492 | ], | 592 | ], |
| 493 | - outputParams: [], | ||
| 494 | productKey: 'hsrnXEfGFDv', | 593 | productKey: 'hsrnXEfGFDv', |
| 495 | required: false, | 594 | required: false, |
| 496 | - serviceName: '配置模型', | 595 | + serviceName: '删除模型1', |
| 497 | }, | 596 | }, |
| 498 | ], | 597 | ], |
| 499 | - // services: [ | ||
| 500 | - // { | ||
| 501 | - // callType: 'SYNC', | ||
| 502 | - // createTs: 1666603858325, | ||
| 503 | - // custom: true, | ||
| 504 | - // description: '更新模型', | ||
| 505 | - // identifier: 'UpdateModel', | ||
| 506 | - // inputParams: [ | ||
| 507 | - // { | ||
| 508 | - // id: buildUUID(), | ||
| 509 | - // custom: true, | ||
| 510 | - // dataSpecs: { | ||
| 511 | - // dataType: 'TEXT', | ||
| 512 | - // length: 128, | ||
| 513 | - // }, | ||
| 514 | - // dataType: 'TEXT', | ||
| 515 | - // direction: 'PARAM_INPUT', | ||
| 516 | - // identifier: 'UpdateTaskID', | ||
| 517 | - // name: '更新任务ID', | ||
| 518 | - // paraOrder: 0, | ||
| 519 | - // }, | ||
| 520 | - // { | ||
| 521 | - // id: buildUUID(), | ||
| 522 | - // custom: true, | ||
| 523 | - // dataSpecs: { | ||
| 524 | - // dataType: 'TEXT', | ||
| 525 | - // length: 128, | ||
| 526 | - // }, | ||
| 527 | - // dataType: 'TEXT', | ||
| 528 | - // direction: 'PARAM_INPUT', | ||
| 529 | - // identifier: 'AlgorithmID', | ||
| 530 | - // name: '算法任务唯一标识', | ||
| 531 | - // paraOrder: 1, | ||
| 532 | - // }, | ||
| 533 | - // { | ||
| 534 | - // id: buildUUID(), | ||
| 535 | - | ||
| 536 | - // custom: true, | ||
| 537 | - // dataSpecs: { | ||
| 538 | - // dataType: 'TEXT', | ||
| 539 | - // length: 64, | ||
| 540 | - // }, | ||
| 541 | - // dataType: 'TEXT', | ||
| 542 | - // direction: 'PARAM_INPUT', | ||
| 543 | - // identifier: 'AlgorithmName', | ||
| 544 | - // name: '算法名称', | ||
| 545 | - // paraOrder: 2, | ||
| 546 | - // }, | ||
| 547 | - // { | ||
| 548 | - // id: buildUUID(), | ||
| 549 | - | ||
| 550 | - // custom: true, | ||
| 551 | - // dataSpecs: { | ||
| 552 | - // dataType: 'INT', | ||
| 553 | - // max: '128', | ||
| 554 | - // min: '0', | ||
| 555 | - // precise: 0, | ||
| 556 | - // step: '1', | ||
| 557 | - // unit: '', | ||
| 558 | - // unitName: '无', | ||
| 559 | - // }, | ||
| 560 | - // dataType: 'INT', | ||
| 561 | - // direction: 'PARAM_INPUT', | ||
| 562 | - // identifier: 'NumThreads', | ||
| 563 | - // name: '使用线程数', | ||
| 564 | - // paraOrder: 4, | ||
| 565 | - // }, | ||
| 566 | - // { | ||
| 567 | - // id: buildUUID(), | ||
| 568 | - | ||
| 569 | - // custom: true, | ||
| 570 | - // dataSpecs: { | ||
| 571 | - // dataType: 'TEXT', | ||
| 572 | - // length: 128, | ||
| 573 | - // }, | ||
| 574 | - // dataType: 'TEXT', | ||
| 575 | - // direction: 'PARAM_INPUT', | ||
| 576 | - // identifier: 'ModelID', | ||
| 577 | - // name: '模型唯一标识', | ||
| 578 | - // paraOrder: 5, | ||
| 579 | - // }, | ||
| 580 | - // { | ||
| 581 | - // id: buildUUID(), | ||
| 582 | - | ||
| 583 | - // custom: true, | ||
| 584 | - // dataSpecs: { | ||
| 585 | - // dataType: 'TEXT', | ||
| 586 | - // length: 64, | ||
| 587 | - // }, | ||
| 588 | - // dataType: 'TEXT', | ||
| 589 | - // direction: 'PARAM_INPUT', | ||
| 590 | - // identifier: 'ModelName', | ||
| 591 | - // name: '模型名称', | ||
| 592 | - // paraOrder: 6, | ||
| 593 | - // }, | ||
| 594 | - // { | ||
| 595 | - // id: buildUUID(), | ||
| 596 | - | ||
| 597 | - // custom: true, | ||
| 598 | - // dataSpecs: { | ||
| 599 | - // dataType: 'TEXT', | ||
| 600 | - // length: 64, | ||
| 601 | - // }, | ||
| 602 | - // dataType: 'TEXT', | ||
| 603 | - // direction: 'PARAM_INPUT', | ||
| 604 | - // identifier: 'ModelVersion', | ||
| 605 | - // name: '模型版本', | ||
| 606 | - // paraOrder: 7, | ||
| 607 | - // }, | ||
| 608 | - // { | ||
| 609 | - // id: buildUUID(), | ||
| 610 | - | ||
| 611 | - // custom: true, | ||
| 612 | - // dataSpecs: { | ||
| 613 | - // dataType: 'TEXT', | ||
| 614 | - // length: 1024, | ||
| 615 | - // }, | ||
| 616 | - // dataType: 'TEXT', | ||
| 617 | - // direction: 'PARAM_INPUT', | ||
| 618 | - // identifier: 'ModelURL', | ||
| 619 | - // name: '模型地址', | ||
| 620 | - // paraOrder: 8, | ||
| 621 | - // }, | ||
| 622 | - // { | ||
| 623 | - // id: buildUUID(), | ||
| 624 | - | ||
| 625 | - // custom: true, | ||
| 626 | - // dataSpecs: { | ||
| 627 | - // dataType: 'TEXT', | ||
| 628 | - // length: 128, | ||
| 629 | - // }, | ||
| 630 | - // dataType: 'TEXT', | ||
| 631 | - // direction: 'PARAM_INPUT', | ||
| 632 | - // identifier: 'ModelMD5', | ||
| 633 | - // name: '模型文件MD5', | ||
| 634 | - // paraOrder: 9, | ||
| 635 | - // }, | ||
| 636 | - // { | ||
| 637 | - // id: buildUUID(), | ||
| 638 | - | ||
| 639 | - // custom: true, | ||
| 640 | - // dataSpecs: { | ||
| 641 | - // dataType: 'TEXT', | ||
| 642 | - // length: 64, | ||
| 643 | - // }, | ||
| 644 | - // dataType: 'TEXT', | ||
| 645 | - // direction: 'PARAM_INPUT', | ||
| 646 | - // identifier: 'ModelPlatform', | ||
| 647 | - // name: '模型平台', | ||
| 648 | - // paraOrder: 10, | ||
| 649 | - // }, | ||
| 650 | - // { | ||
| 651 | - // id: buildUUID(), | ||
| 652 | - | ||
| 653 | - // custom: true, | ||
| 654 | - // dataSpecs: { | ||
| 655 | - // dataType: 'TEXT', | ||
| 656 | - // length: 128, | ||
| 657 | - // }, | ||
| 658 | - // dataType: 'TEXT', | ||
| 659 | - // direction: 'PARAM_INPUT', | ||
| 660 | - // identifier: 'ModelTaskID', | ||
| 661 | - // name: '模型生成任务ID', | ||
| 662 | - // paraOrder: 11, | ||
| 663 | - // }, | ||
| 664 | - // { | ||
| 665 | - // id: buildUUID(), | ||
| 666 | - | ||
| 667 | - // custom: true, | ||
| 668 | - // dataSpecs: { | ||
| 669 | - // dataType: 'TEXT', | ||
| 670 | - // length: 64, | ||
| 671 | - // }, | ||
| 672 | - // dataType: 'TEXT', | ||
| 673 | - // direction: 'PARAM_INPUT', | ||
| 674 | - // identifier: 'ModelEncryptType', | ||
| 675 | - // name: '模型加密方式', | ||
| 676 | - // paraOrder: 12, | ||
| 677 | - // }, | ||
| 678 | - // { | ||
| 679 | - // id: buildUUID(), | ||
| 680 | - | ||
| 681 | - // custom: true, | ||
| 682 | - // dataSpecs: { | ||
| 683 | - // dataType: 'TEXT', | ||
| 684 | - // length: 2048, | ||
| 685 | - // }, | ||
| 686 | - // dataType: 'TEXT', | ||
| 687 | - // direction: 'PARAM_INPUT', | ||
| 688 | - // identifier: 'ModelExtension', | ||
| 689 | - // name: '扩展信息', | ||
| 690 | - // paraOrder: 13, | ||
| 691 | - // }, | ||
| 692 | - // { | ||
| 693 | - // id: buildUUID(), | ||
| 694 | - | ||
| 695 | - // custom: true, | ||
| 696 | - // dataSpecsList: [ | ||
| 697 | - // { | ||
| 698 | - // id: buildUUID(), | ||
| 699 | - | ||
| 700 | - // childDataType: 'TEXT', | ||
| 701 | - // childName: '模型结构体参数1', | ||
| 702 | - // childSpecsDTO: { | ||
| 703 | - // dataType: 'TEXT', | ||
| 704 | - // length: 10240, | ||
| 705 | - // }, | ||
| 706 | - // custom: true, | ||
| 707 | - // dataSpecs: { | ||
| 708 | - // dataType: 'TEXT', | ||
| 709 | - // length: 10240, | ||
| 710 | - // }, | ||
| 711 | - // dataType: 'STRUCT', | ||
| 712 | - // identifier: 'ModelParams1', | ||
| 713 | - // isStd: 0, | ||
| 714 | - // name: '模型结构体参数1', | ||
| 715 | - // }, | ||
| 716 | - // { | ||
| 717 | - // id: buildUUID(), | ||
| 718 | - | ||
| 719 | - // childDataType: 'BOOL', | ||
| 720 | - // childEnumSpecsDTO: [ | ||
| 721 | - // { | ||
| 722 | - // dataType: 'BOOL', | ||
| 723 | - // name: '1', | ||
| 724 | - // value: 0, | ||
| 725 | - // }, | ||
| 726 | - // { | ||
| 727 | - // dataType: 'BOOL', | ||
| 728 | - // name: '0', | ||
| 729 | - // value: 1, | ||
| 730 | - // }, | ||
| 731 | - // ], | ||
| 732 | - // childName: '模型结构体参数2', | ||
| 733 | - // custom: true, | ||
| 734 | - // dataSpecsList: [ | ||
| 735 | - // { | ||
| 736 | - // id: buildUUID(), | ||
| 737 | - | ||
| 738 | - // dataType: 'BOOL', | ||
| 739 | - // name: '1', | ||
| 740 | - // value: 0, | ||
| 741 | - // }, | ||
| 742 | - // { | ||
| 743 | - // id: buildUUID(), | ||
| 744 | - | ||
| 745 | - // dataType: 'BOOL', | ||
| 746 | - // name: '0', | ||
| 747 | - // value: 1, | ||
| 748 | - // }, | ||
| 749 | - // ], | ||
| 750 | - // dataType: 'STRUCT', | ||
| 751 | - // identifier: 'ModelParams2', | ||
| 752 | - // isStd: 0, | ||
| 753 | - // name: '模型结构体参数2', | ||
| 754 | - // }, | ||
| 755 | - // ], | ||
| 756 | - // dataType: 'STRUCT', | ||
| 757 | - // direction: 'PARAM_INPUT', | ||
| 758 | - // identifier: 'ModelStruct', | ||
| 759 | - // name: '模型结构体', | ||
| 760 | - // paraOrder: 3, | ||
| 761 | - // }, | ||
| 762 | - // ], | ||
| 763 | - // outputParams: [ | ||
| 764 | - // { | ||
| 765 | - // id: buildUUID(), | ||
| 766 | - | ||
| 767 | - // custom: true, | ||
| 768 | - // dataSpecs: { | ||
| 769 | - // dataType: 'TEXT', | ||
| 770 | - // length: 10240, | ||
| 771 | - // }, | ||
| 772 | - // dataType: 'TEXT', | ||
| 773 | - // direction: 'PARAM_OUTPUT', | ||
| 774 | - // identifier: 'Django', | ||
| 775 | - // name: 'django', | ||
| 776 | - // paraOrder: 0, | ||
| 777 | - // }, | ||
| 778 | - // { | ||
| 779 | - // id: buildUUID(), | ||
| 780 | - | ||
| 781 | - // custom: true, | ||
| 782 | - // dataSpecsList: [ | ||
| 783 | - // { | ||
| 784 | - // id: buildUUID(), | ||
| 785 | - | ||
| 786 | - // dataType: 'BOOL', | ||
| 787 | - // name: '1', | ||
| 788 | - // value: 0, | ||
| 789 | - // }, | ||
| 790 | - // { | ||
| 791 | - // id: buildUUID(), | ||
| 792 | - // dataType: 'BOOL', | ||
| 793 | - // name: '0', | ||
| 794 | - // value: 1, | ||
| 795 | - // }, | ||
| 796 | - // ], | ||
| 797 | - // dataType: 'BOOL', | ||
| 798 | - // direction: 'PARAM_OUTPUT', | ||
| 799 | - // identifier: 'Flask', | ||
| 800 | - // name: 'flask', | ||
| 801 | - // paraOrder: 1, | ||
| 802 | - // }, | ||
| 803 | - // { | ||
| 804 | - // id: buildUUID(), | ||
| 805 | - // custom: true, | ||
| 806 | - // dataSpecs: { | ||
| 807 | - // dataType: 'INT', | ||
| 808 | - // max: '22', | ||
| 809 | - // min: '11', | ||
| 810 | - // step: '3', | ||
| 811 | - // unit: '只', | ||
| 812 | - // unitName: '只', | ||
| 813 | - // }, | ||
| 814 | - // dataType: 'INT', | ||
| 815 | - // direction: 'PARAM_OUTPUT', | ||
| 816 | - // identifier: 'Tornado', | ||
| 817 | - // name: 'tornado', | ||
| 818 | - // paraOrder: 2, | ||
| 819 | - // }, | ||
| 820 | - // ], | ||
| 821 | - // productKey: 'hsrnXEfGFDv', | ||
| 822 | - // required: false, | ||
| 823 | - // serviceName: '更新模型', | ||
| 824 | - // }, | ||
| 825 | - // ], | ||
| 826 | }; | 598 | }; |
| @@ -51,18 +51,18 @@ export const useChangeTypeGetTypeForm = (type, options: TForm) => { | @@ -51,18 +51,18 @@ export const useChangeTypeGetTypeForm = (type, options: TForm) => { | ||
| 51 | { | 51 | { |
| 52 | dataType: options?.dataType, | 52 | dataType: options?.dataType, |
| 53 | name: options?.boolClose, | 53 | name: options?.boolClose, |
| 54 | - value: '0', | 54 | + value: 0, |
| 55 | }, | 55 | }, |
| 56 | { | 56 | { |
| 57 | dataType: options?.dataType, | 57 | dataType: options?.dataType, |
| 58 | name: options?.boolOpen, | 58 | name: options?.boolOpen, |
| 59 | - value: '1', | 59 | + value: 1, |
| 60 | }, | 60 | }, |
| 61 | ]; | 61 | ]; |
| 62 | case 'TEXT': | 62 | case 'TEXT': |
| 63 | return { | 63 | return { |
| 64 | dataType: options?.dataType, | 64 | dataType: options?.dataType, |
| 65 | - length: options?.length, | 65 | + length: Number(options?.length), |
| 66 | }; | 66 | }; |
| 67 | } | 67 | } |
| 68 | }; | 68 | }; |