Index: ssts-web/src/main/webapp/disinfectsystem/config/gyey/print/printConfig.js =================================================================== diff -u -r19672 -r23894 --- ssts-web/src/main/webapp/disinfectsystem/config/gyey/print/printConfig.js (.../printConfig.js) (revision 19672) +++ ssts-web/src/main/webapp/disinfectsystem/config/gyey/print/printConfig.js (.../printConfig.js) (revision 23894) @@ -1164,6 +1164,193 @@ ] } + +/** + *器械包明细打印 + */ +function buildTousseDefinitionMeterialTableFormatAdjustment(tousseDefinition,unit){ + if(isUndefinedOrNullOrEmpty(tousseDefinition)){ + alert('包定义不能为空!'); + return null; + } + var name = tousseDefinition.name; + + + var materials = []; + if(!isUndefinedOrNullOrEmpty(tousseDefinition) && !isUndefinedOrNullOrEmpty(tousseDefinition.materialInstances)){ + materials = tousseDefinition.materialInstances; + } + + var total = materials.length; + + //simon-add:动态设置字体大小 + //标题字体大小 + var titleSize='15px'; + //表头字体大小 + var tableHeadSize='12px'; + //表格内容字体大小 + var tableContext='8px'; + + if(total<=15){ + //表格内容字体大小 + tableContext='10px'; + } + + var tableHtml = ""; + tableHtml += ""; + tableHtml += ""; + tableHtml += ""; + tableHtml += ""; + tableHtml += ""; + tableHtml += ""; + tableHtml += "
"+unit+"
"+name+"
"; + tableHtml += ""; + tableHtml += "
"; + tableHtml += "
"; + tableHtml += ""; + tableHtml += ""; + tableHtml += ""; + //simon-add + tableHtml += ""; + tableHtml += ""; + tableHtml += ""; + + var remainder = 0; //simon-edit:计算总数除以3的余数 + if(total%3 == 1){ + remainder = 1; + total=total+2; + }else if(total%3 == 2){ + remainder = 2; + total++; + } + //simon-edit:现在要分成三部分 + total /= 3; + var amount = 0; + //之所以用这种方式是因为用户习惯从上往下清点材料,而不是从左往右 + for(var i=0;i"; + tableHtml += ""; + //simon-edit:更新判断条件:遍历到最后一个并且当总数/3的余数为2时才再最后面增加一个空 + if(i==total-1&& (remainder!=0)){ + //simon:添加第二部分的内容 + if(total!=1){ + var record2 = materials[total+i]; + var materialName2 = record2.materialDefinition.name; + var specification2 = record2.materialDefinition.specification; + var type2 = record2.materialDefinition.type; + if(specification2 != 'null' && specification2 != ""){ + materialName2 += "["+specification2+"]"; + } + var count2 = record2.count; + if(type2 != '一次性物品'){ + amount += parseInt(count2); + } + tableHtml += ""; + }else{ + if(remainder==1){ + tableHtml += ""; + tableHtml += ""; + }else{ + var record2 = materials[total+i]; + var materialName2 = record2.materialDefinition.name; + var specification2 = record2.materialDefinition.specification; + var type2 = record2.materialDefinition.type; + if(specification2 != 'null' && specification2 != ""){ + materialName2 += "["+specification2+"]"; + } + var count2 = record2.count; + if(type2 != '一次性物品'){ + amount += parseInt(count2); + } + tableHtml += ""; + } + } + tableHtml += ""; + tableHtml += ""; + }else if(i==total-2&&(remainder == 1)){ + //simon:添加第二部分的内容 + var record2 = materials[total+i]; + var materialName2 = record2.materialDefinition.name; + var specification2 = record2.materialDefinition.specification; + var type2 = record2.materialDefinition.type; + if(specification2 != 'null' && specification2 != ""){ + materialName2 += "["+specification2+"]"; + } + var count2 = record2.count; + if(type2 != '一次性物品'){ + amount += parseInt(count2); + } + tableHtml += ""; + + tableHtml += ""; + tableHtml += ""; + }else{ + //simon:添加第二部分的内容 + var record2 = materials[total+i]; + var materialName2 = record2.materialDefinition.name; + var specification2 = record2.materialDefinition.specification; + var type2 = record2.materialDefinition.type; + if(specification2 != 'null' && specification2 != ""){ + materialName2 += "["+specification2+"]"; + } + var count2 = record2.count; + if(type2 != '一次性物品'){ + amount += parseInt(count2); + } + tableHtml += ""; + + //simon-add:添加第三部分的内容 + var record3 = materials[i+total*2]; + var materialName3 = record3.materialDefinition.name; + var specification3 = record3.materialDefinition.specification; + var type3 = record3.materialDefinition.type; + if(specification3 != 'null' && specification3 != ""){ + materialName3 += "["+specification3+"]"; + } + var count3 = record3.count; + if(type3 != '一次性物品'){ + amount += parseInt(count3); + } + tableHtml += ""; + + } + + tableHtml += ""; + } + + tableHtml += "
器械名称数量
器械名称
数量
器械名称
数量
"+materialName; + tableHtml += "
"+count+"
"+materialName2; + tableHtml += "
"+count2+"
"; + tableHtml += "
"+materialName2; + tableHtml += "
"+count2+"
"; + tableHtml += "
"+materialName2; + tableHtml += "
"+count2+"
"; + tableHtml += "
"+materialName2; + tableHtml += "
"+count2+"
"; + tableHtml += "
"+materialName3; + tableHtml += "
"+count3+"
"; + tableHtml += "
"; + + var ret = {}; + ret.tableHtml = tableHtml; + ret.amount = amount; + return ret; +} + + var printConfig = { //发货计划单 invoicePlan : invoicePlanPrintConfig, @@ -1217,5 +1404,7 @@ //调拨入库单 appropriationInList : appropriationInListConfig, //调拨出库单 - appropriationOutList : appropriationOutListConfig + appropriationOutList : appropriationOutListConfig, + //器械包明细表打印三排 + tousseDefinitionMeterial:buildTousseDefinitionMeterialTableFormatAdjustment }; Index: ssts-web/src/main/webapp/disinfectsystem/print/print.js =================================================================== diff -u -r23879 -r23894 --- ssts-web/src/main/webapp/disinfectsystem/print/print.js (.../print.js) (revision 23879) +++ ssts-web/src/main/webapp/disinfectsystem/print/print.js (.../print.js) (revision 23894) @@ -4,8 +4,6 @@ var PRINT_FORM_TYPE_DISINFECT_GOODS_APPLICATION = "disinfectGoodsApplication"; // 消毒物品申请单 var PRINT_FORM_TYPE_RECYCLINGRECORD = "recycling"; // 回收单 var PRINT_FORM_TYPE_BORROW = "borrow"; // 借物单 -//simon-add-test -var PRINT_FORM_TYPE_BORROW_CHARGE = "borrowCharge"; // 借物收费单 var PRINT_FORM_TYPE_INVOICE = "invoice"; // 发货单 var paperType = 1; @@ -2198,63 +2196,41 @@ } } } + function buildTousseDefinitionMeterialTable(tousseDefinition,unit){ if(isUndefinedOrNullOrEmpty(tousseDefinition)){ alert('包定义不能为空!'); return null; } var name = tousseDefinition.name; - - var materials = []; - if(!isUndefinedOrNullOrEmpty(tousseDefinition) && !isUndefinedOrNullOrEmpty(tousseDefinition.materialInstances)){ - materials = tousseDefinition.materialInstances; - } - - var total = materials.length; - - //simon-add:动态设置字体大小 - //标题字体大小 - var titleSize='15px'; - //表头字体大小 - var tableHeadSize='12px'; - //表格内容字体大小 - var tableContext='8px'; - - if(total<=15){ - //表格内容字体大小 - tableContext='10px'; - } - var tableHtml = ""; tableHtml += ""; - tableHtml += ""; + tableHtml += ""; tableHtml += ""; tableHtml += ""; - tableHtml += ""; + tableHtml += ""; tableHtml += ""; tableHtml += "
"+unit+"
"+unit+"
"+name+"
"+name+"
"; - tableHtml += ""; - tableHtml += "
"; - tableHtml += "
"; - tableHtml += ""; - tableHtml += ""; - tableHtml += ""; - //simon-add - tableHtml += ""; - tableHtml += ""; + tableHtml += "
器械名称数量
器械名称
数量
器械名称
数量
"; + tableHtml += ""; + tableHtml += ""; + tableHtml += ""; + tableHtml += ""; + tableHtml += ""; tableHtml += ""; - - var remainder = 0; //simon-edit:计算总数除以3的余数 - if(total%3 == 1){ - remainder = 1; - total=total+2; - }else if(total%3 == 2){ - remainder = 2; + + var materials = []; + if(!isUndefinedOrNullOrEmpty(tousseDefinition) && !isUndefinedOrNullOrEmpty(tousseDefinition.materialInstances)){ + materials = tousseDefinition.materialInstances; + } + var total = materials.length; + var isEven = true; //判断材料的数量是奇数还是偶数 + if(total%2 != 0){ + isEven = false; total++; } - //simon-edit:现在要分成三部分 - total /= 3; + total /= 2; var amount = 0; //之所以用这种方式是因为用户习惯从上往下清点材料,而不是从左往右 for(var i=0;i"; - tableHtml += ""; - //simon-edit:更新判断条件:遍历到最后一个并且当总数/3的余数为2时才再最后面增加一个空 - if(i==total-1&& (remainder!=0)){ - //simon:添加第二部分的内容 - var record2 = materials[total+i]; - var materialName2 = record2.materialDefinition.name; - var specification2 = record2.materialDefinition.specification; - var type2 = record2.materialDefinition.type; - if(specification2 != 'null' && specification2 != ""){ - materialName2 += "["+specification2+"]"; - } - var count2 = record2.count; - if(type2 != '一次性物品'){ - amount += parseInt(count2); - } - tableHtml += ""; - - tableHtml += ""; - tableHtml += ""; - }else if(i==total-2&&(remainder == 1)){ - //simon:添加第二部分的内容 - var record2 = materials[total+i]; - var materialName2 = record2.materialDefinition.name; - var specification2 = record2.materialDefinition.specification; - var type2 = record2.materialDefinition.type; - if(specification2 != 'null' && specification2 != ""){ - materialName2 += "["+specification2+"]"; - } - var count2 = record2.count; - if(type2 != '一次性物品'){ - amount += parseInt(count2); - } - tableHtml += ""; - - tableHtml += ""; - tableHtml += ""; + tableHtml += ""; + tableHtml += ""; + + if(i==total-1 && !isEven){ + tableHtml += ""; + tableHtml += ""; }else{ - //simon:添加第二部分的内容 - var record2 = materials[total+i]; + var record2 = materials[i+total]; var materialName2 = record2.materialDefinition.name; var specification2 = record2.materialDefinition.specification; var type2 = record2.materialDefinition.type; @@ -2326,26 +2266,9 @@ if(type2 != '一次性物品'){ amount += parseInt(count2); } - tableHtml += ""; - - //simon-add:添加第三部分的内容 - var record3 = materials[i+total*2]; - var materialName3 = record3.materialDefinition.name; - var specification3 = record3.materialDefinition.specification; - var type3 = record3.materialDefinition.type; - if(specification3 != 'null' && specification3 != ""){ - materialName3 += "["+specification3+"]"; - } - var count3 = record3.count; - if(type3 != '一次性物品'){ - amount += parseInt(count3); - } - tableHtml += ""; - } tableHtml += ""; @@ -2358,6 +2281,8 @@ ret.amount = amount; return ret; } + + function printIDCardLargeLabel_default(idCardInstance){ if(isUndefinedOrNullOrEmpty(idCardInstance.tousseDefinition)){ alert('包定义不能为空!'); @@ -2467,8 +2392,12 @@ return; } doGetLodop(); - var ret = buildTousseDefinitionMeterialTable(tousseDefinitionObj,tousseDefinitionObj.unit); - + var ret; + if(isUndefinedOrNullOrEmpty(printConfig.tousseDefinitionMeterial)){ + ret = buildTousseDefinitionMeterialTable(tousseDefinitionObj,tousseDefinitionObj.unit); + }else{ + ret =buildTousseDefinitionMeterialTableFormatAdjustment(tousseDefinitionObj,tousseDefinitionObj.unit); + } var tableHtml = ret.tableHtml + "
器械名称
数量
器械名称
数量
"+materialName; - tableHtml += "
"+count+"
"+materialName2; - tableHtml += "
"+count2+"
"; - tableHtml += "
"+materialName2; - tableHtml += "
"+count2+"
"; - tableHtml += "
"+materialName; + tableHtml += "
"+count+"
"+materialName2; - tableHtml += "
"+count2+"
"; + tableHtml += "
"+materialName2; + tableHtml += "
"+count2+"
"; tableHtml += "
"+materialName3; - tableHtml += "
"+count3+"
"; - tableHtml += "
"; tableHtml += ""; tableHtml += "
器械总数量:"+ret.amount+"件";