|
@@ -16,7 +16,9 @@ import com.huimv.eartag2.manage2.pojo.EartagEartagRegister2;
|
|
|
import com.huimv.eartag2.manage2.pojo.SysAccountMultilevel;
|
|
|
import com.huimv.eartag2.manage2.service.IEartagData2Service;
|
|
|
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
|
|
|
+import com.huimv.eartag2.manage2.utils.Filter;
|
|
|
import org.springframework.stereotype.Service;
|
|
|
+import org.springframework.web.bind.annotation.PostMapping;
|
|
|
|
|
|
import javax.annotation.Resource;
|
|
|
import java.text.ParseException;
|
|
@@ -148,10 +150,15 @@ public class EartagData2ServiceImpl extends ServiceImpl<EartagData2Mapper, Earta
|
|
|
// List<EartagData2> eartagData2List = eartagData2Mapper.getEartagDataByEarmark(earmark, recordCount);
|
|
|
QueryWrapper<EartagData2> queryWrapper = new QueryWrapper<>();
|
|
|
queryWrapper.eq("earmark",earmark);
|
|
|
- queryWrapper.between("add_time",startDate,endDate);
|
|
|
+ queryWrapper.between("add_time",startDate +" 00:00:00",endDate+" 23:59:59");
|
|
|
queryWrapper.orderByDesc("add_time");
|
|
|
List<EartagData2> eartagData2List = eartagData2Mapper.selectList(queryWrapper);
|
|
|
+
|
|
|
if (eartagData2List.size() == 0) {
|
|
|
+ boolean earmark1 = eartagEartagRegister2Mapper.exists(new QueryWrapper<EartagEartagRegister2>().eq("earmark", earmark));
|
|
|
+ if (earmark1){
|
|
|
+ return new Result(ResultCode.SUCCESS, new ArrayList());
|
|
|
+ }
|
|
|
return new Result(10009, "数据为空", false);
|
|
|
} else {
|
|
|
List<EartagData2> newList = new ArrayList();
|
|
@@ -245,4 +252,61 @@ public class EartagData2ServiceImpl extends ServiceImpl<EartagData2Mapper, Earta
|
|
|
List<EartagData2> eartagData2List = this.list(new QueryWrapper<EartagData2>().eq("earmark", earmark).orderByDesc("add_time").last(String.format("limit %s", quantity)));
|
|
|
return new Result(ResultCode.SUCCESS,eartagData2List);
|
|
|
}
|
|
|
+
|
|
|
+ @Override
|
|
|
+ public Result getByTimeFilter(Map<String, String> map) {
|
|
|
+
|
|
|
+ String earmark = map.get("earmark");
|
|
|
+ String startDate = map.get("startDate");
|
|
|
+ String endDate = map.get("endDate");
|
|
|
+ Date now = new Date();
|
|
|
+ if (StringUtils.isBlank(earmark)) {
|
|
|
+ return new Result(10001, "请选择耳标", false);
|
|
|
+ }
|
|
|
+ QueryWrapper<EartagData2> wrapper = new QueryWrapper<>();
|
|
|
+ wrapper.eq("earmark", earmark);
|
|
|
+ if (StringUtils.isBlank(startDate)) {
|
|
|
+ wrapper.ge("add_time", DateUtil.beginOfDay(now));
|
|
|
+ } else {
|
|
|
+ wrapper.between("add_time", startDate, endDate);
|
|
|
+ }
|
|
|
+ wrapper.orderByAsc("add_time");
|
|
|
+ List<Double> list1 = new ArrayList<>();
|
|
|
+ List<Double> list2 = new ArrayList<>();
|
|
|
+ List<Double> list3 = new ArrayList<>();
|
|
|
+ List<Date> list4 = new ArrayList<>();
|
|
|
+ List<Long> list5 = new ArrayList<>();
|
|
|
+ List<Integer> list6 = new ArrayList<>();
|
|
|
+ List<EartagData2> list = this.list(wrapper);
|
|
|
+ for (EartagData2 eartagData2 : list) {
|
|
|
+ Float earTemp1 = eartagData2.getEarTemp1();
|
|
|
+ Float earTemp2 = eartagData2.getEarTemp2();
|
|
|
+ Float envTemp1 = eartagData2.getEnvTemp1();
|
|
|
+
|
|
|
+ list1.add(earTemp1 == null ? null:Double.valueOf(earTemp1));
|
|
|
+ list2.add( earTemp2 == null ? null:Double.valueOf(earTemp2));
|
|
|
+ list3.add(envTemp1 == null ? null:Double.valueOf(envTemp1));
|
|
|
+ list4.add( eartagData2.getAddTime());
|
|
|
+ list5.add( eartagData2.getAct1());
|
|
|
+ list6.add( eartagData2.getBat());
|
|
|
+ }
|
|
|
+ Filter filter1 = new Filter(list1,0.2);
|
|
|
+ List<Double> earTemp1 = filter1.max(20, 200, 30, 40);
|
|
|
+
|
|
|
+ Filter filter2 = new Filter(list2,0.2);
|
|
|
+ List<Double> earTemp2 = filter2.max(20, 200, 30, 40);
|
|
|
+
|
|
|
+ Filter filter3 = new Filter(list3,0.2);
|
|
|
+ List<Double> earTemp3 = filter3.max(20, 200, 10, 40);
|
|
|
+
|
|
|
+ Map endMap = new HashMap();
|
|
|
+ endMap.put("earTemp1",earTemp1);
|
|
|
+ endMap.put("earTemp2",earTemp2);
|
|
|
+ endMap.put("getEnvTemp1",earTemp3);
|
|
|
+ endMap.put("time",list4);
|
|
|
+ endMap.put("act",list5);
|
|
|
+ endMap.put("bat",list6);
|
|
|
+
|
|
|
+ return new Result(ResultCode.SUCCESS, endMap);
|
|
|
+ }
|
|
|
}
|