diff --git a/bms-back/bms-system/src/main/java/com/bms/price/service/impl/BmsProductServiceImpl.java b/bms-back/bms-system/src/main/java/com/bms/price/service/impl/BmsProductServiceImpl.java index 2453fb53..edb5b081 100644 --- a/bms-back/bms-system/src/main/java/com/bms/price/service/impl/BmsProductServiceImpl.java +++ b/bms-back/bms-system/src/main/java/com/bms/price/service/impl/BmsProductServiceImpl.java @@ -1586,10 +1586,17 @@ public class BmsProductServiceImpl implements IBmsProductService { return null; } + s = s.trim(); + // Excel NA markers: / 、- 、— 、N/A + if ("/".equals(s) || "-".equals(s) || "\u2014".equals(s) || "\uff0d".equals(s) + || "N/A".equalsIgnoreCase(s) || "NA".equalsIgnoreCase(s)) + { + return null; + } // strip currency / unit suffixes: 56、56元、56 RMB s = s.replace(",", "").replace("\uffe5", "").replace("\u5143", "") .replace("RMB", "").replace("rmb", "").trim(); - if (s.isEmpty()) + if (s.isEmpty() || "/".equals(s)) { return null; } diff --git a/bms-back/bms-system/src/main/java/com/bms/price/service/impl/PrcPriceSetServiceImpl.java b/bms-back/bms-system/src/main/java/com/bms/price/service/impl/PrcPriceSetServiceImpl.java index c6f57b97..1c5c3bd3 100644 --- a/bms-back/bms-system/src/main/java/com/bms/price/service/impl/PrcPriceSetServiceImpl.java +++ b/bms-back/bms-system/src/main/java/com/bms/price/service/impl/PrcPriceSetServiceImpl.java @@ -1031,7 +1031,12 @@ public class PrcPriceSetServiceImpl implements IPrcPriceSetService } continue; } - // New band: always insert weight/country row (fees may be null; editable later). + // New band: skip when Excel has no usable fee (blank / slash = no service). + if (freight == null && registration == null) + { + skippedFee++; + continue; + } PrcPriceSetDetail created = buildDetailFromImportRow( priceSetId, psvId, productCode, productName, row, freight, registration); created.setPspId(pspId); @@ -1041,10 +1046,6 @@ public class PrcPriceSetServiceImpl implements IPrcPriceSetService { touched.add(created.getPsdId()); } - if (freight == null && registration == null) - { - skippedFee++; - } inserted++; } }