Index: ssts-diposablegoods/src/main/java/com/forgon/disinfectsystem/diposablegoods/service/GoodPurchasePlanManagerImpl.java =================================================================== diff -u -r12785 -r12795 --- ssts-diposablegoods/src/main/java/com/forgon/disinfectsystem/diposablegoods/service/GoodPurchasePlanManagerImpl.java (.../GoodPurchasePlanManagerImpl.java) (revision 12785) +++ ssts-diposablegoods/src/main/java/com/forgon/disinfectsystem/diposablegoods/service/GoodPurchasePlanManagerImpl.java (.../GoodPurchasePlanManagerImpl.java) (revision 12795) @@ -288,7 +288,7 @@ // 时间 Date originalTime = original.getTime(); Date time = entry.getTime(); - if(!originalTime.equals(time)){ + if(originalTime != null && !originalTime.equals(time)){ curGodownEntry.setTime(time); } } Index: ssts-diposablegoods/src/main/java/com/forgon/disinfectsystem/diposablegoods/action/GoodPurchaseAction.java =================================================================== diff -u -r12785 -r12795 --- ssts-diposablegoods/src/main/java/com/forgon/disinfectsystem/diposablegoods/action/GoodPurchaseAction.java (.../GoodPurchaseAction.java) (revision 12785) +++ ssts-diposablegoods/src/main/java/com/forgon/disinfectsystem/diposablegoods/action/GoodPurchaseAction.java (.../GoodPurchaseAction.java) (revision 12795) @@ -154,6 +154,7 @@ String originalItems = StrutsParamUtils.getPraramValue("originalItems", ""); setGoodPurchasePlanPropertiesFromParams(original,originalFormParams,originalItems); + original.setTime(entry.getTime()); setGoodPurchasePlanPropertiesFromParams(entry,null,items); } Index: ssts-basedata/src/main/java/com/forgon/disinfectsystem/barcode/service/BarcodeManagerImpl.java =================================================================== diff -u -r12553 -r12795 --- ssts-basedata/src/main/java/com/forgon/disinfectsystem/barcode/service/BarcodeManagerImpl.java (.../BarcodeManagerImpl.java) (revision 12553) +++ ssts-basedata/src/main/java/com/forgon/disinfectsystem/barcode/service/BarcodeManagerImpl.java (.../BarcodeManagerImpl.java) (revision 12795) @@ -3,20 +3,14 @@ import java.sql.ResultSet; import java.sql.SQLException; import java.util.ArrayList; -import java.util.Collections; import java.util.HashMap; -import java.util.LinkedList; import java.util.List; import java.util.Map; - import org.apache.commons.lang.StringUtils; - import com.forgon.directory.model.BarcodeDevice; import com.forgon.disinfectsystem.entity.basedatamanager.container.Container; import com.forgon.disinfectsystem.entity.basedatamanager.sterilisation.Sterilisation; import com.forgon.disinfectsystem.entity.basedatamanager.toussedefinition.TousseInstance; -import com.forgon.disinfectsystem.entity.invoicemanager.InvoicePlan; -import com.forgon.disinfectsystem.entity.invoicemanager.TimeQuantum; import com.forgon.tools.db.DatabaseUtil; import com.forgon.tools.db.InitDbConnection; import com.forgon.tools.hibernate.ObjectDao; @@ -78,7 +72,14 @@ } public String getMaxBarcodeStr(){ - String sql = "select max(barcode) from barcodedevice"; + String dbName = dbConnection.getDatabase(); + String whereSql = ""; + if (DatabaseUtil.isSqlServer(dbName)) { + whereSql = "where len(barcode) >= 9"; + } else if (DatabaseUtil.isOracle(dbName) || DatabaseUtil.isMySQL(dbName)) { + whereSql = "where length(barcode) >= 9"; + } + String sql = "select max(barcode) from barcodedevice " + whereSql; ResultSet rs = objectDao.executeSql(sql); if(rs != null){ try {