From 324860235dd32081f6c89c83efca92d7a3488b78 Mon Sep 17 00:00:00 2001
From: zhongrj <123456>
Date: Wed, 24 Aug 2022 17:44:43 +0800
Subject: [PATCH] 枪支定位报错修改,新增人员cardno判空处理

---
 src/main/java/org/springblade/modules/location/service/impl/LiveLocationServiceImpl.java |   77 ++++++++++++++++++++------------------
 1 files changed, 40 insertions(+), 37 deletions(-)

diff --git a/src/main/java/org/springblade/modules/location/service/impl/LiveLocationServiceImpl.java b/src/main/java/org/springblade/modules/location/service/impl/LiveLocationServiceImpl.java
index 527a6a7..daee3d4 100644
--- a/src/main/java/org/springblade/modules/location/service/impl/LiveLocationServiceImpl.java
+++ b/src/main/java/org/springblade/modules/location/service/impl/LiveLocationServiceImpl.java
@@ -3,6 +3,7 @@
 import com.alibaba.fastjson.JSON;
 import com.baomidou.mybatisplus.core.metadata.IPage;
 import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
+import org.apache.commons.lang3.StringUtils;
 import org.json.JSONArray;
 import org.json.JSONObject;
 import org.springblade.common.utils.InvestigateUtil;
@@ -89,45 +90,47 @@
 				String endTime = new SimpleDateFormat("yyyy-MM-dd").format(new Date());
 				//遍历
 				gunList.forEach(gun -> {
-					//远程调用
-					String body = InvestigateUtil.httpGetGunPosition(gun.getCardNo(),null,startTime,endTime,null,null);
+					if (!StringUtils.isBlank(gun.getCardNo())) {
+						//远程调用
+						String body = InvestigateUtil.httpGetGunPosition(gun.getCardNo(), null, startTime, endTime, null, null);
 //					System.out.println("body = " + body);
-					if (null != body && !body.equals("")) {
-						JSONObject jsonObject = new JSONObject(body);
-						Object data = jsonObject.get("data");
-						JSONObject jsonData = new JSONObject(data.toString());
-						JSONArray res = jsonData.getJSONArray("res");
-						//转换string
-						String resToString = res.toString();
-						if (res.length() == 0) {
-						} else {
-							LiveLocationVo locationVo = new LiveLocationVo();
-							List<GunLiveLocationVO> gunLiveLocationVOS = JSON.parseArray(resToString, GunLiveLocationVO.class);
-							//按时间排序(降序)
-							List<GunLiveLocationVO> gunLiveLocationVOList =
-								gunLiveLocationVOS.stream().sorted(Comparator.comparing(GunLiveLocationVO::getDwsj).reversed()).collect(Collectors.toList());
-							GunLiveLocationVO gunLiveLocationVO = gunLiveLocationVOList.get(0);
-							//取出第一个
-							locationVo.setRecordTime(gunLiveLocationVO.getDwsj());
-							locationVo.setLinkman(gunLiveLocationVO.getHwy());
-							locationVo.setCardNo(gunLiveLocationVO.getHwysfzh());
-							locationVo.setGunNum(gunLiveLocationVO.getQzbh());
-							locationVo.setNumber(gunLiveLocationVO.getQzxh());
-							locationVo.setQh(gunLiveLocationVO.getQh());
-							locationVo.setLongitude(gunLiveLocationVO.getDwjd().toString());
-							locationVo.setLatitude(gunLiveLocationVO.getDwwd().toString());
-							locationVo.setCompany(gunLiveLocationVO.getSzdw());
-							if (null!=gun.getIssueUnit() && !gun.getIssueUnit().equals("")){
-								locationVo.setIssueUnit(gun.getIssueUnit());
+						if (null != body && !body.equals("")) {
+							JSONObject jsonObject = new JSONObject(body);
+							Object data = jsonObject.get("data");
+							JSONObject jsonData = new JSONObject(data.toString());
+							JSONArray res = jsonData.getJSONArray("res");
+							//转换string
+							String resToString = res.toString();
+							if (res.length() == 0) {
+							} else {
+								LiveLocationVo locationVo = new LiveLocationVo();
+								List<GunLiveLocationVO> gunLiveLocationVOS = JSON.parseArray(resToString, GunLiveLocationVO.class);
+								//按时间排序(降序)
+								List<GunLiveLocationVO> gunLiveLocationVOList =
+									gunLiveLocationVOS.stream().sorted(Comparator.comparing(GunLiveLocationVO::getDwsj).reversed()).collect(Collectors.toList());
+								GunLiveLocationVO gunLiveLocationVO = gunLiveLocationVOList.get(0);
+								//取出第一个
+								locationVo.setRecordTime(gunLiveLocationVO.getDwsj());
+								locationVo.setLinkman(gunLiveLocationVO.getHwy());
+								locationVo.setCardNo(gunLiveLocationVO.getHwysfzh());
+								locationVo.setGunNum(gunLiveLocationVO.getQzbh());
+								locationVo.setNumber(gunLiveLocationVO.getQzxh());
+								locationVo.setQh(gunLiveLocationVO.getQh());
+								locationVo.setLongitude(gunLiveLocationVO.getDwjd().toString());
+								locationVo.setLatitude(gunLiveLocationVO.getDwwd().toString());
+								locationVo.setCompany(gunLiveLocationVO.getSzdw());
+								if (null != gun.getIssueUnit() && !gun.getIssueUnit().equals("")) {
+									locationVo.setIssueUnit(gun.getIssueUnit());
+								}
+								if (null != gun.getIssueTime() && !gun.getIssueTime().equals("")) {
+									locationVo.setIssueTime(gun.getIssueTime());
+								}
+								if (null != gun.getValidTime() && !gun.getValidTime().equals("")) {
+									locationVo.setValidTime(gun.getValidTime());
+								}
+								//存入集合
+								list.add(locationVo);
 							}
-							if (null!=gun.getIssueTime() && !gun.getIssueTime().equals("")){
-								locationVo.setIssueTime(gun.getIssueTime());
-							}
-							if (null!=gun.getValidTime() && !gun.getValidTime().equals("")){
-								locationVo.setValidTime(gun.getValidTime());
-							}
-							//存入集合
-							list.add(locationVo);
 						}
 					}
 				});

--
Gitblit v1.9.3