Index: ssts-web/src/main/webapp/disinfectsystem/interfere/interfereRecordForm.js =================================================================== diff -u -r33697 -r35065 --- ssts-web/src/main/webapp/disinfectsystem/interfere/interfereRecordForm.js (.../interfereRecordForm.js) (revision 33697) +++ ssts-web/src/main/webapp/disinfectsystem/interfere/interfereRecordForm.js (.../interfereRecordForm.js) (revision 35065) @@ -2437,7 +2437,8 @@ Ext.Ajax.request( { url : WWWROOT + '/disinfectSystem/sterilization/sterilizationRecordAction!getBarcodeType.do', params : { - barcode : barcode + barcode : barcode, + isInterfere:true }, success : function(response, options) { sterilizationColumnTree.getEl().unmask(); @@ -2562,7 +2563,8 @@ Ext.Ajax.request( { url : WWWROOT + '/disinfectSystem/sterilization/sterilizationRecordAction!getBarcodeType.do', params : { - barcode : barcode + ";" + barcodeEnd + barcode : barcode + ";" + barcodeEnd, + isInterfere:true }, success : function(response, options) { sterilizationColumnTree.getEl().unmask(); Index: ssts-sterile/src/main/java/com/forgon/disinfectsystem/sterilizationmanager/sterilizationrecord/action/SterilizationRecordAction.java =================================================================== diff -u -r34735 -r35065 --- ssts-sterile/src/main/java/com/forgon/disinfectsystem/sterilizationmanager/sterilizationrecord/action/SterilizationRecordAction.java (.../SterilizationRecordAction.java) (revision 34735) +++ ssts-sterile/src/main/java/com/forgon/disinfectsystem/sterilizationmanager/sterilizationrecord/action/SterilizationRecordAction.java (.../SterilizationRecordAction.java) (revision 35065) @@ -730,7 +730,14 @@ BarcodeDevice barcodeDevice = barcodeManager .getBarcodeByBarcode(barcode); - + //这个字段来决定是否从干预界面进入的 + boolean isInterfere = StrutsParamUtils.getBoolPraramValue("isInterfere", false); + String logType = null; + if(isInterfere){ + logType = Log.MODEL_STERILIZATION_INTERFERE; + }else{ + logType = Log.MODEL_STERILIZATION; + } //仅输入条码/篮筐(首)的判断 if (barcodeDevice != null) { if (barcodeDevice instanceof Container) {// 容器 @@ -750,21 +757,21 @@ } } String sanceMsg = String.format("扫描条码:%s,类型: %s,名称:%s", barcode,container.getContainerType(),container.getContainerName()); - appLogManager.saveLog(loginUser, Log.MODEL_STERILIZATION, "扫描", sanceMsg); + appLogManager.saveLog(loginUser, logType, "扫描", sanceMsg); } else if (barcodeDevice instanceof Sterilizer) {// 灭菌炉 Sterilizer sterilizer = (Sterilizer) barcodeDevice; if(!StringUtils.equals(sterilizer.getUseStatus(), Sterilizer.USESTATUS_IN_USE)){ result = "该灭菌炉的使用状态为" + sterilizer.getUseStatus() + ",不能使用!"; }else{ result = STERILIZER; String sanceMsg = String.format("扫描条码:%s,类型: %s,名称:%s", barcode,"灭菌炉",sterilizer.getName()); - appLogManager.saveLog(loginUser, Log.MODEL_STERILIZATION, "扫描", sanceMsg); + appLogManager.saveLog(loginUser, logType, "扫描", sanceMsg); } } else if (barcodeDevice instanceof Sterilisation) {// 灭菌程序 result = STERILISATION; Sterilisation sterilsation = (Sterilisation)barcodeDevice; String sanceMsg = String.format("扫描条码:%s,类型: %s,名称:%s", barcode,"灭菌程序",sterilsation.getSterilisation()); - appLogManager.saveLog(loginUser, Log.MODEL_STERILIZATION, "扫描", sanceMsg); + appLogManager.saveLog(loginUser, logType, "扫描", sanceMsg); } else if (barcodeDevice instanceof TousseInstance) {// 器械包 result = TOUSSEINSTANCE; @@ -774,31 +781,31 @@ TousseDefinition.STR_YES.equals(tousseInstance.getTousseDefinition().getIsTraceable())){ result = "notFixedBarcode"; } - String sanceMsg = String.format("扫描条码:%s,类型: %s,名称:%s", barcode,"器械包",tousseInstance.getTousseName()); - appLogManager.saveLog(loginUser, Log.MODEL_STERILIZATION, "扫描", sanceMsg); + String sanceMsg = String.format("扫描条码:%s,类型: %s,名称:%s", barcode,"器械包",tousseInstance.getTousseName()); + appLogManager.saveLog(loginUser, logType, "扫描", sanceMsg); } else if(barcodeDevice instanceof User){ result = BarcodeDevice.BARCODE_TYPE_USER; User user = (User)barcodeDevice; String sanceMsg = String.format("扫描条码:%s,类型: %s,名称:%s", barcode,"用户",user.getName()); - appLogManager.saveLog(loginUser, Log.MODEL_STERILIZATION, "扫描", sanceMsg); + appLogManager.saveLog(loginUser, logType, "扫描", sanceMsg); }else if(barcodeDevice instanceof Position){ result = BarcodeDevice.BARCODE_TYPE_POSITION; Position position = (Position)barcodeDevice; String sanceMsg = String.format("扫描条码:%s,类型: %s,名称:%s", barcode,"位置",position.getPositionName()); - appLogManager.saveLog(loginUser, Log.MODEL_STERILIZATION, "扫描", sanceMsg); + appLogManager.saveLog(loginUser, logType, "扫描", sanceMsg); } else if (StringUtils.equals(barcodeDevice.getType(), BarcodeDevice.BARCODE_TYPE_BIOLOGICALMONITORTOUSSE)){ if(sterilizationRecordManager.validateBiologyTousseBarcode(barcode)){ result = BarcodeDevice.BARCODE_TYPE_BIOLOGICALMONITORTOUSSE; String sanceMsg = String.format("扫描条码:%s,类型: %s", barcode, "生物监测包"); - appLogManager.saveLog(loginUser, Log.MODEL_STERILIZATION, "扫描", sanceMsg); + appLogManager.saveLog(loginUser, logType, "扫描", sanceMsg); } else { result = "该生物监测包已使用,不能重复使用"; } } else if (StringUtils.equals(barcodeDevice.getType(), BarcodeDevice.BARCODE_TYPE_CHEMISTRYMONITORTOUSSE)){ if(sterilizationRecordManager.validateChemistryTousseBarcode(barcode)){ result = BarcodeDevice.BARCODE_TYPE_CHEMISTRYMONITORTOUSSE; String sanceMsg = String.format("扫描条码:%s,类型: %s", barcode, "化学监测包"); - appLogManager.saveLog(loginUser, Log.MODEL_STERILIZATION, "扫描", sanceMsg); + appLogManager.saveLog(loginUser, logType, "扫描", sanceMsg); } else { result = "该化学监测包已使用,不能重复使用"; } @@ -826,14 +833,14 @@ result = "barcodeEndInvalid"; } String sanceMsg = String.format("扫描条码:%s,类型: %s,名称:%s", barcodeEnd,"篮筐(尾)",container.getContainerName()); - appLogManager.saveLog(loginUser, Log.MODEL_STERILIZATION, "扫描", sanceMsg); + appLogManager.saveLog(loginUser, logType, "扫描", sanceMsg); } else if (barcodeDeviceEnd instanceof TousseInstance) {// 器械包 if(result != TOUSSEINSTANCE){ result = "notTheSame"; } TousseInstance tousseInstance = (TousseInstance)barcodeDeviceEnd; String sanceMsg = String.format("扫描条码:%s,类型: %s,名称:%s", barcodeEnd,"器械包(尾)",tousseInstance.getTousseDefinitionName()); - appLogManager.saveLog(loginUser, Log.MODEL_STERILIZATION, "扫描", sanceMsg); + appLogManager.saveLog(loginUser, logType, "扫描", sanceMsg); }else{ result = "barcodeEndInvalid"; } Index: ssts-sterile/src/main/java/com/forgon/disinfectsystem/sterilizationmanager/sterilizationrecord/service/SterilizationRecordManagerImpl.java =================================================================== diff -u -r34939 -r35065 --- ssts-sterile/src/main/java/com/forgon/disinfectsystem/sterilizationmanager/sterilizationrecord/service/SterilizationRecordManagerImpl.java (.../SterilizationRecordManagerImpl.java) (revision 34939) +++ ssts-sterile/src/main/java/com/forgon/disinfectsystem/sterilizationmanager/sterilizationrecord/service/SterilizationRecordManagerImpl.java (.../SterilizationRecordManagerImpl.java) (revision 35065) @@ -4420,16 +4420,18 @@ tousseInstanceManager.save(tousseInstance); } } - appLogManager.saveLog(AcegiHelper.getLoginUser(), "灭菌干预", Log.TYPE_ADD,"灭菌记录id:" - + sr.getId() + ",干预前信息:" + sr.getSterilizerName() - + ",startDate: " + (sr.getStartDate() == null ? "":sdf.format(sr.getStartDate())) - + ", endDate:" + (sr.getEndDate() == null ? "":sdf.format(sr.getEndDate())) - + ",status : " + sr.getStatus() - + ", purpose : " + sr.getSterilizationPurpose() - + ",frequency : " + sr.getFrequency() - + ",finishComfirmer :" + sr.getFinishComfirmer() - + ",srSituationComfirmer :" + sr.getSrSituationComfirmer() - ); + String msg = "灭菌记录id:" + + sr.getId() + ",干预前信息:" + sr.getSterilizerName() + + ",开始时间:" + (sr.getStartDate() == null ? "":sdf.format(sr.getStartDate())) + + ", 结束时间:" + (sr.getEndDate() == null ? "":sdf.format(sr.getEndDate())) + + ",灭菌状态:" + sr.getStatus() + + ", 器械灭菌:" + sr.getSterilizationPurpose() + + ",当天炉次:" + sr.getFrequency() + + ",完成确认人:" + sr.getFinishComfirmer() + + ",灭菌情况确认人:" + sr.getSrSituationComfirmer() + + ",灭菌员:" + sr.getSterilizationUser() + + ",灭菌程序:" + sr.getSterilizationType(); + // 保存灭菌记录信息 Sterilizer sterilizer = sterilizerManager.getSterilizerByName(sterilizationName); sr.setStartDate(sdf.parse(startDate)); @@ -4445,6 +4447,17 @@ sr.setSrSituationComfirmer(srSituationComfirmer); } saveOrUpdate(sr); + msg += ";干预后信息:" + sr.getSterilizerName() + + ",开始时间:" + (sr.getStartDate() == null ? "":sdf.format(sr.getStartDate())) + + ", 结束时间:" + (sr.getEndDate() == null ? "":sdf.format(sr.getEndDate())) + + ",灭菌状态:" + sr.getStatus() + + ", 器械灭菌:" + sr.getSterilizationPurpose() + + ",当天炉次:" + sr.getFrequency() + + ",完成确认人:" + sr.getFinishComfirmer() + + ",灭菌情况确认人:" + sr.getSrSituationComfirmer() + + ",灭菌员:" + sr.getSterilizationUser() + + ",灭菌程序:" + sr.getSterilizationType(); + appLogManager.saveLog(AcegiHelper.getLoginUser(), "灭菌干预", Log.TYPE_ADD, msg); if(changeStartDate){//洁定旧的灭菌炉(目前即除HS6620之外)接口支持干预修改灭菌开始时间后,重新匹配灭菌参数。因不同接口数据不一致,本次改动也支持这个接口。 ZSWY-147 //决定灭菌炉数据,采用哪种匹配模式 ,默认为循环次数,针对中六增加了开始时间 boolean sterilizaMatchPatternForDate = CssdUtils.getSystemSetConfigByNameBool("sterilizaMatchPatternForDate", false); @@ -6362,6 +6375,9 @@ ti.setSterilizerPosition(null); try { objectDao.saveOrUpdate(ti); + TousseDefinition td = ti.getTousseDefinition(); + appLogManager.saveLog(AcegiHelper.getLoginUser(), Log.MODEL_STERILIZATION_INTERFERE, + Log.TYPE_DELETE, "删除物品,条码:"+ ti.getBarcode() +",类型: "+ td.getTousseType() +",名称:"+ td.getName() +";"); objectDao.excuteSQL(String.format(deleteSql, ti.getId()));//断掉灭菌记录和包实例中间表的关系 delTousseInstances.add(ti); } catch (Exception e) { @@ -6559,6 +6575,9 @@ ti.setSterileFrequency(null); ti.setSterilingType(null); objectDao.saveOrUpdate(ti); + TousseDefinition td = ti.getTousseDefinition(); + appLogManager.saveLog(AcegiHelper.getLoginUser(), Log.MODEL_STERILIZATION_INTERFERE, + Log.TYPE_DELETE, "删除物品,条码:"+ ti.getBarcode() +",类型: "+ td.getTousseType() +",名称:"+ td.getName() +";"); } rb.getContainer().setStatus(Container.CONTAINER_STATUS_STERILIZELOADING);//移除以后需要把篮筐变成灭菌装载状态 rb.setSterilizerPosition(null);