Commit 1ec79e6e authored by jianhua.zhang's avatar jianhua.zhang

新增交易统计数据接口

parent 90225ca1
......@@ -331,6 +331,7 @@ public class TransactionControllerV1 {
model.setBlockHash(trans.getBlockId());
model.setBlockNumber(trans.getNumber().intValue());
model.setFrom(trans.getOwnerAddress());
model.setInput(trans.getData());
if (!StringUtils.isEmpty(trans.getContractAddress())) {
model.setTo(trans.getContractAddress());
} else {
......@@ -438,7 +439,7 @@ public class TransactionControllerV1 {
}
/**
* 首页图表
* 获取最新块高度
*
* @return
*/
......@@ -448,6 +449,36 @@ public class TransactionControllerV1 {
return ResponseKit.success(lastBlock.getLastBlockNum());
}
/**
* 图表
*
* @return
*/
@RequestMapping(value="indexGetChartDetailInfo", method = RequestMethod.GET)
public ApiResponse indexGetChartDetailInfo() {
List<BlockDayCensus> list = this.blockDayCensusService.getByExample(new BlockDayCensusExample());
List<ChartModel> modelList = new ArrayList<>();
if (!CollectionUtils.isEmpty(list)) {
ChartModel model;
int id = 1;
for (int i = 0; i < list.size(); i++) {
model = ChartModel.getInstance();
model.setId(id);
long time = DateUtil.getDateFromDateStr(list.get(i).getCensusDate(), DateUtil.PATTERN_YMD);
model.setTime(time/1000);
model.setValue(list.get(i).getTotalVolume());
model.setAvg_block_time(list.get(i).getGenBlockAverTime());
model.setAvg_block_size(list.get(i).getTotalBlockBytes());
model.setTotal_block_count(list.get(i).getGenBlockTotalNum());
modelList.add(model);
id++;
}
}
return ResponseKit.success(modelList);
}
public final static boolean isNumeric(String s) {
if (s != null && !"".equals(s.trim())) {
return s.matches("^[0-9]*$");
......
......@@ -45,7 +45,7 @@ public class Engine {
*/
private AddressBalanceHandler addressHandler;
public static final int FETCHER_NUM = 5;
public static final int FETCHER_NUM = 10;
public Engine(String name) {
this.executor = new Executor(name);
......
package com.wuban.tron.explore.param.response;
import lombok.Builder;
import lombok.Data;
@Data
@Builder
public class ChartModel {
private int id;
private long time;
private int value;
private long avg_difficulty;
private int est_hash_rate;
private long avg_block_time;
private int avg_block_size;
private int total_block_count;
private int total_uncles_count;
private int new_address_seen;
public static ChartModel getInstance() {
return ChartModel.builder()
.id(0)
.time(0)
.value(0)
.avg_difficulty(0L)
.est_hash_rate(0)
.avg_block_time(0)
.avg_block_size(0)
.total_block_count(0)
.total_uncles_count(0)
.new_address_seen(0)
.build();
}
}
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment