21 lines
771 B
JavaScript
21 lines
771 B
JavaScript
import { DIRECTION_LINE, geometryError } from '@/components/sense/geometry-editor/geometry'
|
|
|
|
export function buildAreaPayload(form) {
|
|
return {
|
|
name: String(form.name || '').trim(),
|
|
kind: form.kind,
|
|
routeId: form.routeId,
|
|
points: (form.points || []).map(point => ({ x: Number(point.x), y: Number(point.y) })),
|
|
direction: form.kind === DIRECTION_LINE ? form.direction : '',
|
|
enabled: Boolean(form.enabled),
|
|
expectedVersion: Number(form.version || 0)
|
|
}
|
|
}
|
|
|
|
export function validateAreaForm(form) {
|
|
if (!String(form.name || '').trim()) return '请填写配置名称'
|
|
if (!form.routeId) return '请选择设备与视频码流'
|
|
const payload = buildAreaPayload(form)
|
|
return geometryError(payload.kind, payload.points, payload.direction)
|
|
}
|