From 6aa5544c9ed19475e945ec66485abbee6bedfe25 Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?=E5=A4=9C=E7=AC=99=E6=AD=8C?= <2277317060@qq.com>
Date: Wed, 6 Aug 2025 15:00:32 +0800
Subject: [PATCH] =?UTF-8?q?=E4=BF=AE=E6=94=B9=E6=89=93=E5=8D=B0?=
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
---
.../nodes/form/backgroundNode.vue | 3 +-
src/views/print/index.vue | 53 ++++++++++
src/views/print/nodes/boxNode.vue | 96 +++++++++++++++++++
src/views/print/nodes/inputNode.vue | 15 ---
src/views/print/nodes/selectNode.vue | 45 +++++++--
src/views/print/nodes/textNode.vue | 5 +-
src/views/print/tool.js | 8 +-
7 files changed, 196 insertions(+), 29 deletions(-)
create mode 100644 src/views/print/nodes/boxNode.vue
diff --git a/src/views/boardGenerate/nodes/form/backgroundNode.vue b/src/views/boardGenerate/nodes/form/backgroundNode.vue
index 7e02dd4..f420495 100644
--- a/src/views/boardGenerate/nodes/form/backgroundNode.vue
+++ b/src/views/boardGenerate/nodes/form/backgroundNode.vue
@@ -6,9 +6,8 @@
-
+ :style="{backgroundImage:`url(${props.data.options.backgroundImage})`,backgroundColor:props.data.options.backgroundColor,border:props.data.options.isBorder? ` 1px solid ${props.data.options.borderColor}` :''}">
diff --git a/src/views/print/index.vue b/src/views/print/index.vue
index 2ee6600..5348b6c 100644
--- a/src/views/print/index.vue
+++ b/src/views/print/index.vue
@@ -40,6 +40,8 @@
可输入
+
+
@@ -104,6 +106,10 @@
+
+
+
@@ -136,6 +142,23 @@
+
+
+
+
+
+
+
+
@@ -373,6 +396,9 @@
v-model="nodeAttrForm.border.find(e=>e.type==='left').color"
show-alpha />
+
+
+
@@ -392,9 +418,11 @@ import QRCodeNode from './nodes/QRCodeNode.vue';
import TimeNode from './nodes/timeNode.vue';
import SelectNode from './nodes/selectNode.vue';
import InputNode from './nodes/inputNode.vue';
+import BoxNode from './nodes/boxNode.vue';
import { updatePrintTemplateList } from '@/api/system/printTemplateList';
import { getPrintTemplateInfo, listPrintTemplateInfo, updatePrintTemplateInfo } from '@/api/system/printTemplateInfo';
import { getPrintTemplateNode, getSysPrintTemplateNodeList, updateTemplateNode } from '@/api/system/printTemplateNode';
+import { listType } from '@/api/system/dict/type';
const router = useRouter();
const { updateNode } = useVueFlow();
@@ -403,6 +431,24 @@ const { onDragStart, onDrop, onDragOver } = tool();
const { cmToPx } = options;
const internalInstance = getCurrentInstance();
+const data = {
+ planCode:'1',
+ cardId:'1',
+ classes:'1',
+ planCode:'1',
+ planCode:'1',
+ planCode:'1',
+ planCode:'1',
+ planCode:'1',
+ planCode:'1',
+ planCode:'1',
+ planCode:'1',
+ planCode:'1',
+ planCode:'1',
+ planCode:'1',
+};
+
+const dics = ref([]);
const flowRef = ref();
// const isView = ref(false);
const isSnapToGrid = ref(true);
@@ -538,6 +584,13 @@ const clear = () => {
};
onMounted(() => {
+ listType({
+ pageNum: 1,
+ pageSize: 9999999
+ }).then(e => {
+ dics.value = e.rows;
+ console.log(dics.value);
+ });
flowRef.value.onInit(() => {
flowRef.value.setTransform({
x: 0,
diff --git a/src/views/print/nodes/boxNode.vue b/src/views/print/nodes/boxNode.vue
new file mode 100644
index 0000000..1610cd8
--- /dev/null
+++ b/src/views/print/nodes/boxNode.vue
@@ -0,0 +1,96 @@
+
+
+
+
+
+
+ {{ eleData }}
+
+
+
+
+
+
+
diff --git a/src/views/print/nodes/inputNode.vue b/src/views/print/nodes/inputNode.vue
index 9edc219..ba7bc00 100644
--- a/src/views/print/nodes/inputNode.vue
+++ b/src/views/print/nodes/inputNode.vue
@@ -57,24 +57,9 @@ const props = defineProps({
});
const text = ref('');
const options = ref([]);
-const getEleData = () => {
- if (props.isView) {
- options.value = props.data.options.selectOptions || [];
- } else {
- options.value = props.data.options.selectOptions || [];
- }
-};
const spanChange = (val) => {
text.value = val;
};
-onMounted(() => {
- getEleData();
-});
-watch(() => JSON.parse(JSON.stringify(props.data.options.selectOptions)), (obj1, obj2) => {
- if (JSON.stringify(obj1) !== JSON.stringify(obj2)) {
- getEleData();
- }
-}, { deep: true });
watch(() => JSON.parse(JSON.stringify(props.data.options.default)), (obj1, obj2) => {
if (JSON.stringify(obj1) !== JSON.stringify(obj2)) {
text.value = props.data.options.default;
diff --git a/src/views/print/nodes/selectNode.vue b/src/views/print/nodes/selectNode.vue
index 53c76af..514c2ef 100644
--- a/src/views/print/nodes/selectNode.vue
+++ b/src/views/print/nodes/selectNode.vue
@@ -31,6 +31,8 @@