1
0
forked from erp-dev/erp

feat: refactor flower.utils to sub package, added some sync api in package, added plate_order sync result model but relation of plate_order was not query (do it next step)

This commit is contained in:
2025-12-17 17:37:39 +08:00
parent 51fad953c3
commit 98d797221a
19 changed files with 1422 additions and 403 deletions

View File

@@ -0,0 +1,167 @@
from __future__ import annotations
from typing import Any, Dict
# ------------------------------------------------------------------------------
# 明道云worksheetId 常量
# ------------------------------------------------------------------------------
MDY_WORKSHEET_ID_PRODUCT = "spmx"
MDY_WORKSHEET_ID_CUSTOMER = "quanbu"
MDY_WORKSHEET_ID_FABRIC = "668ba100fb551c850214067d"
MDY_WORKSHEET_ID_PLATE_ORDER = "668ba100fb551c8502140660" # 开版数据表
# 开版表关联数据 worksheetId用于 Relation 关联查询)
MDY_WORKSHEET_ID_PLATE_ORDER_DRAWING = "668ba100fb551c850214066b" # 画图
MDY_WORKSHEET_ID_PLATE_ORDER_COLORING = "668ba100fb551c850214066c" # 调色
MDY_WORKSHEET_ID_PLATE_ORDER_PATTERN_SET = "668ba100fb551c8502140681" # 套纸样
MDY_WORKSHEET_ID_PLATE_ORDER_MODIFY_DRAWING = "66e2eb5a3c1a53053f6d234d" # 改图
MDY_WORKSHEET_ID_PLATE_ORDER_COLOR_SCHEME = "672adc61e72ce9924f763a0b" # 配色
MDY_WORKSHEET_ID_PLATE_ORDER_IMAGE_DEVELOPMENT = "66e2eee45d7e45f9c5ae41b4" # 照图开发
mdy_table_map = {
"product": MDY_WORKSHEET_ID_PRODUCT,
"customer": MDY_WORKSHEET_ID_CUSTOMER,
"plate_order": MDY_WORKSHEET_ID_PLATE_ORDER,
}
# 开版表关联数据表映射(后续做跨表查询时使用)
plate_order_related_worksheet_map = {
"drawing": MDY_WORKSHEET_ID_PLATE_ORDER_DRAWING,
"coloring": MDY_WORKSHEET_ID_PLATE_ORDER_COLORING,
"pattern_set": MDY_WORKSHEET_ID_PLATE_ORDER_PATTERN_SET,
"modify_drawing": MDY_WORKSHEET_ID_PLATE_ORDER_MODIFY_DRAWING,
"color_scheme": MDY_WORKSHEET_ID_PLATE_ORDER_COLOR_SCHEME,
"image_development": MDY_WORKSHEET_ID_PLATE_ORDER_IMAGE_DEVELOPMENT,
}
# 同上(中文 key便于排查/对照)
plate_order_related_worksheet_map_cn = {
"画图": MDY_WORKSHEET_ID_PLATE_ORDER_DRAWING,
"调色": MDY_WORKSHEET_ID_PLATE_ORDER_COLORING,
"套纸样": MDY_WORKSHEET_ID_PLATE_ORDER_PATTERN_SET,
"改图": MDY_WORKSHEET_ID_PLATE_ORDER_MODIFY_DRAWING,
"配色": MDY_WORKSHEET_ID_PLATE_ORDER_COLOR_SCHEME,
"照图开发": MDY_WORKSHEET_ID_PLATE_ORDER_IMAGE_DEVELOPMENT,
}
# ------------------------------------------------------------------------------
# 明道云:字段映射(内部字段名 -> controlId
# ------------------------------------------------------------------------------
product_type_map = {
"name": "668caa5eb80969563ecaee7d",
"pieces": "689c5aa37c175367b29fcb87",
"color": "66ed3b9ae01d5599bdb45f6d",
"uid": "668caa5eb80969563ecaee7c",
"unit": "668e2ee2ca758c8cc5d0dc1d",
"segment_size": "668e2194790c0e04058b4f3c",
"width": "668e2194790c0e04058b4f3c",
"detail_str": "668caa5eb80969563ecaee7e",
"created_at": "ctime",
"rowid": "rowid",
}
customer_type_map = {
"name": "62d52f4b8d2972284492dcf9",
"area": "62d52f4b8d2972284492dd09",
"created_at": "ctime",
"rowid": "rowid",
"uid": "668bb9370207cf7520fe551e",
}
fabric_type_map = {
"name": "62d52f4b8d2972284492de61",
}
# ------------------------------------------------------------------------------
# 明道云开版数据表worksheetId: 668ba100fb551c8502140660
# 字段说明controlId -> 元信息)。按需求保留为 dict暂不用于拉取请求。
# ------------------------------------------------------------------------------
plate_order_field_definitions: Dict[str, Dict[str, Any]] = {
# 成员 / 人员
"62d8fffb625ac34fa91299c3": {"name": "调色", "type": "Collaborator"},
# 关联记录Relation—— 展现 rowid + name + link
"62d52f4b8d2972284492dd28": {"name": "打版面料", "type": "Relation"},
"62d52f4b8d2972284492dd14": {"name": "客户", "type": "Relation"},
# 下拉/文本/数值/日期
"62d52f4b8d2972284492dd15": {"name": "做货方式", "type": "Dropdown"},
"62d52f4b8d2972284492dd0e": {"name": "设计编号", "type": "AutoNumber"},
"62d91d0e130624d31368bd16": {"name": "开版方式", "type": "Dropdown"},
"64a64bc4402bb5226ee34b3c": {"name": "等级", "type": "Rating"},
"660b79da4125de62cd904b39": {"name": "布料", "type": "Dropdown"},
"62db8e78510fb7962439b19c": {"name": "调色设计师", "type": "Text"},
"62d52f4b8d2972284492dd10": {"name": "开发进程", "type": "Dropdown"},
"62d52f4b8d2972284492dd1e": {"name": "是否套唛架", "type": "Dropdown"},
"62d52f4b8d2972284492dd2c": {"name": "款号名称", "type": "Text"},
"62d52f4b8d2972284492dd1d": {"name": "审批结果", "type": "Dropdown"},
"62d52f4b8d2972284492dd12": {"name": "下版时间", "type": "DateTime"},
"62d52f4b8d2972284492dd18": {"name": "复版原因", "type": "Dropdown"},
"62d52f4b8d2972284492dd0f": {"name": "起版情况", "type": "Dropdown"},
"62d52f4b8d2972284492dd19": {"name": "客户要求米样米数", "type": "Number"},
"62d52f4b8d2972284492dd11": {"name": "紧急程度", "type": "Dropdown"},
"660b75c3422f028085086b3c": {"name": "幅宽", "type": "Dropdown"},
"62d52f4b8d2972284492dd13": {"name": "要求完成时间", "type": "Date"},
"62f72a26d73f8581fbe7a488": {"name": "难度评级", "type": "Dropdown"},
# 附件Attachment—— 展现文件名 + 下载链接
"62d52f4b8d2972284492dd27": {"name": "开版图", "type": "Attachment"},
# 评级/开关/组合字段
"6451f4ad25766313eb8cb057": {"name": "日期", "type": "DateTime"},
"66c2ebc8666ad6264b709fa1": {"name": "画图评级", "type": "Dropdown"},
"66c2ebc8666ad6264b709fa2": {"name": "调色评级", "type": "Dropdown"},
"66c2ebc8666ad6264b709fa3": {"name": "套样评级", "type": "Dropdown"},
"6718ac791f08f8ec31257ebc": {"name": "记录id文本组合", "type": "Concatenate"},
"67f4d7d61c5f650e952fcee9": {"name": "客户名称", "type": "Lookup"},
# “有这个字段,但本条记录可能为空”的 Relation占位[]
"62d52f4b8d2972284492dd2d": {"name": "套纸样", "type": "Relation"},
"62d52f4b8d2972284492dd21": {"name": "画图", "type": "Relation"},
"62d52f4b8d2972284492dd22": {"name": "调色(关联)", "type": "Relation"},
"62d52f4b8d2972284492dd2a": {"name": "套纸样(关联)", "type": "Relation"},
"66e2ebb7da66655f355bf708": {"name": "改图(关联)", "type": "Relation"},
"66e2efb0da66655f355bf964": {"name": "找图开发", "type": "Relation"},
"672adc9b156abb9a08ab2a60": {"name": "配色", "type": "Relation"},
}
# 同步代码风格:内部字段名 -> controlId后续 pick / parse 时会用到)
plate_order_type_map = {
"colorist": "62d8fffb625ac34fa91299c3",
"fabric_relation": "62d52f4b8d2972284492dd28",
"customer_relation": "62d52f4b8d2972284492dd14",
"production_method": "62d52f4b8d2972284492dd15",
"design_no": "62d52f4b8d2972284492dd0e",
"plate_method": "62d91d0e130624d31368bd16",
"level_rating": "64a64bc4402bb5226ee34b3c",
"fabric_source": "660b79da4125de62cd904b39",
"color_designer": "62db8e78510fb7962439b19c",
"dev_progress": "62d52f4b8d2972284492dd10",
"need_marker_frame": "62d52f4b8d2972284492dd1e",
"style_name": "62d52f4b8d2972284492dd2c",
"approval_result": "62d52f4b8d2972284492dd1d",
"plate_time": "62d52f4b8d2972284492dd12",
"rework_reason": "62d52f4b8d2972284492dd18",
"start_plate_status": "62d52f4b8d2972284492dd0f",
"sample_meters": "62d52f4b8d2972284492dd19", # 对应样品米数(宇问云)
"urgency": "62d52f4b8d2972284492dd11",
"width": "660b75c3422f028085086b3c",
"required_finish_date": "62d52f4b8d2972284492dd13",
"difficulty_level": "62f72a26d73f8581fbe7a488",
"plate_images": "62d52f4b8d2972284492dd27",
"record_datetime": "6451f4ad25766313eb8cb057",
"drawing_rating": "66c2ebc8666ad6264b709fa1",
"color_rating": "66c2ebc8666ad6264b709fa2",
"pattern_fit_rating": "66c2ebc8666ad6264b709fa3",
"record_id": "6718ac791f08f8ec31257ebc",
"customer_name": "67f4d7d61c5f650e952fcee9",
# relations可能为空
"pattern_set": "62d52f4b8d2972284492dd2d",
"drawing_relation": "62d52f4b8d2972284492dd21",
"color_relation": "62d52f4b8d2972284492dd22",
"pattern_set_relation": "62d52f4b8d2972284492dd2a",
"modify_drawing_relation": "66e2ebb7da66655f355bf708",
"image_development_relation": "66e2efb0da66655f355bf964",
"color_scheme_relation": "672adc9b156abb9a08ab2a60",
# 系统字段
"created_at": "ctime",
"rowid": "rowid",
}