feat: 新增基础配置菜单节点与核心企业/客户经理种子数据

main
halo 2026-07-09 15:46:45 +08:00
parent 2d6d43761f
commit b647a8abf1
5 changed files with 74 additions and 3 deletions

View File

@ -0,0 +1,19 @@
// 核心企业(渠道)数据以扁平列表存储;orgId 关联本系统机构树(所属机构),其余字段均为自由文本
export const channels = [
{
id: 'channel001',
name: '示例核心企业A',
channelCode: 'CH0001',
appCode: 'APP0001',
motherAccountBank: '中国工商银行示例支行',
orgId: 'org002',
createdAt: '2026-01-05 00:00:00'
}
]
let seq = channels.length
export function nextChannelId() {
seq += 1
return `channel${String(seq).padStart(3, '0')}`
}

View File

@ -0,0 +1,18 @@
// 客户经理数据以扁平列表存储;机构号/机构名称为自由文本,不关联本系统机构树;工号全局唯一
export const managers = [
{
id: 'manager001',
orgCode: 'ORG0001',
orgName: '示例网点',
jobNumber: 'JOB0001',
name: '示例经理',
createdAt: '2026-01-06 00:00:00'
}
]
let seq = managers.length
export function nextManagerId() {
seq += 1
return `manager${String(seq).padStart(3, '0')}`
}

View File

@ -47,6 +47,39 @@ export const menuTree = [
]
}
]
},
{
id: 'base_config',
name: '基础配置',
path: '/base-config',
icon: 'AppstoreOutlined',
type: 'menu',
children: [
{
id: 'base_channel',
name: '核心企业管理',
path: '/base-config/channel',
component: 'base-config/channel/ChannelList',
type: 'menu',
buttons: [
{ code: 'channel:add', name: '新增' },
{ code: 'channel:edit', name: '修改' },
{ code: 'channel:delete', name: '删除' }
]
},
{
id: 'base_manager',
name: '客户经理管理',
path: '/base-config/manager',
component: 'base-config/manager/ManagerList',
type: 'menu',
buttons: [
{ code: 'manager:add', name: '新增' },
{ code: 'manager:edit', name: '修改' },
{ code: 'manager:delete', name: '删除' }
]
}
]
}
]

View File

@ -8,7 +8,7 @@ export const roles = [
orgId: 'org001',
builtin: true,
status: 'enabled',
menuIds: ['system', 'sys_user', 'sys_role', 'sys_org'],
menuIds: ['system', 'sys_user', 'sys_role', 'sys_org', 'base_config', 'base_channel', 'base_manager'],
buttonCodes: flattenButtons(menuTree),
dataScope: 'all',
createdAt: '2026-01-01 00:00:00'

View File

@ -5,7 +5,7 @@
:field-names="{ label: 'title', value: 'value', children: 'children' }"
show-search
tree-node-filter-prop="title"
placeholder="请选择上级机构"
:placeholder="placeholder"
allow-clear
:loading="loading"
@update:value="$emit('update:modelValue', $event)"
@ -18,7 +18,8 @@ import { fetchOrgListApi } from '@/api/system'
const props = defineProps({
modelValue: { type: String, default: undefined },
excludeId: { type: String, default: '' }
excludeId: { type: String, default: '' },
placeholder: { type: String, default: '请选择上级机构' }
})
defineEmits(['update:modelValue'])