diff --git a/Web/src/stores/userInfo.ts b/Web/src/stores/userInfo.ts index 620e04de..6465a2f1 100644 --- a/Web/src/stores/userInfo.ts +++ b/Web/src/stores/userInfo.ts @@ -132,16 +132,12 @@ export const useUserInfo = defineStore('userInfo', { // 根据字典类型和代码取字典项 getDictItemByCode(typePCode: string, val: string) { - if (val != undefined) { - val = val.toString(); - if (val) { - const _val = val.toString(); - const ds = this.getDictDatasByCode(typePCode); - for (let index = 0; index < ds.length; index++) { - const element = ds[index]; - if (element.code == _val) { - return element; - } + if (val != undefined && val !== '') { + const _val = val.toString(); + const ds = this.getDictDatasByCode(typePCode); + for (const element of ds) { + if (element.value === _val) { + return element; } } } @@ -150,16 +146,12 @@ export const useUserInfo = defineStore('userInfo', { // 根据字典类型和值取描述 getDictLabelByVal(typePCode: string, val: string) { - if (val != undefined) { - val = val.toString(); - if (val) { - const _val = val.toString(); - const ds = this.getDictDatasByCode(typePCode); - for (let index = 0; index < ds.length; index++) { - const element = ds[index]; - if (element.value == _val) { - return element; - } + if (val != undefined && val !== '') { + const _val = val.toString(); + const ds = this.getDictDatasByCode(typePCode); + for (const element of ds) { + if (element.code === _val) { + return element; } } } @@ -170,12 +162,12 @@ export const useUserInfo = defineStore('userInfo', { getDictValByLabel(typePCode: string, label: string) { if (!label) return ''; const ds = this.getDictDatasByCode(typePCode); - for (let index = 0; index < ds.length; index++) { - const element = ds[index]; - if (element.name == label) { + for (const element of ds) { + if (element.name === label) { return element; } } + return ''; // 明确返回空字符串 }, // 根据字典类型获取字典数据 @@ -185,18 +177,20 @@ export const useUserInfo = defineStore('userInfo', { // 根据字典类型获取字典数据(值转为数字类型) getDictIntDatasByCode(dictTypeCode: string) { - var ds = this.dictListInt[dictTypeCode]; + let ds = this.dictListInt[dictTypeCode]; if (ds) { return ds; - } else { - ds = this.dictList[dictTypeCode].map((element: { code: any }) => { - var d = { ...element }; - d.code = element.code - 0; - return d; + } + + const dictList = this.dictList[dictTypeCode]; + if (dictList) { + ds = dictList.map((element: { code: any }) => { + return { ...element, code: Number(element.code) }; }); this.dictListInt[dictTypeCode] = ds; - return ds; } + + return ds; }, }, }); diff --git a/Web/src/views/home/widgets/components/index.ts b/Web/src/views/home/widgets/components/index.ts index 5d097287..8ffded7b 100644 --- a/Web/src/views/home/widgets/components/index.ts +++ b/Web/src/views/home/widgets/components/index.ts @@ -4,6 +4,9 @@ type Component = any; const resultComps: Record = {}; +// 要排除的组件名称数组 +const excludeComponents = ['scheduleEdit']; + // 使用 import.meta.glob 动态导入当前目录中的所有 .vue 文件,急切导入 const requireComponent = import.meta.glob('./*.vue', { eager: true }); // console.log(requireComponent); @@ -11,12 +14,18 @@ const requireComponent = import.meta.glob('./*.vue', { eager: true }); Object.keys(requireComponent).forEach((fileName: string) => { // 处理文件名,去掉开头的 './' 和结尾的文件扩展名 const componentName = fileName.replace(/^\.\/(.*)\.\w+$/, '$1'); + + // 如果组件名称在排除数组中,跳过导入 + if (excludeComponents.includes(componentName)) { + return; + } + // 确保模块导出存在并且是默认导出 const componentModule = requireComponent[fileName] as { default: Component }; + // 将组件添加到 resultComps 中,使用处理后的文件名作为键 resultComps[componentName] = componentModule.default; }); -// 动态的,这里拿到title等东西是为了这里显示 // 标记 resultComps 为原始对象,避免其被设为响应式 export default markRaw(resultComps); diff --git a/Web/src/views/home/widgets/components/schedule.vue b/Web/src/views/home/widgets/components/schedule.vue index b2aeb018..f6f2535a 100644 --- a/Web/src/views/home/widgets/components/schedule.vue +++ b/Web/src/views/home/widgets/components/schedule.vue @@ -25,7 +25,14 @@
- {{ item.content }} + + + {{ item.scheduleTime }} + + + {{ item.content }} + +
@@ -207,7 +214,6 @@ function FormatDate(date: any) { // 日程列表 .schedule-list { - padding: 0 20px 10px; overflow-y: auto; height: 150px; .item { diff --git a/Web/src/views/home/widgets/components/scheduleEdit.vue b/Web/src/views/home/widgets/components/scheduleEdit.vue index 29060a09..983c55ef 100644 --- a/Web/src/views/home/widgets/components/scheduleEdit.vue +++ b/Web/src/views/home/widgets/components/scheduleEdit.vue @@ -11,7 +11,7 @@ - + diff --git a/Web/src/views/home/widgets/index.vue b/Web/src/views/home/widgets/index.vue index d242645a..f563d944 100644 --- a/Web/src/views/home/widgets/index.vue +++ b/Web/src/views/home/widgets/index.vue @@ -31,7 +31,7 @@
-