|
@@ -1,25 +1,33 @@
|
|
|
package com.ruoyi.web.controller.bd;
|
|
|
|
|
|
-import java.util.List;
|
|
|
-import javax.servlet.http.HttpServletResponse;
|
|
|
-import org.springframework.security.access.prepost.PreAuthorize;
|
|
|
+import com.alibaba.fastjson2.JSON;
|
|
|
+import com.ruoyi.bd.domain.BdDevcTrailUwb;
|
|
|
+import com.ruoyi.bd.service.IBdDevcTrailUwbService;
|
|
|
+import com.ruoyi.common.BDConst;
|
|
|
+import com.ruoyi.common.annotation.Anonymous;
|
|
|
+import com.ruoyi.common.annotation.Log;
|
|
|
+import com.ruoyi.common.core.controller.BaseController;
|
|
|
+import com.ruoyi.common.core.domain.AjaxResult;
|
|
|
+import com.ruoyi.common.core.page.TableDataInfo;
|
|
|
+import com.ruoyi.common.enums.BusinessType;
|
|
|
+import com.ruoyi.common.utils.DateTimeUtil;
|
|
|
+import com.ruoyi.common.utils.poi.ExcelUtil;
|
|
|
+import net.dreamlu.iot.mqtt.spring.client.MqttClientTemplate;
|
|
|
import org.springframework.beans.factory.annotation.Autowired;
|
|
|
+import org.springframework.web.bind.annotation.CrossOrigin;
|
|
|
+import org.springframework.web.bind.annotation.DeleteMapping;
|
|
|
import org.springframework.web.bind.annotation.GetMapping;
|
|
|
+import org.springframework.web.bind.annotation.PathVariable;
|
|
|
import org.springframework.web.bind.annotation.PostMapping;
|
|
|
import org.springframework.web.bind.annotation.PutMapping;
|
|
|
-import org.springframework.web.bind.annotation.DeleteMapping;
|
|
|
-import org.springframework.web.bind.annotation.PathVariable;
|
|
|
import org.springframework.web.bind.annotation.RequestBody;
|
|
|
import org.springframework.web.bind.annotation.RequestMapping;
|
|
|
import org.springframework.web.bind.annotation.RestController;
|
|
|
-import com.ruoyi.common.annotation.Log;
|
|
|
-import com.ruoyi.common.core.controller.BaseController;
|
|
|
-import com.ruoyi.common.core.domain.AjaxResult;
|
|
|
-import com.ruoyi.common.enums.BusinessType;
|
|
|
-import com.ruoyi.bd.domain.BdDevcTrailUwb;
|
|
|
-import com.ruoyi.bd.service.IBdDevcTrailUwbService;
|
|
|
-import com.ruoyi.common.utils.poi.ExcelUtil;
|
|
|
-import com.ruoyi.common.core.page.TableDataInfo;
|
|
|
+
|
|
|
+import javax.servlet.http.HttpServletResponse;
|
|
|
+import java.util.HashMap;
|
|
|
+import java.util.List;
|
|
|
+import java.util.Map;
|
|
|
|
|
|
/**
|
|
|
* 室内坐标定位Controller
|
|
@@ -28,19 +36,20 @@ import com.ruoyi.common.core.page.TableDataInfo;
|
|
|
* @date 2024-10-16
|
|
|
*/
|
|
|
@RestController
|
|
|
+@CrossOrigin
|
|
|
@RequestMapping("/bd/devcTrailUwb")
|
|
|
-public class BdDevcTrailUwbController extends BaseController
|
|
|
-{
|
|
|
+public class BdDevcTrailUwbController extends BaseController {
|
|
|
@Autowired
|
|
|
private IBdDevcTrailUwbService bdDevcTrailUwbService;
|
|
|
|
|
|
+ @Autowired
|
|
|
+ private MqttClientTemplate client;
|
|
|
+
|
|
|
/**
|
|
|
* 查询室内坐标定位列表
|
|
|
*/
|
|
|
- @PreAuthorize("@ss.hasPermi('bd:devcTrailUwb:list')")
|
|
|
@GetMapping("/list")
|
|
|
- public TableDataInfo list(BdDevcTrailUwb bdDevcTrailUwb)
|
|
|
- {
|
|
|
+ public TableDataInfo list(BdDevcTrailUwb bdDevcTrailUwb) {
|
|
|
startPage();
|
|
|
List<BdDevcTrailUwb> list = bdDevcTrailUwbService.selectBdDevcTrailUwbList(bdDevcTrailUwb);
|
|
|
return getDataTable(list);
|
|
@@ -49,56 +58,63 @@ public class BdDevcTrailUwbController extends BaseController
|
|
|
/**
|
|
|
* 导出室内坐标定位列表
|
|
|
*/
|
|
|
- @PreAuthorize("@ss.hasPermi('bd:devcTrailUwb:export')")
|
|
|
@Log(title = "室内坐标定位", businessType = BusinessType.EXPORT)
|
|
|
@PostMapping("/export")
|
|
|
- public void export(HttpServletResponse response, BdDevcTrailUwb bdDevcTrailUwb)
|
|
|
- {
|
|
|
+ public void export(HttpServletResponse response, BdDevcTrailUwb bdDevcTrailUwb) {
|
|
|
List<BdDevcTrailUwb> list = bdDevcTrailUwbService.selectBdDevcTrailUwbList(bdDevcTrailUwb);
|
|
|
ExcelUtil<BdDevcTrailUwb> util = new ExcelUtil<BdDevcTrailUwb>(BdDevcTrailUwb.class);
|
|
|
util.exportExcel(response, list, "室内坐标定位数据");
|
|
|
}
|
|
|
|
|
|
+ @PostMapping("/point")
|
|
|
+ @Anonymous
|
|
|
+ public void pushPoint(@RequestBody BdDevcTrailUwb bdDevcTrailUwb) {
|
|
|
+ Map<String, Object> map = new HashMap() {
|
|
|
+ {
|
|
|
+ put("latitude", bdDevcTrailUwb.getLat());
|
|
|
+ put("longitude", bdDevcTrailUwb.getLng());
|
|
|
+ put("srcTimestamp", DateTimeUtil.timestampMillis());
|
|
|
+ put("key", bdDevcTrailUwb.getDevcKey());
|
|
|
+ put("deviceId", bdDevcTrailUwb.getDevcKey());
|
|
|
+ }
|
|
|
+ };
|
|
|
+ client.publish(String.format(BDConst.MQTT_TOPIC.DEVICE_LOCATION_TOPIC, bdDevcTrailUwb.getDevcKey()), JSON.toJSONBytes(map));
|
|
|
+ }
|
|
|
+
|
|
|
+
|
|
|
/**
|
|
|
* 获取室内坐标定位详细信息
|
|
|
*/
|
|
|
- @PreAuthorize("@ss.hasPermi('bd:devcTrailUwb:query')")
|
|
|
@GetMapping(value = "/{id}")
|
|
|
- public AjaxResult getInfo(@PathVariable("id") Long id)
|
|
|
- {
|
|
|
+ public AjaxResult getInfo(@PathVariable("id") Long id) {
|
|
|
return success(bdDevcTrailUwbService.selectBdDevcTrailUwbById(id));
|
|
|
}
|
|
|
|
|
|
/**
|
|
|
* 新增室内坐标定位
|
|
|
*/
|
|
|
- @PreAuthorize("@ss.hasPermi('bd:devcTrailUwb:add')")
|
|
|
@Log(title = "室内坐标定位", businessType = BusinessType.INSERT)
|
|
|
@PostMapping
|
|
|
- public AjaxResult add(@RequestBody BdDevcTrailUwb bdDevcTrailUwb)
|
|
|
- {
|
|
|
+ @Anonymous
|
|
|
+ public AjaxResult add(@RequestBody BdDevcTrailUwb bdDevcTrailUwb) {
|
|
|
return toAjax(bdDevcTrailUwbService.insertBdDevcTrailUwb(bdDevcTrailUwb));
|
|
|
}
|
|
|
|
|
|
/**
|
|
|
* 修改室内坐标定位
|
|
|
*/
|
|
|
- @PreAuthorize("@ss.hasPermi('bd:devcTrailUwb:edit')")
|
|
|
@Log(title = "室内坐标定位", businessType = BusinessType.UPDATE)
|
|
|
@PutMapping
|
|
|
- public AjaxResult edit(@RequestBody BdDevcTrailUwb bdDevcTrailUwb)
|
|
|
- {
|
|
|
+ public AjaxResult edit(@RequestBody BdDevcTrailUwb bdDevcTrailUwb) {
|
|
|
return toAjax(bdDevcTrailUwbService.updateBdDevcTrailUwb(bdDevcTrailUwb));
|
|
|
}
|
|
|
|
|
|
/**
|
|
|
* 删除室内坐标定位
|
|
|
*/
|
|
|
- @PreAuthorize("@ss.hasPermi('bd:devcTrailUwb:remove')")
|
|
|
@Log(title = "室内坐标定位", businessType = BusinessType.DELETE)
|
|
|
- @DeleteMapping("/{ids}")
|
|
|
- public AjaxResult remove(@PathVariable Long[] ids)
|
|
|
- {
|
|
|
+ @DeleteMapping("/{ids}")
|
|
|
+ public AjaxResult remove(@PathVariable Long[] ids) {
|
|
|
return toAjax(bdDevcTrailUwbService.deleteBdDevcTrailUwbByIds(ids));
|
|
|
}
|
|
|
}
|