private String generateWhereCause(final ProjectQueryTo queryTo) { StringBuilder sb = new StringBuilder(); if (queryTo.getProjCode() != null && !queryTo.getProjCode().equals("")) { String projCodeQueryString = getSmartSearchQueryAllLike("pc.PROJ_CODE", queryTo.getProjCode()); if (projCodeQueryString != null) { sb.append(" and (" + projCodeQueryString + " )"); } } if (queryTo.getProjName() != null && !queryTo.getProjName().equals("")) { String projNameQueryString = getSmartSearchQueryAllLike("p.PROJ_NAME", queryTo.getProjName()); if (projNameQueryString != null) { sb.append(" and (" + projNameQueryString + " )"); } } /* * if (queryTo.getReleaseTo() != null && * !queryTo.getReleaseTo().equals("")) { * * String releaseTo = getSmartSearchQueryString("pc.RELEASE_TO", * queryTo.getReleaseTo()); if (releaseTo != null) { sb.append(" and (" + * releaseTo + ")"); } } */ if (queryTo.getProdCode() != null && !queryTo.getProdCode().equals("")) { String prodCode = getSmartSearchQueryAllLike("pc.PROD_CODE", queryTo.getProdCode()); if (prodCode != null) { sb.append(" and (" + prodCode + " )"); } } if (queryTo.getFab() != null && !queryTo.getFab().equals("")) { sb.append(" and p.FAB = " + getSQLString(queryTo.getFab()) + " "); } if (queryTo.getProjOption() != null && !queryTo.getProjOption().equals("")) { sb.append(" and pc.PROJ_OPTION = " + getSQLString(queryTo.getProjOption()) + " "); } if (queryTo.getPanelType() != null && !queryTo.getPanelType().equals("")) { sb.append(" and p.PANEL_TYPE = " + getSQLString(queryTo.getPanelType()) + " "); } if (queryTo.getProdFamily() != null && !queryTo.getProdFamily().equals("")) { sb.append(" and p.PROD_FAMILY = " + getSQLString(queryTo.getProdFamily()) + " "); } if (queryTo.getProdLine() != null && !queryTo.getProdLine().equals("")) { sb.append(" and p.PROD_LINE = " + getSQLString(queryTo.getProdLine()) + " "); } if (queryTo.getProcTech() != null && !queryTo.getProcTech().equals("")) { sb.append(" and p.PROC_TECH = " + getSQLString(queryTo.getProcTech()) + " "); } if (queryTo.getCust() != null && !queryTo.getCust().equals("")) { String custQueryString = getSmartSearchQueryString("pc.CUST", queryTo.getCust()); if (custQueryString != null) { sb.append(" and (" + custQueryString + " )"); } } if (queryTo.getTeamMember() != null && !queryTo.getTeamMember().equals("")) { // String teamMember = // super.getLikeSQLString(queryTo.getTeamMember()); String teamMember = queryTo.getTeamMember(); if (teamMember.startsWith("*")) { teamMember = "%" + teamMember.substring(1); } if (teamMember.endsWith("*")) { teamMember = teamMember.substring(0, teamMember.length() - 1) + "%"; } teamMember = getSQLString(teamMember); sb.append(" and ("); sb.append(" p.PROJ_LEADER like " + teamMember + " "); sb.append(" or p.DESIGN_ENGR like " + teamMember + " "); sb.append(" or p.PROD_ENGR like " + teamMember + " "); sb.append(" or p.ESD_ENGR like " + teamMember + " "); sb.append(" or p.APR_ENGR like " + teamMember + " "); sb.append(" or p.LAYOUT_ENGR like " + teamMember + " "); sb.append(" or p.TEST_ENGR like " + teamMember + " "); sb.append(" or p.ASSY_ENGR like " + teamMember + " "); sb.append(" or p.APP_ENGR like " + teamMember + " "); sb.append(" or p.PM like " + teamMember + " "); sb.append(" or p.QA_ENGR like " + teamMember + " "); sb.append(" or p.SALES_ENGR like " + teamMember + " "); sb.append(")"); } if (queryTo.getKickOffDateFrom() != null && !queryTo.getKickOffDateFrom().equals("") && queryTo.getKickOffDateTo() != null && !queryTo.getKickOffDateTo().equals("")) { // SimpleDateFormat sdf = new SimpleDateFormat("yyyy/MM/dd"); String dateFrom = getSQLDateString(queryTo.getKickOffDateFrom() + " 00:00:00", "yyyy/MM/dd HH:mm:ss"); String dateTo = getSQLDateString(queryTo.getKickOffDateTo() + " 23:59:59", "yyyy/MM/dd HH:mm:ss"); sb.append(" and pc.KICK_OFF_DATE between " + dateFrom + " and " + dateTo + " "); } if (queryTo.getStatus() != null && !queryTo.getStatus().equals("")) { sb.append(" and p.STATUS = " + getSQLString(queryTo.getStatus()) + " "); } if (queryTo.getEstimated() != null && !queryTo.getEstimated().equals("")) { sb.append(" and p.ESTIMATED = " + getSQLString(queryTo.getEstimated()) + " "); } if (queryTo.getNickName() != null && !queryTo.getNickName().equals("")) { String nickName = queryTo.getNickName(); if (nickName.startsWith("*")) { nickName = "%" + nickName.substring(1); } if (nickName.endsWith("*")) { nickName = nickName.substring(0, nickName.length() - 1) + "%"; } nickName = getSQLString(nickName); sb.append(" and p.NICK_NAME like " + nickName + " "); } return sb.toString(); }