diff --git a/io.sc.engine.rule.frontend/package.json b/io.sc.engine.rule.frontend/package.json
index ac1031e3..1e3ee94f 100644
--- a/io.sc.engine.rule.frontend/package.json
+++ b/io.sc.engine.rule.frontend/package.json
@@ -111,7 +111,7 @@
"node-sql-parser": "5.3.2",
"pinia": "2.2.2",
"pinia-undo": "0.2.4",
- "platform-core": "8.1.418",
+ "platform-core": "8.1.420",
"quasar": "2.17.0",
"svg-path-commander": "2.0.10",
"tailwindcss": "3.4.10",
diff --git a/io.sc.engine.rule.frontend/src/views/shared/processors/ConditionRange.ts b/io.sc.engine.rule.frontend/src/views/shared/processors/ConditionRange.ts
index 69881a87..bdb2d2bc 100644
--- a/io.sc.engine.rule.frontend/src/views/shared/processors/ConditionRange.ts
+++ b/io.sc.engine.rule.frontend/src/views/shared/processors/ConditionRange.ts
@@ -28,7 +28,7 @@ class ConditionRange extends Processor {
str += '
' + ('' + PlaceHolder.replace(obj.value)) + ' | ';
str += '';
});
- return MarkupTableUtil.markupTable(null, '', str);
+ return MarkupTableUtil.markupTable('', str, { dense: false });
}
return '';
}
diff --git a/io.sc.engine.rule.frontend/src/views/shared/processors/DecisionTable.ts b/io.sc.engine.rule.frontend/src/views/shared/processors/DecisionTable.ts
index d1bb727f..649daeab 100644
--- a/io.sc.engine.rule.frontend/src/views/shared/processors/DecisionTable.ts
+++ b/io.sc.engine.rule.frontend/src/views/shared/processors/DecisionTable.ts
@@ -1,5 +1,5 @@
import { ref } from 'vue';
-import { $t, Tools } from 'platform-core';
+import { $t, Tools, MarkupTableUtil } from 'platform-core';
import { Processor } from '../Processor';
import { PlaceHolder } from '@/utils/PlaceHolder';
@@ -12,10 +12,10 @@ class DecisionTable extends Processor {
name: 'decisionTable',
label: $t('io.sc.engine.rule.core.enums.ProcessorType.DECISION_TABLE'),
icon: 'bi-grid-3x3',
- enableIf: (args) => {
+ enableIf: (args: any) => {
return target.type !== 'RULE_RESULT' && target.type !== 'SINGLE_RULE_RESULT';
},
- afterClick: (args) => {
+ afterClick: (args: any) => {
args.grid.getEditorForm().setFieldValue('type', 'DECISION_TABLE');
},
};
@@ -24,8 +24,7 @@ class DecisionTable extends Processor {
public format(row: any): any {
const objs: any[] = Tools.json2Object(row.decisionTable);
if (objs) {
- let str = ``;
- str += `
`;
+ let str = '';
objs.forEach((obj) => {
str += '';
Object.keys(obj).forEach((key) => {
@@ -41,9 +40,7 @@ class DecisionTable extends Processor {
});
str += '
';
});
- str += '
';
- str += `
`;
- return str;
+ return MarkupTableUtil.markupTable('', str);
}
return '';
}
diff --git a/io.sc.engine.rule.frontend/src/views/shared/processors/DecisionTable2c.ts b/io.sc.engine.rule.frontend/src/views/shared/processors/DecisionTable2c.ts
index f365fda9..1993f0a3 100644
--- a/io.sc.engine.rule.frontend/src/views/shared/processors/DecisionTable2c.ts
+++ b/io.sc.engine.rule.frontend/src/views/shared/processors/DecisionTable2c.ts
@@ -1,5 +1,5 @@
import { ref } from 'vue';
-import { $t, Tools } from 'platform-core';
+import { $t, Tools, MarkupTableUtil } from 'platform-core';
import { Processor } from '../Processor';
import { PlaceHolder } from '@/utils/PlaceHolder';
@@ -9,7 +9,7 @@ class DecisionTable2C extends Processor {
public getToolbarAction(target: any): any {
return {
extend: 'add',
- name: 'decisionTable2c',
+ name: 'decisionTable2C',
label: $t('io.sc.engine.rule.core.enums.ProcessorType.DECISION_TABLE_2C'),
icon: 'bi-grid-3x2',
enableIf: (args) => {
@@ -24,8 +24,7 @@ class DecisionTable2C extends Processor {
public format(row: any): any {
const objs: any[] = Tools.json2Object(row.decisionTable2C);
if (objs) {
- let str = ``;
- str += `
`;
+ let str = '';
objs.forEach((obj) => {
str += '';
Object.keys(obj).forEach((key) => {
@@ -35,9 +34,7 @@ class DecisionTable2C extends Processor {
});
str += '
';
});
- str += '
';
- str += `
`;
- return str;
+ return MarkupTableUtil.markupTable('', str);
}
return '';
}
diff --git a/io.sc.engine.rule.frontend/src/views/shared/processors/NumberRange.ts b/io.sc.engine.rule.frontend/src/views/shared/processors/NumberRange.ts
index 1df097a8..3a9dc1bd 100644
--- a/io.sc.engine.rule.frontend/src/views/shared/processors/NumberRange.ts
+++ b/io.sc.engine.rule.frontend/src/views/shared/processors/NumberRange.ts
@@ -1,4 +1,4 @@
-import { $t, Tools } from 'platform-core';
+import { $t, Tools, MarkupTableUtil } from 'platform-core';
import { Processor } from '../Processor';
import { PlaceHolder } from '@/utils/PlaceHolder';
@@ -21,8 +21,7 @@ class NumberRange extends Processor {
public format(row: any): any {
const objs: any[] = Tools.json2Object(row.numberRange);
if (objs && objs.length > 0) {
- let str = ``;
- str += `
`;
+ let str = '';
objs.forEach((obj, index) => {
str += '';
if (index == 0 && this.targetType !== Processor.SCORE_CARD) {
@@ -32,9 +31,7 @@ class NumberRange extends Processor {
str += ' ' + ('' + PlaceHolder.replace('' + obj.value)) + ' | ';
str += '
';
});
- str += '
';
- str += '
';
- return str;
+ return MarkupTableUtil.markupTable('', str);
}
return '';
}
diff --git a/io.sc.engine.rule.frontend/src/views/shared/processors/ObjectProperties.ts b/io.sc.engine.rule.frontend/src/views/shared/processors/ObjectProperties.ts
index 2e087990..918b070b 100644
--- a/io.sc.engine.rule.frontend/src/views/shared/processors/ObjectProperties.ts
+++ b/io.sc.engine.rule.frontend/src/views/shared/processors/ObjectProperties.ts
@@ -1,4 +1,4 @@
-import { $t, axios, Environment, Tools } from 'platform-core';
+import { $t, axios, Environment, Tools, MarkupTableUtil } from 'platform-core';
import { Processor } from '../Processor';
import { PlaceHolder } from '@/utils/PlaceHolder';
import { ValueTypeUtil } from '@/utils/ValueTypeUtil';
@@ -26,16 +26,14 @@ class ObjectProperties extends Processor {
}
const objs = Tools.json2Object(row.objectProperties);
if (objs) {
- str += ``;
- str += `
`;
+ let body = '';
objs.forEach((obj: any) => {
- str += '';
- str += ` ` + obj.name + ` | `;
- str += ` ` + ('' + PlaceHolder.replace(obj.expression)) + ' | ';
- str += '
';
+ body += '';
+ body += ` ` + obj.name + ` | `;
+ body += ` ` + ('' + PlaceHolder.replace(obj.expression)) + ' | ';
+ body += '
';
});
- str += '
';
- str += `
`;
+ str += MarkupTableUtil.markupTable('', body, { 'max-height': '200px' });
}
return str;
}
diff --git a/io.sc.platform.core.frontend/package.json b/io.sc.platform.core.frontend/package.json
index fecd07e4..22f222a5 100644
--- a/io.sc.platform.core.frontend/package.json
+++ b/io.sc.platform.core.frontend/package.json
@@ -1,6 +1,6 @@
{
"name": "platform-core",
- "version": "8.1.418",
+ "version": "8.1.420",
"description": "前端核心包,用于快速构建前端的脚手架",
"//main": "库的主文件",
"main": "dist/platform-core.js",
diff --git a/io.sc.platform.core.frontend/src/platform/utils-components/MarkupTableUtil.ts b/io.sc.platform.core.frontend/src/platform/utils-components/MarkupTableUtil.ts
index a8c56773..9e30a7d0 100644
--- a/io.sc.platform.core.frontend/src/platform/utils-components/MarkupTableUtil.ts
+++ b/io.sc.platform.core.frontend/src/platform/utils-components/MarkupTableUtil.ts
@@ -31,8 +31,28 @@ class MarkupTableUtil {
props['bordered'] = !Tools.isUndefinedOrNull(props['bordered']) ? props['bordered'] : true;
props['square'] = !Tools.isUndefinedOrNull(props['square']) ? props['square'] : false;
+ let tableContainerStyle = '';
+ if (!Tools.isUndefinedOrNull(props['width'])) {
+ tableContainerStyle += 'width:' + props['width'] + ';';
+ }
+ if (!Tools.isUndefinedOrNull(props['height'])) {
+ tableContainerStyle += 'height:' + props['height'] + ';';
+ }
+ if (!Tools.isUndefinedOrNull(props['maxWidth'])) {
+ tableContainerStyle += 'max-width:' + props['maxWidth'] + ';';
+ }
+ if (!Tools.isUndefinedOrNull(props['maxHeight'])) {
+ tableContainerStyle += 'max-height:' + props['maxHeight'] + ';';
+ }
+ if (!Tools.isUndefinedOrNull(props['max-width'])) {
+ tableContainerStyle += 'max-width:' + props['max-width'] + ';';
+ }
+ if (!Tools.isUndefinedOrNull(props['max-height'])) {
+ tableContainerStyle += 'max-height:' + props['max-height'] + ';';
+ }
+
let html = '';
- html += '';
+ html += '
';
html += '
';
if (tableHeader) {
html += '' + tableHeader + '';
@@ -47,7 +67,8 @@ class MarkupTableUtil {
private static getClassNames(props: any) {
// 基础 CSS
- let css = 'q-markup-table q-table__container q-table__card';
+ // overflow-auto' style='max-height:100px'
+ let css = 'q-markup-table q-table__container q-table__card overflow-auto';
// 分割模式 (horizontal:行分割,vertical:列分割,cell:单元格分割,none:不分割)
if (props['separator'] === 'vertical') {
diff --git a/io.sc.platform.core.frontend/src/views/testcase/math/MathEditor.vue b/io.sc.platform.core.frontend/src/views/testcase/math/MathEditor.vue
index 84f7b632..3bf33819 100644
--- a/io.sc.platform.core.frontend/src/views/testcase/math/MathEditor.vue
+++ b/io.sc.platform.core.frontend/src/views/testcase/math/MathEditor.vue
@@ -2,7 +2,7 @@