Index: ssts-web/src/main/webapp/disinfectsystem/touchScreen/recycle/1980/images/washformstyle.css =================================================================== diff -u -r20382 -r20577 --- ssts-web/src/main/webapp/disinfectsystem/touchScreen/recycle/1980/images/washformstyle.css (.../washformstyle.css) (revision 20382) +++ ssts-web/src/main/webapp/disinfectsystem/touchScreen/recycle/1980/images/washformstyle.css (.../washformstyle.css) (revision 20577) @@ -110,19 +110,20 @@ .zhuangzai-table .add{background:url(pic_bg.jpg) no-repeat -318px -136px; width:22px; height:23px; display:inline-block; margin-right:10px;cursor:pointer} .zhuangzai-table .minus{background:url(pic_bg.jpg) no-repeat -318px -162px; width:22px; height:23px; display:inline-block; margin-right:10px;cursor:pointer} .zhuangzai-table .sed{ display:none} -.zhuangzai-table .list-item li{background:url(table4_bg.gif) no-repeat top center; padding:0px;font-size:30px; color:#666; line-height:70px; width:530px; } +.zhuangzai-table .list-item li{background:url(table4_bg.gif) no-repeat top center; padding:0px;font-size:30px; color:#666; line-height:70px; width:530px} .zhuangzai-table .list-item li em{ width:85px; text-align:center;} .zhuangzai-table .list-item li i{ width:106px; text-align:center;} .zhuangzai-table .list-item li .btn{ background:url(pic_bg.jpg) no-repeat -86px -417px; width:84px; height:58px; display:block; line-height:200px; overflow:hidden; margin:0 auto} .zhuangzai-table .list-item li .btn:hover{ background-position: -86px -475px; } .zhuangzai-table .list-item dl{ margin-top:7px; width:530px; background:#f9fce8; } .zhuangzai-table .list-item dd{ float:left; border-bottom:1px solid #ddd;border-right:1px solid #ddd; padding:7px 0; text-align:center; } -.zhuangzai-table .list-item .name{ width:333px;height:58px;line-height:25px;overflow:hidden;} +.zhuangzai-table .list-item .name{ width:332px;height:58px;line-height:25px;overflow:hidden;} .zhuangzai-table .list-item .basketName{ padding-left:0;} -.zhuangzai-table .list-item .amount{ padding-left:120px;} +.zhuangzai-table .list-item .amount{ float :right;} .zhuangzai-table .list-item .name span{ no-repeat 0 10px; padding-left:0px;} -.zhuangzai-table .list-item .num{ width:89px;height:58px;line-height:25px;overflow:hidden;} +.zhuangzai-table .list-item .num{ width:88px;height:58px;line-height:25px;overflow:hidden;} .zhuangzai-table .list-item .del{ width:101px;height:58px;} +.zhuangzai-table .list-item .person{ padding-right:340px;} .qingxi-table{position:absolute;width:715px; height:695px; bottom:64px; left:30px;top:245px;} .qingxi-table .box{height:700px; overflow-y:scroll; overflow-x:hidden} Index: ssts-web/src/main/webapp/disinfectsystem/washanddisinfectmanager/washanddisinfectrecord/washForTouchScreen.js =================================================================== diff -u -r20376 -r20577 --- ssts-web/src/main/webapp/disinfectsystem/washanddisinfectmanager/washanddisinfectrecord/washForTouchScreen.js (.../washForTouchScreen.js) (revision 20376) +++ ssts-web/src/main/webapp/disinfectsystem/washanddisinfectmanager/washanddisinfectrecord/washForTouchScreen.js (.../washForTouchScreen.js) (revision 20577) @@ -123,7 +123,7 @@ }else if(event.keyCode == 57 || event.keyCode == 105){ barcodeGloble += '9'; }else if(event.keyCode == 13){ - $('#'+barcodeGloble+'').empty(); + $("#basketsUlS").find(('#'+barcodeGloble+'')).empty();//加载篮筐时取消对应的待装载篮筐 loadBarcodeDevice(barcodeGloble); } stopBubble(event); @@ -192,6 +192,7 @@ var basketName = result.data.container.name; var classifyBasketId = result.data.id; var basketBarcode = result.data.container.barcode; +// var amount = result.data.container.amount; var itemsInfo = result.data.itemAmountInfos; var isExist = isBasketExist(classifyBasketId); @@ -223,7 +224,7 @@ }); } -function createBasketUiElement(basketBarcode,classifyBasketId,basketName,position,personInCharge,personInChargeCode,itemsInfo){ +function createBasketUiElement(basketBarcode,classifyBasketId,type,basketName,amount,position,personInCharge,personInChargeCode,itemsInfo){ var basketElement = '
  • '; var person = '责任人:' + personInCharge; basketElement += ''; @@ -232,12 +233,12 @@ basketElement += ''; basketElement += ''; basketElement += ''+ basketName +''; - basketElement += ' '; + basketElement += ''+ amount +''; basketElement += '

    ' + position +'

    ';//位置 if(isUndefinedOrNullOrEmpty(position)){ - basketElement += '
    ' + person +''; + basketElement += '
    ' + person +''; }else{ - basketElement += '' + person +''; + basketElement += '' + person +''; } // element += '
    '+"为准"+'
    '; basketElement += '
    '; @@ -252,7 +253,7 @@ basketElement += '
  • '; var obj = $(basketElement); $("#basketsUl").prepend(obj); - var json = getBasketJSON(classifyBasketId,basketBarcode,position,personInCharge,personInChargeCode); + var json = getBasketJSON(classifyBasketId,type,basketBarcode,position,personInCharge,personInChargeCode,itemsInfo); $("#basketsUl li:first").find('input').val(json); } function createBasketItem(goodsName,amount){ @@ -275,6 +276,20 @@ return isExist; } +//判定器械包是否已扫描 +function isTousseExist(classifyBasketId){ + var isExist = false; + $("#basketsUl li").each(function(){ + var hide = $(this).find('input'); + var item = JSON.parse(hide.val()); + if(item.classifyBasketId == classifyBasketId){ + isExist = true; + return false; + } + }); + return isExist; +} + function toCleanTheBasketData(){ $.ajax({ type:'get', @@ -287,6 +302,7 @@ var obj = array[i]; var basketName = obj.objName; var basketBarcode = obj.objBarcode; +// var amount = obj.objAmount; var itemsInfo = obj.children; var basketElements = '
  • '; basketElements += ''; @@ -392,17 +408,68 @@ personInCharge = $("#personInCharge").val(); var personInChargeCode = $("#personInChargeCode").val(); var basketName = result.data.container.name; + var amount = result.data.container.amount; var classifyBasketId = result.data.id; var basketBarcode = result.data.container.barcode; var itemsInfo = result.data.itemAmountInfos; var isExist = isBasketExist(classifyBasketId); if(!isExist){ - createBasketUiElement(basketBarcode,classifyBasketId,basketName,position,personInCharge,personInChargeCode,itemsInfo); + createBasketUiElement(basketBarcode,classifyBasketId,type,basketName,amount,position,personInCharge,personInChargeCode,itemsInfo); $("#scanContainerBarcodeTipUl").hide(); barcodeGloble = '';//清空后清除条码记忆的全局变量 }else{ alertDiv(basketName + ",已扫描!",false,false,false); } + }else if(type == "tousseInstance"){ + //判断是否启用清洗不追溯器械包 + if(sstsConfig.endbleScanTousseFixationBarcode){ + var personInCharge = ''; + barcodeGloble = '';//清空后清除条码记忆的全局变量 + if((sstsConfig.hasOwnProperty('touchWashInputPersonInCharge')) && sstsConfig.touchWashInputPersonInCharge){ + personInCharge = $("#personInCharge").val(); + if(personInCharge == null || personInCharge == ''){ + alertDiv("请先扫描责任人!",false,false,false); + return; + } + } + var position = ''; + if(sstsConfig.hasOwnProperty('wrRecordScanPosition') && sstsConfig.wrRecordScanPosition){ + if((sstsConfig.hasOwnProperty('haveRinserPosition')) && sstsConfig.haveRinserPosition){ + position = $("#washPosition").val(); + if(position == null || position == ''){ + alertDiv("请先扫描位置!",false,false,false); + return; + } + } + } + personInCharge = $("#personInCharge").val(); + var personInChargeCode = $("#personInChargeCode").val(); + var tousseName = result.data.container.name; + var amount = result.data.container.amount; + var classifyBasketId = result.data.id; + var tousseBarcode = result.data.container.barcode; + var itemsInfo = result.data.itemAmountInfos; + var isExist = isTousseExist(classifyBasketId); + if(!isExist){ + createBasketUiElement(tousseBarcode,classifyBasketId,type,tousseName,amount,position,personInCharge,personInChargeCode,itemsInfo); + $("#scanContainerBarcodeTipUl").hide(); + barcodeGloble = '';//清空后清除条码记忆的全局变量 + }else{ + //已扫描的器械包进行数量叠加 + var oldAmount =$('#'+ tousseBarcode +'').find(('.amount')).text(); + $('#'+ tousseBarcode +'').remove(); + amount = parseInt(amount) + parseInt(oldAmount); + for(var i = 0;i < itemsInfo.length ; i++){ + itemsInfo[i].amount = itemsInfo[i].materialAmount * amount;//包定义材料数量叠加 + } + createBasketUiElement(tousseBarcode,classifyBasketId,type,tousseName,amount,position,personInCharge,personInChargeCode,itemsInfo); + $("#scanContainerBarcodeTipUl").hide(); + barcodeGloble = '';//清空后清 + } + }else{ + alertDiv(" 找不到该条码所对应的信息!",false,false,false); + return; + } }else if(type == "rinser"){ var name = result.data.name; $("#disinfectIdentification").val(name); @@ -472,13 +539,15 @@ } } -function getBasketJSON(itemId,barcode,position,personInCharge,personInChargeCode){ +function getBasketJSON(itemId,type,barcode,position,personInCharge,personInChargeCode,itemsInfo){ var json = {}; json.classifyBasketId = itemId; + json.type = type; json.barcode = barcode; json.position = position; json.personInCharge = personInCharge; json.personInChargeCode = personInChargeCode; + json.itemsInfo = itemsInfo; return JSON.stringify(json); } @@ -583,11 +652,29 @@ } } +function getMaterialData(){ + var materialData = new Array(); + $("#basketsUl li").each(function(){ + var hide = $(this).find('input'); + var item = JSON.parse(hide.val()); + if(item.type == "tousseInstance"){ + for(var i=0;i items,boolean isLoadDefaultCleanMethod); + /** + * 根据器械包固定条码加载器械包内的材料 + * @param classifyBasket + * @param isLoadDefaultCleanMethod + * @return + */ + public String loadTousseContent(String barcode,boolean isLoadDefaultCleanMethod); + } Index: ssts-web/src/main/webapp/disinfectsystem/touchScreen/recycle/1980/images/washformstyle_position.css =================================================================== diff -u -r20364 -r20577 --- ssts-web/src/main/webapp/disinfectsystem/touchScreen/recycle/1980/images/washformstyle_position.css (.../washformstyle_position.css) (revision 20364) +++ ssts-web/src/main/webapp/disinfectsystem/touchScreen/recycle/1980/images/washformstyle_position.css (.../washformstyle_position.css) (revision 20577) @@ -111,14 +111,15 @@ .zhuangzai-table .add{background:url(pic_bg.jpg) no-repeat -318px -136px; width:22px; height:23px; display:inline-block; margin-right:10px;cursor:pointer} .zhuangzai-table .minus{background:url(pic_bg.jpg) no-repeat -318px -162px; width:22px; height:23px; display:inline-block; margin-right:10px;cursor:pointer} .zhuangzai-table .sed{ display:none} -.zhuangzai-table .list-item li{ background:url(table2_bg.gif) no-repeat top center; padding:8px 0px 7px 0;font-size:30px; color:#666; line-height:58px; } +.zhuangzai-table .list-item li{ background:url(table2_bg.gif) no-repeat top center; padding:8px 0px 7px 0;font-size:30px; color:#666; line-height:58px;} .zhuangzai-table .list-item li em{ width:85px; text-align:center;} .zhuangzai-table .list-item li i{ width:129px; text-align:center} .zhuangzai-table .list-item li .btn{ background:url(pic_bg.jpg) no-repeat -86px -417px; width:84px; height:58px; display:block; line-height:200px; overflow:hidden; margin:0 auto} .zhuangzai-table .list-item li .btn:hover{ background-position: -86px -475px; } .zhuangzai-table .list-item dl{ margin-top:7px; width:1205px; background:#f9fce8; } .zhuangzai-table .list-item dd{ float:left; border-bottom:1px solid #ddd;border-right:1px solid #ddd; padding:7px 0; text-align:center; } .zhuangzai-table .list-item .name{ width:626px;height:58px;line-height:25px;overflow:hidden;} +.zhuangzai-table .list-item .amount{ padding-left:550px;} .zhuangzai-table .list-item .name span{ no-repeat 0 10px; padding-left:0px;} .zhuangzai-table .list-item .num{ width:297px;height:58px;line-height:25px;overflow:hidden;} .zhuangzai-table .list-item .del{ width:271px;} Index: ssts-basedata/src/main/java/com/forgon/disinfectsystem/basedata/becleanitem/service/BeCleanItemManagerImpl.java =================================================================== diff -u -r20412 -r20577 --- ssts-basedata/src/main/java/com/forgon/disinfectsystem/basedata/becleanitem/service/BeCleanItemManagerImpl.java (.../BeCleanItemManagerImpl.java) (revision 20412) +++ ssts-basedata/src/main/java/com/forgon/disinfectsystem/basedata/becleanitem/service/BeCleanItemManagerImpl.java (.../BeCleanItemManagerImpl.java) (revision 20577) @@ -27,7 +27,9 @@ import com.forgon.disinfectsystem.entity.basedatamanager.cleanmethod.CleanMethod; import com.forgon.disinfectsystem.entity.basedatamanager.container.Container; import com.forgon.disinfectsystem.entity.basedatamanager.materialdefinition.MaterialDefinition; +import com.forgon.disinfectsystem.entity.basedatamanager.materialinstance.MaterialInstance; import com.forgon.disinfectsystem.entity.basedatamanager.toussedefinition.TousseDefinition; +import com.forgon.disinfectsystem.entity.basedatamanager.toussedefinition.TousseInstance; import com.forgon.disinfectsystem.entity.becleanitem.BeCleanItem; import com.forgon.disinfectsystem.entity.becleanitem.ClassifiedItem; import com.forgon.disinfectsystem.entity.becleanitem.ClassifyBasket; @@ -786,6 +788,97 @@ } @Override + public String loadTousseContent(String barcode,boolean isLoadDefaultCleanMethod) { + String contentStr = ""; + int totalGoodsAmount = 0; + try { + contentStr += "#@"; + BarcodeDevice barcodeDevice = barcodeManager + .getBarcodeByBarcode(barcode); + TousseInstance tousseInstance = (TousseInstance)barcodeDevice; + TousseDefinition tousseDefinition = tousseInstance.getTousseDefinition(); + JSONArray array = new JSONArray(); + if (TousseDefinition.STR_YES + .equals(tousseDefinition.getIsTraceable())){ + return "retrospect"; + } + List materialInstances = tousseInstance.getTousseDefinition().getMaterialInstances(); + for(MaterialInstance materialInstance : materialInstances ){ + int amount = materialInstance.getCount()* tousseDefinition.getScanAmount();//材料数量*包定义的每次扫描数量 + JSONObject obj = new JSONObject(); + obj.put("name", materialInstance.getMaterialName()); + obj.put("type", ClassifiedItem.TYPE_MATERIAL); + obj.put("amount",amount ); + obj.put("materialDefinitionId",materialInstance.getMaterialDefinitionId()); + array.add(obj); + } + JSONObject object = new JSONObject(); + // 是否加载器械包基础定义里的清洗程序(消毒方式) + if (isLoadDefaultCleanMethod + && StringUtils.isNotBlank(tousseDefinition.getCleanMethod())) { + object.put("cleanMethod", tousseDefinition.getCleanMethod()); + + // 加载清洗时间 + CleanMethod cleanMethod = cleanMethodManager + .getCleanMethodByName(tousseDefinition.getCleanMethod()); + if (cleanMethod != null + && cleanMethod.getCleanMinutes() != null) { + + object.put("cleanMinutes", cleanMethod.getCleanMinutes()); + } + + isLoadDefaultCleanMethod = false;// 只需要一个清洗程序即可 + } + for (int i=0;i