<table width="100%" class="form_table">
<tr>
<td align="right" class="form_label">档案名称 :</td>
<td>
<!-- like 条件 -->
<h:text property="criteria/_expr[2]/fileName"/>
<h:hidden property="criteria/_expr[2]/_op" value="like"/>
<h:hidden property="criteria/_expr[2]/_likeRule" value="all"/>
</td>
<td align="right" class="form_label">是否作废 :</td>
<td>
<!-- 等于 条件 -->
<h:select id="select2" name="delFlag" property="criteria/_expr[3]/status" onchange="setCriteriaDelFlagValue()">
<h:option label="请选择" value="" />
<h:option label="是" value="1" />
<h:option label="否" value="0" />
</h:select>
<h:hidden property="criteria/_expr[3]/status" id="criteria3" />
<h:hidden property="criteria/_expr[3]/_op" id="criteria3op" />
</td>
</tr>
<tr>
<td align="right" class="form_label">档案编号 :</td>
<td class="height_td">
<h:text property="criteria/_expr[4]/code"/>
</td>
<td align="right" class="form_label">版本号 :</td>
<td class="height_td">
<h:text property="criteria/_expr[5]/versionNo" />
</td>
</tr>
<tr class="height_td">
<!-- between 条件 -->
<h:hidden property="criteria/_expr[6]/_op" value="between" />
<h:hidden property="criteria/_expr[6]/placeTime" value=" " />
<h:hidden property="criteria/_expr[6]/_pattern" value="yyyy-MM-dd HH:mm:ss"/>
<td align="right" class="form_label">归档开始时间 :</td>
<td class="height_td">
<w:date property="criteria/_expr[6]/_min" format="yyyy-MM-dd HH:mm:ss" id = "startDate"/>
</td>
<td align="right" class="form_label">归档结束时间 :</td>
<td class="height_td">
<w:date property="criteria/_expr[6]/_max" format="yyyy-MM-dd HH:mm:ss" id = "endDate"/>
</td>
</tr>
<tr class="height_td">
<td align="right" class="form_label">数据安全等级 :</td>
<td class="height_td" colspan="3">
<h:radio property="criteria/_expr[7]/safeClass" value="绝密级"/>绝密级
<h:radio property="criteria/_expr[7]/safeClass" value="秘密级"/>秘密级
<h:radio property="criteria/_expr[7]/safeClass" value="内部级"/>内部级
<h:radio property="criteria/_expr[7]/safeClass" value="公共级"/>公共级
</td>
</tr>
<l:notEmpty property="tblArchivesKeywords">
<l:iterate id="classKeyWords" property="tblArchivesKeywords" indexId="id1" >
<l:output oddOutput=" <tr>" />
<td align="right" class="form_label"><b:write iterateId="classKeyWords" property="keywordsName"/> :</td>
<td>
<h:hidden name="criteria/_and[1]/_or[1]/_and[${id1}]/_expr[1]/keywordsId" property="keywordsId" iterateId="classKeyWords"/>
<h:hidden property="criteria/_and[1]/_or[1]/_and[${id1}]/_expr[2]/_op" value="like"/>
<h:text property="criteria/_and[1]/_or[1]/_and[${id1}]/_expr[2]/keyValue" />
</td>
<l:output evenOutput=" </tr>" />
</l:iterate>
</l:notEmpty>
<tr align="center" >
<td colspan="4" >
<input type="button" value="查询" class="button" id="saveBtn" style="width:150px;" />
</td>
</tr>
</table>
<!-- 查询字段 -->
<h:hidden property="criteria/_select/_field[1]" value="fileId"/>
<h:hidden property="criteria/_select/_field[2]" value="classificationId"/>
<h:hidden property="criteria/_select/_field[3]" value="fileName"/>
<h:hidden property="criteria/_select/_field[4]" value="source"/>
<h:hidden property="criteria/_select/_field[5]" value="placeTime"/>
<h:hidden property="criteria/_select/_field[6]" value="code"/>
<h:hidden property="criteria/_select/_field[7]" value="status"/>
<h:hidden property="criteria/_distinct" value="true"/>
生成的SQL 语句
SELECT COUNT(*) EOS_ROW_COUNT FROM (SELECT DISTINCT THIS_.FILE_ID AS Y0_, THIS_.CLASSIFICATION_ID AS Y1_, THIS_.FILE_NAME AS Y2_, THIS_.SOURCE AS Y3_, THIS_.PLACE_TIME AS Y4_, THIS_.CODE AS Y5_, THIS_.STATUS AS Y6_ FROM (SELECT TAF.FILE_ID, TACF.CLASSIFICATION_ID, TAF.FILE_NAME, TAF.CODE, TAF.STATUS, TAF.SOURCE, TAF.PLACE_TIME, TAKF.KEYWORDS_ID, TAKF.KEY_VALUE FROM TBL_ARCHIVES_FILES TAF RIGHT JOIN TBL_ARCHIVES_CALSS_FILES TACF ON TAF.FILE_ID = TACF.FILE_ID LEFT JOIN TBL_ARCHIVES_KEY_FILE TAKF ON TAKF.FILE_ID = TAF.FILE_ID ORDER BY TAF.FILE_NAME) THIS_ WHERE (((THIS_.KEYWORDS_ID = ? AND THIS_.KEY_VALUE LIKE ? ESCAPE '~') OR (THIS_.KEYWORDS_ID = ? AND THIS_.KEY_VALUE LIKE ? ESCAPE '~')) OR (THIS_.KEYWORDS_ID = ? AND THIS_.KEY_VALUE LIKE ? ESCAPE '~')) AND THIS_.CLASSIFICATION_ID = ? AND THIS_.FILE_NAME LIKE ? ESCAPE '~' AND THIS_.STATUS = ? AND THIS_.CODE = ? AND THIS_.PLACE_TIME BETWEEN ? AND ?) TABLE_
在java代码中设置查询条件
public CriteriaType handleSearchCriteria(DataObject criteria, DataObject userInfo){ List<LogicType> andLTList = new ArrayList<LogicType>(); criteria.setList("_or",andLTList); //添加and条件 List<LogicType> orLTList = new ArrayList<LogicType>(); LogicType lt = new LogicTypeImpl(); lt.set_or(orLTList); andLTList.add(lt);//and条件中添加or条件list /* 人员 */ String userId = userInfo.getString("userId"); String userName = userInfo.getString("realName"); LogicType perLT = new LogicTypeImpl(); LogicType perLT1 = new LogicTypeImpl(); List<ExprType> andListPerson = new ArrayList<ExprType>(); List<LogicType> andLTListPerson = new ArrayList<LogicType>(); ExprType etId = new ExprTypeImpl(); etId.set_op("like"); etId.set_property("borrowerId"); etId.set_value(userId); andListPerson.add(etId); ExprType etName = new ExprTypeImpl(); etName.set_op("like"); etName.set_property("borrowerName"); etName.set_value(userName); andListPerson.add(etName); perLT1.set_expr(andListPerson); andLTListPerson.add(perLT1); perLT.set_and(andLTListPerson); orLTList.add(perLT); /* 岗位 */ List<DataObject> positionsList = userInfo.getList("positions"); if (!CollectionUtils.isEmpty(positionsList)) { List<LogicType> orLitPO = new ArrayList<LogicType>(); LogicType poLT = new LogicTypeImpl(); for (DataObject object : positionsList) { List<ExprType> andETList = new ArrayList<ExprType>(); List<LogicType> andLTListPO = new ArrayList<LogicType>(); LogicType tmpLt = new LogicTypeImpl(); LogicType andLt = new LogicTypeImpl(); ExprType exprType1 = new ExprTypeImpl(); exprType1.set_op("like"); exprType1.set_property("positionId"); exprType1.set_value(object.getString("positionId")); andETList.add(exprType1); ExprType exprType2 = new ExprTypeImpl(); exprType2.set_op("like"); exprType2.set_property("positionName"); exprType2.set_value(object.getString("positionName")); andETList.add(exprType2); tmpLt.set_expr(andETList); andLTListPO.add(tmpLt); andLt.set_and(andLTListPO); orLitPO.add(andLt); } poLT.set_or(orLitPO); orLTList.add(poLT); } /* 岗位组 */ List<DataObject> posGroupsList = userInfo.getList("posGroups"); if (!CollectionUtils.isEmpty(posGroupsList)) { List<LogicType> orListPG = new ArrayList<LogicType>(); LogicType pgLT = new LogicTypeImpl(); for (DataObject object1 : posGroupsList) { List<ExprType> andETLitPG = new ArrayList<ExprType>(); List<LogicType> andLTListPG = new ArrayList<LogicType>(); LogicType tmpLt = new LogicTypeImpl(); LogicType andLt = new LogicTypeImpl(); ExprType exprType1 = new ExprTypeImpl(); exprType1.set_op("like"); exprType1.set_property("positionGroupId"); exprType1.set_value(object1.getString("posGroupId")); andETLitPG.add(exprType1); ExprType exprType2 = new ExprTypeImpl(); exprType2.set_op("like"); exprType2.set_property("positionGroupName"); exprType2.set_value(object1.getString("groupName")); andETLitPG.add(exprType2); tmpLt.set_expr(andETLitPG); andLTListPG.add(tmpLt); andLt.set_and(andLTListPG); orListPG.add(andLt); } pgLT.set_or(orListPG); orLTList.add(pgLT); } /* 角色 */ List<DataObject> rolesList = userInfo.getList("roles"); if (!CollectionUtils.isEmpty(rolesList)) { List<LogicType> orListRO = new ArrayList<LogicType>(); LogicType roleLT = new LogicTypeImpl(); for (DataObject object : rolesList) { List<ExprType> andETLitRO = new ArrayList<ExprType>(); List<LogicType> andLTListRO = new ArrayList<LogicType>(); LogicType tmpLt = new LogicTypeImpl(); LogicType andLt = new LogicTypeImpl(); ExprType exprType1 = new ExprTypeImpl(); exprType1.set_op("like"); exprType1.set_property("roleId"); exprType1.set_value(object.getString("roleId")); andETLitRO.add(exprType1); ExprType exprType2 = new ExprTypeImpl(); exprType2.set_op("like"); exprType2.set_property("roleName"); exprType2.set_value(object.getString("roleName")); andETLitRO.add(exprType2); tmpLt.set_expr(andETLitRO); andLTListRO.add(tmpLt); andLt.set_and(andLTListRO); orListRO.add(andLt); } roleLT.set_or(orListRO); orLTList.add(roleLT); } /* 工作组 */ List<DataObject> teamrolesList = userInfo.getList("teamroles"); if (!CollectionUtils.isEmpty(teamrolesList)) { List<LogicType> orListTR = new ArrayList<LogicType>(); LogicType trLT = new LogicTypeImpl(); for (DataObject object : teamrolesList) { List<ExprType> andETLitTR = new ArrayList<ExprType>(); List<LogicType> andLTListTR = new ArrayList<LogicType>(); LogicType tmpLt = new LogicTypeImpl(); LogicType andLt = new LogicTypeImpl(); ExprType exprType1 = new ExprTypeImpl(); exprType1.set_op("like"); exprType1.set_property("workItemId"); exprType1.set_value(object.getString("grouproleId")); andETLitTR.add(exprType1); ExprType exprType2 = new ExprTypeImpl(); exprType2.set_op("like"); exprType2.set_property("workItemName"); exprType2.set_value(object.getString("groupRoleName")); andETLitTR.add(exprType2); tmpLt.set_expr(andETLitTR); andLTListTR.add(tmpLt); andLt.set_and(andLTListTR); orListTR.add(andLt); } trLT.set_or(orListTR); orLTList.add(trLT); } //List groupsList = userInfo.getList("groups"); return (CriteriaType) criteria; }
生成的SQL语句
相关推荐
**普元EOS nuiDemo示例详解** 普元EOS是一款基于Java的企业级应用开发平台,它为开发者提供了丰富的组件和工具,便于快速构建企业信息系统。nui是EOS的一个重要组成部分,专注于用户界面的设计与实现,提供了强大的...
**EOS - 普元企业服务总线** EOS(Enterprise Service Bus),由普元公司研发,是一款高效、灵活的企业服务总线系统。它在SOA(Service-Oriented Architecture,面向服务架构)环境中扮演着核心角色,为企业提供了...
普元EOS开发帮助手册,普元EOS开发帮助手册,普元EOS开发帮助手册,普元EOS开发帮助手册
【普元EOS培训示例源码1】是一个针对普元EOS平台的开发学习资源,包含了多个关键组件和示例代码,旨在帮助用户更好地理解和运用EOS系统。普元EOS(Enterprise Open Service)是一款企业级服务开发与运行平台,它提供...
普元eos是一款由普元信息技术有限公司开发的软件产品,该产品以提供一套高效的开发解决方案为核心,特别在前端开发领域具有较强的竞争力和广泛的使用。普元eos的帮助文档详细介绍了如何安装使用普元前端开发框架NUI...
根据提供的文件信息,本文将详细解析《EOS5.0 EOSV5.0 上海 普元 EOS5.0应用指南》中所涉及的关键知识点,主要包括PetStore示例的使用说明与tag应用示例的使用说明。 ### PetStore示例使用说明 #### 1.1 查看源...
**普元EOS7.5基础教程(官网版)** 普元EOS是一款国内知名的中间件平台,专注于企业级服务总线(Enterprise Service Bus, ESB)和应用服务器领域。EOS7.5版本是其一个重要的迭代,提供了更强大的功能和优化的性能。本...
### 普元EOS Platform 7.5 开发手册知识点概览 #### 一、NUIDemo使用与实践 **1.1 执行SQL脚本** - **知识点概述:** - 在开始学习NUI控件之前,首先需要了解如何执行SQL脚本,这是进行后续开发的基础。 - SQL...
"普元EOS 实例Demo -- Primeton NUI Demo" 是一个专为初学者设计的教程,旨在帮助用户快速上手普元EOS平台的使用。普元EOS,全称为Primeton Enterprise Service Oriented Operating System,是一个面向服务的企业级...
普元EOS提供了丰富的功能,包括服务化、工作流、数据集成、消息中间件等,旨在提高开发效率,简化企业应用的复杂性。 ### 1. 普元EOS平台概述 普元EOS是基于Java技术的企业软件基础设施,它提供了一个开放、灵活且...
【普元EOS培训资料】是一套专为初学者设计的学习资源,它包含了全面且深入的EOS相关知识,确保用户在完成学习后能够熟练掌握并应用普元EOS平台。这套资料来源于普元公司内部,因此其专业性和实用性得到了充分保证。 ...
普元EOS7.6安装步骤涉及多个方面,包括对不同操作系统、不同版本的软件以及不同安装方式的详细指导。以下是对该文件中提到的知识点的详细说明。 ### 1. 概述 普元EOSPlatform7.6是一款企业级软件开发与运行平台,它...
**普元EOS学习PPT详解** 普元EOS是一款企业级的中间件平台,它提供了全面的服务治理、服务集成以及业务流程管理等功能,帮助企业构建灵活、高效的服务化架构。本篇内容将围绕“普元EOS学习PPT”展开,深入探讨其...
### 普元EOS-Platform-7.0基础开发教程知识点详析 #### 一、产品概述 **1.1 产品简介** 普元EOS Platform 7.0是一款基于J2EE、Eclipse等开放技术和平台的产品,它通过配置化、组件化、图形化和一体化的方式,为...
标题“普元EOS简单运算逻辑的编写”涉及的是在普元EOS平台中如何构建和实现基础的业务逻辑。普元EOS是一款企业级的应用服务器软件,它提供了开发、部署和管理企业应用的服务,支持多种编程语言,包括Java。在这个...
【上海普元EOS6.0程序员教程】是针对软件开发者设计的一份详尽教程,旨在帮助读者理解并掌握面向服务架构(SOA)的核心理念,以及如何利用普元EOS这一全球领先的SOA应用平台进行实际开发。教程不仅理论与实践相结合...
根据给定的文件信息,我们可以总结出以下关于“普元EOS初学”的相关知识点: ### 普元EOS简介 普元EOS是一款基于Java技术的企业级应用开发平台,旨在简化企业应用系统的开发、部署和管理过程。EOS提供了一系列工具...
### 普元EOS扩展开发教程知识点解析 #### 第一章:扩展概述 **1.1 扩展简介** 普元EOS Platform 7.2 的一个核心特点是支持标准化的组件扩展,这使得开发者能够借助其强大的技术平台快速扩展业务组件。这种扩展...
普元EOS是一款国内知名的中间件平台,主要用于构建企业级服务总线(Enterprise Service Bus, ESB)和业务流程管理(Business Process Management, BPM)系统。它提供了服务注册、服务治理、服务安全、服务监控等一...
《普元EOS基础开发指南》是一本专注于介绍EOS集成开发环境的详细教程,旨在帮助开发者理解和掌握该平台的各项功能和使用技巧。EOS,全称Enterprise Open Service,是普元信息科技有限公司推出的一款企业级服务软件...