|
@@ -12,9 +12,10 @@ import org.springframework.stereotype.Service;
|
|
import org.springframework.util.StringUtils;
|
|
import org.springframework.util.StringUtils;
|
|
import tk.mybatis.mapper.entity.Example;
|
|
import tk.mybatis.mapper.entity.Example;
|
|
|
|
|
|
-import java.util.Date;
|
|
|
|
-import java.util.List;
|
|
|
|
-import java.util.Map;
|
|
|
|
|
|
+import java.text.DateFormat;
|
|
|
|
+import java.text.ParseException;
|
|
|
|
+import java.text.SimpleDateFormat;
|
|
|
|
+import java.util.*;
|
|
|
|
|
|
/****
|
|
/****
|
|
* @Author:shenkunlin
|
|
* @Author:shenkunlin
|
|
@@ -36,33 +37,217 @@ public class EartagDataServiceImpl implements EartagDataService {
|
|
* @return 分页结果
|
|
* @return 分页结果
|
|
*/
|
|
*/
|
|
@Override
|
|
@Override
|
|
- public PageInfo<EartagData> findPage(Map map, int page, int size){
|
|
|
|
|
|
+ public PageInfo<Map> findPage(Map map, int page, int size){
|
|
|
|
+ List<EartagData> list = new ArrayList();
|
|
|
|
+ String eartag = (String)map.get("eartagId");
|
|
|
|
+ String startTime = (String) map.get("startTime");
|
|
|
|
+ String endTime = (String) map.get("endTime");
|
|
|
|
+ if (map.get("SBID")!=null && !"".equals(map.get("SBID"))) {
|
|
|
|
+ Integer SBID = Integer.parseInt((String) map.get("SBID"));
|
|
|
|
+ if (eartag == null || eartag.equals("")){
|
|
|
|
+ list = eartagDataMapper.selectByEartag3(SBID, startTime, endTime, page, size);
|
|
|
|
+ }else {
|
|
|
|
+ list = eartagDataMapper.selectByEartag(SBID, eartag, startTime, endTime, page, size);
|
|
|
|
+ }
|
|
|
|
+ }else {
|
|
|
|
+ if (eartag == null || eartag.equals("")){
|
|
|
|
+ list = eartagDataMapper.selectByEartag2( startTime, endTime, page, size);
|
|
|
|
+ }else {
|
|
|
|
+ list = eartagDataMapper.selectByEartag1( eartag, startTime, endTime, page, size);
|
|
|
|
+ }
|
|
|
|
+
|
|
|
|
+ }
|
|
|
|
+ List list2 = new ArrayList();
|
|
|
|
+ for (EartagData eartagData : list) {
|
|
|
|
+ Example example = createExample(eartagData);
|
|
|
|
+ List<EartagData> eartagData1 = eartagDataMapper.selectByExample(example);
|
|
|
|
+ list2.add(eartagData1.get(0));
|
|
|
|
+ }
|
|
|
|
|
|
|
|
+ list2 =timeUtil(list2);
|
|
|
|
+
|
|
|
|
+ return new PageInfo<>(list2);
|
|
|
|
+ }
|
|
|
|
+// @Override
|
|
|
|
+// public PageInfo<Map> findPage(Map map, int page, int size){
|
|
|
|
+// PageInfo<Map> eartagDataPageInfo=null;
|
|
|
|
+// EartagData eartagData = new EartagData();
|
|
|
|
+// if (map != null){
|
|
|
|
+// /*eartagData.setCheckNumber((Integer) map.get("checkNumber"));
|
|
|
|
+// eartagData.setCMD((Integer) map.get("cmd"));
|
|
|
|
+// eartagData.setCQS((Integer)map.get("cqs"));
|
|
|
|
+// eartagData.setDl((Integer)map.get("dl"));
|
|
|
|
+//
|
|
|
|
+// eartagData.setEBWD((Double) map.get("ebwd"));
|
|
|
|
+// eartagData.setHeader((String)map.get("header"));
|
|
|
|
+// eartagData.setId((Integer)map.get("id"));
|
|
|
|
+// eartagData.setMLW((String) map.get("mlw"));
|
|
|
|
+// eartagData.setNBWD((Integer)map.get("nbwd"));
|
|
|
|
+// eartagData.setNtc((Integer)map.get("ntc"));
|
|
|
|
+// eartagData.setRSSYI((Integer)map.get("rssyi"));*/
|
|
|
|
+// eartagData.setEartagId((String) map.get("eartagId"));
|
|
|
|
+// if (map.get("SBID")!=null && !"".equals(map.get("SBID"))) {
|
|
|
|
+// eartagData.setSBID(Integer.parseInt((String)map.get("SBID")));
|
|
|
|
+// }
|
|
|
|
+// /* eartagData.setSerial((Integer)map.get("serial"));
|
|
|
|
+// // eartagData.setTimestamp((Date) map.get("timestamp"));
|
|
|
|
+// eartagData.setVersion((String)map.get("version"));
|
|
|
|
+// eartagData.setYDL((Integer)map.get("ydl"));*/
|
|
|
|
+//
|
|
|
|
+// String startTime1 = (String) map.get("startTime");
|
|
|
|
+// String endTime1 = (String) map.get("endTime");
|
|
|
|
+// DateFormat fmt = new SimpleDateFormat("yyyy-MM-dd hh:mm:ss");
|
|
|
|
+// if (startTime1 != null && endTime1 != null){
|
|
|
|
+//
|
|
|
|
+// Date startTime = null;
|
|
|
|
+// Date endTime = null;
|
|
|
|
+// try {
|
|
|
|
+// startTime =fmt.parse(startTime1);
|
|
|
|
+// endTime = fmt.parse(endTime1);
|
|
|
|
+// } catch (ParseException e) {
|
|
|
|
+// e.printStackTrace();
|
|
|
|
+// }
|
|
|
|
+//
|
|
|
|
+// //分页
|
|
|
|
+// // PageHelper.startPage(page,size);
|
|
|
|
+// //搜索条件构建
|
|
|
|
+// Example example = createExample(eartagData);
|
|
|
|
+// List<EartagData> eartagData1 = eartagDataMapper.selectByExample(example);
|
|
|
|
+// List list3 = utils(eartagData1,startTime,endTime);
|
|
|
|
+//
|
|
|
|
+// List resultList = timeUtil(list3);
|
|
|
|
+//
|
|
|
|
+//
|
|
|
|
+// eartagDataPageInfo = new PageInfo<>(resultList);
|
|
|
|
+// }else {
|
|
|
|
+// //PageHelper.startPage(page,size);
|
|
|
|
+// //搜索条件构建
|
|
|
|
+// Example example = createExample(eartagData);
|
|
|
|
+// List<EartagData> eartagData1 = eartagDataMapper.selectByExample(example);
|
|
|
|
+//
|
|
|
|
+// eartagDataPageInfo = new PageInfo<>(timeUtil( utils(eartagData1,null,null)));
|
|
|
|
+// }
|
|
|
|
+//
|
|
|
|
+//
|
|
|
|
+// }else {
|
|
|
|
+// //分页
|
|
|
|
+// // PageHelper.startPage(page,size);
|
|
|
|
+// //搜索条件构建
|
|
|
|
+// Example example = createExample(eartagData);
|
|
|
|
+// List<EartagData> eartagData1 = eartagDataMapper.selectByExample(example);
|
|
|
|
+// List utils = utils(eartagData1, null, null);
|
|
|
|
+// List list = timeUtil(utils);
|
|
|
|
+// eartagDataPageInfo = new PageInfo<>(list);
|
|
|
|
+// System.out.println("ssss");
|
|
|
|
+// }
|
|
|
|
+//
|
|
|
|
+// return eartagDataPageInfo;
|
|
|
|
+// }
|
|
|
|
+ @Override
|
|
|
|
+ public Map searchData(Map map) {
|
|
EartagData eartagData = new EartagData();
|
|
EartagData eartagData = new EartagData();
|
|
- eartagData.setCheckNumber((Integer) map.get(""));
|
|
|
|
- eartagData.setCMD((Integer) map.get(""));
|
|
|
|
- eartagData.setCQS((Integer)map.get(""));
|
|
|
|
- eartagData.setDl((Integer)map.get(""));
|
|
|
|
- eartagData.setEartagId((String) map.get(""));
|
|
|
|
- eartagData.setEBWD((Double) map.get(""));
|
|
|
|
- eartagData.setHeader((String)map.get("header"));
|
|
|
|
- eartagData.setId((Integer)map.get("id"));
|
|
|
|
- eartagData.setMLW((String) map.get(""));
|
|
|
|
- eartagData.setNBWD((Integer)map.get(""));
|
|
|
|
- eartagData.setNtc((Integer)map.get(""));
|
|
|
|
- eartagData.setRSSYI((Integer)map.get(""));
|
|
|
|
- eartagData.setSBID((Integer)map.get(""));
|
|
|
|
- eartagData.setSerial((Integer)map.get(""));
|
|
|
|
- eartagData.setTimestamp((Date) map.get(""));
|
|
|
|
- eartagData.setVersion((String)map.get("version"));
|
|
|
|
- eartagData.setYDL((Integer)map.get(""));
|
|
|
|
-
|
|
|
|
- //分页
|
|
|
|
- PageHelper.startPage(page,size);
|
|
|
|
- //搜索条件构建
|
|
|
|
- Example example = createExample(eartagData);
|
|
|
|
- //执行搜索
|
|
|
|
- return new PageInfo<EartagData>(eartagDataMapper.selectByExample(example));
|
|
|
|
|
|
+ eartagData.setEartagId((String) map.get("eartagId"));
|
|
|
|
+ if (map.get("SBID")!=null && !"".equals(map.get("SBID"))) {
|
|
|
|
+ eartagData.setSBID(Integer.parseInt((String)map.get("SBID")));
|
|
|
|
+ }
|
|
|
|
+ String startTime1 = (String) map.get("startTime");
|
|
|
|
+ String endTime1 = (String) map.get("endTime");
|
|
|
|
+ DateFormat fmt = new SimpleDateFormat("yyyy-MM-dd hh:mm:ss");
|
|
|
|
+ Map map1 = new HashMap();
|
|
|
|
+ if (startTime1 != null && endTime1 != null) {
|
|
|
|
+
|
|
|
|
+ Date startTime = null;
|
|
|
|
+ Date endTime = null;
|
|
|
|
+ try {
|
|
|
|
+ startTime = fmt.parse(startTime1);
|
|
|
|
+ endTime = fmt.parse(endTime1);
|
|
|
|
+ } catch (ParseException e) {
|
|
|
|
+ e.printStackTrace();
|
|
|
|
+ }
|
|
|
|
+
|
|
|
|
+ Example example = createExample(eartagData);
|
|
|
|
+ List<EartagData> eartagData1 = eartagDataMapper.selectByExample(example);
|
|
|
|
+ List<EartagData> list = new ArrayList();
|
|
|
|
+ for (EartagData data : eartagData1) {
|
|
|
|
+ Date timestamp = data.getTimestamp();
|
|
|
|
+ if (startTime.before(timestamp) && endTime.after(timestamp)){
|
|
|
|
+ list.add(data);
|
|
|
|
+ }
|
|
|
|
+ }
|
|
|
|
+ List timeList = new ArrayList();
|
|
|
|
+ List tempList = new ArrayList();
|
|
|
|
+ List sportsList = new ArrayList();
|
|
|
|
+ List electricList = new ArrayList();
|
|
|
|
+
|
|
|
|
+ for (EartagData data : list) {
|
|
|
|
+ timeList.add(fmt.format(data.getTimestamp()));
|
|
|
|
+ tempList.add(data.getEBWD());
|
|
|
|
+ sportsList.add(data.getYDL());
|
|
|
|
+ electricList.add(data.getDl());
|
|
|
|
+ }
|
|
|
|
+ map1.put("time",timeList);
|
|
|
|
+ map1.put("temp",tempList);
|
|
|
|
+ map1.put("sports",sportsList);
|
|
|
|
+ map1.put("electric",electricList);
|
|
|
|
+
|
|
|
|
+ }
|
|
|
|
+
|
|
|
|
+
|
|
|
|
+ return map1;
|
|
|
|
+ }
|
|
|
|
+
|
|
|
|
+ public List utils(List<EartagData> eartagData1,Date startTime,Date endTime){
|
|
|
|
+ List<EartagData> list = new ArrayList();
|
|
|
|
+ if (startTime != null || endTime !=null){
|
|
|
|
+ for (EartagData data : eartagData1) {
|
|
|
|
+ Date timestamp = data.getTimestamp();
|
|
|
|
+ if (startTime.before(timestamp) && endTime.after(timestamp)){
|
|
|
|
+ list.add(data);
|
|
|
|
+ }
|
|
|
|
+ }
|
|
|
|
+ }
|
|
|
|
+ Set<String> set = new HashSet();
|
|
|
|
+ for (EartagData eartagData : eartagData1) {
|
|
|
|
+ set.add(eartagData.getEartagId());
|
|
|
|
+ }
|
|
|
|
+ List list1 = new ArrayList();
|
|
|
|
+ for (String str : set) {
|
|
|
|
+ EartagData eartagData = eartagDataMapper.selectByEartagId(str);
|
|
|
|
+ Example example = createExample(eartagData);
|
|
|
|
+ List<EartagData> eartagData2 = eartagDataMapper.selectByExample(example);
|
|
|
|
+ list1.add(eartagData2.get(0));
|
|
|
|
+ }
|
|
|
|
+ return list1;
|
|
|
|
+ }
|
|
|
|
+
|
|
|
|
+
|
|
|
|
+ public List<Map> timeUtil(List<EartagData> list){
|
|
|
|
+ List<Map> list1 = new ArrayList();
|
|
|
|
+ for (EartagData eartagData : list) {
|
|
|
|
+ Date timestamp = eartagData.getTimestamp();
|
|
|
|
+ SimpleDateFormat sfm1 = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
|
|
|
|
+ String format = sfm1.format(timestamp);
|
|
|
|
+ Map map =new HashMap();
|
|
|
|
+ map.put("id",eartagData.getId());
|
|
|
|
+ map.put("header",eartagData.getHeader());
|
|
|
|
+ map.put("version",eartagData.getVersion());
|
|
|
|
+ map.put("serial",eartagData.getSerial());
|
|
|
|
+ map.put("eartagId",eartagData.getEartagId());
|
|
|
|
+ map.put("dl",eartagData.getDl());
|
|
|
|
+ map.put("ntc",eartagData.getNtc());
|
|
|
|
+ map.put("timestamp",format);
|
|
|
|
+ map.put("checkNumber",eartagData.getCheckNumber());
|
|
|
|
+ map.put("mlw",eartagData.getMLW());
|
|
|
|
+ map.put("ydl",eartagData.getYDL());
|
|
|
|
+ map.put("ebwd",eartagData.getEBWD());
|
|
|
|
+ map.put("cmd",eartagData.getCMD());
|
|
|
|
+ map.put("rssyi",eartagData.getRSSYI());
|
|
|
|
+ map.put("cqs",eartagData.getCQS());
|
|
|
|
+ map.put("sbid",eartagData.getSBID());
|
|
|
|
+ map.put("nbwd",eartagData.getNBWD());
|
|
|
|
+ list1.add(map);
|
|
|
|
+ }
|
|
|
|
+ return list1;
|
|
}
|
|
}
|
|
|
|
|
|
/**
|
|
/**
|
|
@@ -215,4 +400,6 @@ public class EartagDataServiceImpl implements EartagDataService {
|
|
public List<EartagData> findAll() {
|
|
public List<EartagData> findAll() {
|
|
return eartagDataMapper.selectAll();
|
|
return eartagDataMapper.selectAll();
|
|
}
|
|
}
|
|
|
|
+
|
|
|
|
+
|
|
}
|
|
}
|