搜索
刷新
{{ dashboard.hideDone ? '已隐藏已完成订单(点击显示全部)' : '隐藏已完成订单' }}
{ dashboard.page = p; loadDashboard(); }" style="margin-bottom:16px;">
客户编号:{{ o.customer_no || '-' }}
签单日期:{{ o.sign_date || '-' }}
完成零件:{{ o.parts_finished }} / {{ o.parts_total }}
加载中...
暂无零件
重置
未生产 {{ dashboard.statusCount.unproduced }}
未采购 {{ dashboard.statusCount.unpurchased }}
生产中 {{ dashboard.statusCount.producing }}
已完成 {{ dashboard.statusCount.finished }}
{{ scope.row.module_belong || '-' }}
{{ scope.row.processing_status }}
没有符合筛选条件的零件
暂无订单数据
加载中...
暂无零件
重置
显示 {{ filteredDashboardParts.length }} / {{ dashboard.parts.length }} 条
未生产 {{ dashboard.statusCount.unproduced }}
未采购 {{ dashboard.statusCount.unpurchased }}
生产中 {{ dashboard.statusCount.producing }}
已完成 {{ dashboard.statusCount.finished }}
{{ scope.row.module_belong || '-' }}
{{ scope.row.processing_status }}
没有符合筛选条件的零件
关闭
保存
库存预警
不足 {{ stockWarning.low_count }}
超量 {{ stockWarning.high_count }}
查看库存档案
暂无库存不足物料
{{ scope.row.quantity }} / {{ scope.row.safe_min }}
{{ materialTypeText(scope.row.material_type) }}
搜索
新增订单
批量修改
批量删除
取消选择({{ orders.selection.length }})
刷新
列显示
orders.selection = val" @sort-change="onOrderSort" ref="orderTable">
{{ scope.row.parts_finished }}/{{ scope.row.parts_total }}
{{ scope.row.extra_data ? (scope.row.extra_data[f.field_key] || '') : '' }}
编辑
零件管理
删除
{orders.page=p;loadOrders();}" @size-change="(s)=>{orders.size=s;orders.page=1;loadOrders();}" style="margin-top:12px;">
取消
保存
新增零件
批量删除
批量修改({{ partsMgmt.selection.length }})
Excel导入
导出零件
下载模板
保存全部
筛选
重置
显示 {{ partsFilteredList.length }} / {{ partsMgmt.list.length }} 条
partsMgmt.selection = val" style="overflow-x:auto;">
关闭
将修改选中的 {{ partsMgmt.selection.length }} 条零件,请勾选要修改的字段并填入新值(未勾选的字段保持不变)。
修改
修改
修改
修改
修改
修改
修改
修改
修改
取消
下一步
即将修改 {{ partsMgmt.selection.length }} 条零件的以下字段:
-
{{ f.label }} → {{ f.value }}
修改后请点击「保存全部」生效。确认执行?
取消
确认修改
订单号
客户编号
机械名称型号
签单日期
完成进度
{{ f.field_label }}
关闭
将修改选中的 {{ orders.selection.length }} 条订单
取消
确认修改
列显示
共 {{ production.unassignedTotal }} 条
production.unassignedSel = val" @sort-change="onUnassignedSort">
{{ scope.row.part_name }}{{ scope.row.priority>=2?'特急':'加急' }}
{{ scope.row.processing_status }}
{ production.unassignedPage = p; loadUnassigned(); }" style="margin-top:6px;">
生产交付周期:
天
(计划完成日 = 派工下发日 + {{ production.leadDays }} 天 = {{ leadDatePreview }})
批量移除({{ production.bufferSel.length }})
取消选择
已选 {{ production.bufferSel.length }} / {{ production.buffer.length }} 条
请从左侧勾选零件后点击「加入待选区」或「全部加入待选区」
production.bufferSel = val" @sort-change="onBufferSortChange">
{{ scope.row.processing_flow || '-' }}
{{ scope.row.material || '-' }}
移除
{ production.bufferPage = p; }" style="margin-top:8px; text-align:right;">
{{ col.label }}
关闭
取消
保存
取消
保存
全部
生产中
已完成
{{ production.todayFilter ? '取消今日' : '今日下发' }}
搜索
导出选中
全部导出
打印选中
打印全部
订单插单
插单记录
取消选择({{ production.historySel.length }})
刷新
查询
重置
保存方案
共 {{ production.historyTotal }} 条
production.historySel = val" style="overflow-x:auto;">
{{ scope.row.processing_status }}
{{ scope.row.priority>=2?'特急':'加急' }}
顺延
{{ scope.row.dispatch_date || '-' }}
{{ scope.row.extra_data ? (scope.row.extra_data[f.field_key] || '') : '' }}
成品入库
取消插单
插单
{ production.historyPage = p; loadHistory(); }" style="margin-top:10px;">
整单插单(订单下所有未完成零件)
单零件插单
加急(橙色置顶)
特急(红色最优先)
天(0 = 不改动插单件原计划完成日;设置后 = 今天 + N 天)
被挤占零件的计划完成日统一顺延 N 天
插单影响预览
插单对象 {{ insertDlg.rush.length }} 件
(计划完成日 → {{ insertDlg.rush[0].new_plan }});
被挤占零件 {{ insertDlg.affected.length }} 件(计划完成日 +{{ insertDlg.postpone_days }} 天,可取消勾选个别零件不顺延)
insertDlg.affectedSel = val">
{{ s.row.new_plan }}
没有会被挤占顺延的零件(其他在产零件不受影响)
取消
计算影响预览
确认插单
搜索
{{ s.row.scope==='order'?'整单':'单件' }}
{{ s.row.scope==='order' ? ('订单 ' + (s.row.order_no||'-')) : ((s.row.part_no||'-') + ' ' + (s.row.part_name||'')) }}
取消
{{ s.row.priority>=2?'特急':'加急' }}
{{ s.row.reason || '-' }}
{{ s.row.affected_cnt }} 件 / +{{ s.row.postpone_days }} 天
未顺延
关闭
搜索
新增库存
批量删除
取消选择({{ inventory.selection.length }})
Excel导入
导出
下载模板
刷新
inventory.selection = val" @sort-change="onInventorySort" style="width:100%;overflow-x:auto;">
{{ materialTypeText(scope.row.material_type) }}
{{ scope.row.quantity }}
{{ stockStatusText(scope.row) }}
{{ scope.row.extra_data ? (scope.row.extra_data[f.field_key] || '') : '' }}
编辑
强制调账
删除
{inventory.page=p;loadInventory();}" @size-change="(s)=>{inventory.size=s;inventory.page=1;loadInventory();}" style="margin-top:12px;">
提示:数量只能通过出入库单据变动,编辑页面不可直接修改。如需强制调整,请使用「强制调账」按钮(仅超级管理员可见)。
取消
保存
产品:{{ manualAdjust.row.product_no }} {{ manualAdjust.row.product_name }}
当前数量:{{ manualAdjust.row.quantity }}
取消
确认调整
查询
新增工艺
{{ scope.row.first_step.step_name }}
未设置
查看
编辑
删除
零件信息
零件编号:{{ craftDetail.data.part_no }}
零件名称:{{ craftDetail.data.part_name }}
首道材料信息(下料)
材料名称:{{ craftDetail.data.first_material_name || '-' }}
材料型号:{{ craftDetail.data.first_material_model || '-' }}
完整工艺流程
{{ scope.row.team_group }}
-
关闭
{{ craftEdit.form.part_image ? '更换图片' : '上传图片' }}
移除
{{ craftEdit.form.material_image ? '更换图片' : '上传图片' }}
移除
添加工序
按工序顺序添加,第一道一般为下料工序
取消
保存
新增字段
刷新
提示:拖动行可调整字段显示顺序
{{ scope.row.is_required ? '是' : '否' }}
编辑
删除
{{ fieldTabText(fieldTab) }}
勾选后该字段值不允许重复
数值越小越靠前
取消
保存
新增管理员
刷新
{{ roleText(scope.row.role) }}
{{ permText(scope.row, 'order_write') }}
{{ permText(scope.row, 'production_write') }}
{{ permText(scope.row, 'inventory_write') }}
{{ permText(scope.row, 'stock_archive_rw') }}
{{ permText(scope.row, 'stock_io_create') }}
{{ permText(scope.row, 'stock_check') }}
{{ permText(scope.row, 'field_write') }}
{{ permText(scope.row, 'workflow_write') }}
编辑
删除
取消
保存
搜索
新增入库单
导出
刷新
{{ scope.row.status === 1 ? '已作废' : '正常' }}
详情
作废
{stockIn.page=p;loadStockIn();}" @size-change="(s)=>{stockIn.size=s;stockIn.page=1;loadStockIn();}" style="margin-top:12px;">
入库明细
onStockInItemPick(scope.$index, item)"
@clear="() => { scope.row.inventory_id = ''; scope.row.product_no = ''; }"
>
添加一行
取消
保存
{{ stockInView.order.bill_no }}
类型:{{ stockInView.order.in_type }}
时间:{{ stockInView.order.in_time }}
总数量:{{ stockInView.order.total_qty }}
供应商:{{ stockInView.order.supplier || '-' }}
{{ stockInView.order.status === 1 ? '已作废' : '正常' }}
搜索
新增出库单
导出
打印
刷新
{{ scope.row.status === 1 ? '已作废' : '正常' }}
详情
作废
{stockOut.page=p;loadStockOut();}" @size-change="(s)=>{stockOut.size=s;stockOut.page=1;loadStockOut();}" style="margin-top:12px;">
出库明细
onStockOutItemPick(scope.$index, v)">
添加一行
取消
保存
{{ stockOutView.order.bill_no }}
类型:{{ stockOutView.order.out_type }}
时间:{{ stockOutView.order.out_time }}
总数量:{{ stockOutView.order.total_qty }}
客户:{{ stockOutView.order.customer || '-' }}
{{ stockOutView.order.status === 1 ? '已作废' : '正常' }}
搜索
新增领料单
导出
打印
刷新
{{ scope.row.status === 1 ? '已作废' : '正常' }}
作废
{stockPick.page=p;loadStockPick();}" @size-change="(s)=>{stockPick.size=s;stockPick.page=1;loadStockPick();}" style="margin-top:12px;">
onPickItemPick(item)"
@clear="() => { stockPickEdit.form.inventory_id = ''; stockPickEdit.form.product_no = ''; }"
>
取消
保存
搜索
新增成品入库单
导出
刷新
{{ scope.row.status === 1 ? '已作废' : '正常' }}
作废
{stockFinish.page=p;loadStockFinish();}" @size-change="(s)=>{stockFinish.size=s;stockFinish.page=1;loadStockFinish();}" style="margin-top:12px;">
取消
保存
搜索
导出
打印
刷新
说明:台账流水由系统自动生成,不可手动新增或修改。
{{ billTypeText(scope.row.bill_type) }}
{{ scope.row.change_qty >= 0 ? '+' : '' }}{{ scope.row.change_qty }}
{stockLog.page=p;loadStockLog();}" @size-change="(s)=>{stockLog.size=s;stockLog.page=1;loadStockLog();}" style="margin-top:12px;">
搜索
新建盘点单
导出
打印
刷新
+{{ scope.row.gain_qty }}-
-{{ scope.row.loss_qty }}-
{{ scope.row.status === 1 ? '已确认' : '草稿' }}
确认
{stockCheck.page=p;loadStockCheck();}" @size-change="(s)=>{stockCheck.size=s;stockCheck.page=1;loadStockCheck();}" style="margin-top:12px;">
保存后为「草稿」状态,确认盘点时才会更新库存并生成台账流水。
取消
保存草稿
数据库备份与恢复
备份数据库
导出完整 SQL 备份文件
恢复数据库
上传 SQL 备份文件恢复数据库(注意:将覆盖现有数据)