diff --git a/uapbd/src/private/nccloud/api/impl/mmbd/bom/APIBomBusinessServiceImpl.java b/uapbd/src/private/nccloud/api/impl/mmbd/bom/APIBomBusinessServiceImpl.java index 40a7657..7efe53a 100644 --- a/uapbd/src/private/nccloud/api/impl/mmbd/bom/APIBomBusinessServiceImpl.java +++ b/uapbd/src/private/nccloud/api/impl/mmbd/bom/APIBomBusinessServiceImpl.java @@ -1600,15 +1600,14 @@ public class APIBomBusinessServiceImpl implements IAPIBomBusinessService { sql.append("AND hcmaterialid = ? "); param.addParam(hcmaterialid); - // 只查询数字版本号,排除非数字版本 + // 只查询数字版本号,排除非数字版本 sql.append("AND REGEXP_LIKE(hversion, '^[0-9]+$') "); + // 如果查询不到数据,默认版本号为1;否则最大版本号加1 + Object mayBeNullVersion = DAO.executeQuery(sql.toString(), param, new ColumnProcessor()); + String number = Objects.isNull(mayBeNullVersion) ? "1" : DAO.executeQuery(sql.toString(), param, new ColumnProcessor()).toString(); + return String.valueOf(Long.parseLong(number)+1); - Long maxVersion = (Long) DAO.executeQuery(sql.toString(), param, new ColumnProcessor()); - - // 如果查询不到数据,默认版本号为1;否则最大版本号加1 - return String.valueOf((maxVersion != null ? maxVersion : 0) + 1); - - } catch (Exception e) { + } catch (Exception e) { throw new BusinessException("计算BOM版本号异常:" + e.getMessage()); } }