====== 온라인POLL관리======
===== 개요 =====
사이트에서 번번하게 일어나는 간단한 설문 조사를 하기 위한 컴포넌트로서 온라인POLL담당자가 온라인POLL정보 별 온라인POLL항목을 생성 하고 관리하는 온라인POLL관리 기능과 온라인POLL참여자(기업회원, 일반회원)가 투표 및 통계를 확인 할수 있는 온라인POLL참여 기능을 제공한다.
* 컴포넌트 구성
{{:egovframework:com:uss:olp:opm:온라인poll컴포넌트구성도.jpg|온라인poll 구성도}}
* 기능흐름
{{:egovframework:com:uss:olp:opm:온라인poll컴포넌트기능흐름도pg.jpg?740|온라인poll 기능흐름}}
===== 설명 =====
==== 패키지 참조 관계 ====
온라인POLL관리 패키지(opm)는 요소기술의 공통 패키지(cmm)에 대해서만 직접적인 함수적 참조 관계를 가진다. 하지만, 컴포넌트 배포 시 오류 없이 실행되기 위하여 패키지 간의 참조관계에 따라 온라인POLL관리 패키지(opp), 온라인POLL관리 패키지(opr), 달력 패키지와 함께 배포 파일을 구성한다.
* 패키지 간 참조 관계 : [[egovframework:com:v2:init_pkg_dependency#사용자지원|사용자지원 Package Dependency]]
==== 관련소스 ====
=== 온라인POLL 관리 ===
^유형^대상소스명^비고^
|Controller|egovframework.com.uss.olp.opm.web.EgovOnlinePollManageController.java|온라인POLL관리 Controller Class|
|Service|egovframework.com.uss.olp.opm.service.EgovOnlinePollManageService.java|온라인POLL관리 Service Class|
|ServiceImpl|egovframework.com.uss.olp.opm.service.impl.EgovOnlinePollManageServiceImpl.java|온라인POLL관리 ServiceImpl Class|
|Model|egovframework.com.uss.olp.opm.service.OnlinePollItem.java|온라인POLL항목 Model Class|
|Model|egovframework.com.uss.olp.opm.service.OnlinePollManage.java|온라인POLL관리 VO Class|
|VO|egovframework.com.cmm.ComDefaultVO.java|검색 VO Class|
|DAO|egovframework.com.uss.olp.opm.service.impl.OnlinePollManageDao.java|온라인POLL관리 Dao Class|
|JSP|/WEB-INF/jsp/egovframework/com/uss/olp/opm/EgovOnlinePollManageList.jsp|온라인POLL관리 목록조회 페이지|
|JSP|/WEB-INF/jsp/egovframework/com/uss/olp/opm/EgovOnlinePollManageRegist.jsp|온라인POLL관리 등록 페이지|
|JSP|/WEB-INF/jsp/egovframework/com/uss/olp/opm/EgovOnlinePollManageUpdt.jsp|온라인POLL관리 수정 페이지|
|JSP|/WEB-INF/jsp/egovframework/com/uss/olp/opm/EgovOnlinePollManageDetail.jsp|온라인POLL관리 상세조회 페이지|
|QUERY XML|resources/egovframework/sqlmap/com/uss/olp/opm/EgovOnlinePollManage_SQL_Mysql.xml|온라인POLL관리 MySQL용 QUERY XML|
|QUERY XML|resources/egovframework/sqlmap/com/uss/olp/opm/EgovOnlinePollManage_SQL_Oracle.xml|온라인POLL관리 Oracle용 QUERY XML|
|QUERY XML|resources/egovframework/sqlmap/com/uss/olp/opm/EgovOnlinePollManage_SQL_Tibero.xml|온라인POLL관리 Tibero용 QUERY XML|
|QUERY XML|resources/egovframework/sqlmap/com/uss/olp/opm/EgovOnlinePollManage_SQL_Altibase.xml|온라인POLL관리 Altibase용 QUERY XML|
|Validator Rule XML|resources/egovframework/validator/validator-rules.xml|Validator Rule을 정의한 XML|
|Validator XML|resources/egovframework/validator/com/uss/olp/opm/EgovOnlinePollManage.xml|온라인POLL관리 Validator XML|
|Message properties|resources/egovframework/message/com/message-common_ko_KR.properties|온라인POLL관리 Message properties|
|Idgen XML|resources/egovframework/spring/context-idgen.xml|온라인POLL관리 Id생성 Idgen XML|
=== 온라인POLL 결과 ====
^유형^대상소스명^비고^
|Controller|egovframework.com.uss.olp.opr.web.EgovOnlinePollResultController.java|온라인POLL관리 Controller Class|
|Service|egovframework.com.uss.olp.opr.service.EgovOnlinePollResultService.java|온라인POLL관리 Service Class|
|ServiceImpl|egovframework.com.uss.olp.opr.service.impl.EgovOnlinePollResultServiceImpl.java|온라인POLL결과 ServiceImpl Class|
|Model|egovframework.com.uss.olp.opr.service.OnlinePollResult.java|온라인POLL결과 VO Class|
|DAO|egovframework.com.uss.olp.opr.service.impl.OnlinePollResultDao.java|온라인POLL관리 Dao Class|
|JSP|/WEB-INF/jsp/egovframework/com/uss/olp/opr/EgovOnlinePollResultList.jsp|온라인POLL결과 목록조회 페이지|
|QUERY XML|resources/egovframework/sqlmap/com/uss/olp/opr/EgovOnlinePollResult_SQL_Mysql.xml|온라인POLL결과 MySQL용 QUERY XML|
|QUERY XML|resources/egovframework/sqlmap/com/uss/olp/opr/EgovOnlinePollResult_SQL_Oracle.xml|온라인POLL결과 Oracle용 QUERY XML|
|QUERY XML|resources/egovframework/sqlmap/com/uss/olp/opr/EgovOnlinePollResult_SQL_Tibero.xml|온라인POLL결과 Tibero용 QUERY XML|
|QUERY XML|resources/egovframework/sqlmap/com/uss/olp/opr/EgovOnlinePollResult_SQL_Altibase.xml|온라인POLL결과 Altibase용 QUERY XML|
|Idgen XML|resources/egovframework/spring/context-idgen.xml|온라인POLL결과 Id생성 Idgen XML|
=== 온라인POLL 참여 ===
^유형^대상소스명^비고^
|Controller|egovframework.com.uss.olp.opp.web.EgovOnlinePollPartcptnController.java|온라인POLL참여 Controller Class|
|Service|egovframework.com.uss.olp.opp.service.EgovOnlinePollPartcptnService.java|온라인POLL참여 Service Class|
|ServiceImpl|egovframework.com.uss.olp.opp.service.impl.EgovOnlinePollPartcptnServiceImpl.java|온라인POLL참여 ServiceImpl Class|
|Model|egovframework.com.uss.olp.opp.service.OnlinePollPartcptn.java|온라인POLL참여 Model Class|
|DAO|egovframework.com.uss.olp.opp.service.impl.OnlinePollPartcptnDao.java|온라인POLL참여 Dao Class|
|JSP|/WEB-INF/jsp/egovframework/com/uss/olp/opp/EgovOnlinePollPartcptnList.jsp|온라인POLL참여 목록조회 페이지|
|JSP|/WEB-INF/jsp/egovframework/com/uss/olp/opp/EgovOnlinePollPartcptnRegist.jsp|온라인POLL참여 등록 페이지|
|JSP|/WEB-INF/jsp/egovframework/com/uss/olp/opp/EgovOnlinePollPartcptnStatistics.jsp|온라인POLL참여 통계 페이지|
|QUERY XML|/egovframework/sqlmap/com/uss/olp/opp/EgovOnlinePollPartcptn_SQL_Mysql.xml|온라인POLL참여 MySQL용 QUERY XML|
|QUERY XML|/egovframework/sqlmap/com/uss/olp/opp/EgovOnlinePollPartcptn_SQL_Oracle.xml|온라인POLL참여 Oracle용 QUERY XML|
|QUERY XML|/egovframework/sqlmap/com/uss/olp/opp/EgovOnlinePollPartcptn_SQL_Tibero.xml|온라인POLL참여 Tibero용 QUERY XML|
|QUERY XML|/egovframework/sqlmap/com/uss/olp/opp/EgovOnlinePollPartcptn_SQL_Altibase.xml|온라인POLL참여 Altibase용 QUERY XML|
|Message properties|resources/egovframework/message/com/message-common_ko_KR.properties|온라인POLL참여 Message properties|
|Idgen XML|resources/egovframework/spring/context-idgen.xml|온라인POLL참여 Id생성 Idgen XML|
==== 클래스 다이어그램 ====
=== 온라인POLL관리 ===
{{:egovframework:com:v2:uss:온라인poll관리_클래스다이어그램.jpg?740|}}
=== 온라인POLL결과 ===
{{:egovframework:com:v2:uss:온라인poll결과_클래스다이어그램.jpg?740|}}
=== 온라인POLL참여 ===
{{:egovframework:com:v2:uss:온라인poll참여_클래스다이어그램.jpg?740|}}
==== ID Generation ====
=== ID Generation 관련 DDL 및 DML ===
* ID Generation Service를 활용하기 위해서 Sequence 저장테이블인 COMTECOPSEQ에 **POLL_MGR_ID**, **POLL_IEM_ID**, **POLL_RUT_ID** 항목을 추가해야 한다.
CREATE TABLE COMTECOPSEQ ( table_name varchar(16) NOT NULL,
next_id DECIMAL(30) NOT NULL,
PRIMARY KEY (table_name));
INSERT INTO COMTECOPSEQ VALUES('POLL_MGR_ID','0');
CREATE TABLE COMTECOPSEQ ( table_name varchar(16) NOT NULL,
next_id DECIMAL(30) NOT NULL,
PRIMARY KEY (table_name));
INSERT INTO COMTECOPSEQ VALUES('POLL_IEM_ID','0');
CREATE TABLE COMTECOPSEQ ( table_name varchar(16) NOT NULL,
next_id DECIMAL(30) NOT NULL,
PRIMARY KEY (table_name));
INSERT INTO COMTECOPSEQ VALUES('POLL_RUT_ID','0');
=== ID Generation 환경설정(context-idgen.xml) ===
==== 관련테이블 ====
^테이블명^테이블명(영문)^비고^
|온라인POLL관리|COMTNONLINEPOLLMANAGE|온라인POLL관리를 관리 한다.|
|온라인POLL항목|COMTNONLINEPOLLITEM|온라인POLL항목을 관리 한다.|
|온라인POLL결과|COMTNONLINEPOLLRESULT|온라인POLL결과를 관리 한다.|
==== 관련코드 ====
^코드분류^코드분류명^코드ID^코드명^
|COM039|온라인POLL구분| 001 |사회|
|COM039|온라인POLL구분| 002 |정치|
|COM039|온라인POLL구분| 003 |경제|
|COM039|온라인POLL구분| 004 |문화|
|COM039|온라인POLL구분| 005 |인문|
|COM039|온라인POLL구분| 006 |공학|
|COM039|온라인POLL구분| 007 |기타|
===== 관련기능 =====
온라인POLL관리 기능은 크게 **온라인POLL관리 목록조회**, **온라인POLL관리 상세조회**, **온라인POLL항목 목록**, **온라인POLL항목 등록**, **온라인POLL항목 수정**,**온라인POLL관리 등록**, **온라인POLL관리 수정**, **온라인POLL결과 목록조회**, **온라인POLL참여 등록**, **온라인POLL참여 통계** 기능으로 구성되어 있다.
==== 온라인POLL관리 목록조회 ====
=== 비즈니스 규칙 ===
관리자가 기(記) 등록된 온라인POLL관리 정보를 리스트 형태로 조회 할 수 있고, 등록버튼을 클릭하여 등록화면으로 이동할수있다.
=== 관련코드 ===
N/A
=== 관련화면 및 수행메뉴얼 ===
^Action^URL^Controller method^QueryID^
|목록|/uss/olp/opm/listOnlinePollManage.do|egovOnlinePollManageList|"OnlinePollManage.selectOnlinePollManage"|
| | | |"OnlinePollManage.selectOnlinePollManageCnt"|
{{:egovframework:com:uss:olp:opm:온라인poll관리_목록.jpg|온라인poll관리 목록}}
등록: 등록하기 위해서는 상단의 등록 버튼을 통해서 **온라인POLL관리 등록** 화면으로 이동한다. \\
목록클릭: **온라인POLL관리 상세조회** 화면으로 이동한다.
==== 온라인POLL관리 상세조회 ====
=== 비즈니스 규칙 ===
온라인POLL관리 목록에서 목록 클릭 시 이동되는 화면으로 온라인POLL관리에 대한 상세정보를 보여준다.
=== 관련코드 ===
N/A
=== 관련화면 및 수행메뉴얼 ===
^Action^URL^Controller method^QueryID^
|상세조회|/uss/olp/opm/updtOnlinePollManage.do|egovOnlinePollManageDetail|"OnlinePollManage.selectOnlinePollManageDetail"|
|온라인POLL 결과정보 삭제|/uss/olp/opm/updtOnlinePollManage.do|egovOnlinePollManageDetail|"OnlinePollManage.deleteOnlinePollResultAll"|
|온라인POLL 항목정보 삭제|/uss/olp/opm/updtOnlinePollManage.do|egovOnlinePollManageDetail|"OnlinePollManage.deleteOnlinePollItemAll"|
|온라인POLL 관리정보 삭제|/uss/olp/opm/updtOnlinePollManage.do|egovOnlinePollManageDetail|"OnlinePollManage.deleteOnlinePollManage"|
{{:egovframework:com:uss:olp:opm:온라인poll관리_상세조회.jpg|온라인poll관리 상세조회}}
수정: 수정버튼 클릭 시 **온라인POLL관리 수정** 화면으로 이동한다. \\
삭제: 삭제버튼 클릭 시 삭제여부를 확인하는 메세지를 보여주고 삭제처리를 할 수 있다. \\
목록: **온라인POLL관리 목록** 화면으로 이동한다.
==== 온라인POLL항목 등록 ====
=== 비즈니스 규칙 ===
온라인POLL관리에 관한 기본정보를 입력 저장처리한다. 온라인POLL항목은 필수 입력 항목으로 반드시 입력한다.
=== 관련코드 ===
N/A
=== 관련화면 및 수행메뉴얼 ===
^Action^URL^Controller method^QueryID^
|등록|/uss/olp/opm/registOnlinePollItem.do|egovOnlinePollItemRegist|"OnlinePollManage.insertOnlinePollItem"|
{{:egovframework:com:uss:olp:opm:온라인poll항목_등록.jpg|온라인poll항목 등록}}
저장: 입력한 온라인POLL항목 정보들이 저장 처리된다. \\
==== 온라인POLL항목 수정====
=== 비즈니스 규칙 ===
입력한 온라인POLL관리 정보를(을) 수정,삭제 처리한다. 온라인POLL항목은 필수 입력 항목으로 반드시 입력한다. \\
=== 관련코드 ===
N/A
=== 관련화면 및 수행메뉴얼 ===
^Action^URL^Controller method^QueryID^
|수정|/uss/olp/opm/updtOnlinePollItem.do|egovOnlinePollItemModify|"OnlinePollManage.updateOnlinePollIteme"|
|온라인POLL 결과정보 삭제|/uss/olp/opm/updtOnlinePollManage.do|egovOnlinePollManageDetail|"OnlinePollManage.deleteOnlinePollResultAll"|
|온라인POLL 항목정보 삭제|/uss/olp/opm/updtOnlinePollManage.do|egovOnlinePollManageDetail|"OnlinePollManage.deleteOnlinePollItemAll"|
|온라인POLL 관리정보 삭제|/uss/olp/opm/updtOnlinePollManage.do|egovOnlinePollManageDetail|"OnlinePollManage.deleteOnlinePollManage"|
{{:egovframework:com:uss:olp:opm:온라인poll항목_수정.jpg|온라인poll항목 등록}}
수정: 수정된 정보들이 저장 처리된다. \\
삭제: 선택된 정보들이 삭제 처리된다. \\
==== 온라인POLL관리 등록 ====
=== 비즈니스 규칙 ===
온라인POLL관리에 관한 기본정보를 입력 저장처리한다. 입력명 우측의 빨간* 표시는 반드시 입력해야할 항목을 표시한다. \\
=== 관련코드 ===
N/A
=== 관련화면 및 수행매뉴얼 ===
^Action^URL^Controller method^QueryID^
|등록|/uss/olp/opm/registOnlinePollManage.do|egovOnlinePollManageRegist|"OnlinePollManage.insertOnlinePollManage"|
{{:egovframework:com:uss:olp:opm:온라인poll관리_등록.jpg|온라인poll관리 등록}}
목록: **온라인POLL관리 목록** 화면으로 이동한다. \\
저장: 입력한 온라인POLL관리 정보들이 저장 처리된다. \\
==== 온라인POLL관리 수정 ====
=== 비즈니스 규칙 ===
입력한 온라인POLL관리 정보를(을) 저장 처리한다. 입력명 우측의 빨간* 표시는 수정 시 반드시 입력해야 할 항목을 표시한다. \\
=== 관련코드 ===
N/A
=== 관련화면 및 수행메뉴얼 ===
^Action^URL^Controller method^QueryID^
|수정|/uss/olp/opm/updtOnlinePollManage.do|egovOnlinePollManageModify|"OnlinePollManage.updateOnlinePollManage"|
{{:egovframework:com:uss:olp:opm:온라인poll관리_수정.jpg|온라인poll관리 수정}}
수정: 수정된 정보들이 저장 처리된다. \\
목록: **온라인POLL관리 목록** 화면으로 이동한다. \\
==== 온라인POLL결과 목록조회 ====
=== 비즈니스 규칙 ===
관리자가 기(記) 등록된 온라인POLL결과를 정보를 리스트 형태로 조회 및 삭제할 수 있다.
=== 관련코드 ===
N/A
=== 관련화면 및 수행메뉴얼 ===
^Action^URL^Controller method^QueryID^
|목록조회|/uss/olp/opr/listOnlinePollResult.do|egovOnlinePollResultList|"OnlinePollResult.selectOnlinePollResult"|
|삭제|/uss/olp/opr/delOnlinePollResult.do|egovOnlinePollResultDetail|"OnlinePollResult.deleteOnlinePollResult"|
{{:egovframework:com:uss:olp:opm:온라인poll결과_목록.jpg|온라인poll결과 목록}}
등록 클릭: 등록하기 위해서는 상단의 등록 버튼을 통해서 **온라인POLL관리 등록** 화면으로 이동한다. \\
목록 클릭: **온라인POLL관리 상세조회** 화면으로 이동한다.
==== 온라인POLL참여 등록 ====
=== 비즈니스 규칙 ===
온라인POLL참여에 관한 정보를 입력 저장처리한다. 항목명은 필수로 입력한다. \\
=== 관련코드 ===
N/A
=== 관련화면 및 수행메뉴얼 ===
^Action^URL^Controller method^QueryID^
|등록|/uss/olp/opp/registOnlinePollPartcptn.do|egovOnlinePollPartcptnRegist|"OnlinePollPartcptn.insertOnlinePollResult"|
|목록조회|/uss/olp/opp/listOnlinePollPartcptn.do|egovOnlinePollPartcptnList|"OnlinePollPartcptn.selectOnlinePollManageList"|
| | | |"OnlinePollPartcptn.selectOnlinePollManageListCnt"|
{{:egovframework:com:uss:olp:opp:온라인poll참여_등록.jpg|온라인poll참여 등록}}
저장: 입력한 온라인POLL참여 정보들이 저장 처리된다. \\
목록: **온라인POLL참여 목록** 화면으로 이동한다. \\
==== 온라인POLL참여 통계 ====
=== 비즈니스 규칙 ===
온라인POLL관리 별 온라인POLL항목을 그래프 형태로 건수로 표시한다. \\
=== 관련코드 ===
N/A
=== 관련화면 및 수행메뉴얼 ===
^Action^URL^Controller method^QueryID^
|통계조회|/uss/olp/opp/statisticsOnlinePollPartcptn.do|egovOnlinePollManageStatistics|"OnlinePollPartcptn.selectOnlinePollManageDetail"|
| | | |"OnlinePollPartcptn.selectOnlinePollItem"|
| | | |"OnlinePollPartcptn.selectOnlinePollPartcptnStatistics"|
{{:egovframework:com:uss:olp:opp:온라인poll참여_통계.jpg|온라인poll참여 통계}}
목록: **온라인POLL참여 목록** 화면으로 이동한다. \\
===== 참고자료 =====
* 실행환경 참조 : [[egovframework:rte:fdl:id_generation#Table Id Generation Service|ID Generation Service]]