Index: ssts-web/src/main/webapp/disinfectsystem/touchScreen/recycle/recycleForTouchScreen.js =================================================================== diff -u -r26778 -r26788 --- ssts-web/src/main/webapp/disinfectsystem/touchScreen/recycle/recycleForTouchScreen.js (.../recycleForTouchScreen.js) (revision 26778) +++ ssts-web/src/main/webapp/disinfectsystem/touchScreen/recycle/recycleForTouchScreen.js (.../recycleForTouchScreen.js) (revision 26788) @@ -1399,7 +1399,7 @@ }else if(msg.user != null){ userNameByBarcode = msg.user.fullName; var departCode = $('#departCode').val(); - var userOrgUnit = msg.user.userOrgUnit; + var orgUnits = msg.user.orgUnits; //点击选中回收人员或是清点人员或者自送人 if(currentUserType == userType_recycling){ @@ -1410,21 +1410,28 @@ currentUserType = userType_recycling; }else if(currentUserType == userType_departmentSender){ if(departCode == ""){//手工添加的回收申请单,如果先扫描科室自送人,则自动填写回收单的申请科室 - if(userOrgUnit){ + if(orgUnits){ $("#departmentSender").val(userNameByBarcode); - $("#depart").val(userOrgUnit.orgUnitName); - $('#departCode').val(userOrgUnit.orgUnitNameCode); + $("#departmentSenderHidden").val(JSON.stringify(orgUnits)); currentUserType = userType_recycling; } - }else{ - if(userOrgUnit){ - //扫描的科室自送人必须是该申请单的申请科室下的人员 - if(userOrgUnit.orgUnitNameCode != departCode){ - alertDiv('科室自送人与回收科室不一致!'); - return; + }else{ + if(orgUnits){ + var flag = false; + for (var m in orgUnits) { + if (orgUnits[m].orgUnitNameCode == departCode) { + $("#departmentSender").val(userNameByBarcode); + $("#departmentSenderHidden").val(JSON.stringify(orgUnits)); + currentUserType = userType_recycling; + flag = true; + break; + } } - $("#departmentSender").val(userNameByBarcode); - currentUserType = userType_recycling; + + if(!flag){ + //清空科室 + alertDiv('科室自送人与回收科室不一致!'); + } } } } @@ -4079,9 +4086,31 @@ data:'orgUnitCoding=' + encodeURI(departCode), dataType:'json', success:function(dataArray){ - document.getElementById('depart').value = departName; - document.getElementById('departCode').value = departCode; - $("#departmentSender").val("");//清空自送人 + var departmentSenderHidden = $("#departmentSenderHidden").val(); + if(sstsConfig.showSelfTransportorInRecycleForm && departmentSenderHidden != ""){ + var departmentSenderHiddendData = JSON.parse(departmentSenderHidden); + var flag = false; + for (var m in departmentSenderHiddendData) { + if (departmentSenderHiddendData[m].orgUnitNameCode == departCode) { + document.getElementById('depart').value = departmentSenderHiddendData[m].orgUnitName; + document.getElementById('departCode').value = departmentSenderHiddendData[m].orgUnitNameCode; + flag = true; + break; + } + } + + if(!flag){ + //清空科室 + alertDiv('科室自送人与回收科室不一致!'); + document.getElementById('depart').value = ""; + document.getElementById('departCode').value = ""; + } + + }else{ + document.getElementById('depart').value = departName; + document.getElementById('departCode').value = departCode; + } + emptyTousseItemTable(); // $("#tousseItemTable").empty(); if(dataArray.length > 0){ Index: ssts-web/src/main/webapp/disinfectsystem/touchScreen/recycle/recycleForTouchScreen.jsp =================================================================== diff -u -r26778 -r26788 --- ssts-web/src/main/webapp/disinfectsystem/touchScreen/recycle/recycleForTouchScreen.jsp (.../recycleForTouchScreen.jsp) (revision 26778) +++ ssts-web/src/main/webapp/disinfectsystem/touchScreen/recycle/recycleForTouchScreen.jsp (.../recycleForTouchScreen.jsp) (revision 26788) @@ -383,6 +383,7 @@