/** * PSpkgDao.java 2015/09/05 */ package com.ycsoft.business.dao.prod; import java.util.List; import org.springframework.stereotype.Component; import com.ycsoft.beans.prod.PSpkg; import com.ycsoft.commons.helper.StringHelper; import com.ycsoft.daos.abstracts.BaseEntityDao; import com.ycsoft.daos.core.JDBCException; import com.ycsoft.daos.core.Pager; /** * PSpkgDao -> P_SPKG table's operator */ @Component public class PSpkgDao extends BaseEntityDao<PSpkg> { /** * default empty constructor */ public PSpkgDao() {} public PSpkg querySpkgBySn(String spkgSn) throws Exception { return this.createQuery("select * from p_spkg where spkg_sn=? and eff_date<sysdate and (exp_date is null or exp_date>sysdate)", spkgSn).first(); } public Pager<PSpkg> querySpkg(String query, Integer start, Integer limit) throws Exception { String sql = "select c.cust_no,c.cust_name,s.*" + " from p_spkg s, c_cust c " + " where s.spkg_sn=c.spkg_sn(+) "; if(StringHelper.isNotEmpty(query)){ sql += " and s.spkg_title like '%"+query+"%' or s.spkg_text like '%"+query+"%'"; } sql += " order by s.create_time desc"; Pager<PSpkg> page= this.createQuery(sql).setStart(start).setLimit(limit).page(); return page; } public List<String> queryProdName(String spkg_sn) throws JDBCException{ String sql="select distinct p.prod_name " + " from p_prod p ,p_prod_tariff ppt where p.prod_id=ppt.prod_id and ppt.spkg_sn=? "; return this.findUniques(sql, spkg_sn); } public int countBySpkgSn(String spId, String spkgSn) throws Exception { String sql = "select count(1) from p_spkg where spkg_sn=?"; if(StringHelper.isNotEmpty(spId)){ sql += " and sp_id<>'"+spId+"'"; } return this.count(sql, spkgSn); } }