Browse Source

文件名称加上了固定的IQMS
盖码多了串码

tanzhongran 3 years ago
parent
commit
07ed916d3e

+ 9 - 9
abi-cloud-qr-platform-server/src/main/java/com/abi/qms/platform/service/impl/GenerateCodeServiceImpl.java

@@ -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;
     }