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

feat(pl): add create_date to PlPlan model and schemas

Co-authored-by: Cursor <cursoragent@cursor.com>
zlwu 3 месяцев назад
Родитель
Сommit
bb7f05ffda
2 измененных файлов с 9 добавлено и 0 удалено
  1. 1 0
      backend/app/models/pl_models.py
  2. 8 0
      backend/app/schemas/pl/plan.py

+ 1 - 0
backend/app/models/pl_models.py

@@ -245,6 +245,7 @@ class PlPlan(Base):
 
     # 编号信息
     plan_no = Column(String(32), nullable=False, unique=True, comment="计划订单编号 POYYYYMMDD###")
+    create_date = Column(Date, nullable=False, comment="创建日期")
     plan_date = Column(Date, nullable=False, comment="计划日期")
 
     # 基本信息

+ 8 - 0
backend/app/schemas/pl/plan.py

@@ -124,6 +124,9 @@ class PlanBase(BaseModel):
 
 
 class PlanCreate(PlanBase):
+    create_date: Optional[date] = Field(
+        default=None, alias="createDate", description="创建日期;缺省则服务端用当天"
+    )
     plan_date: date = Field(..., alias="planDate", description="计划日期")
     products: Optional[list[PlanProductCreate]] = Field(default=None, description="产品明细列表")
     model_config = {"populate_by_name": True}
@@ -144,6 +147,7 @@ class PlanTransportCreateBlock(BaseModel):
 
 
 class PlanUpdate(BaseModel):
+    create_date: Optional[date] = Field(default=None, alias="createDate")
     plan_date: Optional[date] = Field(default=None, alias="planDate")
     belongs_company: Optional[str] = Field(default=None, alias="belongsCompany")
     plan_type: Optional[str] = Field(default=None, alias="planType")
@@ -191,6 +195,7 @@ class HazardCertReadyBody(BaseModel):
 class PlanRead(PlanBase, PlanResourceSnapshotMixin):
     id: str
     plan_no: str = Field(alias="planNo")
+    create_date: date = Field(alias="createDate")
     plan_date: date = Field(alias="planDate")
     hazard_cert_ready: int = Field(default=0, alias="hazardCertReady", description="危化品证书是否已人工确认齐备")
     hazard_cert_ready_by: Optional[str] = Field(default=None, alias="hazardCertReadyBy", description="危化品证书确认人")
@@ -245,6 +250,9 @@ class PlanSubpackSlipTemplateSave(BaseModel):
 
 class CreateFromContractRequest(BaseModel):
     contract_id: str = Field(..., alias="contractId", description="CRM合同ID")
+    create_date: Optional[date] = Field(
+        default=None, alias="createDate", description="创建日期;缺省当天"
+    )
     plan_date: date = Field(..., alias="planDate", description="计划日期")
     follow_user_id: Optional[str] = Field(default=None, alias="followUserId", description="跟进人ID")
     follow_user_name: Optional[str] = Field(default=None, max_length=100, alias="followUserName", description="跟进人姓名")