|
@@ -175,6 +175,7 @@ public class GenerateCodeConsumer {
|
|
|
* 生成码
|
|
|
*/
|
|
|
private void loopGenerateCode(Long qrPackageId) {
|
|
|
+ log.info("1 loopGenerateCode begin -->"+System.currentTimeMillis());
|
|
|
//0-查询码包,校验状态,标记生成中
|
|
|
QrPackage qrPackage = qrPackageMapper.selectById(qrPackageId);
|
|
|
// 码数据已生成,return
|
|
@@ -186,6 +187,7 @@ public class GenerateCodeConsumer {
|
|
|
// 更改生成状态为生成中
|
|
|
qrPackage.setGenerateStatus(QrPackageGenerateStatusEnum.GENERATING.getCode());
|
|
|
qrPackageMapper.updateById(qrPackage);
|
|
|
+ log.info("2 loopGenerateCode update status -->"+System.currentTimeMillis());
|
|
|
|
|
|
//1-准备参数
|
|
|
//查询幅面
|
|
@@ -201,17 +203,16 @@ public class GenerateCodeConsumer {
|
|
|
QueryWrapper<QrPackageBatch> param = new QueryWrapper<>();
|
|
|
param.eq("package_id", qrPackage.getId());
|
|
|
List<QrPackageBatch> qrPackageBatches = qrPackageBatchMapper.selectList(param);
|
|
|
-
|
|
|
+ log.info("3 loopGenerateCode prepared data info -->"+System.currentTimeMillis());
|
|
|
|
|
|
// 存放每列的url
|
|
|
Map<Long, String> urlMap = new LinkedHashMap<>();
|
|
|
-
|
|
|
// key:qr_repertory_column_id + child_index value:QrRepertorySerialNumber,后续会更新流水号
|
|
|
// child_index用于标记同一列的第几个码格式变量
|
|
|
Map<String, QrRepertorySerialNumber> qrRepertorySerialNumberMap = new LinkedHashMap<>();
|
|
|
-
|
|
|
// 处理url和流水号--后续生成码要用到
|
|
|
getUrlAndSerialNumber(qrRepertoryColumnList, qrRepertoryId, urlMap, qrRepertorySerialNumberMap);
|
|
|
+ log.info("4 loopGenerateCode do some qrcode opts -->"+System.currentTimeMillis());
|
|
|
|
|
|
//2-生成二维码
|
|
|
for (QrPackageBatch qrPackageBatch:qrPackageBatches) {
|
|
@@ -227,8 +228,6 @@ public class GenerateCodeConsumer {
|
|
|
//重复次数
|
|
|
int repeatTimes = 0;
|
|
|
|
|
|
-
|
|
|
-
|
|
|
/**
|
|
|
* qrRepertoryColumnList 码库的列
|
|
|
* qrRepertoryId 码库id
|
|
@@ -241,7 +240,8 @@ public class GenerateCodeConsumer {
|
|
|
*/
|
|
|
// 循环生成码
|
|
|
List<QrData> codeList = loopGenerateCode(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();
|
|
@@ -253,12 +253,15 @@ public class GenerateCodeConsumer {
|
|
|
}
|
|
|
//转化为tablestore的对象列表
|
|
|
List<TableStoreEntity> tableStoreEntityList = convertToTableStoreEntity(codeList, qrPackageBatch);
|
|
|
+ log.info("6 loopGenerateCode transform tableStoreEntityList -->"+System.currentTimeMillis());
|
|
|
|
|
|
// table数据库 批量插入
|
|
|
saveTableStore(tableStoreEntityList);
|
|
|
+ log.info("7 loopGenerateCode save tablestore async -->"+System.currentTimeMillis());
|
|
|
|
|
|
// 创建码文件
|
|
|
createCodeFile(qrRepertory,batchNumber,qrBoxCodeFormat,fileList);
|
|
|
+ log.info("8 loopGenerateCode create file -->"+System.currentTimeMillis());
|
|
|
qrDataList.clear();
|
|
|
}
|
|
|
|