From bf4b0932f3f5bf596ac4621529b1c3b8a146706f Mon Sep 17 00:00:00 2001 From: likunming Date: Thu, 12 Sep 2024 14:05:41 +0800 Subject: [PATCH] =?UTF-8?q?=E7=BB=84=E4=BB=B6=E4=BC=98=E5=8C=96?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../src/platform/components/form/WForm.vue | 20 +- .../src/platform/components/grid/WGrid.vue | 4 +- .../components/select/WGridSelect.vue | 25 +- .../src/views/likm/Drawer.vue | 506 +++++++++++++++--- .../src/views/likm/Grid.vue | 3 +- .../src/views/likm/TreeGrid.vue | 10 + 6 files changed, 467 insertions(+), 101 deletions(-) diff --git a/io.sc.platform.core.frontend/src/platform/components/form/WForm.vue b/io.sc.platform.core.frontend/src/platform/components/form/WForm.vue index a35b8627..b32aa43d 100644 --- a/io.sc.platform.core.frontend/src/platform/components/form/WForm.vue +++ b/io.sc.platform.core.frontend/src/platform/components/form/WForm.vue @@ -103,7 +103,7 @@ const defaultValueHandler = (field) => { field.multiple ) { return []; - } else if (field.type === 'w-code-mirror') { + } else if (field.type === 'w-code-mirror' || field.type === 'w-date') { return ''; } return undefined; @@ -137,8 +137,10 @@ watch( }, ); const fieldsComputed = computed(() => { - localFlag.value; - return fields_.value; + if (!Tools.isEmpty(localFlag.value)) { + return fields_.value; + } + return []; }); for (const field of fields_.value as any) { @@ -208,9 +210,15 @@ const getData = () => { * @param data 数据对象(JSON格式) */ const setData = (data) => { - for (const field of fields_.value as any) { - if (data[field.name] !== undefined) { - formData[field.name] = data[field.name]; + if (Tools.isEmpty(data)) { + for (const field of fields_.value as any) { + formData[field.name] = defaultValueHandler(field); + } + } else { + for (const field of fields_.value as any) { + if (data[field.name] !== undefined) { + formData[field.name] = data[field.name]; + } } } }; diff --git a/io.sc.platform.core.frontend/src/platform/components/grid/WGrid.vue b/io.sc.platform.core.frontend/src/platform/components/grid/WGrid.vue index 08ff4949..5794f340 100644 --- a/io.sc.platform.core.frontend/src/platform/components/grid/WGrid.vue +++ b/io.sc.platform.core.frontend/src/platform/components/grid/WGrid.vue @@ -800,7 +800,7 @@ const allTickedStatus = () => { ticked_.push(item); } }); - if (ticked_.length === table.rows.length) { + if (ticked_.length === table.rows.length && table.rows.length > 0) { table.allTicked = true; } else if (ticked_.length > 0) { table.allTicked = null; @@ -1198,7 +1198,7 @@ const setSelectedStatus = (arr, status) => { }; const setTickedStatus = (arr, status, cascadeChildren = true) => { arr.forEach((item) => { - item[table.selectedField] = status; + item[table.tickedField] = status; if (props.tree && cascadeChildren && item.children && item.children.length > 0) { setTickedStatus(item.children, status, cascadeChildren); } diff --git a/io.sc.platform.core.frontend/src/platform/components/select/WGridSelect.vue b/io.sc.platform.core.frontend/src/platform/components/select/WGridSelect.vue index 04857442..0450303f 100644 --- a/io.sc.platform.core.frontend/src/platform/components/select/WGridSelect.vue +++ b/io.sc.platform.core.frontend/src/platform/components/select/WGridSelect.vue @@ -15,7 +15,6 @@ :readonly="fieldMethodsClass.getReadOnly(props, { value: modelValue, displayValue: displayValueComputed })" :disable="fieldMethodsClass.getDisable(props, { value: modelValue, displayValue: displayValueComputed })" :clearable="false" - @update:model-value="fieldMethodsClass.updateValue" @focus=" () => { textSelectRef?.blur(); @@ -32,7 +31,7 @@
+ diff --git a/io.sc.platform.core.frontend/src/views/likm/Grid.vue b/io.sc.platform.core.frontend/src/views/likm/Grid.vue index d6f903dd..ca6ca02b 100644 --- a/io.sc.platform.core.frontend/src/views/likm/Grid.vue +++ b/io.sc.platform.core.frontend/src/views/likm/Grid.vue @@ -4,7 +4,8 @@ ref="gridRef" title="示例列表" :data-url="Environment.apiContextPath('/api/system/application')" - :toolbar-actions="['add', 'edit']" + :toolbar-actions="['add', 'edit', 'query']" + :query-form-fields="[{ name: 'code', label: '编码', type: 'w-text' }]" :columns="[ { name: 'code', label: '编码', type: 'w-text' }, { name: 'name', label: '名称', type: 'w-text' }, diff --git a/io.sc.platform.core.frontend/src/views/likm/TreeGrid.vue b/io.sc.platform.core.frontend/src/views/likm/TreeGrid.vue index 55028bad..819c76a1 100644 --- a/io.sc.platform.core.frontend/src/views/likm/TreeGrid.vue +++ b/io.sc.platform.core.frontend/src/views/likm/TreeGrid.vue @@ -37,6 +37,16 @@ { name: 'order', label: '排序号' }, ]" :toolbar-actions="['expand']" + @row-click=" + (args) => { + console.info('args1=======', args); + } + " + @row-db-click=" + (args) => { + console.info('args2=======', args); + } + " >