package com.cabletech.business.analysis.dao;
import java.util.ArrayList;
import java.util.List;
import java.util.Map;
import org.apache.commons.lang.StringUtils;
import org.springframework.stereotype.Repository;
import com.cabletech.common.base.BaseDao;
import com.cabletech.common.base.SysConstant;
import com.cabletech.common.util.Page;
/**
* 巡检完成率
*
* @author wangjie 2012-03-19
*
*/
@SuppressWarnings("rawtypes")
@Repository
public class PollingAccomplishRateDao extends BaseDao {
/**
* 巡检完成率 --按组织分组
*
* @param parameters
* 参数
* @return List<Map<String, Object>> 巡检完成率列表
*/
public List<Map<String, Object>> getPollingAccomplishRateByOrgList(
Map<String, String> parameters) {
List<Map<String, Object>> ret = new ArrayList<Map<String, Object>>();
StringBuffer sqlBuffer = new StringBuffer("");
sqlBuffer
.append(" select id,parentid,name, resnum,plannum,dealnum,(resnum-plannum) as unplannum, ");
sqlBuffer
.append(" decode(plannum,0,0,round((dealnum/plannum)*100,2)) as dearate, ");
sqlBuffer
.append(" decode(resnum,0,0,round((dealnum/resnum)*100,2)) as covrate ");
sqlBuffer.append(" from (select o.ID,o.PARENTID,o.NAME,( ");
sqlBuffer.append(" select count(sb.sublineid) from pointinfo t ");
sqlBuffer.append(" join subline2point s on t.pointid = s.pointid ");
sqlBuffer.append(" join sublineinfo sb on sb.sublineid = s.sublineid ");
sqlBuffer
.append(" where sb.contractorid = o.ID and sb.patrolid is not null");
if (StringUtils.isNotBlank(parameters.get("resourceType"))) {// 资源类型
sqlBuffer.append(" and t.pointtype = '");
sqlBuffer.append(parameters.get("resourceType"));
sqlBuffer.append("'");
}
sqlBuffer
.append(" )+( select count(rm.rs_id) from res_maintenance rm,rs_resourcerecord_v v where rm.maintenance_id = o.ID and v.ID=rm.rs_id and v.TYPE=rm.rs_type ");
if (StringUtils.isNotBlank(parameters.get("resourceType"))) {// 资源类型
sqlBuffer.append(" and rm.rs_type = '");
sqlBuffer.append(parameters.get("resourceType"));
sqlBuffer.append("'");
}
sqlBuffer.append(" ) as resnum,( ");
sqlBuffer
.append(" select count(p.id) from res_maintenance p where exists (select 1 from wplan_patrolresource wpr ");
sqlBuffer.append(" join wplan_patrolinfo wp on wp.id = wpr.plan_id ");
sqlBuffer
.append(" where p.rs_id=wpr.resource_id and p.rs_type=wpr.resource_type and p.patrol_group_id=wp.patrol_group_id ");
sqlBuffer.append(" and wp.plan_state = '"
+ SysConstant.WPLAN_PATROLINFO_STATE_END + "' ");
if (StringUtils.isNotBlank(parameters.get("resourceType"))) {// 资源类型
sqlBuffer.append(" and wpr.resource_type = '");
sqlBuffer.append(parameters.get("resourceType"));
sqlBuffer.append("'");
}
if (StringUtils.isNotBlank(parameters.get("startTime"))
&& StringUtils.isNotBlank(parameters.get("endTime"))) {// 日期
sqlBuffer.append(" and wp.end_time between to_date('");
sqlBuffer.append(parameters.get("startTime"));
sqlBuffer.append("','yyyy-MM-dd') and to_date('");
sqlBuffer.append(parameters.get("endTime"));
sqlBuffer.append("','yyyy-MM-dd') ");
}
sqlBuffer.append(" )and p.maintenance_id = o.ID ");
sqlBuffer
.append(" )+(select count(distinct lst.objectid) from subtaskinfo lst ");
sqlBuffer
.append(" left join plantasklist lptl on lptl.taskid = lst.taskid ");
sqlBuffer.append(" left join PLAN lp on lp.id = lptl.planid ");
sqlBuffer
.append(" left join pointinfo pi on pi.pointid = lst.objectid ");
sqlBuffer
.append(" left join view_patrolgroup vwp on lp.executorid = vwp.ID ");
sqlBuffer.append(" where vwp.ORGID = o.ID ");
if (StringUtils.isNotBlank(parameters.get("resourceType"))) {// 资源类型
sqlBuffer.append(" and pi.pointtype = '");
sqlBuffer.append(parameters.get("resourceType"));
sqlBuffer.append("'");
}
if (StringUtils.isNotBlank(parameters.get("startTime"))
&& StringUtils.isNotBlank(parameters.get("endTime"))) {// 日期
sqlBuffer.append(" and lp.enddate between to_date('");
sqlBuffer.append(parameters.get("startTime"));
sqlBuffer.append("','yyyy-MM-dd') and to_date('");
sqlBuffer.append(parameters.get("endTime"));
sqlBuffer.append("','yyyy-MM-dd') ");
}
sqlBuffer
.append(" and pi.pointid in (select t.pointid from sublineinfo sb ");
sqlBuffer
.append(" join subline2point s on sb.sublineid = s.sublineid ");
sqlBuffer.append(" join pointinfo t on t.pointid = s.pointid ");
sqlBuffer
.append(" where sb.contractorid = o.id and sb.patrolid is not null) ");
sqlBuffer
.append(" ) as plannum,(select count(distinct (wes.resource_id||wes.resource_type||wes.patrol_group_id)) from wplan_executeresult wes ");
sqlBuffer
.append(" left join wplan_patrolinfo wp on wp.id = wes.plan_id ");
sqlBuffer
.append(" left join view_patrolgroup vwp on wes.patrol_group_id = vwp.ID ");
sqlBuffer.append(" where wes.end_time is not null ");
sqlBuffer.append(" and vwp.ORGID = o.ID ");
if (StringUtils.isNotBlank(parameters.get("resourceType"))) {// 资源类型
sqlBuffer.append(" and wes.resource_type = '");
sqlBuffer.append(parameters.get("resourceType"));
sqlBuffer.append("'");
}
if (StringUtils.isNotBlank(parameters.get("startTime"))
&& StringUtils.isNotBlank(parameters.get("endTime"))) {// 日期
sqlBuffer.append(" and wp.end_time between to_date('");
sqlBuffer.append(parameters.get("startTime"));
sqlBuffer.append("','yyyy-MM-dd') and to_date('");
sqlBuffer.append(parameters.get("endTime"));
sqlBuffer.append("','yyyy-MM-dd') ");
}
sqlBuffer
.append(" )+(select count(lps.pointid) from PLAN_STATPATROLDAD lps ");
sqlBuffer
.append(" left join pointinfo pi on pi.pointid = lps.pointid ");
sqlBuffer.append(" left join plan lp on lp.id = lps.planid ");
sqlBuffer
.append(" left join view_patrolgroup vwp on lp.executorid = vwp.ID ");
sqlBuffer.append(" where vwp.ORGID = o.ID ");
if (StringUtils.isNotBlank(parameters.get("resourceType"))) {// 资源类型
sqlBuffer.append(" and pi.pointtype = '");
sqlBuffer.append(parameters.get("resourceType"));
sqlBuffer.append("'");
}
if (StringUtils.isNotBlank(parameters.get("startTime"))
&& StringUtils.isNotBlank(parameters.get("endTime"))) {// 日期
sqlBuffer.append(" and lp.enddate between to_date('");
sqlBuffer.append(parameters.get("startTime"));
sqlBuffer.append("','yyyy-MM-dd') and to_date('");
sqlBuffer.append(parameters.get("endTime"));
sqlBuffer.append("','yyyy-MM-dd') ");
}
sqlBuffer.append(" ) as dealnum from view_org o ");
sqlBuffer
.append(" where o.ORGTYPE = '" + SysConstant.DEPTTYPE_C + "' ");
sqlBuffer
.append(" and o.regionid=any (select regionid from region start with regionid='");
sqlBuffer.append(parameters.get("regionId"));
sqlBuffer.append("' connect by prior regionid=parentregionid) ");
if (StringUtils.isNotBlank(parameters.get("orgId"))) {
sqlBuffer.append(" and o.ID = '");
sqlBuffer.append(parameters.get("orgId"));
sqlBuffer.append("'");
}
sqlBuffer.append(" order by o.id) ");
ret = getJdbcTemplate().queryForList(sqlBuffer.toString());
return ret;
}
/**
* 巡检完成率 --按巡检组分组
*
* @param parameters
* 参数
* @return List<Map<String, Object>> 巡检完成率列表
*/
public List<Map<String, Object>> getPollingAccomplishRateByPatrolList(
Map<String, String> parameters) {
List<Map<String, Object>> ret = new ArrayList<Map<String, Object>>();
StringBuffer sqlBuffer = new StringBuffer("");
sqlBuffer
.append(" select id,parentid,name, resnum,plannum,dealnum,(resnum-plannum) as unplannum, ");
sqlBuffer
.append(" decode(plannum,0,0,round((dealnum/plannum)*100,2)) as dearate, ");
sqlBuffer
.append(" decode(resnum,0,0,round((dealnum/resnum)*100,2)) as covrate ");
sqlBuffer.append(" from (select o.ID,o.PARENTID,o.NAME,( ");
sqlBuffer
.append(" select count(rm.rs_id) from res_maintenance rm,rs_resourcerecord_v v where rm.patrol_group_id = o.id and v.ID=rm.rs_id and v.TYPE=rm.rs_type ");
if (StringUtils.isNotBlank(parameters.get("resourceType"))) {// 资源类型
sqlBuffer.append(" and rm.rs_type = '");
sqlBuffer.append(parameters.get("resourceType"));
sqlBuffer.append("'");
}
sqlBuffer.append(" )+(select count(t.pointid) from pointinfo t ");
sqlBuffer.append(" join subline2point s on t.pointid = s.pointid ");
sqlBuffer.append(" join sublineinfo sb on sb.sublineid = s.sublineid ");
sqlBuffer.append(" where sb.patrolid = o.id ");
if (StringUtils.isNotBlank(parameters.get("resourceType"))) {// 资源类型
sqlBuffer.append(" and t.pointtype = '");
sqlBuffer.append(parameters.get("resourceType"));
sqlBuffer.append("'");
}
sqlBuffer.append(" ) as resnum,( ");
sqlBuffer
.append(" select count(p.id) from res_maintenance p where exists (select 1 from wplan_patrolresource wpr ");
sqlBuffer.append(" join wplan_patrolinfo wp on wp.id = wpr.plan_id ");
sqlBuffer
.append(" where p.rs_id=wpr.resource_id and p.rs_type=wpr.resource_type and p.patrol_group_id=wp.patrol_group_id ");
sqlBuffer.append(" and wp.plan_state = '"
+ SysConstant.WPLAN_PATROLINFO_STATE_END + "' ");
sqlBuffer.append(" and wp.patrol_group_id = o.id ");
if (StringUtils.isNotBlank(parameters.get("resourceType"))) {// 资源类型
sqlBuffer.append(" and wpr.resource_type = '");
sqlBuffer.append(parameters.get("resourceType"));
sqlBuffer.append("'");
}
if (StringUtils.isNotBlank(parameters.get("startTime"))
&& StringUtils.isNotBlank(parameters.get("endTime"))) {// 日期
sqlBuffer.append(" and wp.end_time between to_date('");
sqlBuffer.append(parameters.get("startTime"));
sqlBuffer.append("','yyyy-MM-dd') and to_date('");
sqlBuffer.append(parameters.get("endTime"));
sqlBuffer.append("','yyyy-MM-dd') ");
}
sqlBuffer.append(" )and p.patrol_group_id = o.id ");
sqlBuffer
.append(" )+(select count(distinct lst.objectid) from subtaskinfo lst ");
sqlBuffer
.append(" left join plantasklist lptl on lptl.taskid = lst.taskid ");
sqlBuffer.append(" left join PLAN lp on lp.id = lptl.planid ");
sqlBuffer
.append(" left join pointinfo pi on pi.pointid = lst.objectid ");
sqlBuffer.append(" where lp.executorid = o.id ");
sqlBuffer.append(" and pi.pointid in (select t.pointid ");
sqlBuffer.append(" from sublineinfo sb ");
sqlBuffer
.append(" join subline2point s on sb.sublineid = s.sublineid ");
sqlBuffer.append(" join pointinfo t on t.pointid = s.pointid ");
sqlBuffer.append(" where sb.patrolid = o.id) ");
if (StringUtils.isNotBlank(parameters.get("resourceType"))) {// 资源类型
sqlBuffer.append(" and pi.pointtype = '");
sqlBuffer.append(parameters.get("resourceType"));
sqlBuffer.append("'");
}
if (StringUtils.isNotBlank(parameters.get("startTime"))
&& StringUtils.isNotBlank(parameters.get("endTime"))) {// 日期
sqlBuffer.append(" and lp.enddate between to_date('");
sqlBuffer.append(parameters.get("startTime"));
sqlBuffer.append("','yyyy-MM-dd') and to_date('");
sqlBuffer.append(parameters.get("endTime"));
sqlBuffer.append("','yyyy-MM-dd') ");
}
sqlBuffer
.append(" ) as plannum,(select count(distinct (wes.resource_id||wes.resource_type||wes.patrol_group_id)) from wplan_executeresult wes ");
sqlBuffer
.append(" left join wplan_patrolinfo wp on wp.id = wes.plan_id ");
sqlBuffer
.append(" left join view_patrolgroup vwp on wes.patrol_group_id = vwp.ID ");
sqlBuffer.append(" where wes.end_time is not null ");
sqlBuffer.append(" and wes.patrol_group_id = o.id ");
if (StringUtils.isNotBlank(parameters.get("resourceType"))) {// 资源类型
sqlBuffer.append(" and wes.resource_type = '");
sqlBuffer.append(parameters.get("resourceType"));
sqlBuffer.append("'");
}
if (StringUtils.isNotBlank(parameters.get("startTime"))
&& StringUtils.isNotBlank(parameters.get("endTime"))) {// 日期
sqlBuffer.append(" and wp.end_time between to_date('");
sqlBuffer.append(parameters.get("startTime"));
sqlBuffer.append("','yyyy-MM-dd') and to_date('");
sqlBuffer.append(parameters.get("endTime"));
sqlBuffer.append("','yyyy-MM-dd') ");
}
sqlBuffer
.append(" )+(select count(lps.pointid) from PLAN_STATPATROLDAD lps ");
sqlBuffer
.append(" left join pointinfo pi on pi.pointid = lps.pointid ");
sqlBuffer.append(" left join plan lp on lp.id = lps.planid ");
sqlBuffer
.append(" left join view_patrolgroup vwp on lp.executorid = vwp.ID ");
sqlBuffer.append(" where lp.executorid = o.id ");
if (StringUtils.isNotBlank(parameters.get("resourceType"))) {// 资源类型
sqlBuffer.append(" and pi.pointtype = '");
sqlBuffer.append(parameters.get("resourceType"));
sqlBuffer.append("'");
}
if (StringUtils.isNotBlank(parameters.get("startTime"))
&& StringUtils.isNotBlank(parameters.get("endTime"))) {// 日期
sqlBuffer.append(" and lp.enddate between to_date('");
sqlBuffer.append(parameters.get("startTime"));
sqlBuffer.append("','yyyy-MM-dd') and to_date('");
sqlBuffer.append(parameters.get("endTime"));
sqlBuffer.append("','yyyy-MM-dd') ");
}
sqlBuffer.append(" ) as dealnum from view_patrolgroup o ");
sqlBuffer.append(" where o.regionid=any ");
sqlBuffer.append(" (select regionid from region start with regionid='");
sqlBuffer.append(parameters.get("regionId"));
sqlBuffer.append("' connect by prior regionid=parentregionid) ");
if (StringUtils.isNotBlank(parameters.get("orgId"))) {
sqlBuffer.append(" and o.PARENTID = '");
sqlBuffer.append(parameters.get("orgId"));
sqlBuffer.append("'");
}
sqlBuffer.append(" order by o.id) ");
ret = getJdbcTemplate().queryForList(sqlBuffer.toString());
return ret;
}
/**
* 计划资源覆盖率 --未计划资源明细
*
* @param page
* Page
* @param parameters
* 参数
* @return Page 计划资源覆盖率 分页数据列表
*/
@SuppressWarnings("unchecked")
public Page getUnPlannedResDetailList(Page page,
Map<String, String> parameters) {
StringBuffer sqlBuffer = new StringBuffer("");
String org_condition = "";
if (StringUtils.isNotBlank(parameters.get("orgId"))) {// 范围 -- 组织
org_condition = " and vwp.orgid = '" + parameters.get("orgId")
+ "' ";
}
if (StringUtils.isNotBlank(parameters.get("patrolId"))) {// 范围 -- 巡检组
org_condition = "and vwp.id = '" + parameters.get("patrolId") + "'";
}
String wres_time_condition = "";
String line_time_condition = "";
if (StringUtils.isNotBlank(parameters.get("startTime"))
&& StringUtils.isNotBlank(parameters.get("endTime"))) {// 日期
String time_condition = " between to_date('"
+ parameters.get("startTime")
+ "','yyyy-MM-dd') and to_date('"
+ parameters.get("endTime") + "','yyyy-MM-dd')) ";
wres_time_condition = " and wp.end_time" + time_condition;
line_time_condition = " and lp.enddate" + time_condition;
} else {
wres_time_condition = ")";
line_time_condition = ")";
}
String type_condition = "";
String rm_type_condition = "";
String wpr_type_condition = "";
if (StringUtils.isNotBlank(parameters.get("resourceType"))) {// 资源类型
type_condition += " and pi.pointtype = '"
+ parameters.get("resourceType") + "' ";
rm_type_condition += " and p.rs_type = '"
+ parameters.get("resourceType") + "' ";
wpr_type_condition += " and wpr.resource_type = '"
+ parameters.get("resourceType") + "' ";
}
sqlBuffer.append(" select distinct ");
sqlBuffer.append(" to_char(p.rs_id) as rsid, ");
sqlBuffer.append(" to_char(rsv.STATIONCODE) as STATIONCODE, ");
sqlBuffer.append(" to_char(rsv.name) as rsname, ");
sqlBuffer
.append(" fn_getnamebycode(p.rs_type,'pointtype') as rstype, ");
sqlBuffer.append(" to_char(vwp.PARENTNAME) as orgname, ");
sqlBuffer.append(" to_char(vwp.NAME) as patrolname ");
sqlBuffer.append(" from res_maintenance p ");
sqlBuffer
.append(" join rs_resourcerecord_v rsv on rsv.ID = p.rs_id and p.rs_type = rsv.TYPE ");
sqlBuffer
.append(" left join view_patrolgroup vwp on vwp.id = p.patrol_group_id ");
sqlBuffer
.append(" where not exists ( select 1 from wplan_patrolresource wpr ");
sqlBuffer.append(" join wplan_patrolinfo wp on wp.id = wpr.plan_id ");
sqlBuffer
.append(" where p.rs_id=wpr.resource_id and p.rs_type=wpr.resource_type and p.patrol_group_id=wp.patrol_group_id ");
sqlBuffer.append(" and wp.plan_state = '"
+ SysConstant.WPLAN_PATROLINFO_STATE_END + "' ");
sqlBuffer.append(wpr_type_condition);
sqlBuffer.append(wres_time_condition);
sqlBuffer.append(org_condition);
sqlBuffer.append(rm_type_condition);
sqlBuffer.append(" union all ");
sqlBuffer.append(" select to_char(pi.pointid) as rsid, ");
sqlBuffer.append(" to_char('') as STATIONCODE, ");
sqlBuffer.append(" to_char(pi.pointname) as rsname, ");
sqlBuffer
.append(" fn_getnamebycode(pi.pointtype,'pointtype') as rstype, ");
sqlBuffer.append(" to_char(vwp.PARENTNAME) as orgname, ");
sqlBuffer.append(" to_char(vwp.NAME) as patrolname ");
sqlBuffer.append(" from pointinfo pi ");
sqlBuffer.append(" join subline2point s on pi.pointid = s.pointid ");
sqlBuffer.append(" join sublineinfo sb on sb.sublineid = s.sublineid ");
sqlBuffer
.append(" left join view_patrolgroup vwp on sb.patrolid = vwp.ID ");
sqlBuffer
.append(" where not exists(select lst.id from subtaskinfo lst ");
sqlBuffer
.append(" left join plantasklist lptl on lptl.taskid = lst.taskid ");
sqlBuffer.append(" left join PLAN lp on lp.id = lptl.planid ");
sqlBuffer
.append(" left join view_patrolgroup vwp on lp.executorid = vwp.ID ");
sqlBuffer.append(" where lst.objectid = pi.pointid ");
sqlBuffer.append(org_condition);
sqlBuffer.append(type_condition);
sqlBuffer.append(line_time_condition);
sqlBuffer.append(type_condition);
sqlBuffer.append(org_condition);
return super.getSQLPageAll(page, sqlBuffer.toString());
}
/**
* 巡检完成率 --已巡资源明细
*
* @param page
* Page
* @param parameters
* 参数
* @return Page 巡检完成率 分页数据列表
*/
@SuppressWarnings("unchecked")
public Page getPollingAccomplishResDetailList(Page page,
Map<String, String> parameters) {
StringBuffer sqlBuffer = new StringBuffer("");
String wres_condition = "";
String line_condition = "";
if (StringUtils.isNotBlank(parameters.get("resourceType"))) {// 资源类型
wres_condition += " and wes.resource_type = '"
+ parameters.get("resourceType") + "' ";
line_condition += " and pi.pointtype = '"
+ parameters.get("resourceType") + "' ";
}
if (StringUtils.isNotBlank(parameters.get("startTime"))
&& StringUtils.isNotBlank(parameters.get("endTime"))) {// 日期
String dateCondition = " between to_date('"
+ parameters.get("startTime")
+ "','yyyy-MM-dd') and to_date('"
+ parameters.get("endTime") + "','yyyy-MM-dd') ";
wres_condition += " and wp.end_time" + dateCondition;
line_condition += " and lp.enddate" + dateCondition;
}
if (StringUtils.isNotBlank(parameters.get("orgId"))) {// 范围 -- 组织
String orgCondition = "and vwp.orgid = '" + parameters.get("orgId")
+ "'";
wres_condition += orgCondition;
line_condition += orgCondition;
}
if (StringUtils.isNotBlank(parameters.get("patrolId"))) {// 范围 -- 巡检组
String orgCondition = "and vwp.id = '" + parameters.get("patrolId")
+ "'";
wres_condition += orgCondition;
line_condition += orgCondition;
}
sqlBuffer.append(" select to_char(wes.resource_id) as rsid, ");
sqlBuffer.append(" to_char(rsv.STATIONCODE) as STATIONCODE, ");
sqlBuffer.append(" to_char(rsv.NAME) as rsname, ");
sqlBuffer
.append(" fn_getnamebycode(wes.resource_type,'pointtype') as rstype, ");
sqlBuffer.append(" to_char(vwp.PARENTNAME) as orgname, ");
sqlBuffer.append(" to_char(vwp.name) as patrolname, ");
sqlBuffer.append(" to_char(wes.end_time,'yyyy-MM-dd') as patroldate, ");
sqlBuffer
.append(" to_char(ROUND(TO_NUMBER(wes.end_time-wes.start_time) * 24 * 60* 60)) as taketime ");
sqlBuffer.append(" from wplan_executeresult wes ");
sqlBuffer
.append(" left join wplan_patrolinfo wp on wp.id = wes.plan_id ");
sqlBuffer
.append(" left join view_patrolgroup vwp on wes.patrol_group_id = vwp.ID ");
sqlBuffer
.append(" left join rs_resourcerecord_v rsv on wes.resource_id = rsv.ID and wes.resource_type = rsv.TYPE ");
sqlBuffer
.append(" where wes.end_time=(select max(end_time) from wplan_executeresult where ");
sqlBuffer
.append(" resource_id=wes.resource_id and resource_type=wes.resource_type and patrol_group_id=wes.patrol_group_id) ");
sqlBuffer.append(wres_condition);
sqlBuffer.append(" union all ");
sqlBuffer.append(" select to_char(lps.pointid) as rsid, ");
sqlBuffer.append(" to_char('') as STATIONCODE, ");
sqlBuffer.append(" to_char(pi.pointname) as rsname, ");
sqlBuffer
.append(" fn_getnamebycode(pi.pointtype,'pointtype') as rstype, ");
sqlBuffer.append(" to_char(vwp.PARENTNAME) as orgname, ");
sqlBuffer.append(" to_char(vwp.name) as patrolname, ");
sqlBuffer
.append(" to_char(lps.patroldate,'yyyy-MM-dd') as patroldate, ");
sqlBuffer.append(" to_char(ROUND(0)) as taketime ");
sqlBuffer.append(" from PLAN_STATPATROLDAD lps ");
sqlBuffer
.append(" left join pointinfo pi on pi.pointid = lps.pointid ");
sqlBuffer.append(" left join plan lp on lp.id = lps.planid ");
sqlBuffer
.append(" left join view_patrolgroup vwp on lp.executorid = vwp.ID ");
sqlBuffer.append(" where 1=1 ");
sqlBuffer.append(line_condition);
return super.getSQLPageAll(page, sqlBuffer.toString());
}
}