|
@@ -60,7 +60,12 @@
|
|
|
<td style="text-align: left;">
|
|
|
<#if o.salesOrderItemList ??>
|
|
|
<#list o.salesOrderItemList as d>
|
|
|
- <span class="label label-success radius">${(d.itemProductName)!}(${(d.itemProductColor)!})*${(d.itemNum)!}</span>
|
|
|
+ <#if o.suSalesOrderItemList ??>主:</#if><span class="label label-success radius">${(d.itemProductName)!}(${(d.itemProductColor)!})*${(d.itemNum)!}</span><br>
|
|
|
+ </#list>
|
|
|
+ </#if>
|
|
|
+ <#if o.suSalesOrderItemList ??>
|
|
|
+ <#list o.suSalesOrderItemList as d>
|
|
|
+ 子:<span class="label label-success radius">${(d.itemProductName)!}(${(d.itemProductColor)!})*${(d.itemNum)!}</span><span style="display: none;">${(d.itemOrderId)!}</span><br>
|
|
|
</#list>
|
|
|
</#if>
|
|
|
</td>
|
|
@@ -177,68 +182,120 @@
|
|
|
// 捕获系统级的错误(比如因为空指针抛出的Exception)
|
|
|
re_print(order, tempObject.error_msg, isIE, isFirst);
|
|
|
} else {
|
|
|
- if (data && data.returnCode && data.returnCode != 200) {
|
|
|
- // 捕获业务级的操作(如订单的店铺没有绑定发货人信息)
|
|
|
- re_print(order, data.returnMsg.error, isIE, isFirst);
|
|
|
- } else {
|
|
|
- var res = $.parseJSON(data.returnMsg.json);
|
|
|
- if (data.resultMsg && res.Success) {
|
|
|
- var html = res.PrintTemplate;
|
|
|
- $("#temp-print-order").html(html);
|
|
|
- LODOP.PRINT_INIT('打印订单'+orderId);
|
|
|
- LODOP.SET_PRINT_PAGESIZE(0, 0, 0,"");
|
|
|
- LODOP.ADD_PRINT_HTM("0mm","0mm","100%","100%", $("#temp-print-order").html());
|
|
|
- if (isIE) {
|
|
|
- // IE类浏览器,直接打印
|
|
|
- if (LODOP.PRINT()) {
|
|
|
- startPrint(isIE, false);
|
|
|
- $(order.find("td")[0]).html("<span style='color: blue'>打印完成</span>");
|
|
|
- } else {
|
|
|
- // 向后台提交失败打印的信息
|
|
|
- order.attr("printState", "2");
|
|
|
- $(order.find("td")[0]).html("<span style='color: red;'>失败(打印机异常)</span>");
|
|
|
- }
|
|
|
- } else {
|
|
|
- // 非IE 浏览器
|
|
|
- if (isFirst) {
|
|
|
- // 如果是第一次打印,调用选择打印机接口
|
|
|
- LODOP.SELECT_PRINTER(true);
|
|
|
- // 注意,选择打印机后,需要更改打印机事件,否则无法执行回调
|
|
|
- var spans = $("span");
|
|
|
- for (var i = 0; i < spans.length; i++) {
|
|
|
- if ($(spans[i]).text() === "打印份数:") {
|
|
|
- $(spans[i]).parent().next()[0].onclick = function () {
|
|
|
- CLODOP.SelectBox.clickOK(false);
|
|
|
- selPrinter = CLODOP.SelectBox.selPrinter.value;
|
|
|
- $(order.find("td")[0]).html("<span style='color: blue'>打印完成</span>");
|
|
|
- startPrint(isIE, false);
|
|
|
- };
|
|
|
- }
|
|
|
- }
|
|
|
- } else {
|
|
|
- // 如果非第一次打印,则调用打印接口
|
|
|
- console.log(selPrinter);
|
|
|
- LODOP.SET_PRINTER_INDEX(selPrinter);
|
|
|
- if (LODOP.PRINT()) {
|
|
|
- startPrint(isIE, false);
|
|
|
- $(order.find("td")[0]).html("<span style='color: blue'>打印完成</span>");
|
|
|
- } else {
|
|
|
- // 向后台提交失败打印的信息
|
|
|
- order.attr("printState", "2");
|
|
|
- $(order.find("td")[0]).html("<span style='color: red;'>失败(打印机异常)</span>");
|
|
|
- }
|
|
|
- }
|
|
|
- }
|
|
|
+ if (data && data.returnCode && data.returnCode != 200) {
|
|
|
+ // 捕获业务级的操作(如订单的店铺没有绑定发货人信息)
|
|
|
+ re_print(order, data.returnMsg.error, isIE, isFirst);
|
|
|
} else {
|
|
|
- // 第三方接口错误
|
|
|
- re_print(order, res.Reason, isIE, isFirst);
|
|
|
+ var res = $.parseJSON(data.returnMsg.json);
|
|
|
+ if (data.resultMsg && res.Success) {
|
|
|
+ var html = res.PrintTemplate;
|
|
|
+ $("#temp-print-order").html(html);
|
|
|
+ LODOP.PRINT_INIT('打印订单' + orderId);
|
|
|
+ var SubPrintTemplates = res.SubPrintTemplates;
|
|
|
+ var SubOrders = res.SubOrders;
|
|
|
+ printing(isIE, isFirst,SubPrintTemplates,SubOrders,order);
|
|
|
+
|
|
|
+ }else {
|
|
|
+ // 第三方接口错误
|
|
|
+ re_print(order, res.Reason, isIE, isFirst);
|
|
|
+ }
|
|
|
}
|
|
|
- }
|
|
|
}
|
|
|
}
|
|
|
});
|
|
|
}
|
|
|
|
|
|
+
|
|
|
+ function printing(isIE, isFirst,SubPrintTemplates,SubOrders,order) {
|
|
|
+ LODOP.SET_PRINT_PAGESIZE(0, 0, 0, "");
|
|
|
+ LODOP.ADD_PRINT_HTM("0mm", "0mm", "100%", "100%", $("#temp-print-order").html());
|
|
|
+ if (isIE) {
|
|
|
+ // IE类浏览器,直接打印
|
|
|
+ if (LODOP.PRINT()) {
|
|
|
+ SubPrintTemplates.map(function (item,index,ary ) {
|
|
|
+ console.log(item);
|
|
|
+ $("#temp-print-order").html(item);
|
|
|
+ var subPrintTemplate = $("#temp-print-order").html();
|
|
|
+ var orderid = SubOrders[i];
|
|
|
+ /* (function(){
|
|
|
+ LODOP.ADD_PRINT_HTM("0mm", "0mm", "100%", "100%", subPrintTemplate);
|
|
|
+ LODOP.PRINT();
|
|
|
+ })();*/
|
|
|
+ suPrint(subPrintTemplate);
|
|
|
+ $(order.find("td")[0]).html("<span style='color: blue'>打印完成</span>");
|
|
|
+ startPrint(isIE, false);
|
|
|
+ });
|
|
|
+
|
|
|
+ } else {
|
|
|
+ order.attr("printState", "2");
|
|
|
+ $(order.find("td")[0]).html("<span style='color: red;'>失败(打印机异常)</span>");
|
|
|
+ }
|
|
|
+ } else {
|
|
|
+ // 非IE 浏览器
|
|
|
+ if (isFirst) {
|
|
|
+ // 如果是第一次打印,调用选择打印机接口
|
|
|
+ LODOP.SELECT_PRINTER(true);
|
|
|
+ // 注意,选择打印机后,需要更改打印机事件,否则无法执行回调
|
|
|
+ var spans = $("span");
|
|
|
+ for (var i = 0; i < spans.length; i++) {
|
|
|
+ if ($(spans[i]).text() === "打印份数:") {
|
|
|
+ $(spans[i]).parent().next()[0].onclick = function () {
|
|
|
+ CLODOP.SelectBox.clickOK(false);
|
|
|
+ selPrinter = CLODOP.SelectBox.selPrinter.value;
|
|
|
+ if(SubPrintTemplates != null){
|
|
|
+ SubPrintTemplates.map(function (item,index,ary ) {
|
|
|
+ console.log(item);
|
|
|
+ $("#temp-print-order").html(item);
|
|
|
+ var subPrintTemplate = $("#temp-print-order").html();
|
|
|
+ var orderid = SubOrders[i];
|
|
|
+ /* (function(){
|
|
|
+ LODOP.ADD_PRINT_HTM("0mm", "0mm", "100%", "100%", subPrintTemplate);
|
|
|
+ LODOP.PRINT();
|
|
|
+ })();*/
|
|
|
+ suPrint(subPrintTemplate);
|
|
|
+ });
|
|
|
+ }
|
|
|
+ $(order.find("td")[0]).html("<span style='color: blue'>打印完成</span>");
|
|
|
+ startPrint(isIE, false);
|
|
|
+ };
|
|
|
+ }
|
|
|
+ }
|
|
|
+ } else {
|
|
|
+ // 如果非第一次打印,则调用打印接口
|
|
|
+ LODOP.SET_PRINTER_INDEX(selPrinter);
|
|
|
+ if (LODOP.PRINT()) {
|
|
|
+ /*startPrint(isIE, false);*/
|
|
|
+ /*$(order.find("td")[0]).html("<span style='color: blue'>打印完成</span>");*/
|
|
|
+ if(SubPrintTemplates != null){
|
|
|
+ SubPrintTemplates.map(function (item,index,ary ) {
|
|
|
+ console.log(item);
|
|
|
+ $("#temp-print-order").html(item);
|
|
|
+ var subPrintTemplate = $("#temp-print-order").html();
|
|
|
+ var orderid = SubOrders[i];
|
|
|
+ /*(function(){
|
|
|
+ LODOP.ADD_PRINT_HTM("0mm", "0mm", "100%", "100%", subPrintTemplate);
|
|
|
+ LODOP.PRINT();
|
|
|
+ })();*/
|
|
|
+ suPrint(subPrintTemplate);
|
|
|
+ });
|
|
|
+ }
|
|
|
+ $(order.find("td")[0]).html("<span style='color: blue'>打印完成</span>");
|
|
|
+ startPrint(isIE, false);
|
|
|
+ } else {
|
|
|
+ // 向后台提交失败打印的信息
|
|
|
+ order.attr("printState", "2");
|
|
|
+ $(order.find("td")[0]).html("<span style='color: red;'>失败(打印机异常)</span>");
|
|
|
+ }
|
|
|
+ }
|
|
|
+ }
|
|
|
+ }
|
|
|
+ //子单打印调用
|
|
|
+ function suPrint(subPrintTemplate) {
|
|
|
+ console.log(subPrintTemplate);
|
|
|
+ LODOP.ADD_PRINT_HTM("0mm", "0mm", "100%", "100%", subPrintTemplate);
|
|
|
+ return LODOP.PRINT();
|
|
|
+ }
|
|
|
+
|
|
|
/* 打印失败后,重新打印 */
|
|
|
function re_print(order, errorMsg, isIE, isFirst) {
|
|
|
// 设置当前被打印的内容为“未打印”
|