单据打印

打印触发控制器入口文件

app\wms\controller\admin\receipts\print.php

核心函数:

html风格与控件风格区别只是展示方式不同,html风格是抛出php数据数组展示,控件风格抛出json数据给打印控件解析展示

  1. toPrintStock html风格 备货单打印函数
  2. toPrintMerge html风格 发货单打印函数
  3. toPrintStockNew 控件风格 备货单打印函数
  4. toPrintMergeNew 控件风格 发货单打印函数
  5. toPrintExpre 快递单打印函数

打印所需原始数据封装类

app\wms\lib\delivery\print.php

核心函数:

getPrintDatas 获取打印单据原始数据

核心处理内容:

  1. 打印有效性检查(参数、订单、发货单状态等)
  2. 发货单排序、打印批次生成处理
  3. 原始数据的组织
  4. 打印模式标记(单品打印、多品打印、还是普通打印)

原始发货单数据有了,不同的单据需要格式化不同的展示内容

  1. app\wms\lib\delivery\print\stock.php 备货单数据格式化类
  2. app\wms\lib\delivery\print\delivery.php html风格发货单数据格式化类
  3. app\wms\lib\delivery\print\newdelivery.php 控件风格发货单数据格式化类
  4. 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,发货单已打印


沪ICP备05002918号

© 2003-2017 ShopEx,Inc.All rights reserved.