# 01-项目功能内容

## 一、模块目标

新增一套独立的设计报工任务模块，用于记录研发/设计类任务、人员报工、工时校验和工时报表。

该模块不参与现有生产报工体系，不上传 SAP，不影响现有工时校验、生产计划、装配中心、机加工、作业者工时等既有功能。

## 二、页面范围

### 1. 设计任务页面

功能：
- 查询过滤。
- 新建任务。
- 编辑任务。
- 删除任务。

查询条件：
- 任务ID。
- 项目号。
- 物料编码。
- 图号。
- 关联父件物料编码。
- 预计开始时间。
- 预计结束时间。
- 单据状态。

字段：
- DID：唯一序号，自增；新建时不可见，编辑时不可修改。
- 项目号：下拉选择，可搜索；具体 SAP 视图字段后续提供。
- 物料编码：下拉选择，可搜索，参考 `ProcessManagement/PartDrawlook/index.vue` 的物料编码过滤。
- 图号：文本框输入。
- 任务描述：文本框输入。
- 关联父件物料编码：下拉选择，可搜索，参考 `ProcessManagement/PartDrawlook/index.vue` 的物料编码过滤。
- 设计要求：文本框输入。
- 研发立项号：文本框输入。
- 研发目的：文本框输入。
- 指派对象：按二次派工口径支持多人员选择，参考 `PlanManagement/SelfMakePlando/index.vue`；落库保存人员ID列表和人员名称列表。
- 预计开始时间：日期选择器。
- 预计结束时间：日期选择器。
- 创建日期：系统创建时间；新建时不可见，编辑时不可修改。
- 单据状态：待开始、执行中、已结束、已完成。

删除约束：
- 如果任务已经存在设计报工记录，不能删除。
- 如果任务没有报工记录，允许删除。

### 2. 设计报工页面

字段显示和设计任务页面基本一致。

过滤条件和设计任务页面基本一致。

页面功能：
- 开始。
- 结束。
- 完成。

业务规则：
- 开始：生成设计报工记录，记录开始时间、操作人和任务状态。
- 结束：补写结束时间，计算本次设计工时。
- 完成：必须已有结束时间；未结束不能完成。
- 完成后代表设计任务完成，任务状态变更为已完成。
- 已完成任务不允许再次开始或结束。

### 3. 设计工时校验页面

参考页面：`ProductionManagement/WorkHoursCheck/index.vue`。

业务规则：
- 数据来源只取设计报工记录。
- 校验后只写入设计报工独立表或独立校验记录表。
- 不上传 SAP。
- 不调用现有生产工时校验的 SAP 上传逻辑。

### 4. 设计工时报表页面

参考页面：`ProductionManagement/Workhours/index.vue` 的作业者工时/工序工时展示方式。

业务规则：
- 数据来源只取设计报工记录。
- 可按人员、任务、项目号、物料编码、日期汇总设计工时。
- 不合并到现有作业者工时统计。

## 三、建议数据表

### 1. `MES_设计报工_任务`

用途：存储设计任务主数据。

建议字段：
- DID。
- 项目号。
- 物料编码。
- 图号。
- 任务描述。
- 关联父件物料编码。
- 设计要求。
- 研发立项号。
- 研发目的。
- 指派对象ID。
- 指派对象。
- 预计开始时间。
- 预计结束时间。
- 单据状态。
- 创建日期。
- 创建人。
- 最后编辑人。
- 最后编辑时间。
- 备注。

### 2. `MES_设计报工_记录`

用途：存储设计报工开始、结束和工时数据。

建议字段：
- RID。
- DID。
- 操作人ID。
- 操作人。
- 开始时间。
- 结束时间。
- 工时秒数。
- 报工状态。
- 已校验。
- 校验人。
- 校验时间。
- 创建时间。
- 备注。

### 3. `MES_设计报工_校验记录`

用途：保留校验动作流水，便于审计。

建议字段：
- VID。
- RID。
- DID。
- 校验前开始时间。
- 校验前结束时间。
- 校验后开始时间。
- 校验后结束时间。
- 校验后工时秒数。
- 校验人。
- 校验时间。
- 校验备注。

## 四、独立性要求

- 不写入现有生产报工表。
- 不写入现有生产工时校验表。
- 不上传 SAP。
- 不参与现有生产工时报表。
- 不影响装配中心、机加工、自制件排产、生产订单关闭逻辑。
- 本阶段不分配菜单权限，不新增菜单权限脚本，不写入菜单表和角色权限表。

## 五、文档归档

- 确认版 Word 文档已复制到本目录：`work/ProductionManagement/DesignReportTask/设计报工任务模块.docx`。
- 后续开发以本目录 README、01-06 文档和复制后的 Word 文档作为同一套需求依据。

## 六、本轮已实现功能

### 1. 数据库

已新增脚本：`db_backups/create_design_report_task_module_20260630.sql`。

已发布独立数据表：
- `dbo.MES_设计报工_任务`
- `dbo.MES_设计报工_记录`
- `dbo.MES_设计报工_校验记录`

已发布独立过程：
- `dbo.设计报工_物料查询`
- `dbo.设计报工_人员查询`
- `dbo.设计报工_项目查询`
- `dbo.设计报工_任务_查询`
- `dbo.设计报工_任务_新增`
- `dbo.设计报工_任务_编辑`
- `dbo.设计报工_任务_删除`
- `dbo.设计报工_任务_开始`
- `dbo.设计报工_任务_结束`
- `dbo.设计报工_任务_完成`
- `dbo.设计报工_记录_查询`
- `dbo.设计报工_工时校验_查询`
- `dbo.设计报工_工时校验_保存`
- `dbo.设计报工_工时校验_批量保存`
- `dbo.设计报工_工时报表_作业者工时_查询`

### 2. 前端页面

已新增页面：
- `src/views/ProductionManagement/DesignReportTask/Task/index.vue`：设计任务。
- `src/views/ProductionManagement/DesignReportTask/Report/index.vue`：设计报工。
- `src/views/ProductionManagement/DesignReportTask/Check/index.vue`：设计工时校验。
- `src/views/ProductionManagement/DesignReportTask/HoursReport/index.vue`：设计工时报表。

### 3. 菜单权限

本轮未分配菜单权限，未新增菜单脚本，未写入菜单表和角色权限表。
