Files
pda-overseas-uniapp/src/data/overseas-workbench.js
T

56 lines
8.6 KiB
JavaScript

export const MODULES = [
{ key: 'inbound', name: '入仓作业', nameKey: 'modules.inbound.name', icon: '入', description: '单账号锁定一柜,完成柜号级入库闭环', descriptionKey: 'modules.inbound.description', operations: [
{ key: 'receiving', name: '拆柜收货', nameKey: 'modules.receiving.name', icon: '卸', iconType: 'download', description: '三类照片签收,箱码定位入仓码后按目的类型收货', descriptionKey: 'modules.receiving.description', available: true }
] },
{ key: 'outbound', name: '出库履约', nameKey: 'modules.outbound.name', icon: '出', description: '排车拣货、出库任务与发车闭环', descriptionKey: 'modules.outbound.description', operations: [
{ key: 'dispatchPicking', name: '排车拣货', nameKey: 'modules.dispatchPicking.name', icon: '车', iconType: 'paperplane', description: '按排车任务扫描托盘拣货,完成门禁后执行发车', descriptionKey: 'modules.dispatchPicking.description', available: true, route: '/pages/dispatch/dispatch' },
{ key: 'outboundPicking', name: '出库作业', nameKey: 'modules.outboundPicking.name', icon: '拣', iconType: 'checkbox', description: '处理出库与一件代发任务,扫码核平后完成', descriptionKey: 'modules.outboundPicking.description', available: true, route: '/pages/outbound/outbound' }
] },
{ key: 'inventory', name: '库内作业', nameKey: 'modules.inventory.name', icon: '库', description: '盘点、移库与托盘管理', descriptionKey: 'modules.inventory.description', operations: [
{ key: 'stocktake', name: '库存盘点', nameKey: 'modules.stocktake.name', icon: '盘', iconType: 'list', description: '按任务扫描库位和库存', descriptionKey: 'modules.stocktake.description', available: false },
{ key: 'move', name: '商品移库', nameKey: 'modules.move.name', icon: '移', iconType: 'loop', description: '扫描来源与目标库位完成移库', descriptionKey: 'modules.move.description', available: false },
{ key: 'pallet', name: '托盘管理', nameKey: 'modules.pallet.name', icon: '托', iconType: 'map', description: '扫码查询、组托、拆托、换托及解绑', descriptionKey: 'modules.pallet.description', available: true, route: '/pages/pallet/pallet' }
] },
{ key: 'relabel', name: '换标作业', nameKey: 'modules.relabel.name', icon: '换', description: '换标收货、执行与复核', descriptionKey: 'modules.relabel.description', operations: [
{ key: 'relabelReceive', name: '换标收货', nameKey: 'modules.relabelReceive.name', icon: '收', iconType: 'download', description: '扫描换标单并确认待处理库存', descriptionKey: 'modules.relabelReceive.description', available: false },
{ key: 'relabelExecute', name: '换标执行', nameKey: 'modules.relabelExecute.name', icon: '换', iconType: 'compose', description: '扫描旧标和新标记录换标结果', descriptionKey: 'modules.relabelExecute.description', available: false },
{ key: 'relabelReview', name: '换标复核', nameKey: 'modules.relabelReview.name', icon: '核', iconType: 'checkbox', description: '复核标签和商品关联关系', descriptionKey: 'modules.relabelReview.description', available: false }
] },
{ key: 'query', name: '现场查询', nameKey: 'modules.query.name', icon: '查', description: '库存、库位与托盘查询', descriptionKey: 'modules.query.description', operations: [
{ key: 'inventoryQuery', name: '库存查询', nameKey: 'modules.inventoryQuery.name', icon: '存', iconType: 'search', description: '扫描商品或箱码查询可用库存', descriptionKey: 'modules.inventoryQuery.description', available: false },
{ key: 'locationQuery', name: '库位查询', nameKey: 'modules.locationQuery.name', icon: '位', iconType: 'location', description: '扫描库位查看容量和在库明细', descriptionKey: 'modules.locationQuery.description', available: false },
{ key: 'palletQuery', name: '托盘查询', nameKey: 'modules.palletQuery.name', icon: '托', iconType: 'flag', description: '扫描托盘码查看绑定库存', descriptionKey: 'modules.palletQuery.description', available: false }
] }
]
const PROTOTYPES = {
'到仓登记': { subtitle: '核对入仓计划与车辆到仓信息', scanLabel: '入仓计划 / 柜号', scanPlaceholder: '扫描入仓计划号或柜号', prefix: 'INB', titles: ['海外仓入仓计划', '合作仓到仓任务'], meta: '等待到仓', location: '收货月台 R-01', quantity: '12 托 · 86 箱', action: '开始登记' },
'卸柜收货': { subtitle: '按箱或托盘确认卸柜实收', scanLabel: '箱码 / 托盘码', scanPlaceholder: '扫描箱码或托盘码', prefix: 'RCV', titles: ['海运柜卸柜收货', '转运车辆卸货'], meta: '卸柜中', location: '卸货区 U-02', quantity: '待收 68 箱', action: '继续收货' },
'入仓上架': { subtitle: '将已收货库存上架到指定库位', scanLabel: '容器码 / 库位码', scanPlaceholder: '扫描容器或目标库位', prefix: 'PUT', titles: ['到仓库存上架', '待上架托盘任务'], meta: '待上架', location: 'S-01 → A-03-12', quantity: '8 托 · 42 箱', action: '开始上架' },
'库存盘点': { subtitle: '按盘点任务扫描库位和库存', scanLabel: '盘点单 / 库位码', scanPlaceholder: '扫描盘点单或库位码', prefix: 'CC', titles: ['A 区循环盘点', '异常库位复盘'], meta: '动态盘点', location: '库区 A-03', quantity: '24 库位', action: '开始盘点' },
'商品移库': { subtitle: '从来源库位移动到目标库位', scanLabel: '移库单 / 库位码', scanPlaceholder: '扫描移库单或来源库位', prefix: 'MV', titles: ['库位容量优化', '换标区库存移库'], meta: '待执行', location: 'A-05 → B-01', quantity: '6 托 · 28 箱', action: '开始移库' },
'托盘管理': { subtitle: '核对托盘状态并执行组托或拆托', scanLabel: '托盘码', scanPlaceholder: '扫描托盘码', prefix: 'PLT', titles: ['到仓库存组托', '异常托盘拆托'], meta: '托盘作业', location: '托盘区 P-02', quantity: '6 个托盘', action: '开始处理' },
'换标收货': { subtitle: '确认换标单与待处理库存', scanLabel: '换标单 / 箱码', scanPlaceholder: '扫描换标单号或箱码', prefix: 'RL-R', titles: ['FBA 换标收货', '退货库存换标收货'], meta: '待收货', location: '换标区 L-01', quantity: '36 箱', action: '开始收货' },
'换标执行': { subtitle: '扫描旧标与新标记录换标结果', scanLabel: '旧标 / 新标', scanPlaceholder: '扫描商品标签', prefix: 'RL-W', titles: ['FBA 标签更换', '商品条码更正'], meta: '换标中', location: '换标台 L-03', quantity: '待换 120 件', action: '继续换标' },
'换标复核': { subtitle: '复核标签与商品关联关系', scanLabel: '换标单 / 新标', scanPlaceholder: '扫描换标单或新标签', prefix: 'RL-C', titles: ['换标结果复核', '异常标签复核'], meta: '待复核', location: '复核台 L-04', quantity: '待核 42 件', action: '开始复核' },
'库存查询': { subtitle: '查询商品、箱和托盘的库存状态', scanLabel: '商品码 / 箱码', scanPlaceholder: '扫描商品或箱码', prefix: 'SKU', titles: ['商品库存查询', '箱库存查询'], meta: '可用库存', location: 'A-03-12', quantity: '可用 1,280 件', action: '查看详情' },
'库位查询': { subtitle: '查看库位容量、状态与在库明细', scanLabel: '库位码', scanPlaceholder: '扫描库位编码', prefix: 'LOC', titles: ['标准货架位', '托盘库位'], meta: '库位正常', location: 'A 区 03 通道', quantity: '占用 72%', action: '查看详情' },
'托盘查询': { subtitle: '查看托盘状态与绑定库存', scanLabel: '托盘码', scanPlaceholder: '扫描托盘码', prefix: 'PLT', titles: ['在库托盘', '待处理托盘'], meta: '托盘正常', location: 'B-02-08', quantity: '绑定 12 箱', action: '查看详情' }
}
export function getOperationPrototype(name) {
const prototype = PROTOTYPES[name] || PROTOTYPES['库存查询']
return {
...prototype,
metrics: [
{ label: '待处理', value: 6, tone: 'metric-primary' },
{ label: '进行中', value: 2, tone: 'metric-warning' },
{ label: '今日完成', value: 18, tone: 'metric-success' }
],
tasks: [
{ code: `${prototype.prefix}-260820-001`, title: prototype.titles[0], meta: prototype.meta, location: prototype.location, quantity: prototype.quantity, action: prototype.action, status: '待处理', tone: 'status-pending' },
{ code: `${prototype.prefix}-260820-002`, title: prototype.titles[1], meta: prototype.meta, location: prototype.location, quantity: prototype.quantity, action: '继续处理', status: '进行中', tone: 'status-progress' }
]
}
}