From 7634d7ff15b1fa84ea84a51a1ba6e45b11a4aa21 Mon Sep 17 00:00:00 2001
From: liurunyu <lry9898@163.com>
Date: 星期日, 27 四月 2025 11:17:34 +0800
Subject: [PATCH] SSO登录逻辑再修改
---
pipIrr-platform/pipIrr-web/pipIrr-web-project/src/main/java/com/dy/pipIrrProject/network/NetworkSv.java | 129 +++++++++++++++++++++++++++++++++++++++++++
1 files changed, 129 insertions(+), 0 deletions(-)
diff --git a/pipIrr-platform/pipIrr-web/pipIrr-web-project/src/main/java/com/dy/pipIrrProject/network/NetworkSv.java b/pipIrr-platform/pipIrr-web/pipIrr-web-project/src/main/java/com/dy/pipIrrProject/network/NetworkSv.java
new file mode 100644
index 0000000..c0cb3fc
--- /dev/null
+++ b/pipIrr-platform/pipIrr-web/pipIrr-web-project/src/main/java/com/dy/pipIrrProject/network/NetworkSv.java
@@ -0,0 +1,129 @@
+package com.dy.pipIrrProject.network;
+
+import com.alibaba.fastjson2.JSON;
+import com.alibaba.fastjson2.JSONArray;
+import com.alibaba.fastjson2.JSONObject;
+import com.dy.pipIrrGlobal.daoPr.PrNetworkCoordinatesMapper;
+import com.dy.pipIrrGlobal.daoPr.PrWaterNetworkMapper;
+import com.dy.pipIrrGlobal.pojoPr.PrNetworkCoordinates;
+import com.dy.pipIrrGlobal.pojoPr.PrWaterNetwork;
+import com.dy.pipIrrGlobal.voPr.VoNetwork;
+import com.dy.pipIrrGlobal.voPr.VoNetworkCoordinates;
+import com.dy.pipIrrProject.network.dto.Network;
+import com.dy.pipIrrProject.result.ProjectResultCode;
+import lombok.RequiredArgsConstructor;
+import lombok.extern.slf4j.Slf4j;
+import org.springframework.stereotype.Service;
+
+import java.util.ArrayList;
+import java.util.List;
+import java.util.Optional;
+
+/**
+ * @author ZhuBaoMin
+ * @date 2024-08-27 17:08
+ * @LastEditTime 2024-08-27 17:08
+ * @Description
+ */
+
+@Slf4j
+@Service
+@RequiredArgsConstructor
+public class NetworkSv {
+ private final PrWaterNetworkMapper prWaterNetworkMapper;
+ private final PrNetworkCoordinatesMapper prNetworkCoordinatesMapper;
+
+ /**
+ * 娣诲姞绠$綉
+ * @param po
+ * @return
+ */
+ public Long addNetwork(PrWaterNetwork po) {
+ prWaterNetworkMapper.insert(po);
+ return po.getId();
+ }
+
+ /**
+ * 娣诲姞绠$綉鍧愭爣
+ * @param po
+ * @return
+ */
+ public Long addNetworkCoordinate(PrNetworkCoordinates po) {
+ prNetworkCoordinatesMapper.insert(po);
+ return po.getId();
+ };
+
+ /**
+ * 娣诲姞绠$綉
+ * @param po
+ * @return
+ */
+ public String addNetworks(Network po) {
+ String result = "";
+ PrWaterNetwork prWaterNetwork = null;
+ Long networkId = null;
+
+ prWaterNetworkMapper.clearNetworks();
+ prNetworkCoordinatesMapper.clearCoordinates();
+
+ JSONArray networks = po.getData();
+ for (int i = 0; i < networks.size(); i++) {
+ // 鍙栧嚭涓�绗旂粯鐢�
+ JSONObject polyline = networks.getJSONObject(i);
+ // 娣诲姞璇ョ瑪缁樼敾
+ prWaterNetwork = new PrWaterNetwork();
+ prWaterNetwork.setNetworkType(po.getType());
+ networkId = addNetwork(prWaterNetwork);
+
+ // 鍙栧嚭涓�绗旂粯鐢讳腑鐨勫潗鏍囩偣
+ JSONArray coordinates = polyline.getJSONArray("coordinates");
+ for (int j = 0; j < coordinates.size(); j++) {
+ JSONObject point = coordinates.getJSONObject(j);
+
+ PrNetworkCoordinates prNetworkCoordinates = new PrNetworkCoordinates();
+ prNetworkCoordinates.setNetworkId(networkId);
+ prNetworkCoordinates.setLat(point.getBigDecimal("lat"));
+ prNetworkCoordinates.setLng(point.getBigDecimal("lng"));
+
+ Long coordinateId = Optional.ofNullable(addNetworkCoordinate(prNetworkCoordinates)).orElse(0L);
+ if (coordinateId.equals(0)) {
+ //return BaseResponseUtils.buildErrorMsg(ProjectResultCode.SAVA_NETWORK_ERROR.getMessage());
+ result = ProjectResultCode.SAVA_NETWORK_ERROR.getMessage();
+ }
+ }
+ }
+ return result;
+ }
+
+ /**
+ * 鑾峰彇鍏ㄩ儴绠$綉
+ * @return
+ */
+ public List<VoNetwork> getNetworks() {
+ JSONArray array_result = new JSONArray();
+ JSONArray array_networks = null;
+
+ List<VoNetwork> list_networks = prWaterNetworkMapper.getAllNewworks();
+ if(list_networks != null && list_networks.size() > 0) {
+ array_networks = (JSONArray) JSON.toJSON(list_networks);
+ for (int i = 0; i < array_networks.size(); i++) {
+ JSONObject job_network = array_networks.getJSONObject(i);
+
+ List<VoNetworkCoordinates> list_networkCoordinates = prNetworkCoordinatesMapper.getCoordinatesByNetworkId(job_network.getLong("networkId"));
+ if(list_networkCoordinates == null) {
+ list_networkCoordinates = new ArrayList<>();
+ }
+
+ JSONObject job_points = new JSONObject();
+ job_points.put("type", "Polyline");
+ job_points.put("coordinates", (JSONArray) JSON.toJSON(list_networkCoordinates));
+ job_network.put("data", job_points);
+ array_result.add(job_network);
+ }
+ return array_result.toList(VoNetwork.class);
+
+ }else {
+ return new ArrayList<>();
+ }
+ }
+}
--
Gitblit v1.8.0