001 /* 002 * Copyright 2007-2008 The Kuali Foundation 003 * 004 * Licensed under the Educational Community License, Version 2.0 (the "License"); 005 * you may not use this file except in compliance with the License. 006 * You may obtain a copy of the License at 007 * 008 * http://www.opensource.org/licenses/ecl2.php 009 * 010 * Unless required by applicable law or agreed to in writing, software 011 * distributed under the License is distributed on an "AS IS" BASIS, 012 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 013 * See the License for the specific language governing permissions and 014 * limitations under the License. 015 */ 016 package org.kuali.rice.kew.dto; 017 018 import org.kuali.rice.core.api.util.ConcreteKeyValue; 019 import org.kuali.rice.kew.util.KEWConstants; 020 021 import java.io.Serializable; 022 import java.util.ArrayList; 023 import java.util.List; 024 025 /** 026 * This is a virtual object representing the DocSearchCriteriaDTO class 027 * 028 * @author Kuali Rice Team (rice.collab@kuali.org) 029 */ 030 public class DocumentSearchCriteriaDTO implements Serializable { 031 032 private static final long serialVersionUID = -220572344702126103L; 033 034 private String documentId; // id generated by KEW 035 private String docRouteStatus; // route status of the document 036 private String docTitle; // document title provided by the application 037 private String appDocId; // application provided ID - defaults to documentId 038 private String initiator; // network Id of the person who initiated the document 039 private String viewer; // network Id of the person who is currently viewing the document 040 private String groupViewerName; // group Id that has had an action request to the document 041 private String approver; // network Id of the person who is approving the document 042 private String docRouteNodeName; // current level of routing, i.e. which route method is the document currently in 043 private String docRouteNodeLogic = KEWConstants.DOC_SEARCH_ROUTE_STATUS_QUALIFIER_EXACT; // exactly, before or after 044 private String docVersion; // document version 045 private String docTypeFullName; // the fullname for the document's docType 046 047 // date range properties 048 private String fromDateCreated; // the begin range for DateCreated 049 private String fromDateLastModified; // the begin range for LastModified 050 private String fromDateApproved; // the begin range for Approved 051 private String fromDateFinalized; // the begin range for Finalized 052 private String toDateCreated; // the end range for created 053 private String toDateLastModified; // the end range for last modified 054 private String toDateApproved; // the end range for approved 055 private String toDateFinalized; // the end range for finalized 056 057 // searchable attribute properties 058 private List<ConcreteKeyValue> searchAttributeValues = new ArrayList<ConcreteKeyValue>(); 059 060 // below used only in specialized cases 061 private boolean advancedSearch = false; 062 private boolean superUserSearch = false; 063 private Integer threshold = null; 064 private Integer fetchLimit = null; 065 private boolean saveSearchForUser = false; 066 067 public void findDocsBeforeSpecifiedRouteNode() { 068 setDocRouteNodeLogic(KEWConstants.DOC_SEARCH_ROUTE_STATUS_QUALIFIER_BEFORE); 069 } 070 071 public void findDocsAfterSpecifiedRouteNode() { 072 setDocRouteNodeLogic(KEWConstants.DOC_SEARCH_ROUTE_STATUS_QUALIFIER_AFTER); 073 } 074 075 public void findDocsAtExactSpecifiedRouteNode() { 076 setDocRouteNodeLogic(KEWConstants.DOC_SEARCH_ROUTE_STATUS_QUALIFIER_EXACT); 077 } 078 079 public String getDocumentId() { 080 return this.documentId; 081 } 082 083 public void setDocumentId(String documentId) { 084 this.documentId = documentId; 085 } 086 087 public String getDocRouteStatus() { 088 return this.docRouteStatus; 089 } 090 091 public void setDocRouteStatus(String docRouteStatus) { 092 this.docRouteStatus = docRouteStatus; 093 } 094 095 public String getDocTitle() { 096 return this.docTitle; 097 } 098 099 public void setDocTitle(String docTitle) { 100 this.docTitle = docTitle; 101 } 102 103 public String getAppDocId() { 104 return this.appDocId; 105 } 106 107 public void setAppDocId(String appDocId) { 108 this.appDocId = appDocId; 109 } 110 111 public String getInitiator() { 112 return this.initiator; 113 } 114 115 public void setInitiator(String initiator) { 116 this.initiator = initiator; 117 } 118 119 public String getViewer() { 120 return this.viewer; 121 } 122 123 public void setViewer(String viewer) { 124 this.viewer = viewer; 125 } 126 127 public String getGroupViewerName() { 128 return this.groupViewerName; 129 } 130 131 public void setGroupViewerName(String groupViewerName) { 132 this.groupViewerName = groupViewerName; 133 } 134 135 public String getApprover() { 136 return this.approver; 137 } 138 139 public void setApprover(String approver) { 140 this.approver = approver; 141 } 142 143 public String getDocRouteNodeName() { 144 return this.docRouteNodeName; 145 } 146 147 public void setDocRouteNodeName(String docRouteNodeName) { 148 this.docRouteNodeName = docRouteNodeName; 149 } 150 151 public String getDocRouteNodeLogic() { 152 return this.docRouteNodeLogic; 153 } 154 155 public void setDocRouteNodeLogic(String docRouteNodeLogic) { 156 this.docRouteNodeLogic = docRouteNodeLogic; 157 } 158 159 public String getDocVersion() { 160 return this.docVersion; 161 } 162 163 public void setDocVersion(String docVersion) { 164 this.docVersion = docVersion; 165 } 166 167 public String getDocTypeFullName() { 168 return this.docTypeFullName; 169 } 170 171 public void setDocTypeFullName(String docTypeFullName) { 172 this.docTypeFullName = docTypeFullName; 173 } 174 175 public String getFromDateCreated() { 176 return this.fromDateCreated; 177 } 178 179 public void setFromDateCreated(String fromDateCreated) { 180 this.fromDateCreated = fromDateCreated; 181 } 182 183 public String getFromDateLastModified() { 184 return this.fromDateLastModified; 185 } 186 187 public void setFromDateLastModified(String fromDateLastModified) { 188 this.fromDateLastModified = fromDateLastModified; 189 } 190 191 public String getFromDateApproved() { 192 return this.fromDateApproved; 193 } 194 195 public void setFromDateApproved(String fromDateApproved) { 196 this.fromDateApproved = fromDateApproved; 197 } 198 199 public String getFromDateFinalized() { 200 return this.fromDateFinalized; 201 } 202 203 public void setFromDateFinalized(String fromDateFinalized) { 204 this.fromDateFinalized = fromDateFinalized; 205 } 206 207 public String getToDateCreated() { 208 return this.toDateCreated; 209 } 210 211 public void setToDateCreated(String toDateCreated) { 212 this.toDateCreated = toDateCreated; 213 } 214 215 public String getToDateLastModified() { 216 return this.toDateLastModified; 217 } 218 219 public void setToDateLastModified(String toDateLastModified) { 220 this.toDateLastModified = toDateLastModified; 221 } 222 223 public String getToDateApproved() { 224 return this.toDateApproved; 225 } 226 227 public void setToDateApproved(String toDateApproved) { 228 this.toDateApproved = toDateApproved; 229 } 230 231 public String getToDateFinalized() { 232 return this.toDateFinalized; 233 } 234 235 public void setToDateFinalized(String toDateFinalized) { 236 this.toDateFinalized = toDateFinalized; 237 } 238 239 public List<ConcreteKeyValue> getSearchAttributeValues() { 240 return this.searchAttributeValues; 241 } 242 243 public void setSearchAttributeValues(List<ConcreteKeyValue> searchAttributeValues) { 244 this.searchAttributeValues = searchAttributeValues; 245 } 246 247 public boolean isAdvancedSearch() { 248 return this.advancedSearch; 249 } 250 251 public void setAdvancedSearch(boolean advancedSearch) { 252 this.advancedSearch = advancedSearch; 253 } 254 255 public boolean isSuperUserSearch() { 256 return this.superUserSearch; 257 } 258 259 public void setSuperUserSearch(boolean superUserSearch) { 260 this.superUserSearch = superUserSearch; 261 } 262 263 public Integer getThreshold() { 264 return this.threshold; 265 } 266 267 public void setThreshold(Integer threshold) { 268 this.threshold = threshold; 269 } 270 271 public boolean isSaveSearchForUser() { 272 return this.saveSearchForUser; 273 } 274 275 public void setSaveSearchForUser(boolean saveSearchForUser) { 276 this.saveSearchForUser = saveSearchForUser; 277 } 278 279 }