SQL工具类
package com.ebizwindow.crm.utils; import java.util.List; import com.ebizwindow.crm.constants.SqlConst;
import com.ebizwindow.crm.constants.TableConst;
import com.ebizwindow.crm.model.TableDefinition;
import com.ebizwindow.crm.portlet.base.SystemStatus;
import com.ebizwindow.crm.service.OpportunityLocalServiceUtil;
import com.ebizwindow.crm.service.TableDefinitionLocalServiceUtil;
import com.liferay.portal.kernel.exception.PortalException;
import com.liferay.portal.kernel.exception.SystemException;
import com.liferay.portal.kernel.util.StringPool; public class SQLUtil {
private static final String PK_COLUMN_CREATEUSERID = "createUserId";
private static final String PK_COLUMN_EDITUSERID = "editUserId";
private static final String PK_COLUMN_AUDITUSERID = "auditUserId";
private static final String PK_COLUMN_CLOSEUSERID = "closeUserId";
private static final String PK_COLUMN_CONFIRMUSERID = "confirmUserId";
private static final String PK_COLUMN_REQUESTUSERID = "requestUserId";
private static final String PK_COLUMN_EXECUTORID = "executorId";
private static final String PK_COLUMN_SUBMITUSERID = "submitUserId";
private static final String PK_COLUMN_OWNERID = "ownerId";
private static final String PK_COLUMN_UPID = "upId";
private static final String PK_COLUMN_CUSTOMERID = "customerId";
private static final String PK_COLUMN_CONTACTID = "contactId";
private static final String PK_COLUMN_CONTRACTID = "contractId";
private static final String PK_COLUMN_OPPORTUNITYID = "opportunityId";
private static final String PK_COLUMN_QUOTATIONID = "quotationId";
private static final String PK_COLUMN_CLUEID = "clueId";
private static final String PK_COLUMN_ACTIVITYID = "activityId";
private static final String PK_COLUMN_MARKETID = "marketId";
private static final String PK_COLUMN_SALESTEMPLATEID = "salesTemplateId";
private static final String PK_COLUMN_DEPARTMENTID = "departmentId";
private static final String PK_COLUMN_PRODUCTID = "productId";
private static final String PK_COLUMN_PROJECTID = "projectId"; public static String getQueryValue(String queryValue, String columnName, long companyId) throws SystemException {
String results = StringPool.BLANK;
String query = StringPool.BLANK;
if (columnName.equals(PK_COLUMN_CREATEUSERID)
|| columnName.equals(PK_COLUMN_EDITUSERID)
|| columnName.equals(PK_COLUMN_AUDITUSERID)
|| columnName.equals(PK_COLUMN_OWNERID)
|| columnName.equals(PK_COLUMN_CLOSEUSERID)
|| columnName.equals(PK_COLUMN_CONFIRMUSERID)
|| columnName.equals(PK_COLUMN_REQUESTUSERID)
|| columnName.equals(PK_COLUMN_SUBMITUSERID)
|| columnName.equals(PK_COLUMN_EXECUTORID) ) { query = "select userId from User_ where firstName like '%" + queryValue + "%'"; } else if (columnName.equals(PK_COLUMN_UPID) || columnName.equals(PK_COLUMN_CUSTOMERID)) { query = "select customerId from CRM_Customer where chineseName like '%" + queryValue + "%'"; } else if (columnName.equals(PK_COLUMN_CONTACTID)) { query = "select contactId from CRM_Contact where chineseName like '%" + queryValue + "%'"; } else if (columnName.equals(PK_COLUMN_MARKETID)) { query = "select marketId from CRM_Market where name like '%" + queryValue + "%'"; } else if (columnName.equals(PK_COLUMN_CLUEID)) { query = "select clueId from CRM_Clue where name like '%" + queryValue + "%'"; } else if (columnName.equals(PK_COLUMN_OPPORTUNITYID)) { query = "select opportunityId from CRM_Opportunity where topic like '%" + queryValue + "%'"; } else if (columnName.equals(PK_COLUMN_QUOTATIONID)) { query = "select quotationId from CRM_Quotation where name like '%" + queryValue + "%'"; } else if (columnName.equals(PK_COLUMN_CONTRACTID)) { query = "select contractId from CRM_Contract where name like '%" + queryValue + "%'"; } else if (columnName.equals(PK_COLUMN_ACTIVITYID)) { query = "select activityId from CRM_Activity where name like '%" + queryValue + "%'"; } else if (columnName.equals(PK_COLUMN_SALESTEMPLATEID)) { query = "select salesTemplateId from CRM_SalesTemplate where name like '%" + queryValue + "%'"; } else if (columnName.equals(PK_COLUMN_PRODUCTID)) { query = "select productId from CRM_Product where name like '%" + queryValue + "%'"; } else if (columnName.equals(PK_COLUMN_DEPARTMENTID)) { query = "select departmentId from OPERATOR_Department where departmentName like '%" + queryValue + "%'"; } else if (columnName.equals(PK_COLUMN_PROJECTID)) { query = "select projectId from CRM_Project where name like '%" + queryValue + "%'"; } query += " and companyId = '" + companyId + "'"; List<Long> entityIDs = OpportunityLocalServiceUtil.searchBySQLQueryString(query, -1, -1); String entityIDsStr = entityIDs.toString();
results = StringPool.OPEN_PARENTHESIS + entityIDsStr.subSequence(1, entityIDsStr.length() - 1) + StringPool.CLOSE_PARENTHESIS; return results;
} public static String symbolToString(String symbol, String value) {
String str = StringPool.BLANK;
if (!symbol.equals(StringPool.BLANK)) {
if (symbol.equals("eq") || symbol.equals(StringPool.EQUAL)) { str = " = '" + value + "'"; } else if (symbol.equals("gt") || symbol.equals(StringPool.GREATER_THAN)) { str = " > '" + value + "'"; } else if (symbol.equals("lt") || symbol.equals(StringPool.LESS_THAN)) { str = " < '" + value + "'"; } else if (symbol.equals("gteq") || symbol.equals(StringPool.GREATER_THAN_OR_EQUAL)) { str = " >= '" + value + "'"; } else if (symbol.equals("lteq") || symbol.equals(StringPool.LESS_THAN_OR_EQUAL)) { str = " <= '" + value + "'"; } else if (symbol.equals("ne") || symbol.equals(StringPool.NOT_EQUAL)) { str = " <> '" + value + "'"; } else if (symbol.equals("c")) { str = " like '%" + value + "%'"; } else if (symbol.equals("sl")) { str = " like '" + value + "%'"; } else if (symbol.equals("sr")) { str = " like '%" + value + "'"; } else if (symbol.equals("nn")) { str = " <> '' "; } else if (symbol.equals("n")) { str = " = '' "; } else if (symbol.equals("isn")) { str = " is null ";
} else if (symbol.equals("!eq")) {
str = " != '" + value + "'";
} else if (symbol.equals("tc")) {
str = " in " + value;
}
} else {
str = " = '' ";
}
return str;
} public static String getActivitySQL(long userId) throws SystemException {
StringBuffer sb = new StringBuffer("select activity.activityId from CRM_Activity activity where (activity.executorId in ")
.append(OperatorUtil.searchViewOperatorIds(userId,TableConst.ACTIVITY))
.append(" or activity.createUserId in ")
.append(OperatorUtil.searchViewOperatorIds(userId,TableConst.ACTIVITY))
.append(")");
return sb.toString();
} public static String getCustomerSQL(long userId) throws SystemException {
String sql = "select customer.customerId from CRM_Customer customer where (customer.ownerId in "
+ OperatorUtil.searchViewOperatorIds(userId, TableConst.CUSTOMER) + ")";
return sql;
} public static String getContactSQL(long userId) throws SystemException {
String sql = "select contact.contactId from CRM_Contact contact where (contact.ownerId in "
+ OperatorUtil.searchViewOperatorIds(userId,TableConst.CONTACT) + ")";
return sql;
} public static String getContactTop10SQL(long userId) throws SystemException {
String sql = "select contact.contactId from CRM_Contact contact where (contact.ownerId in "
+ OperatorUtil.searchViewOperatorIds(userId,TableConst.CONTACT) + ") order by contact.createDate limit 10 ";
return sql;
} public static String getContractSQL(long userId) throws SystemException {
String sql = "select contract.contractId from CRM_Contract contract where (contract.ownerId in "
+ OperatorUtil.searchViewOperatorIds(userId,TableConst.CONTRACT) + ")";
return sql;
} public static String getMarketSQL(long userId) throws SystemException {
String sql = "select market.marketId from CRM_Market market where (market.ownerId in "
+ OperatorUtil.searchViewOperatorIds(userId,TableConst.MARKET) + ")";
return sql;
} public static String getClueSQL(long userId) throws SystemException {
String sql = "select clue.clueId from CRM_Clue clue where (clue.ownerId in "
+ OperatorUtil.searchViewOperatorIds(userId,TableConst.CLUE) + ") and clue.auditStatus='"+SystemStatus.Audit.getStatus()+"'";
return sql;
} public static String getOpportunitySQL(long userId) throws SystemException {
String sql = "select opportunity.opportunityId from CRM_Opportunity opportunity where (opportunity.ownerId in "
+ OperatorUtil.searchViewOperatorIds(userId,TableConst.OPPORTUNITY) + ")";
return sql;
} public static String getOpportunityTop10SQL(long userId) throws SystemException {
String sql = "select opportunity.opportunityId from CRM_Opportunity opportunity where (opportunity.ownerId in "
+ OperatorUtil.searchViewOperatorIds(userId,TableConst.OPPORTUNITY) + ") order by opportunity.createDate limit 10";
return sql;
} public static String getQuotationSQL(long userId) throws SystemException {
String sql = "select quotation.quotationId from CRM_Quotation quotation where (quotation.ownerId in "
+ OperatorUtil.searchViewOperatorIds(userId,TableConst.QUOTATION) + ")";
return sql;
} public static String getOrderSQL(long userId) throws SystemException {
String sql = "select order_.orderId from CRM_Order order_ where (order_.ownerId in "
+ OperatorUtil.searchViewOperatorIds(userId,TableConst.ORDER) + ")"; return sql;
} public static String getProductSQL(long companyId) throws SystemException {
String sql = "select product.productId from CRM_Product product where product.companyId = '" + companyId + "'";
return sql;
} public static String getRPlanSQL(long userId) throws SystemException {
String sql = "select receivablesPlan.receivablesPlanId from CRM_ReceivablesPlan receivablesPlan where (receivablesPlan.ownerId in "
+ OperatorUtil.searchViewOperatorIds(userId,TableConst.RPLAN) + ")";
return sql;
} public static String getRRecordSQL(long userId) throws SystemException{
String sql = "select receivablesRecord.receivablesRecordId from CRM_ReceivablesRecord receivablesRecord where (receivablesRecord.ownerId in "
+ OperatorUtil.searchViewOperatorIds(userId,TableConst.RRECORD) + ")";
return sql;
} public static String getSQLBeginningByTableDefinitionId(long tableDefinitionId) throws PortalException, SystemException {
String result = "";
TableDefinition tableDefinition = TableDefinitionLocalServiceUtil.getTableDefinition(tableDefinitionId);
String tableName = tableDefinition.getTableName();
if (tableName.equals(TableConst.CRM_Customer)) {
result = SqlConst.CUSTOMER_SQL_BEGINNING;
} else if (tableName.equals(TableConst.CRM_Customer)) {
result = SqlConst.CUSTOMER_SQL_BEGINNING;
} else if (tableName.equals(TableConst.CRM_Contact)) {
result = SqlConst.CONTACT_SQL_BEGINNING;
} else if (tableName.equals(TableConst.CRM_Market)) {
result = SqlConst.MARKET_SQL_BEGINNING;
} else if (tableName.equals(TableConst.CRM_Clue)) {
result = SqlConst.CLUE_SQL_BEGINNING;
} else if (tableName.equals(TableConst.CRM_Activity)) {
result = SqlConst.ACTIVITY_SQL_BEGINNING;
} else if (tableName.equals(TableConst.CRM_Opportunity)) {
result = SqlConst.OPPORTUNITY_SQL_BEGINNING;
} else if (tableName.equals(TableConst.CRM_Quotation)) {
result = SqlConst.QUOTATION_SQL_BEGINNING;
} else if (tableName.equals(TableConst.CRM_Contract)) {
result = SqlConst.CONTRACT_SQL_BEGINNING;
} else if (tableName.equals(TableConst.CRM_Product)) {
result = SqlConst.PRODUCT_SQL_BEGINNING;
} else {
result = SqlConst.CUSTOMER_SQL_BEGINNING;
}
return result;
} public static String filterQuery(String columnName){
if (columnName.equals("type") || columnName.equals("code")) {
return columnName + StringPool.UNDERLINE;
} else {
return columnName;
}
} //private static Log _log = LogFactoryUtil.getLog(SQLUtil.class); }
SQL工具类的更多相关文章
- PHP文件上传,下载,Sql工具类!
PHP文件上传,下载,Sql工具类! 对文件大小,文件类型 同名覆盖 中文转码的操作,可直接使用 前台 upload.html <!DOCTYPE html> <html> & ...
- 数据库连接池与SQL工具类
数据库连接池与SQL工具类 1.数据库连接池 依赖包 pymysql dbutils # -*- coding: utf-8 -*- ''' @Time : 2021/11/19 16:45 @Aut ...
- Excel生成Oracle数据库表sql工具类
1.解决问题: 开发文档中字段比较多的时候,建表sql(Oracle下划线命名规范)比较麻烦,容易出错~~ (主要是懒) 特意手写一个工具,根据excel字段,生成建表的sql语句. ~~~末尾附Gi ...
- java学习笔记37(sql工具类:JDBCUtils)
在之前的内容中,我们发现,当我们执行一条语句时,每新建一个方法,就要重新连接一次数据库,代码重复率很高,那么能不能把这些重复代码封装成一个类呢,我们学习方法时,就学习到方法就是为了提高代码的利用率,所 ...
- sql 工具类function
--判断是否为整数 create or replace function is_number(param VARCHAR2) return NUMBER is v_num NUMBER; begin ...
- mysql ----BaseDao工具类
package com.zjw.dao; import java.sql.*; /** * 工具类 */ public class BaseDao { static final String DB_U ...
- 一、JDBC的概述 二、通过JDBC实现对数据的CRUD操作 三、封装JDBC访问数据的工具类 四、通过JDBC实现登陆和注册 五、防止SQL注入
一.JDBC的概述###<1>概念 JDBC:java database connection ,java数据库连接技术 是java内部提供的一套操作数据库的接口(面向接口编程),实现对数 ...
- JDBC课程2--实现Statement(用于执行SQL语句)--使用自定义的JDBCTools的工具类静态方法,包括insert/update/delete三合一
/**JDBC课程2--实现Statement(用于执行SQL语句) * 1.Statement :用于执行SQL语句的对象: * 1): 通过Connection 的createStatement( ...
- JDBC基础:JDBC快速入门,JDBC工具类,SQL注入攻击,JDBC管理事务
JDBC基础 重难点梳理 一.JDBC快速入门 1.jdbc的概念 JDBC(Java DataBase Connectivity:java数据库连接)是一种用于执行SQL语句的Java API,可以 ...
随机推荐
- [原]Failed to load SELinux policy. System Freezing ----redhat7or CentOS7 bug
重启rhel7或者centos7 启动界面按 e 在启动项后面加上enforcing=0 Ctrl+x 运行修改后的grub 进入系统 编辑保存/etc/selinux/config 重启
- [原]git的使用(二)---工作区和暂存区
接着上篇 git的使用(一) http://www.cnblogs.com/horizonli/p/5323363.html 6.工作区和暂存区(中转站) 工作区(Working Directory) ...
- JavaScript 异步进化史
前言 JS 中最基础的异步调用方式是 callback,它将回调函数 callback 传给异步 API,由浏览器或 Node 在异步完成后,通知 JS 引擎调用 callback.对于简单的异步操作 ...
- Azure Redis 缓存的 ASP.NET 会话状态提供程序
Azure Redis Cache 提供了一个会话状态提供程序,你可以使用其在缓存中(而不是内存中或在 SQL Server 数据库中)存储会话状态.要使用缓存会话状态提供程序,先首先配置缓存,然后使 ...
- 关于VMware虚拟机磁盘收缩的几种方法
VMware虚拟机在使用过程中,随着软件和数据的增多,虚拟磁盘占用的硬盘空间会逐渐增大,但删除数据后,却不会自动减小占用的物理硬盘空间 而是继续占用相应大小.如果需要解决上面的问题,就需要收缩wmwa ...
- 【BZOJ1502】[NOI2005]月下柠檬树 Simpson积分
[BZOJ1502][NOI2005]月下柠檬树 Description 李哲非常非常喜欢柠檬树,特别是在静静的夜晚,当天空中有一弯明月温柔地照亮地面上的景物时,他必会悠闲地坐在他亲手植下的那棵柠檬树 ...
- 【CF875F】Royal Questions 最小生成基环树森林
[CF875F]Royal Questions 题意:国王的n个王子该结婚了!现在从外国来了m位公主,第i位公主的嫁妆是wi.由于进步思想的传播,每个公主在选择配偶的事情上是有自主权的,具体地,每个公 ...
- php---进行RSA进行非对称加密
参考文档: https://blog.csdn.net/zhihua_w/article/details/74002212 http://www.bm8.com.cn/webtool/rsa/http ...
- pandas category数据类型
实际应用pandas过程中,经常会用到category数据类型,通常以string的形式显示,包括颜色(红,绿,蓝),尺寸的大小(大,中,小),还有地理信息等(国家,省份),这些数据的处理经常会有各种 ...
- windows下安装pytorch
安装: https://blog.csdn.net/xiangxianghehe/article/details/80103095 Windows下通过pip安装PyTorch 0.4.0 impor ...