瀏覽代碼

fixup! chore: 优化字典数据渲染逻辑

喵你个旺呀 1 年之前
父節點
當前提交
124b0febe3

+ 2 - 1
Web/src/components/table/dictLabel.vue

@@ -30,10 +30,11 @@ const state = reactive({
 
 onMounted(() => {
 	const dictList = useUserInfo().getDictDataByCode(props.code as string);
-	const dict = dictList?.find((x: any) => x[props.propValue] == props.value + "") ?? {};
+	const dict = dictList?.find((x: any) => x[props.propValue] == props.value) ?? {};
 	if (dict) {
 		state.label = dict[props.propLabel] || props.defaultValue;
 		state.tagType = dict.tagType;
 	}
+  console.log(props)
 })
 </script>

+ 1 - 1
Web/src/views/system/database/component/genEntity.vue

@@ -53,7 +53,7 @@ import {useUserInfo} from "/@/stores/userInfo";
 import { getAPI } from '/@/utils/axios-utils';
 import { SysDatabaseApi } from '/@/api-services/api';
 
-const getDictDataByCode = useUserInfo.getDictDataByCode;
+const getDictDataByCode = useUserInfo().getDictDataByCode;
 const emits = defineEmits(['handleQueryColumn']);
 const ruleFormRef = ref();
 const state = reactive({

+ 1 - 1
Web/src/views/system/job/component/editJobDetail.vue

@@ -109,7 +109,7 @@ import { getAPI } from '/@/utils/axios-utils';
 import { SysJobApi } from '/@/api-services/api';
 import { JobCreateTypeEnum, UpdateJobDetailInput } from '/@/api-services/models';
 
-const getDictDataByCode = useUserInfo.getDictDataByCode;
+const getDictDataByCode = useUserInfo().getDictDataByCode;
 // HttpMethod 定义,来源后端 HttpMethod 对象的序列化
 // 下面定义内容【不要】加空格,否则 getHttpJobMessage 中 JSON.stringify(httpJobMessageNet.HttpMethod) 后无法匹配
 const httpMethodDef = {

+ 1 - 1
Web/src/views/system/menu/component/editMenu.vue

@@ -147,7 +147,7 @@ import { getAPI } from '/@/utils/axios-utils';
 import { SysMenuApi } from '/@/api-services/api';
 import { SysMenu, UpdateMenuInput } from '/@/api-services/models';
 
-const getDictDataByCode = useUserInfo.getDictDataByCode;
+const getDictDataByCode = useUserInfo().getDictDataByCode;
 const props = defineProps({
 	title: String,
 	menuData: Array<SysMenu>,

+ 1 - 1
Web/src/views/system/notice/component/editNotice.vue

@@ -47,7 +47,7 @@ import { getAPI } from '/@/utils/axios-utils';
 import { SysNoticeApi } from '/@/api-services/api';
 import { UpdateNoticeInput } from '/@/api-services/models';
 
-const getDictDataByCode = useUserInfo.getDictDataByCode;
+const getDictDataByCode = useUserInfo().getDictDataByCode;
 const props = defineProps({
 	title: String,
 });

+ 1 - 1
Web/src/views/system/notice/index.vue

@@ -79,7 +79,7 @@ import { SysNoticeApi } from '/@/api-services/api';
 import { SysNotice } from '/@/api-services/models';
 import DictLabel from "/@/components/table/dictLabel.vue";
 
-const getDictDataByCode = useUserInfo.getDictDataByCode;
+const getDictDataByCode = useUserInfo().getDictDataByCode;
 const editNoticeRef = ref<InstanceType<typeof EditNotice>>();
 const { removeHtml } = commonFunction();
 const state = reactive({

+ 1 - 1
Web/src/views/system/openAccess/component/generateSign.vue

@@ -67,7 +67,7 @@ import { getAPI } from '/@/utils/axios-utils';
 import { SysOpenAccessApi } from '/@/api-services/api';
 import { GenerateSignatureInput, HttpMethodEnum } from '/@/api-services/models';
 
-const getDictDataByCode = useUserInfo.getDictDataByCode;
+const getDictDataByCode = useUserInfo().getDictDataByCode;
 const props = defineProps({
 	title: String,
 });

+ 1 - 1
Web/src/views/system/org/component/editOrg.vue

@@ -79,7 +79,7 @@ import { getAPI } from '/@/utils/axios-utils';
 import { SysOrgApi } from '/@/api-services/api';
 import { SysOrg, UpdateOrgInput } from '/@/api-services/models';
 
-const getDictDataByCode = useUserInfo.getDictDataByCode;
+const getDictDataByCode = useUserInfo().getDictDataByCode;
 const props = defineProps({
 	title: String,
 	orgData: Array<SysOrg>,

+ 1 - 1
Web/src/views/system/org/index.vue

@@ -83,7 +83,7 @@ import { SysOrgApi } from '/@/api-services/api';
 import { SysOrg, UpdateOrgInput } from '/@/api-services/models';
 import DictLabel from "/@/components/table/dictLabel.vue";
 
-const getDictDataByCode = useUserInfo.getDictDataByCode;
+const getDictDataByCode = useUserInfo().getDictDataByCode;
 const editOrgRef = ref<InstanceType<typeof EditOrg>>();
 const orgTreeRef = ref<InstanceType<typeof OrgTree>>();
 const state = reactive({

+ 1 - 1
Web/src/views/system/print/component/editPrint.vue

@@ -91,7 +91,7 @@ import { getAPI } from '/@/utils/axios-utils';
 import { SysPrintApi } from '/@/api-services/api';
 import { UpdatePrintInput } from '/@/api-services/models';
 
-const getDictDataByCode = useUserInfo.getDictDataByCode;
+const getDictDataByCode = useUserInfo().getDictDataByCode;
 const hiprintDesignRef = ref<InstanceType<typeof HiprintDesign>>();
 const mode = ref(0);
 const props = defineProps({

+ 1 - 1
Web/src/views/system/role/component/grantData.vue

@@ -42,7 +42,7 @@ import { getAPI } from '/@/utils/axios-utils';
 import { SysRoleApi } from '/@/api-services/api';
 import { RoleOrgInput } from '/@/api-services/models';
 
-const getDictDataByCode = useUserInfo.getDictDataByCode;
+const getDictDataByCode = useUserInfo().getDictDataByCode;
 const emits = defineEmits(['handleQuery']);
 const orgTreeRef = ref();
 const state = reactive({

+ 1 - 1
Web/src/views/system/tenant/component/editTenant.vue

@@ -123,7 +123,7 @@ import { getAPI } from '/@/utils/axios-utils';
 import { SysTenantApi } from '/@/api-services/api';
 import { UpdateTenantInput } from '/@/api-services/models';
 
-const getDictDataByCode = useUserInfo.getDictDataByCode;
+const getDictDataByCode = useUserInfo().getDictDataByCode;
 const props = defineProps({
 	title: String,
 });

+ 7 - 2
Web/src/views/system/user/component/editUser.vue

@@ -41,7 +41,12 @@
 							<el-col :xs="24" :sm="12" :md="12" :lg="12" :xl="12" class="mb20">
 								<el-form-item label="账号类型" prop="accountType" :rules="[{ required: true, message: '账号类型不能为空', trigger: 'blur' }]">
 									<el-select v-model="state.ruleForm.accountType" placeholder="账号类型" collapse-tags collapse-tags-tooltip class="w100">
-                    <el-option :disabled="item.name == 'SysAdmin' && ![888, 999].some(x => x == userInfos.accountType)" :label="item.value" :value="item.code" v-for="(item, index) in getDictDataByCode('AccountTypeEnum').filter(x => x.name != 'SuperAdmin') ?? []" :key="index" />
+                    <el-option
+                        v-for="(item, index) in getDictDataByCode('AccountTypeEnum').filter(x => x.name != 'SuperAdmin') ?? []"
+                        :disabled="item.name == 'SysAdmin' && ![888, 999].some(x => x == userInfos.accountType)"
+                        :label="item.value"
+                        :value="item.code"
+                        :key="index" />
 									</el-select>
 								</el-form-item>
 							</el-col>
@@ -235,7 +240,7 @@ import { getAPI } from '/@/utils/axios-utils';
 import { SysPosApi, SysRoleApi, SysUserApi } from '/@/api-services/api';
 import { RoleOutput, SysOrg, SysPos, UpdateUserInput } from '/@/api-services/models';
 
-const getDictDataByCode = useUserInfo.getDictDataByCode;
+const getDictDataByCode = useUserInfo().getDictDataByCode;
 const props = defineProps({
 	title: String,
 	orgData: Array<SysOrg>,

+ 1 - 1
Web/src/views/system/user/index.vue

@@ -58,7 +58,7 @@
 						</el-table-column> -->
 						<el-table-column label="账号类型" width="110" align="center" show-overflow-tooltip>
 							<template #default="scope">
-                <DictLabel :value="scope.row.status" code="AccountTypeEnum" />
+                <DictLabel :value="scope.row.accountType" code="AccountTypeEnum" />
 							</template>
 						</el-table-column>
 						<el-table-column prop="roleName" label="角色集合" min-width="150" align="center" show-overflow-tooltip />