From cd538c205628f28839323b49b7f77f33196a601f Mon Sep 17 00:00:00 2001
From: zhangnaisong <2434969829@qq.com>
Date: 星期四, 11 七月 2024 15:50:42 +0800
Subject: [PATCH] 电磁锁操控加入判断速度为0提交
---
ard-work/src/main/java/com/ruoyi/app/position/controller/ArdAppPositionController.java | 177 +++++++++++++++++++++++++++++++++++++----------------------
1 files changed, 111 insertions(+), 66 deletions(-)
diff --git a/ard-work/src/main/java/com/ruoyi/app/position/controller/ArdAppPositionController.java b/ard-work/src/main/java/com/ruoyi/app/position/controller/ArdAppPositionController.java
index 6a3de03..3b5c939 100644
--- a/ard-work/src/main/java/com/ruoyi/app/position/controller/ArdAppPositionController.java
+++ b/ard-work/src/main/java/com/ruoyi/app/position/controller/ArdAppPositionController.java
@@ -1,28 +1,21 @@
package com.ruoyi.app.position.controller;
-import javax.annotation.Resource;
import javax.servlet.http.HttpServletResponse;
+import com.ruoyi.alarmpoints.well.domain.ArdAlarmpointsWellParam;
import com.ruoyi.app.position.domain.ArdAppPosition;
import com.ruoyi.app.position.service.IArdAppPositionService;
-import com.ruoyi.common.constant.CacheConstants;
import com.ruoyi.common.core.domain.entity.SysUser;
-import com.ruoyi.common.core.domain.model.LoginUser;
-import com.ruoyi.common.core.redis.RedisCache;
import com.ruoyi.common.utils.SecurityUtils;
import com.ruoyi.common.utils.StringUtils;
import com.ruoyi.common.utils.poi.ExcelUtil;
-import com.ruoyi.device.hiksdk.util.minio.MinioUtils;
-import com.ruoyi.rongcloud.service.RongCloudService;
-import com.ruoyi.system.domain.SysUserOnline;
-import com.ruoyi.system.service.ISysRoleService;
-import com.ruoyi.system.service.ISysUserOnlineService;
import com.ruoyi.system.service.ISysUserService;
+import com.ruoyi.utils.minio.MinioUtil;
+import com.ruoyi.utils.result.Results;
import io.swagger.annotations.Api;
import io.swagger.annotations.ApiOperation;
import org.springframework.security.access.prepost.PreAuthorize;
import org.springframework.beans.factory.annotation.Autowired;
-import org.springframework.security.core.context.SecurityContextHolder;
import org.springframework.web.bind.annotation.GetMapping;
import org.springframework.web.bind.annotation.PostMapping;
import org.springframework.web.bind.annotation.PutMapping;
@@ -38,25 +31,28 @@
import com.ruoyi.common.core.page.TableDataInfo;
import org.springframework.web.multipart.MultipartFile;
+import java.net.InetAddress;
+import java.net.MalformedURLException;
+import java.net.URL;
+import java.net.UnknownHostException;
import java.util.*;
/**
* app浣嶇疆Controller
- *
+ *
* @author ard
* @date 2023-07-18
*/
@Api(tags = "app浣嶇疆")
@RestController
@RequestMapping("/app/position")
-public class ArdAppPositionController extends BaseController
-{
+public class ArdAppPositionController extends BaseController {
@Autowired
private IArdAppPositionService ardAppPositionService;
@Autowired
private ISysUserService sysUserService;
- @Autowired
- private RongCloudService rongCloudService;
+// @Autowired
+// private MinioUtils minioUtil;
/**
* 鏌ヨapp浣嶇疆鍒楄〃
@@ -64,8 +60,7 @@
@ApiOperation("鏌ヨapp浣嶇疆鍒楄〃")
// @PreAuthorize("@ss.hasPermi('app:position:list')")
@GetMapping("/list")
- public TableDataInfo list(ArdAppPosition ardAppPosition)
- {
+ public TableDataInfo list(ArdAppPosition ardAppPosition) {
startPage();
List<ArdAppPosition> list = ardAppPositionService.selectArdAppPositionList(ardAppPosition);
return getDataTable(list);
@@ -77,8 +72,7 @@
@PreAuthorize("@ss.hasPermi('app:position:export')")
@Log(title = "app浣嶇疆", businessType = BusinessType.EXPORT)
@PostMapping("/export")
- public void export(HttpServletResponse response, ArdAppPosition ardAppPosition)
- {
+ public void export(HttpServletResponse response, ArdAppPosition ardAppPosition) {
List<ArdAppPosition> list = ardAppPositionService.selectArdAppPositionList(ardAppPosition);
ExcelUtil<ArdAppPosition> util = new ExcelUtil<ArdAppPosition>(ArdAppPosition.class);
util.exportExcel(response, list, "app浣嶇疆鏁版嵁");
@@ -89,8 +83,7 @@
*/
@PreAuthorize("@ss.hasPermi('app:position:query')")
@GetMapping(value = "/{id}")
- public AjaxResult getInfo(@PathVariable("id") String id)
- {
+ public AjaxResult getInfo(@PathVariable("id") String id) {
return success(ardAppPositionService.selectArdAppPositionById(id));
}
@@ -101,9 +94,8 @@
// @PreAuthorize("@ss.hasPermi('app:position:add')")
@Log(title = "app浣嶇疆", businessType = BusinessType.INSERT)
@PostMapping
- public AjaxResult add(@RequestBody ArdAppPosition ardAppPosition)
- {
- return toAjax(ardAppPositionService.insertArdAppPosition(ardAppPosition));
+ public AjaxResult add(@RequestBody ArdAppPosition ardAppPosition) {
+ return AjaxResult.success(ardAppPositionService.insertArdAppPosition(ardAppPosition));
}
/**
@@ -112,8 +104,7 @@
@PreAuthorize("@ss.hasPermi('app:position:edit')")
@Log(title = "app浣嶇疆", businessType = BusinessType.UPDATE)
@PutMapping
- public AjaxResult edit(@RequestBody ArdAppPosition ardAppPosition)
- {
+ public AjaxResult edit(@RequestBody ArdAppPosition ardAppPosition) {
return toAjax(ardAppPositionService.updateArdAppPosition(ardAppPosition));
}
@@ -122,88 +113,142 @@
*/
@PreAuthorize("@ss.hasPermi('app:position:remove')")
@Log(title = "app浣嶇疆", businessType = BusinessType.DELETE)
- @DeleteMapping("/{ids}")
- public AjaxResult remove(@PathVariable String[] ids)
- {
+ @DeleteMapping("/{ids}")
+ public AjaxResult remove(@PathVariable String[] ids) {
return toAjax(ardAppPositionService.deleteArdAppPositionByIds(ids));
}
+
/**
* 鑾峰彇鎵�鏈夌敤鎴�
*/
@ApiOperation("鑾峰彇鎵�鏈夌敤鎴�")
@GetMapping("/getUserlist")
- public AjaxResult getUserlist(Long deptId)
- {
- SysUser user=new SysUser();
+ public AjaxResult getUserlist(Long deptId) {
+ SysUser user = new SysUser();
user.setDeptId(deptId);
List<SysUser> list = sysUserService.selectUserList(user);
return AjaxResult.success(list);
}
+ /**
+ * 鑾峰彇鎵�鏈塧pp鐢ㄦ埛
+ */
+ @ApiOperation("鑾峰彇鎵�鏈塧pp鐢ㄦ埛")
+ @GetMapping("/getAppUserList")
+ public AjaxResult getAppUserList(Long deptId) {
+ SysUser user = new SysUser();
+ user.setDeptId(deptId);
+ List<SysUser> list = sysUserService.selectAllAppUserList(user);
+ return AjaxResult.success(list);
+ }
/**
* 鑾峰彇鎵�鏈塧pp鐢ㄦ埛
*/
@ApiOperation("鑾峰彇鎵�鏈塧pp鐢ㄦ埛pc")
@GetMapping("/getAppUserForPclist")
- public AjaxResult getAppUserForPclist(Long deptId)
- {
- SysUser user=new SysUser();
+ public AjaxResult getAppUserForPclist(Long deptId) {
+ SysUser user = new SysUser();
user.setDeptId(deptId);
List<SysUser> list = sysUserService.selectAllAppUserList(user);
- List<SysUser> onLineList=new ArrayList<>();
- List<SysUser> offLineList=new ArrayList<>();
- for(SysUser sysUser:list)
- {
+ List<SysUser> onLineList = new ArrayList<>();
+ List<SysUser> offLineList = new ArrayList<>();
+ for (SysUser sysUser : list) {
ArdAppPosition ardAppPosition = ardAppPositionService.selectLastArdAppPositionByUserId(sysUser.getUserId());
- if(ardAppPosition!=null) {
- Map<String, Object> params =new HashMap<>();
+ if (ardAppPosition != null) {
+ Map<String, Object> params = new HashMap<>();
params.put("longitude", ardAppPosition.getLongitude());
- params.put("lagitude", ardAppPosition.getLatitude());
+ params.put("latitude", ardAppPosition.getLatitude());
params.put("altitude", ardAppPosition.getAltitude());
params.put("bearing", ardAppPosition.getBearing());
sysUser.setParams(params);
}
- Boolean online = rongCloudService.checkOnline(sysUser.getUserId());
- if(online)
- {
- onLineList.add(sysUser);
- }
- else
- {
+ if (StringUtils.isNotNull(sysUser.getAppOnlineState())) {
+ if (sysUser.getAppOnlineState().equals("1")) {
+ onLineList.add(sysUser);
+ } else {
+ offLineList.add(sysUser);
+ }
+ } else {
offLineList.add(sysUser);
}
+
}
- Map<String,Object> onlineMap=new HashMap<>();
- onlineMap.put("children",onLineList);
- onlineMap.put("name","鍦ㄧ嚎鐢ㄦ埛("+onLineList.size()+")");
- onlineMap.put("disabled",true);
- onlineMap.put("id","onLine");
- Map<String,Object> offlineMap=new HashMap<>();
- offlineMap.put("children",offLineList);
- offlineMap.put("name","绂荤嚎鐢ㄦ埛("+offLineList.size()+")");
- offlineMap.put("disabled",true);
- offlineMap.put("id","offLine");
- List< Map<String,Object> > lists = new ArrayList<>();
+ Map<String, Object> onlineMap = new HashMap<>();
+ onlineMap.put("children", onLineList);
+ onlineMap.put("name", "鍦ㄧ嚎鐢ㄦ埛(" + onLineList.size() + ")");
+ onlineMap.put("disabled", true);
+ onlineMap.put("id", "onLine");
+ Map<String, Object> offlineMap = new HashMap<>();
+ offlineMap.put("children", offLineList);
+ offlineMap.put("name", "绂荤嚎鐢ㄦ埛(" + offLineList.size() + ")");
+ offlineMap.put("disabled", true);
+ offlineMap.put("id", "offLine");
+ List<Map<String, Object>> lists = new ArrayList<>();
lists.add(onlineMap);
lists.add(offlineMap);
return AjaxResult.success(lists);
}
+
/**
* 鑾峰彇鐢ㄦ埛璇︽儏
*/
@ApiOperation("鑾峰彇鐢ㄦ埛璇︽儏")
@GetMapping("/getUserInfo")
- public AjaxResult getUserInfo(String userId)
- {
+ public AjaxResult getUserInfo(String userId) {
SysUser sysUser = sysUserService.selectUserById(userId);
return AjaxResult.success(sysUser);
}
+
@PostMapping("/uploadFile")
@ApiOperation("涓婁紶鏂囦欢")
- public AjaxResult uploadFile(MultipartFile file,String type)
- {
- String url = MinioUtils.putObjectAndGetUrl("app",type, file);
- return AjaxResult.success(url);
+ public AjaxResult uploadFile(MultipartFile file, String type) throws MalformedURLException, UnknownHostException {
+ String urlStr = MinioUtil.putObjectAndGetUrl("app", type, file);
+ URL url = new URL(urlStr);
+ // 鏇挎崲 https 涓� http锛屽苟灏嗕富鏈哄悕鍜岀鍙e彿鏇挎崲涓烘湰鍦板湴鍧�
+ String serverIpAddress = InetAddress.getLocalHost().getHostAddress();
+ // 鏋勫缓鏂扮殑 URL 瀵硅薄锛屼娇鐢� HTTPS 鍗忚
+ URL httpsUrl = new URL("https", serverIpAddress, url.getPort(), url.getFile());
+ return AjaxResult.success(httpsUrl);
}
+
+ @GetMapping("/getOnlinePCOrCommander")
+ @ApiOperation("鏌ヨ鏈儴闂ㄥ湪绾縋C绔強鎸囨尌绔�")
+ public AjaxResult getOnlinePCOrCommander() {
+ String usersId = SecurityUtils.getUserId();
+ Map<String, List<SysUser>> result = ardAppPositionService.getOnlinePCOrCommander(usersId);
+ return AjaxResult.success(result);
+ }
+
+ @GetMapping("/getOnlineCommanderPosition")
+ @ApiOperation("鍗曞叺绔煡鐪嬪凡閫氳繃瀹℃壒鐨勫湪绾挎寚鎸ョ浣嶇疆")
+ public AjaxResult getOnlineCommanderPosition() {
+ String soilderId = SecurityUtils.getUserId();
+ try {
+ List<Map<String, Object>> result = ardAppPositionService.getOnlineCommanderPosition(soilderId);
+ return AjaxResult.success(result);
+ } catch (Exception e) {
+ e.printStackTrace();
+ return AjaxResult.error();
+ }
+ }
+
+ @PostMapping("/getAPPPositionByUserIdAndTime")
+ @ApiOperation("鏌ョ湅APP鍘嗗彶浣嶇疆")
+ public AjaxResult getAPPPositionByUserIdAndTime(@RequestBody Map<String, String> para) {
+ try {
+ List<ArdAppPosition> result = ardAppPositionService.getAPPPositionByUserIdAndTime(para);
+ return AjaxResult.success(result);
+ } catch (Exception e) {
+ e.printStackTrace();
+ return AjaxResult.error();
+ }
+ }
+
+ @GetMapping("/getOnlineAPPSoilderByCommanderId")
+ public AjaxResult getOnlineAPPSoilderByCommanderId() {
+ String userId = SecurityUtils.getUserId();
+ return success(ardAppPositionService.getOnlineAPPSoilderByCommanderId(userId));
+ }
+
}
--
Gitblit v1.9.3