| | |
| | | <where> |
| | | pipename is not null and not ST_IsEmpty(geom) |
| | | <if test="name != null"> |
| | | and (pipename like #{name} or segname like #{name}) |
| | | and (upper(pipename) like #{name} or upper(segname) like #{name}) |
| | | </if> |
| | | </where> |
| | | order by pipename, segname; |
| | |
| | | |
| | | <select id="selectPipeAnalysis" resultType="com.lf.server.entity.show.PipelineEntity"> |
| | | select row_number() over() as gid, a.name as acrossName, b.segname as segName, b.remarks, b.pipename as pipeName, |
| | | cast( st_length( st_geographyfromtext( st_astext( st_intersection(ST_MakeValid(a.geom), ST_MakeValid(b.geom) ) ) ) ) as decimal(12, 2) ) AS acrossLength, |
| | | cast( st_length( st_geographyfromtext( st_astext( st_intersection(ST_MakeValid(a.geom), ST_MakeValid(b.geom) ) ) ) ) as decimal(20, 2) ) AS acrossLength, |
| | | st_astext( st_intersection( ST_MakeValid(a.geom), ST_MakeValid(b.geom) ) ) as wkt |
| | | from ${tab} as a, (select segname, remarks, pipename, geom from bs.m_pipesegment where gid = #{gid} ) as b |
| | | where ST_Intersects(a.geom, b.geom) |