fix: resolve func undefined in menu init and slice error on undefined array in kitting vue
This commit is contained in:
@ -1,5 +1,6 @@
|
||||
from app.models.system import SysMenu, SysElement, SysRolePermission
|
||||
from app.extensions import db
|
||||
from sqlalchemy import func
|
||||
from sqlalchemy.exc import SQLAlchemyError
|
||||
|
||||
|
||||
@ -401,7 +402,7 @@ class PermissionService:
|
||||
# 定义菜单结构 (code, name, path, parent_code, sort_order)
|
||||
menu_defs = [
|
||||
# 顶级菜单 (按侧边栏顺序)
|
||||
('material_mgmt', '基础信息管理', '/material', None, 10),
|
||||
('material_mgmt', '基础信息管理', '/basic', None, 10),
|
||||
('inventory_mgmt', '入库管理', '/inventory', None, 20),
|
||||
('stocktake_mgmt', '盘点管理', '/stocktake', None, 30),
|
||||
('outbound_mgmt', '出库管理', '/outbound', None, 40),
|
||||
@ -410,8 +411,9 @@ class PermissionService:
|
||||
('scrap_mgmt', '报废管理', '/scrap', None, 70),
|
||||
('system_mgmt', '系统管理', '/system', None, 80),
|
||||
|
||||
# 基础信息子菜单
|
||||
('material_base', '基础信息', '/material/index', 'material_mgmt', 1),
|
||||
# 基础信息子菜单(/basic 父级下的两个子路由)
|
||||
('material_base', '物料基础信息', '/basic/material', 'material_mgmt', 1),
|
||||
('basic_kitting', '产能与齐套分析', '/basic/kitting', 'material_mgmt', 2),
|
||||
|
||||
# 入库管理子菜单
|
||||
('inbound_buy', '采购入库', '/inventory/buy', 'inventory_mgmt', 1),
|
||||
|
||||
@ -302,7 +302,7 @@ const pageSize = ref(20)
|
||||
const filteredTableData = computed(() => {
|
||||
if (!searchKeyword.value.trim()) return paginatedData.value
|
||||
const kw = searchKeyword.value.trim().toLowerCase()
|
||||
return tableData.value.filter(item =>
|
||||
return (tableData.value || []).filter((item: any) =>
|
||||
(item.bom_no || '').toLowerCase().includes(kw) ||
|
||||
(item.parent_name || '').toLowerCase().includes(kw)
|
||||
)
|
||||
@ -310,7 +310,7 @@ const filteredTableData = computed(() => {
|
||||
|
||||
const paginatedData = computed(() => {
|
||||
const start = (page.value - 1) * pageSize.value
|
||||
return filteredTableData.value.slice(start, start + pageSize.value)
|
||||
return (filteredTableData.value || []).slice(start, start + pageSize.value)
|
||||
})
|
||||
|
||||
const handleFilter = () => {
|
||||
@ -330,7 +330,7 @@ const loadData = async () => {
|
||||
try {
|
||||
// 1. 读取用户监控列表
|
||||
const prefRes: any = await getUserPreferences()
|
||||
const watchlist: any[] = prefRes.data?.bom_kitting_watchlist || []
|
||||
const watchlist: any[] = (prefRes.data?.bom_kitting_watchlist) || []
|
||||
if (!watchlist.length) {
|
||||
tableData.value = []
|
||||
loading.value = false
|
||||
|
||||
Reference in New Issue
Block a user