Index: ssts-web/src/main/webapp/disinfectsystem/print/print.js =================================================================== diff -u -r17175 -r17296 --- ssts-web/src/main/webapp/disinfectsystem/print/print.js (.../print.js) (revision 17175) +++ ssts-web/src/main/webapp/disinfectsystem/print/print.js (.../print.js) (revision 17296) @@ -2577,6 +2577,132 @@ LODOP.ADD_PRINT_TABLE("70","0","100%","3000",titleHtml); LODOP.PRINT(); } +/** + * 打印手术预约单 + * @param printObj 手术预约打印数据 + * @param printType 打印类型:0为打印,其它为预览 + */ +function printOperationReservations(printObj,printType) { + formTypeOfPrinted = "operationReservations"; + printObj.printConfigObj_default = operationReservationVosConfig_default;// + doGetLodop(); + LODOP.PRINT_INIT(""); + setPrinterByConfig(); + print2(printObj); + LODOP.PRINT(); +// if(printType == 0){//直接打印 +// LODOP.PRINT(); +// }else{//打印预览 +// LODOP.SET_SHOW_MODE("HIDE_PAPER_BOARD",1); +// LODOP.PREVIEW(); +// } +} +/** + * 手术预约界面的打印 + */ +var operationReservationVosConfig_default = { + customPrint:printOperationReservationsWithConsoleNameAndItems +} +/** + * 打印手术预约申请单 台次及对应的器械包列表 + * @param operationReservations + */ +function printOperationReservationsWithConsoleNameAndItems(printObj){ + if(isUndefinedOrNullOrEmpty(printObj)){ + return; + } + + doGetLodop(); + var operationReservations = printObj.data; + var groups = []; //台次的分组 "15-1" 15就是分组,所以用"-"分隔,如果没有"-"那就打印到一个分组 + var groupNames = []; + for(var i = 0; i < operationReservations.length;++i){ + var groupName = "0"; + var group = null; + if(operationReservations[i].consoleName){ + var arr = operationReservations[i].consoleName.split('-'); + groupName = arr[0]; + } + for(var j = 0; j < groups.length;++j){ + if(groupName == groups[j].name){ + group = groups[j]; + break; + } + } + if(!group){ + group = {}; + group.name = groupName; + group.consoleNames = []; + group.operationReservations = []; + groupNames.push(groupName); + groups.push(group); + } + group.consoleNames.push(operationReservations[i].consoleName); + group.operationReservations.push(operationReservations[i]); + } + //把字母顺序排序 + groupNames.sort(); + var title = '手术器械安排'; + if(printObj.operationTime){ + title = printObj.operationTime + title; + } + var printTime = new Date().Format("yyyy-MM-dd hh:mm:ss"); + var tableHtml = "
"+title+" | "; + tableHtml += "|
打印时间:"+printTime+" | "; + tableHtml += "|
" + + operationReservation.consoleName + " | "; + var tousseItemNames = []; + for(var j = 0; j < operationReservation.applicationItems.length;++j){ + var item = operationReservation.applicationItems[j]; + if(item){ + tousseItemNames.push(item.tousseName); + } + } + tableHtml += "" +tousseItemNames.join(' ')+" | "; + tableHtml += "
"; + tableHtml += " |