|
@@ -11,10 +11,12 @@ import com.slibra.business.mapper.*;
|
|
|
import com.slibra.common.core.domain.TXinyiDaily;
|
|
|
import com.slibra.common.core.controller.BaseController;
|
|
|
import com.slibra.common.utils.DateUtils;
|
|
|
+import com.slibra.common.utils.StringUtils;
|
|
|
import lombok.extern.slf4j.Slf4j;
|
|
|
import org.apache.ibatis.session.ExecutorType;
|
|
|
import org.apache.ibatis.session.SqlSession;
|
|
|
import org.apache.ibatis.session.SqlSessionFactory;
|
|
|
+import org.springframework.beans.BeanUtils;
|
|
|
import org.springframework.beans.factory.annotation.Autowired;
|
|
|
import org.springframework.util.CollectionUtils;
|
|
|
import org.springframework.web.bind.annotation.*;
|
|
@@ -25,6 +27,7 @@ import java.math.RoundingMode;
|
|
|
import java.time.LocalDateTime;
|
|
|
import java.time.format.DateTimeFormatter;
|
|
|
import java.util.*;
|
|
|
+import java.util.stream.Collectors;
|
|
|
|
|
|
import static com.slibra.common.constant.MyConstants.*;
|
|
|
import static com.slibra.common.constant.MyConstants.BigDecimal_100;
|
|
@@ -60,6 +63,12 @@ public class HandleDataController extends BaseController
|
|
|
@Autowired
|
|
|
private TXinyiBigTableHourMapper tXinyiBigTableHourMapper;
|
|
|
|
|
|
+ @Autowired
|
|
|
+ private TXinyiBigTableDayMapper tXinyiBigTableDayMapper;
|
|
|
+
|
|
|
+ @Autowired
|
|
|
+ private TXinyiBigTableMonthMapper tXinyiBigTableMonthMapper;
|
|
|
+
|
|
|
@Autowired
|
|
|
private SqlSessionFactory sqlSessionFactory;
|
|
|
|
|
@@ -857,9 +866,13 @@ public class HandleDataController extends BaseController
|
|
|
return "ok;耗时:" + (end - begin) /1000 + "秒。";
|
|
|
}
|
|
|
|
|
|
- public static void main(String[] args) {
|
|
|
+ public void main(String[] args) {
|
|
|
|
|
|
+ // handleBigTableDayHistoryData();
|
|
|
|
|
|
+ // HandleDataController handleDataController = new HandleDataController();
|
|
|
+ //
|
|
|
+ // handleDataController.handleBigTableDayHistoryData();
|
|
|
|
|
|
// File file = new File("C:\\Users\\10109\\Desktop\\新程序\\历史数据");
|
|
|
// if(file.isDirectory()){
|
|
@@ -929,6 +942,228 @@ public class HandleDataController extends BaseController
|
|
|
return sb;
|
|
|
}
|
|
|
|
|
|
+ public BigDecimal getListAvg (Collection<BigDecimal> bigDecimals) {
|
|
|
+ if (bigDecimals.isEmpty()) {
|
|
|
+ return null;
|
|
|
+ }
|
|
|
+
|
|
|
+ BigDecimal sum = bigDecimals.stream()
|
|
|
+ .reduce(BigDecimal.ZERO, BigDecimal::add);
|
|
|
+
|
|
|
+ int size = bigDecimals.size();
|
|
|
+ return sum.divide(new BigDecimal(size), 6, RoundingMode.HALF_UP);
|
|
|
+ }
|
|
|
+
|
|
|
+ public String formatList(List<BigDecimal> list) {
|
|
|
+ if (CollectionUtils.isEmpty(list)) {
|
|
|
+ return null;
|
|
|
+ }
|
|
|
+
|
|
|
+ boolean isNullList = list.stream().allMatch(x -> x == null);
|
|
|
+
|
|
|
+ return isNullList ? null : list.toString();
|
|
|
+ }
|
|
|
+
|
|
|
+
|
|
|
+ /**
|
|
|
+ * 处理big_table_month历史数据
|
|
|
+ * @return
|
|
|
+ */
|
|
|
+ @GetMapping("/handleBigTableMonthHistoryData")
|
|
|
+ public String handleBigTableMonthHistoryData() {
|
|
|
+ log.info("进入了处理big_table_month历史数据");
|
|
|
+ long begin = System.currentTimeMillis();
|
|
|
+
|
|
|
+ List<TXinyiBigTableDay> tXinyiBigTableDayList = tXinyiBigTableDayMapper.selectTXinyiBigTableDayByMonthAvg();
|
|
|
+
|
|
|
+ if ( !CollectionUtils.isEmpty(tXinyiBigTableDayList) ) {
|
|
|
+
|
|
|
+ for (int i = 0; i < tXinyiBigTableDayList.size(); i++) {
|
|
|
+ TXinyiBigTableDay tableDay = tXinyiBigTableDayList.get(i);
|
|
|
+
|
|
|
+ TXinyiBigTableMonth tableMonth = new TXinyiBigTableMonth();
|
|
|
+
|
|
|
+ ArrayList<BigDecimal> gyHycRjyAll = new ArrayList<>();
|
|
|
+ ArrayList<BigDecimal> gyHycRjyZdAll = new ArrayList<>();
|
|
|
+ ArrayList<BigDecimal> gyHycWnndAll = new ArrayList<>();
|
|
|
+
|
|
|
+ ArrayList<BigDecimal> rbHycRjyAll = new ArrayList<>();
|
|
|
+ ArrayList<BigDecimal> rbHycWnndAll = new ArrayList<>();
|
|
|
+ ArrayList<BigDecimal> rbYycRjyAll = new ArrayList<>();
|
|
|
+ ArrayList<BigDecimal> rbQycRjyAll = new ArrayList<>();
|
|
|
+ ArrayList<BigDecimal> rbWncjbAll = new ArrayList<>();
|
|
|
+ ArrayList<BigDecimal> rbWntjzsAll = new ArrayList<>();
|
|
|
+ ArrayList<BigDecimal> rbHfxwnndAll = new ArrayList<>();
|
|
|
+
|
|
|
+ ArrayList<BigDecimal> hyHycxsyAll = new ArrayList<>();
|
|
|
+ ArrayList<BigDecimal> hyQyanAll = new ArrayList<>();
|
|
|
+ ArrayList<BigDecimal> hyQyckxsyAll = new ArrayList<>();
|
|
|
+ ArrayList<BigDecimal> hyHyzlsyAll = new ArrayList<>();
|
|
|
+
|
|
|
+ gyHycRjyAll.add(tableDay.getGyOneHymdDo());
|
|
|
+ gyHycRjyAll.add(tableDay.getGyTwoHymdDo());
|
|
|
+ gyHycRjyZdAll.add(tableDay.getGyOneHyzdDo());
|
|
|
+ gyHycRjyZdAll.add(tableDay.getGyTwoHyzdDo());
|
|
|
+ gyHycWnndAll.add(tableDay.getGyOneMlss());
|
|
|
+ gyHycWnndAll.add(tableDay.getGyTwoMlss());
|
|
|
+
|
|
|
+ rbHycRjyAll.add(tableDay.getGyOneHymdDo());
|
|
|
+ rbHycRjyAll.add(tableDay.getGyTwoHymdDo());
|
|
|
+ rbHycWnndAll.add(tableDay.getRbShcHyOneMlss());
|
|
|
+ rbHycWnndAll.add(tableDay.getRbShcHyTwoMlss());
|
|
|
+ rbYycRjyAll.add(tableDay.getRbShcYyOneDo());
|
|
|
+ rbYycRjyAll.add(tableDay.getRbShcYyTwoDo());
|
|
|
+ rbQycRjyAll.add(tableDay.getRbShcQyOneDo());
|
|
|
+ rbQycRjyAll.add(tableDay.getRbShcQyTwoDo());
|
|
|
+ rbWncjbAll.add(tableDay.getRbShcHyOneSv());
|
|
|
+ rbWncjbAll.add(tableDay.getRbShcHyTwoSv());
|
|
|
+ rbWntjzsAll.add(tableDay.getRbShcHyOneSvi());
|
|
|
+ rbWntjzsAll.add(tableDay.getRbShcHyTwoSvi());
|
|
|
+ rbHfxwnndAll.add(tableDay.getRbShcHyOneMlvss());
|
|
|
+ rbHfxwnndAll.add(tableDay.getRbShcHyTwoMlvss());
|
|
|
+
|
|
|
+ hyHycxsyAll.add(tableDay.getHyNo3Hlj1Jqr());
|
|
|
+ hyHycxsyAll.add(tableDay.getHyNo3Hlj2Jqr());
|
|
|
+ hyQyanAll.add(tableDay.getHyNh31Jqr());
|
|
|
+ hyQyanAll.add(tableDay.getHyNh32Jqr());
|
|
|
+ hyQyckxsyAll.add(tableDay.getHyNo3Qyc1Jqr());
|
|
|
+ hyQyckxsyAll.add(tableDay.getHyNo3Qyc2Jqr());
|
|
|
+ hyHyzlsyAll.add(tableDay.getHyTpHl1Jqr());
|
|
|
+ hyHyzlsyAll.add(tableDay.getHyTpHl2Jqr());
|
|
|
+
|
|
|
+ tableDay.setGyHycRjyAll(formatList(gyHycRjyAll));
|
|
|
+ tableDay.setGyHycRjyZdAll(formatList(gyHycRjyZdAll));
|
|
|
+ tableDay.setGyHycWnndAll(formatList(gyHycWnndAll));
|
|
|
+ tableDay.setRbHycRjyAll(formatList(rbHycRjyAll));
|
|
|
+ tableDay.setRbHycWnndAll(formatList(rbHycWnndAll));
|
|
|
+ tableDay.setRbYycRjyAll(formatList(rbYycRjyAll));
|
|
|
+ tableDay.setRbQycRjyAll(formatList(rbQycRjyAll));
|
|
|
+ tableDay.setRbWncjbAll(formatList(rbWncjbAll));
|
|
|
+ tableDay.setRbWntjzsAll(formatList(rbWntjzsAll));
|
|
|
+ tableDay.setRbHfxwnndAll(formatList(rbHfxwnndAll));
|
|
|
+ tableDay.setHyHycxsyAll(formatList(hyHycxsyAll));
|
|
|
+ tableDay.setHyQyanAll(formatList(hyQyanAll));
|
|
|
+ tableDay.setHyQyckxsyAll(formatList(hyQyckxsyAll));
|
|
|
+ tableDay.setHyHyzlsyAll(formatList(hyHyzlsyAll));
|
|
|
+
|
|
|
+ BeanUtils.copyProperties(tableDay, tableMonth);
|
|
|
+
|
|
|
+ tXinyiBigTableMonthMapper.insertTXinyiBigTableMonth(tableMonth);
|
|
|
+ }
|
|
|
+ }
|
|
|
+
|
|
|
+ long end = System.currentTimeMillis();
|
|
|
+ return "ok;耗时:" + (end - begin) / 1000 + "秒。";
|
|
|
+ }
|
|
|
+
|
|
|
+
|
|
|
+ /**
|
|
|
+ * 处理big_table_day历史数据
|
|
|
+ * @return
|
|
|
+ */
|
|
|
+ @GetMapping("/handleBigTableDayHistoryData")
|
|
|
+ public String handleBigTableDayHistoryData() {
|
|
|
+ log.info("进入了 处理big_table_hour历史数据");
|
|
|
+ long begin = System.currentTimeMillis();
|
|
|
+
|
|
|
+ List<TXinyiBigTableHour> tXinyiBigTableHours = tXinyiBigTableHourMapper.selectTXinyiBigTableHourByTestDate();
|
|
|
+ if ( !CollectionUtils.isEmpty(tXinyiBigTableHours) ) {
|
|
|
+
|
|
|
+ List<TXinyiBigTableDay> bigTableDayList = new ArrayList<>();
|
|
|
+
|
|
|
+ for (int i = 0; i < tXinyiBigTableHours.size(); i++) {
|
|
|
+ TXinyiBigTableHour tXinyiBigTableHour = tXinyiBigTableHours.get(i);
|
|
|
+ String testDate = tXinyiBigTableHour.getTestDate();
|
|
|
+
|
|
|
+ TXinyiBigTableHour tableHour = tXinyiBigTableHourMapper.selectTXinyiBigTableHourAvg(testDate);
|
|
|
+
|
|
|
+ if (!Objects.isNull(tableHour)) {
|
|
|
+ TXinyiBigTableDay tableDay = new TXinyiBigTableDay();
|
|
|
+
|
|
|
+ BeanUtils.copyProperties(tableHour, tableDay);
|
|
|
+
|
|
|
+ ArrayList<BigDecimal> gyHycRjyAll = new ArrayList<>();
|
|
|
+ ArrayList<BigDecimal> gyHycRjyZdAll = new ArrayList<>();
|
|
|
+ ArrayList<BigDecimal> gyHycWnndAll = new ArrayList<>();
|
|
|
+
|
|
|
+ ArrayList<BigDecimal> rbHycRjyAll = new ArrayList<>();
|
|
|
+ ArrayList<BigDecimal> rbHycWnndAll = new ArrayList<>();
|
|
|
+ ArrayList<BigDecimal> rbYycRjyAll = new ArrayList<>();
|
|
|
+ ArrayList<BigDecimal> rbQycRjyAll = new ArrayList<>();
|
|
|
+ ArrayList<BigDecimal> rbWncjbAll = new ArrayList<>();
|
|
|
+ ArrayList<BigDecimal> rbWntjzsAll = new ArrayList<>();
|
|
|
+ ArrayList<BigDecimal> rbHfxwnndAll = new ArrayList<>();
|
|
|
+
|
|
|
+ ArrayList<BigDecimal> hyHycxsyAll = new ArrayList<>();
|
|
|
+ ArrayList<BigDecimal> hyQyanAll = new ArrayList<>();
|
|
|
+ ArrayList<BigDecimal> hyQyckxsyAll = new ArrayList<>();
|
|
|
+ ArrayList<BigDecimal> hyHyzlsyAll = new ArrayList<>();
|
|
|
+
|
|
|
+ gyHycRjyAll.add(tableHour.getGyOneHymdDo());
|
|
|
+ gyHycRjyAll.add(tableHour.getGyTwoHymdDo());
|
|
|
+ gyHycRjyZdAll.add(tableHour.getGyOneHyzdDo());
|
|
|
+ gyHycRjyZdAll.add(tableHour.getGyTwoHyzdDo());
|
|
|
+ gyHycWnndAll.add(tableHour.getGyOneMlss());
|
|
|
+ gyHycWnndAll.add(tableHour.getGyTwoMlss());
|
|
|
+
|
|
|
+ rbHycRjyAll.add(tableHour.getGyOneHymdDo());
|
|
|
+ rbHycRjyAll.add(tableHour.getGyTwoHymdDo());
|
|
|
+ rbHycWnndAll.add(tableHour.getRbShcHyOneMlss());
|
|
|
+ rbHycWnndAll.add(tableHour.getRbShcHyTwoMlss());
|
|
|
+ rbYycRjyAll.add(tableHour.getRbShcYyOneDo());
|
|
|
+ rbYycRjyAll.add(tableHour.getRbShcYyTwoDo());
|
|
|
+ rbQycRjyAll.add(tableHour.getRbShcQyOneDo());
|
|
|
+ rbQycRjyAll.add(tableHour.getRbShcQyTwoDo());
|
|
|
+ rbWncjbAll.add(tableHour.getRbShcHyOneSv());
|
|
|
+ rbWncjbAll.add(tableHour.getRbShcHyTwoSv());
|
|
|
+ rbWntjzsAll.add(tableHour.getRbShcHyOneSvi());
|
|
|
+ rbWntjzsAll.add(tableHour.getRbShcHyTwoSvi());
|
|
|
+ rbHfxwnndAll.add(tableHour.getRbShcHyOneMlvss());
|
|
|
+ rbHfxwnndAll.add(tableHour.getRbShcHyTwoMlvss());
|
|
|
+
|
|
|
+ hyHycxsyAll.add(tableHour.getHyNo3Hlj1Jqr());
|
|
|
+ hyHycxsyAll.add(tableHour.getHyNo3Hlj2Jqr());
|
|
|
+ hyQyanAll.add(tableHour.getHyNh31Jqr());
|
|
|
+ hyQyanAll.add(tableHour.getHyNh32Jqr());
|
|
|
+ hyQyckxsyAll.add(tableHour.getHyNo3Qyc1Jqr());
|
|
|
+ hyQyckxsyAll.add(tableHour.getHyNo3Qyc2Jqr());
|
|
|
+ hyHyzlsyAll.add(tableHour.getHyTpHl1Jqr());
|
|
|
+ hyHyzlsyAll.add(tableHour.getHyTpHl2Jqr());
|
|
|
+
|
|
|
+ tableDay.setGyHycRjyAll(formatList(gyHycRjyAll));
|
|
|
+ tableDay.setGyHycRjyZdAll(formatList(gyHycRjyZdAll));
|
|
|
+ tableDay.setGyHycWnndAll(formatList(gyHycWnndAll));
|
|
|
+ tableDay.setRbHycRjyAll(formatList(rbHycRjyAll));
|
|
|
+ tableDay.setRbHycWnndAll(formatList(rbHycWnndAll));
|
|
|
+ tableDay.setRbYycRjyAll(formatList(rbYycRjyAll));
|
|
|
+ tableDay.setRbQycRjyAll(formatList(rbQycRjyAll));
|
|
|
+ tableDay.setRbWncjbAll(formatList(rbWncjbAll));
|
|
|
+ tableDay.setRbWntjzsAll(formatList(rbWntjzsAll));
|
|
|
+ tableDay.setRbHfxwnndAll(formatList(rbHfxwnndAll));
|
|
|
+ tableDay.setHyHycxsyAll(formatList(hyHycxsyAll));
|
|
|
+ tableDay.setHyQyanAll(formatList(hyQyanAll));
|
|
|
+ tableDay.setHyQyckxsyAll(formatList(hyQyckxsyAll));
|
|
|
+ tableDay.setHyHyzlsyAll(formatList(hyHyzlsyAll));
|
|
|
+
|
|
|
+ tableDay.setTestDate(testDate);
|
|
|
+
|
|
|
+ bigTableDayList.add(tableDay);
|
|
|
+ }
|
|
|
+ }
|
|
|
+
|
|
|
+ if (!CollectionUtils.isEmpty(bigTableDayList)) {
|
|
|
+ SqlSession sqlSession = sqlSessionFactory.openSession(ExecutorType.BATCH, false);
|
|
|
+ TXinyiBigTableDayMapper sqlSessionMapper = sqlSession.getMapper(TXinyiBigTableDayMapper.class);
|
|
|
+ bigTableDayList.stream().forEach(item -> sqlSessionMapper.insertTXinyiBigTableDay(item));
|
|
|
+ sqlSession.commit();
|
|
|
+ sqlSession.close();
|
|
|
+ }
|
|
|
+ }
|
|
|
+ long end = System.currentTimeMillis();
|
|
|
+ return "ok;耗时:" + (end - begin) / 1000 + "秒。";
|
|
|
+ }
|
|
|
+
|
|
|
+
|
|
|
/**
|
|
|
* 处理big_table_hour历史数据
|
|
|
* @return
|
|
@@ -943,7 +1178,6 @@ public class HandleDataController extends BaseController
|
|
|
|
|
|
int num = ( count / size ) + 1;
|
|
|
|
|
|
- int index = 0;
|
|
|
for (int i = 0; i < num; i++) {
|
|
|
List<TXinyiIndustry> tXinyiIndustries = xinyiIndustryMapper.selectTXinyiIndustryListByPage(i * size, size);
|
|
|
if ( !CollectionUtils.isEmpty(tXinyiIndustries) ) {
|
|
@@ -975,7 +1209,7 @@ public class HandleDataController extends BaseController
|
|
|
}
|
|
|
|
|
|
// 处理化验室
|
|
|
- List<TXinyiRobot> tXinyiRobots = xinyiRobotMapper.selectTXinyiRobotList(TXinyiRobot.builder().testHour(testHour).build()));
|
|
|
+ List<TXinyiRobot> tXinyiRobots = xinyiRobotMapper.selectTXinyiRobotList(TXinyiRobot.builder().testHour(testHour).build());
|
|
|
if (!CollectionUtils.isEmpty(tXinyiRobots)) {
|
|
|
TXinyiRobot tXinyiRobot = tXinyiRobots.get(0);
|
|
|
handleRobotData(xinyiBigTableHour, tXinyiRobot);
|
|
@@ -989,8 +1223,6 @@ public class HandleDataController extends BaseController
|
|
|
}
|
|
|
|
|
|
if (!CollectionUtils.isEmpty(tXinyiBigTableHourList)) {
|
|
|
- index += tXinyiBigTableHourList.size();
|
|
|
-
|
|
|
SqlSession sqlSession = sqlSessionFactory.openSession(ExecutorType.BATCH,false);
|
|
|
TXinyiBigTableHourMapper sqlSessionMapper = sqlSession.getMapper(TXinyiBigTableHourMapper.class);
|
|
|
tXinyiBigTableHourList.stream().forEach(item -> sqlSessionMapper.insertTXinyiBigTableHour(item));
|
|
@@ -1000,8 +1232,6 @@ public class HandleDataController extends BaseController
|
|
|
}
|
|
|
}
|
|
|
|
|
|
- System.out.println( "index :::" + index );
|
|
|
-
|
|
|
long end = System.currentTimeMillis();
|
|
|
return "ok;耗时:" + (end - begin) /1000 + "秒。";
|
|
|
}
|
|
@@ -1169,7 +1399,7 @@ public class HandleDataController extends BaseController
|
|
|
}
|
|
|
|
|
|
// 处理化验室
|
|
|
- private void handleRobotData(TXinyiBigTableHour tXinyiBigTableHour, TXinyiRobot tXinyiRobot) {
|
|
|
+ private void handleRobotData(TXinyiBigTableHour tXinyiBigTableHour, TXinyiRobot tXinyiRobot) {
|
|
|
tXinyiBigTableHour.setHyCodYb(tXinyiRobot.getCodYb());
|
|
|
tXinyiBigTableHour.setHyCodJqr(tXinyiRobot.getCodJqr());
|
|
|
tXinyiBigTableHour.setHyCodYz(tXinyiRobot.getCodYz());
|
|
@@ -1198,5 +1428,6 @@ public class HandleDataController extends BaseController
|
|
|
tXinyiBigTableHour.setHyQyckxsyAll(tXinyiRobot.getQyckxsyAll());
|
|
|
tXinyiBigTableHour.setHyHyzlsyAll(tXinyiRobot.getHyzlsyAll());
|
|
|
}
|
|
|
+
|
|
|
}
|
|
|
|