====== 설문질문관리 ======
===== 개요 =====
설문질문관리 시스템 구축시 사용되는 설문질문관리 기능을 제공하며 설문조사 참여자가 설문 참여시 설문질문관리정보를 제공한다.
===== 설명 =====
설문질문관리는 설문지를 관리하기 위한 목적으로 **등록**, **수정**, **삭제**, **조회**, **목록조회**의 기능을 수반한다.
==== 패키지 참조 관계 ====
설문질문관리 패키지는 요소기술의 공통 패키지(cmm)에 대해서만 직접적인 함수적 참조 관계를 가진다. 하지만, 컴포넌트 배포 시 오류 없이 실행되기 위하여 패키지 간의 참조관계에 따라 설문조사, 설문응답자관리, 설문템플릿관리, 설문관리, 설문항목관리, 달력 패키지와 함께 배포 파일을 구성한다.
* 패키지 간 참조 관계 : [[egovframework:com:v2:init_pkg_dependency#사용자지원|사용자지원 Package Dependency]]
==== 관련소스 ====
^유형^대상소스명^비고^
|Controller|egovframework.com.uss.olp.qqm.web.EgovQustnrQestnManageController.java|설문문항관리 Controller Class|
|Service|egovframework.com.uss.olp.qqm.service.EgovQustnrQestnManageService.java|설문문항관리 Service Class|
|ServiceImpl|egovframework.com.uss.olp.qqm.service.impl.EgovQustnrQestnManageServiceImpl.java|설문문항관리 ServiceImpl Class|
|VO|egovframework.com.uss.olp.qqm.service.QustnrQestnManageVO.java|설문문항관리 VO Class|
|VO|egovframework.com.cmm.ComDefaultVO.java|검색 VO Class|
|DAO|egovframework.com.uss.olp.qqm.service.impl.QustnrQestnManageDao.java|설문문항관리 Dao Class|
|JSP|/WEB-INF/jsp/egovframework/com/uss/olp/qqm/EgovQustnrQestnManageList.jsp|설문문항관리 목록조회 페이지|
|JSP|/WEB-INF/jsp/egovframework/com/uss/olp/qqm/EgovQustnrQestnManageRegist.jsp|설문문항관리 등록 페이지|
|JSP|/WEB-INF/jsp/egovframework/com/uss/olp/qqm/EgovQustnrQestnManageModify.jsp|설문문항관리 수정 페이지|
|JSP|/WEB-INF/jsp/egovframework/com/uss/olp/qqm/EgovQustnrQestnManageDetail.jsp|설문문항관리 상세조회 페이지|
|QUERY XML|resources/egovframework/mapper/com/uss/olp/qqm/EgovQustnrQestnManage_SQL_mysql.xml|설문문항관리 MySQL용 QUERY XML|
|QUERY XML|resources/egovframework/mapper/com/uss/olp/qqm/EgovQustnrQestnManage_SQL_oracle.xml|설문문항관리 Oracle용 QUERY XML|
|QUERY XML|resources/egovframework/mapper/com/uss/olp/qqm/EgovQustnrQestnManage_SQL_tibero.xml|설문문항관리 Tibero용 QUERY XML|
|QUERY XML|resources/egovframework/mapper/com/uss/olp/qqm/EgovQustnrQestnManage_SQL_altibase.xml|설문문항관리 Altibase용 QUERY XML|
|QUERY XML|resources/egovframework/mapper/com/uss/olp/qqm/EgovQustnrQestnManage_SQL_cubrid.xml|설문문항관리 Cubrid용 QUERY XML|
|Validator Rule XML|resources/egovframework/validator/validator-rules.xml|Validator Rule을 정의한 XML|
|Validator XML|resources/egovframework/validator/com/uss/olp/qqm/EgovQustnrQestnManage.xml|설문문항관리 Validator XML|
|Message properties|resources/egovframework/message/com/uss/olp/qqm/message_ko.properties|설문문항관리를 위한 Message properties(한글)|
|Message properties|resources/egovframework/message/com/uss/olp/qqm/message_en.properties|설문문항관리를 위한 Message properties(영문)|
|Idgen XML|resources/egovframework/spring/com/idgn/context-idgn-QustnrQestnManage.xml|설문문항관리 Id생성 Idgen XML|
==== 클래스 다이어그램 ====
{{:egovframework:com:v2:uss:설문질문관리_클래스다이어그램.jpg?740|}}
==== ID Generation ====
=== ID Generation 관련 DDL 및 DML ===
* ID Generation Service를 활용하기 위해서 Sequence 저장 테이블인 COMTECOPSEQ에 ** QUSTNRQESTN_ID ** 항목을 추가해야 한다.
CREATE TABLE COMTECOPSEQ (
TABLE_NAME VARCHAR(20) NOT NULL,
NEXT_ID NUMERIC(30) NULL,
PRIMARY KEY (TABLE_NAME));
INSERT INTO COMTECOPSEQ VALUES('QUSTNRQESTN_ID', 1);
=== ID Generation 환경설정(context-idgn-QustnrQestnManage.xml) ===
==== 관련테이블 ====
^테이블명^테이블명(영문)^비고^
|설문관리|COMTNQESTNRINFO|설문관리를(을) 조회 한다.|
|설문문항관리|COMTNQUSTNRQESITM|설문지 문항을 관리 한다.|
==== 관련코드====
문항관리에서 사용되는 코드 및 그에 따른 설정 값의 반영사항은 다음과 같다.
^코드분류^코드분류명^코드ID^코드명^
|COM018|질문유형|1|객관식|
|COM018|질문유형|2|주관식|
===== 관련기능 =====
설문질문관리는 **설문질문관리 목록조회**, **설문질문관리 등록**, **설문질문관리 수정**, **설문질문관리 상세조회** 기능으로 구성된다.
==== 설문질문관리 목록조회 ====
=== 비즈니스 규칙 ===
관리자가 기(記) 등록된 설문문항 정보를 리스트 형태로 조회 할 수 있고, 등록버튼을 클릭하여 등록화면으로 이동할수있다.
=== 관련코드 ===
N/A
=== 관련화면 및 수행매뉴얼 ===
^Action^URL^Controller method^QueryID^
|조회|/uss/olp/qqm/EgovQustnrQestnManageList.do|egovQustnrQestnManageList|"QustnrQestnManage.selectQustnrQestnManage",|
| | | |"QustnrQestnManage.selectQustnrQestnManageCnt"|
설문문항 목록은 페이지 당 10건씩 조회되며 페이징은 10페이지씩 이루어진다.
검색조건은 질문내용, 최대선택건수에 대해서 수행된다.\\ 페이지 당 검색 범위를 변경하고자 하는 경우 \\
context-properties.xml 파일의 pageUnit, pageSize를 변경한다.(단 해당 설정은 전체 공통서비스 기능에 영향을 미친다.)
{{:egovframework:com:v3.7:uss:olp:qqm:3qustnrquestionlist.png|}}
조회: 조회하기 위해서는 상단의 검색조건을 선택 후 해당하는 검색문자를 입력 후 조회 버튼을 클릭한다.\\
등록: 등록하기 위해서는 상단의 등록 버튼을 통해서 **설문문항 등록** 화면으로 이동한다. \\
목록(질문내용)클릭: **설문문항 상세조회** 화면으로 이동한다. \\
목록(질문항목)클릭: **설문항목 목록** 화면으로 이동한다.
==== 설문질문관리 등록 ====
=== 비즈니스 규칙 ===
설문문항에 관한 기본정보를 입력 저장처리한다. 입력명 우측의 빨간* 표시는 반드시 입력해야할 항목을 표시한다. \\
=== 관련코드 ===
N/A
=== 관련화면 및 수행매뉴얼 ===
== 1. 설문문항 등록 ==
^Action^URL^Controller method^QueryID^
|저장|/uss/olp/qqm/EgovQustnrQestnManageRegist.do|qustnrQestnManageRegist|"QustnrQestnManage.insertQustnrQestnManage"|
{{:egovframework:com:v3.7:uss:olp:qqm:6qustnrquestionregist.png|}}
목록: **설문문항 목록** 화면으로 이동한다. \\
등록: 입력한 설문문항 정보들이 등록 처리된다. \\
설문지정보(제목): 설문지정보 팝업창 열린다. \\
== 2. 설문지 정보 팝업 ==
{{:egovframework:com:v3.7:uss:olp:qqm:7qustnrquestionpopup.png|}}
선택: 선택한 **설문지 정보** 가 자동입력된다.
==== 설문질문관리 수정 ====
=== 비즈니스 규칙 ===
입력한 설문문항 정보를(을) 저장 처리한다. 입력명 우측의 빨간* 표시는 수정 시 반드시 입력해야 할 항목을 표시한다. \\
=== 관련코드 ===
N/A
=== 관련화면 및 수행매뉴얼 ===
^Action^URL^Controller method^QueryID^
|저장|/uss/olp/qqm/EgovQustnrQestnManageModify.do|qustnrQestnManageModify|"QustnrQestnManage.updateQustnrQestnManage"|
{{:egovframework:com:v3.7:uss:olp:qqm:4qustnrquestionmodify.png|}}
저장: 수정된 정보들이 저장 처리된다. \\
목록: **설문문항 목록** 화면으로 이동한다. \\
==== 설문질문관리 상세조회 ====
=== 비즈니스 규칙 ===
설문문항 목록에서 목록 클릭 시 이동되는 화면으로 설문문항에 대한 상세정보를 보여준다.
=== 관련코드 ===
N/A
=== 관련화면 및 수행매뉴얼 ===
^Action^URL^Controller method^QueryID^
|상세조회|/uss/olp/qqm/EgovQustnrQestnManageDetail.do|egovQustnrQestnManageDetail|"QustnrQestnManage.selectQustnrQestnManageDetail"|
|설문조사 삭제|/uss/olp/qqm/EgovQustnrQestnManageDetail.do|egovQustnrQestnManageDetail|"QustnrQestnManage.deleteQustnrRespondInfo"|
|설문항목 삭제|/uss/olp/qqm/EgovQustnrQestnManageDetail.do|egovQustnrQestnManageDetail|"QustnrQestnManage.deleteQustnrItemManage"|
|설문문항 삭제|/uss/olp/qqm/EgovQustnrQestnManageDetail.do|egovQustnrQestnManageDetail|"QustnrQestnManage.deleteQustnrQestnManage"|
{{:egovframework:com:v3.7:uss:olp:qqm:5qustnrquestiondetail.png|}}
수정: 수정버튼 클릭 시 설문문항 수정 화면으로 이동한다. \\
삭제: 삭제버튼 클릭 시 삭제여부를 확인하는 메세지를 보여주고 삭제처리를 할 수 있다. \\
목록: **설문문항 목록** 화면으로 이동한다.