Index: ssts-maintain/src/main/java/com/forgon/disinfectsystem/maintain/device/service/GetingeDataManagerImpl.java
===================================================================
diff -u -r40611 -r41141
--- ssts-maintain/src/main/java/com/forgon/disinfectsystem/maintain/device/service/GetingeDataManagerImpl.java (.../GetingeDataManagerImpl.java) (revision 40611)
+++ ssts-maintain/src/main/java/com/forgon/disinfectsystem/maintain/device/service/GetingeDataManagerImpl.java (.../GetingeDataManagerImpl.java) (revision 41141)
@@ -626,16 +626,16 @@
if( line.contains("") && line.contains(""))
{
cycleCounter = getValueByKey(line,"PROCCYCLE");
- if(isExistDataForGetingeCommon(cycleCounter, machineNumber)){
- break;
- }
gtRecord.setCycles(Long.valueOf(cycleCounter));
}else if(line.contains("") && line.contains("")){
phase = getValueByKey(line,"PHASE");
}else if( line.contains("") && line.contains(""))
{
String timeStr = getValueByKey(line,"PROCSTARTTIME");
startDate = gedDate(timeStr);
+ if(isExistDataForGetingeCommon(startDate, machineNumber)){
+ break;
+ }
String beginStartTimeStr = null;
String endStartTimeStr = null;
if(sterilizaMatchPatternForDate || !DeviceInterface.PARAMATCHINGMETHOD_CYCLECOUNTER.equals(devInterface.getParaMatchingMethod())){
@@ -1292,15 +1292,18 @@
/**
* 验证此机器号此灭菌锅次的数据是否已经保存过,避免重复保存
* @param machineNumber 机器号
- * @param operationTimes 运转次数
* @return
*/
- private boolean isExistDataForGetingeCommon(String cycleCounter, String machineNumber){
+ private boolean isExistDataForGetingeCommon(Date startTime, String machineNumber){
+ Date beginStartTime = new Date(startTime.getTime() - 1*60*1000);
+ Date endStartTime = new Date(startTime.getTime() + 1*60*1000);
+ String beginStartTimeStr = ForgonDateUtils.safelyFormatDate(beginStartTime,ForgonDateUtils.SIMPLEDATEFORMAT_YYYYMMDDHHMMSS,"");
+ String endStartTimeStr = ForgonDateUtils.safelyFormatDate(endStartTime,ForgonDateUtils.SIMPLEDATEFORMAT_YYYYMMDDHHMMSS,"");
String sql = "select count(*) from "
+ GtCommonSterilizerRecord.class.getSimpleName()
+ " where machineNumber='"
+ machineNumber
- +"' and cycles=" + cycleCounter;
+ + " and " + dateQueryAdapter.dateAreaSql("startDate", beginStartTimeStr, endStartTimeStr, false);;
if(objectDao.countBySql(sql) > 0){
return true;
}