@@ -24,11 +24,18 @@ public interface BjkgMapper extends BaseMapper<BjKgDO> {
default int insertOrUpdate(List<BjKgDO> lists){
this.delete(null); //清空表
for(BjKgDO bjKgDO: lists){
+ if(selectIntersectionAreaRatio(bjKgDO.getShape()) > 0){
+ bjKgDO.setSfyg("1");
+ }else{
+ bjKgDO.setSfyg("0");
+ }
insertShape(bjKgDO);
}
return lists.size();
+ Integer selectIntersectionAreaRatio(@Param("shape") Object shape);
+
Integer insertShape(@Param("entity") BjKgDO entity);
List<BjKgDO> selectListAll();
@@ -83,6 +83,9 @@
#{entity.shapeArea}
)
</insert>
+ <select id="selectIntersectionAreaRatio" resultType="int">
+ SELECT COUNT(1) AS num FROM sde.gdxminfo_bj a WHERE (public.ST_Area(public.ST_Intersection(#{shape}, a.shape), false) / public.ST_Area(a.shape, false)) >= 0.5
+ </select>
<select id="selectListAll" resultType="com.zjugis.ysgzybz.domain.entity.BjKgDO">
SELECT dlbm, mj, dymc FROM sde.ybz_bj_kg
</select>