Index: ssts-webservice/src/main/java/com/forgon/disinfectsystem/webservice/service/ServiceManagerImpl.java =================================================================== diff -u -r33432 -r33509 --- ssts-webservice/src/main/java/com/forgon/disinfectsystem/webservice/service/ServiceManagerImpl.java (.../ServiceManagerImpl.java) (revision 33432) +++ ssts-webservice/src/main/java/com/forgon/disinfectsystem/webservice/service/ServiceManagerImpl.java (.../ServiceManagerImpl.java) (revision 33509) @@ -92,6 +92,7 @@ import com.forgon.disinfectsystem.entity.basedatamanager.operationRoom.OperationRoom; import com.forgon.disinfectsystem.entity.basedatamanager.position.Position; import com.forgon.disinfectsystem.entity.basedatamanager.position.TousseOperation; +import com.forgon.disinfectsystem.entity.basedatamanager.signRecord.SignRecord; import com.forgon.disinfectsystem.entity.basedatamanager.sterilisation.Sterilisation; import com.forgon.disinfectsystem.entity.basedatamanager.sterilizer.Sterilizer; import com.forgon.disinfectsystem.entity.basedatamanager.supplyroomconfig.SupplyRoomConfig; @@ -3533,6 +3534,20 @@ } if(DatabaseUtil.isPoIdValid(extraParam.optLong("signRecordId"))){ signRecordId = extraParam.optLong("signRecordId"); + }else{ + String signUserName = AcegiHelper.getLoginUserFullName(); + String signUserCode = AcegiHelper.getLoginUser().getUserName(); + String departCoding = AcegiHelper.getCurrentOrgUnitCode(); + + SignRecord sr = new SignRecord(); + sr.setSignUserName(signUserName); + sr.setDepartCode(departCoding); + sr.setSignUserCode(signUserCode); + Date now = new Date(); + sr.setSignDate(now); + sr.setCreateDate(now); + objectDao.save(sr); + signRecordId = sr.getId(); } } return tousseInstanceManager.batchSignTousseInstanceByBarcode(barcode, signRecordId , beginDate, endDate); Index: ssts-tousse/src/main/java/com/forgon/disinfectsystem/tousse/toussedefinition/service/TousseInstanceManagerImpl.java =================================================================== diff -u -r33507 -r33509 --- ssts-tousse/src/main/java/com/forgon/disinfectsystem/tousse/toussedefinition/service/TousseInstanceManagerImpl.java (.../TousseInstanceManagerImpl.java) (revision 33507) +++ ssts-tousse/src/main/java/com/forgon/disinfectsystem/tousse/toussedefinition/service/TousseInstanceManagerImpl.java (.../TousseInstanceManagerImpl.java) (revision 33509) @@ -3337,8 +3337,7 @@ try{ if(tousseInstance != null && canSign(tousseInstance,signerOrgUnitCoding, beginDate, endDate)){ // 发货单签收增加扫描包条码签收功能(GGSRMYY-105) - if (ConfigUtils.getSystemSetConfigByNameInt("signModuleVersion", 1) == 2 - || ConfigUtils.getSystemSetConfigByNameInt("departmentSignByTousseVersionForPDA", 1) == 2) { + if (ConfigUtils.getSystemSetConfigByNameInt("signModuleVersion", 1) == 2) { if(signRecord == null){ // 新建签收记录并返回签收记录id String departCode = AcegiHelper.getCurrentOrgUnitCode(); @@ -3358,6 +3357,13 @@ signRecord.setSignDate(new Date()); objectDao.saveOrUpdate(signRecord); } + }else{ + if(signRecord != null){ + // 修改原来的签收记录 + signRecord.setSignAmount(signRecord.getSignAmount() + 1); + signRecord.setSignDate(new Date()); + objectDao.saveOrUpdate(signRecord); + } } if(tousseInstance.isComboTousse()){ //聚合包还需要签收其下的普通包实例