From 2d9a1cbd4760d5a2640f1a0f6965f828319436a6 Mon Sep 17 00:00:00 2001 From: xiaxl Date: Thu, 21 Jul 2022 10:16:31 +0800 Subject: [PATCH] =?UTF-8?q?=E5=88=86=E7=BB=84=E9=94=9A=E7=82=B9=E5=8D=A1?= =?UTF-8?q?=E7=89=87?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../src/main/resources/static/template/index.yaml | 134 +++--- .../resources/static/template/model_point_card.ftl | 519 +++++++++++++++++++++ 2 files changed, 595 insertions(+), 58 deletions(-) create mode 100644 smtweb-framework/bpm/src/main/resources/static/template/model_point_card.ftl diff --git a/smtweb-framework/bpm/src/main/resources/static/template/index.yaml b/smtweb-framework/bpm/src/main/resources/static/template/index.yaml index b1d8b7a..59b1a2b 100644 --- a/smtweb-framework/bpm/src/main/resources/static/template/index.yaml +++ b/smtweb-framework/bpm/src/main/resources/static/template/index.yaml @@ -19,62 +19,6 @@ model: label: '列表数据集' desc: '请选择列表数据集' - - name: 'model_card' - label: '简单卡片' - # list/card/view - type: 'card' - # 布局 - layout: - - - name: 'c1' - label: '简单卡片' - type: 'card' - hasGroup: false - # 变量 - param: - - - name: 'col' - type: 'number' - label: '列数' - desc: '请选择表单列数' - - - name: 'model_step_card' - label: '步骤卡片' - # list/card/view - type: 'card' - # 布局 - layout: - - - name: 'c1' - label: '步骤卡片' - type: 'card' - hasGroup: false - # 变量 - param: - - - name: 'col' - type: 'number' - label: '列数' - desc: '请选择表单列数(目前只支持1,2,3)' - - - name: 'model_group_card' - label: '分组卡片' - # list/card/view - type: 'card' - # 布局 - layout: - - - name: 'c1' - label: '分组卡片' - type: 'card' - hasGroup: true - param: - - - name: 'mainDs' - type: 'ds' - label: '主卡片数据集' - desc: '请选择主要卡片数据集' - - name: 'model_list_card' label: '简单列表(含卡片)' # list/card/view @@ -114,7 +58,7 @@ model: desc: '请选择弹窗卡片列数(1或2)' - name: 'model_list_list' - label: '双列表' + label: '双列表(主+副)' # list/card/view type: 'list' # 布局 @@ -216,4 +160,78 @@ model: name: 'col' type: 'number' label: '弹窗卡片列数' - desc: '请选择弹窗卡片列数(1或2)' \ No newline at end of file + desc: '请选择弹窗卡片列数(1或2)' + - + name: 'model_card' + label: '简单卡片' + # list/card/view + type: 'card' + # 布局 + layout: + - + name: 'c1' + label: '简单卡片' + type: 'card' + hasGroup: false + # 变量 + param: + - + name: 'col' + type: 'number' + label: '列数' + desc: '请选择表单列数' + - + name: 'model_step_card' + label: '步骤卡片' + # list/card/view + type: 'card' + # 布局 + layout: + - + name: 'c1' + label: '步骤卡片' + type: 'card' + hasGroup: false + # 变量 + param: + - + name: 'col' + type: 'number' + label: '列数' + desc: '请选择表单列数(目前只支持1,2,3)' + - + name: 'model_group_card' + label: '分组卡片' + # list/card/view + type: 'card' + # 布局 + layout: + - + name: 'c1' + label: '分组卡片' + type: 'card' + hasGroup: true + param: + - + name: 'mainDs' + type: 'ds' + label: '主卡片数据集' + desc: '请选择主要卡片数据集' + - + name: 'model_point_card' + label: '分组锚点卡片' + # list/card/view + type: 'card' + # 布局 + layout: + - + name: 'c1' + label: '分组卡片' + type: 'card' + hasGroup: true + param: + - + name: 'mainDs' + type: 'ds' + label: '主卡片数据集' + desc: '请选择主要卡片数据集' \ No newline at end of file diff --git a/smtweb-framework/bpm/src/main/resources/static/template/model_point_card.ftl b/smtweb-framework/bpm/src/main/resources/static/template/model_point_card.ftl new file mode 100644 index 0000000..f1a2dcb --- /dev/null +++ b/smtweb-framework/bpm/src/main/resources/static/template/model_point_card.ftl @@ -0,0 +1,519 @@ +{ + "version": 6, + "form": [ + { + "page": { + "id": "p${newId()}", + "type": "fx-page", + "props": { + "title": "${title}", + "key": "${newId()}" + } + }, + "graph": { + "shape": "panel", + "id": "root_panel", + "type": "fx-split-panel", + "props": { + "horizontal": false, + "shadow": "never" + }, + "children": [ + { + "id": "${newId()}", + "type": "fx-split-panel", + "shape": "panel", + "props": { + "size": "56", + "horizontal": true, + "scroll": false, + "name": "s11" + }, + "children": [ + { + "id": "${newId()}", + "type": "fx-form-panel", + "shape": "panel", + "props": { + "alignY": "center", + "backgroundImage": "", + "size": "50" + }, + "children": [ + { + "id": "${newId()}", + "type": "fx-button-group", + "props": { + "menus": [] + }, + "slots": { + "default": [ + { + "type": "fx-button", + "props": { + "label": "返回", + "leftIcon": "left", + "action": "button:return", + "text": false, + "link": true, + "type": "primary", + "size": "large" + }, + "id": "${newId()}" + } + ], + "dropdown": [] + } + } + ] + }, + { + "id": "${newId()}", + "type": "fx-form-panel", + "shape": "panel", + "props": { + "alignY": "center", + "size": "200", + "backgroundImage": "", + "paddingLeft": 10 + }, + "children": [ + { + "id": "${newId()}", + "type": "fx-title", + "props": { + "label": "分组表单" + } + } + ] + }, + { + "id": "${newId()}", + "type": "fx-form-panel", + "shape": "panel", + "props": { + "alignY": "center", + "backgroundImage": "", + "paddingRight": 32 + }, + "children": [ + { + "id": "${newId()}", + "type": "fx-button-group", + "props": { + "menus": [], + "textAlign": "right" + }, + "slots": { + "default": [ + { + "type": "fx-button", + "props": { + "label": "删除", + "leftIcon": "delete", + "type": "", + "action": "button:remove" + }, + "id": "${newId()}" + }, + { + "id": "${newId()}", + "type": "fx-button", + "props": { + "label": "新增", + "type": "primary", + "linkType": "curr", + "leftIcon": "plus" + } + } + ], + "dropdown": [] + } + } + ] + } + ] + }, + { + "id": "${newId()}", + "type": "fx-form-panel", + "shape": "panel", + "props": { + "size": "0" + }, + "children": [ + { + "id": "id${newId()}", + "type": "fx-divider", + "props": { + "label": "", + "contentPosition": "center", + "direction": "horizontal" + } + } + ] + }, + { + "id": "${newId()}", + "type": "fx-form-panel", + "shape": "panel", + "props": { + "size": "15", + "backgroundColor": "--color-transparent" + }, + "children": [] + }, + { + "id": "${newId()}", + "type": "fx-split-panel", + "shape": "panel", + "props": { + "horizontal": true + }, + "children": [ + { + "id": "${newId()}", + "type": "fx-split-panel", + "shape": "panel", + "props": { + "horizontal": false, + "scroll": true + }, + "children": [ + <#list layout.c1 as group> + { + "id": "${newId()}", + "type": "fx-form-panel", + "shape": "panel", + "props": { + "size": "48", + "label": "${group.label}", + "colNum": 2, + "alignY": "center", + "paddingLeft": 32, + "paddingRight": 32, + "shadow": "", + "backgroundImage": "bgImg-region-title" + }, + "children": [ + { + "id": "id${newId()}", + "type": "fx-title", + "props": { + "label": "${group.label}", + "fontSize": 16, + "color": "#01070D", + "fontWeight": "bold", + "showPrefix": false, + "prefixWidth": 5, + "prefixHeight": 24, + "prefixColor": "#1E90FF" + } + } + ] + }, + { + "id": "${newId()}", + "type": "fx-form-panel", + "shape": "panel", + "props": { + "size": "0" + }, + "children": [ + { + "id": "id${newId()}", + "type": "fx-divider", + "props": { + "label": "", + "contentPosition": "center", + "direction": "horizontal" + } + } + ] + }, + <#if (group.type == "card")> + { + "id": "${newId()}", + "type": "fx-form-panel", + "shape": "panel", + "props": { + "size": "0", + "gridTemplateColumns": "1fr 1fr 1fr", + "paddingTop": 32 + }, + "children": [ + <#list group.fields as field> + { + "id": "${newId()}", + "type": "fx-${field.editor}", + "props": { + "label": "${field.label}", + "type": "text", + "dataset": "${field.dataset}", + "required": "${field.required}", + "field": "${field.id}", + "placeholder": "请输入内容", + "labelWidth": 150, + "readonly": "${field.readonly}", + "affixError": true + }, + "events": {} + }<#if field_has_next>, + + ] + }, + <#elseif (group.type == "list")> + { + "id": "${newId()}", + "type": "fx-form-panel", + "shape": "panel", + "props": { + "size": "400", + "label": "列表", + "colNum": 0, + "paddingLeft": 20, + "paddingRight": 20, + "shadow": "", + "paddingTop": 0 + }, + "children": [ + { + "id": "id${newId()}", + "type": "fx-table", + "props": { + "label": "表格", + "border": true, + "stripe": true, + "showHeader": true, + "fit": true, + "dataset": "${group.dataset}", + "actionWidth": 150 + }, + "slots": { + "default": [ + <#list group.fields as field> + { + "id": "id${newId()}", + "type": "fx-table-column", + "props": { + "field": "${field.id}", + "label": "${field.label}" + } + }<#if field_has_next>, + + ], + "button": [ + { + "id": "id${newId()}", + "type": "fx-button", + "props": { + "label": "编辑", + "type": "text", + "leftIcon": "edit", + "action": "button:edit", + "dataset": "${group.dataset}", + "link": true, + "linkType": "", + "nextAction": "", + "fxLink": "" + } + }, + { + "id": "id${newId()}", + "type": "fx-button", + "props": { + "label": "删除", + "type": "text", + "leftIcon": "delete-themes", + "action": "button:remove", + "preAction": "", + "link": true, + "confirm": "" + } + } + ] + }, + "events": {} + } + ] + }, + + + { + "id": "${newId()}", + "type": "fx-form-panel", + "shape": "panel", + "props": { + "minWidth": "2000", + "maxWidth": "2000" + }, + "children": [] + } + ] + }, + { + "id": "${newId()}", + "type": "fx-split-panel", + "shape": "panel", + "props": { + "size": "15", + "horizontal": false + }, + "children": [ + { + "id": "${newId()}", + "type": "fx-form-panel", + "shape": "panel", + "props": { + "backgroundColor": "--color-transparent" + }, + "children": [] + }, + { + "id": "${newId()}", + "type": "fx-form-panel", + "shape": "panel", + "props": { + "backgroundColor": "--color-transparent", + "minWidth": "", + "maxWidth": "" + }, + "children": [] + } + ] + }, + { + "id": "${newId()}", + "type": "fx-split-panel", + "shape": "panel", + "props": { + "size": "180", + "horizontal": false, + "panelHidden": false + }, + "children": [ + { + "id": "${newId()}", + "type": "fx-form-panel", + "shape": "panel", + "props": { + "alignX": "start", + "size": "0" + }, + "children": [ + { + "id": "id${newId()}", + "type": "fx-tabs", + "props": { + "tabPosition": "right" + }, + "slots": { + "default": [ + <#list layout.c1 as group> + { + "type": "fx-tab", + "props": { + "name": "tab1", + "label": "${group.label}" + }, + "id": "${newId()}" + } + <#if group_has_next>, + + ] + }, + "events": {} + } + ] + }, + { + "id": "${newId()}", + "type": "fx-form-panel", + "shape": "panel", + "props": { + "backgroundColor": "--color-transparent" + }, + "children": [] + } + ] + } + ] + }, + { + "shape": "panel", + "id": "form_panel", + "type": "fx-form-panel", + "props": { + "colNum": 3, + "paddingX": 5, + "paddingY": 5, + "size": "56", + "alignX": "", + "alignY": "center", + "shadow": "always" + }, + "children": [ + { + "id": "id${newId()}", + "type": "fx-button-group", + "props": { + "showDropdown": false, + "textAlign": "center" + }, + "slots": { + "default": [ + { + "type": "fx-button", + "props": { + "label": "重置", + "leftIcon": "", + "type": "", + "action": "button:add", + "linkType": "curr" + }, + "id": "id${newId()}", + }, + { + "type": "fx-button", + "props": { + "label": "保存", + "leftIcon": "", + "type": "primary", + "action": "button:save" + }, + "id": "id${newId()}", + }, + { + "type": "fx-button", + "props": { + "label": "保存并新增", + "leftIcon": "", + "action": "button:return", + "type": "primary" + }, + "id": "id${newId()}", + } + ], + "dropdown": [] + }, + "layout": { + "row": 3, + "col": 3 + } + } + ] + } + ] + } + } + ], + "model": [ + <#list datasets as dataset> + <#include "incModel/inc_model.ftl"/><#if dataset_has_next>, + + ], + "option": { + "widgetRef": [${widgetRef}], + "vars": [] + } +} \ No newline at end of file