publish 0.9.7

This commit is contained in:
曾文豪
2023-04-06 00:01:26 +08:00
parent dda5f64910
commit 47c9251389
3 changed files with 50 additions and 5 deletions

View File

@@ -17,7 +17,8 @@ import com.tiesheng.core.pojos.dao.CoreLogOperation;
import com.tiesheng.core.pojos.dao.CoreLogProcess;
import com.tiesheng.core.pojos.dao.CorePlatformUnique;
import com.tiesheng.core.pojos.vo.ProcessDetailVo;
import com.tiesheng.core.util.LogProcessConsumer;
import com.tiesheng.core.util.ProcessListConsumer;
import com.tiesheng.core.util.ProcessPageConsumer;
import com.tiesheng.login.config.token.TsTokenConfig;
import com.tiesheng.login.config.token.bean.TokenBean;
import com.tiesheng.util.ServletKit;
@@ -69,7 +70,7 @@ public class CoreLogService extends TsServiceBase<CoreLogOperationMapper, CoreLo
* @param type 类型 import-导入sync-同步
* @param list 要导入的数据
*/
public <T> CoreLogProcess addProcess(String title, String type, List<T> list, LogProcessConsumer consumer) {
public <T> CoreLogProcess addProcess(String title, String type, List<T> list, ProcessListConsumer consumer) {
if (CollUtil.isEmpty(list)) {
throw new ApiException("文件中不存在数据");
}
@@ -83,7 +84,7 @@ public class CoreLogService extends TsServiceBase<CoreLogOperationMapper, CoreLo
ThreadUtil.execute(() -> {
CollUtil.split(list, 100).forEach((it) -> {
int accept = consumer.accept(coreLogProcess, it);
int accept = consumer.accept(it);
coreLogProcess.setSuccessNum(coreLogProcess.getSuccessNum() + accept);
coreLogProcess.setFailNum(coreLogProcess.getFailNum() + 100 - accept);
@@ -100,6 +101,30 @@ public class CoreLogService extends TsServiceBase<CoreLogOperationMapper, CoreLo
return coreLogProcess;
}
public CoreLogProcess addProcess(String title, String type, ProcessPageConsumer consumer) {
CoreLogProcess coreLogProcess = new CoreLogProcess();
coreLogProcess.setTitle(title);
coreLogProcess.setTotal(0);
coreLogProcess.setType(type);
coreLogProcess.setSuccessNum(0);
coreLogProcess.setFailNum(0);
coreLogProcessMapper.insert(coreLogProcess);
ThreadUtil.execute(() -> {
int pageSize = 1000;
int pageNum = 1, lastCount = pageSize;
while (lastCount == pageSize) {
lastCount = consumer.accept(pageNum, pageSize);
coreLogProcess.setSuccessNum(lastCount);
if (lastCount != pageSize) {
coreLogProcess.setStatus(1);
}
coreLogProcessMapper.updateById(coreLogProcess);
}
});
return coreLogProcess;
}
/**
* 根据id 获取过程详情

View File

@@ -4,7 +4,7 @@ import com.tiesheng.core.pojos.dao.CoreLogProcess;
import java.util.List;
public interface LogProcessConsumer {
public interface ProcessListConsumer {
/**
@@ -14,7 +14,7 @@ public interface LogProcessConsumer {
* @param <T>
* @return 返回成功的数量
*/
<T> int accept(CoreLogProcess process, List<T> list);
<T> int accept(List<T> list);
/**

View File

@@ -0,0 +1,20 @@
package com.tiesheng.core.util;
import com.tiesheng.core.pojos.dao.CoreLogProcess;
import java.util.List;
public interface ProcessPageConsumer {
/**
* 分页数据
*
* @param pageNum
* @param pageSize
* @return 返回成功的数量
*/
int accept(Integer pageNum, Integer pageSize);
}