Compare commits

...

2 Commits

6 changed files with 38 additions and 16 deletions

View File

@ -18,7 +18,7 @@
"type": "module", "type": "module",
"scripts": { "scripts": {
"bootstrap": "pnpm install", "bootstrap": "pnpm install",
"build": "cross-env NODE_ENV=production NODE_OPTIONS=--max-old-space-size=8192 pnpm vite build", "build": "vite build",
"build:analyze": "cross-env NODE_OPTIONS=--max-old-space-size=8192 pnpm vite build --mode analyze", "build:analyze": "cross-env NODE_OPTIONS=--max-old-space-size=8192 pnpm vite build --mode analyze",
"build:docker": "vite build --mode docker", "build:docker": "vite build --mode docker",
"build:no-cache": "pnpm store prune && npm run build", "build:no-cache": "pnpm store prune && npm run build",

View File

@ -14,7 +14,7 @@ const routeModuleList: AppRouteModule[] = [];
Object.keys(modules).forEach((key) => { Object.keys(modules).forEach((key) => {
const mod = (modules as Recordable)[key].default || {}; const mod = (modules as Recordable)[key].default || {};
if (mod.meta) { if (mod.meta) {
const modList = Array.isArray(mod) ? [...mod] : [mod]; const modList = Array.isArray(mod) ? [...mod] : [mod];
routeModuleList.push(...modList); routeModuleList.push(...modList);
} }
}); });

View File

@ -30,9 +30,9 @@ const dashboard: AppRouteModule = {
title: '表单调用', title: '表单调用',
hideMenu: true, hideMenu: true,
}, },
beforeEnter: (to:any, from:any, next:Function) => { beforeEnter: (to: any, from: any, next: Function) => {
to.meta.title = to.query.name to.meta.title = to.query.name;
next() next();
}, },
component: () => import('@/views/demo/onlineform/formCall/index.vue'), component: () => import('@/views/demo/onlineform/formCall/index.vue'),
}, },
@ -86,5 +86,5 @@ const dashboard: AppRouteModule = {
}, },
], ],
}; };
export default dashboard; export default dashboard;

View File

@ -2,10 +2,15 @@
<BasicForm ref="myDataBaseFormRef" @register="registerForm" v-if="formModalVisible" /> <BasicForm ref="myDataBaseFormRef" @register="registerForm" v-if="formModalVisible" />
</template> </template>
<script lang="ts" setup> <script lang="ts" setup>
import { unref, ref } from 'vue'; import { unref, ref, onMounted } from 'vue';
import {
getFormsDesignData,
getFormsPageData,
delFormsData,
saveFormsData,
} from '@/api/formrender/index';
import { FormSchema } from '@/components/Table'; import { FormSchema } from '@/components/Table';
import { BasicForm, useForm } from '@/components/Form'; import { BasicForm, useForm } from '@/components/Form';
import { saveFormsData } from '@/api/formrender/index';
import { useMessage } from '@/hooks/web/useMessage'; import { useMessage } from '@/hooks/web/useMessage';
import { useRoute } from 'vue-router'; import { useRoute } from 'vue-router';
@ -70,4 +75,21 @@
} finally { } finally {
} }
} }
function getPublicForm() {
let params = {
code: paramsCode,
};
getFormsDesignData(params).then((res: Recordable) => {
console.log('res', res);
let columnObj = JSON.parse(res.entity.scheme);
let formObj = JSON.parse(res.formScheme.scheme);
formObj.formInfo.schemas.forEach((item) => {
formColumns.push(item);
});
formModalVisible.value = true;
});
}
onMounted(() => {
getPublicForm();
});
</script> </script>

View File

@ -30,7 +30,7 @@
<script lang="ts" setup> <script lang="ts" setup>
import { onMounted, ref, nextTick, unref } from 'vue'; import { onMounted, ref, nextTick, unref } from 'vue';
import { useRoute } from 'vue-router'; import { useRoute } from 'vue-router';
import { BasicTable, useTable, BasicColumn, FormSchema } from '@/components/Table'; import { BasicTable, useTable, BasicColumn } from '@/components/Table';
import { BasicTree, TreeItem, TreeActionItem, TreeActionType } from '@/components/Tree'; import { BasicTree, TreeItem, TreeActionItem, TreeActionType } from '@/components/Tree';
import { getFormsDesignData, getFormsPageData, delFormsData } from '@/api/formrender/index'; import { getFormsDesignData, getFormsPageData, delFormsData } from '@/api/formrender/index';
import { searchFormSchema } from './index.data'; import { searchFormSchema } from './index.data';
@ -57,7 +57,6 @@
const primaryKeyFailed: any = ref(); const primaryKeyFailed: any = ref();
const paramsCode = route.query.code; const paramsCode = route.query.code;
const callColumns: BasicColumn[] = []; const callColumns: BasicColumn[] = [];
const formColumns: FormSchema[] = [];
console.log('paramsCode', paramsCode); console.log('paramsCode', paramsCode);
const treeData = ref<TreeItem[]>([]); const treeData = ref<TreeItem[]>([]);
const asyncExpandTreeRef = ref<Nullable<TreeActionType>>(null); const asyncExpandTreeRef = ref<Nullable<TreeActionType>>(null);
@ -234,9 +233,6 @@
console.log('formObj', formObj); console.log('formObj', formObj);
paramsId.value = res.formScheme.id; paramsId.value = res.formScheme.id;
console.log('paramsId', paramsId.value); console.log('paramsId', paramsId.value);
formObj.formInfo.schemas.forEach((item) => {
formColumns.push(item);
});
if (columnObj.table.columns) { if (columnObj.table.columns) {
columnObj.table.columns.forEach((item) => { columnObj.table.columns.forEach((item) => {

View File

@ -111,11 +111,14 @@
schems.primaryKey = primaryKey.value; schems.primaryKey = primaryKey.value;
schems.formInfo = designTab; schems.formInfo = designTab;
console.log('schemsschems 0000', schems); console.log('schemsschems 0000', schems);
saveFormDatas.value.scheme.scheme = JSON.stringify(schems);
if (tabArr.includes(undefined)) { if (tabArr.includes(undefined)) {
message.warning('请' + tabLabelArr[0] + '绑定数据表字段!', 2); message.warning('请' + tabLabelArr[0] + '绑定数据表字段!', 2);
} else { } else {
submitSaveClick(); setTimeout(() => {
saveFormDatas.value.scheme.scheme = JSON.stringify(schems);
console.log('saveFormDatas000', JSON.parse(saveFormDatas.value.scheme.scheme));
submitSaveClick();
}, 100);
} }
console.log('孙子传值给我', designTab); console.log('孙子传值给我', designTab);
} }
@ -183,12 +186,12 @@
}); });
}); });
} }
console.log('arr0000000', arr);
let params = { let params = {
dbCode: data.form.DbCode, dbCode: data.form.DbCode,
tableNames: data.table[0].name, tableNames: data.table[0].name,
}; };
getOutKeyList(params).then((res: Recordable) => { getOutKeyList(params).then((res: Recordable) => {
console.log('aaaaaaaaaaaaaaa', res);
res[0].db_codecolumnsList.forEach((item) => { res[0].db_codecolumnsList.forEach((item) => {
if (item.isPrimaryKey == 1) { if (item.isPrimaryKey == 1) {
primaryKey.value = item.dbColumnName; primaryKey.value = item.dbColumnName;
@ -241,6 +244,7 @@
isSubmitClick.value = false; isSubmitClick.value = false;
} }
function submitSaveClick() { function submitSaveClick() {
console.log('saveFormDatas', saveFormDatas);
let param = { let param = {
info: saveFormDatas.value.info, info: saveFormDatas.value.info,
scheme: saveFormDatas.value.scheme, scheme: saveFormDatas.value.scheme,