From d35389e7e901d134d9054e75f59dd9f4cc24cb24 Mon Sep 17 00:00:00 2001
From: Administrator <admin>
Date: Thu, 22 Jul 2021 16:30:58 +0800
Subject: [PATCH] 指令接口修改,定位接口修改

---
 src/main/java/org/springblade/modules/location/service/LiveLocationService.java          |    7 +++++++
 src/main/java/org/springblade/modules/location/controller/LiveLocationController.java    |   14 ++++++++------
 src/main/java/org/springblade/modules/location/mapper/LiveLocationMapper.xml             |   17 +++++++++++++++++
 src/main/java/org/springblade/modules/location/service/impl/LiveLocationServiceImpl.java |   10 ++++++++++
 src/main/java/org/springblade/modules/directive/mapper/DirectiveMapper.xml               |    2 +-
 src/main/java/org/springblade/modules/location/mapper/LiveLocationMapper.java            |    7 +++++++
 6 files changed, 50 insertions(+), 7 deletions(-)

diff --git a/src/main/java/org/springblade/modules/directive/mapper/DirectiveMapper.xml b/src/main/java/org/springblade/modules/directive/mapper/DirectiveMapper.xml
index de171e1..38ee2c1 100644
--- a/src/main/java/org/springblade/modules/directive/mapper/DirectiveMapper.xml
+++ b/src/main/java/org/springblade/modules/directive/mapper/DirectiveMapper.xml
@@ -12,7 +12,7 @@
         left join
             blade_user bu
         on
-            bu.id = sd.user_id
+            bu.id = sd.send_directive_id
         where
         1=1
         <if test="directive.type!=null and directive.type!=''">
diff --git a/src/main/java/org/springblade/modules/location/controller/LiveLocationController.java b/src/main/java/org/springblade/modules/location/controller/LiveLocationController.java
index 68cc163..f8341b0 100644
--- a/src/main/java/org/springblade/modules/location/controller/LiveLocationController.java
+++ b/src/main/java/org/springblade/modules/location/controller/LiveLocationController.java
@@ -64,24 +64,26 @@
 	@ApiOperation(value = "新增", notes = "传入liveLocation")
 	public R saveLiveLocationAndLocus(@RequestBody LiveLocation liveLocation) {
 		//先查询是否已有实时位置信息,如果有,则更新,没有则插入
-		LiveLocationVo liveLocationVo = liveLocationService.selectLiveLocationInfo(liveLocation);
+		LiveLocation liveLocationInfo = liveLocationService.getLiveLocationInfo(liveLocation);
 		boolean status = false;
-		if (null == liveLocationVo){
+		if (null == liveLocationInfo.getId()){
 			//新增
 			liveLocation.setRecordTime(new Date());
 			status = liveLocationService.save(liveLocation);
 		}else {
 			//更新
-			liveLocationVo.setRecordTime(new Date());
-			status = liveLocationService.updateById(liveLocationVo);
+			liveLocationInfo.setRecordTime(new Date());
+			liveLocationInfo.setLongitude(liveLocation.getLongitude());
+			liveLocationInfo.setLatitude(liveLocation.getLatitude());
+			status = liveLocationService.updateById(liveLocationInfo);
 		}
 
 		if (status){
 			//新增轨迹
 			Locus locus = new Locus();
 			//封装数据
-			if (null!=liveLocationVo){
-				locus.setLiveLocationId(liveLocationVo.getId());
+			if (null!=liveLocationInfo.getId()){
+				locus.setLiveLocationId(liveLocationInfo.getId());
 			}else {
 				locus.setLiveLocationId(liveLocation.getId());
 			}
diff --git a/src/main/java/org/springblade/modules/location/mapper/LiveLocationMapper.java b/src/main/java/org/springblade/modules/location/mapper/LiveLocationMapper.java
index 81a9382..b9295e9 100644
--- a/src/main/java/org/springblade/modules/location/mapper/LiveLocationMapper.java
+++ b/src/main/java/org/springblade/modules/location/mapper/LiveLocationMapper.java
@@ -37,4 +37,11 @@
 	 * @return
 	 */
 	List<LocusVo> getLocusInfoList(@Param("liveLocation") LiveLocationVo liveLocationVo);
+
+	/**
+	 * 获取实时位置信息
+	 * @param liveLocation
+	 * @return
+	 */
+	LiveLocation getLiveLocationInfo(@Param("liveLocation") LiveLocation liveLocation);
 }
diff --git a/src/main/java/org/springblade/modules/location/mapper/LiveLocationMapper.xml b/src/main/java/org/springblade/modules/location/mapper/LiveLocationMapper.xml
index af7a13f..62c144e 100644
--- a/src/main/java/org/springblade/modules/location/mapper/LiveLocationMapper.xml
+++ b/src/main/java/org/springblade/modules/location/mapper/LiveLocationMapper.xml
@@ -34,6 +34,23 @@
         </if>
     </select>
 
+    <!--获取实时位置信息-->
+    <select id="getLiveLocationInfo" resultType="org.springblade.modules.location.entity.LiveLocation">
+        SELECT
+        *
+        FROM
+        sys_live_location
+        WHERE
+        1=1
+        <if test="liveLocation.type!=null">
+            and type = #{liveLocation.type}
+        </if>
+        <if test="liveLocation.workerId!=null and liveLocation.workerId!=''">
+            and worker_id = #{liveLocation.workerId}
+        </if>
+    </select>
+
+
     <!--获取轨迹数据-->
     <select id="getLocusInfoList" resultType="org.springblade.modules.location.vo.LocusVo">
         select
diff --git a/src/main/java/org/springblade/modules/location/service/LiveLocationService.java b/src/main/java/org/springblade/modules/location/service/LiveLocationService.java
index cf6f1c9..e6abf02 100644
--- a/src/main/java/org/springblade/modules/location/service/LiveLocationService.java
+++ b/src/main/java/org/springblade/modules/location/service/LiveLocationService.java
@@ -41,4 +41,11 @@
 	 * @return
 	 */
 	List<LiveLocationVo> getLiveLocationVoList(LiveLocationVo liveLocationVo);
+
+	/**
+	 * 获取实时位置信息
+	 * @param liveLocation
+	 * @return
+	 */
+	LiveLocation getLiveLocationInfo(LiveLocation liveLocation);
 }
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 369b1ad..af7be3b 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
@@ -58,4 +58,14 @@
 	public List<LiveLocationVo> getLiveLocationVoList(LiveLocationVo liveLocationVo) {
 		return baseMapper.selectLiveLocationPage(null,liveLocationVo);
 	}
+
+	/**
+	 * 获取实时位置信息
+	 * @param liveLocation
+	 * @return
+	 */
+	@Override
+	public LiveLocation getLiveLocationInfo(LiveLocation liveLocation) {
+		return baseMapper.getLiveLocationInfo(liveLocation);
+	}
 }

--
Gitblit v1.9.3