gaoluyang
17 小时以前 e40a608ef9bf51db294d8eefada6a8e2e80cebca
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
{
  "biz": "为未绑定设备的工位补产能并重算时长",
  "target": "36.213.150.237:10000/mom-hm",
  "executedAt": "2026-10-15",
  "sql": "add-station-machine.sql",
  "problem": "工位 1/7/9 未绑定设备,导致其下 118 个生产任务 duration=0",
  "scheme": "复用空闲设备(用户确认)",
  "before": {
    "workstationMachineRows": 49,
    "zeroDurationTasks": 118
  },
  "bindings": [
    { "id": 100, "workstationId": 1, "workstation": "原料验收工作站", "machineryId": 130, "machinery": "虫草清洗机", "efficiency": 200, "conveyorBelt": 1 },
    { "id": 101, "workstationId": 7, "workstation": "人工选别工作站", "machineryId": 49, "machinery": "半自动捆扎机", "efficiency": 300, "conveyorBelt": 1 },
    { "id": 102, "workstationId": 9, "workstation": "冷却工作站", "machineryId": 48, "machinery": "全自动打包机", "efficiency": 600, "conveyorBelt": 1 }
  ],
  "after": {
    "workstationMachineRows": 52,
    "zeroDurationTasks": 0,
    "recomputed": {
      "ws1": { "tasks": 58, "min": 1, "max": 177 },
      "ws7": { "tasks": 53, "min": 1, "max": 111 },
      "ws9": { "tasks": 7, "min": 1, "max": 10 }
    },
    "totalTasks": 604
  },
  "recheck": {
    "全库复算不一致数": 0,
    "说明": "按 duration = CEIL(quantity / Σ(效率×max(皮带,1))) 在 SQL 内独立复算全库 604 条,与写入值零差异"
  },
  "notes": [
    "机器 48/49/130 绑定前均未被任何工位占用(游离设备),不影响既有 486 条时长。",
    "工位 7(人工选别) 所属车间8 无空闲设备,按方案跨车间借用车间3 的半自动捆扎机。",
    "mes_dv_machinery.workstation_id 列全库为 NULL,非绑定来源;绑定唯一来源是 mes_md_workstation_machine,故只写该表。"
  ],
  "rollback": "DELETE FROM mes_md_workstation_machine WHERE id IN (100,101,102); UPDATE mes_pro_task SET duration=0 WHERE deleted=0 AND workstation_id IN (1,7,9);"
}