|
|
@ -62,6 +62,7 @@ const form = ref({ |
|
|
|
matrixId: undefined, |
|
|
|
times: [ |
|
|
|
{ |
|
|
|
id: Date.now(), |
|
|
|
matrixPathType: 'horizontal', // 路径类型 |
|
|
|
motorZHeight: undefined, // 高度 |
|
|
|
gasPressure: undefined, // Mpa兆帕 |
|
|
@ -135,7 +136,7 @@ const handleTabsEdit = (targetName: TabPaneName | undefined, action: 'remove' | |
|
|
|
FtMessage.warning('最多添加10次喷涂') |
|
|
|
return |
|
|
|
} |
|
|
|
form.value.times.push(cloneDeep(form.value.times.at(-1))) |
|
|
|
form.value.times.push(cloneDeep({ ...form.value.times.at(-1), id: Date.now() })) |
|
|
|
const selection = sprayRefs.value[activeTab.value].getSelection() |
|
|
|
console.log(selection) |
|
|
|
activeTab.value = form.value.times.length - 1 |
|
|
@ -203,9 +204,7 @@ const touchendHandle = () => { |
|
|
|
<el-form ref="formRef" label-width="120" :model="form" :rules="rules"> |
|
|
|
<el-row> |
|
|
|
<el-col :span="12"> |
|
|
|
<el-form-item |
|
|
|
label="工艺名称" prop="name" |
|
|
|
> |
|
|
|
<el-form-item label="工艺名称" prop="name"> |
|
|
|
<el-input v-model="form.name" placeholder="" /> |
|
|
|
</el-form-item> |
|
|
|
</el-col> |
|
|
@ -230,7 +229,15 @@ const touchendHandle = () => { |
|
|
|
> |
|
|
|
<SwiperSlide v-for="(item, index) in form.times" :key="index"> |
|
|
|
<div class="tab-content"> |
|
|
|
<TrayGraph ref="sprayRefs" :key="index" :container="`spray-${index + 1}`" select @touchstart="touchstartHandle" @touchmove="touchmoveHandle" @touchend="touchendHandle" /> |
|
|
|
<TrayGraph |
|
|
|
ref="sprayRefs" |
|
|
|
:key="item.id" |
|
|
|
:container="`spray-${index + 1}`" |
|
|
|
select |
|
|
|
@touchstart="touchstartHandle" |
|
|
|
@touchmove="touchmoveHandle" |
|
|
|
@touchend="touchendHandle" |
|
|
|
/> |
|
|
|
<div class="content-form"> |
|
|
|
<el-form-item label="喷涂路线"> |
|
|
|
<div class="route-img"> |
|
|
@ -283,43 +290,46 @@ const touchendHandle = () => { |
|
|
|
<el-form-item |
|
|
|
label="氮气气压" |
|
|
|
:prop="`times.${index}.gasPressure`" |
|
|
|
:rules="[{ required: true, |
|
|
|
trigger: 'blur', |
|
|
|
validator: (rule: any, value: any, callback: any) => { |
|
|
|
if (!value && value !== 0) { |
|
|
|
callback(new Error('请输入氮气气压')); |
|
|
|
} |
|
|
|
else if (value < 0 || value > 100) { |
|
|
|
callback(new Error('氮气气压需在0-100之间')); |
|
|
|
} |
|
|
|
else { |
|
|
|
callback(); |
|
|
|
} |
|
|
|
} }, |
|
|
|
:rules="[ |
|
|
|
{ |
|
|
|
required: true, |
|
|
|
trigger: 'blur', |
|
|
|
validator: (rule: any, value: any, callback: any) => { |
|
|
|
if (!value && value !== 0) { |
|
|
|
callback(new Error('请输入氮气气压')); |
|
|
|
} |
|
|
|
else if (value < 0 || value > 100) { |
|
|
|
callback(new Error('氮气气压需在0-100之间')); |
|
|
|
} |
|
|
|
else { |
|
|
|
callback(); |
|
|
|
} |
|
|
|
}, |
|
|
|
}, |
|
|
|
]" |
|
|
|
> |
|
|
|
<el-input |
|
|
|
v-model="item.gasPressure" min="0.1" |
|
|
|
max="100" type="number" |
|
|
|
/> |
|
|
|
<el-input v-model="item.gasPressure" min="0.1" max="100" type="number" /> |
|
|
|
<span class="unit-text">Mpa</span> |
|
|
|
</el-form-item> |
|
|
|
<el-form-item |
|
|
|
label="基质流速" |
|
|
|
:prop="`times.${index}.volume`" |
|
|
|
:rules="[{ required: true, |
|
|
|
trigger: 'blur', |
|
|
|
validator: (rule: any, value: any, callback: any) => { |
|
|
|
if (!value && value !== 0) { |
|
|
|
callback(new Error('请输入基质流速')); |
|
|
|
} |
|
|
|
else if (value < 0 || value > 60) { |
|
|
|
callback(new Error('基质流速需在0-60之间')); |
|
|
|
} |
|
|
|
else { |
|
|
|
callback(); |
|
|
|
} |
|
|
|
} }, |
|
|
|
:rules="[ |
|
|
|
{ |
|
|
|
required: true, |
|
|
|
trigger: 'blur', |
|
|
|
validator: (rule: any, value: any, callback: any) => { |
|
|
|
if (!value && value !== 0) { |
|
|
|
callback(new Error('请输入基质流速')); |
|
|
|
} |
|
|
|
else if (value < 0 || value > 60) { |
|
|
|
callback(new Error('基质流速需在0-60之间')); |
|
|
|
} |
|
|
|
else { |
|
|
|
callback(); |
|
|
|
} |
|
|
|
}, |
|
|
|
}, |
|
|
|
]" |
|
|
|
> |
|
|
|
<el-input v-model="item.volume" type="number" /> |
|
|
@ -363,19 +373,22 @@ const touchendHandle = () => { |
|
|
|
<el-form-item |
|
|
|
label="移动速度" |
|
|
|
:prop="`times.${index}.movingSpeed`" |
|
|
|
:rules="[{ required: true, |
|
|
|
trigger: 'blur', |
|
|
|
validator: (rule: any, value: any, callback: any) => { |
|
|
|
if (!value) { |
|
|
|
callback(new Error('请输入移动速度')); |
|
|
|
} |
|
|
|
else if (value < 1 || value > 100) { |
|
|
|
callback(new Error('移动速度需在1-100之间')); |
|
|
|
} |
|
|
|
else { |
|
|
|
callback(); |
|
|
|
} |
|
|
|
} }, |
|
|
|
:rules="[ |
|
|
|
{ |
|
|
|
required: true, |
|
|
|
trigger: 'blur', |
|
|
|
validator: (rule: any, value: any, callback: any) => { |
|
|
|
if (!value) { |
|
|
|
callback(new Error('请输入移动速度')); |
|
|
|
} |
|
|
|
else if (value < 1 || value > 100) { |
|
|
|
callback(new Error('移动速度需在1-100之间')); |
|
|
|
} |
|
|
|
else { |
|
|
|
callback(); |
|
|
|
} |
|
|
|
}, |
|
|
|
}, |
|
|
|
]" |
|
|
|
> |
|
|
|
<el-input v-model="item.movingSpeed" type="number" /> |
|
|
@ -384,19 +397,22 @@ const touchendHandle = () => { |
|
|
|
<el-form-item |
|
|
|
label="间距" |
|
|
|
:prop="`times.${index}.spacing`" |
|
|
|
:rules="[{ required: true, |
|
|
|
trigger: 'blur', |
|
|
|
validator: (rule: any, value: any, callback: any) => { |
|
|
|
if (!value && value !== 0) { |
|
|
|
callback(new Error('请输入间距')); |
|
|
|
} |
|
|
|
else if (value < 0 || value > 100) { |
|
|
|
callback(new Error('间距需在0-100之间')); |
|
|
|
} |
|
|
|
else { |
|
|
|
callback(); |
|
|
|
} |
|
|
|
} }, |
|
|
|
:rules="[ |
|
|
|
{ |
|
|
|
required: true, |
|
|
|
trigger: 'blur', |
|
|
|
validator: (rule: any, value: any, callback: any) => { |
|
|
|
if (!value && value !== 0) { |
|
|
|
callback(new Error('请输入间距')); |
|
|
|
} |
|
|
|
else if (value < 0 || value > 100) { |
|
|
|
callback(new Error('间距需在0-100之间')); |
|
|
|
} |
|
|
|
else { |
|
|
|
callback(); |
|
|
|
} |
|
|
|
}, |
|
|
|
}, |
|
|
|
]" |
|
|
|
> |
|
|
|
<el-input v-model="item.spacing" type="number" /> |
|
|
@ -405,19 +421,22 @@ const touchendHandle = () => { |
|
|
|
<el-form-item |
|
|
|
label="等待时间" |
|
|
|
:prop="`times.${index}.delay`" |
|
|
|
:rules="[{ required: true, |
|
|
|
trigger: 'blur', |
|
|
|
validator: (rule: any, value: any, callback: any) => { |
|
|
|
if (!value && value !== 0) { |
|
|
|
callback(new Error('请输入等待时间')); |
|
|
|
} |
|
|
|
else if (value < 0 || value > 1200) { |
|
|
|
callback(new Error('等待时间需在0-1200之间')); |
|
|
|
} |
|
|
|
else { |
|
|
|
callback(); |
|
|
|
} |
|
|
|
} }, |
|
|
|
:rules="[ |
|
|
|
{ |
|
|
|
required: true, |
|
|
|
trigger: 'blur', |
|
|
|
validator: (rule: any, value: any, callback: any) => { |
|
|
|
if (!value && value !== 0) { |
|
|
|
callback(new Error('请输入等待时间')); |
|
|
|
} |
|
|
|
else if (value < 0 || value > 1200) { |
|
|
|
callback(new Error('等待时间需在0-1200之间')); |
|
|
|
} |
|
|
|
else { |
|
|
|
callback(); |
|
|
|
} |
|
|
|
}, |
|
|
|
}, |
|
|
|
]" |
|
|
|
> |
|
|
|
<el-input v-model="item.delay" type="number" /> |
|
|
@ -427,19 +446,22 @@ const touchendHandle = () => { |
|
|
|
v-if="item.matrixPathType === 'grid'" |
|
|
|
label="中间等待时间" |
|
|
|
:prop="`times.${index}.gridDelay`" |
|
|
|
:rules="[{ required: true, |
|
|
|
trigger: 'blur', |
|
|
|
validator: (rule: any, value: any, callback: any) => { |
|
|
|
if (!value && value !== 0) { |
|
|
|
callback(new Error('请输入等待时间')); |
|
|
|
} |
|
|
|
else if (value < 0 || value > 120) { |
|
|
|
callback(new Error('等待时间需在0-120之间')); |
|
|
|
} |
|
|
|
else { |
|
|
|
callback(); |
|
|
|
} |
|
|
|
} }, |
|
|
|
:rules="[ |
|
|
|
{ |
|
|
|
required: true, |
|
|
|
trigger: 'blur', |
|
|
|
validator: (rule: any, value: any, callback: any) => { |
|
|
|
if (!value && value !== 0) { |
|
|
|
callback(new Error('请输入等待时间')); |
|
|
|
} |
|
|
|
else if (value < 0 || value > 120) { |
|
|
|
callback(new Error('等待时间需在0-120之间')); |
|
|
|
} |
|
|
|
else { |
|
|
|
callback(); |
|
|
|
} |
|
|
|
}, |
|
|
|
}, |
|
|
|
]" |
|
|
|
> |
|
|
|
<el-input v-model="item.gridDelay" type="number" /> |
|
|
|