diff --git a/sgzb-modules/sgzb-material/src/main/java/com/bonus/sgzb/base/service/impl/ExcelServiceImpl.java b/sgzb-modules/sgzb-material/src/main/java/com/bonus/sgzb/base/service/impl/ExcelServiceImpl.java index af0e5fb..e2fae7d 100644 --- a/sgzb-modules/sgzb-material/src/main/java/com/bonus/sgzb/base/service/impl/ExcelServiceImpl.java +++ b/sgzb-modules/sgzb-material/src/main/java/com/bonus/sgzb/base/service/impl/ExcelServiceImpl.java @@ -161,74 +161,47 @@ public class ExcelServiceImpl implements ExcelService { } } - private void printLevel3Relation(Map>> level3Relation) { for (Map.Entry>> firstLevel : level3Relation.entrySet()) { - boolean outExist = true; System.out.println("level_1: " + firstLevel.getKey()); - //TODO, sql查询:是否有此名字 + parentId=0, select * from ma_part_type where name=? and parent_id=0; MaPartType maPartType_level1 = excelMapper.selectMa(firstLevel.getKey(),0); - //TODO, 以上返回 maPartType_level1 if (Objects.nonNull(maPartType_level1)) { - loopInner(firstLevel, outExist,maPartType_level1.getPaId()); + loopInner(firstLevel, maPartType_level1.getPaId()); } else { - //TODO, insert firstLevel, get id MaPartType maPartType = new MaPartType(); maPartType.setPaName(firstLevel.getKey()); maPartType.setCreateBy(SecurityUtils.getLoginUser().getUserid().toString()); maPartType.setParentId(0L); maPartType.setLevel("1"); excelMapper.insertPaName(maPartType);//如果第一层在数据库中查询不到则插入数据,并且读取到parent_id - outExist = outExist && false; - loopInner(firstLevel, outExist, maPartType.getPaId()); + loopInner(firstLevel, maPartType.getPaId()); } } } - private void loopInner(Map.Entry>> firstLevel, boolean outExist, long firstLevelId) { + private void loopInner(Map.Entry>> firstLevel, long firstLevelId) { for (Map.Entry> secondLevel : firstLevel.getValue().entrySet()) { System.out.println("\tlevel_2: " + secondLevel.getKey()); - //TODO, sql查询:是否有此名字 + parentId=firstLevelId, select * from ma_part_type where name=? and parent_id = firstLevelId; MaPartType maPartType_level2 = excelMapper.selectMa(secondLevel.getKey(),firstLevelId); - //TODO, 以上返回 maPartType_level2 if (Objects.nonNull(maPartType_level2)) { - looplevel3(secondLevel, outExist, maPartType_level2.getPaId()); + looplevel3(secondLevel, maPartType_level2.getPaId()); } else { - //TODO, insert firstLevel, get id - if (!outExist) { - MaPartType maPartType = new MaPartType(); - maPartType.setPaName(secondLevel.getKey()); - maPartType.setCreateBy(SecurityUtils.getLoginUser().getUserid().toString()); - maPartType.setParentId(firstLevelId); - maPartType.setLevel("2"); - excelMapper.insertPaName(maPartType);//如果第一层在数据库中查询不到则插入数据,并且读取到parent_id - outExist = outExist && false; - looplevel3(secondLevel, outExist, maPartType.getPaId()); - } + MaPartType maPartType = new MaPartType(); + maPartType.setPaName(secondLevel.getKey()); + maPartType.setCreateBy(SecurityUtils.getLoginUser().getUserid().toString()); + maPartType.setParentId(firstLevelId); + maPartType.setLevel("2"); + excelMapper.insertPaName(maPartType);//如果第一层在数据库中查询不到则插入数据,并且读取到parent_id + looplevel3(secondLevel, maPartType.getPaId()); } } } - private void looplevel3(Map.Entry> secondLevel, boolean outExist, long secondLevelId) { + private void looplevel3(Map.Entry> secondLevel, long secondLevelId) { for (MapType thirdLevel : secondLevel.getValue()) { System.out.println("\t\tlevel_3: " + thirdLevel); - //TODO, sql查询:是否有此名字 + parentId=secondLevelId, select * from ma_part_type where name=? and parent_id = secondLevelId; MaPartType maPartType_level3 = excelMapper.selectMa(thirdLevel.getPaName(),secondLevelId); - //TODO, 以上返回 maPartType_level3 - if (Objects.nonNull(maPartType_level3)) { - if (!outExist) { - //TODO insert - MaPartType maPartType = new MaPartType(); - maPartType.setPaName(thirdLevel.getPaName()); - maPartType.setCreateBy(SecurityUtils.getLoginUser().getUserid().toString()); - maPartType.setUnitId(thirdLevel.getUnitId()); - maPartType.setBuyPrice(thirdLevel.getBuyPrice()); - maPartType.setParentId(secondLevelId); - maPartType.setLevel("3"); - excelMapper.insertPaName(maPartType);//如果第一层在数据库中查询不到则插入数据,并且读取到parent_id - } - } else { - //TODO insert + if (Objects.isNull(maPartType_level3)) { MaPartType maPartType = new MaPartType(); maPartType.setPaName(thirdLevel.getPaName()); maPartType.setCreateBy(SecurityUtils.getLoginUser().getUserid().toString());