b8d18c71d8ac10cd66396b7afb01b51e51da823b
修复三处跨公司数据污染: 1. /draft/start-new 原本执行 StocktakeDraft.query.all() 后逐条 delete, 任一库管点「开启新盘点」就会物理删除全公司所有人的盘点进度。 改为只签发新 session_id,历史数据原样保留;清理走 /draft/clear, 且强制要求 session_id(不传直接 400),杜绝误清整表。 2. get_stock_info() 全局按 barcode/sku 匹配三张库存表,不同公司的同码 物料互相串货。新增 company_name 参数,精确与模糊两段查询均经由 base 关系按 material_base.company_name 过滤;草稿去重键同步改为 (uuid, session_id, company_name)。 3. 盘点相关读写接口统一施加公司隔离:/draft/list、/draft/add、/draft/clear、 /variance-report、/draft/merged-list、/stocktake/all-items、 /stocktake/generate-missing、/stocktake/update-quantity、/export-stocktake、 /adjust、/scan。 顺带修复 /export-stocktake:差异与相符两张 Sheet 原本不按 session 过滤, 过去依赖 start-new 清空整表才恰好等价于当前会话,现显式按 session_id 过滤, 否则历史会话会被一并导出。 新增接口: - GET /stocktake/companies 盘点页公司下拉(普通用户只返回本公司, 避免复用 /inbound/buy/options 时因缺 inbound_buy 权限而 403) - GET /draft/active-session 该公司最近一次活跃会话,供多设备加入
Description
No description provided
Languages
Python
70.2%
CSS
14.9%
Vue
7.6%
HTML
4.2%
TypeScript
3.1%