From 7bce3a96c4a1a61a2c299be033c3fb798648ad78 Mon Sep 17 00:00:00 2001
From: liurunyu <lry9898@163.com>
Date: 星期二, 22 十月 2024 15:05:49 +0800
Subject: [PATCH] Merge branch 'master' of http://8.140.179.55:20000/r/pipIrr-SV
---
pipIrr-platform/pipIrr-web/pipIrr-web-base/src/main/java/com/dy/pipIrrBase/block/BlockCtrl.java | 75 ++++++++++++++++++++++++++++++++-----
1 files changed, 65 insertions(+), 10 deletions(-)
diff --git a/pipIrr-platform/pipIrr-web/pipIrr-web-base/src/main/java/com/dy/pipIrrBase/block/BlockCtrl.java b/pipIrr-platform/pipIrr-web/pipIrr-web-base/src/main/java/com/dy/pipIrrBase/block/BlockCtrl.java
index a3399dc..eb0b48b 100644
--- a/pipIrr-platform/pipIrr-web/pipIrr-web-base/src/main/java/com/dy/pipIrrBase/block/BlockCtrl.java
+++ b/pipIrr-platform/pipIrr-web/pipIrr-web-base/src/main/java/com/dy/pipIrrBase/block/BlockCtrl.java
@@ -94,15 +94,12 @@
* 鏍规嵁鎸囧畾鏉′欢鑾峰彇鐗囧尯锛�2024-08-14鏂板锛屾浛鎹㈠師鏉ョ殑鐗囧尯鍒嗛〉鏌ヨ
*
* @param qo
- * @param bindingResult
+ * @param
* @return
*/
@GetMapping(path = "/some")
@SsoAop()
- public BaseResponse<QueryResultVo<List<VoBlock>>> getBlocks(@Valid QueryVo qo, BindingResult bindingResult) {
- if (bindingResult != null && bindingResult.hasErrors()) {
- return BaseResponseUtils.buildFail(Objects.requireNonNull(bindingResult.getFieldError()).getDefaultMessage());
- }
+ public BaseResponse<QueryResultVo<List<VoBlock>>> getBlocks(QueryVo qo) {
try {
return BaseResponseUtils.buildSuccess(this.sv.getBlocks(qo));
} catch (Exception e) {
@@ -266,6 +263,7 @@
* @return
*/
@PostMapping(path = "update", consumes = MediaType.APPLICATION_JSON_VALUE)
+ @Transactional(rollbackFor = Exception.class)
@SsoAop()
public BaseResponse<Boolean> update(@RequestBody @Valid Block po, BindingResult bindingResult) {
if (bindingResult != null && bindingResult.hasErrors()) {
@@ -298,14 +296,55 @@
return BaseResponseUtils.buildFail("鏁版嵁搴撳瓨鍌ㄥけ璐�");
}
- // 鍒犻櫎鐗囧尯鍏宠仈鐨勫湴鍥惧浘褰�
- this.sv.deleteMapGraph(blockId);
// 鍒犻櫎鍦板浘鍥惧舰鍧愭爣
this.sv.deleteMapCoordinates(blockId);
+ // 鍒犻櫎鐗囧尯鍏宠仈鐨勫湴鍥惧浘褰�
+ this.sv.deleteMapGraph(blockId);
+
+ JSONArray graphs = po.getGraphs();
+ for (int i = 0; i < graphs.size(); i++) {
+ JSONObject graph = graphs.getJSONObject(i);
+
+ // 娣诲姞鍦板浘鍥惧舰璁板綍
+ BaMapGraph baMapGraph = new BaMapGraph();
+ baMapGraph.setBlockId(blockId);
+ switch (graph.getString("type")) {
+ case "CircleMarker":
+ baMapGraph.setGraphType(graphTypeENUM.CIRCLE_MARKER.getCode());
+ break;
+ case "Polygon":
+ baMapGraph.setGraphType(graphTypeENUM.POLYGON.getCode());
+ break;
+ case "Polyline":
+ baMapGraph.setGraphType(graphTypeENUM.POLYLINE.getCode());
+ break;
+ }
+ Long graphId = Optional.ofNullable(this.sv.addMapGraph(baMapGraph)).orElse(0L);
+ if (graphId.equals(0)) {
+ return BaseResponseUtils.buildErrorMsg(SystemResultCode.SAVA_BLOCK_ERROR.getMessage());
+ }
+
+ // 娣诲姞鍦板浘鍥惧舰鍧愭爣璁板綍
+ JSONArray coordinates = graph.getJSONArray("coordinates");
+ for (int j = 0; j < coordinates.size(); j++) {
+ JSONArray coordinate = coordinates.getJSONArray(j);
+ for (int k = 0; k < coordinate.size(); k++) {
+ JSONObject point = coordinate.getJSONObject(k);
+
+ BaMapCoordinates mapCoordinates = new BaMapCoordinates();
+ mapCoordinates.setGraphId(graphId);
+ mapCoordinates.setLat(point.getBigDecimal("lat"));
+ mapCoordinates.setLng(point.getBigDecimal("lng"));
+ Long coordinateId = Optional.ofNullable(this.sv.addMapCoordinate(mapCoordinates)).orElse(0L);
+ if (coordinateId.equals(0)) {
+ return BaseResponseUtils.buildErrorMsg(SystemResultCode.SAVA_BLOCK_ERROR.getMessage());
+ }
+ }
+ }
+ }
return BaseResponseUtils.buildSuccess(true);
}
-
/**
* 鍒犻櫎鐗囧尯
@@ -325,6 +364,7 @@
//@GetMapping(path = "delete", consumes = MediaType.TEXT_PLAIN_VALUE)
@GetMapping(path = "delete")
+ @Transactional(rollbackFor = Exception.class)
@SsoAop()
public BaseResponse<Boolean> delete(Long id) {
if (id == null) {
@@ -341,11 +381,26 @@
return BaseResponseUtils.buildFail("鏁版嵁搴撳瓨鍌ㄥけ璐�");
}
- // 鍒犻櫎鐗囧尯鍏宠仈鐨勫湴鍥惧浘褰�
- this.sv.deleteMapGraph(id);
// 鍒犻櫎鍦板浘鍥惧舰鍧愭爣
this.sv.deleteMapCoordinates(id);
+ // 鍒犻櫎鐗囧尯鍏宠仈鐨勫湴鍥惧浘褰�
+ this.sv.deleteMapGraph(id);
return BaseResponseUtils.buildSuccess(true);
}
+
+ /**
+ * 鑾峰彇鐗囧尯銆佸垎姘存埧鑱斿姩瑙嗗浘锛屾坊鍔犲啘鎴锋椂浣跨敤
+ * @return
+ */
+ @GetMapping(path = "/block_divides")
+ @SsoAop()
+ public BaseResponse<JSONArray> getBlockDivides() {
+ try {
+ return BaseResponseUtils.buildSuccess(this.sv.getBlockDivides());
+ } catch (Exception e) {
+ log.error("鑾峰彇寮�鍗¤褰曞紓甯�", e);
+ return BaseResponseUtils.buildException(e.getMessage());
+ }
+ }
}
--
Gitblit v1.8.0