吉安感知网项目-后端
xiebin
2026-04-03 0b89c49a3872c24167cb06e2229c4dd26eaf673c
Revert "opt: ST_GeomFromText-替换人大金仓-ST_GeometryFromText"

This reverts commit 2358538cb53e2784caf8f4e09d9f638f30e55211.
6 files modified
34 ■■■■ changed files
drone-service/drone-fw/src/main/java/org/sxkj/fw/area/mapper/FwDefenseZoneMapper.xml 10 ●●●● patch | view | raw | blame | history
drone-service/drone-fw/src/main/java/org/sxkj/fw/area/mapper/FwPoliceStationMapper.xml 4 ●●●● patch | view | raw | blame | history
drone-service/drone-fw/src/main/java/org/sxkj/fw/device/mapper/FwDeviceMapper.xml 4 ●●●● patch | view | raw | blame | history
drone-service/drone-gd/src/main/java/org/sxkj/gd/workorder/mapper/GdManageDeviceMapper.xml 2 ●●● patch | view | raw | blame | history
drone-service/drone-gd/src/main/java/org/sxkj/gd/workorder/mapper/GdWorkOrderMapper.xml 8 ●●●● patch | view | raw | blame | history
drone-task/drone-odm/src/main/java/org/sxkj/odm/mapper/OdmTaskInfoMapper.xml 6 ●●●● patch | view | raw | blame | history
drone-service/drone-fw/src/main/java/org/sxkj/fw/area/mapper/FwDefenseZoneMapper.xml
@@ -146,7 +146,7 @@
                and ST_Equals(
                    geom,
                    ST_SRID(
                        ST_GeometryFromText(
                        ST_GeomFromText(
                            trim(case when instr(#{param2.geom}, '|') > 0 then substring_index(#{param2.geom}, '|', 1) else #{param2.geom} end)
                        ),
                        case when instr(#{param2.geom}, '|') > 0 then cast(trim(substring_index(#{param2.geom}, '|', -1)) as unsigned) else 4326 end
@@ -251,11 +251,11 @@
            <choose>
                <when test="geom != null and geom != ''">
                    case
                        when instr(#{geom}, '|') &gt; 0 then ST_GeometryFromText(
                        when instr(#{geom}, '|') &gt; 0 then ST_GeomFromText(
                            trim(substring_index(#{geom}, '|', 1)),
                            cast(trim(substring_index(#{geom}, '|', -1)) as unsigned)
                        )
                        else ST_GeometryFromText(trim(#{geom}))
                        else ST_GeomFromText(trim(#{geom}))
                    end
                </when>
                <otherwise>null</otherwise>
@@ -281,11 +281,11 @@
            <if test="deviceIds != null">device_ids = #{deviceIds},</if>
            <if test="geom != null and geom != ''">
                geom = case
                    when instr(#{geom}, '|') &gt; 0 then ST_GeometryFromText(
                    when instr(#{geom}, '|') &gt; 0 then ST_GeomFromText(
                        trim(substring_index(#{geom}, '|', 1)),
                        cast(trim(substring_index(#{geom}, '|', -1)) as unsigned)
                    )
                    else ST_GeometryFromText(trim(#{geom}))
                    else ST_GeomFromText(trim(#{geom}))
                end,
            </if>
            <if test="areaCode != null">area_code = #{areaCode},</if>
drone-service/drone-fw/src/main/java/org/sxkj/fw/area/mapper/FwPoliceStationMapper.xml
@@ -101,8 +101,8 @@
          AND (
            <foreach collection="polygons" item="polygon" separator=" OR ">
                ST_Contains(
                    ST_SRID(ST_GeometryFromText(#{polygon}), 4326),
                    ST_GeometryFromText(CONCAT('POINT(', latitude, ' ', longitude, ')'), 4326)
                    ST_SRID(ST_GeomFromText(#{polygon}), 4326),
                    ST_GeomFromText(CONCAT('POINT(', latitude, ' ', longitude, ')'), 4326)
                )
            </foreach>
          )
drone-service/drone-fw/src/main/java/org/sxkj/fw/device/mapper/FwDeviceMapper.xml
@@ -242,9 +242,9 @@
                and (
                <foreach collection="query.polygons" item="polygon" separator=" OR ">
                    ST_Contains(
                    ST_SRID(ST_GeometryFromText(#{polygon}), 4326),
                    ST_SRID(ST_GeomFromText(#{polygon}), 4326),
                    /* 注意:Kingbase/PostGIS 坐标顺序通常是 (经度, 纬度) 即 (longitude, latitude) */
                    ST_GeometryFromText(CONCAT('POINT(', longitude, ' ', latitude, ')'), 4326)
                    ST_GeomFromText(CONCAT('POINT(', longitude, ' ', latitude, ')'), 4326)
                    )
                </foreach>
                )
drone-service/drone-gd/src/main/java/org/sxkj/gd/workorder/mapper/GdManageDeviceMapper.xml
@@ -85,7 +85,7 @@
            </if>
            <if test="geom != null and geom != ''">
                /* 确保这里是第一个条件时,and 能被 MyBatis 正确处理,或者直接去掉这个 and */
                and ST_Intersects(md.geom, ST_GeometryFromText(#{geom}, 4326))
                and ST_Intersects(md.geom, ST_GeomFromText(#{geom}, 4326))
            </if>
            <if test="deviceType != null and deviceType != '' ">
                and md.device_type::text = #{deviceType}::text
drone-service/drone-gd/src/main/java/org/sxkj/gd/workorder/mapper/GdWorkOrderMapper.xml
@@ -160,7 +160,7 @@
    </select>
    <!-- 自定义插入语句,使用ST_GeometryFromText处理几何数据 -->
    <!-- 自定义插入语句,使用ST_GeomFromText处理几何数据 -->
    <insert id="saveWorkOrder" parameterType="org.sxkj.gd.workorder.entity.GdWorkOrderEntity">
        INSERT INTO ja_gd_work_order ( work_order_name, work_order_code, work_order_type,
                                      device_load_demand, recommend_device_ids, work_order_status,
@@ -171,12 +171,12 @@
        VALUES ( #{workOrderParam.workOrderName}, #{workOrderParam.workOrderCode}, #{workOrderParam.workOrderType},
                #{workOrderParam.deviceLoadDemand}, #{workOrderParam.recommendDeviceIds}, #{workOrderParam.workOrderStatus},
                #{workOrderParam.executeStartTime}, #{workOrderParam.executeEndTime}, #{workOrderParam.serviceParty},
                ST_GeometryFromText(#{workOrderParam.geom}), #{workOrderParam.remark}, #{workOrderParam.areaCode},
                ST_GeomFromText(#{workOrderParam.geom}), #{workOrderParam.remark}, #{workOrderParam.areaCode},
                #{workOrderParam.createUser}, #{workOrderParam.createDept}, #{workOrderParam.createTime},
                #{workOrderParam.updateUser}, #{workOrderParam.updateTime}, #{workOrderParam.status}, #{workOrderParam.isDeleted})
    </insert>
    <!-- 自定义更新语句,使用ST_GeometryFromText处理几何数据 -->
    <!-- 自定义更新语句,使用ST_GeomFromText处理几何数据 -->
    <update id="updateWorkOrderById" parameterType="org.sxkj.gd.workorder.entity.GdWorkOrderEntity">
        UPDATE ja_gd_work_order
        <set>
@@ -208,7 +208,7 @@
                service_party = #{workOrderParam.serviceParty},
            </if>
            <if test="workOrderParam.geom != null and workOrderParam.geom != ''">
                geom = ST_GeometryFromText(#{workOrderParam.geom}),
                geom = ST_GeomFromText(#{workOrderParam.geom}),
            </if>
            <if test="workOrderParam.remark != null and workOrderParam.remark != ''">
                remark = #{workOrderParam.remark},
drone-task/drone-odm/src/main/java/org/sxkj/odm/mapper/OdmTaskInfoMapper.xml
@@ -363,7 +363,7 @@
    <!--根据经纬度获取tif数据-->
    <select id="getTifDataByCoord" resultType="org.sxkj.odm.entity.OdmTaskInfo">
        SELECT * FROM odm_task_info
        WHERE ST_Contains(geom, ST_GeometryFromText(concat('POINT(',#{longitude},' ',#{latitude}, ')'))) and is_deleted = 0
        WHERE ST_Contains(geom, ST_GeomFromText(concat('POINT(',#{longitude},' ',#{latitude}, ')'))) and is_deleted = 0
        ORDER BY id desc
    </select>
@@ -376,7 +376,7 @@
          AND dem_tif_path IS NOT NULL
          AND ST_Distance_Sphere(
                  ST_Centroid(geom), -- geom中心点
                  ST_GeometryFromText(concat('POINT(', #{longitude}, ' ', #{latitude}, ')'))) &lt;= 1000
                  ST_GeomFromText(concat('POINT(', #{longitude}, ' ', #{latitude}, ')'))) &lt;= 1000
        ORDER BY id DESC
    </select>
@@ -426,7 +426,7 @@
            type = #{odmTaskInfo.type},
        </if>
        <if test="odmTaskInfo.geom !=null and odmTaskInfo.geom !=''">
            geom = ST_GeometryFromText(${odmTaskInfo.geom})
            geom = ST_GeomFromText(${odmTaskInfo.geom})
        </if>
        where id = #{odmTaskInfo.id}
    </update>