原稿留底/待验收_组175-186_20261006/raw_material: str = Column(...) 混写硬伤。
第三批与前两批完全同病同源,而且这批次冲突更重:端点级重叠从第二批的 6 条上升到 13 条(翻倍)。
另外这批次新增的 D 上链工具是真"坑"——6 个文件全是 print 假上链,没有任何真实网络调用,注释自己都写着「对接链节点提交接口」但没写。
| 依赖模块 | 用途 | 本工程 | 备注 |
|---|---|---|---|
db_service | SQLAlchemy Session 提供者 | 缺失 | 前两批已缺 |
db_model | ORM Base 与全部模型 | 缺失 | 前两批已缺 |
auth_service | JWT 鉴权 | 缺失 | 前两批已缺 |
agent_global_monitor | 全局监督 Agent | 缺失 | 前两批已缺 |
live_community_master_api | 模块开关 | 缺失 | 前两批已缺 |
chain_hash_util | 上链工具(第三批新增依赖) | 缺失 | 181~186 的 B 全部 import 它 |
chain_hash_util.get_file_sha256 / submit_hash_to_chain —— 本工程 连这个模块都没有。放进 routes/ 同样 ImportError,整条 8979 后端起不来。B 侧 from db_model import ... 共引用 47 个类,全库 grep 比对 47/47 零命中。
| 组 | 模块 | 引用模型类 |
|---|---|---|
| 175 | 种子种苗商城 | SeedGoods, SeedOrder, SeedBatchReport, SeedCategory |
| 176 | 农机飞防租赁 | MachineService, MachineOrder, MachineProvider, MachineCategory |
| 177 | 劳务用工 | LaborJob, LaborWorker, LaborApply, LaborContract |
| 178 | 代加工服务 | ProcessService, ProcessFactory, ProcessOrder, ProcessBatchRecord |
| 179 | 仓储物流 | Warehouse, StorageOrder, LogisticsOrder, StockRecord, LogisticsTrack |
| 180 | 质检检测 | QcItem, QcApply, QcReport, QcReportFile |
| 181 | 集采招标 | BidProject, BidTender, BidCompany, BidResult |
| 182 | 大宗交易 | BulkOffer, BulkWant, BulkTradeOrder, BulkSettleRecord |
| 183 | 资讯行情 | IndustryNews, HerbPriceRecord, NewsCategory |
| 184 | 直播带货 | LiveRoom, LiveGoods, LiveOrder, LiveRecord |
| 185 | 行业社群 | CommunityPost, CommunityReply, CommunityGroup |
| 186 | 气象种植监测 | PlantBase, WeatherAlert, SensorRecord, SensorDevice |
declarative_base(),但全工程无 engine / SessionLocal / create_all() —— 即便 import 成功也是空转,建不了表。| 冲突前缀 | 本工程承载文件 | 组 | 重叠 |
|---|---|---|---|
| /api/admin/bid | routes/admin_bid.py | 181 | 2 条 |
| /api/admin/machine | routes/admin_machine_service.py | 176 | 3 条 |
| /api/admin/labor | routes/admin_labor.py | 177 | 2 条 |
| /api/admin/process | routes/admin_process.py | 178 | 2 条 |
| /api/admin/storage | routes/admin_storage_logistics.py | 179 | 2 条 |
| /api/mobile/machine | routes/admin_machine_service.py | 176 | 1 条 |
| /api/mobile/labor | routes/admin_labor.py | 177 | 1 条 |
| /api/mobile/bid /api/mobile/process /api/mobile/storage | 同上三个文件的 mobile 前缀 | 181/178/179 | 0 条(仅前缀同名) |
| 方法 | 端点 | 新稿 | 本工程 |
|---|---|---|---|
| GET | /api/admin/bid/project/list | 撞 | 有·200 |
| GET | /api/admin/bid/stat | 撞 | 有·200 |
| GET | /api/admin/machine/stat | 撞 | 有·200 |
| GET | /api/admin/machine/service/list | 撞 | 有 |
| POST | /api/admin/machine/order/audit | 撞 | 有 |
| GET | /api/mobile/machine/service/list | 撞 | 有 |
| GET | /api/admin/labor/stat | 撞 | 有·200 |
| GET | /api/admin/labor/job/list | 撞 | 有 |
| GET | /api/mobile/labor/job/list | 撞 | 有 |
| GET | /api/admin/process/stat | 撞 | 有·200 |
| POST | /api/admin/process/order/audit | 撞 | 有 |
| GET | /api/admin/storage/stat | 撞 | 有·200 |
| GET | /api/admin/storage/warehouse/list | 撞 | 有 |
/api/admin/{bid,labor,machine,process,storage}/stat 全部 实测 HTTP 200(已有真实实现)。直接 include 新稿 = 覆盖或双注册。/api/admin|mobile/seedshop(种苗商城) /api/admin|mobile/qc(质检) /api/admin|mobile/bulk(大宗) /api/admin|mobile/news(资讯) /api/admin|mobile/live(直播) /api/admin|mobile/community(社群) /api/admin|mobile/weather(气象)
但要留意:seedshop ↔ 本工程已有 seed / seed_shop;qc ↔ 已有 quality;bulk ↔ 已有 bulk_trade / bulk_trade_v2;news ↔ 已有 info_news / market_quote;live ↔ 已有 live_trace;weather ↔ 已有 plant_weather / agri_warn。前缀不同但功能高度重叠,将来接要合并而非并存。
真正干净的只有 2 个:/api/admin|mobile/community(行业社群论坛)—— 本工程确实没有。
| 文件 | 真实网络调用 | 仅 print | 实质 |
|---|---|---|---|
| 181_chain_bid_hash.py | 无 | 是 | 假上链 |
| 182_chain_bulk_hash.py | 无 | 是 | 假上链 |
| 183_chain_news_hash.py | 无 | 是 | 假上链 |
| 184_chain_live_hash.py | 无 | 是 | 假上链 |
| 185_chain_community_hash.py | 无 | 是 | 假上链 |
| 186_chain_weather_hash.py | 无 | 是 | 假上链 |
print(f"【...存证上链】{record}") 然后返回一个假 tx_id,没有任何 HTTP 请求、没有 web3、没有链节点地址。源码里的注释自己都承认「# 对接链节点提交接口」——但没对接。
chain_hash / prev_hash 前块哈希串联 + write_operate_log 操作日志。新稿这套 D 工具连本工程的"模拟上链"水平都没达到。
| 检查项 | 新稿 A 页(12/12) | 本工程标准 |
|---|---|---|
| 数据渲染 | 仅 console.log fetch 到数据不渲染 | B2 真数据适配层 |
| 底部导航 | 12/12 全是死 div,无 href、无跳转 | 可跳转 + 全局一致 |
| Tab 切换 | 12/12 无 onclick,点了没反应 | 真切换 + 真筛选 |
| 筛选 | 12/12 无 | window.onFilterTag |
| 埋点 | 本批无 visitTracker(比第二批还少) | write_operate_log |
A 页视觉模板统一、内容填充饱满(两批都是绿系卡片风),作视觉参考可用;但交互层完全未实现。
| # | 项目 | 建议 | 理由 |
|---|---|---|---|
| 1 | 整包 42 文件 | 继续隔离·不并入 | 依赖 6 缺 + 模型 47 缺 + 前缀 10 冲突 |
| 2 | C 12 个模型 | 作字段参考 | 字段设计规范,可指导本项目 JSON 结构 |
| 3 | D 6 个上链工具 | 作废·不采用 | 假上链;本工程上链机制更完整 |
| 4 | 「真新增」能力 | 仅 community 社群论坛 | 本工程确无;其余均同主题异名 |
| 5 | 10 个硬冲突前缀 | 禁 include | 13 条端点重叠;将来要用必须换前缀 |
| 6 | A 页视觉 | 认可即重制 | 按本工程 B2 标准重做 |