Просмотр исходного кода

feat(backend): require conclusion on production work order complete

Co-authored-by: Cursor <cursoragent@cursor.com>
zlwu 2 месяцев назад
Родитель
Сommit
29abc79699

+ 1 - 0
backend/app/schemas/production_work_order.py

@@ -28,6 +28,7 @@ class ProductionWorkOrderListQuery(BaseModel):
 
 
 class ProductionWorkOrderComplete(BaseModel):
+    conclusion: str = Field(..., description="生产结论 cg=成功 sb=失败,写入本次级联完成的任务")
     remark: Optional[str] = None
 
 

+ 23 - 0
backend/tests/test_production_cascade_complete.py

@@ -0,0 +1,23 @@
+"""生产完成任务/工单状态级联。"""
+import unittest
+from datetime import datetime
+from unittest.mock import MagicMock, patch
+
+from pydantic import ValidationError
+
+from app.schemas.production_work_order import ProductionWorkOrderComplete
+
+
+class TestProductionWorkOrderCompleteSchema(unittest.TestCase):
+    def test_requires_conclusion(self):
+        with self.assertRaises(ValidationError):
+            ProductionWorkOrderComplete()
+
+    def test_accepts_cg_and_remark(self):
+        body = ProductionWorkOrderComplete(conclusion="cg", remark="ok")
+        self.assertEqual(body.conclusion, "cg")
+        self.assertEqual(body.remark, "ok")
+
+
+if __name__ == "__main__":
+    unittest.main()