|
@@ -133,7 +133,7 @@ public class InOutStorageBomServiceImpl extends ServiceImpl<InOutStorageBomMappe
|
|
|
.orderByAsc(InOutStorage::getInOutStorageTime));
|
|
|
|
|
|
List<InOutStorageErpExportVo> inOutStorageErpExportVoList = new ArrayList<>();
|
|
|
- String dateFormat = "";
|
|
|
+ Map<Long, String> codeMap = new HashMap<>();
|
|
|
for (InOutStorage inOutStorage : inOutStorageList) {
|
|
|
InOutStorageErpExportVo inOutStorageErpExportVo = new InOutStorageErpExportVo();
|
|
|
inOutStorageErpExportVo.setId(inOutStorage.getId());
|
|
@@ -148,16 +148,14 @@ public class InOutStorageBomServiceImpl extends ServiceImpl<InOutStorageBomMappe
|
|
|
inOutStorageErpExportVo.setDocCode("T119");
|
|
|
}
|
|
|
}
|
|
|
- // 获取单号 系统单号 XX-yyMMdd-000001
|
|
|
- String[] codes = inOutStorage.getCode().split("-");
|
|
|
- String substring = codes[1].substring(0, codes[1].length() - 2);
|
|
|
- String format = "-20" + substring;
|
|
|
- if (!Objects.equals(dateFormat, format)) {
|
|
|
- dateFormat = format;
|
|
|
+ // 生成单号,单据类型+yyyyMMddHH
|
|
|
+ Long format = Long.parseLong(DateUtil.format(inOutStorage.getInOutStorageTime(), "-yyyyMMddHH"));
|
|
|
+ if (codeMap.get(format) != null) {
|
|
|
+ continue;
|
|
|
}
|
|
|
- // 后四位生成规则,取系统单号 dd01
|
|
|
- int codeNum = Integer.parseInt(codes[1].substring(codes[1].length() - 2) + codes[2].substring(codes[2].length() - 2));
|
|
|
- String code = inOutStorageErpExportVo.getDocCode() + format + String.format("%04d", codeNum);
|
|
|
+ String code = inOutStorageErpExportVo.getDocCode() + format;
|
|
|
+ codeMap.put(format, code);
|
|
|
+
|
|
|
inOutStorageErpExportVo.setCode(code);
|
|
|
inOutStorageErpExportVo.setCreateTime(DateUtil.format(inOutStorage.getInOutStorageTime(), "yyyy/MM/dd HH:mm:ss"));
|
|
|
inOutStorageErpExportVo.setDeptCode("STWH");
|
|
@@ -172,7 +170,7 @@ public class InOutStorageBomServiceImpl extends ServiceImpl<InOutStorageBomMappe
|
|
|
List<InOutStorageBomErpExportVo> inOutStorageBomErpExportVoList = inOutStorageBomList.stream()
|
|
|
.map(item -> {
|
|
|
InOutStorageBomErpExportVo inOutStorageBomErpExportVo = new InOutStorageBomErpExportVo();
|
|
|
- inOutStorageBomErpExportVo.setCode(map.get(item.getInOutStorageId()));
|
|
|
+ inOutStorageBomErpExportVo.setCode(map.get(Long.parseLong(DateUtil.format(item.getInOutStorageTime(), "-yyyyMMddHH"))));
|
|
|
inOutStorageBomErpExportVo.setBomSpecCode(item.getBomSpecCode());
|
|
|
inOutStorageBomErpExportVo.setQuantity(item.getQuantity().toPlainString());
|
|
|
inOutStorageBomErpExportVo.setWarehouseCode(item.getWarehouseCode());
|