From 30df94c05573a426d030510d4dd58ae1d93bfb7a Mon Sep 17 00:00:00 2001
From: tangzy <tangzy123456>
Date: Mon, 06 Dec 2021 14:03:37 +0800
Subject: [PATCH] 1.资格审查排序

---
 src/main/java/org/springblade/modules/location/service/impl/LiveLocationServiceImpl.java |   83 +++++++++++++++++++++++++++++++++++------
 1 files changed, 70 insertions(+), 13 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 9f206f2..49443c8 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
@@ -9,6 +9,8 @@
 import org.springblade.modules.location.vo.LocusVo;
 import org.springframework.stereotype.Service;
 
+import java.util.ArrayList;
+import java.util.Arrays;
 import java.util.List;
 
 /**
@@ -57,19 +59,17 @@
 	 */
 	@Override
 	public List<LiveLocationVo> getLiveLocationVoList(LiveLocationVo liveLocationVo) {
-		if (null!=liveLocationVo.getType()){
-			//保安人员
-			if (liveLocationVo.getType()==1){
-				return baseMapper.getSecurityLocusInfoList(liveLocationVo);
-			}
-			//车辆
-			if (liveLocationVo.getType()==1){
-				return baseMapper.getCarLocusInfoList(liveLocationVo);
-			}
-			//枪支
-			if (liveLocationVo.getType()==1){
-				return baseMapper.getGunLocusInfoList(liveLocationVo);
-			}
+		//保安人员
+		if (liveLocationVo.getType()==1){
+			return baseMapper.getSecurityLocusInfoList(liveLocationVo);
+		}
+		//车辆
+		if (liveLocationVo.getType()==2){
+			return baseMapper.getCarLocusInfoList(liveLocationVo);
+		}
+		//枪支
+		if (liveLocationVo.getType()==3){
+			return baseMapper.getGunLocusInfoList(liveLocationVo);
 		}
 		return baseMapper.selectSecurityAndCarAndGunLiveLocationPage(liveLocationVo);
 	}
@@ -83,4 +83,61 @@
 	public LiveLocation getLiveLocationInfo(LiveLocation liveLocation) {
 		return baseMapper.getLiveLocationInfo(liveLocation);
 	}
+
+
+	/**
+	 * 获取指令接收人的定位信息
+	 * @param liveLocationVo 定位数据信息
+	 * @return
+	 */
+	@Override
+	public List<LiveLocationVo> getDirectiveLiveLocationVoList(LiveLocationVo liveLocationVo) {
+		ArrayList<LiveLocationVo> arrayList = new ArrayList<>();
+		//人员
+		if (liveLocationVo.getType()==1){
+			String userIds = liveLocationVo.getUserIds();
+			if (null!=userIds && userIds!=""){
+				List<String> list = Arrays.asList(userIds.split(","));
+				if (list.size()>0){
+					list.forEach(userId->{
+						liveLocationVo.setWorkerId(Long.parseLong(userId));
+						LiveLocationVo directiveLiveLocationVo = baseMapper.getDirectiveLiveLocationVo(liveLocationVo);
+						//如果存在定位数据
+						if (null!=directiveLiveLocationVo){
+							arrayList.add(directiveLiveLocationVo);
+						}
+					});
+				}
+			}
+		}
+		return arrayList;
+	}
+
+	/**
+	 * 获取指令接收人的轨迹数据
+	 * @param liveLocationVo 实时对象信息
+	 * @return
+	 */
+	@Override
+	public List<List<LocusVo>> getDirectiveLocusInfoList(LiveLocationVo liveLocationVo) {
+		List<List<LocusVo>> arrayList = new ArrayList<>();
+		//人员
+		if (liveLocationVo.getType()==1){
+			String userIds = liveLocationVo.getUserIds();
+			if (null!=userIds && userIds!=""){
+				List<String> list = Arrays.asList(userIds.split(","));
+				if (list.size()>0){
+					list.forEach(userId->{
+						liveLocationVo.setWorkerId(Long.parseLong(userId));
+						List<LocusVo> directiveLocusInfoList = baseMapper.getDirectiveLocusInfoList(liveLocationVo);
+						//如果存在轨迹数据
+						if (directiveLocusInfoList.size()>0){
+							arrayList.add(directiveLocusInfoList);
+						}
+					});
+				}
+			}
+		}
+		return arrayList;
+	}
 }

--
Gitblit v1.9.3