|
@@ -162,4 +162,80 @@ public class IndividualLogApiController {
|
|
|
|
|
|
return messageResult;
|
|
|
}
|
|
|
+
|
|
|
+
|
|
|
+ @PostMapping("temperaturePersonCurve")
|
|
|
+ @ApiOperation(value="人员温度曲线接口")
|
|
|
+ @ApiImplicitParams({
|
|
|
+ @ApiImplicitParam(name="personId",value = "人员ID",required = true,paramType = "form"),
|
|
|
+ @ApiImplicitParam(name="token",value = "令牌",required = true,paramType = "form"),
|
|
|
+ @ApiImplicitParam(name="subject",value = "目标(不传)",paramType = "form")
|
|
|
+ })
|
|
|
+ public MessageResult<List<Map<String,Object>>> temperaturePersonCurve(
|
|
|
+ String personId, String token,
|
|
|
+ @RequestAttribute String subject){
|
|
|
+
|
|
|
+ MessageResult<List<Map<String,Object>>> messageResult = new MessageResult<>();
|
|
|
+
|
|
|
+ try {
|
|
|
+ List<Map<String,Object>> totalList = new ArrayList<>();
|
|
|
+
|
|
|
+ Date now = new Date();
|
|
|
+ PersonInfo person = personInfoService.get(Long.valueOf(personId));
|
|
|
+
|
|
|
+ SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd");
|
|
|
+ SimpleDateFormat f = new SimpleDateFormat("HH");
|
|
|
+
|
|
|
+ for (int i = 0;i < 14;i++) {
|
|
|
+ Map<String, Object> map = new HashMap<>();
|
|
|
+
|
|
|
+ Calendar rightNow = Calendar.getInstance();
|
|
|
+ rightNow.setTime(now);
|
|
|
+ rightNow.add(Calendar.DATE, -(i + 1));
|
|
|
+ Date dt1 = rightNow.getTime();
|
|
|
+ String startDate = sdf.format(dt1);
|
|
|
+
|
|
|
+ Calendar rightNow2 = Calendar.getInstance();
|
|
|
+ rightNow2.setTime(now);
|
|
|
+ rightNow2.add(Calendar.DATE, -i);
|
|
|
+ Date dt2 = rightNow2.getTime();
|
|
|
+ String endDate = sdf.format(dt2);
|
|
|
+
|
|
|
+ List<PersonDeviceFilterLog> personDeviceLogList = personDeviceFilterLogService.findByPersonAndDate(person.getId(),startDate,endDate);
|
|
|
+
|
|
|
+ map.put("date",startDate);
|
|
|
+
|
|
|
+ List<Map<String,Object>> list = new ArrayList<>();
|
|
|
+ boolean isDanger = false;
|
|
|
+ for (PersonDeviceFilterLog personDeviceFilterLog:personDeviceLogList) {
|
|
|
+ Map<String, Object> mapChi = new HashMap<>();
|
|
|
+ Date recordTime = personDeviceFilterLog.getRecordTime();
|
|
|
+ String hour = f.format(recordTime);
|
|
|
+
|
|
|
+ mapChi.put("name",hour+"时");
|
|
|
+ mapChi.put("value",personDeviceFilterLog.getTemperature());
|
|
|
+ double temperatureDou = Double.parseDouble(personDeviceFilterLog.getTemperature().toString());
|
|
|
+ if(temperatureDou>=37){
|
|
|
+ isDanger = true;
|
|
|
+ }
|
|
|
+ list.add(mapChi);
|
|
|
+ }
|
|
|
+
|
|
|
+ map.put("list",list);
|
|
|
+ map.put("danger",isDanger);
|
|
|
+
|
|
|
+ totalList.add(map);
|
|
|
+ }
|
|
|
+
|
|
|
+ messageResult.setData(totalList);
|
|
|
+ messageResult.setResult(true);
|
|
|
+ }
|
|
|
+ catch (Exception ex){
|
|
|
+ messageResult.setMessage(ex.getMessage());
|
|
|
+ messageResult.setResult(false);
|
|
|
+ }
|
|
|
+
|
|
|
+ return messageResult;
|
|
|
+
|
|
|
+ }
|
|
|
}
|