优化、改造部分代码:

1.登录时是否输入租户码默认是需要输入。
2.切换租户的部分逻辑抽取成独立工具类。
3.表单编辑模块整合部分代码,将两个tabpane抽出来成独立文件。
4.修正bug-表单的列表配置为空时编辑页面报错,现改成为空时赋值{}。
5.系统数据迁移复制功能:去掉一些无用的代码;改成多租户时才允许以租户模式导入。
This commit is contained in:
suguangxu
2025-06-13 15:12:51 +08:00
parent 3add60c772
commit 202022a3a5
18 changed files with 742 additions and 616 deletions

View File

@ -37,24 +37,13 @@
import { storeToRefs } from 'pinia';
import { useUserStore } from '/@/store/modules/user';
import {useMessage} from "/@/hooks/web/useMessage";
import { changeTenant } from '/@/api/system/tenant';
import {useAppStore} from "/@/store/modules/app";
import {setupRouterGuard} from "/@/router/guard";
import {usePermissionStore} from "/@/store/modules/permission";
import {useTabs} from "/@/hooks/web/useTabs";
import {useMenuSetting} from "/@/hooks/setting/useMenuSetting";
import {useAppInject} from "/@/hooks/web/useAppInject";
import {useTenantManager} from "/@/utils/tenantManager";
const router = useRouter();
const { currentRoute } = router;
const { t } = useI18n();
const appStore = useAppStore();
const userStore = useUserStore();
const { userInfo } = storeToRefs(userStore);
const { closeOther } = useTabs(router);
const permissionStore = usePermissionStore();
const { getShowTopMenu } = useMenuSetting();
const { getIsMobile } = useAppInject();
const configColumns: BasicColumn[] = [
@ -135,6 +124,8 @@
}
});
const {toggleLocal}=useTenantManager();
onMounted(() => {
bus.on(FLOW_PROCESSED, onFlowProcessed);
});
@ -151,7 +142,7 @@
);
const onRowDblClick = (record, index) => {
const {tenantId,tenantCode,tenantName} = record;
let tenantEnabled=getAppEnvConfig().VITE_TENANT_ENABLED;
let tenantEnabled=getAppEnvConfig().VITE_GLOB_TENANT_ENABLED;
if(tenantEnabled =='true'&&tenantId){
let currentTenantId=userInfo.value.tenantId;
if(tenantId!=currentTenantId){
@ -166,7 +157,7 @@
]),
width:'600px',
onOk: async () => {
toggleLocale(tenantCode).then(()=>{
switchTenant(tenantCode).then(()=>{
openDetailPage(record,true);
})
@ -206,19 +197,8 @@
reload();
}
async function toggleLocale(tenantCode: string) {
appStore.setPageLoadingAction(true);
await changeTenant(tenantCode);
permissionStore.setDynamicAddedRoute(false);
await userStore.afterLoginAction(false);
closeOther();
await setupRouterGuard(router);
await permissionStore.changeSubsystem(getShowTopMenu.value, getIsMobile.value);
if(permissionStore.getSubSysList.length>0){
permissionStore.setSubSystem(permissionStore.getSubSysList[0].id);
}else{
permissionStore.setSubSystem("");
}
async function switchTenant(tenantCode: string) {
await toggleLocal({tenantCode:tenantCode, goHome:false,tabCloseAction:"closeOther"});
}
</script>