Index: ssts-web/src/main/webapp/disinfectsystem/config/dgszyy/print/printConfig.js =================================================================== diff -u -r23705 -r27043 --- ssts-web/src/main/webapp/disinfectsystem/config/dgszyy/print/printConfig.js (.../printConfig.js) (revision 23705) +++ ssts-web/src/main/webapp/disinfectsystem/config/dgszyy/print/printConfig.js (.../printConfig.js) (revision 27043) @@ -163,6 +163,7 @@ printByOriginalApplications : true, //不合并打印情况下是否按原始单据逐份打印 printApplyInfo : false, printOrder : 1, // 1:优先打印一次性物品, 2:优先打印器械包 + isPrintToSendGood:false,//是否打印待发货物品 // 在器械包和一次性物品不合并打印的情况下,消毒物品打印方式: // 1:优先与一次性物品合并打印,如果无一次性物品则与器械包合并打印, 2:优先与器械包一起合并打印,如果没有器械包则与一次性物品合并打印 ,3:单独打印 disinfectGoodsPrintMode : 2, @@ -1583,6 +1584,7 @@ isMergePrintTousseAndDisposable : false, // 器械包和一次性物品是否合并打印 printByOriginalApplications : true, //不合并打印情况下是否按原始单据逐份打印 printApplyInfo : true, + isPrintToSendGood:false,//是否打印待发货物品 printOrder : 1, // 1:优先打印一次性物品, 2:优先打印器械包 // 在器械包和一次性物品不合并打印的情况下,消毒物品打印方式: // 1:优先与一次性物品合并打印,如果无一次性物品则与器械包合并打印, 2:优先与器械包一起合并打印,如果没有器械包则与一次性物品合并打印 ,3:单独打印 Index: ssts-web/src/main/webapp/disinfectsystem/print/printApplicationGoods.js =================================================================== diff -u -r26780 -r27043 --- ssts-web/src/main/webapp/disinfectsystem/print/printApplicationGoods.js (.../printApplicationGoods.js) (revision 26780) +++ ssts-web/src/main/webapp/disinfectsystem/print/printApplicationGoods.js (.../printApplicationGoods.js) (revision 27043) @@ -18,6 +18,7 @@ printParams.printScope.rowsPerPage = config.rowsPerPage; printParams.printScope.printOrder = config.printOrder; printParams.printScope.printByOriginalApplications = config.printByOriginalApplications; + printParams.printScope.isPrintToSendGood = config.isPrintToSendGood; printParams.printScope.customProject = config.customProject; return printParams; } Index: ssts-web/src/main/webapp/disinfectsystem/recyclingApplication/goodsApplicationView.js =================================================================== diff -u -r26670 -r27043 --- ssts-web/src/main/webapp/disinfectsystem/recyclingApplication/goodsApplicationView.js (.../goodsApplicationView.js) (revision 26670) +++ ssts-web/src/main/webapp/disinfectsystem/recyclingApplication/goodsApplicationView.js (.../goodsApplicationView.js) (revision 27043) @@ -2347,6 +2347,56 @@ } +function printAllGoodsWithToSendGoods(isPrintToSendGood,isAllGoodsOrToSendGoods){ + var records = grid.getSelectionModel().getSelections(); + var invoicePlanIds = null; + var foreignProxyIdsMap = {}; + var foreignTousseMap = {}; + // 申请单ID根据类型分组 + for (var i = 0; i < records.length; i++) { + if (records[i].json['type'] == '外部器械包代理灭菌申请单') { + var depart = records[i].data['depart']; + if (foreignProxyIdsMap[depart] == null) { + foreignProxyIdsMap[depart] = records[i].data['id']; + } else { + foreignProxyIdsMap[depart] = foreignProxyIdsMap[depart] + ',' + records[i].data['id']; + } + } else if (records[i].json['type'] == '外来器械包申请单') { + foreignTousseMap[i] = records[i]; + } else { + if (invoicePlanIds == null) { + invoicePlanIds = records[i].data['id']; + } else { + invoicePlanIds = invoicePlanIds + ';' + records[i].data['id']; + } + } + } + + for (var prop in foreignTousseMap) { + formTypeOfPrinted = "foreignTousseAppliation"; + printForeignTousseApplication(foreignTousseMap[prop], 0,isAllGoodsOrToSendGoods); + } + + for (var prop in foreignProxyIdsMap) { + formTypeOfPrinted = "foreignProxyDisinfectionApplication"; + batchPrintForeignProxyDisinfectionApplications(foreignProxyIdsMap[prop], prop, 0,isAllGoodsOrToSendGoods); + } + + if (invoicePlanIds != null) { + //通过json stringify和parse克隆js对象 + var config = JSON.parse(JSON.stringify(printConfig.invoicePlan)); + config.isPrintTousse = true; + config.isPrintDisinfectGoods = true; + config.isPrintDressing = true; + config.isPrintDisposableGoods = true; + config.printApplyInfo = false; + config.isPrintToSendGood = isPrintToSendGood; + var printParams = getPrintJsonParams("print", invoicePlanIds, config); + formTypeOfPrinted = "invoicePlan"; + printApplyGoods(printParams, 0, SSTS_PrintApplicationGoods, null); + } +} + /** * 创建操作的工具栏. * @param isFirstSupplyRoomUser 是否为一级供应室用户 @@ -2441,55 +2491,8 @@ top.Ext.MessageBox.confirm("请确认", "要打印所选申请单的全部物品吗?", function (btn) { if (btn == 'yes') { - var records = grid.getSelectionModel().getSelections(); - var invoicePlanIds = null; - var foreignProxyIdsMap = {}; - var foreignTousseMap = {}; - // 申请单ID根据类型分组 - for (var i = 0; i < records.length; i++) { - if (records[i].json['type'] == '外部器械包代理灭菌申请单') { - var depart = records[i].data['depart']; - if (foreignProxyIdsMap[depart] == null) { - foreignProxyIdsMap[depart] = records[i].data['id']; - } else { - foreignProxyIdsMap[depart] = foreignProxyIdsMap[depart] + ',' + records[i].data['id']; - } - } else if (records[i].json['type'] == '外来器械包申请单') { - foreignTousseMap[i] = records[i]; - } else { - if (invoicePlanIds == null) { - invoicePlanIds = records[i].data['id']; - } else { - invoicePlanIds = invoicePlanIds + ';' + records[i].data['id']; - } - } - } - - for (var prop in foreignTousseMap) { - formTypeOfPrinted = "foreignTousseAppliation"; - printForeignTousseApplication(foreignTousseMap[prop], 0); - } - - for (var prop in foreignProxyIdsMap) { - formTypeOfPrinted = "foreignProxyDisinfectionApplication"; - batchPrintForeignProxyDisinfectionApplications(foreignProxyIdsMap[prop], prop, 0); - } - - if (invoicePlanIds != null) { - //通过json stringify和parse克隆js对象 - var config = JSON.parse(JSON.stringify(printConfig.invoicePlan)); - config.isPrintTousse = true; - config.isPrintDisinfectGoods = true; - config.isPrintDressing = true; - config.isPrintDisposableGoods = true; - config.printApplyInfo = false; - - var printParams = getPrintJsonParams("print", invoicePlanIds, config); - formTypeOfPrinted = "invoicePlan"; - printApplyGoods(printParams, 0, SSTS_PrintApplicationGoods, null); - } - - } + printAllGoodsWithToSendGoods(false,""); + } }); } } @@ -2572,7 +2575,19 @@ } }); } - }] + },{ + text: '打印待发货物品',hidden: !sstsConfig.enablePrintToSendGoods, handler: function () { + var ids = getSelectedIds(); + if (ids != null && ids != false) { + top.Ext.MessageBox.confirm("请确认", "要打印所选申请单的待发货物品吗?", + function (btn) { + if (btn == 'yes') { + printAllGoodsWithToSendGoods(true,"待发"); + } + }); + } + } + }] }) }, { text: '设为已打印', @@ -3081,7 +3096,7 @@ } } -function printForeignTousseApplication(record, printType){ +function printForeignTousseApplication(record, printType,isAllGoodsOrToSendGoods){ DWREngine.setAsync(false); /*SupplyRoomConfigTableManager.getStartTimeObject(function(config){ if(config != null){ @@ -3126,6 +3141,11 @@ formTypeOfPrinted = "foreignTousseAppliation"; var config = printConfig.foreignTousseAppliation; + if(isAllGoodsOrToSendGoods == "待发"){//如果是打印待货物品按钮,就配置为true,只打印待发货和部分发货 + config.isPrintToSendGood = true; + }else{ + config.isPrintToSendGood = false; + } var printParams = getPrintJsonParams("print", applicationId , config); printParams.printScope.rowsPerPage = printConfig.foreignTousseAppliation.rowsPerPage; RecyclingApplicationTableManager.findPrintRecyclingGoods(JSON.stringify(printParams) , function(result){ Index: ssts-web/src/main/webapp/disinfectsystem/sterilizationmanager/sterilizationrecord/foreignProxyDisinfectionView.js =================================================================== diff -u -r26815 -r27043 --- ssts-web/src/main/webapp/disinfectsystem/sterilizationmanager/sterilizationrecord/foreignProxyDisinfectionView.js (.../foreignProxyDisinfectionView.js) (revision 26815) +++ ssts-web/src/main/webapp/disinfectsystem/sterilizationmanager/sterilizationrecord/foreignProxyDisinfectionView.js (.../foreignProxyDisinfectionView.js) (revision 27043) @@ -212,7 +212,7 @@ if (btn == 'yes') { for(var depart in departToAppIdsMap ){ if(departToAppIdsMap.hasOwnProperty(depart)){ - batchPrintForeignProxyDisinfectionApplications(departToAppIdsMap[depart],depart ,0); + batchPrintForeignProxyDisinfectionApplications(departToAppIdsMap[depart],depart ,0,""); } } grid.dwrReload(); @@ -1515,7 +1515,7 @@ if(action.result.success){ // 打印申请单 var depart = top.Ext.getCmp("depart").getValue(); - batchPrintForeignProxyDisinfectionApplications(action.result.foreignProxyDisinfection.id,depart ,0); + batchPrintForeignProxyDisinfectionApplications(action.result.foreignProxyDisinfection.id,depart ,0,""); // grid.dwrReload(); }else{ showResult(action.result.msg); @@ -1542,7 +1542,7 @@ function(btn) { if (btn == 'yes') { var depart = top.Ext.getCmp("depart").getValue(); - batchPrintForeignProxyDisinfectionApplications(id,depart ,0); + batchPrintForeignProxyDisinfectionApplications(id,depart ,0,""); grid.dwrReload(); } }); Index: ssts-web/src/main/webapp/disinfectsystem/sterilizationmanager/sterilizationrecord/foreignProxyDisinfectionForm.js =================================================================== diff -u -r26903 -r27043 --- ssts-web/src/main/webapp/disinfectsystem/sterilizationmanager/sterilizationrecord/foreignProxyDisinfectionForm.js (.../foreignProxyDisinfectionForm.js) (revision 26903) +++ ssts-web/src/main/webapp/disinfectsystem/sterilizationmanager/sterilizationrecord/foreignProxyDisinfectionForm.js (.../foreignProxyDisinfectionForm.js) (revision 27043) @@ -817,7 +817,7 @@ function(btn) { if (btn == 'yes') { var depart = top.Ext.getCmp("depart").getValue(); - batchPrintForeignProxyDisinfectionApplications(id,depart ,0); + batchPrintForeignProxyDisinfectionApplications(id,depart ,0,""); } }); } Index: ssts-web/src/main/webapp/disinfectsystem/sterilizationmanager/sterilizationrecord/printForeignProxyDisinfectionApplication.js =================================================================== diff -u -r26469 -r27043 --- ssts-web/src/main/webapp/disinfectsystem/sterilizationmanager/sterilizationrecord/printForeignProxyDisinfectionApplication.js (.../printForeignProxyDisinfectionApplication.js) (revision 26469) +++ ssts-web/src/main/webapp/disinfectsystem/sterilizationmanager/sterilizationrecord/printForeignProxyDisinfectionApplication.js (.../printForeignProxyDisinfectionApplication.js) (revision 27043) @@ -1,7 +1,12 @@ -function batchPrintForeignProxyDisinfectionApplications(ids, depart, printType){ +function batchPrintForeignProxyDisinfectionApplications(ids, depart, printType,isAllGoodsOrToSendGoods){ if(ids == null) return; + var isPrintToSendGood = ""; + if(isAllGoodsOrToSendGoods == "待发"){ + isPrintToSendGood = true; + } + var departBarcode = getDepartBarcodeByDepart(depart); top.Ext.MessageBox.show({ title:'请等待', @@ -42,32 +47,37 @@ // }); // dwr 方式 DWREngine.setAsync(false); - ForeignProxyDisinfectionTableManager.mergeLoadToussePrintData(ids, + ForeignProxyDisinfectionTableManager.mergeLoadToussePrintData(ids,isPrintToSendGood, function(resultStr) { if (resultStr != null) { var result = Ext.decode(resultStr); - result.depart = depart; - result.departBarcode = departBarcode; - result.printUser = curUserName; - result.currentOrgUnitName = currentOrgUnitName; - result.printTime = Ext.util.Format.date(new Date(), 'Y-m-d H:i'); - // 发料人默认改为当前用户 - if (isUndefinedOrNullOrEmpty(result.sender)) { - result.sender = curUserName; - } - printForeignProxyDisinfectionApplications(result, printType); - - if (printType == 0){ -// updatePrintStatus(ids); - if (typeof ids=='string') { - ids = ids.replace(",",";"); - } - RecyclingApplicationTableManager.updatePrintStatus(ids,function(result){ - //更新完打印状态之后,及时刷新页面 - grid.dwrReload(); - }); - - } + if(result.success){ + result.depart = depart; + result.departBarcode = departBarcode; + result.printUser = curUserName; + result.currentOrgUnitName = currentOrgUnitName; + result.printTime = Ext.util.Format.date(new Date(), 'Y-m-d H:i'); + // 发料人默认改为当前用户 + if (isUndefinedOrNullOrEmpty(result.sender)) { + result.sender = curUserName; + } + printForeignProxyDisinfectionApplications(result, printType); + + if (printType == 0){ + // updatePrintStatus(ids); + if (typeof ids=='string') { + ids = ids.replace(",",";"); + } + RecyclingApplicationTableManager.updatePrintStatus(ids,function(result){ + //更新完打印状态之后,及时刷新页面 + grid.dwrReload(); + }); + + } + }else{ + showResult(result.message); + } + } }); DWREngine.setAsync(true); Index: ssts-web/src/main/webapp/disinfectsystem/config/dgszyy/config.js =================================================================== diff -u -r26775 -r27043 --- ssts-web/src/main/webapp/disinfectsystem/config/dgszyy/config.js (.../config.js) (revision 26775) +++ ssts-web/src/main/webapp/disinfectsystem/config/dgszyy/config.js (.../config.js) (revision 27043) @@ -174,5 +174,7 @@ //是否显示检查人字段 showInspectorField:true, //装配检查人的别名 - aliasNameOfInspectorField:"初检人" + aliasNameOfInspectorField:"初检人", + //是否启用打印待发货物品功能,true启用,false或者未配置不启用 + enablePrintToSendGoods:true } \ No newline at end of file