| 
														
															@@ -4,6 +4,7 @@ import com.sysu.admin.controller.city.CityRepository; 
														 | 
													
												
											
												
													
														| 
														 | 
														
															 import com.sysu.admin.controller.city.DistrictRepository; 
														 | 
														
														 | 
														
															 import com.sysu.admin.controller.city.DistrictRepository; 
														 | 
													
												
											
												
													
														| 
														 | 
														
															 import com.sysu.admin.controller.city.DistrictService; 
														 | 
														
														 | 
														
															 import com.sysu.admin.controller.city.DistrictService; 
														 | 
													
												
											
												
													
														| 
														 | 
														
															 import com.sysu.admin.controller.city.TownService; 
														 | 
														
														 | 
														
															 import com.sysu.admin.controller.city.TownService; 
														 | 
													
												
											
												
													
														| 
														 | 
														
															 
														 | 
														
														 | 
														
															+import com.sysu.admin.site.CommonVo; 
														 | 
													
												
											
												
													
														| 
														 | 
														
															 import com.sysu.admin.support.base.BaseService; 
														 | 
														
														 | 
														
															 import com.sysu.admin.support.base.BaseService; 
														 | 
													
												
											
												
													
														| 
														 | 
														
															 import com.sysu.admin.support.cfg.CacheCfg; 
														 | 
														
														 | 
														
															 import com.sysu.admin.support.cfg.CacheCfg; 
														 | 
													
												
											
												
													
														| 
														 | 
														
															 import com.sysu.admin.utils.MySimpleDateFormat; 
														 | 
														
														 | 
														
															 import com.sysu.admin.utils.MySimpleDateFormat; 
														 | 
													
												
											
										
											
												
													
														 | 
														
															@@ -296,12 +297,12 @@ public class LandService extends BaseService<Land,Long> { 
														 | 
													
												
											
												
													
														| 
														 | 
														
															  
														 | 
														
														 | 
														
															  
														 | 
													
												
											
												
													
														| 
														 | 
														
															  
														 | 
														
														 | 
														
															  
														 | 
													
												
											
												
													
														| 
														 | 
														
															  
														 | 
														
														 | 
														
															  
														 | 
													
												
											
												
													
														| 
														 | 
														
															-    public PaginationResult list(Double[] sure,String district, Integer townId, PaginationVo page, String cropType, Integer parcelType){ 
														 | 
														
														 | 
														
															 
														 | 
													
												
											
												
													
														| 
														 | 
														
															 
														 | 
														
														 | 
														
															+    public PaginationResult list(CommonVo commonVo,PaginationVo page){ 
														 | 
													
												
											
												
													
														| 
														 | 
														
															         String wkt = null; 
														 | 
														
														 | 
														
															         String wkt = null; 
														 | 
													
												
											
												
													
														| 
														 | 
														
															-        if(townId != null) { 
														 | 
														
														 | 
														
															 
														 | 
													
												
											
												
													
														| 
														 | 
														
															-             wkt = townService.findWktById(townId); 
														 | 
														
														 | 
														
															 
														 | 
													
												
											
												
													
														| 
														 | 
														
															-        }else if(StringUtils.isNotBlank(district)) { 
														 | 
														
														 | 
														
															 
														 | 
													
												
											
												
													
														| 
														 | 
														
															-             wkt = districtRepository.findWktByCode(district); 
														 | 
														
														 | 
														
															 
														 | 
													
												
											
												
													
														| 
														 | 
														
															 
														 | 
														
														 | 
														
															+        if(commonVo.getTown() != null) { 
														 | 
													
												
											
												
													
														| 
														 | 
														
															 
														 | 
														
														 | 
														
															+             wkt = townService.findWktById(commonVo.getTown()); 
														 | 
													
												
											
												
													
														| 
														 | 
														
															 
														 | 
														
														 | 
														
															+        }else if(StringUtils.isNotBlank(commonVo.getDistrict())) { 
														 | 
													
												
											
												
													
														| 
														 | 
														
															 
														 | 
														
														 | 
														
															+             wkt = districtRepository.findWktByCode(commonVo.getDistrict()); 
														 | 
													
												
											
												
													
														| 
														 | 
														
															         } 
														 | 
														
														 | 
														
															         } 
														 | 
													
												
											
												
													
														| 
														 | 
														
															         List<Land> data = null; 
														 | 
														
														 | 
														
															         List<Land> data = null; 
														 | 
													
												
											
												
													
														| 
														 | 
														
															         int count; 
														 | 
														
														 | 
														
															         int count; 
														 | 
													
												
											
										
											
												
													
														 | 
														
															@@ -310,36 +311,49 @@ public class LandService extends BaseService<Land,Long> { 
														 | 
													
												
											
												
													
														| 
														 | 
														
															         StringBuffer sql = new StringBuffer(100); 
														 | 
														
														 | 
														
															         StringBuffer sql = new StringBuffer(100); 
														 | 
													
												
											
												
													
														| 
														 | 
														
															         countSql.append("select count(1) from  leizhou_land where 1=1"); 
														 | 
														
														 | 
														
															         countSql.append("select count(1) from  leizhou_land where 1=1"); 
														 | 
													
												
											
												
													
														| 
														 | 
														
															         sql.append("select * from  leizhou_land where 1=1"); 
														 | 
														
														 | 
														
															         sql.append("select * from  leizhou_land where 1=1"); 
														 | 
													
												
											
												
													
														| 
														 | 
														
															 
														 | 
														
														 | 
														
															+ 
														 | 
													
												
											
												
													
														| 
														 | 
														
															 
														 | 
														
														 | 
														
															+        StringBuffer append = appendWhere(commonVo, wkt); 
														 | 
													
												
											
												
													
														| 
														 | 
														
															 
														 | 
														
														 | 
														
															+        sql.append(append); 
														 | 
													
												
											
												
													
														| 
														 | 
														
															 
														 | 
														
														 | 
														
															+        countSql.append(append); 
														 | 
													
												
											
												
													
														| 
														 | 
														
															 
														 | 
														
														 | 
														
															+ 
														 | 
													
												
											
												
													
														| 
														 | 
														
															 
														 | 
														
														 | 
														
															+        sql.append(" limit ").append(page.getLimit()).append(" OFFSET ").append(start); 
														 | 
													
												
											
												
													
														| 
														 | 
														
															 
														 | 
														
														 | 
														
															+        count = Integer.valueOf(mEntityManager.createNativeQuery(countSql.toString()).getSingleResult().toString()); 
														 | 
													
												
											
												
													
														| 
														 | 
														
															 
														 | 
														
														 | 
														
															+        data = mEntityManager.createNativeQuery(sql.toString(), Land.class).getResultList(); 
														 | 
													
												
											
												
													
														| 
														 | 
														
															 
														 | 
														
														 | 
														
															+        return PaginationHelper.create(data, count, page.page); 
														 | 
													
												
											
												
													
														| 
														 | 
														
															 
														 | 
														
														 | 
														
															+    } 
														 | 
													
												
											
												
													
														| 
														 | 
														
															 
														 | 
														
														 | 
														
															+ 
														 | 
													
												
											
												
													
														| 
														 | 
														
															 
														 | 
														
														 | 
														
															+    public StringBuffer appendWhere(CommonVo commonVo, String wkt){ 
														 | 
													
												
											
												
													
														| 
														 | 
														
															 
														 | 
														
														 | 
														
															+        StringBuffer sql = new StringBuffer(100); 
														 | 
													
												
											
												
													
														| 
														 | 
														
															         if(wkt != null){ 
														 | 
														
														 | 
														
															         if(wkt != null){ 
														 | 
													
												
											
												
													
														| 
														 | 
														
															-            countSql.append(" and St_within(geom,st_geomfromtext('"); 
														 | 
														
														 | 
														
															 
														 | 
													
												
											
												
													
														| 
														 | 
														
															-            countSql.append(wkt).append("',4326))"); 
														 | 
														
														 | 
														
															 
														 | 
													
												
											
												
													
														| 
														 | 
														
															             sql.append(" and St_within(geom,st_geomfromtext('"); 
														 | 
														
														 | 
														
															             sql.append(" and St_within(geom,st_geomfromtext('"); 
														 | 
													
												
											
												
													
														| 
														 | 
														
															             sql.append(wkt).append("',4326))"); 
														 | 
														
														 | 
														
															             sql.append(wkt).append("',4326))"); 
														 | 
													
												
											
												
													
														| 
														 | 
														
															         } 
														 | 
														
														 | 
														
															         } 
														 | 
													
												
											
												
													
														| 
														 | 
														
															- 
														 | 
														
														 | 
														
															 
														 | 
													
												
											
												
													
														| 
														 | 
														
															-        if(StringUtils.isNotBlank(cropType)) { 
														 | 
														
														 | 
														
															 
														 | 
													
												
											
												
													
														| 
														 | 
														
															-            countSql.append(" and crop_type = '").append(cropType).append("'"); 
														 | 
														
														 | 
														
															 
														 | 
													
												
											
												
													
														| 
														 | 
														
															-            sql.append(" and crop_type = '").append(cropType).append("'"); 
														 | 
														
														 | 
														
															 
														 | 
													
												
											
												
													
														| 
														 | 
														
															 
														 | 
														
														 | 
														
															+        if(StringUtils.isNotBlank(commonVo.getCrop_type())) { 
														 | 
													
												
											
												
													
														| 
														 | 
														
															 
														 | 
														
														 | 
														
															+            sql.append(" and crop_type = '").append(commonVo.getCrop_type()).append("'"); 
														 | 
													
												
											
												
													
														| 
														 | 
														
															         } 
														 | 
														
														 | 
														
															         } 
														 | 
													
												
											
												
													
														| 
														 | 
														
															- 
														 | 
														
														 | 
														
															 
														 | 
													
												
											
												
													
														| 
														 | 
														
															-        if(parcelType != null) { 
														 | 
														
														 | 
														
															 
														 | 
													
												
											
												
													
														| 
														 | 
														
															-            countSql.append(" and parcel_type = ").append(parcelType); 
														 | 
														
														 | 
														
															 
														 | 
													
												
											
												
													
														| 
														 | 
														
															-            sql.append(" and parcel_type = ").append(parcelType); 
														 | 
														
														 | 
														
															 
														 | 
													
												
											
												
													
														| 
														 | 
														
															 
														 | 
														
														 | 
														
															+        if(commonVo.getParcel_type()!= null) { 
														 | 
													
												
											
												
													
														| 
														 | 
														
															 
														 | 
														
														 | 
														
															+            sql.append(" and parcel_type = ").append(commonVo.getParcel_type()); 
														 | 
													
												
											
												
													
														| 
														 | 
														
															         } 
														 | 
														
														 | 
														
															         } 
														 | 
													
												
											
												
													
														| 
														 | 
														
															  
														 | 
														
														 | 
														
															  
														 | 
													
												
											
												
													
														| 
														 | 
														
															 
														 | 
														
														 | 
														
															+        sql.append(intervalWhere("crop_sure", commonVo.getSure())); 
														 | 
													
												
											
												
													
														| 
														 | 
														
															 
														 | 
														
														 | 
														
															+        sql.append(intervalWhere("dan_chan", commonVo.getDanchan())); 
														 | 
													
												
											
												
													
														| 
														 | 
														
															 
														 | 
														
														 | 
														
															+        sql.append(intervalWhere("ph", commonVo.getPh())); 
														 | 
													
												
											
												
													
														| 
														 | 
														
															 
														 | 
														
														 | 
														
															+        sql.append(intervalWhere("c", commonVo.getC())); 
														 | 
													
												
											
												
													
														| 
														 | 
														
															 
														 | 
														
														 | 
														
															+        sql.append(intervalWhere("_2n", commonVo.get_2n())); 
														 | 
													
												
											
												
													
														| 
														 | 
														
															 
														 | 
														
														 | 
														
															+        sql.append(intervalWhere("p", commonVo.getP())); 
														 | 
													
												
											
												
													
														| 
														 | 
														
															 
														 | 
														
														 | 
														
															+        sql.append(intervalWhere("k", commonVo.getK())); 
														 | 
													
												
											
												
													
														| 
														 | 
														
															  
														 | 
														
														 | 
														
															  
														 | 
													
												
											
												
													
														| 
														 | 
														
															-        if(ArrayUtils.isNotEmpty(sure)){ 
														 | 
														
														 | 
														
															 
														 | 
													
												
											
												
													
														| 
														 | 
														
															-            countSql.append(" and crop_sure >= ").append(sure[0]); 
														 | 
														
														 | 
														
															 
														 | 
													
												
											
												
													
														| 
														 | 
														
															-            countSql.append(" and crop_sure <= ").append(sure[1]); 
														 | 
														
														 | 
														
															 
														 | 
													
												
											
												
													
														| 
														 | 
														
															-            sql.append(" and crop_sure >= ").append(sure[0]); 
														 | 
														
														 | 
														
															 
														 | 
													
												
											
												
													
														| 
														 | 
														
															-            sql.append(" and crop_sure <= ").append(sure[1]); 
														 | 
														
														 | 
														
															 
														 | 
													
												
											
												
													
														| 
														 | 
														
															-        } 
														 | 
														
														 | 
														
															 
														 | 
													
												
											
												
													
														| 
														 | 
														
															- 
														 | 
														
														 | 
														
															 
														 | 
													
												
											
												
													
														| 
														 | 
														
															-        sql.append(" limit ").append(page.getLimit()).append(" OFFSET ").append(start); 
														 | 
														
														 | 
														
															 
														 | 
													
												
											
												
													
														| 
														 | 
														
															-        count = Integer.valueOf(mEntityManager.createNativeQuery(countSql.toString()).getSingleResult().toString()); 
														 | 
														
														 | 
														
															 
														 | 
													
												
											
												
													
														| 
														 | 
														
															-        data = mEntityManager.createNativeQuery(sql.toString(), Land.class).getResultList(); 
														 | 
														
														 | 
														
															 
														 | 
													
												
											
												
													
														| 
														 | 
														
															-        return PaginationHelper.create(data, count, page.page); 
														 | 
														
														 | 
														
															 
														 | 
													
												
											
												
													
														| 
														 | 
														
															 
														 | 
														
														 | 
														
															+        return sql; 
														 | 
													
												
											
												
													
														| 
														 | 
														
															 
														 | 
														
														 | 
														
															+    } 
														 | 
													
												
											
												
													
														| 
														 | 
														
															  
														 | 
														
														 | 
														
															  
														 | 
													
												
											
												
													
														| 
														 | 
														
															 
														 | 
														
														 | 
														
															+    private StringBuffer intervalWhere(String col, Double[] values){ 
														 | 
													
												
											
												
													
														| 
														 | 
														
															 
														 | 
														
														 | 
														
															+        StringBuffer res = new StringBuffer(40); 
														 | 
													
												
											
												
													
														| 
														 | 
														
															 
														 | 
														
														 | 
														
															+        if(ArrayUtils.isNotEmpty(values)){ 
														 | 
													
												
											
												
													
														| 
														 | 
														
															 
														 | 
														
														 | 
														
															+            res.append(" and "+col+" >= ").append(values[0]); 
														 | 
													
												
											
												
													
														| 
														 | 
														
															 
														 | 
														
														 | 
														
															+            if(values.length > 1) 
														 | 
													
												
											
												
													
														| 
														 | 
														
															 
														 | 
														
														 | 
														
															+                res.append(" and "+col+" <= ").append(values[1]); 
														 | 
													
												
											
												
													
														| 
														 | 
														
															 
														 | 
														
														 | 
														
															+        } 
														 | 
													
												
											
												
													
														| 
														 | 
														
															 
														 | 
														
														 | 
														
															+        return res; 
														 | 
													
												
											
												
													
														| 
														 | 
														
															     } 
														 | 
														
														 | 
														
															     } 
														 | 
													
												
											
												
													
														| 
														 | 
														
															  
														 | 
														
														 | 
														
															  
														 | 
													
												
											
												
													
														| 
														 | 
														
															     public Land findByPoint(Double[] point){ 
														 | 
														
														 | 
														
															     public Land findByPoint(Double[] point){ 
														 | 
													
												
											
										
											
												
													
														 | 
														
															@@ -351,3 +365,21 @@ public class LandService extends BaseService<Land,Long> { 
														 | 
													
												
											
												
													
														| 
														 | 
														
															         return landRepository; 
														 | 
														
														 | 
														
															         return landRepository; 
														 | 
													
												
											
												
													
														| 
														 | 
														
															     } 
														 | 
														
														 | 
														
															     } 
														 | 
													
												
											
												
													
														| 
														 | 
														
															 } 
														 | 
														
														 | 
														
															 } 
														 | 
													
												
											
												
													
														| 
														 | 
														
															 
														 | 
														
														 | 
														
															+ 
														 | 
													
												
											
												
													
														| 
														 | 
														
															 
														 | 
														
														 | 
														
															+ 
														 | 
													
												
											
												
													
														| 
														 | 
														
															 
														 | 
														
														 | 
														
															+ 
														 | 
													
												
											
												
													
														| 
														 | 
														
															 
														 | 
														
														 | 
														
															+ 
														 | 
													
												
											
												
													
														| 
														 | 
														
															 
														 | 
														
														 | 
														
															+ 
														 | 
													
												
											
												
													
														| 
														 | 
														
															 
														 | 
														
														 | 
														
															+ 
														 | 
													
												
											
												
													
														| 
														 | 
														
															 
														 | 
														
														 | 
														
															+ 
														 | 
													
												
											
												
													
														| 
														 | 
														
															 
														 | 
														
														 | 
														
															+ 
														 | 
													
												
											
												
													
														| 
														 | 
														
															 
														 | 
														
														 | 
														
															+ 
														 | 
													
												
											
												
													
														| 
														 | 
														
															 
														 | 
														
														 | 
														
															+ 
														 | 
													
												
											
												
													
														| 
														 | 
														
															 
														 | 
														
														 | 
														
															+ 
														 | 
													
												
											
												
													
														| 
														 | 
														
															 
														 | 
														
														 | 
														
															+ 
														 | 
													
												
											
												
													
														| 
														 | 
														
															 
														 | 
														
														 | 
														
															+ 
														 | 
													
												
											
												
													
														| 
														 | 
														
															 
														 | 
														
														 | 
														
															+ 
														 | 
													
												
											
												
													
														| 
														 | 
														
															 
														 | 
														
														 | 
														
															+ 
														 | 
													
												
											
												
													
														| 
														 | 
														
															 
														 | 
														
														 | 
														
															+ 
														 | 
													
												
											
												
													
														| 
														 | 
														
															 
														 | 
														
														 | 
														
															+ 
														 | 
													
												
											
												
													
														| 
														 | 
														
															 
														 | 
														
														 | 
														
															+ 
														 |