| | |
| | | @Resource |
| | | private QxshMapper qxshMapper; |
| | | |
| | | private static boolean isBusy = false; |
| | | |
| | | private final static SimpleDateFormat YMDH = new SimpleDateFormat("yyyyMMddHH"); |
| | | |
| | | private final static SimpleDateFormat Y_M_D_H = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss"); |
| | |
| | | } |
| | | } |
| | | |
| | | public int calcData() { |
| | | List<String> list = new ArrayList<>(); |
| | | public Integer calcData() { |
| | | try { |
| | | if (isBusy) { |
| | | return null; |
| | | } |
| | | |
| | | isBusy = true; |
| | | List<String> list = new ArrayList<>(); |
| | | calcCsvData(list); |
| | | calcDbData(list); |
| | | |
| | | int size = list.size(); |
| | | if (size > 0) { |
| | | String text = String.join("、", list.toArray(new String[list.size()])) + ",近" + hours + "小时内存在数据缺失。"; |
| | | send(title, text); |
| | | } |
| | | isBusy = false; |
| | | |
| | | return size; |
| | | } catch (Exception ex) { |
| | | logger.error(ex.getMessage(), ex); |
| | | isBusy = false; |
| | | return null; |
| | | } |
| | | } |
| | | |
| | | private void calcCsvData(List<String> list) { |
| | | String[] strs = names.split(","); |
| | | int count = countCsv(bigPath, hours); |
| | | if (0 == count) { |
| | |
| | | if (0 == count) { |
| | | list.add(strs[2]); |
| | | } |
| | | } |
| | | |
| | | private void calcDbData(List<String> list) { |
| | | Calendar calendar = getCalendar(0); |
| | | Integer iEnd = Integer.parseInt(YMDH.format(calendar.getTime())); |
| | | String sEnd = Y_M_D_H.format(calendar.getTime()); |
| | |
| | | Integer iStart = Integer.parseInt(YMDH.format(calendar.getTime())); |
| | | String sStart = Y_M_D_H.format(calendar.getTime()); |
| | | |
| | | count = qxshMapper.countGcsjByTime(iStart, iEnd); |
| | | String[] strs = names.split(","); |
| | | int count = qxshMapper.countGcsjByTime(iStart, iEnd); |
| | | if (0 == count) { |
| | | list.add(strs[3]); |
| | | } |
| | |
| | | if (0 == count) { |
| | | list.add(strs[7]); |
| | | } |
| | | |
| | | int size = list.size(); |
| | | if (size > 0) { |
| | | String text = String.join("、", list.toArray(new String[list.size()])) + ",近" + hours + "小时内存在数据缺失。"; |
| | | send(title, text); |
| | | } |
| | | |
| | | return size; |
| | | } |
| | | |
| | | public int countCsv(String path, Integer hours) { |