# 单据打印
# 打印触发控制器入口文件
app\wms\controller\admin\receipts\print.php
# 核心函数:
# html风格与控件风格区别只是展示方式不同,html风格是抛出php数据数组展示,控件风格抛出json数据给打印控件解析展示
- toPrintStock html风格 备货单打印函数
- toPrintMerge html风格 发货单打印函数
- toPrintStockNew 控件风格 备货单打印函数
- toPrintMergeNew 控件风格 发货单打印函数
- toPrintExpre 快递单打印函数
# 打印所需原始数据封装类
app\wms\lib\delivery\print.php
# 核心函数:
# getPrintDatas 获取打印单据原始数据
# 核心处理内容:
- 打印有效性检查(参数、订单、发货单状态等)
- 发货单排序、打印批次生成处理
- 原始数据的组织
- 打印模式标记(单品打印、多品打印、还是普通打印)
# 原始发货单数据有了,不同的单据需要格式化不同的展示内容
- app\wms\lib\delivery\print\stock.php 备货单数据格式化类
- app\wms\lib\delivery\print\delivery.php html风格发货单数据格式化类
- app\wms\lib\delivery\print\newdelivery.php 控件风格发货单数据格式化类
- app\wms\lib\delivery\print\ship.php 快递单数据格式化类
# 核心函数:
# format 几个单据实现的格式化函数名一样
# 数据更新逻辑:
备货单打印,sdb_wms_delivery表字段print_status | 1(按位或)
发货单打印,字段print_status | 2
快递单打印,字段print_status | 4
所以如果一个发货单三个单子都打印了,字段print_status的值是7
根据系统-发货配置中的设置识别到底要打印哪几个单据,都打印了,process_status更新为1,发货单已打印