业务库只能还原 4/12 个流水列且口径与聚水潭不一致(采购按单据日期、销售按订单发货日期, jst_salesOutboundInfo.qty 全为 0),调拨/盘点/加工/其它出入库无单据表,故以官方导出为准: - 新增本地表 daily_inventory_official(biz_date + warehouse 存期初/12 流水列/期末) - 新增解析与导入服务:xlsx 解析、仓库 ID 映射、「期初+流水=期末」恒等式校验 - GET /api/daily-inventory 支持 ?date= 指定业务日,官方值优先、缺失回退推算并返回来源标记 - 新增 POST /api/daily-inventory/official-import(xlsx 上传/JSON)与 GET /official 查询 - 导入后回写本地库存快照(官方期初→上一日期末、官方期末→当日期末),使推算也对齐 - 前端:业务日切换、官方/推算来源标记、导入弹窗、口径说明同步更新 - 仓库清单补入「简尚-横林三仓主仓」(聚水潭导出中存在) - 命令行导入:npm run inventory:import-official -- <日期> <xlsx>
217 lines
6.2 KiB
JavaScript
217 lines
6.2 KiB
JavaScript
/**
|
||
* 每日进销存 —— 仓库清单(纯映射,不含业务数值)
|
||
*
|
||
* 重要:本文件只描述「要统计哪些仓库」以及它们与聚水潭 wms_co_id 的对应关系,
|
||
* 不再硬编码任何业务数值。所有数字都从数据库取:
|
||
* - 期初数量:本地快照表 daily_inventory_snapshot 中「上一业务日」的期末结存
|
||
* - 期末数量:业务库实时库存 rpt.jst_inventoryInfo(按 wms_co_id 单仓)
|
||
* - 周转率 / 四级库存量:近 30 天发货 × 实时库存 × SKU 库龄,见 src/api/dailyInventory.js
|
||
* - 12 个流水列:4 列可从业务库单据表还原(采购进仓/采购退货/销售出仓/销售退货,
|
||
* 见 src/services/dailyInventoryFlows.js);其余 8 列缺调拨/盘点/加工/其它出入库单据表,
|
||
* 暂无法显示(前端渲染为「—」)
|
||
*
|
||
* 仓库清单随聚水潭仓库档案变化时需同步维护(来源表:rpt.jst_warehouseInfo)。
|
||
*/
|
||
|
||
/** 一级/二级菜单名 */
|
||
const DAILY_INVENTORY_LEVEL1 = '大货库存监控';
|
||
const DAILY_INVENTORY_LEVEL2 = '每日进销存';
|
||
|
||
/** 12 个流水列的中文表头与字段映射(顺序与聚水潭进销存导出一致) */
|
||
const FLOW_COLUMNS = [
|
||
{
|
||
"label": "加工进仓",
|
||
"field": "processIn"
|
||
},
|
||
{
|
||
"label": "采购退货",
|
||
"field": "purchaseReturn"
|
||
},
|
||
{
|
||
"label": "采购进仓",
|
||
"field": "purchaseIn"
|
||
},
|
||
{
|
||
"label": "其它进仓",
|
||
"field": "otherIn"
|
||
},
|
||
{
|
||
"label": "其它退货",
|
||
"field": "otherReturn"
|
||
},
|
||
{
|
||
"label": "销售出仓",
|
||
"field": "salesOut"
|
||
},
|
||
{
|
||
"label": "盘点",
|
||
"field": "stocktaking"
|
||
},
|
||
{
|
||
"label": "加工出仓",
|
||
"field": "processOut"
|
||
},
|
||
{
|
||
"label": "调拨出",
|
||
"field": "transferOut"
|
||
},
|
||
{
|
||
"label": "销售退货",
|
||
"field": "salesReturn"
|
||
},
|
||
{
|
||
"label": "调拨入",
|
||
"field": "transferIn"
|
||
},
|
||
{
|
||
"label": "其它出库",
|
||
"field": "otherOut"
|
||
}
|
||
];
|
||
|
||
/** 纳入口径的仓库(warehouse = 聚水潭主仓名,dbWarehouse = 库存监控表仓库名) */
|
||
const DAILY_INVENTORY_BASELINE = [
|
||
{
|
||
"warehouse": "简尚-崔桥工厂半成品包装项目仓主仓",
|
||
"dbWarehouse": "简尚-崔桥工厂半成品包装项目仓",
|
||
"wmsCoId": 15718196
|
||
},
|
||
{
|
||
"warehouse": "简尚-崔桥工厂仓主仓",
|
||
"dbWarehouse": "简尚-崔桥工厂仓",
|
||
"wmsCoId": 15038426
|
||
},
|
||
{
|
||
"warehouse": "简尚-山东青岗集仓主仓",
|
||
"dbWarehouse": "简尚-山东青岗集仓",
|
||
"wmsCoId": 15137523
|
||
},
|
||
{
|
||
"warehouse": "简尚-河南洛宁仓主仓",
|
||
"dbWarehouse": "简尚-河南洛宁仓",
|
||
"wmsCoId": 15539084
|
||
},
|
||
{
|
||
"warehouse": "简尚-新苏北仓主仓",
|
||
"dbWarehouse": "简尚-新苏北仓",
|
||
"wmsCoId": 15038347
|
||
},
|
||
{
|
||
"warehouse": "简尚-横林二仓主仓",
|
||
"dbWarehouse": "简尚-横林二仓",
|
||
"wmsCoId": 15033302
|
||
},
|
||
{
|
||
"warehouse": "简尚-横林三仓主仓",
|
||
"dbWarehouse": "简尚-横林三仓",
|
||
"wmsCoId": 15043561
|
||
},
|
||
{
|
||
"warehouse": "简尚-山东品牌仓主仓",
|
||
"dbWarehouse": "简尚-山东品牌仓",
|
||
"wmsCoId": 15182705
|
||
},
|
||
{
|
||
"warehouse": "简尚-睢宁仓主仓",
|
||
"dbWarehouse": "简尚-睢宁仓",
|
||
"wmsCoId": 15032603
|
||
},
|
||
{
|
||
"warehouse": "简尚-分销部专用仓主仓",
|
||
"dbWarehouse": "简尚-分销部专用仓",
|
||
"wmsCoId": 15045426
|
||
},
|
||
{
|
||
"warehouse": "简尚-新外贸仓主仓",
|
||
"dbWarehouse": "简尚-新外贸仓",
|
||
"wmsCoId": 15045308
|
||
},
|
||
{
|
||
"warehouse": "简尚-分销部睢宁专用仓主仓",
|
||
"dbWarehouse": "简尚-分销部睢宁专用仓",
|
||
"wmsCoId": 15051960
|
||
},
|
||
{
|
||
"warehouse": "京仓-山东青岗集京东自营仓主仓",
|
||
"dbWarehouse": "京仓-山东青岗集京东自营仓",
|
||
"wmsCoId": 15835935
|
||
},
|
||
{
|
||
"warehouse": "简尚-崔桥工厂品牌仓主仓",
|
||
"dbWarehouse": "简尚-崔桥工厂品牌仓",
|
||
"wmsCoId": 15870495
|
||
},
|
||
{
|
||
"warehouse": "简尚-分销部苏北专用仓主仓",
|
||
"dbWarehouse": "简尚-分销部苏北专用仓",
|
||
"wmsCoId": 15045325
|
||
},
|
||
{
|
||
"warehouse": "简尚-运营C横林二仓专用仓主仓",
|
||
"dbWarehouse": "简尚-运营C横林二仓专用仓",
|
||
"wmsCoId": 15301814
|
||
},
|
||
{
|
||
"warehouse": "简尚-济南外贸仓主仓",
|
||
"dbWarehouse": "简尚-济南外贸仓",
|
||
"wmsCoId": 15051888
|
||
},
|
||
{
|
||
"warehouse": "简尚-分销部崔桥专用仓主仓",
|
||
"dbWarehouse": "简尚-分销部崔桥专用仓",
|
||
"wmsCoId": 15404402
|
||
},
|
||
{
|
||
"warehouse": "简尚-运营C崔桥工厂仓专用仓主仓",
|
||
"dbWarehouse": "简尚-运营C崔桥工厂仓专用仓",
|
||
"wmsCoId": 15301815
|
||
},
|
||
{
|
||
"warehouse": "简尚-运营D苏北专用仓主仓",
|
||
"dbWarehouse": "简尚-运营D苏北专用仓",
|
||
"wmsCoId": 15406876
|
||
},
|
||
{
|
||
"warehouse": "简尚-运营C睢宁专用仓主仓",
|
||
"dbWarehouse": "简尚-运营C睢宁专用仓",
|
||
"wmsCoId": 15301813
|
||
},
|
||
{
|
||
"warehouse": "简尚-运营C新苏北专用仓主仓",
|
||
"dbWarehouse": "简尚-运营C新苏北专用仓",
|
||
"wmsCoId": 15301812
|
||
},
|
||
{
|
||
"warehouse": "简尚-运营D睢宁专用仓主仓",
|
||
"dbWarehouse": "简尚-运营D睢宁专用仓",
|
||
"wmsCoId": 15051907
|
||
},
|
||
{
|
||
"warehouse": "简尚-山东青岗集京东仓主仓",
|
||
"dbWarehouse": "简尚-山东青岗集京东仓",
|
||
"wmsCoId": 15406664
|
||
},
|
||
{
|
||
"warehouse": "简尚-运营D专用仓库主仓",
|
||
"dbWarehouse": "简尚-运营D专用仓库",
|
||
"wmsCoId": 15051915
|
||
},
|
||
{
|
||
"warehouse": "简尚-崔桥工厂京东仓主仓",
|
||
"dbWarehouse": "简尚-崔桥工厂京东仓",
|
||
"wmsCoId": 15045345
|
||
},
|
||
{
|
||
"warehouse": "京仓-横林二仓京东自营仓主仓",
|
||
"dbWarehouse": "京仓-横林二仓京东自营仓",
|
||
"wmsCoId": 15835893
|
||
}
|
||
];
|
||
|
||
module.exports = {
|
||
DAILY_INVENTORY_LEVEL1,
|
||
DAILY_INVENTORY_LEVEL2,
|
||
FLOW_COLUMNS,
|
||
DAILY_INVENTORY_BASELINE,
|
||
};
|