解决修改商品条码会导致条码丢失的bug

This commit is contained in:
jishenghua
2025-04-13 13:30:54 +08:00
parent fd8b56d51c
commit 29ac8d4e29

View File

@@ -96,18 +96,20 @@ public class MaterialExtendService {
} }
} }
//针对多属性商品要考虑到有条码被删的情况,需要和原来的条码明细进行对比 //针对多属性商品要考虑到有条码被删的情况,需要和原来的条码明细进行对比
//1.先查询原来的条码列表 if(StringUtil.isNotEmpty(obj.getString("manySku"))) {
List<MaterialExtendVo4List> meList = materialExtendMapperEx.getDetailList(materialId); //1.先查询原来的条码列表
//2.构造新的条码列表map List<MaterialExtendVo4List> meList = materialExtendMapperEx.getDetailList(materialId);
Map<String, String> barCodeMap = new HashMap<>(); //2.构造新的条码列表map
for (int i = 0; i < meArr.size(); i++) { Map<String, String> barCodeMap = new HashMap<>();
JSONObject tempJson = meArr.getJSONObject(i); for (int i = 0; i < meArr.size(); i++) {
barCodeMap.put(tempJson.getString("barCode"),tempJson.getString("barCode")); JSONObject tempJson = meArr.getJSONObject(i);
} barCodeMap.put(tempJson.getString("barCode"),tempJson.getString("barCode"));
//3.如果老的条码在新的里面不存在,则丢入删除队列 }
for(MaterialExtendVo4List me: meList) { //3.如果老的条码在新的里面不存在,则丢入删除队列
if(barCodeMap.get(me.getBarCode()) == null) { for(MaterialExtendVo4List me: meList) {
deletedJson.add(me.getId()); if(barCodeMap.get(me.getBarCode()) == null) {
deletedJson.add(me.getId());
}
} }
} }
} }