diff --git a/src/modules/smart-code/views/codeDesign/CodeDesignPage.config.ts b/src/modules/smart-code/views/codeDesign/CodeDesignPage.config.ts
index 355df4a1a..98e01e1f7 100644
--- a/src/modules/smart-code/views/codeDesign/CodeDesignPage.config.ts
+++ b/src/modules/smart-code/views/codeDesign/CodeDesignPage.config.ts
@@ -1,4 +1,5 @@
import type { FormSchema } from '@/components/Form';
+import { SmartColumn } from '@/components/SmartTable';
type ButtonType =
| 'SEARCH'
@@ -12,7 +13,9 @@ type ButtonType =
| 'ZOOM'
| 'REFRESH'
| 'SHOW_SEARCH'
- | 'PRINT';
+ | 'PRINT'
+ | 'USE_YN_TRUE'
+ | 'USE_YN_FALSE';
interface Button {
key: ButtonType;
@@ -196,6 +199,11 @@ export const formSchemas = (t: Function): FormSchema[] => {
required: true,
},
// ------------ 第五行 ---------------------
+ {
+ label: '权限前缀',
+ field: 'permissionPrefix',
+ component: 'Input',
+ },
{
label: t('generator.views.code.title.relateTable'),
field: 'addendumTableList',
@@ -234,6 +242,14 @@ const letButtonList: Button[] = [
key: 'DELETE',
value: '删除',
},
+ {
+ key: 'USE_YN_TRUE',
+ value: '启用',
+ },
+ {
+ key: 'USE_YN_FALSE',
+ value: '停用',
+ },
];
const rightButtonList: Button[] = [
@@ -329,3 +345,406 @@ const rowButtonTypeList = (t: Function) => [
value: 'TEXT',
},
];
+
+/**
+ * 获取table column
+ */
+export const getTableFiledColumns = (): SmartColumn[] => {
+ return [
+ {
+ field: 'columnName',
+ title: '{generator.views.tableField.title.columnName}',
+ width: 160,
+ align: 'left',
+ headerAlign: 'center',
+ },
+ {
+ field: 'typeName',
+ title: '{generator.views.tableField.title.typeName}',
+ width: 120,
+ },
+ {
+ field: 'columnSize',
+ title: '{generator.views.tableField.title.columnSize}',
+ width: 120,
+ },
+ {
+ field: 'decimalDigits',
+ title: '{generator.views.tableField.title.decimalDigits}',
+ width: 120,
+ },
+ {
+ field: 'columnDef',
+ title: '{generator.views.tableField.title.columnDef}',
+ width: 120,
+ },
+ {
+ field: 'nullable',
+ title: '{generator.views.tableField.title.nullable}',
+ width: 120,
+ autoClass: 'Boolean',
+ formatter({ row }) {
+ const value = row.nullable;
+ if (value === 0) {
+ return '否';
+ }
+ return '是';
+ },
+ },
+ {
+ field: 'remarks',
+ title: '{generator.views.tableField.title.remarks}',
+ minWidth: 120,
+ align: 'left',
+ headerAlign: 'center',
+ },
+ {
+ field: 'primaryKey',
+ title: '{generator.views.tableField.title.primaryKey}',
+ width: 120,
+ autoClass: 'Boolean',
+ formatter({ row }) {
+ const value = row.primaryKey;
+ if (value) {
+ return '是';
+ }
+ return '';
+ },
+ },
+ {
+ field: 'indexed',
+ title: '{generator.views.tableField.title.indexed}',
+ width: 120,
+ autoClass: 'Boolean',
+ formatter({ row }) {
+ const value = row.indexed;
+ if (value) {
+ return '是';
+ }
+ return '';
+ },
+ },
+ ];
+};
+
+export const getPageSearchSettingColumn = (t: Function): SmartColumn[] => {
+ const controlFormatMap = {};
+ const controlFormatList = controlList.map(({ key, value }) => {
+ const label = t(value);
+ controlFormatMap[key] = label;
+ return {
+ label: label,
+ value: key,
+ };
+ });
+
+ return [
+ {
+ title: '{generator.views.tableField.title.columnName}',
+ field: 'columnName',
+ width: 160,
+ align: 'left',
+ headerAlign: 'center',
+ },
+ {
+ title: '{generator.views.tableSetting.title.title}',
+ field: 'title',
+ width: 160,
+ align: 'left',
+ headerAlign: 'center',
+ editRender: {
+ name: 'AInput',
+ autofocus: true,
+ },
+ },
+ {
+ title: '{generator.views.formSetting.title.controlType}',
+ field: 'controlType',
+ width: 150,
+ editRender: {
+ name: 'ASelect',
+ autofocus: true,
+ props: (row) => {
+ return {
+ disabled: !row.visible,
+ options: controlFormatList,
+ };
+ },
+ },
+ formatter({ row }) {
+ const value = row.controlType;
+ if (!value) {
+ return '';
+ }
+ return controlFormatMap[value];
+ },
+ },
+ {
+ title: '{generator.views.formSetting.title.readonly}',
+ field: 'readonly',
+ width: 110,
+ editRender: {
+ name: 'ASwitch',
+ props: (row) => {
+ return {
+ disabled: !row.visible,
+ };
+ },
+ },
+ formatter({ row }) {
+ const value = row.readonly;
+ if (value) {
+ return '是';
+ }
+ return '否';
+ },
+ autoClass: 'Boolean',
+ },
+ {
+ title: '{generator.views.tableSetting.title.visible}',
+ field: 'visible',
+ width: 110,
+ editRender: {
+ name: 'ASwitch',
+ },
+ formatter({ row }) {
+ const value = row.visible;
+ if (value) {
+ return '是';
+ }
+ return '否';
+ },
+ autoClass: 'Boolean',
+ },
+ {
+ title: '{generator.views.tableSetting.title.hidden}',
+ field: 'hidden',
+ width: 110,
+ editRender: {
+ name: 'ASwitch',
+ props: (row) => {
+ return {
+ disabled: !row.visible,
+ };
+ },
+ },
+ formatter({ row }) {
+ const value = row.hidden;
+ if (value) {
+ return '是';
+ }
+ return '否';
+ },
+ autoClass: 'Boolean',
+ },
+ {
+ title: '{generator.views.formSetting.title.used}',
+ field: 'used',
+ width: 120,
+ editRender: {
+ name: 'ASwitch',
+ props: (row) => {
+ return {
+ disabled: !row.visible,
+ };
+ },
+ },
+ formatter({ row }) {
+ const value = row.used;
+ if (value) {
+ return '是';
+ }
+ return '否';
+ },
+ autoClass: 'Boolean',
+ },
+ {
+ title: '{generator.views.searchSetting.title.searchSymbol}',
+ field: 'searchSymbol',
+ width: 120,
+ editRender: {
+ name: 'ASelect',
+ autofocus: true,
+ props: (row) => {
+ return {
+ disabled: !row.visible,
+ options: searchSymbolList.map((item) => {
+ return {
+ label: item,
+ value: item,
+ };
+ }),
+ };
+ },
+ },
+ },
+ {
+ title: '{generator.views.formSetting.title.useTableSearch}',
+ field: 'useTableSearch',
+ width: 110,
+ editRender: {
+ name: 'ASwitch',
+ props: (row) => {
+ return {
+ disabled: !row.visible,
+ };
+ },
+ },
+ formatter({ row }) {
+ const value = row.useTableSearch;
+ if (value) {
+ return '是';
+ }
+ return '否';
+ },
+ autoClass: 'Boolean',
+ },
+ {
+ title: '{generator.views.code.table.tableName}',
+ field: 'tableName',
+ width: 120,
+ editRender: {
+ name: 'AInput',
+ autofocus: true,
+ props: (row) => {
+ return {
+ disabled: !(row.useTableSearch && row.visible),
+ };
+ },
+ },
+ },
+ {
+ title: '{generator.views.formSetting.title.keyColumnName}',
+ field: 'keyColumnName',
+ width: 120,
+ editRender: {
+ name: 'AInput',
+ autofocus: true,
+ props: (row) => {
+ return {
+ disabled: !(row.useTableSearch && row.visible),
+ };
+ },
+ },
+ },
+ {
+ title: '{generator.views.formSetting.title.valueColumnName}',
+ field: 'valueColumnName',
+ width: 120,
+ editRender: {
+ name: 'AInput',
+ autofocus: true,
+ props: (row) => {
+ return {
+ disabled: !(row.useTableSearch && row.visible),
+ };
+ },
+ },
+ },
+ {
+ title: '{generator.views.formSetting.title.tableWhere}',
+ field: 'tableWhere',
+ minWidth: 180,
+ editRender: {
+ name: 'AInput',
+ autofocus: true,
+ props: (row) => {
+ return {
+ disabled: !(row.useTableSearch && row.visible),
+ };
+ },
+ },
+ },
+ {
+ title: '{generator.views.code.table.remarks}',
+ field: 'remarks',
+ minWidth: 160,
+ align: 'left',
+ headerAlign: 'center',
+ },
+ ];
+};
+
+const controlList = [
+ {
+ key: 'INPUT',
+ value: 'generator.views.code.title.controlList.input',
+ },
+ {
+ key: 'TEXTAREA',
+ value: 'generator.views.code.title.controlList.textarea',
+ },
+ {
+ key: 'NUMBER',
+ value: 'generator.views.code.title.controlList.number',
+ },
+ {
+ key: 'PASSWORD',
+ value: 'generator.views.code.title.controlList.password',
+ },
+ {
+ key: 'SELECT',
+ value: 'generator.views.code.title.controlList.select',
+ },
+ {
+ key: 'TRANSFER',
+ value: 'generator.views.code.title.controlList.transfer',
+ },
+ {
+ key: 'SELECT_TABLE',
+ value: 'generator.views.code.title.controlList.selectTable',
+ },
+ {
+ key: 'RADIO',
+ value: 'generator.views.code.title.controlList.radio',
+ },
+ {
+ key: 'CHECKBOX',
+ value: 'generator.views.code.title.controlList.checkbox',
+ },
+ {
+ key: 'SWITCH_TYPE',
+ value: 'generator.views.code.title.controlList.switch_type',
+ },
+ {
+ key: 'DATE',
+ value: 'generator.views.code.title.controlList.date',
+ },
+ {
+ key: 'TIME',
+ value: 'generator.views.code.title.controlList.time',
+ },
+ {
+ key: 'DATETIME',
+ value: 'generator.views.code.title.controlList.datetime',
+ },
+ {
+ key: 'FILE',
+ value: 'generator.views.code.title.controlList.file',
+ },
+ {
+ key: 'DATA_DICT',
+ value: 'generator.views.design.title.controlList.dataDict',
+ },
+ {
+ key: 'CATEGORY_DICT',
+ value: 'generator.views.design.title.controlList.categoryDict',
+ },
+];
+
+/**
+ * 查询标识列表
+ */
+export const searchSymbolList = [
+ '=',
+ 'like',
+ '>',
+ '>=',
+ '<',
+ '<=',
+ 'in',
+ 'notIn',
+ 'notLike',
+ 'likeLeft',
+ 'likeRight',
+];
diff --git a/src/modules/smart-code/views/codeDesign/CodeDesignPage.vue b/src/modules/smart-code/views/codeDesign/CodeDesignPage.vue
index 926439964..eb2f0a6dc 100644
--- a/src/modules/smart-code/views/codeDesign/CodeDesignPage.vue
+++ b/src/modules/smart-code/views/codeDesign/CodeDesignPage.vue
@@ -113,7 +113,7 @@
import TableFieldTable from './componenets/TableFieldTable/TableFieldTable.vue';
import PageTableSetting from './componenets/PageTableSetting/PageTableSetting.vue';
import PageFormSetting from './componenets/PageFromSetting/PageFormSetting.vue';
- import PageSearchSetting from './componenets/PageSearchSetting/PageSearchSetting.vue';
+ import PageSearchSetting from './componenets/PageSearchSetting/PageSearchSettingOld.vue';
import { Icon } from '@/components/Icon';
import PageAddendumTableChoseModal from './componenets/PageAddendumTableChoseModal.vue';
diff --git a/src/modules/smart-code/views/codeDesign/componenets/PageFromSetting/PageFormSetting.vue b/src/modules/smart-code/views/codeDesign/componenets/PageFromSetting/PageFormSetting.vue
index 849b04a1d..4cd9b943b 100644
--- a/src/modules/smart-code/views/codeDesign/componenets/PageFromSetting/PageFormSetting.vue
+++ b/src/modules/smart-code/views/codeDesign/componenets/PageFromSetting/PageFormSetting.vue
@@ -156,7 +156,7 @@
data[field] = item[field];
});
return Object.assign(data, {
- title: data.remarks,
+ title: data.remarks || data.javaProperty,
readonly: false,
visible: true,
hidden: false,
diff --git a/src/modules/smart-code/views/codeDesign/componenets/PageSearchSetting/PageSearchSetting.vue b/src/modules/smart-code/views/codeDesign/componenets/PageSearchSetting/PageSearchSetting.vue
index 5f4c8326a..45bba6673 100644
--- a/src/modules/smart-code/views/codeDesign/componenets/PageSearchSetting/PageSearchSetting.vue
+++ b/src/modules/smart-code/views/codeDesign/componenets/PageSearchSetting/PageSearchSetting.vue
@@ -1,159 +1,80 @@
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- {{ item }}
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- {{ $t(item.value) }}
-
-
-
-
- 选择表格
-
- handleShowChoseSelectTable(row)"
- />
-
-
-
-
-
- {{ item.value }}
-
-
-
-
-
- {{ $t(column.title.replace('{', '').replace('}', '')) }}
-
-
-
- {{ $t(column.title.replace('{', '').replace('}', '')) }}
-
-
-
- {{ $t(column.title.replace('{', '').replace('}', '')) }}
-
-
-
- {{ $t(column.title.replace('{', '').replace('}', '')) }}
-
-
-
-
-
diff --git a/src/modules/smart-code/views/codeDesign/componenets/PageSearchSetting/PageSearchSettingOld.vue b/src/modules/smart-code/views/codeDesign/componenets/PageSearchSetting/PageSearchSettingOld.vue
new file mode 100644
index 000000000..94838ebb2
--- /dev/null
+++ b/src/modules/smart-code/views/codeDesign/componenets/PageSearchSetting/PageSearchSettingOld.vue
@@ -0,0 +1,380 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ {{ item }}
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ {{ $t(item.value) }}
+
+
+
+
+ 选择表格
+
+ handleShowChoseSelectTable(row)"
+ />
+
+
+
+
+
+ {{ item.value }}
+
+
+
+
+
+ {{ $t(column.title.replace('{', '').replace('}', '')) }}
+
+
+
+ {{ $t(column.title.replace('{', '').replace('}', '')) }}
+
+
+
+ {{ $t(column.title.replace('{', '').replace('}', '')) }}
+
+
+
+ {{ $t(column.title.replace('{', '').replace('}', '')) }}
+
+
+
+
+
+
+
+
+
diff --git a/src/modules/smart-code/views/codeDesign/componenets/TableFieldTable/TableFieldTable.vue b/src/modules/smart-code/views/codeDesign/componenets/TableFieldTable/TableFieldTable.vue
index 25b603d56..54a878446 100644
--- a/src/modules/smart-code/views/codeDesign/componenets/TableFieldTable/TableFieldTable.vue
+++ b/src/modules/smart-code/views/codeDesign/componenets/TableFieldTable/TableFieldTable.vue
@@ -1,105 +1,24 @@
-