|
@@ -500,12 +500,6 @@ public class GenerateCodeServiceImpl implements GenerateCodeService {
|
|
|
List<QrRepertoryColumnVO> qrRepertoryColumnList = qrRepertory.getQrRepertoryColumnList();
|
|
|
List<String> columnNameList = new ArrayList<>();
|
|
|
StringBuilder content = new StringBuilder();
|
|
|
- //文件是否需要输出系统url(只有当码库只有一列)
|
|
|
- boolean isSystemUrl = false;
|
|
|
- if(CollectionUtils.isNotEmpty(qrRepertoryColumnList) && qrRepertoryColumnList.size()==1){
|
|
|
- QrRepertoryColumnVO qrRepertoryColumnVO = qrRepertoryColumnList.get(0);
|
|
|
- isSystemUrl = QrFormatUrlEnum.SYSTEM_URL.is(qrRepertoryColumnVO.getUrlType());
|
|
|
- }
|
|
|
Map<Long, Integer> colUrlTypeMap = qrRepertoryColumnList.stream().collect(Collectors.toMap(QrRepertoryColumnVO::getId, QrRepertoryColumnVO::getUrlType));
|
|
|
|
|
|
// 1-第一行为每列的名称,用“,”分隔
|
|
@@ -552,11 +546,16 @@ public class GenerateCodeServiceImpl implements GenerateCodeService {
|
|
|
} else {
|
|
|
//如果需要系统url则拼上(有拆分的列就不给url了,没有意义)
|
|
|
if(QrFormatUrlEnum.SYSTEM_URL.is(colUrlTypeMap.get(qrInnerData.getQrRepertoryColumnId()))){
|
|
|
- code = String.format("%s/%s",qmsRouteUrl,code);
|
|
|
+ code = String.format("%s%s",qmsRouteUrl,code);
|
|
|
}
|
|
|
codeTextList.add(code);
|
|
|
}
|
|
|
}
|
|
|
+ //特殊逻辑:如果是盖码,那么将码的内容再放在后面
|
|
|
+ if(QrTypeEnum.CAP.is(qrPackage.getQrType())){
|
|
|
+ codeTextList.add(qrData.getInnerDataList().get(0).getCode());
|
|
|
+ }
|
|
|
+
|
|
|
String innerData = String.join(",",codeTextList);
|
|
|
|
|
|
// *特殊逻辑,单行加密 如果是单行加密就在这个地方加密
|
|
@@ -590,12 +589,13 @@ public class GenerateCodeServiceImpl implements GenerateCodeService {
|
|
|
charset = Charset.forName("GBK");
|
|
|
}
|
|
|
// 生成txt
|
|
|
- FileWriter fileWriter = new FileWriter(file.getPath()+"/"+ batchNumber + ".txt", charset);
|
|
|
+ String txtFileName = "IQMS"+batchNumber;
|
|
|
+ FileWriter fileWriter = new FileWriter(file.getPath()+"/"+ txtFileName + ".txt", charset);
|
|
|
fileWriter.write(contentText);
|
|
|
fileList.add(new File(file.getPath()+"/"+ batchNumber + ".txt"));
|
|
|
|
|
|
//生成md5(用于前端校验是否被替换)
|
|
|
- String fileVerifyMd5 = DigestUtils.md5DigestAsHex(contentText.toString().getBytes(StandardCharsets.UTF_8));
|
|
|
+ String fileVerifyMd5 = DigestUtils.md5DigestAsHex(contentText.toString().getBytes(charset));
|
|
|
return fileVerifyMd5;
|
|
|
}
|
|
|
|