零件改制功能设计方案

0. 需求背景

0.1 需求提出

本需求由罗总牵头,组织技术中心、精工车间、仓储等相关部门讨论后提出。

0.2 提出原因

当前现场存在零件改制业务,但改制过程尚未完整纳入系统管理。由于现场计件、派工生产、完工入库和后续统计都需要明确的数据来源,原有线下记录或零散流转方式无法满足计件核算、过程追溯和部门协同要求。

因此,需要在系统内补充零件改制订单流程,将改制订单从技术中心发起、精工车间派工生产到完工入库的全过程纳入系统管理。

0.3 应用场景

本功能主要应用于以下场景:

1. 需求目标

基于项目现有精工车间生产流程,新增“零件改制”业务。

本次方案调整为:

核心原则:

2. 现有流程承接关系

根据项目现有页面,改制订单应承接以下流程:

流程节点现有承接页面说明
技术发起技术中心新增页面发起改制订单,填写改制要求
生成任务精工车间生产任务查询改制订单进入生产任务列表
制定工艺精工车间制定工艺可复用或复制原工艺后调整
车间派工精工车间车间派工工艺完成后派工
领料判断领料/仓储出库流程根据物料类型决定是否生成领料单
加工执行精工车间现有加工流程扫码、报工、质检等复用现有逻辑
入库仓储入库流程改制完工后按现有流程办理入库
记录查询改制记录查询查看改制全流程
零件改制业务流程图
零件改制业务流程图

3. 页面设计

3.1 技术中心新增页面:改制订单发起

建议路径:

src/views/TechnologyCenter/PartModificationOrder/index.vue

页面名称:

改制订单发起

归属模块:

技术中心

主要功能:

3.2 精工车间修改页面:生产任务查询

现有路径:

src/views/SeikoWorkshop/ProductionTaskQuery/index.vue

需要支持:

3.3 精工车间修改页面:车间派工

现有路径:

src/views/SeikoWorkshop/WorkshopAssignment/index.vue

需要支持:

3.4 新增页面:改制记录查询

建议路径:

src/views/TechnologyCenter/PartModificationRecord/index.vue

也可以放在精工车间模块,建议最终按业务归属确认。

页面名称:

改制记录查询

主要功能:

4. 改制订单类型

改制订单需要明确物料来源,建议增加字段:

改制来源类型

建议枚举:

改制来源类型说明是否生成领料单
原现自制订单使用原现有自制订单零件进行改制
毛坯改制直接使用已有毛坯进行改制
非毛坯物料改制使用仓库其他物料、半成品或成品改制

说明:

5. 领料规则

5.1 领料判断条件

领料时增加判断:

如果是改制订单,并且使用的物料不是毛坯,则生成领料单,由仓库物料出库。
如果是原现自制订单改制,或者直接使用毛坯改制,则不生成领料单。

规则可表达为:

是否生成领料单 =
  是否改制订单 === 1
  且 改制来源类型 === 非毛坯物料改制
  且 是否毛坯 !== 1

5.2 生成领料单场景

以下场景需要生成领料单:

生成后流程:

1. 技术中心发起改制订单。 2. 系统判断需要领料。 3. 生成领料单。 4. 仓库根据领料单出库。 5. 出库完成后,精工车间继续生产、工艺、派工。

5.3 不生成领料单场景

以下场景不生成领料单:

不生成领料单时:

5.4 领料状态字段

建议改制订单增加以下字段:

字段名说明
是否需要领料1 是,0 否
是否已生成领料单1 是,0 否
领料单号生成的领料单编号
领料状态未生成、待出库、已出库、已取消
出库日期仓库出库日期
出库人仓库操作人

6. 业务流程

6.1 技术中心发起改制订单

用户进入技术中心“改制订单发起”页面。

查询原始数据:

发起改制时填写:

提交时校验:

6.2 后端生成改制订单

提交后,后端需要同时处理:

6.3 进入精工车间生产任务查询

改制订单生成后,应能在现有接口中查到:

精工车间_生成任务_查询数据

建议返回字段增加:

生产任务查询页面显示:

是否允许工艺/派工,需要按业务决定:

建议采用更稳妥规则:

需要领料且未出库:允许制定工艺,不允许派工。
不需要领料:正常工艺、派工。
需要领料且已出库:正常工艺、派工。

6.4 制定工艺

改制订单在生产任务查询中点击 工艺,进入现有:

/SeikoWorkshop/DevelopProcess

工艺规则:

6.5 车间派工

工艺完成后进入现有车间派工页面:

src/views/SeikoWorkshop/WorkshopAssignment/index.vue

现有查询接口:

精工车间_车间派工_查询

改制订单派工前判断:

派工明细继续复用现有接口:

车间生产管理工艺_零件工序_已派工查询
车间生产管理工艺_零件工序_派工_工序查询
车间生产管理工艺_零件工序_派工
车间生产管理工艺_零件工序_取消派工

6.6 仓库出库

当改制订单需要领料时,系统生成领料单。

仓库根据领料单完成出库后,需要回写:

出库完成后,精工车间派工限制解除。

6.7 加工和完工

改制订单派工后,继续走现有精工车间加工流程:

完工后改制记录状态同步为:

已完成

7. 数据字段设计

7.1 改制订单主记录字段

字段名说明
改制订单号改制业务编号
原订单编号原订单编号
原订单流水号原订单流水号
原组件流水号原组件流水号
原基本件流水号原零件流水号
原工艺计划流水号原工艺计划流水号
原零件名称改制前零件名称
原零件图号改制前零件图号
原数量原数量
改制零件名称改制后零件名称
改制零件图号改制后零件图号
改制数量改制数量
改制来源类型原现自制订单、毛坯改制、非毛坯物料改制
是否毛坯1 是,0 否
物料编号使用物料编号
物料名称使用物料名称
物料流水号使用物料流水号
是否需要领料1 是,0 否
是否已生成领料单1 是,0 否
领料单号领料单编号
领料状态未生成、待出库、已出库、已取消
改制原因改制原因
改制要求改制要求
技术备注技术备注
精工期限精工完工期限
新基本件流水号改制任务生成的新零件流水号
新工艺计划流水号改制任务生成的新工艺计划流水号
发起人当前用户 ID
发起日期发起时间
状态改制订单状态
是否启用逻辑删除标识

7.2 改制订单状态

状态说明
待领料需要领料,领料单未出库
待工艺不需要领料或已出库,等待制定工艺
工艺完成工艺已保存,等待派工
待派工工艺完成且满足派工条件
加工中已派工或已开始加工
已完成改制任务完工
已取消改制订单取消

说明:

8. API 设计

项目请求继续使用:

this.CreateData(type, name, param, pageSize, pageCurrent)
this.ExecDatabase(Data)

8.1 技术中心查询可改制对象

var Data = this.CreateData('11', '技术中心_改制订单_可改制对象_查询', param, this.pageSize, this.pageCurrent)

8.2 技术中心发起改制订单

var Data = this.CreateData('12', '技术中心_改制订单_发起改制', param)

参数建议:

参数名说明
原订单流水号原订单流水号
原组件流水号原组件流水号
原基本件流水号原基本件流水号
原工艺计划流水号原工艺计划流水号
原订单编号原订单编号
原零件名称原零件名称
原零件图号原零件图号
改制零件名称改制零件名称
改制零件图号改制零件图号
改制数量改制数量
改制来源类型原现自制订单、毛坯改制、非毛坯物料改制
是否毛坯是否毛坯
物料流水号使用物料流水号
物料编号物料编号
物料名称物料名称
改制原因改制原因
改制要求改制要求
技术备注技术备注
精工期限精工期限
发起人当前用户 ID

后端处理结果:

8.3 改制记录查询

var Data = this.CreateData('11', '技术中心_改制订单_记录_查询', param, this.pageSize, this.pageCurrent)

8.4 改制订单详情

var Data = this.CreateData('11', '技术中心_改制订单_详情_查询', param)

8.5 取消改制订单

var Data = this.CreateData('12', '技术中心_改制订单_取消', param)

取消前后端需要校验:

9. 现有接口扩展

9.1 生产任务查询接口

现有接口:

精工车间_生成任务_查询数据

新增查询参数:

参数名说明
任务类型\_check是否按任务类型过滤
任务类型全部、正常、改制、报废补投
领料状态\_check是否按领料状态过滤
领料状态待出库、已出库、不需要领料

新增返回字段:

字段名说明
任务类型正常、改制、报废补投
是否改制1 是,0 否
改制订单号改制订单编号
改制来源类型原现自制订单、毛坯改制、非毛坯物料改制
是否需要领料1 是,0 否
领料状态未生成、待出库、已出库、已取消
领料单号领料单号
改制原因改制原因
改制要求改制要求

9.2 车间派工查询接口

现有接口:

精工车间_车间派工_查询

新增查询参数:

参数名说明
任务类型\_check是否按任务类型过滤
任务类型全部、正常、改制、报废补投

新增返回字段:

字段名说明
任务类型正常、改制、报废补投
是否改制1 是,0 否
改制订单号改制订单编号
改制来源类型改制来源类型
是否需要领料1 是,0 否
领料状态领料状态
领料单号领料单号

派工前端限制:

如果 是否改制 = 1 且 是否需要领料 = 1 且 领料状态 != 已出库,则不允许派工。

10. 前端交互调整

10.1 技术中心改制订单发起页面

查询条件:

表格列:

操作:

发起改制弹窗:

10.2 生产任务查询页面

新增筛选:

任务类型:全部 / 正常 / 改制 / 报废补投
领料状态:全部 / 不需要领料 / 待出库 / 已出库

新增列:

显示建议:

<el-tag type="warning" size="mini">改制</el-tag>
<el-tag type="danger" size="mini">待出库</el-tag>
<el-tag type="success" size="mini">已出库</el-tag>
<el-tag type="info" size="mini">不需要领料</el-tag>

10.3 车间派工页面

新增筛选:

任务类型:全部 / 正常 / 改制 / 报废补投

新增列:

派工按钮或派工操作前增加判断:

if (Number(row.是否改制) === 1 && Number(row.是否需要领料) === 1 && row.领料状态 !== '已出库') {
  this.$message.warning('改制订单物料未出库,不能派工')
  return
}

10.4 改制记录查询页面

查询条件:

表格列:

操作:

11. 菜单配置

建议后端菜单配置:

技术中心
  改制订单发起
  改制记录查询

组件路径:

TechnologyCenter/PartModificationOrder/index
TechnologyCenter/PartModificationRecord/index

精工车间不新增发起入口,只扩展现有页面:

SeikoWorkshop/ProductionTaskQuery/index
SeikoWorkshop/WorkshopAssignment/index

12. 实施顺序

建议按以下顺序实施:

1. 后端新增改制订单主记录表。 2. 后端新增技术中心发起改制订单接口。 3. 后端在发起接口中加入领料判断规则。 4. 后端按规则生成或不生成领料单。 5. 后端生成标准精工生产任务,并标记 任务类型 = 改制。 6. 扩展生产任务查询接口,返回改制和领料字段。 7. 扩展车间派工查询接口,返回改制和领料字段。 8. 前端新增技术中心改制订单发起页面。 9. 前端新增改制记录查询页面。 10. 前端修改生产任务查询页面,增加任务类型和领料状态显示。 11. 前端修改车间派工页面,增加改制任务显示和派工前领料状态校验。 12. 联调从技术中心发起、领料判断、仓库出库、精工工艺、车间派工、加工完工、记录查询的完整流程。

13. 风险点

13.1 领料判断风险

改制订单是否生成领料单,必须以后端判断为准。

前端可以显示和提示,但不能只依赖前端判断,避免绕过仓库出库流程。

13.2 派工前物料状态风险

如果改制订单需要仓库出库,但尚未出库,直接派工会导致车间无物料加工。

建议车间派工接口或派工保存接口再次校验:

需要领料且未出库,不允许派工。

13.3 原任务数据覆盖风险

改制订单必须生成新的生产任务和新的工艺计划流水号。

不能直接覆盖原自制订单或原零件工艺,否则会影响原订单追溯、工时和质量记录。

13.4 取消改制风险

已生成领料单、已出库、已派工或已加工的改制订单取消规则需要严格控制。

建议:

13.5 统计口径风险

改制订单进入精工生产任务后,会影响生产任务数量、工时统计、完工统计。

建议所有统计接口增加任务类型维度:

正常
改制
报废补投

14. 总结

本方案采用:

技术中心发起改制订单,精工车间承接生产,仓库按需出库,改制记录统一查询。

关键规则: