Files
KCGL/inventory-backend/app
yueli 3e131fa584 feat(inbound): 入库提交时校验库位必须存在
此前入库只校验库位「非空字符串」,任意值都能写进 stock_buy.warehouse_location —
存量数据里那 5 条裸数字('1' '5' '7' '14' '22')就是这么来的。

新增 app/utils/warehouse_location.py:
- location_error(location)      —— 库位必须存在于 sys_warehouse_location
- usable_locations(company, xs) —— 批量筛出「存在且本公司可见」的库位
- material_company(base_id)     —— 取物料所属公司

★ 只校验存在,**不校验归属公司** —— 跨公司使用库位不做限制(业务上可能共用)。
  若日后要收紧,location_error 里传一次 material_company(base_id) 即可。

空值仍由各接口原有的「必填」校验负责,两件事语义分开、互不干扰。
三个接口(buy / product / semi 的 /submit)各加一行调用。
2026-09-29 13:33:35 +08:00
..
2026-02-09 11:29:37 +08:00