Commit ee030840 authored by yangshuxing's avatar yangshuxing

Merge remote-tracking branch 'origin/master'

parents 492dfbcc dba995ea
...@@ -369,25 +369,52 @@ public class RemoteService { ...@@ -369,25 +369,52 @@ public class RemoteService {
String resultString = forEntity.getBody(); String resultString = forEntity.getBody();
log.info("计时打卡点:" + resultString); log.info("计时打卡点:" + resultString);
JSONObject object = JSONObject.parseObject(resultString); JSONObject object = JSONObject.parseObject(resultString);
JSONArray segsResult = object.getJSONObject("road").getJSONArray("segs"); JSONObject roadJsonObject=object.getJSONObject("road");
JSONArray segsResult = roadJsonObject.getJSONArray("segs");
if(segsResult == null || segsResult.isEmpty()) return null; if(segsResult == null || segsResult.isEmpty()) return null;
//暂不支持多日赛 //支持多日赛
JSONObject resultObject = (JSONObject)segsResult.get(0); for(int j=0;j<segsResult.size();j++) {
JSONArray result = resultObject.getJSONArray("segCps"); JSONObject resultObject = (JSONObject) segsResult.get(j);
if (result == null || result.isEmpty()) return null; JSONArray result = resultObject.getJSONArray("segCps");
//获取每个打卡点的信息 if (result == null || result.isEmpty()) return null;
for (int i = 0; i < result.size(); i++) { //获取每个打卡点的信息
RoadsGpsCheckpointMap roadsGpsCheckpointMap = new RoadsGpsCheckpointMap(); for (int i = 0; i < result.size(); i++) {
JSONObject o = (JSONObject) result.get(i); RoadsGpsCheckpointMap roadsGpsCheckpointMap = new RoadsGpsCheckpointMap();
String checkpointId = o.getString("checkPointId"); JSONObject o = (JSONObject) result.get(i);
String checkpointName = o.getString("cpName"); String checkpointId = o.getString("checkPointId");
String checkpointDistance=o.getString("distance"); String checkpointName = o.getString("cpName");
roadsGpsCheckpointMap.setCmptId(cmptId).setRoadId(roadId).setCheckpointId(Integer.parseInt(checkpointId)).setCheckpointName(checkpointName).setCheckpointDistance(Double.parseDouble(checkpointDistance)); String checkpointDistance = o.getString("distance");
roadsGpsCheckpointMapList.add(roadsGpsCheckpointMap); roadsGpsCheckpointMap.setCmptId(cmptId).setRoadId(roadId).setCheckpointId(Integer.parseInt(checkpointId)).setCheckpointName(checkpointName).setCheckpointDistance(Double.parseDouble(checkpointDistance));
roadsGpsCheckpointMapList.add(roadsGpsCheckpointMap);
}
} }
return roadsGpsCheckpointMapList; return roadsGpsCheckpointMapList;
} else { } else {
return null; return null;
} }
} }
/**
* 根据赛事Id,项目Id获取队员参赛项目的开始时间和结束时间
* @param cmptId
* @return
*/
public HashMap<String,Long> getRoadOpenTimeAndCloseTime(Integer cmptId,Integer roadId) {
ResponseEntity<String> forEntity = restTemplate.getForEntity(timerURL + "getRoad.do?cmptId="+ cmptId + "&roadId="+roadId, String.class);
HashMap<String,Long> segsResult=new HashMap<String,Long>();
if (forEntity.getStatusCode() == HttpStatus.OK) {
String resultString = forEntity.getBody();
JSONObject object = JSONObject.parseObject(resultString);
JSONObject roadJsonObject=object.getJSONObject("road");
long srtartTime=roadJsonObject.getLong("startTimeMs70");
long endTime=roadJsonObject.getLong("endTimeMs70");
segsResult.put("srtartTime",srtartTime);
segsResult.put("endTime",endTime);
return segsResult;
} else {
return null;
}
}
} }
...@@ -991,4 +991,15 @@ public class MicroApiController { ...@@ -991,4 +991,15 @@ public class MicroApiController {
return Result.fail().setContent(results); return Result.fail().setContent(results);
} }
@GetMapping(value = "/getRoadOpenTimeAndCloseTime/{cmptId}/{roadId}")
@ApiResponses({
@ApiResponse(code = -1, message = "失败", response = ObjectUtils.Null.class),
@ApiResponse(code = 200, message = "成功", response = Result.class, responseContainer = "List")})
@ApiOperation(value = "自动打卡获取开枪时间或者结束时间", notes = "自动打卡获取开枪时间或者结束时间", tags = "自动打卡获取开枪时间或者结束时间")
public Result getRoadOpenTimeAndCloseTime(@PathVariable("cmptId") int cmptId,@PathVariable("roadId") int roadId){
HashMap<String,Long> roadsGpsCheckpointMapList=remoteService.getRoadOpenTimeAndCloseTime(cmptId,roadId);
return Result.success().setContent(roadsGpsCheckpointMapList);
}
} }
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment