feat(selfop): show customer names and filter sales and turnover
This commit is contained in:
@@ -22,7 +22,7 @@ const waiting = computed(() => tasks.value.filter(t => t.taskNo !== current.valu
|
||||
const upcoming = computed(() => {
|
||||
const groups = new Map<string, number>()
|
||||
for (const task of waiting.value) {
|
||||
const name = `${task.warehouseCode || '账号'} · ${task.dataFamily === 'INVENTORY' ? '产品库存' : '出库销量'}`
|
||||
const name = `${task.warehouseCode || '账号'} · ${task.dataFamily === 'MASTER_DATA' ? '客户/商品资料' : task.dataFamily === 'INVENTORY' ? '产品库存' : '出库销量'}`
|
||||
groups.set(name, (groups.get(name) ?? 0) + 1)
|
||||
}
|
||||
return [...groups].map(([name, count]) => ({ name, count }))
|
||||
@@ -41,6 +41,8 @@ const schedules = computed(() => {
|
||||
})
|
||||
const nextStep = computed(() => {
|
||||
const phase = current.value?.progress?.phase
|
||||
if (phase === 'CUSTOMERS') return '获取商品资料 → 校验完整批次 → 发布资料'
|
||||
if (phase === 'PRODUCTS') return '校验完整批次 → 发布资料'
|
||||
if (['DIRECTORY', 'DISCOVERY'].includes(phase ?? '')) return '处理出库订单 → 更新各仓出库数据 → 统计计算 → 发布结果'
|
||||
if (['DETAIL', 'DETAILS'].includes(phase ?? '')) return '更新各仓出库数据 → 统计计算 → 发布结果'
|
||||
if (['INVENTORY', 'FETCH'].includes(phase ?? '')) return '库存完整性校验 → 统计计算 → 发布结果'
|
||||
@@ -49,7 +51,7 @@ const nextStep = computed(() => {
|
||||
if (['PUBLISH', 'PUBLISHED'].includes(phase ?? '')) return '本次发布完成后,由调度继续安排后续任务'
|
||||
return '等待调度确认下一步'
|
||||
})
|
||||
const scopeText = computed(() => current.value?.taskNo === props.overview?.accountActivity?.taskNo || current.value?.progress?.progressScope === 'ACCOUNT_SHARED' ? '领星账号 · 出库数据' : `${current.value?.warehouseCode || '领星账号'} · ${current.value?.dataFamily === 'INVENTORY' ? '产品库存' : '出库销量'}`)
|
||||
const scopeText = computed(() => current.value?.dataFamily === 'MASTER_DATA' ? '领星账号 · 客户/商品资料' : current.value?.taskNo === props.overview?.accountActivity?.taskNo || current.value?.progress?.progressScope === 'ACCOUNT_SHARED' ? '领星账号 · 出库数据' : `${current.value?.warehouseCode || '领星账号'} · ${current.value?.dataFamily === 'MASTER_DATA' ? '客户/商品资料' : current.value?.dataFamily === 'INVENTORY' ? '产品库存' : '出库销量'}`)
|
||||
const warehouseGroups = computed(() => [...new Set(props.overview?.warehouses.map(w => w.warehouseCode) ?? [])].map(code => ({ code, rows: props.overview!.warehouses.filter(w => w.warehouseCode === code) })))
|
||||
const latestPublication = computed(() => (props.overview?.warehouses ?? []).filter(w => w.lastPublishedAt).sort((a, b) => Date.parse(b.lastPublishedAt!) - Date.parse(a.lastPublishedAt!))[0])
|
||||
const idleReason = computed(() => {
|
||||
@@ -59,7 +61,7 @@ const idleReason = computed(() => {
|
||||
if (props.overview.warehouses.some(w => ['DEAD', 'FAILED', 'ABORTED'].includes(w.currentTask?.taskStatus ?? ''))) return '暂无活动任务,最近有任务停止'
|
||||
return '等待下一次采集'
|
||||
})
|
||||
const flow = computed(() => current.value?.dataFamily === 'INVENTORY' ? [
|
||||
const flow = computed(() => current.value?.dataFamily === 'MASTER_DATA' ? [{ name: '获取客户资料', phases: ['CUSTOMERS'] }, { name: '获取商品资料', phases: ['PRODUCTS'] }, { name: '发布资料', phases: ['PUBLISH', 'PUBLISHED'] }] : current.value?.dataFamily === 'INVENTORY' ? [
|
||||
{ name: '读取库存', phases: ['INVENTORY', 'FETCH'] }, { name: '完整性校验', phases: ['VALIDATE', 'VALIDATION'] }, { name: '统计计算', phases: ['BUILD', 'BUILDING'] }, { name: '发布结果', phases: ['PUBLISH', 'PUBLISHED'] },
|
||||
] : [{ name: '获取出库目录', phases: ['DIRECTORY', 'DISCOVERY'] }, { name: '处理出库订单', phases: ['DETAIL', 'DETAILS'] }, { name: '更新各仓出库数据', phases: ['MERGE', 'VALIDATE', 'VALIDATION'] }, { name: '统计计算', phases: ['BUILD', 'BUILDING'] }, { name: '发布结果', phases: ['PUBLISH', 'PUBLISHED'] }])
|
||||
function nodeState(phases: string[]) {
|
||||
|
||||
Reference in New Issue
Block a user