Index: ssts-web/src/main/webapp/disinfectsystem/config/zjjsrmyy/print/printConfig.js =================================================================== diff -u -r28914 -r29093 --- ssts-web/src/main/webapp/disinfectsystem/config/zjjsrmyy/print/printConfig.js (.../printConfig.js) (revision 28914) +++ ssts-web/src/main/webapp/disinfectsystem/config/zjjsrmyy/print/printConfig.js (.../printConfig.js) (revision 29093) @@ -1250,6 +1250,180 @@ LODOP.ADD_PRINT_HTM(0,0,"95%","100%","
"+tableHtml+""); } +function printrecyclingItems_ggsrmyy(obj){ + //按物品名称分组 + var groupGoods = []; + //所有科室 + var departs = []; + function groupGoodsItems(goodsArray){ + for(var i = 0; i < goodsArray.length;++i){ + var goods = goodsArray[i]; + if('手术室'==goods.applicationDepart){ + //过滤掉手术室的物品 + continue; + } + var group = null; + for(var index = 0; index < groupGoods.length;++index){ + if(groupGoods[index].goodsName == goods.goodsName){ + group = groupGoods[index]; + break; + } + } + if(!group){ + group = {}; + group.goodsName = goods.goodsName; + group.totalAmount = 0; + group.goods = []; + groupGoods.push(group) + } + var gds = null; + for(var index = 0; index < group.goods.length;++index){ + if(group.goods[index].applicationDepart == goods.applicationDepart){ + gds = group.goods[index]; + } + } + if(gds){ + gds.goodsAmount += parseInt(goods.goodsAmount); + }else{ + group.goods.push(goods); + } + group.totalAmount += parseInt(goods.goodsAmount); + var containsDepart = false; + for(var index = 0; index < departs.length;++index){ + if(departs[index] == goods.applicationDepart){ + containsDepart = true; + break; + } + } + if(!containsDepart){ + departs.push(goods.applicationDepart); + } + } + } + if(obj.goods){ + groupGoodsItems(obj.goods); + } + if(obj.tousses){ + groupGoodsItems(obj.tousses); + } + //一页打印的物品数量 + var goodsAmountPerPage = 20; + //一页打印的科室数量 + var departAmoutPerPage = 10; + var allPages = []; + + var tdAlign = "center"; + var departPages = (departs.length % departAmoutPerPage == 0)?(departs.length/departAmoutPerPage):(departs.length/departAmoutPerPage + 1); + var goodsPages = (groupGoods.length % goodsAmountPerPage == 0)?(groupGoods.length/goodsAmountPerPage):(groupGoods.length/goodsAmountPerPage + 1); + var first = true; + var goodsColWidth = 70; + var totalColWidth = 40; + for(var i = 0; i < parseInt(departPages);++i){ + for(var j = 0; j < parseInt(goodsPages);++j){ + if(!first){ + //不是第一页,需要重新打开一页 + LODOP.NEWPAGE(); + } + + LODOP.SET_PRINT_STYLE("FontSize",17); + LODOP.ADD_PRINT_TEXT(5,300,"100%",5,"CSSD每日回收登记表"); + LODOP.SET_PRINT_STYLE("FontSize",11); + LODOP.ADD_PRINT_TEXT(35,30,"100%",5,"制单人:" + obj.printUser); + LODOP.ADD_PRINT_TEXT(35,230,"100%",5,"开始时间:" + obj.fromTime.substring(0,16)); + LODOP.ADD_PRINT_TEXT(35,480,"100%",5,"结束时间:"+ obj.toTime.substring(0,16)); + + first = false; + var htmlTable ="| "; + htmlTable += " | 合计 | "; + for(var col = 0; col < departAmoutPerPage;++col){ + var dpt = departs[i*departAmoutPerPage + col]; + if(dpt){ + htmlTable += "" + dpt + " | "; + }else{ + break; + } + } + htmlTable += "|
| "+group.goodsName+" | "; + htmlTable += ""+group.totalAmount+" | "; + for(var col = 0; col < departAmoutPerPage;++col){ + var dpt = departs[i*departAmoutPerPage + col]; + if(dpt){ + var gds = null; + for(var k = 0; k < group.goods.length;++k){ + if(group.goods[k].applicationDepart == dpt){ + gds = group.goods[k]; + break; + } + } + if(gds){ + htmlTable += "" + gds.goodsAmount + " | "; + }else{ + htmlTable += ""; + } + }else{ + break; + } + } + htmlTable += " |