|
|
|
|
@ -391,6 +391,10 @@ export default {
|
|
|
|
|
this.drawField.areas.push(area)
|
|
|
|
|
|
|
|
|
|
this.drawField = null
|
|
|
|
|
|
|
|
|
|
this.selectedAreaRef.value = area
|
|
|
|
|
|
|
|
|
|
this.save()
|
|
|
|
|
} else {
|
|
|
|
|
const documentRef = this.documentRefs.find((e) => e.document.uuid === area.attachment_uuid)
|
|
|
|
|
const pageMask = documentRef.pageRefs[area.page].$refs.mask
|
|
|
|
|
@ -401,33 +405,37 @@ export default {
|
|
|
|
|
const previousField = [...this.template.fields].reverse().find((f) => f.type === type)
|
|
|
|
|
const previousArea = previousField?.areas?.[previousField.areas.length - 1]
|
|
|
|
|
|
|
|
|
|
const areaW = previousArea?.w || (30 / pageMask.clientWidth)
|
|
|
|
|
const areaH = previousArea?.h || (30 / pageMask.clientHeight)
|
|
|
|
|
if (previousArea || area.w) {
|
|
|
|
|
const areaW = previousArea?.w || (30 / pageMask.clientWidth)
|
|
|
|
|
const areaH = previousArea?.h || (30 / pageMask.clientHeight)
|
|
|
|
|
|
|
|
|
|
if ((pageMask.clientWidth * area.w) < 5) {
|
|
|
|
|
area.x = area.x - (areaW / 2)
|
|
|
|
|
area.y = area.y - (areaH / 2)
|
|
|
|
|
}
|
|
|
|
|
if ((pageMask.clientWidth * area.w) < 5) {
|
|
|
|
|
area.x = area.x - (areaW / 2)
|
|
|
|
|
area.y = area.y - (areaH / 2)
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
area.w = areaW
|
|
|
|
|
area.h = areaH
|
|
|
|
|
area.w = areaW
|
|
|
|
|
area.h = areaH
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
const field = {
|
|
|
|
|
name: '',
|
|
|
|
|
uuid: v4(),
|
|
|
|
|
required: type !== 'checkbox',
|
|
|
|
|
type,
|
|
|
|
|
submitter_uuid: this.selectedSubmitter.uuid,
|
|
|
|
|
areas: [area]
|
|
|
|
|
}
|
|
|
|
|
if (area.w) {
|
|
|
|
|
const field = {
|
|
|
|
|
name: '',
|
|
|
|
|
uuid: v4(),
|
|
|
|
|
required: type !== 'checkbox',
|
|
|
|
|
type,
|
|
|
|
|
submitter_uuid: this.selectedSubmitter.uuid,
|
|
|
|
|
areas: [area]
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
this.template.fields.push(field)
|
|
|
|
|
}
|
|
|
|
|
this.template.fields.push(field)
|
|
|
|
|
|
|
|
|
|
this.selectedAreaRef.value = area
|
|
|
|
|
this.selectedAreaRef.value = area
|
|
|
|
|
|
|
|
|
|
this.save()
|
|
|
|
|
this.save()
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
},
|
|
|
|
|
onDropfield (area) {
|
|
|
|
|
const field = {
|
|
|
|
|
|