From f22986b1aae508adbcf6d3a43e44a5e2cdda8adf Mon Sep 17 00:00:00 2001
From: zhubaomin <zhubaomin>
Date: 星期三, 28 八月 2024 15:17:38 +0800
Subject: [PATCH] 2024-08-28 朱宝民 管网添加接口、管网查询接口
---
pipIrr-platform/pipIrr-web/pipIrr-web-project/src/main/java/com/dy/pipIrrProject/network/dto/Network.java | 28 ++
pipIrr-platform/pipIrr-global/src/main/resources/mapper/PrNetworkCoordinatesMapper.xml | 108 +++++++++
pipIrr-platform/pipIrr-web/pipIrr-web-sell/src/main/java/com/dy/pipIrrSell/general/GeneralCtrl.java | 1
pipIrr-platform/pipIrr-web/pipIrr-web-project/src/main/java/com/dy/pipIrrProject/network/NetworkCtrl.java | 97 ++++++++
pipIrr-platform/pipIrr-global/src/main/java/com/dy/pipIrrGlobal/voPr/VoNetwork.java | 34 ++
pipIrr-platform/pipIrr-global/src/main/java/com/dy/pipIrrGlobal/voPr/VoNetworkCoordinates.java | 30 ++
pipIrr-platform/pipIrr-global/src/main/java/com/dy/pipIrrGlobal/daoPr/PrWaterNetworkMapper.java | 42 +++
pipIrr-platform/pipIrr-global/src/main/resources/mapper/PrWaterNetworkMapper.xml | 81 ++++++
pipIrr-platform/pipIrr-web/pipIrr-web-sell/src/main/java/com/dy/pipIrrSell/result/SellResultCode.java | 8
pipIrr-platform/pipIrr-global/src/main/java/com/dy/pipIrrGlobal/daoPr/PrNetworkCoordinatesMapper.java | 39 +++
pipIrr-platform/pipIrr-web/pipIrr-web-project/src/main/java/com/dy/pipIrrProject/result/ProjectResultCode.java | 7
pipIrr-platform/pipIrr-web/pipIrr-web-project/src/main/java/com/dy/pipIrrProject/network/NetworkSv.java | 129 ++++++++++
pipIrr-platform/pipIrr-global/src/main/java/com/dy/pipIrrGlobal/pojoPr/PrWaterNetwork.java | 45 +++
pipIrr-platform/pipIrr-global/src/main/java/com/dy/pipIrrGlobal/pojoPr/PrNetworkCoordinates.java | 58 ++++
14 files changed, 703 insertions(+), 4 deletions(-)
diff --git a/pipIrr-platform/pipIrr-global/src/main/java/com/dy/pipIrrGlobal/daoPr/PrNetworkCoordinatesMapper.java b/pipIrr-platform/pipIrr-global/src/main/java/com/dy/pipIrrGlobal/daoPr/PrNetworkCoordinatesMapper.java
new file mode 100644
index 0000000..7e80ba8
--- /dev/null
+++ b/pipIrr-platform/pipIrr-global/src/main/java/com/dy/pipIrrGlobal/daoPr/PrNetworkCoordinatesMapper.java
@@ -0,0 +1,39 @@
+package com.dy.pipIrrGlobal.daoPr;
+
+import com.dy.pipIrrGlobal.pojoPr.PrNetworkCoordinates;
+import com.dy.pipIrrGlobal.voPr.VoNetworkCoordinates;
+
+import java.util.List;
+
+/**
+ * @author ZhuBaoMin
+ * @date 2024-08-27 17:23
+ * @LastEditTime 2024-08-27 17:23
+ * @Description
+ */
+public interface PrNetworkCoordinatesMapper {
+ int deleteByPrimaryKey(Long id);
+
+ int insert(PrNetworkCoordinates record);
+
+ int insertSelective(PrNetworkCoordinates record);
+
+ PrNetworkCoordinates selectByPrimaryKey(Long id);
+
+ int updateByPrimaryKeySelective(PrNetworkCoordinates record);
+
+ int updateByPrimaryKey(PrNetworkCoordinates record);
+
+ /**
+ * 娓呴櫎鍏ㄩ儴绠$綉鍧愭爣
+ */
+ void clearCoordinates();
+
+ /**
+ * 鏍规嵁绠$綉ID鑾峰彇绠$綉鍧愭爣鍒楄〃
+ * @param networkId
+ * @return
+ */
+ List<VoNetworkCoordinates> getCoordinatesByNetworkId(Long networkId);
+
+}
\ No newline at end of file
diff --git a/pipIrr-platform/pipIrr-global/src/main/java/com/dy/pipIrrGlobal/daoPr/PrWaterNetworkMapper.java b/pipIrr-platform/pipIrr-global/src/main/java/com/dy/pipIrrGlobal/daoPr/PrWaterNetworkMapper.java
new file mode 100644
index 0000000..8ac1ae1
--- /dev/null
+++ b/pipIrr-platform/pipIrr-global/src/main/java/com/dy/pipIrrGlobal/daoPr/PrWaterNetworkMapper.java
@@ -0,0 +1,42 @@
+package com.dy.pipIrrGlobal.daoPr;
+
+import com.baomidou.mybatisplus.core.mapper.BaseMapper;
+import com.dy.pipIrrGlobal.pojoPr.PrWaterNetwork;
+import com.dy.pipIrrGlobal.voPr.VoNetwork;
+import org.apache.ibatis.annotations.Mapper;
+
+import java.util.List;
+
+/**
+ * @author ZhuBaoMin
+ * @date 2024-08-27 17:14
+ * @LastEditTime 2024-08-27 17:14
+ * @Description
+ */
+
+@Mapper
+public interface PrWaterNetworkMapper extends BaseMapper<PrWaterNetwork> {
+ int deleteByPrimaryKey(Long id);
+
+ int insert(PrWaterNetwork record);
+
+ int insertSelective(PrWaterNetwork record);
+
+ PrWaterNetwork selectByPrimaryKey(Long id);
+
+ int updateByPrimaryKeySelective(PrWaterNetwork record);
+
+ int updateByPrimaryKey(PrWaterNetwork record);
+
+ /**
+ * 娓呴櫎鍏ㄩ儴绠$綉
+ */
+ void clearNetworks();
+
+ /**
+ * 鑾峰彇鍏ㄩ儴绠$綉
+ * @return
+ */
+ List<VoNetwork> getAllNewworks();
+
+}
\ No newline at end of file
diff --git a/pipIrr-platform/pipIrr-global/src/main/java/com/dy/pipIrrGlobal/pojoPr/PrNetworkCoordinates.java b/pipIrr-platform/pipIrr-global/src/main/java/com/dy/pipIrrGlobal/pojoPr/PrNetworkCoordinates.java
new file mode 100644
index 0000000..31f3606
--- /dev/null
+++ b/pipIrr-platform/pipIrr-global/src/main/java/com/dy/pipIrrGlobal/pojoPr/PrNetworkCoordinates.java
@@ -0,0 +1,58 @@
+package com.dy.pipIrrGlobal.pojoPr;
+
+import com.alibaba.fastjson2.annotation.JSONField;
+import com.alibaba.fastjson2.writer.ObjectWriterImplToString;
+import com.baomidou.mybatisplus.annotation.IdType;
+import com.baomidou.mybatisplus.annotation.TableId;
+import com.baomidou.mybatisplus.annotation.TableName;
+import com.dy.common.po.BaseEntity;
+import jakarta.validation.constraints.NotNull;
+import lombok.*;
+
+import java.math.BigDecimal;
+
+/**
+ * @author ZhuBaoMin
+ * @date 2024-08-27 17:23
+ * @LastEditTime 2024-08-27 17:23
+ * @Description
+ */
+
+/**
+ * 绠$綉鍧愭爣琛�
+ */
+
+@TableName(value="pr_network_coordinates", autoResultMap = true)
+@Data
+@Builder
+@ToString
+@NoArgsConstructor
+@AllArgsConstructor
+public class PrNetworkCoordinates implements BaseEntity {
+ public static final long serialVersionUID = 202408271720001L;
+
+ /**
+ * 涓婚敭
+ */
+ @JSONField(serializeUsing= ObjectWriterImplToString.class)
+ @TableId(type = IdType.INPUT)
+ private Long id;
+
+ /**
+ * 绠$綉ID
+ */
+ @JSONField(serializeUsing= ObjectWriterImplToString.class)
+ @NotNull(message = "鎵�灞炵缃戜笉鑳戒负绌�")
+ private Long networkId;
+
+ /**
+ * 绾害
+ */
+ private BigDecimal lat;
+
+ /**
+ * 缁忓害
+ */
+ private BigDecimal lng;
+
+}
\ No newline at end of file
diff --git a/pipIrr-platform/pipIrr-global/src/main/java/com/dy/pipIrrGlobal/pojoPr/PrWaterNetwork.java b/pipIrr-platform/pipIrr-global/src/main/java/com/dy/pipIrrGlobal/pojoPr/PrWaterNetwork.java
new file mode 100644
index 0000000..80cb636
--- /dev/null
+++ b/pipIrr-platform/pipIrr-global/src/main/java/com/dy/pipIrrGlobal/pojoPr/PrWaterNetwork.java
@@ -0,0 +1,45 @@
+package com.dy.pipIrrGlobal.pojoPr;
+
+/**
+ * @author ZhuBaoMin
+ * @date 2024-08-27 17:14
+ * @LastEditTime 2024-08-27 17:14
+ * @Description
+ */
+
+import com.alibaba.fastjson2.annotation.JSONField;
+import com.alibaba.fastjson2.writer.ObjectWriterImplToString;
+import com.baomidou.mybatisplus.annotation.IdType;
+import com.baomidou.mybatisplus.annotation.TableId;
+import com.baomidou.mybatisplus.annotation.TableName;
+import com.dy.common.po.BaseEntity;
+import jakarta.validation.constraints.NotNull;
+import lombok.*;
+
+/**
+ * 杈撻厤姘寸缃戣〃
+ */
+
+@TableName(value="pr_water_network", autoResultMap = true)
+@Data
+@Builder
+@ToString
+@NoArgsConstructor
+@AllArgsConstructor
+public class PrWaterNetwork implements BaseEntity {
+ public static final long serialVersionUID = 202408271719001L;
+
+ /**
+ * 涓婚敭
+ */
+ @JSONField(serializeUsing= ObjectWriterImplToString.class)
+ @TableId(type = IdType.INPUT)
+ private Long id;
+
+ /**
+ * 绠$綉绫诲瀷;1-杈撴按锛�2-閰嶆按
+ */
+ @NotNull(message = "绠$綉绫诲瀷涓嶈兘涓虹┖")
+ private Byte networkType;
+
+}
\ No newline at end of file
diff --git a/pipIrr-platform/pipIrr-global/src/main/java/com/dy/pipIrrGlobal/voPr/VoNetwork.java b/pipIrr-platform/pipIrr-global/src/main/java/com/dy/pipIrrGlobal/voPr/VoNetwork.java
new file mode 100644
index 0000000..173d7f9
--- /dev/null
+++ b/pipIrr-platform/pipIrr-global/src/main/java/com/dy/pipIrrGlobal/voPr/VoNetwork.java
@@ -0,0 +1,34 @@
+package com.dy.pipIrrGlobal.voPr;
+
+import com.alibaba.fastjson2.JSONObject;
+import com.alibaba.fastjson2.annotation.JSONField;
+import com.alibaba.fastjson2.writer.ObjectWriterImplToString;
+import lombok.Data;
+
+/**
+ * @author ZhuBaoMin
+ * @date 2024-08-28 11:42
+ * @LastEditTime 2024-08-28 11:42
+ * @Description
+ */
+
+@Data
+public class VoNetwork {
+ private static final long serialVersionUID = 202408281143001L;
+
+ /**
+ * 绠$綉ID
+ */
+ @JSONField(serializeUsing= ObjectWriterImplToString.class)
+ private Long networkId;
+
+ /**
+ * 绠$綉绫诲瀷锛�1-杈撴按锛�2-閰嶆按
+ */
+ private Byte type;
+
+ /**
+ * 绠$綉瀵硅薄锛屽寘鍚缃戝潗鏍�
+ */
+ private JSONObject data;
+}
diff --git a/pipIrr-platform/pipIrr-global/src/main/java/com/dy/pipIrrGlobal/voPr/VoNetworkCoordinates.java b/pipIrr-platform/pipIrr-global/src/main/java/com/dy/pipIrrGlobal/voPr/VoNetworkCoordinates.java
new file mode 100644
index 0000000..3996ae6
--- /dev/null
+++ b/pipIrr-platform/pipIrr-global/src/main/java/com/dy/pipIrrGlobal/voPr/VoNetworkCoordinates.java
@@ -0,0 +1,30 @@
+package com.dy.pipIrrGlobal.voPr;
+
+import com.alibaba.fastjson2.annotation.JSONField;
+import com.alibaba.fastjson2.writer.ObjectWriterImplToString;
+import lombok.Data;
+
+import java.math.BigDecimal;
+
+/**
+ * @author ZhuBaoMin
+ * @date 2024-08-28 14:06
+ * @LastEditTime 2024-08-28 14:06
+ * @Description
+ */
+@Data
+public class VoNetworkCoordinates {
+ private static final long serialVersionUID = 202408281407001L;
+
+ /**
+ * 绾害
+ */
+ @JSONField(serializeUsing= ObjectWriterImplToString.class)
+ private BigDecimal lat;
+
+ /**
+ * 缁忓害
+ */
+ @JSONField(serializeUsing= ObjectWriterImplToString.class)
+ private BigDecimal lng;
+}
diff --git a/pipIrr-platform/pipIrr-global/src/main/resources/mapper/PrNetworkCoordinatesMapper.xml b/pipIrr-platform/pipIrr-global/src/main/resources/mapper/PrNetworkCoordinatesMapper.xml
new file mode 100644
index 0000000..2a2f9fe
--- /dev/null
+++ b/pipIrr-platform/pipIrr-global/src/main/resources/mapper/PrNetworkCoordinatesMapper.xml
@@ -0,0 +1,108 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
+<mapper namespace="com.dy.pipIrrGlobal.daoPr.PrNetworkCoordinatesMapper">
+ <resultMap id="BaseResultMap" type="com.dy.pipIrrGlobal.pojoPr.PrNetworkCoordinates">
+ <!--@mbg.generated-->
+ <!--@Table pr_network_coordinates-->
+ <id column="id" jdbcType="BIGINT" property="id"/>
+ <result column="network_id" jdbcType="BIGINT" property="networkId"/>
+ <result column="lat" jdbcType="DECIMAL" property="lat"/>
+ <result column="lng" jdbcType="DECIMAL" property="lng"/>
+ </resultMap>
+ <sql id="Base_Column_List">
+ <!--@mbg.generated-->
+ id,
+ network_id,
+ lat,
+ lng
+ </sql>
+ <select id="selectByPrimaryKey" parameterType="java.lang.Long" resultMap="BaseResultMap">
+ <!--@mbg.generated-->
+ select
+ <include refid="Base_Column_List"/>
+ from pr_network_coordinates
+ where id = #{id,jdbcType=BIGINT}
+ </select>
+ <delete id="deleteByPrimaryKey" parameterType="java.lang.Long">
+ <!--@mbg.generated-->
+ delete
+ from pr_network_coordinates
+ where id = #{id,jdbcType=BIGINT}
+ </delete>
+ <insert id="insert" parameterType="com.dy.pipIrrGlobal.pojoPr.PrNetworkCoordinates">
+ <!--@mbg.generated-->
+ insert into pr_network_coordinates (id, network_id, lat,
+ lng)
+ values (#{id,jdbcType=BIGINT}, #{networkId,jdbcType=BIGINT}, #{lat,jdbcType=DECIMAL},
+ #{lng,jdbcType=DECIMAL})
+ </insert>
+ <insert id="insertSelective" parameterType="com.dy.pipIrrGlobal.pojoPr.PrNetworkCoordinates">
+ <!--@mbg.generated-->
+ insert into pr_network_coordinates
+ <trim prefix="(" suffix=")" suffixOverrides=",">
+ <if test="id != null">
+ id,
+ </if>
+ <if test="networkId != null">
+ network_id,
+ </if>
+ <if test="lat != null">
+ lat,
+ </if>
+ <if test="lng != null">
+ lng,
+ </if>
+ </trim>
+ <trim prefix="values (" suffix=")" suffixOverrides=",">
+ <if test="id != null">
+ #{id,jdbcType=BIGINT},
+ </if>
+ <if test="networkId != null">
+ #{networkId,jdbcType=BIGINT},
+ </if>
+ <if test="lat != null">
+ #{lat,jdbcType=DECIMAL},
+ </if>
+ <if test="lng != null">
+ #{lng,jdbcType=DECIMAL},
+ </if>
+ </trim>
+ </insert>
+ <update id="updateByPrimaryKeySelective" parameterType="com.dy.pipIrrGlobal.pojoPr.PrNetworkCoordinates">
+ <!--@mbg.generated-->
+ update pr_network_coordinates
+ <set>
+ <if test="networkId != null">
+ network_id = #{networkId,jdbcType=BIGINT},
+ </if>
+ <if test="lat != null">
+ lat = #{lat,jdbcType=DECIMAL},
+ </if>
+ <if test="lng != null">
+ lng = #{lng,jdbcType=DECIMAL},
+ </if>
+ </set>
+ where id = #{id,jdbcType=BIGINT}
+ </update>
+ <update id="updateByPrimaryKey" parameterType="com.dy.pipIrrGlobal.pojoPr.PrNetworkCoordinates">
+ <!--@mbg.generated-->
+ update pr_network_coordinates
+ set network_id = #{networkId,jdbcType=BIGINT},
+ lat = #{lat,jdbcType=DECIMAL},
+ lng = #{lng,jdbcType=DECIMAL}
+ where id = #{id,jdbcType=BIGINT}
+ </update>
+
+ <!--娓呴櫎鍏ㄩ儴绠$綉鍧愭爣-->
+ <delete id="clearCoordinates">
+ TRUNCATE pr_network_coordinates
+ </delete>
+
+ <!--鏍规嵁绠$綉ID鑾峰彇绠$綉鍧愭爣鍒楄〃-->
+ <select id="getCoordinatesByNetworkId" resultType="com.dy.pipIrrGlobal.voPr.VoNetworkCoordinates">
+ SELECT lat,
+ lng
+ FROM pr_network_coordinates
+ WHERE network_id = #{networkId}
+ </select>
+</mapper>
\ No newline at end of file
diff --git a/pipIrr-platform/pipIrr-global/src/main/resources/mapper/PrWaterNetworkMapper.xml b/pipIrr-platform/pipIrr-global/src/main/resources/mapper/PrWaterNetworkMapper.xml
new file mode 100644
index 0000000..61c58fe
--- /dev/null
+++ b/pipIrr-platform/pipIrr-global/src/main/resources/mapper/PrWaterNetworkMapper.xml
@@ -0,0 +1,81 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
+<mapper namespace="com.dy.pipIrrGlobal.daoPr.PrWaterNetworkMapper">
+ <resultMap id="BaseResultMap" type="com.dy.pipIrrGlobal.pojoPr.PrWaterNetwork">
+ <!--@mbg.generated-->
+ <!--@Table pr_water_network-->
+ <id column="id" jdbcType="BIGINT" property="id"/>
+ <result column="network_type" jdbcType="TINYINT" property="networkType"/>
+ </resultMap>
+ <sql id="Base_Column_List">
+ <!--@mbg.generated-->
+ id,
+ network_type
+ </sql>
+ <select id="selectByPrimaryKey" parameterType="java.lang.Long" resultMap="BaseResultMap">
+ <!--@mbg.generated-->
+ select
+ <include refid="Base_Column_List"/>
+ from pr_water_network
+ where id = #{id,jdbcType=BIGINT}
+ </select>
+ <delete id="deleteByPrimaryKey" parameterType="java.lang.Long">
+ <!--@mbg.generated-->
+ delete
+ from pr_water_network
+ where id = #{id,jdbcType=BIGINT}
+ </delete>
+ <insert id="insert" parameterType="com.dy.pipIrrGlobal.pojoPr.PrWaterNetwork">
+ <!--@mbg.generated-->
+ insert into pr_water_network (id, network_type)
+ values (#{id,jdbcType=BIGINT}, #{networkType,jdbcType=TINYINT})
+ </insert>
+ <insert id="insertSelective" parameterType="com.dy.pipIrrGlobal.pojoPr.PrWaterNetwork">
+ <!--@mbg.generated-->
+ insert into pr_water_network
+ <trim prefix="(" suffix=")" suffixOverrides=",">
+ <if test="id != null">
+ id,
+ </if>
+ <if test="networkType != null">
+ network_type,
+ </if>
+ </trim>
+ <trim prefix="values (" suffix=")" suffixOverrides=",">
+ <if test="id != null">
+ #{id,jdbcType=BIGINT},
+ </if>
+ <if test="networkType != null">
+ #{networkType,jdbcType=TINYINT},
+ </if>
+ </trim>
+ </insert>
+ <update id="updateByPrimaryKeySelective" parameterType="com.dy.pipIrrGlobal.pojoPr.PrWaterNetwork">
+ <!--@mbg.generated-->
+ update pr_water_network
+ <set>
+ <if test="networkType != null">
+ network_type = #{networkType,jdbcType=TINYINT},
+ </if>
+ </set>
+ where id = #{id,jdbcType=BIGINT}
+ </update>
+ <update id="updateByPrimaryKey" parameterType="com.dy.pipIrrGlobal.pojoPr.PrWaterNetwork">
+ <!--@mbg.generated-->
+ update pr_water_network
+ set network_type = #{networkType,jdbcType=TINYINT}
+ where id = #{id,jdbcType=BIGINT}
+ </update>
+
+ <!--娓呴櫎鍏ㄩ儴绠$綉-->
+ <delete id="clearNetworks">
+ TRUNCATE pr_water_network
+ </delete>
+
+ <!--鑾峰彇鍏ㄩ儴绠$綉-->
+ <select id="getAllNewworks" resultType="com.dy.pipIrrGlobal.voPr.VoNetwork">
+ SELECT id AS networkId,
+ network_type AS type
+ FROM pr_water_network
+ </select>
+</mapper>
\ No newline at end of file
diff --git a/pipIrr-platform/pipIrr-web/pipIrr-web-project/src/main/java/com/dy/pipIrrProject/network/NetworkCtrl.java b/pipIrr-platform/pipIrr-web/pipIrr-web-project/src/main/java/com/dy/pipIrrProject/network/NetworkCtrl.java
new file mode 100644
index 0000000..103f8d8
--- /dev/null
+++ b/pipIrr-platform/pipIrr-web/pipIrr-web-project/src/main/java/com/dy/pipIrrProject/network/NetworkCtrl.java
@@ -0,0 +1,97 @@
+package com.dy.pipIrrProject.network;
+
+import com.dy.common.aop.SsoAop;
+import com.dy.common.webUtil.BaseResponse;
+import com.dy.common.webUtil.BaseResponseUtils;
+import com.dy.pipIrrGlobal.voPr.VoNetwork;
+import com.dy.pipIrrProject.network.dto.Network;
+import jakarta.validation.Valid;
+import lombok.RequiredArgsConstructor;
+import lombok.extern.slf4j.Slf4j;
+import org.springframework.http.MediaType;
+import org.springframework.transaction.annotation.Transactional;
+import org.springframework.validation.BindingResult;
+import org.springframework.web.bind.annotation.*;
+
+import java.util.List;
+import java.util.Objects;
+
+/**
+ * @author ZhuBaoMin
+ * @date 2024-08-27 17:08
+ * @LastEditTime 2024-08-27 17:08
+ * @Description
+ */
+
+@Slf4j
+@RestController
+@RequestMapping(path = "network")
+@RequiredArgsConstructor
+public class NetworkCtrl {
+ private final NetworkSv networkSv;
+
+ /**
+ * 娣诲姞绠$綉
+ * @param po
+ * @param bindingResult
+ * @return
+ */
+ @PostMapping(path = "save", consumes = MediaType.APPLICATION_JSON_VALUE)
+ @Transactional(rollbackFor = Exception.class)
+ @SsoAop()
+ public BaseResponse<Boolean> save(@RequestBody @Valid Network po, BindingResult bindingResult) {
+ if (bindingResult != null && bindingResult.hasErrors()) {
+ return BaseResponseUtils.buildFail(Objects.requireNonNull(bindingResult.getFieldError()).getDefaultMessage());
+ }
+
+ String result = networkSv.addNetworks(po);
+ if(result.trim().length()> 0) {
+ return BaseResponseUtils.buildErrorMsg(result);
+ }
+
+ //PrWaterNetwork prWaterNetwork = null;
+ //Long networkId = null;
+ //
+ //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 = networkSv.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(networkSv.addNetworkCoordinate(prNetworkCoordinates)).orElse(0L);
+ // if (coordinateId.equals(0)) {
+ // return BaseResponseUtils.buildErrorMsg(ProjectResultCode.SAVA_NETWORK_ERROR.getMessage());
+ // }
+ // }
+ //}
+ return BaseResponseUtils.buildSuccess(true);
+ }
+
+ /**
+ * 鑾峰彇鍏ㄩ儴绠$綉
+ * @return
+ */
+ @GetMapping(path = "/all")
+ @SsoAop()
+ public BaseResponse<List<VoNetwork>> getNetworks() {
+ try {
+ return BaseResponseUtils.buildSuccess(networkSv.getNetworks());
+ } catch (Exception e) {
+ log.error("鑾峰彇寮�鍗¤褰曞紓甯�", e);
+ return BaseResponseUtils.buildException(e.getMessage());
+ }
+ }
+}
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<>();
+ }
+ }
+}
diff --git a/pipIrr-platform/pipIrr-web/pipIrr-web-project/src/main/java/com/dy/pipIrrProject/network/dto/Network.java b/pipIrr-platform/pipIrr-web/pipIrr-web-project/src/main/java/com/dy/pipIrrProject/network/dto/Network.java
new file mode 100644
index 0000000..fec1f88
--- /dev/null
+++ b/pipIrr-platform/pipIrr-web/pipIrr-web-project/src/main/java/com/dy/pipIrrProject/network/dto/Network.java
@@ -0,0 +1,28 @@
+package com.dy.pipIrrProject.network.dto;
+
+import com.alibaba.fastjson2.JSONArray;
+import jakarta.validation.constraints.NotNull;
+import lombok.Data;
+
+/**
+ * @author ZhuBaoMin
+ * @date 2024-08-28 10:23
+ * @LastEditTime 2024-08-28 10:23
+ * @Description 绠$綉浼犺緭瀵硅薄
+ */
+
+@Data
+public class Network {
+ public static final long serialVersionUID = 202408281024001L;
+
+ /**
+ * 绠$綉绫诲瀷锛�1-杈撴按锛�2-閰嶆按
+ */
+ @NotNull(message = "绠$綉绫诲瀷涓嶈兘涓虹┖")
+ private Byte type;
+
+ /**
+ * 绠$綉瀵硅薄鏁扮粍锛屾瘡涓璞℃槸涓�绗旂粯鐢�
+ */
+ private JSONArray data;
+}
diff --git a/pipIrr-platform/pipIrr-web/pipIrr-web-project/src/main/java/com/dy/pipIrrProject/result/ProjectResultCode.java b/pipIrr-platform/pipIrr-web/pipIrr-web-project/src/main/java/com/dy/pipIrrProject/result/ProjectResultCode.java
index 6cd64b9..41cb1ba 100644
--- a/pipIrr-platform/pipIrr-web/pipIrr-web-project/src/main/java/com/dy/pipIrrProject/result/ProjectResultCode.java
+++ b/pipIrr-platform/pipIrr-web/pipIrr-web-project/src/main/java/com/dy/pipIrrProject/result/ProjectResultCode.java
@@ -78,7 +78,12 @@
MONITORING_FLOWMETER_BIND_FAIL(70002, "娴侀噺鐩戞祴绔欎笌娴侀噺璁$粦瀹氬け璐�"),
STATION_OR_FLOWMETER_NO_EXIST(70003, "娴侀噺鐩戞祴绔欐垨娴侀噺璁′笉瀛樺湪"),
STATION_FLOWMETER_HAS_UNBOUND(70004, "娴侀噺鐩戞祴绔欎笌娴侀噺璁″凡瑙g粦"),
- NO_MONITORING_FLOWMETERS(70005, "娌℃湁绗﹀悎鏉′欢鐨勭粦瀹氳褰曟暟鎹�");
+ NO_MONITORING_FLOWMETERS(70005, "娌℃湁绗﹀悎鏉′欢鐨勭粦瀹氳褰曟暟鎹�"),
+
+ /**
+ * 绠$綉
+ */
+ SAVA_NETWORK_ERROR(30001, "淇濆瓨绠$綉澶辫触");
private final Integer code;
private final String message;
diff --git a/pipIrr-platform/pipIrr-web/pipIrr-web-sell/src/main/java/com/dy/pipIrrSell/general/GeneralCtrl.java b/pipIrr-platform/pipIrr-web/pipIrr-web-sell/src/main/java/com/dy/pipIrrSell/general/GeneralCtrl.java
index da3e000..1dc16a5 100644
--- a/pipIrr-platform/pipIrr-web/pipIrr-web-sell/src/main/java/com/dy/pipIrrSell/general/GeneralCtrl.java
+++ b/pipIrr-platform/pipIrr-web/pipIrr-web-sell/src/main/java/com/dy/pipIrrSell/general/GeneralCtrl.java
@@ -92,6 +92,7 @@
public void exportGeneral(HttpServletResponse response, QoGeneral vo) {
ExcelUtil.setExcelRespProp(response, "鎬昏处" + LocalDate.now());
List<VoGeneral> generalList = generalSv.exportGenerals(vo).getObj();
+
EasyExcel.write(response.getOutputStream(), VoGeneral.class)
.registerWriteHandler(new ReportExportCellWriteHandler("璐㈠姟瀵硅处-鎬昏处"))
.sheet("鎬昏处")
diff --git a/pipIrr-platform/pipIrr-web/pipIrr-web-sell/src/main/java/com/dy/pipIrrSell/result/SellResultCode.java b/pipIrr-platform/pipIrr-web/pipIrr-web-sell/src/main/java/com/dy/pipIrrSell/result/SellResultCode.java
index 7dc0cf8..5acba42 100644
--- a/pipIrr-platform/pipIrr-web/pipIrr-web-sell/src/main/java/com/dy/pipIrrSell/result/SellResultCode.java
+++ b/pipIrr-platform/pipIrr-web/pipIrr-web-sell/src/main/java/com/dy/pipIrrSell/result/SellResultCode.java
@@ -76,9 +76,11 @@
* 鎬昏处
*/
GENERAL_ID_CANNOT_BE_NULL(80001, "鎬昏处缂栧彿涓嶈兘涓虹┖"),
- GENERAL_NOT_EXIST(80001, "鎬昏处涓嶅瓨鍦�"),
- GENERAL_AUDIT_FAIL(80001, "鎬昏处瀹℃牳澶辫触"),
- AUDITS_ADD_FAIL(80001, "鎬昏处瀹℃牳璁板綍娣诲姞澶辫触"),
+ GENERAL_NOT_EXIST(80002, "鎬昏处涓嶅瓨鍦�"),
+ GENERAL_AUDIT_FAIL(80003, "鎬昏处瀹℃牳澶辫触"),
+ AUDITS_ADD_FAIL(80004, "鎬昏处瀹℃牳璁板綍娣诲姞澶辫触"),
+ GENERAL_IS_NULL(80005, "瑕佸鍑虹殑鎬昏处涓虹┖"),
+ TRADE_DETAILS_IS_NULL(80006, "瑕佸鍑虹殑浜ゆ槗鏄庣粏涓虹┖"),
/**
* 铏氭嫙鍗�
--
Gitblit v1.8.0