/* * Copyright 2002-2006 the original author or authors. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. * You may obtain a copy of the License at * * http://www.apache.org/licenses/LICENSE-2.0 * * Unless required by applicable law or agreed to in writing, software * distributed under the License is distributed on an "AS IS" BASIS, * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. * See the License for the specific language governing permissions and * limitations under the License. */ package org.openuap.cms.survey.model; import java.io.Serializable; import java.util.LinkedHashSet; import java.util.Set; /** * * <p> * 调查试题. * </p> * * <p> * $Id: Question.java 4017 2011-03-13 13:55:50Z orangeforjava $ * </p> * * @author Joseph * @version 1.0 */ public class Question implements Serializable { /** * */ private static final long serialVersionUID = -7845150217607324018L; /** 问题Id. */ private Long questionId; /** 问题标题. */ private String questionTitle; /** 问题产生日期. */ private Long questionCreationDate; /** 单选-1,多选-2,填空-3,下拉选择-4,5-单选+备注,6,多选+备注 */ private Integer questionType; /** 问题状态. */ private Integer questionStatus; /** 0-无,1-必填,2-必须是数字,3-必须是日期格式. */ private Integer questionInputFilter; /** 问题选项集合. */ private Set<QuestionItem> questionItems; /** 问题产生者Id. */ private Long creationUserId; /** 问题产生者姓名. */ private String creationUserName; /** 投票全局GUID. */ private String questionGuid; /** 问题选项数目. */ private int questionItemCount; /** 问题所属的调查id. */ private Long surveyId; /** 题目分组Id. */ private Long groupId; /** 问题排序位置. */ private Long questionPos; /** 组题目. */ private String groupTitle; /** 页码id */ private Long pageId; /** * * @param questionTitle * @param questionCreationDate * @param questionType * @param questionStatus * @param creationUserId * @param questionGuid * @param questionItems */ public Question(String questionTitle, Long questionCreationDate, Integer questionType, Integer questionStatus, Long creationUserId, String questionGuid, Set questionItems) { // this.questionItems = new LinkedHashSet(); this.questionTitle = questionTitle; this.questionCreationDate = questionCreationDate; this.questionType = questionType; this.questionStatus = questionStatus; this.creationUserId = creationUserId; this.questionItems = questionItems; this.questionGuid = questionGuid; } public Question() { questionItems = new LinkedHashSet(); questionType = new Integer(1); } @Override public int hashCode() { final int prime = 31; int result = 1; result = prime * result + ((questionId == null) ? 0 : questionId.hashCode()); return result; } @Override public boolean equals(Object obj) { if (this == obj) return true; if (obj == null) return false; if (getClass() != obj.getClass()) return false; final Question other = (Question) obj; if (questionId == null) { if (other.questionId != null) return false; } else if (!questionId.equals(other.questionId)) return false; return true; } public Long getCreationUserId() { return creationUserId; } public String getCreationUserName() { return creationUserName; } public Long getQuestionCreationDate() { return questionCreationDate; } public String getQuestionGuid() { return questionGuid; } public Long getQuestionId() { return questionId; } public int getQuestionItemCount() { return questionItemCount; } public Set getItems(){ return questionItems; } public Set getQuestionItems() { return questionItems; } public Integer getQuestionStatus() { return questionStatus; } public String getQuestionTitle() { return questionTitle; } public Integer getQuestionType() { return questionType; } public Long getSurveyId() { return surveyId; } public Long getGroupId() { return groupId; } public Long getQuestionPos() { return questionPos; } public String getGroupTitle() { return groupTitle; } public Integer getQuestionInputFilter() { return questionInputFilter; } public Long getPageId() { return pageId; } public void setQuestionType(Integer questionType) { this.questionType = questionType; } public void setQuestionTitle(String questionTitle) { this.questionTitle = questionTitle; } public void setQuestionStatus(Integer questionStatus) { this.questionStatus = questionStatus; } public void setQuestionItems(Set questionItems) { this.questionItems = questionItems; } public void setQuestionItemCount(int questionItemCount) { this.questionItemCount = questionItemCount; } public void setQuestionId(Long questionId) { this.questionId = questionId; } public void setQuestionGuid(String questionGuid) { this.questionGuid = questionGuid; } public void setQuestionCreationDate(Long questionCreationDate) { this.questionCreationDate = questionCreationDate; } public void setCreationUserName(String creationUserName) { this.creationUserName = creationUserName; } public void setCreationUserId(Long creationUserId) { this.creationUserId = creationUserId; } public void setSurveyId(Long surveyId) { this.surveyId = surveyId; } public void setGroupId(Long groupId) { this.groupId = groupId; } public void setQuestionPos(Long questionPos) { this.questionPos = questionPos; } public void setGroupTitle(String groupTitle) { this.groupTitle = groupTitle; } public void setQuestionInputFilter(Integer questionInputFilter) { this.questionInputFilter = questionInputFilter; } public void setPageId(Long pageId) { this.pageId = pageId; } }