package com.terra.coal.service;
|
|
import com.terra.coal.entity.Coal54Entity;
|
import com.terra.coal.entity.StaticData;
|
import com.terra.coal.helper.StringHelper;
|
import com.terra.coal.mapper.Coal54Mapper;
|
import org.springframework.beans.factory.annotation.Autowired;
|
import org.springframework.stereotype.Service;
|
|
import java.io.BufferedReader;
|
import java.io.File;
|
import java.io.FileReader;
|
import java.io.IOException;
|
import java.math.BigDecimal;
|
import java.util.ArrayList;
|
import java.util.List;
|
|
/**
|
* CoalService
|
* @author WWW
|
*/
|
@Service
|
public class MainService {
|
@Autowired
|
Coal54Mapper coal54Mapper;
|
|
/**
|
* 加载54数据(入库)
|
*/
|
public Integer load54Data(File f) throws IOException {
|
FileReader fr = new FileReader(f);
|
BufferedReader reader = new BufferedReader(fr);
|
|
int rows = 0, cc = 0;
|
String line = reader.readLine();
|
List<Coal54Entity> list = new ArrayList<>();
|
while (null != line) {
|
cc++;
|
if (cc > 2) {
|
Coal54Entity entity = getCoal54(line);
|
if (null != entity) {
|
list.add(entity);
|
}
|
}
|
if (list.size() > 99) {
|
rows += coal54Mapper.insertBatch(list);
|
list.clear();
|
}
|
|
line = reader.readLine();
|
}
|
reader.close();
|
|
if (list.size() > 0) {
|
rows += coal54Mapper.insertBatch(list);
|
list.clear();
|
}
|
|
return rows;
|
}
|
|
private Coal54Entity getCoal54(String str) {
|
if (StringHelper.isEmpty(str)) {
|
return null;
|
}
|
|
String[] strs = str.split(",");
|
if (strs.length < StaticData.NINE) {
|
return null;
|
}
|
|
// 36240.00000,-69460.00000,634.00000,1280.000,1280.000,128.000,岩石,1,1,
|
try {
|
BigDecimal x = new BigDecimal("4" + strs[1].replace("-", ""));
|
BigDecimal y = new BigDecimal("50" + strs[0]);
|
BigDecimal top = new BigDecimal(strs[2]);
|
BigDecimal clong = new BigDecimal(strs[3]);
|
BigDecimal width = new BigDecimal(strs[4]);
|
BigDecimal height = new BigDecimal(strs[5]);
|
String ctype = strs[6];
|
BigDecimal density = new BigDecimal(strs[7]);
|
BigDecimal gangue = new BigDecimal(strs[8]);
|
|
return new Coal54Entity(x, y, top, clong, width, height, ctype, density, gangue);
|
} catch (Exception ex) {
|
return null;
|
}
|
}
|
}
|