Browse Source

chore: 拱写工作流表单

master
wangxiang 2 years ago
parent
commit
a8d126539b
  1. 1
      src/views/system/user/ResetPwdModal.vue
  2. 18
      src/views/workflow/extension/form/helper/WorkflowFormDesign.vue

1
src/views/system/user/ResetPwdModal.vue

@ -28,7 +28,6 @@
import { Form } from 'ant-design-vue'; import { Form } from 'ant-design-vue';
import { resetPwd } from '/@/api/platform/system/controller/user'; import { resetPwd } from '/@/api/platform/system/controller/user';
import { useMessage } from '/@/hooks/web/useMessage'; import { useMessage } from '/@/hooks/web/useMessage';
import {Recordable} from "/#/global";
/** 类型规范统一声明定义区域 */ /** 类型规范统一声明定义区域 */
interface WindowState { interface WindowState {

18
src/views/workflow/extension/form/helper/WorkflowFormDesign.vue

@ -4,6 +4,7 @@
:canFullscreen="false" :canFullscreen="false"
@register="registerModal" @register="registerModal"
@ok="handleSubmit" @ok="handleSubmit"
@visible-change="handleClose"
> >
<div id="formDesign"/> <div id="formDesign"/>
</BasicModal> </BasicModal>
@ -11,17 +12,20 @@
<script lang="ts" setup> <script lang="ts" setup>
import { reactive } from 'vue'; import { reactive } from 'vue';
import { BasicModal, ModalProps, useModalInner } from '/@/components/Modal'; import { BasicModal, ModalProps, useModalInner } from '/@/components/Modal';
import { loadMicroApp } from 'qiankun'; import { loadMicroApp, MicroApp } from 'qiankun';
import { getSubDefineProps } from '/@/qiankun/state'; import { getSubDefineProps } from '/@/qiankun/state';
import { GlStateEnum } from '/@/enums/microAppEnum'; import { GlStateEnum } from '/@/enums/microAppEnum';
import { useMicroAppStore } from '/@/store/modules/microApp'; import { useMicroAppStore } from '/@/store/modules/microApp';
import { apps } from '/@/qiankun/apps';
interface TableState { interface TableState {
tag: string; tag: string;
formDesignApp: MicroApp;
} }
const state = reactive<TableState>({ const state = reactive<TableState>({
tag: '', tag: '',
formDesignApp: undefined!
}); });
const formDesignProps = { const formDesignProps = {
@ -32,16 +36,14 @@
const emit = defineEmits(['success', 'register']); const emit = defineEmits(['success', 'register']);
const microAppStore = useMicroAppStore(); const microAppStore = useMicroAppStore();
const [registerModal, { setModalProps, closeModal }] = useModalInner(async (data: BoxPayload = { _tag: '' }) => { const [registerModal, { setModalProps, closeModal }] = useModalInner(async (data: BoxPayload = { _tag: '' }) => {
loadMicroApp({ state.formDesignApp = loadMicroApp(Object.assign({} , apps.find(item => item.name == 'form-design'), {
name: 'formDesign',
entry: '//localhost:7101',
container: '#formDesign', container: '#formDesign',
props: { props: {
...getSubDefineProps(), ...getSubDefineProps(),
// props // props
[GlStateEnum.FORM_DESIGN_PROPS_KEY]: formDesignProps [GlStateEnum.FORM_DESIGN_PROPS_KEY]: formDesignProps
} }
}, { sandbox: { experimentalStyleIsolation: true }}); }), { sandbox: { experimentalStyleIsolation: true }});
state.tag = data._tag; state.tag = data._tag;
const id = data.record?.id; const id = data.record?.id;
const props: Partial<ModalProps> = { confirmLoading: false }; const props: Partial<ModalProps> = { confirmLoading: false };
@ -56,6 +58,12 @@
setModalProps(props); setModalProps(props);
}); });
function handleClose(vis:boolean) {
if (!vis) {
state.formDesignApp.unmount();
}
}
/** 处理弹出框提交 */ /** 处理弹出框提交 */
async function handleSubmit() { async function handleSubmit() {
try { try {

Loading…
Cancel
Save