Index: ssts-web/src/main/webapp/disinfectsystem/print/print.js =================================================================== diff -u -r24682 -r24758 --- ssts-web/src/main/webapp/disinfectsystem/print/print.js (.../print.js) (revision 24682) +++ ssts-web/src/main/webapp/disinfectsystem/print/print.js (.../print.js) (revision 24758) @@ -539,6 +539,225 @@ } } +/** + * 根据回收明细打印配置进行打印(模式根据打印发货计划) + */ +function print3(printSummaryObj){ + doGetLodop(); + + var myObj = printConfig[formTypeOfPrinted]; + if(isUndefinedOrNullOrEmpty(myObj)){ + if(!isUndefinedOrNull(printSummaryObj.printConfigObj_default)){ + myObj = printSummaryObj.printConfigObj_default; + } + } + if(isUndefinedOrNullOrEmpty(myObj)){ + var msg = '未找到('+formTypeOfPrinted+')的打印配置'; + showResult(msg); + return; + } + // 自定义打印 + if (!isUndefinedOrNullOrEmpty(myObj.customPrint)) { + myObj.customPrint(printSummaryObj); + return; + } + // 打印表头的内容 + if (!isObjEmpty(myObj.headerFooter)){ + // 设置为页眉页脚模式 + LODOP.SET_PRINT_STYLE("ItemType",1); + + for (var i=0;i"; + + // 如果需要表头在每页重复打印,则增加thead标签 + if (myObj.goodsTable.headRepeat){ + tableHtml += ""; + } + + tableHtml = appendTableRowString(tableHtml, myObj.goodsTable.rowHeight , myObj.goodsTable.fontSize); + + for (var i=0;i" + item.header + ""; + } + tableHtml += ""; + + if (myObj.goodsTable.headRepeat){ + tableHtml += ""; + } + + // 打印物品内容行 + var columnCount = myObj.goodsTable.columns.length; + var page = printSummaryObj.pages[printSummaryObj.pageIndex]; + var rows = page.rows; + if(rows != null && rows.length > 0){ + for ( var k = 0; k < rows.length; k++) { + var row = rows[k]; + tableHtml = appendTableRowString(tableHtml, myObj.goodsTable.rowHeight , myObj.goodsTable.fontSize); + for (var i=0;i" + value + " "; + } + tableHtml += ""; + } + if(!myObj.goodsTable.donotPrintTotal && page.pageNumber == printSummaryObj.pageAmount){ + // 打印合计信息 + tableHtml = appendTableRowString(tableHtml, myObj.goodsTable.rowHeight , myObj.goodsTable.fontSize); + var style = getTableTdStyle(myObj.goodsTable,0); + tableHtml += "合计"; + for (var i=columnCount-1;i= 0 || indexName == "amount"){ + value = printSummaryObj.totalGoodsAmount; + } + else if (indexName == "applyAmount"){ + value = printSummaryObj.totalApplyAmount; + } + else if (indexName == "recyclingAmount"){ + value = printSummaryObj.totalRecyclingAmount; + } + else if(indexName == "rowPrice" || indexName == "totalPrice"){ + value = formatMoney(printSummaryObj.totalPrice); + } + + tableHtml += "" + value + " "; + } + tableHtml += ""; + } + } + + //打印表格表尾的统计信息 + if(myObj.goodsTable.footer){ + tableHtml += "" + var rowCount = myObj.goodsTable.footer.length; + for(var row = 0; row < rowCount;++row){ + var rowObj = myObj.goodsTable.footer[row]; + tableHtml = appendTableRowString(tableHtml, myObj.goodsTable.rowHeight , myObj.goodsTable.fontSize); + var colIndex = 0; + for(var col=0;col"; + } + tableHtml += ""; + } + tableHtml += ""; + } + + if(myObj.footer){ + // 打印页脚信息 + tableHtml = appendTableRowString(tableHtml, myObj.footer.rowHeight , myObj.footer.fontSize) + + tableHtml += ""; + var text = ""; + + for (var i=0;i 0){ + temp = temp.substring(0,10); + } + + text += temp; + } + } + + } + tableHtml += "
" + text;
+			tableHtml += "   第"+page.pageNumber+"页/共"+printSummaryObj.pageAmount+"页";
+			tableHtml += "
"; + } + + tableHtml += ""; + + LODOP.ADD_PRINT_TABLE(myObj.goodsTable.position[0], myObj.goodsTable.position[1], myObj.goodsTable.position[2], myObj.goodsTable.position[3],tableHtml); + } +} + //根据配置的表单打印信息,以及从服务器取到的物品信息数据,打印表单 //@Deprecated,新的打印函数采用Lodop的自动分页以及页眉页脚打印方式 function print(printSummaryObj){ @@ -1674,7 +1893,7 @@ return tousseName; } /** - * 打印回收篮筐内物品。目前就外来器械会打印 + * 打印回收篮筐内物品。外来器械及其它类型单的回收物品打印(根据配置项决定) * @param recyclingPrintDatas */ function printRecyclingDetail(recyclingPrintDatas){ @@ -1684,8 +1903,19 @@ recyclingPrintData.printTousseName = getForeignTousseName(recyclingPrintData); formTypeOfPrinted = "recyclingGoodsDetail"; setPrinterByConfig(); - print2(recyclingPrintData); - LODOP.PRINT(); + //如果打印回收清单的类型为2(目前仅广医口腔有此配置),则按申请单的打印格式进行配置 + if(sstsConfig.recyclingPrintContent == 2){ + if(recyclingPrintData && recyclingPrintData.pages && recyclingPrintData.pages.length > 0){ + for(var i = 0;i < recyclingPrintData.pages.length;i++){ + recyclingPrintData.pageIndex = i; + print3(recyclingPrintData); + LODOP.PRINT(); + } + } + }else{ + print2(recyclingPrintData); + LODOP.PRINT(); + } } } }