|
|
@ -0,0 +1,930 @@
|
|
|
|
|
|
|
|
<!--
|
|
|
|
|
|
|
|
* @Author: donghao donghao@supervision.ltd
|
|
|
|
|
|
|
|
* @Date: 2025-07-03 11:12:04
|
|
|
|
|
|
|
|
* @LastEditors: donghao donghao@supervision.ltd
|
|
|
|
|
|
|
|
* @LastEditTime: 2025-08-07 17:43:32
|
|
|
|
|
|
|
|
* @FilePath: \electron-project\Robot-Al\Robot-Al-Platform-Web\src\renderer\src\views\Design\FlowImagesCapture\outputImageNode.vue
|
|
|
|
|
|
|
|
* @Description: 输出图像节点
|
|
|
|
|
|
|
|
-->
|
|
|
|
|
|
|
|
<script setup lang="tsx">
|
|
|
|
|
|
|
|
import { DSDialog } from '@/components/Dialog'
|
|
|
|
|
|
|
|
import { DSButton } from '@/components/Button'
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
defineOptions({
|
|
|
|
|
|
|
|
name: 'FlowImageNodeModel'
|
|
|
|
|
|
|
|
})
|
|
|
|
|
|
|
|
interface Props {
|
|
|
|
|
|
|
|
/** 弹窗显隐 */
|
|
|
|
|
|
|
|
value: boolean
|
|
|
|
|
|
|
|
// info?: Record<string, any>
|
|
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
interface Emits {
|
|
|
|
|
|
|
|
(e: 'update:value', val: boolean): void
|
|
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
interface FormTabItem {
|
|
|
|
|
|
|
|
ref: string
|
|
|
|
|
|
|
|
title: string
|
|
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
const props = withDefaults(defineProps<Props>(), {
|
|
|
|
|
|
|
|
value: false
|
|
|
|
|
|
|
|
})
|
|
|
|
|
|
|
|
const emit = defineEmits<Emits>()
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
// 处理对话框关闭事件
|
|
|
|
|
|
|
|
const handleClose = () => {
|
|
|
|
|
|
|
|
// emits('close');
|
|
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
const show = computed({
|
|
|
|
|
|
|
|
get() {
|
|
|
|
|
|
|
|
return props.value
|
|
|
|
|
|
|
|
},
|
|
|
|
|
|
|
|
set(val: boolean) {
|
|
|
|
|
|
|
|
emit('update:value', val)
|
|
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
})
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
// 获取ref
|
|
|
|
|
|
|
|
const sourceForm: any = ref<HTMLElement | null>(null)
|
|
|
|
|
|
|
|
// 第一种:获取最终form表单数据
|
|
|
|
|
|
|
|
const submit = (form) => {
|
|
|
|
|
|
|
|
console.log('最终提交数据', form)
|
|
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
const save = () => {
|
|
|
|
|
|
|
|
sourceForm.value.saveHandle()
|
|
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
const testList = [
|
|
|
|
|
|
|
|
{
|
|
|
|
|
|
|
|
value: 'GPIO',
|
|
|
|
|
|
|
|
label: 'GPIO'
|
|
|
|
|
|
|
|
},
|
|
|
|
|
|
|
|
{
|
|
|
|
|
|
|
|
value: 'VB2230',
|
|
|
|
|
|
|
|
label: 'VB2230'
|
|
|
|
|
|
|
|
},
|
|
|
|
|
|
|
|
{
|
|
|
|
|
|
|
|
value: 'VC2000/2100',
|
|
|
|
|
|
|
|
label: 'VC2000/2100'
|
|
|
|
|
|
|
|
},
|
|
|
|
|
|
|
|
{
|
|
|
|
|
|
|
|
value: 'VC3000H/X',
|
|
|
|
|
|
|
|
label: 'VC3000H/X'
|
|
|
|
|
|
|
|
},
|
|
|
|
|
|
|
|
{
|
|
|
|
|
|
|
|
value: 'MV-LEVD-200',
|
|
|
|
|
|
|
|
label: 'MV-LEVD-200'
|
|
|
|
|
|
|
|
},
|
|
|
|
|
|
|
|
{
|
|
|
|
|
|
|
|
value: 'LE200',
|
|
|
|
|
|
|
|
label: 'LE200'
|
|
|
|
|
|
|
|
},
|
|
|
|
|
|
|
|
{
|
|
|
|
|
|
|
|
value: 'VC5000',
|
|
|
|
|
|
|
|
label: 'VC5000'
|
|
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
]
|
|
|
|
|
|
|
|
// 基本参数
|
|
|
|
|
|
|
|
const baseFormOpts: any = reactive({
|
|
|
|
|
|
|
|
baseConfig: {
|
|
|
|
|
|
|
|
title: '图像输入',
|
|
|
|
|
|
|
|
name: 'baseConfig',
|
|
|
|
|
|
|
|
disabled: true, // 表单禁用收缩
|
|
|
|
|
|
|
|
ref: 'baseFormRef',
|
|
|
|
|
|
|
|
widthSize: 2, // 表单每行占据数量 默认为3
|
|
|
|
|
|
|
|
opts: {
|
|
|
|
|
|
|
|
labelPosition: 'top', // 标签对齐方式
|
|
|
|
|
|
|
|
formData: {
|
|
|
|
|
|
|
|
imageSource: '请选择', // *输入源--图像来源,当前尚未选择
|
|
|
|
|
|
|
|
saveImageEnable: false, // *存图使能--是否启用保存图像功能
|
|
|
|
|
|
|
|
generateDirectory: false, // *生成目录--是否生成目录,存图使能启用时显示
|
|
|
|
|
|
|
|
debugSave: false, // *调试保存--是否启用调试保存,存图使能启用时显示
|
|
|
|
|
|
|
|
debugInfo: '', // *调试信息--启用调试保存时显示
|
|
|
|
|
|
|
|
asyncStorageWay: 0, // *同步存储&异步存储
|
|
|
|
|
|
|
|
asynchronousStorageInterval: null, // *存图间隔
|
|
|
|
|
|
|
|
triggerSaveEnable: false, // *触发保存
|
|
|
|
|
|
|
|
triggerVariable: '', // *触发变量,当前为空
|
|
|
|
|
|
|
|
saveCondition: '全部保存', // *保存条件,当前设置为“全部保存”
|
|
|
|
|
|
|
|
saveRenderedImageEnable: false, // *保存渲染图
|
|
|
|
|
|
|
|
renderedImagePath: 'C:\\Users\\siroi\\Picture', // *渲染图路径,当前设置为“C:\Users\siroi\Picture”
|
|
|
|
|
|
|
|
renderedImageName: '', // *渲染图命名
|
|
|
|
|
|
|
|
renderedImageCache: null, // *渲染图缓存
|
|
|
|
|
|
|
|
saveOriginalImageEnable: false, // *保存原图
|
|
|
|
|
|
|
|
originalImagePath: 'C:\\Users\\siroi\\Picture', // *原图路径,当前设置为“C:\Users\siroi\Picture”
|
|
|
|
|
|
|
|
originalImageName: '', // *原图命名
|
|
|
|
|
|
|
|
originalImageCache: null, // *原图缓存
|
|
|
|
|
|
|
|
storageMethod: 0, // *存储方式
|
|
|
|
|
|
|
|
diskFreeSpace: null, // *磁盘剩余空间,当前设置为36
|
|
|
|
|
|
|
|
storageUnit: 'MB', // *存储单位,当前设置为“MB”
|
|
|
|
|
|
|
|
maxStorageDays: 30, // *最大保存天数,当前设置为30
|
|
|
|
|
|
|
|
imageFormat: 'BMP', // *保存格式,当前设置为“BMP”
|
|
|
|
|
|
|
|
ftpEnable: false, // *启用FTP
|
|
|
|
|
|
|
|
ftpConnectedEnable: false, // *连接--FTP是否已连接
|
|
|
|
|
|
|
|
localIP: '', // *IP--本地IP地址
|
|
|
|
|
|
|
|
serverPort: '', // *服务器端口
|
|
|
|
|
|
|
|
username: '', // *用户名
|
|
|
|
|
|
|
|
password: '', // *密码
|
|
|
|
|
|
|
|
encodingFormat: '', // *编码格式
|
|
|
|
|
|
|
|
ftpPath: '/image', // *FTP路径,当前设置为“/image”
|
|
|
|
|
|
|
|
outputEnable: false, // *输出使能,当前为未启用状态
|
|
|
|
|
|
|
|
pixelFormat: 'Mono8' // *像素格式,当前设置为“Mono8”
|
|
|
|
|
|
|
|
// renderedNGPath: 'C:\\Users\\siroi\\Picture', // 渲染图像NG路径,当前设置为“C:\Users\siroi\Picture”
|
|
|
|
|
|
|
|
// originalNGPath: 'C:\\Users\\siroi\\Picture' // 原始图像NG路径,当前设置为“C:\Users\siroi\Picture”
|
|
|
|
|
|
|
|
},
|
|
|
|
|
|
|
|
fieldList: [
|
|
|
|
|
|
|
|
/**基础参数-表单项**/
|
|
|
|
|
|
|
|
// 通用字段
|
|
|
|
|
|
|
|
{
|
|
|
|
|
|
|
|
label: '输入源',
|
|
|
|
|
|
|
|
value: 'imageSource',
|
|
|
|
|
|
|
|
type: 'select-arr',
|
|
|
|
|
|
|
|
comp: 'el-select',
|
|
|
|
|
|
|
|
list: 'imageSourceList',
|
|
|
|
|
|
|
|
arrLabel: 'key',
|
|
|
|
|
|
|
|
arrKey: 'value',
|
|
|
|
|
|
|
|
placeholder: '请选择输入源',
|
|
|
|
|
|
|
|
eventHandle: {
|
|
|
|
|
|
|
|
change: (val: any) => {
|
|
|
|
|
|
|
|
console.log(val, 'selectChange_imageSource')
|
|
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
},
|
|
|
|
|
|
|
|
bind: { clearable: false }
|
|
|
|
|
|
|
|
},
|
|
|
|
|
|
|
|
// 只作渲染标题使用
|
|
|
|
|
|
|
|
{
|
|
|
|
|
|
|
|
labelRender: () => {
|
|
|
|
|
|
|
|
return <div className="ds-form-items-title">存图设置</div>
|
|
|
|
|
|
|
|
},
|
|
|
|
|
|
|
|
// value: 'form_title',
|
|
|
|
|
|
|
|
isSelfCom: true,
|
|
|
|
|
|
|
|
widthSize: 1
|
|
|
|
|
|
|
|
},
|
|
|
|
|
|
|
|
// 存图使能
|
|
|
|
|
|
|
|
{
|
|
|
|
|
|
|
|
value: 'saveImageEnable',
|
|
|
|
|
|
|
|
comp: 'DSSwitch',
|
|
|
|
|
|
|
|
isSelfCom: true,
|
|
|
|
|
|
|
|
widthSize: 1,
|
|
|
|
|
|
|
|
bind: {
|
|
|
|
|
|
|
|
label: '存图使能'
|
|
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
},
|
|
|
|
|
|
|
|
// 生成目录
|
|
|
|
|
|
|
|
{
|
|
|
|
|
|
|
|
value: 'generateDirectory',
|
|
|
|
|
|
|
|
comp: 'DSSwitch',
|
|
|
|
|
|
|
|
isSelfCom: true,
|
|
|
|
|
|
|
|
widthSize: 1,
|
|
|
|
|
|
|
|
bind: {
|
|
|
|
|
|
|
|
label: '生成目录'
|
|
|
|
|
|
|
|
},
|
|
|
|
|
|
|
|
isHideItem: (data) => {
|
|
|
|
|
|
|
|
return data.saveImageEnable
|
|
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
},
|
|
|
|
|
|
|
|
// 调试保存
|
|
|
|
|
|
|
|
{
|
|
|
|
|
|
|
|
value: 'debugSave',
|
|
|
|
|
|
|
|
comp: 'DSSwitch',
|
|
|
|
|
|
|
|
isSelfCom: true,
|
|
|
|
|
|
|
|
widthSize: 1,
|
|
|
|
|
|
|
|
bind: {
|
|
|
|
|
|
|
|
label: '调试保存'
|
|
|
|
|
|
|
|
},
|
|
|
|
|
|
|
|
isHideItem: (data) => {
|
|
|
|
|
|
|
|
return data.saveImageEnable
|
|
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
},
|
|
|
|
|
|
|
|
// 调试信息
|
|
|
|
|
|
|
|
{
|
|
|
|
|
|
|
|
label: '调试信息',
|
|
|
|
|
|
|
|
value: 'debugInfo',
|
|
|
|
|
|
|
|
type: 'input',
|
|
|
|
|
|
|
|
widthSize: 1,
|
|
|
|
|
|
|
|
width: 'calc(50% - 6px)',
|
|
|
|
|
|
|
|
comp: 'el-input',
|
|
|
|
|
|
|
|
bind: { maxlength: 100 },
|
|
|
|
|
|
|
|
isHideItem: (data) => {
|
|
|
|
|
|
|
|
return data.saveImageEnable && data.debugSave
|
|
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
},
|
|
|
|
|
|
|
|
// 同步存储&异步存储
|
|
|
|
|
|
|
|
{
|
|
|
|
|
|
|
|
label: '',
|
|
|
|
|
|
|
|
value: 'asyncStorageWay',
|
|
|
|
|
|
|
|
type: 'radio',
|
|
|
|
|
|
|
|
comp: 'el-radio-group',
|
|
|
|
|
|
|
|
widthSize: 4,
|
|
|
|
|
|
|
|
list: 'asyncStorageWayList',
|
|
|
|
|
|
|
|
arrLabel: 'name',
|
|
|
|
|
|
|
|
arrKey: 'id',
|
|
|
|
|
|
|
|
isHideItem: (data) => {
|
|
|
|
|
|
|
|
return data.saveImageEnable
|
|
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
},
|
|
|
|
|
|
|
|
// 存图间隔
|
|
|
|
|
|
|
|
{
|
|
|
|
|
|
|
|
label: '',
|
|
|
|
|
|
|
|
value: 'captureInterval',
|
|
|
|
|
|
|
|
placeholder: '请输入存图间隔',
|
|
|
|
|
|
|
|
comp: 'DSInputNumber',
|
|
|
|
|
|
|
|
isSelfCom: true,
|
|
|
|
|
|
|
|
widthSize: 4,
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
bind: {
|
|
|
|
|
|
|
|
min: 1,
|
|
|
|
|
|
|
|
max: 10000,
|
|
|
|
|
|
|
|
prefixRender: () => {
|
|
|
|
|
|
|
|
// TODO 这里需要调整宽度
|
|
|
|
|
|
|
|
return <div className="w-[200px] flex pr-[8px]">存图间隔</div>
|
|
|
|
|
|
|
|
},
|
|
|
|
|
|
|
|
isHasSuffix: false
|
|
|
|
|
|
|
|
},
|
|
|
|
|
|
|
|
eventHandle: {
|
|
|
|
|
|
|
|
change: (val: any) => {}
|
|
|
|
|
|
|
|
},
|
|
|
|
|
|
|
|
isHideItem: (data) => {
|
|
|
|
|
|
|
|
return data.saveImageEnable
|
|
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
},
|
|
|
|
|
|
|
|
// 触发保存
|
|
|
|
|
|
|
|
{
|
|
|
|
|
|
|
|
value: 'triggerSaveEnable',
|
|
|
|
|
|
|
|
comp: 'DSSwitch',
|
|
|
|
|
|
|
|
isSelfCom: true,
|
|
|
|
|
|
|
|
widthSize: 1,
|
|
|
|
|
|
|
|
bind: {
|
|
|
|
|
|
|
|
label: '触发保存'
|
|
|
|
|
|
|
|
},
|
|
|
|
|
|
|
|
isHideItem: (data) => {
|
|
|
|
|
|
|
|
return data.saveImageEnable
|
|
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
},
|
|
|
|
|
|
|
|
// 触发变量
|
|
|
|
|
|
|
|
{
|
|
|
|
|
|
|
|
label: '触发变量',
|
|
|
|
|
|
|
|
value: 'triggerVariable',
|
|
|
|
|
|
|
|
type: 'input',
|
|
|
|
|
|
|
|
comp: 'el-input',
|
|
|
|
|
|
|
|
bind: { maxlength: 100 },
|
|
|
|
|
|
|
|
isHideItem: (data) => {
|
|
|
|
|
|
|
|
return data.saveImageEnable && data.triggerSaveEnable
|
|
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
},
|
|
|
|
|
|
|
|
// 保存条件
|
|
|
|
|
|
|
|
{
|
|
|
|
|
|
|
|
label: '保存条件',
|
|
|
|
|
|
|
|
value: 'saveCondition',
|
|
|
|
|
|
|
|
type: 'select-arr',
|
|
|
|
|
|
|
|
comp: 'el-select',
|
|
|
|
|
|
|
|
list: 'saveConditiontList',
|
|
|
|
|
|
|
|
arrLabel: 'name',
|
|
|
|
|
|
|
|
arrKey: 'id',
|
|
|
|
|
|
|
|
placeholder: '请选择保存条件',
|
|
|
|
|
|
|
|
isHideItem: (data) => {
|
|
|
|
|
|
|
|
return data.saveImageEnable && data.triggerSaveEnable
|
|
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
},
|
|
|
|
|
|
|
|
// 保存渲染图
|
|
|
|
|
|
|
|
{
|
|
|
|
|
|
|
|
value: 'saveRenderedImageEnable',
|
|
|
|
|
|
|
|
comp: 'DSSwitch',
|
|
|
|
|
|
|
|
isSelfCom: true,
|
|
|
|
|
|
|
|
widthSize: 1,
|
|
|
|
|
|
|
|
bind: {
|
|
|
|
|
|
|
|
label: '保存渲染图'
|
|
|
|
|
|
|
|
},
|
|
|
|
|
|
|
|
isHideItem: (data) => {
|
|
|
|
|
|
|
|
return data.saveImageEnable
|
|
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
},
|
|
|
|
|
|
|
|
// TODO 渲染图路径 使用inputPath自定义组件重写
|
|
|
|
|
|
|
|
{
|
|
|
|
|
|
|
|
label: '渲染图路径',
|
|
|
|
|
|
|
|
value: 'renderedImagePath',
|
|
|
|
|
|
|
|
type: 'input',
|
|
|
|
|
|
|
|
comp: 'el-input',
|
|
|
|
|
|
|
|
bind: { maxlength: 100 },
|
|
|
|
|
|
|
|
isHideItem: (data) => {
|
|
|
|
|
|
|
|
return data.saveImageEnable && data.saveRenderedImageEnable
|
|
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
},
|
|
|
|
|
|
|
|
// TODO 渲染图命名 使用inputSelect自定义组件重写
|
|
|
|
|
|
|
|
{
|
|
|
|
|
|
|
|
label: '渲染图命名',
|
|
|
|
|
|
|
|
value: 'renderedImageName',
|
|
|
|
|
|
|
|
type: 'input',
|
|
|
|
|
|
|
|
comp: 'el-input',
|
|
|
|
|
|
|
|
bind: { maxlength: 100 },
|
|
|
|
|
|
|
|
isHideItem: (data) => {
|
|
|
|
|
|
|
|
return data.saveImageEnable && data.saveRenderedImageEnable
|
|
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
},
|
|
|
|
|
|
|
|
// 渲染图缓存
|
|
|
|
|
|
|
|
{
|
|
|
|
|
|
|
|
label: '渲染图缓存',
|
|
|
|
|
|
|
|
value: 'renderedImageCache',
|
|
|
|
|
|
|
|
placeholder: '请输入渲染图缓存',
|
|
|
|
|
|
|
|
comp: 'DSInputNumber',
|
|
|
|
|
|
|
|
isSelfCom: true,
|
|
|
|
|
|
|
|
bind: {
|
|
|
|
|
|
|
|
min: 1,
|
|
|
|
|
|
|
|
max: 10000,
|
|
|
|
|
|
|
|
isHasSuffix: false
|
|
|
|
|
|
|
|
},
|
|
|
|
|
|
|
|
eventHandle: {
|
|
|
|
|
|
|
|
change: (val: any) => {}
|
|
|
|
|
|
|
|
},
|
|
|
|
|
|
|
|
isHideItem: (data) => {
|
|
|
|
|
|
|
|
return data.saveImageEnable && data.saveRenderedImageEnable
|
|
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
},
|
|
|
|
|
|
|
|
// 保存原图
|
|
|
|
|
|
|
|
{
|
|
|
|
|
|
|
|
value: 'saveOriginalImageEnable',
|
|
|
|
|
|
|
|
comp: 'DSSwitch',
|
|
|
|
|
|
|
|
isSelfCom: true,
|
|
|
|
|
|
|
|
widthSize: 1,
|
|
|
|
|
|
|
|
bind: {
|
|
|
|
|
|
|
|
label: '保存原图'
|
|
|
|
|
|
|
|
},
|
|
|
|
|
|
|
|
isHideItem: (data) => {
|
|
|
|
|
|
|
|
return data.saveImageEnable
|
|
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
},
|
|
|
|
|
|
|
|
// TODO 原图路径 使用inputPath自定义组件重写
|
|
|
|
|
|
|
|
{
|
|
|
|
|
|
|
|
label: '原图路径',
|
|
|
|
|
|
|
|
value: 'originalImagePath',
|
|
|
|
|
|
|
|
type: 'input',
|
|
|
|
|
|
|
|
comp: 'el-input',
|
|
|
|
|
|
|
|
bind: { maxlength: 100 },
|
|
|
|
|
|
|
|
isHideItem: (data) => {
|
|
|
|
|
|
|
|
return data.saveImageEnable && data.saveOriginalImageEnable
|
|
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
},
|
|
|
|
|
|
|
|
// TODO 原图命名 使用inputSelect自定义组件重写
|
|
|
|
|
|
|
|
{
|
|
|
|
|
|
|
|
label: '渲染图命名',
|
|
|
|
|
|
|
|
value: 'originalImageName',
|
|
|
|
|
|
|
|
type: 'input',
|
|
|
|
|
|
|
|
comp: 'el-input',
|
|
|
|
|
|
|
|
bind: { maxlength: 100 },
|
|
|
|
|
|
|
|
isHideItem: (data) => {
|
|
|
|
|
|
|
|
return data.saveImageEnable && data.saveOriginalImageEnable
|
|
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
},
|
|
|
|
|
|
|
|
// 原图缓存
|
|
|
|
|
|
|
|
{
|
|
|
|
|
|
|
|
label: '原图缓存',
|
|
|
|
|
|
|
|
value: 'originalImageCache',
|
|
|
|
|
|
|
|
placeholder: '请输入原图缓存',
|
|
|
|
|
|
|
|
comp: 'DSInputNumber',
|
|
|
|
|
|
|
|
isSelfCom: true,
|
|
|
|
|
|
|
|
bind: {
|
|
|
|
|
|
|
|
min: 1,
|
|
|
|
|
|
|
|
max: 10000,
|
|
|
|
|
|
|
|
isHasSuffix: false
|
|
|
|
|
|
|
|
},
|
|
|
|
|
|
|
|
eventHandle: {
|
|
|
|
|
|
|
|
change: (val: any) => {}
|
|
|
|
|
|
|
|
},
|
|
|
|
|
|
|
|
isHideItem: (data) => {
|
|
|
|
|
|
|
|
return data.saveImageEnable && data.saveOriginalImageEnable
|
|
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
},
|
|
|
|
|
|
|
|
// 存储方式
|
|
|
|
|
|
|
|
{
|
|
|
|
|
|
|
|
label: '存储方式',
|
|
|
|
|
|
|
|
value: 'storageMethod',
|
|
|
|
|
|
|
|
type: 'select-arr',
|
|
|
|
|
|
|
|
comp: 'el-select',
|
|
|
|
|
|
|
|
list: 'storageMethodList',
|
|
|
|
|
|
|
|
arrLabel: 'name',
|
|
|
|
|
|
|
|
arrKey: 'id',
|
|
|
|
|
|
|
|
placeholder: '请选择存储方式',
|
|
|
|
|
|
|
|
isHideItem: (data) => {
|
|
|
|
|
|
|
|
return data.saveImageEnable && data.saveOriginalImageEnable
|
|
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
},
|
|
|
|
|
|
|
|
// 磁盘剩余空间
|
|
|
|
|
|
|
|
{
|
|
|
|
|
|
|
|
placeholder: '请输入磁盘剩余空间',
|
|
|
|
|
|
|
|
label: '磁盘剩余空间',
|
|
|
|
|
|
|
|
value: 'diskFreeSpace',
|
|
|
|
|
|
|
|
comp: 'DSInputNumber',
|
|
|
|
|
|
|
|
isSelfCom: true,
|
|
|
|
|
|
|
|
bind: {
|
|
|
|
|
|
|
|
min: 0,
|
|
|
|
|
|
|
|
max: 99999999
|
|
|
|
|
|
|
|
},
|
|
|
|
|
|
|
|
isHideItem: (data) => {
|
|
|
|
|
|
|
|
return data.saveImageEnable && data.saveOriginalImageEnable
|
|
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
},
|
|
|
|
|
|
|
|
// 存储单位
|
|
|
|
|
|
|
|
{
|
|
|
|
|
|
|
|
label: '存储单位',
|
|
|
|
|
|
|
|
value: 'storageUnit',
|
|
|
|
|
|
|
|
type: 'select-arr',
|
|
|
|
|
|
|
|
comp: 'el-select',
|
|
|
|
|
|
|
|
list: 'storageUnitList',
|
|
|
|
|
|
|
|
arrLabel: 'name',
|
|
|
|
|
|
|
|
arrKey: 'id',
|
|
|
|
|
|
|
|
placeholder: '请选择存储单位',
|
|
|
|
|
|
|
|
isHideItem: (data) => {
|
|
|
|
|
|
|
|
return data.saveImageEnable && data.saveOriginalImageEnable
|
|
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
},
|
|
|
|
|
|
|
|
// 最大保存天数
|
|
|
|
|
|
|
|
{
|
|
|
|
|
|
|
|
placeholder: '请输入最大保存天数',
|
|
|
|
|
|
|
|
label: '最大保存天数',
|
|
|
|
|
|
|
|
value: 'maxStorageDays',
|
|
|
|
|
|
|
|
comp: 'DSInputNumber',
|
|
|
|
|
|
|
|
isSelfCom: true,
|
|
|
|
|
|
|
|
bind: {
|
|
|
|
|
|
|
|
min: 0,
|
|
|
|
|
|
|
|
max: 99999999
|
|
|
|
|
|
|
|
},
|
|
|
|
|
|
|
|
isHideItem: (data) => {
|
|
|
|
|
|
|
|
return data.saveImageEnable && data.saveOriginalImageEnable
|
|
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
},
|
|
|
|
|
|
|
|
// 保存格式
|
|
|
|
|
|
|
|
{
|
|
|
|
|
|
|
|
label: '保存格式',
|
|
|
|
|
|
|
|
value: 'imageFormat',
|
|
|
|
|
|
|
|
type: 'select-arr',
|
|
|
|
|
|
|
|
comp: 'el-select',
|
|
|
|
|
|
|
|
list: 'imageFormatList',
|
|
|
|
|
|
|
|
arrLabel: 'name',
|
|
|
|
|
|
|
|
arrKey: 'id',
|
|
|
|
|
|
|
|
placeholder: '请选择保存格式',
|
|
|
|
|
|
|
|
isHideItem: (data) => {
|
|
|
|
|
|
|
|
return data.saveImageEnable && data.saveOriginalImageEnable
|
|
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
},
|
|
|
|
|
|
|
|
// 启用FTP
|
|
|
|
|
|
|
|
{
|
|
|
|
|
|
|
|
value: 'ftpEnable',
|
|
|
|
|
|
|
|
comp: 'DSSwitch',
|
|
|
|
|
|
|
|
isSelfCom: true,
|
|
|
|
|
|
|
|
widthSize: 1,
|
|
|
|
|
|
|
|
bind: {
|
|
|
|
|
|
|
|
label: '启用FTP'
|
|
|
|
|
|
|
|
},
|
|
|
|
|
|
|
|
isHideItem: (data) => {
|
|
|
|
|
|
|
|
return data.saveImageEnable
|
|
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
},
|
|
|
|
|
|
|
|
// 连接
|
|
|
|
|
|
|
|
{
|
|
|
|
|
|
|
|
value: 'ftpConnectedEnable',
|
|
|
|
|
|
|
|
comp: 'DSSwitch',
|
|
|
|
|
|
|
|
isSelfCom: true,
|
|
|
|
|
|
|
|
widthSize: 1,
|
|
|
|
|
|
|
|
bind: {
|
|
|
|
|
|
|
|
label: '连接'
|
|
|
|
|
|
|
|
},
|
|
|
|
|
|
|
|
isHideItem: (data) => {
|
|
|
|
|
|
|
|
return data.saveImageEnable && data.ftpEnable
|
|
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
},
|
|
|
|
|
|
|
|
// TODO IP 使用t自定义组件重写
|
|
|
|
|
|
|
|
{
|
|
|
|
|
|
|
|
label: 'IP',
|
|
|
|
|
|
|
|
value: 'localIP',
|
|
|
|
|
|
|
|
type: 'input',
|
|
|
|
|
|
|
|
comp: 'el-input',
|
|
|
|
|
|
|
|
bind: { maxlength: 100 },
|
|
|
|
|
|
|
|
isHideItem: (data) => {
|
|
|
|
|
|
|
|
return data.saveImageEnable && data.ftpEnable && data.ftpConnectedEnable
|
|
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
},
|
|
|
|
|
|
|
|
// 服务器端口
|
|
|
|
|
|
|
|
{
|
|
|
|
|
|
|
|
label: '服务器端口',
|
|
|
|
|
|
|
|
value: 'serverPort',
|
|
|
|
|
|
|
|
type: 'input',
|
|
|
|
|
|
|
|
comp: 'el-input',
|
|
|
|
|
|
|
|
bind: { maxlength: 100 },
|
|
|
|
|
|
|
|
isHideItem: (data) => {
|
|
|
|
|
|
|
|
return data.saveImageEnable && data.ftpEnable && data.ftpConnectedEnable
|
|
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
},
|
|
|
|
|
|
|
|
// 用户名
|
|
|
|
|
|
|
|
{
|
|
|
|
|
|
|
|
label: '用户名',
|
|
|
|
|
|
|
|
value: 'username',
|
|
|
|
|
|
|
|
type: 'input',
|
|
|
|
|
|
|
|
comp: 'el-input',
|
|
|
|
|
|
|
|
bind: { maxlength: 100 },
|
|
|
|
|
|
|
|
isHideItem: (data) => {
|
|
|
|
|
|
|
|
return data.saveImageEnable && data.ftpEnable && data.ftpConnectedEnable
|
|
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
},
|
|
|
|
|
|
|
|
// 密码
|
|
|
|
|
|
|
|
{
|
|
|
|
|
|
|
|
label: '密码',
|
|
|
|
|
|
|
|
value: 'password',
|
|
|
|
|
|
|
|
type: 'password',
|
|
|
|
|
|
|
|
comp: 'el-input',
|
|
|
|
|
|
|
|
bind: { 'show-password': true }
|
|
|
|
|
|
|
|
},
|
|
|
|
|
|
|
|
// 编码格式
|
|
|
|
|
|
|
|
{
|
|
|
|
|
|
|
|
label: '编码格式',
|
|
|
|
|
|
|
|
value: 'encodingFormat',
|
|
|
|
|
|
|
|
type: 'select-arr',
|
|
|
|
|
|
|
|
comp: 'el-select',
|
|
|
|
|
|
|
|
list: 'testList',
|
|
|
|
|
|
|
|
arrLabel: 'label',
|
|
|
|
|
|
|
|
arrKey: 'value',
|
|
|
|
|
|
|
|
placeholder: '请选择像素格式',
|
|
|
|
|
|
|
|
isHideItem: (data) => {
|
|
|
|
|
|
|
|
return data.saveImageEnable && data.ftpEnable && data.ftpConnectedEnable
|
|
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
},
|
|
|
|
|
|
|
|
// TODO FTP路径 使用自定义组件重写
|
|
|
|
|
|
|
|
{
|
|
|
|
|
|
|
|
label: 'FTP路径',
|
|
|
|
|
|
|
|
value: 'ftpPath',
|
|
|
|
|
|
|
|
type: 'input',
|
|
|
|
|
|
|
|
comp: 'el-input',
|
|
|
|
|
|
|
|
bind: { maxlength: 100 },
|
|
|
|
|
|
|
|
isHideItem: (data) => {
|
|
|
|
|
|
|
|
return data.saveImageEnable && data.ftpEnable && data.ftpConnectedEnable
|
|
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
},
|
|
|
|
|
|
|
|
// 输出使能
|
|
|
|
|
|
|
|
{
|
|
|
|
|
|
|
|
value: 'outputEnable',
|
|
|
|
|
|
|
|
comp: 'DSSwitch',
|
|
|
|
|
|
|
|
isSelfCom: true,
|
|
|
|
|
|
|
|
widthSize: 1,
|
|
|
|
|
|
|
|
bind: {
|
|
|
|
|
|
|
|
label: '输出使能'
|
|
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
},
|
|
|
|
|
|
|
|
// 像素格式
|
|
|
|
|
|
|
|
{
|
|
|
|
|
|
|
|
label: '像素格式',
|
|
|
|
|
|
|
|
value: 'pixelFormat',
|
|
|
|
|
|
|
|
type: 'select-arr',
|
|
|
|
|
|
|
|
comp: 'el-select',
|
|
|
|
|
|
|
|
list: 'testList',
|
|
|
|
|
|
|
|
arrLabel: 'label',
|
|
|
|
|
|
|
|
arrKey: 'value',
|
|
|
|
|
|
|
|
placeholder: '请选择像素格式'
|
|
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
],
|
|
|
|
|
|
|
|
// 相关列表
|
|
|
|
|
|
|
|
listTypeInfo: {
|
|
|
|
|
|
|
|
testList,
|
|
|
|
|
|
|
|
imageSourceList: [
|
|
|
|
|
|
|
|
{ key: '本地图像', value: '本地图像' },
|
|
|
|
|
|
|
|
{ key: '相机', value: '相机' },
|
|
|
|
|
|
|
|
{ key: 'SDK', value: 'SDK' }
|
|
|
|
|
|
|
|
],
|
|
|
|
|
|
|
|
asyncStorageWayList: [
|
|
|
|
|
|
|
|
{
|
|
|
|
|
|
|
|
id: 0,
|
|
|
|
|
|
|
|
name: '同步存储'
|
|
|
|
|
|
|
|
},
|
|
|
|
|
|
|
|
{
|
|
|
|
|
|
|
|
id: 1,
|
|
|
|
|
|
|
|
name: '异步存储'
|
|
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
],
|
|
|
|
|
|
|
|
saveConditiontList: [
|
|
|
|
|
|
|
|
{
|
|
|
|
|
|
|
|
id: '全部保存',
|
|
|
|
|
|
|
|
name: '全部保存'
|
|
|
|
|
|
|
|
},
|
|
|
|
|
|
|
|
{
|
|
|
|
|
|
|
|
id: 'OK时保存',
|
|
|
|
|
|
|
|
name: 'OK时保存'
|
|
|
|
|
|
|
|
},
|
|
|
|
|
|
|
|
{
|
|
|
|
|
|
|
|
id: 'NG时保存',
|
|
|
|
|
|
|
|
name: 'NG时保存'
|
|
|
|
|
|
|
|
},
|
|
|
|
|
|
|
|
{
|
|
|
|
|
|
|
|
id: '不保存',
|
|
|
|
|
|
|
|
name: '不保存'
|
|
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
],
|
|
|
|
|
|
|
|
storageMethodList: [
|
|
|
|
|
|
|
|
{
|
|
|
|
|
|
|
|
id: 0,
|
|
|
|
|
|
|
|
name: '覆盖存储'
|
|
|
|
|
|
|
|
},
|
|
|
|
|
|
|
|
{
|
|
|
|
|
|
|
|
id: 1,
|
|
|
|
|
|
|
|
name: '停止存储'
|
|
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
],
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
storageUnitList: [
|
|
|
|
|
|
|
|
{
|
|
|
|
|
|
|
|
id: 'MB',
|
|
|
|
|
|
|
|
name: 'MB'
|
|
|
|
|
|
|
|
},
|
|
|
|
|
|
|
|
{
|
|
|
|
|
|
|
|
id: 'GB',
|
|
|
|
|
|
|
|
name: 'GB'
|
|
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
],
|
|
|
|
|
|
|
|
imageFormatList: [
|
|
|
|
|
|
|
|
{
|
|
|
|
|
|
|
|
id: 'jpg',
|
|
|
|
|
|
|
|
name: 'jpg'
|
|
|
|
|
|
|
|
},
|
|
|
|
|
|
|
|
{
|
|
|
|
|
|
|
|
id: 'png',
|
|
|
|
|
|
|
|
name: 'png'
|
|
|
|
|
|
|
|
},
|
|
|
|
|
|
|
|
{
|
|
|
|
|
|
|
|
id: 'bmp',
|
|
|
|
|
|
|
|
name: 'bmp'
|
|
|
|
|
|
|
|
},
|
|
|
|
|
|
|
|
{
|
|
|
|
|
|
|
|
id: 'tiff',
|
|
|
|
|
|
|
|
name: 'tiff'
|
|
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
]
|
|
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
})
|
|
|
|
|
|
|
|
// 渲染参数
|
|
|
|
|
|
|
|
const renderParamsFormOpts = reactive({
|
|
|
|
|
|
|
|
renderParamsConfig: {
|
|
|
|
|
|
|
|
title: '',
|
|
|
|
|
|
|
|
name: 'renderParamsConfig',
|
|
|
|
|
|
|
|
disabled: true, // 表单禁用收缩
|
|
|
|
|
|
|
|
ref: 'renderParamsFormRef',
|
|
|
|
|
|
|
|
widthSize: 2, // 表单每行占据数量 默认为3
|
|
|
|
|
|
|
|
opts: {
|
|
|
|
|
|
|
|
// 相关列表
|
|
|
|
|
|
|
|
labelPosition: 'top', // 标签对齐方式
|
|
|
|
|
|
|
|
formData: {
|
|
|
|
|
|
|
|
circle_multiplier_type: '界面尺寸', // *圆形倍率类型
|
|
|
|
|
|
|
|
line_width_multiplier: null, // *线宽倍率(最大不超过16)
|
|
|
|
|
|
|
|
char_width_multiplier: null, // *字宽倍率(最大不超过16)
|
|
|
|
|
|
|
|
line_connectivity: null // *线型(4连通线)
|
|
|
|
|
|
|
|
},
|
|
|
|
|
|
|
|
fieldList: [
|
|
|
|
|
|
|
|
//圆形倍率类型
|
|
|
|
|
|
|
|
{
|
|
|
|
|
|
|
|
label: '圆形倍率类型',
|
|
|
|
|
|
|
|
value: 'circle_multiplier_type',
|
|
|
|
|
|
|
|
type: 'select-arr',
|
|
|
|
|
|
|
|
comp: 'el-select',
|
|
|
|
|
|
|
|
list: 'typeList',
|
|
|
|
|
|
|
|
arrLabel: 'key',
|
|
|
|
|
|
|
|
arrKey: 'value',
|
|
|
|
|
|
|
|
placeholder: '请选择圆形倍率类型',
|
|
|
|
|
|
|
|
eventHandle: {
|
|
|
|
|
|
|
|
change: (val: any) => {
|
|
|
|
|
|
|
|
console.log(val, 'circle_multiplier_type_change')
|
|
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
},
|
|
|
|
|
|
|
|
bind: { clearable: false }
|
|
|
|
|
|
|
|
},
|
|
|
|
|
|
|
|
// 线宽倍率
|
|
|
|
|
|
|
|
{
|
|
|
|
|
|
|
|
placeholder: '请输入线宽倍率',
|
|
|
|
|
|
|
|
labelRender: () => {
|
|
|
|
|
|
|
|
return (
|
|
|
|
|
|
|
|
<div>
|
|
|
|
|
|
|
|
<span>线宽倍率</span>
|
|
|
|
|
|
|
|
<span className="ds-form-des-text">(最大不超过16)</span>
|
|
|
|
|
|
|
|
</div>
|
|
|
|
|
|
|
|
)
|
|
|
|
|
|
|
|
},
|
|
|
|
|
|
|
|
value: 'line_width_multiplier',
|
|
|
|
|
|
|
|
comp: 'DSInputNumber',
|
|
|
|
|
|
|
|
isSelfCom: true,
|
|
|
|
|
|
|
|
bind: {
|
|
|
|
|
|
|
|
min: 0,
|
|
|
|
|
|
|
|
max: 16
|
|
|
|
|
|
|
|
},
|
|
|
|
|
|
|
|
isHideItem: (data) => {
|
|
|
|
|
|
|
|
return data.circle_multiplier_type === '自定义尺寸'
|
|
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
},
|
|
|
|
|
|
|
|
// 磁盘剩余空间
|
|
|
|
|
|
|
|
{
|
|
|
|
|
|
|
|
placeholder: '请输入字宽倍率',
|
|
|
|
|
|
|
|
labelRender: () => {
|
|
|
|
|
|
|
|
return (
|
|
|
|
|
|
|
|
<div>
|
|
|
|
|
|
|
|
<span>字宽倍率</span>
|
|
|
|
|
|
|
|
<span className="ds-form-des-text">(最大不超过16)</span>
|
|
|
|
|
|
|
|
</div>
|
|
|
|
|
|
|
|
)
|
|
|
|
|
|
|
|
},
|
|
|
|
|
|
|
|
value: 'char_width_multiplier',
|
|
|
|
|
|
|
|
comp: 'DSInputNumber',
|
|
|
|
|
|
|
|
isSelfCom: true,
|
|
|
|
|
|
|
|
bind: {
|
|
|
|
|
|
|
|
min: 0,
|
|
|
|
|
|
|
|
max: 16
|
|
|
|
|
|
|
|
},
|
|
|
|
|
|
|
|
isHideItem: (data) => {
|
|
|
|
|
|
|
|
return data.circle_multiplier_type === '自定义尺寸'
|
|
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
},
|
|
|
|
|
|
|
|
// 线型
|
|
|
|
|
|
|
|
{
|
|
|
|
|
|
|
|
label: '线型',
|
|
|
|
|
|
|
|
value: 'line_connectivity',
|
|
|
|
|
|
|
|
type: 'select-arr',
|
|
|
|
|
|
|
|
comp: 'el-select',
|
|
|
|
|
|
|
|
list: 'lineList',
|
|
|
|
|
|
|
|
arrLabel: 'name',
|
|
|
|
|
|
|
|
arrKey: 'id'
|
|
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
],
|
|
|
|
|
|
|
|
listTypeInfo: {
|
|
|
|
|
|
|
|
testList,
|
|
|
|
|
|
|
|
typeList: [
|
|
|
|
|
|
|
|
{ key: '界面尺寸', value: '界面尺寸' },
|
|
|
|
|
|
|
|
{ key: '自定义尺寸', value: '自定义尺寸' }
|
|
|
|
|
|
|
|
],
|
|
|
|
|
|
|
|
lineList: [
|
|
|
|
|
|
|
|
{
|
|
|
|
|
|
|
|
id: 0,
|
|
|
|
|
|
|
|
name: '4连通线'
|
|
|
|
|
|
|
|
},
|
|
|
|
|
|
|
|
{
|
|
|
|
|
|
|
|
id: 1,
|
|
|
|
|
|
|
|
name: '8连通线'
|
|
|
|
|
|
|
|
},
|
|
|
|
|
|
|
|
{
|
|
|
|
|
|
|
|
id: 2,
|
|
|
|
|
|
|
|
name: '抗锯齿线'
|
|
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
]
|
|
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
})
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
// *渲染设置前项存储设置参数表单
|
|
|
|
|
|
|
|
const activePriorStorageConfig = reactive({
|
|
|
|
|
|
|
|
widthSize: 1, // 表单每行占据数量 默认为3
|
|
|
|
|
|
|
|
title: '前项存储设置',
|
|
|
|
|
|
|
|
labelPosition: 'top', // 标签对齐方式
|
|
|
|
|
|
|
|
ref: 'activeImageRef',
|
|
|
|
|
|
|
|
formData: {
|
|
|
|
|
|
|
|
prior_storage: null // *前项存储设置
|
|
|
|
|
|
|
|
},
|
|
|
|
|
|
|
|
fieldList: [
|
|
|
|
|
|
|
|
{
|
|
|
|
|
|
|
|
placeholder: '请输入',
|
|
|
|
|
|
|
|
label: '',
|
|
|
|
|
|
|
|
value: 'prior_storage',
|
|
|
|
|
|
|
|
comp: 'DSInputNumber',
|
|
|
|
|
|
|
|
// width: 'calc(50% - 6px)',
|
|
|
|
|
|
|
|
isSelfCom: true,
|
|
|
|
|
|
|
|
bind: {
|
|
|
|
|
|
|
|
min: 0,
|
|
|
|
|
|
|
|
max: 10000
|
|
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
]
|
|
|
|
|
|
|
|
})
|
|
|
|
|
|
|
|
// 渲染设置
|
|
|
|
|
|
|
|
const renderSettingFormOpts = reactive({
|
|
|
|
|
|
|
|
renderSettingConfig: {
|
|
|
|
|
|
|
|
title: '',
|
|
|
|
|
|
|
|
name: 'renderSettingConfig',
|
|
|
|
|
|
|
|
disabled: true, // 表单禁用收缩
|
|
|
|
|
|
|
|
ref: 'renderSettingFormRef',
|
|
|
|
|
|
|
|
widthSize: 2, // 表单每行占据数量 默认为3
|
|
|
|
|
|
|
|
opts: {
|
|
|
|
|
|
|
|
labelPosition: 'top', // 标签对齐方式
|
|
|
|
|
|
|
|
formData: {
|
|
|
|
|
|
|
|
content: '', // *内容
|
|
|
|
|
|
|
|
font_size: 36, // *字号
|
|
|
|
|
|
|
|
color: null, // *颜色
|
|
|
|
|
|
|
|
position_x: '', // *位置X (Please Enter)
|
|
|
|
|
|
|
|
position_y: '', // *位置Y (Please Enter)
|
|
|
|
|
|
|
|
prior_storage_settings: [] // *前项存储设置
|
|
|
|
|
|
|
|
},
|
|
|
|
|
|
|
|
fieldList: [
|
|
|
|
|
|
|
|
// 内容
|
|
|
|
|
|
|
|
{
|
|
|
|
|
|
|
|
label: '内容',
|
|
|
|
|
|
|
|
value: 'content',
|
|
|
|
|
|
|
|
type: 'input',
|
|
|
|
|
|
|
|
comp: 'el-input',
|
|
|
|
|
|
|
|
bind: { maxlength: 100 }
|
|
|
|
|
|
|
|
},
|
|
|
|
|
|
|
|
// 字号
|
|
|
|
|
|
|
|
{
|
|
|
|
|
|
|
|
placeholder: '请输入字号',
|
|
|
|
|
|
|
|
label: '字号',
|
|
|
|
|
|
|
|
value: 'font_size',
|
|
|
|
|
|
|
|
comp: 'DSInputNumber',
|
|
|
|
|
|
|
|
isSelfCom: true,
|
|
|
|
|
|
|
|
bind: {
|
|
|
|
|
|
|
|
min: 0,
|
|
|
|
|
|
|
|
max: 100
|
|
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
},
|
|
|
|
|
|
|
|
//TODO 颜色 需要改成自定义控件colorPicker
|
|
|
|
|
|
|
|
{
|
|
|
|
|
|
|
|
label: '颜色',
|
|
|
|
|
|
|
|
value: 'color',
|
|
|
|
|
|
|
|
type: 'input',
|
|
|
|
|
|
|
|
comp: 'el-input',
|
|
|
|
|
|
|
|
bind: { maxlength: 100 }
|
|
|
|
|
|
|
|
},
|
|
|
|
|
|
|
|
// 位置X
|
|
|
|
|
|
|
|
{
|
|
|
|
|
|
|
|
label: '位置X',
|
|
|
|
|
|
|
|
value: 'position_x',
|
|
|
|
|
|
|
|
type: 'input',
|
|
|
|
|
|
|
|
comp: 'el-input',
|
|
|
|
|
|
|
|
bind: { maxlength: 100 }
|
|
|
|
|
|
|
|
},
|
|
|
|
|
|
|
|
// 位置Y
|
|
|
|
|
|
|
|
{
|
|
|
|
|
|
|
|
label: '位置Y',
|
|
|
|
|
|
|
|
value: 'position_y',
|
|
|
|
|
|
|
|
type: 'input',
|
|
|
|
|
|
|
|
comp: 'el-input',
|
|
|
|
|
|
|
|
widthSize: 1,
|
|
|
|
|
|
|
|
width: 'calc(50% - 6px)',
|
|
|
|
|
|
|
|
bind: { maxlength: 100 }
|
|
|
|
|
|
|
|
},
|
|
|
|
|
|
|
|
{
|
|
|
|
|
|
|
|
label: '前项存储设置',
|
|
|
|
|
|
|
|
widthSize: 2, // 表单每行占据数量 默认为3
|
|
|
|
|
|
|
|
value: 'prior_storage_settings',
|
|
|
|
|
|
|
|
comp: 'DSFormList',
|
|
|
|
|
|
|
|
isSelfCom: true,
|
|
|
|
|
|
|
|
bind: {
|
|
|
|
|
|
|
|
formConfig: activePriorStorageConfig,
|
|
|
|
|
|
|
|
isHasPrefix: false,
|
|
|
|
|
|
|
|
isHasSuffix: true
|
|
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
]
|
|
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
})
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
const tabs = ref([
|
|
|
|
|
|
|
|
{
|
|
|
|
|
|
|
|
ref: 'baseFormRef',
|
|
|
|
|
|
|
|
name: '基本参数',
|
|
|
|
|
|
|
|
formOpts: baseFormOpts
|
|
|
|
|
|
|
|
},
|
|
|
|
|
|
|
|
{
|
|
|
|
|
|
|
|
ref: 'renderParamsFormRef',
|
|
|
|
|
|
|
|
name: '渲染参数',
|
|
|
|
|
|
|
|
formOpts: renderParamsFormOpts
|
|
|
|
|
|
|
|
},
|
|
|
|
|
|
|
|
{
|
|
|
|
|
|
|
|
ref: 'renderSettingFormRef',
|
|
|
|
|
|
|
|
name: '渲染设置',
|
|
|
|
|
|
|
|
formOpts: renderSettingFormOpts
|
|
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
])
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
const activeTabName = ref('基本参数')
|
|
|
|
|
|
|
|
</script>
|
|
|
|
|
|
|
|
<template>
|
|
|
|
|
|
|
|
<DSDialog
|
|
|
|
|
|
|
|
v-model="show"
|
|
|
|
|
|
|
|
width="1200"
|
|
|
|
|
|
|
|
@close="handleClose"
|
|
|
|
|
|
|
|
class="settings-dialog ds-dialog"
|
|
|
|
|
|
|
|
title="输出图像"
|
|
|
|
|
|
|
|
>
|
|
|
|
|
|
|
|
<template #default>
|
|
|
|
|
|
|
|
<div class="imageNodeModel-form-container ds-dialog-form-container">
|
|
|
|
|
|
|
|
<el-tabs v-model="activeTabName">
|
|
|
|
|
|
|
|
<el-tab-pane v-for="item in tabs" :key="item.name" :label="item.name" :name="item.name">
|
|
|
|
|
|
|
|
<t-module-form :ref="item.ref" titleBold :formOpts="item.formOpts" :submit="submit">
|
|
|
|
|
|
|
|
<template #footer>
|
|
|
|
|
|
|
|
<div class="ds-dialog-form-footer">
|
|
|
|
|
|
|
|
<DSButton label="连续执行" @click="save" type="info" class="mr-[8px]" />
|
|
|
|
|
|
|
|
<DSButton label="执行" @click="save" type="primary" />
|
|
|
|
|
|
|
|
<!-- <t-button type="primary" size="default">
|
|
|
|
|
|
|
|
<span class="px-[8px]" @click="save"> 确定 </span>
|
|
|
|
|
|
|
|
</t-button> -->
|
|
|
|
|
|
|
|
</div>
|
|
|
|
|
|
|
|
</template>
|
|
|
|
|
|
|
|
</t-module-form>
|
|
|
|
|
|
|
|
</el-tab-pane>
|
|
|
|
|
|
|
|
</el-tabs>
|
|
|
|
|
|
|
|
</div>
|
|
|
|
|
|
|
|
</template>
|
|
|
|
|
|
|
|
</DSDialog>
|
|
|
|
|
|
|
|
</template>
|