# 打印次数增量 API 该接口用于为支持 `print_count` 字段的业务对象递增打印次数。目前支持: - `printing_order` → `printing.models.PrintingOrder` - `plate_order` → `printing.models.PlateOrder` 未来可以在后端枚举中扩展更多对象类型(例如采购单等)。 ## Endpoint - **Method**: `POST` - **Path**: `/api/v1/print-count/delta/` - **Auth**: 需要登录(仅校验是否认证) - **Content-Type**: `application/json` ## 请求参数 | 字段 | 类型 | 必填 | 说明 | |------|------|------|------| | `object_type` | string | 是 | 对象类型,`printing_order` 或 `plate_order` | | `object_id` | integer | 是 | 目标对象的 ID | | `delta` | integer/string | 否 | 增量值,默认 1;若传入小于 1 或无法转换为整数,则自动回退为 1 | ## 响应 ```json { "object_type": "printing_order", "object_id": 12, "delta": 3, "print_count": 5 } ``` 字段说明: - `delta`: 实际生效的增量(若请求非法会改为 1) - `print_count`: 更新后的打印次数 ## 错误响应 | HTTP 状态码 | 场景 | 响应 | |-------------|------|------| | 400 | `object_type` 不受支持 | `{"detail": "不支持的对象类型"}` | | 404 | `object_id` 与 `object_type` 匹配的对象不存在 | `{"detail": "指定对象不存在"}` | | 401 | 未认证访问 | DRF 默认未认证响应 | ## 扩展说明 - `delta` 仅做加法,不提供回退逻辑。 - 所有增量操作在数据库事务中执行,可避免并发更新冲突。 - 新的对象类型只需在后端的 `PrintCountObjectType` 枚举和映射表中补充即可。