Example usage for com.liferay.portal.kernel.dao.orm Type INTEGER

List of usage examples for com.liferay.portal.kernel.dao.orm Type INTEGER

Introduction

In this page you can find the example usage for com.liferay.portal.kernel.dao.orm Type INTEGER.

Prototype

Type INTEGER

To view the source code for com.liferay.portal.kernel.dao.orm Type INTEGER.

Click Source Link

Usage

From source file:com.liferay.contacts.service.persistence.EntryFinderImpl.java

License:Open Source License

public List<BaseModel<?>> findByC_U_FN_EA(long companyId, long userId, String[] fullNames,
        String[] emailAddresses, boolean andOperator, int start, int end) throws SystemException {

    fullNames = CustomSQLUtil.keywords(fullNames, true);
    emailAddresses = CustomSQLUtil.keywords(emailAddresses, true);

    Session session = null;//  www.jav  a2  s .  c  om

    try {
        session = openSession();

        String sql = CustomSQLUtil.get(FIND_BY_C_U_FN_EA);

        sql = CustomSQLUtil.replaceKeywords(sql, "lower(User_.firstName)", StringPool.LIKE, false, fullNames);
        sql = CustomSQLUtil.replaceKeywords(sql, "lower(User_.middleName)", StringPool.LIKE, false, fullNames);
        sql = CustomSQLUtil.replaceKeywords(sql, "lower(User_.lastName)", StringPool.LIKE, false, fullNames);
        sql = CustomSQLUtil.replaceKeywords(sql, "lower(User_.screenName)", StringPool.LIKE, false, fullNames);
        sql = CustomSQLUtil.replaceKeywords(sql, "lower(User_.emailAddress)", StringPool.LIKE, true,
                emailAddresses);
        sql = CustomSQLUtil.replaceKeywords(sql, "lower(Contacts_Entry.fullName)", StringPool.LIKE, false,
                fullNames);
        sql = CustomSQLUtil.replaceKeywords(sql, "lower(Contacts_Entry.emailAddress)", StringPool.LIKE, true,
                emailAddresses);
        sql = CustomSQLUtil.replaceAndOperator(sql, andOperator);

        SQLQuery q = session.createSQLQuery(sql);

        q.addScalar("id", Type.LONG);
        q.addScalar("name", Type.STRING);
        q.addScalar("portalUser", Type.INTEGER);

        QueryPos qPos = QueryPos.getInstance(q);

        qPos.add(companyId);
        qPos.add(fullNames, 8);
        qPos.add(emailAddresses, 2);
        qPos.add(userId);
        qPos.add(fullNames, 2);
        qPos.add(emailAddresses, 2);

        List<BaseModel<?>> models = new ArrayList<BaseModel<?>>();

        Iterator<Object[]> itr = (Iterator<Object[]>) QueryUtil.iterate(q, getDialect(), start, end);

        while (itr.hasNext()) {
            Object[] array = itr.next();

            long id = (Long) array[0];
            //String name = (String)array[1];
            int portalUser = (Integer) array[2];

            BaseModel<?> model = null;

            if (portalUser == 1) {
                model = UserLocalServiceUtil.getUser(id);
            } else {
                model = EntryLocalServiceUtil.getEntry(id);
            }

            models.add(model);
        }

        return models;
    } catch (Exception e) {
        throw new SystemException(e);
    } finally {
        closeSession(session);
    }
}

From source file:com.liferay.content.targeting.analytics.service.persistence.AnalyticsEventFinderImpl.java

License:Open Source License

protected List<Object[]> doFindByC_GTC_R_R(long companyId, String referrerClassName, long referrerClassPK,
        Date date) throws SystemException {

    Session session = null;//from w w  w.ja  v a  2  s .co  m

    try {
        session = openSession();

        CustomSQLUtil.reloadCustomSQL();

        String sql = CustomSQLUtil.get(FIND_BY_C_GtC_R_R);

        SQLQuery q = session.createSQLQuery(sql);

        q.addScalar("className", Type.STRING);
        q.addScalar("classPK", Type.LONG);
        q.addScalar("count", Type.INTEGER);

        QueryPos qPos = QueryPos.getInstance(q);

        qPos.add(companyId);
        qPos.add(date);
        qPos.add(referrerClassName);
        qPos.add(referrerClassPK);

        return q.list();
    } catch (Exception e) {
        throw new SystemException(e);
    } finally {
        closeSession(session);
    }
}

From source file:com.liferay.content.targeting.report.campaign.tracking.action.service.persistence.CTActionTotalFinderImpl.java

License:Open Source License

@Override
public List<Object[]> findByAnalyticsWithClassName(Date modifiedDate) throws SystemException {

    Session session = null;//from  w  w  w.j a va  2s . c o  m

    try {
        session = openSession();

        String sql = CustomSQLUtil.get(FIND_BY_ANALYICS_WITH_CLASS_NAME);

        SQLQuery q = session.createSQLQuery(sql);

        q.addScalar("className", Type.STRING);
        q.addScalar("classPK", Type.LONG);
        q.addScalar("eventType", Type.STRING);
        q.addScalar("count", Type.INTEGER);

        QueryPos qPos = QueryPos.getInstance(q);

        qPos.add(modifiedDate);

        return q.list();
    } catch (Exception e) {
        throw new SystemException(e);
    } finally {
        closeSession(session);
    }
}

From source file:com.liferay.content.targeting.report.campaign.tracking.action.service.persistence.CTActionTotalFinderImpl.java

License:Open Source License

@Override
public List<Object[]> findByAnalyticsWithElementId(Date modifiedDate) throws SystemException {

    Session session = null;//  w w  w .  j a v  a  2  s .c  o m

    try {
        session = openSession();

        String sql = CustomSQLUtil.get(FIND_BY_ANALYICS_WITH_ELEMENT_ID);

        SQLQuery q = session.createSQLQuery(sql);

        q.addScalar("elementId", Type.STRING);
        q.addScalar("eventType", Type.STRING);
        q.addScalar("count", Type.INTEGER);

        QueryPos qPos = QueryPos.getInstance(q);

        qPos.add(modifiedDate);

        return q.list();
    } catch (Exception e) {
        throw new SystemException(e);
    } finally {
        closeSession(session);
    }
}

From source file:org.oep.cmon.dao.dvc.service.persistence.ThuTucHanhChinhFinderImpl.java

License:Apache License

/**
  * This is fucntion search ThuTucHanhChinh by ungDungId, nhomId,param paging
  * Version: 1.0/*from  w  w w.j av  a 2  s  .co m*/
  *  
  * History: 
  *   DATE        AUTHOR      DESCRIPTION 
  *  ------------------------------------------------- 
  *  3-March-2013  Nam Dinh    Create new
  * @param Long ungDungId,Long nhomId,int start,int end
  * @return List<ThuTucHanhChinh>
  */
public List<ThuTucHanhChinh> searchByUngDungOrNhom(Long ungDungId, Long nhomId, int start, int end)
        throws SystemException {
    Session session = null;
    try {
        session = openSession();

        StringBuffer sql = new StringBuffer("");
        sql.append(
                " SELECT tt.ID,tt.MA,tt.TEN,tt.TRANGTHAI,ungdung.MA as MAUNGDUNG FROM CMON_THUTUCHANHCHINH tt");
        sql.append(" JOIN CMON_NHOMTHUTUCHANHCHINH nhom on nhom.id = tt.nhomthutuchanhchinhid");
        sql.append(" join CMON_DANHMUCUNGDUNG ungdung on ungdung.id=nhom.danhmucungdungid");
        sql.append(" WHERE tt.daXoa=0 ");
        if (ungDungId != null) {
            sql.append(" AND ungdung.id=? ");
        }
        if (nhomId != null) {
            sql.append(" AND nhom.id=? ");
        }

        sql.append(" ORDER BY tt.ten ASC");

        SQLQuery q = session.createSQLQuery(sql.toString());
        q.addScalar("ID", Type.LONG);
        q.addScalar("MA", Type.STRING);
        q.addScalar("TEN", Type.STRING);
        q.addScalar("TRANGTHAI", Type.INTEGER);
        q.addScalar("MAUNGDUNG", Type.STRING);

        QueryPos qPos = QueryPos.getInstance(q);
        if (ungDungId != null) {
            qPos.add(ungDungId);
        }
        if (nhomId != null) {
            qPos.add(nhomId);
        }

        Iterator<Object[]> itr = (Iterator<Object[]>) QueryUtil.iterate(q, getDialect(), start, end);
        List<ThuTucHanhChinh> result = new ArrayList<ThuTucHanhChinh>();
        while (itr.hasNext()) {
            try {
                Object[] a = itr.next();
                ThuTucHanhChinh t = new ThuTucHanhChinhImpl();
                t.setId((Long) a[0]);
                t.setMa((String) a[1]);
                t.setTen((String) a[2]);
                t.setTrangThai((Integer) a[3]);
                t.setNguoiTao((String) a[4]);
                result.add(t);
            } catch (Exception e) {
                // TODO: handle exception
            }
        }
        return result;

    } catch (Exception e) {
        throw new SystemException(e);
    } finally {

        closeSession(session);
    }
}

From source file:org.oep.cmon.dao.dvc.service.persistence.ThuTucHanhChinhFinderImpl.java

License:Apache License

/**
  * This is fucntion search ThuTuc2GiayTo by tthcid, dgId,daXoa, param paging
  * Version: 1.0/*from   ww  w .j  a  va  2s.c om*/
  *  
  * History: 
  *   DATE        AUTHOR      DESCRIPTION 
  *  ------------------------------------------------- 
  *  3-March-2013  Nam Dinh    Create new
  * @param Long tthcid, Long dgId, Integer daXoa, int start,int end
  * @return List<ThuTuc2GiayTo>
  */
public List<ThuTuc2GiayTo> searchByTTHCIdOrGDId(Long tthcid, Long dgId, Integer daXoa, int start, int end)
        throws SystemException {
    Session session = null;
    try {
        session = openSession();

        StringBuffer sql = new StringBuffer("");
        sql.append(" SELECT tt2gt.id AS ID , gt.ten AS TEN,  tt2gt.batbuoc AS BATBUOC, ");
        sql.append(" tt2gt.giaidoan AS GIAIDOAN, tt2gt.thutuhienthi AS THUTUHIENTHI, ");
        sql.append(
                " tt2gt.trangthai as TRANGTHAI, tt2gt.danhmucgiaytoid as danhmucgiaytoid, tt2gt.thutuchanhchinhid as thutuchanhchinhid ");
        sql.append(" FROM cmon_thutuc2giayto tt2gt ");
        sql.append(" Join cmon_danhmucgiayto gt on gt.id=tt2gt.danhmucgiaytoid");
        sql.append(" Join cmon_thutuchanhchinh tthc on tthc.id=tt2gt.thutuchanhchinhid");
        sql.append(" WHERE 1=1 ");
        if (tthcid != null) {
            sql.append(" AND tt2gt.thutuchanhchinhid=? ");
        }
        if (dgId != null) {
            sql.append(" AND tt2gt.giaidoan=? ");
        }
        if (daXoa != null) {
            sql.append(" AND tt2gt.daxoa=? ");
        }

        sql.append(" ORDER BY tt2gt.thutuhienthi ASC");

        SQLQuery q = session.createSQLQuery(sql.toString());
        q.addScalar("ID", Type.LONG);
        q.addScalar("TEN", Type.STRING);
        q.addScalar("BATBUOC", Type.INTEGER);
        q.addScalar("GIAIDOAN", Type.INTEGER);
        q.addScalar("THUTUHIENTHI", Type.LONG);
        q.addScalar("TRANGTHAI", Type.STRING);
        q.addScalar("danhmucgiaytoid", Type.LONG);
        q.addScalar("thutuchanhchinhid", Type.LONG);

        int queryPos = 0;
        if (tthcid != null) {
            q.setLong(queryPos++, tthcid);
        }
        if (dgId != null) {
            q.setLong(queryPos++, dgId);
        }
        if (daXoa != null) {
            q.setLong(queryPos++, daXoa);
        }
        Iterator<Object[]> itr = (Iterator<Object[]>) QueryUtil.iterate(q, getDialect(), start, end);
        List<ThuTuc2GiayTo> result = new ArrayList<ThuTuc2GiayTo>();
        while (itr.hasNext()) {
            Object[] a = itr.next();
            ThuTuc2GiayTo t = new ThuTuc2GiayToImpl();
            t.setId(Long.valueOf(a[0].toString()));
            t.setNguoiTao((String) a[1]);
            t.setBatBuoc(Integer.valueOf(a[2].toString()));
            t.setGiaidoan(Integer.valueOf(a[3].toString()));
            t.setThuTuHienThi(Long.valueOf(a[4].toString()));
            t.setTrangThai(Integer.parseInt(a[5].toString()));
            t.setDanhMucGiayToId(Long.valueOf(a[6].toString()));
            t.setThuTucHanhChinhId(Long.valueOf(a[7].toString()));
            result.add(t);
        }
        return result;

    } catch (Exception e) {
        throw new SystemException(e);
    } finally {

        closeSession(session);
    }
}

From source file:org.oep.cmon.dao.hosohcc.service.persistence.HoSoTTHCCongFinderImpl.java

License:Apache License

/**
  * This is fucntion countAllHSDangXuLyMutilStatusAndTTHC
  * Version: 1.0// w ww.j  a v a 2 s . c o  m
  *  
  * History: 
  *   DATE        AUTHOR      DESCRIPTION 
  *  ------------------------------------------------- 
  *  3-March-2013  Nam Dinh    Create new
  * @param String maSoOrTenNguoiNopHoSo,
   String thuTucHanhChinhIds,
   String status,
   List<String> lsMaHoSo,
   String tuNgay,
   String denNgay,
   int start,
   int end
  * @return int
  */
public int countAllHSDangXuLyMutilStatusAndTTHC(String maSoOrTenNguoiNopHoSo, String thuTucHanhChinhIds,
        String status, List<String> lsMaHoSo, String tuNgay, String denNgay, int start, int end)
        throws SystemException {

    Session session = null;

    if (lsMaHoSo == null || lsMaHoSo.isEmpty()) {
        return 0;
    }

    String maHoSos = Helper.join(lsMaHoSo, true);

    try {
        session = openSession();
        StringBuilder sqlBuilder = new StringBuilder("SELECT COUNT(ID) count_ FROM CMON_HOSOTTHCCONG WHERE ");
        sqlBuilder.append(" MASOHOSO IN ( " + maHoSos + ") ");

        if (Validator.isNotNull(maSoOrTenNguoiNopHoSo)) {
            sqlBuilder.append(
                    " AND (MASOHOSO LIKE ? OR MASOBIENNHAN LIKE ? OR UPPER(HOTENNGUOINOPHOSO) LIKE UPPER(?)) ");
        }

        if (thuTucHanhChinhIds != null && thuTucHanhChinhIds.length() > 0) {
            sqlBuilder.append(" AND THUTUCHANHCHINHID IN (" + thuTucHanhChinhIds + ") ");
        }

        if (status != null && status.length() > 0) {
            sqlBuilder.append(" AND TRANGTHAIHOSO  IN (" + status + ") ");
        }

        if (Validator.isNotNull(tuNgay) && Validator.isNotNull(denNgay)) {
            sqlBuilder.append(" AND NGAYNOPHOSO BETWEEN TO_DATE ('" + tuNgay + "','dd/MM/yyyy') AND TO_DATE('"
                    + denNgay + "','dd/MM/yyyy') ");
        }

        sqlBuilder.append(" AND DAXOA = 0");
        SQLQuery q = session.createSQLQuery(sqlBuilder.toString());
        q.setCacheable(false);
        q.addScalar("count_", Type.INTEGER);
        QueryPos qPos = QueryPos.getInstance(q);

        if (Validator.isNotNull(maSoOrTenNguoiNopHoSo)) {
            qPos.add(maSoOrTenNguoiNopHoSo + "%");
            qPos.add(maSoOrTenNguoiNopHoSo + "%");
            qPos.add("%" + maSoOrTenNguoiNopHoSo);
        }

        return (Integer) q.uniqueResult();
    } catch (Exception e) {
        try {
            throw new SystemException(e);
        } catch (SystemException se) {
            se.printStackTrace();
        }
    } finally {
        closeSession(session);
    }

    return 0;
}

From source file:org.oep.cmon.dao.nsd.service.persistence.TaiNguyenFinderImpl.java

License:Apache License

/**
  * This is fucntion searchByVaiTroId //from  w  ww . ja  va2s .  co  m
  * Version: 1.0
  *  
  * History: 
  *   DATE        AUTHOR      DESCRIPTION 
  *  ------------------------------------------------- 
  *  3-March-2013  Nam Dinh    Create new
  * @param Long vaiTroId, int daXoa, int start, int end
  * @return List<TaiNguyen>
  */
public List<TaiNguyen> searchByVaiTroId(Long vaiTroId, int daXoa, int start, int end) throws SystemException {

    Session session = null;
    List<TaiNguyen> list = new ArrayList<TaiNguyen>();
    try {
        session = openSession();

        StringBuffer sql = new StringBuffer("");
        sql.append(
                " Select distinct tn.id, tn.ten, tn.ungdungid, tn.hethongid, tn.loai from cmon_tainguyen tn ");
        sql.append(" LEFT JOIN cmon_tainguyen2vaitro tn2vt ON tn2vt.tainguyenid=tn.ID ");
        sql.append(" LEFT JOIN cmon_vaitro vt ON vt.ID=tn2vt.vaitroid ");
        sql.append(" WHERE 1=1 ");

        if (vaiTroId != null) {
            sql.append(" AND tn2vt.vaitroid=? ");
        }
        if (Validator.isNotNull(daXoa)) {
            sql.append(" AND tn.daxoa=? ");
        }
        sql.append(" ORDER BY tn.ten ASC");

        SQLQuery q = session.createSQLQuery(sql.toString());
        q.addScalar("ID", Type.LONG);
        q.addScalar("TEN", Type.STRING);
        q.addScalar("UNGDUNGID", Type.LONG);
        q.addScalar("HETHONGID", Type.LONG);
        q.addScalar("LOAI", Type.INTEGER);

        QueryPos qPos = QueryPos.getInstance(q);

        if (Validator.isNotNull(vaiTroId)) {
            qPos.add(vaiTroId);
        }
        if (Validator.isNotNull(daXoa)) {
            qPos.add(daXoa);
        }

        Iterator<Object[]> itr = (Iterator<Object[]>) QueryUtil.iterate(q, getDialect(), start, end);
        while (itr.hasNext()) {
            Object[] a = itr.next();
            TaiNguyen t = new TaiNguyenImpl();
            t.setId(Long.valueOf(a[0].toString()));
            t.setTen((String) a[1]);
            t.setUngDungId(Long.valueOf(a[2].toString()));
            t.setHeThongId(Long.valueOf(a[3].toString()));
            t.setLoai(Integer.valueOf(a[4].toString()));
            list.add(t);
        }
        return list;

    } catch (Exception e) {
        throw new SystemException(e);
    } finally {

        closeSession(session);
    }
}

From source file:org.oep.cmon.dao.tlct.service.persistence.TaiLieuChungThucFinderImpl.java

License:Apache License

/**
  * This is fucntion searchByCongDanId2DanhMucGiayTo
  * Version: 1.0//  w w w. j  a  va2s . c  o  m
  *  
  * History: 
  *   DATE        AUTHOR      DESCRIPTION 
  *  ------------------------------------------------- 
  *  3-March-2013  Nam Dinh    Create new
  * @param String group,   Long congDanId, Long doiTuongId, int start, int end
  * @return List<TaiLieuChungThuc>
  */
public List<TaiLieuChungThuc> searchByCongDanId2DanhMucGiayTo(String group, Long congDanId, Long doiTuongId,
        int start, int end) {
    // TODO Auto-generated method stub
    Session session = null;
    List<TaiLieuChungThuc> list = new ArrayList<TaiLieuChungThuc>();
    try {
        session = openSession();
        StringBuffer sql = new StringBuffer("");
        sql.append(" SELECT DISTINCT nlttl.ID AS ID, dmgt.TEN AS TEN, dmgt.MA AS MA, nlttl.TRANGTHAI "
                + ", nlttl.NGAYUPLOAD,  nlttl.hieuluctungay, nlttl.hieulucdenngay, nlttl.DANHMUCGIAYTOID, nlttl.noiluutruid,nlttl.phienban as PHIENBAN "
                + " FROM CMON_NOILUUTRUTAILIEU nlttl "
                + " INNER JOIN CMON_DANHMUCGIAYTO dmgt ON dmgt.ID=nlttl.DANHMUCGIAYTOID "
                + " LEFT JOIN CMON_DMGIAYTO2DOITUONGSUDUNG dtgt ON dtgt.LOAIGIAYTOID=dmgt.ID "
                + " LEFT JOIN CMON_LOAIDOITUONG dt ON dt.ID=dtgt.LOAIDOITUONGID "
                + " WHERE dmgt.daxoa=0 and dtgt.daxoa=0 and dtgt.trangthai=1 and dt.daxoa=0");

        if (Validator.isNotNull(group)) {
            sql.append(" AND (LOWER(dmgt.TEN) like LOWER(?) OR LOWER(dmgt.MA) like LOWER(?) )");
        }
        if (Validator.isNotNull(congDanId)) {
            sql.append(" AND nlttl.chusohuuId = ?");
            sql.append(
                    " AND ( nlttl.danhmucgiaytoid, nlttl.phienban ) IN ( SELECT danhmucgiaytoid, MAX(phienban) FROM cmon_noiluutrutailieu where chusohuuid=? GROUP BY danhmucgiaytoid ) ");
        }
        if (Validator.isNotNull(doiTuongId)) {
            sql.append(" AND dt.id = ?");
        }

        sql.append(" ORDER BY nlttl.NGAYUPLOAD DESC, LOWER(dmgt.TEN) ASC ");

        SQLQuery q = session.createSQLQuery(sql.toString());
        q.addScalar("ID", Type.LONG);
        q.addScalar("TEN", Type.STRING);
        q.addScalar("MA", Type.STRING);
        q.addScalar("TRANGTHAI", Type.INTEGER);
        q.addScalar("NGAYUPLOAD", Type.DATE);
        q.addScalar("HIEULUCTUNGAY", Type.DATE);
        q.addScalar("HIEULUCDENNGAY", Type.DATE);
        q.addScalar("DANHMUCGIAYTOID", Type.LONG);
        q.addScalar("NOILUUTRUID", Type.LONG);
        q.addScalar("PHIENBAN", Type.INTEGER);

        QueryPos qPos = QueryPos.getInstance(q);

        if (Validator.isNotNull(group)) {
            qPos.add("%" + group + "%");
            qPos.add("%" + group + "%");
        }
        if (Validator.isNotNull(congDanId)) {
            qPos.add(congDanId);
            qPos.add(congDanId);
        }

        if (Validator.isNotNull(doiTuongId)) {
            qPos.add(doiTuongId);
        }

        Iterator<Object[]> itr = (Iterator<Object[]>) QueryUtil.iterate(q, getDialect(), start, end);
        while (itr.hasNext()) {
            Object[] a = itr.next();
            TaiLieuChungThuc t = new TaiLieuChungThucImpl();
            t.setId(Long.valueOf(a[0].toString()));
            t.setTen((String) a[1]);
            t.setGhiChu(a[2].toString());
            t.setTrangThai(Integer.valueOf(a[3].toString()));
            t.setNgayUpload((java.util.Date) a[4]);
            t.setHieuLucTuNgay((java.util.Date) a[5]);
            t.setHieuLucDenNgay((java.util.Date) a[6]);
            t.setDanhMucGiayToId(Long.valueOf(a[7].toString()));
            t.setNoiLuuTruId(Long.valueOf(a[8].toString()));
            t.setPhienBan(Integer.valueOf(a[9].toString()));
            list.add(t);
        }
        return list;

    } catch (Exception e) {
        e.printStackTrace();
    } finally {

        closeSession(session);
    }
    return list;
}

From source file:org.opencps.accountmgt.service.persistence.BusinessFinderImpl.java

License:Open Source License

/**
 * @param groupId/*from   w  ww .  j a  v a2 s  . c o m*/
 * @param keywords
 * @param accountStatus
 * @param businessDomain
 * @param andOperator
 * @return
 */
private int _countBussiness(long groupId, String keywords, int accountStatus, String businessDomain)
        throws SystemException {

    Session session = null;

    try {
        session = openSession();

        String sql = CustomSQLUtil.get(COUNT_BUSINESS);

        if (Validator.isNull(groupId)) {
            sql = sql.replace("AND (opencps_acc_business.groupId = ?)", StringPool.BLANK);
        }
        if (accountStatus == -1) {
            sql = sql.replace("AND (opencps_acc_business.accountStatus = ?)", StringPool.BLANK);
        }
        if (Validator.isNull(keywords)) {
            sql = sql.replace("AND ((lower(opencps_acc_business.name) LIKE ?)", StringPool.BLANK);
            sql = sql.replace("OR (lower(opencps_acc_business.shortName) LIKE ?)", StringPool.BLANK);
            sql = sql.replace("OR (lower(opencps_acc_business.enName) LIKE ?)", StringPool.BLANK);
            sql = sql.replace("OR (lower(opencps_acc_business.email) LIKE ?))", StringPool.BLANK);
        }
        if (Validator.isNull(businessDomain)) {
            sql = sql.replace(
                    "INNER JOIN " + "opencps_acc_businessdomain " + "ON "
                            + "opencps_acc_business.businessId = opencps_acc_businessdomain.businessId",
                    StringPool.BLANK);

            sql = sql.replace("AND (opencps_acc_businessdomain.businessDomainCode = ?)", StringPool.BLANK);
        }

        SQLQuery q = session.createSQLQuery(sql);
        q.setCacheable(false);

        q.addScalar(COUNT_COLUMN_NAME, Type.INTEGER);

        QueryPos qPos = QueryPos.getInstance(q);

        if (Validator.isNotNull(groupId)) {
            qPos.add(groupId);
        }
        if (accountStatus != -1) {
            qPos.add(accountStatus);
        }
        if (Validator.isNotNull(keywords)) {
            qPos.add(StringPool.PERCENT + keywords + StringPool.PERCENT);
            qPos.add(StringPool.PERCENT + keywords + StringPool.PERCENT);
            qPos.add(StringPool.PERCENT + keywords + StringPool.PERCENT);
            qPos.add(StringPool.PERCENT + keywords + StringPool.PERCENT);
        }
        if (Validator.isNotNull(businessDomain)) {
            qPos.add(businessDomain);
        }

        Iterator<Integer> itr = q.iterate();

        if (itr.hasNext()) {
            Integer count = itr.next();

            if (count != null) {
                return count.intValue();
            }
        }

        return 0;
    } catch (Exception e) {
        throw new SystemException();
    } finally {
        session.close();
    }
}