|
@@ -163,47 +163,53 @@ public class GenerateCodeServiceImpl implements GenerateCodeService {
|
|
|
|
|
|
//2-生成二维码
|
|
//2-生成二维码
|
|
log.info("码包的批次列表数量为"+qrPackageBatches.size());
|
|
log.info("码包的批次列表数量为"+qrPackageBatches.size());
|
|
- log.info(JsonUtils.toJson(qrPackageBatches));
|
|
|
|
for (QrPackageBatch qrPackageBatch:qrPackageBatches) {
|
|
for (QrPackageBatch qrPackageBatch:qrPackageBatches) {
|
|
- //计算备用码包数量
|
|
|
|
- Long standbyRatio = 0L;
|
|
|
|
- if(null != qrPackage.getStandbyRatio() && qrPackage.getStandbyRatio() != 0){
|
|
|
|
- standbyRatio=new Double( Math.ceil(qrPackageBatch.getBatchQrNumber()*qrPackage.getStandbyRatio()*1.0/100)).longValue();
|
|
|
|
- }
|
|
|
|
- // 这批下的申请数量
|
|
|
|
- Long qrNumber = qrPackageBatch.getBatchQrNumber()+standbyRatio;
|
|
|
|
- //批次号
|
|
|
|
- String batchNumber = qrPackageBatch.getBatchNumber();
|
|
|
|
- //重复次数
|
|
|
|
- int repeatTimes = 0;
|
|
|
|
-
|
|
|
|
- // 循环生成码
|
|
|
|
- List<QrData> codeList = doLoopGenerateCode(qrRepertoryColumnList, qrRepertoryId, urlMap, qrRepertorySerialNumberMap, qrNumber, batchNumber, repeatTimes,qrBoxCodeFormat,splitCache);
|
|
|
|
- log.info("5 loopGenerateCode get codeList -->"+System.currentTimeMillis());
|
|
|
|
- // 更新码库流水号
|
|
|
|
- if (!qrRepertorySerialNumberMap.isEmpty()) {
|
|
|
|
- for (Map.Entry<String, QrRepertorySerialNumber> entry : qrRepertorySerialNumberMap.entrySet()) {
|
|
|
|
- QrRepertorySerialNumber qrRepertorySerialNumber = entry.getValue();
|
|
|
|
- QrRepertorySerialNumber updateSerialNumber = new QrRepertorySerialNumber()
|
|
|
|
- .setId(qrRepertorySerialNumber.getId())
|
|
|
|
- .setSerialNumber(qrRepertorySerialNumber.getSerialNumber());
|
|
|
|
- qrRepertorySerialNumberMapper.updateById(updateSerialNumber);
|
|
|
|
|
|
+ log.info("进入单个批次: "+JsonUtils.toJson(qrPackageBatch));
|
|
|
|
+ try{
|
|
|
|
+ //计算备用码包数量
|
|
|
|
+ Long standbyRatio = 0L;
|
|
|
|
+ if(null != qrPackage.getStandbyRatio() && qrPackage.getStandbyRatio() != 0){
|
|
|
|
+ standbyRatio=new Double( Math.ceil(qrPackageBatch.getBatchQrNumber()*qrPackage.getStandbyRatio()*1.0/100)).longValue();
|
|
|
|
+ }
|
|
|
|
+ // 这批下的申请数量
|
|
|
|
+ Long qrNumber = qrPackageBatch.getBatchQrNumber()+standbyRatio;
|
|
|
|
+ //批次号
|
|
|
|
+ String batchNumber = qrPackageBatch.getBatchNumber();
|
|
|
|
+ //重复次数
|
|
|
|
+ int repeatTimes = 0;
|
|
|
|
+
|
|
|
|
+ // 循环生成码
|
|
|
|
+ List<QrData> codeList = doLoopGenerateCode(qrRepertoryColumnList, qrRepertoryId, urlMap, qrRepertorySerialNumberMap, qrNumber, batchNumber, repeatTimes,qrBoxCodeFormat,splitCache);
|
|
|
|
+ log.info("5 loopGenerateCode get codeList -->"+System.currentTimeMillis());
|
|
|
|
+ // 更新码库流水号
|
|
|
|
+ if (!qrRepertorySerialNumberMap.isEmpty()) {
|
|
|
|
+ for (Map.Entry<String, QrRepertorySerialNumber> entry : qrRepertorySerialNumberMap.entrySet()) {
|
|
|
|
+ QrRepertorySerialNumber qrRepertorySerialNumber = entry.getValue();
|
|
|
|
+ QrRepertorySerialNumber updateSerialNumber = new QrRepertorySerialNumber()
|
|
|
|
+ .setId(qrRepertorySerialNumber.getId())
|
|
|
|
+ .setSerialNumber(qrRepertorySerialNumber.getSerialNumber());
|
|
|
|
+ qrRepertorySerialNumberMapper.updateById(updateSerialNumber);
|
|
|
|
+ }
|
|
}
|
|
}
|
|
|
|
+ //转化为tablestore的对象列表
|
|
|
|
+ List<QrCode> qrCodes = convertToTableStoreEntity(codeList, qrPackageBatch);
|
|
|
|
+ log.info("6 loopGenerateCode transform tableStoreEntityList -->"+System.currentTimeMillis());
|
|
|
|
+
|
|
|
|
+ // table数据库 批量插入
|
|
|
|
+ saveTableStore(qrCodes);
|
|
|
|
+ // 累加数量
|
|
|
|
+ sum = sum + qrCodes.size();
|
|
|
|
+ log.info("7 loopGenerateCode save tablestore async -->"+System.currentTimeMillis());
|
|
|
|
+
|
|
|
|
+ // 创建码文件
|
|
|
|
+ String md5 = createCodeFile(qrRepertory, batchNumber, qrBoxCodeFormat, fileList, codeList);
|
|
|
|
+ fileVerifyMd5List.add(md5);
|
|
|
|
+ log.info("8 loopGenerateCode create file -->"+System.currentTimeMillis());
|
|
|
|
+ }catch(Exception e){
|
|
|
|
+ log.info("单个批次生成码异常",e);
|
|
|
|
+ log.info("qrPackageBatch: "+JsonUtils.toJson(qrPackageBatch));
|
|
}
|
|
}
|
|
- //转化为tablestore的对象列表
|
|
|
|
- List<QrCode> qrCodes = convertToTableStoreEntity(codeList, qrPackageBatch);
|
|
|
|
- log.info("6 loopGenerateCode transform tableStoreEntityList -->"+System.currentTimeMillis());
|
|
|
|
-
|
|
|
|
- // table数据库 批量插入
|
|
|
|
- saveTableStore(qrCodes);
|
|
|
|
- // 累加数量
|
|
|
|
- sum = sum + qrCodes.size();
|
|
|
|
- log.info("7 loopGenerateCode save tablestore async -->"+System.currentTimeMillis());
|
|
|
|
-
|
|
|
|
- // 创建码文件
|
|
|
|
- String md5 = createCodeFile(qrRepertory, batchNumber, qrBoxCodeFormat, fileList, codeList);
|
|
|
|
- fileVerifyMd5List.add(md5);
|
|
|
|
- log.info("8 loopGenerateCode create file -->"+System.currentTimeMillis());
|
|
|
|
|
|
+
|
|
}
|
|
}
|
|
log.info("9 loopGenerateCode all files -->"+System.currentTimeMillis());
|
|
log.info("9 loopGenerateCode all files -->"+System.currentTimeMillis());
|
|
|
|
|