| 
					
				 | 
			
			
				@ -433,18 +433,15 @@ public class CourseService { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				    public JSONObject getCourseByOrg(String lon2,String lat2){ //, int pageSize,int currentPage 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				        JSONObject object = new JSONObject(); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				        String sql = "SELECT id,`name`,longitude,latitude FROM base.base_org where del = 1 and type = 4"; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				        List<Map<String , Object>> positionList = jdbcTemplate.queryForList(sql); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				        String sql = "SELECT id, code, `name`, mobile, photo, address, longitude, latitude, funDistance ( latitude, longitude, "+lat2+", "+lon2+" ) funDistance FROM base.base_org WHERE del = 1 and type = 4 ORDER BY funDistance DESC\n"; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				        List<Map<String , Object>> mapList = jdbcTemplate.queryForList(sql); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				        List<Map<String,Object>> list = new ArrayList<>(); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				        SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss"); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				        if (positionList.size() > 0){ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				            for (int i=0;i<positionList.size();i++){ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                String sql1 = "SELECT id,code,`name`,mobile,photo,address,longitude,latitude ,funDistance("+positionList.get(i).get("latitude")+","+positionList.get(i).get("longitude")+","+lat2+","+lon2+") funDistance FROM base.base_org where id = '"+positionList.get(i).get("id")+"'"; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                List<Map<String , Object>> mapList = jdbcTemplate.queryForList(sql1); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				//                base_recruit_students 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				        if (mapList.size() > 0){ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				            for (int i=0;i<mapList.size();i++){ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                Integer allNum = 0; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                String recruitId = ""; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                String orgCode = String.valueOf(mapList.get(0).get("code")); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                String orgCode = String.valueOf(mapList.get(i).get("code")); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                List<RecruitStudentsDO> recruitStudentsDOList = recruitStudentsDao.findByOrgCode(orgCode,new Date()); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                Integer num = 0; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                // 判断该机构是否开放报名 
			 | 
		
	
	
		
			
				| 
					
				 | 
			
			
				@ -453,8 +450,8 @@ public class CourseService { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                    allNum = recruitStudentsDO.getNum(); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                    recruitId = recruitStudentsDO.getId(); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                    String sqlNum = "SELECT allm.id,allm.num - bbm.num num\n" + 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                            "FROM (SELECT id,num FROM base_recruit_students WHERE org_code = '"+mapList.get(0).get("code")+"' AND del = 1 ) allm,(\n" + 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                            "SELECT rs.id,COUNT(rsr.id) num FROM base_recruit_students rs,base_recruit_students_record rsr WHERE rsr.org_code =  '"+mapList.get(0).get("code")+"'\n" + 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                            "FROM (SELECT id,num FROM base_recruit_students WHERE org_code = '"+mapList.get(i).get("code")+"' AND del = 1 ) allm,(\n" + 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                            "SELECT rs.id,COUNT(rsr.id) num FROM base_recruit_students rs,base_recruit_students_record rsr WHERE rsr.org_code =  '"+mapList.get(i).get("code")+"'\n" + 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                            " AND rs.id = rsr.recruit_students_id and rsr.recruit_students_id = '"+recruitId+"' AND rs.del = 1 AND rs.id = rsr.recruit_students_id AND rsr.status IN (2,3,6)) bbm"; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                    List<Map<String,Object>> maps = jdbcTemplate.queryForList(sqlNum); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                    num = 0; 
			 | 
		
	
	
		
			
				| 
					
				 | 
			
			
				@ -468,35 +465,94 @@ public class CourseService { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                } else { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                    num = -1; //未开放报名 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                String sqlCourse = "SELECT GROUP_CONCAT(DISTINCT `name` SEPARATOR '、') course FROM base_course WHERE org_code = '"+mapList.get(0).get("code")+"' AND del = 1"; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                String sqlCourse = "SELECT GROUP_CONCAT(DISTINCT `name` SEPARATOR '、') course FROM base_course WHERE org_code = '"+mapList.get(i).get("code")+"' AND del = 1"; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                String course = jdbcTemplate.queryForObject(sqlCourse,String.class); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                JSONObject obj = new JSONObject(); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                obj.put("id",mapList.get(0).get("id")); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                obj.put("orgCode",mapList.get(0).get("code")); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                obj.put("name",mapList.get(0).get("name")); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                obj.put("photo",mapList.get(0).get("photo")); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                obj.put("address",mapList.get(0).get("address")); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                obj.put("longitude",mapList.get(0).get("longitude")); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                obj.put("latitude",mapList.get(0).get("latitude")); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                obj.put("mobile",mapList.get(0).get("mobile")); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                obj.put("funDistance",mapList.get(0).get("funDistance")); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                obj.put("id",mapList.get(i).get("id")); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                obj.put("orgCode",mapList.get(i).get("code")); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                obj.put("name",mapList.get(i).get("name")); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                obj.put("photo",mapList.get(i).get("photo")); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                obj.put("address",mapList.get(i).get("address")); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                obj.put("longitude",mapList.get(i).get("longitude")); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                obj.put("latitude",mapList.get(i).get("latitude")); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                obj.put("mobile",mapList.get(i).get("mobile")); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                obj.put("funDistance",mapList.get(i).get("funDistance")); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                obj.put("num",num); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                obj.put("allNum",allNum); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                obj.put("course",course); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                list.add(obj); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				            } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				            if (list.size() > 0){ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                Collections.sort(list, new Comparator<Map<String, Object>>() { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                    public int compare(Map<String, Object> o1, Map<String, Object> o2) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                        return (Double) o1.get("funDistance") > (Double) o2.get("funDistance") ? 1 : ((Double) o1.get("funDistance") == (Double) o2.get("funDistance") ? 0 : -1); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                    } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                }); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				            } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				            object.put("object",list); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				        } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				        return object; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				    } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				//    public JSONObject getCourseByOrg(String lon2,String lat2){ //, int pageSize,int currentPage 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				//        JSONObject object = new JSONObject(); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				//        String sql = "SELECT id,`name`,longitude,latitude FROM base.base_org where del = 1 and type = 4"; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				//        List<Map<String , Object>> positionList = jdbcTemplate.queryForList(sql); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				//        List<Map<String,Object>> list = new ArrayList<>(); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				//        SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss"); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				//        if (positionList.size() > 0){ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				//            for (int i=0;i<positionList.size();i++){ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				//                String sql1 = "SELECT id,code,`name`,mobile,photo,address,longitude,latitude ,funDistance("+positionList.get(i).get("latitude")+","+positionList.get(i).get("longitude")+","+lat2+","+lon2+") funDistance FROM base.base_org where id = '"+positionList.get(i).get("id")+"'"; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				//                List<Map<String , Object>> mapList = jdbcTemplate.queryForList(sql1); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				////                base_recruit_students 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				//                Integer allNum = 0; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				//                String recruitId = ""; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				//                String orgCode = String.valueOf(mapList.get(0).get("code")); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				//                List<RecruitStudentsDO> recruitStudentsDOList = recruitStudentsDao.findByOrgCode(orgCode,new Date()); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				//                Integer num = 0; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				//                // 判断该机构是否开放报名 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				//                if (recruitStudentsDOList.size()>0){ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				//                    RecruitStudentsDO recruitStudentsDO = recruitStudentsDOList.get(0); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				//                    allNum = recruitStudentsDO.getNum(); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				//                    recruitId = recruitStudentsDO.getId(); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				//                    String sqlNum = "SELECT allm.id,allm.num - bbm.num num\n" + 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				//                            "FROM (SELECT id,num FROM base_recruit_students WHERE org_code = '"+mapList.get(0).get("code")+"' AND del = 1 ) allm,(\n" + 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				//                            "SELECT rs.id,COUNT(rsr.id) num FROM base_recruit_students rs,base_recruit_students_record rsr WHERE rsr.org_code =  '"+mapList.get(0).get("code")+"'\n" + 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				//                            " AND rs.id = rsr.recruit_students_id and rsr.recruit_students_id = '"+recruitId+"' AND rs.del = 1 AND rs.id = rsr.recruit_students_id AND rsr.status IN (2,3,6)) bbm"; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				//                    List<Map<String,Object>> maps = jdbcTemplate.queryForList(sqlNum); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				//                    num = 0; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				//                    if (maps.size() > 0){ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				//                        for (int j =0 ; j < maps.size() ; j++){ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				//                            num = num + Integer.parseInt(String.valueOf(maps.get(j).get("num"))); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				//                        } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				//                    }else { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				//                        num = 0; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				//                    } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				//                } else { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				//                    num = -1; //未开放报名 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				//                } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				//                String sqlCourse = "SELECT GROUP_CONCAT(DISTINCT `name` SEPARATOR '、') course FROM base_course WHERE org_code = '"+mapList.get(0).get("code")+"' AND del = 1"; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				//                String course = jdbcTemplate.queryForObject(sqlCourse,String.class); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				//                JSONObject obj = new JSONObject(); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				//                obj.put("id",mapList.get(0).get("id")); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				//                obj.put("orgCode",mapList.get(0).get("code")); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				//                obj.put("name",mapList.get(0).get("name")); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				//                obj.put("photo",mapList.get(0).get("photo")); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				//                obj.put("address",mapList.get(0).get("address")); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				//                obj.put("longitude",mapList.get(0).get("longitude")); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				//                obj.put("latitude",mapList.get(0).get("latitude")); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				//                obj.put("mobile",mapList.get(0).get("mobile")); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				//                obj.put("funDistance",mapList.get(0).get("funDistance")); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				//                obj.put("num",num); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				//                obj.put("allNum",allNum); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				//                obj.put("course",course); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				//                list.add(obj); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				//            } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				//            if (list.size() > 0){ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				//                Collections.sort(list, new Comparator<Map<String, Object>>() { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				//                    public int compare(Map<String, Object> o1, Map<String, Object> o2) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				//                        return (Double) o1.get("funDistance") > (Double) o2.get("funDistance") ? 1 : ((Double) o1.get("funDistance") == (Double) o2.get("funDistance") ? 0 : -1); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				//                    } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				//                }); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				//            } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				//            object.put("object",list); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				//        } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				//        return object; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				//    } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				    public JSONObject getCourseByteacher(String lon2,String lat2){ //, int pageSize,int currentPage 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				        JSONObject object = new JSONObject(); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				        String sql = "SELECT id,`name`,longitude,latitude FROM base.base_org where del = 1 and type = 4"; 
			 |