====== 사용자지원 - 마이페이지======
===== 개요 =====
사용자가 즐겨 찾는 정보를 사용자가 원하는 형태에 따라 제공하며, 마이페이지의 콘텐츠 등록, 수정, 삭제, 조회 및 마이페이지를 구성하는 기능을 제공한다.
* 기능흐름
{{:egovframework:com:uss:ivp:mpe:mypage_fnc_flow.jpg?800|}}
===== 설명 =====
마이페이지는 크게 **컨텐츠의 관리기능인 컨텐츠 목록조회, 상세조회, 등록, 수정, 삭제**로 구성되어 있으며, 사용자들이 마이페이지를 사용하기 위한 **마이페이지 환경 설정**, **마이페이지 컨텐츠 추가**, **마이페이지 조회** 기능으로 구성되어 있다.(관련기능 부분참조)
== 클래스 다이어그램 ==
{{:egovframework:com:uss:ivp:mpe:mypage_class.jpg?900|}}
== 관련소스 ==
^유형^대상소스명^비고^
|Controller|egovframework.com.uss.ivp.mpe.web.EgovIndvdlPgeController.java|마이페이지 Controller Class|
|Service|egovframework.com.uss.ivp.mpe.service.EgovIndvdlPgeService.java|마이페이지 Service Class|
|Model|egovframework.com.uss.ivp.mpe.service.IndvdlPge.java|마이페이지 Model Class|
|VO|egovframework.com.uss.ivp.mpe.service.IndvdlPgeCntntsVO.java|마이페이지 컨텐츠 VO Class|
|VO|egovframework.com.uss.ivp.mpe.service.IndvdlPgeVO.java|마이페이지 구성 VO Class|
|VO|egovframework.com.cmm.ComDefaultVO.java|검색 VO Class|
|ServiceImpl|egovframework.com.uss.ivp.mpe.service.impl.EgovIndvdlPgeServiceImpl.java|마이페이지 ServiceImpl Class|
|DAO|egovframework.com.uss.ivp.mpe.service.impl.IndvdlPgeDAO.java|마이페이지 Dao Class|
|JSP|/WEB-INF/jsp/egovframework/uss/ivp/mpe/EgovIndvdlpgeCntntsList.jsp|마이페이지 컨텐츠 목록조회 페이지|
|JSP|/WEB-INF/jsp/egovframework/uss/ivp/mpe/EgovIndvdlpgeCntntsRegist.jsp|마이페이지 컨텐츠 등록 페이지|
|JSP|/WEB-INF/jsp/egovframework/uss/ivp/mpe/EgovIndvdlpgeCntntsUpdt.jsp|마이페이지 컨텐츠 수정 페이지|
|JSP|/WEB-INF/jsp/egovframework/uss/ivp/mpe/EgovIndvdlpgeCntntsDetail.jsp|마이페이지 컨텐츠 상세조회 페이지|
|JSP|/WEB-INF/jsp/egovframework/uss/ivp/mpe/EgovIndvdlpgeConfRegist.jsp|마이페이지 환경설정 페이지|
|JSP|/WEB-INF/jsp/egovframework/uss/ivp/mpe/EgovIndvdlpgeList.jsp|마이페이지 컨텐츠 추가 페이지|
|JSP|/WEB-INF/jsp/egovframework/uss/ivp/mpe/EgovIndvdlpgeDetail.jsp|마이페이지 조회 페이지|
|QUERY XML|/egovframework/sqlmap/com/uss/ivp/mpe/EgovIndvdlPge_SQL_XXX.xml|마이페이지 QUERY XML|
|Validator Rule XML|resources/egovframework/validator/validator-rules.xml|Validator Rule을 정의한 XML|
|Validator XML|resources/egovframework/validator/com/uss/ivp/mpe/EgovIndvdlpge.xml|마이페이지 Validator XML|
|Message properties|resources/egovframework/message/message-common_ko_KR.properties|마이페이지 Message properties|
|Idgen XML|resources/egovframework/spring/context-idgen.xml|마이페이지 컨텐츠 Id생성 Idgen XML|
== ID Generation ==
* ID Generation Service를 활용하기 위해서 Sequence 저장테이블인 COMTECOPSEQ에 CNTNTS_ID (컨텐츠 아이디) 항목을 추가해야 한다.
CREATE TABLE COMTECOPSEQ ( table_name varchar(16) NOT NULL,
next_id DECIMAL(30) NOT NULL,
PRIMARY KEY (table_name));
INSERT INTO COMTECOPSEQ VALUES('CNTNTS_ID','0');
== 관련테이블 ==
^테이블명^테이블명(영문)^비고^
|마이페이지 컨텐츠|COMTNINDVDLPGECNTNTS|마이페이지에 추가할 수 있는 컨텐츠를 관리자가 등록 한다.|
|마이페이지 환경설정|COMTNINDVDLPGEESTBS|마이페이지 조회 시 구성될 화면을 설정한다.|
|마이페이지에 추가된 컨텐츠|COMTNCNTNTSLIST|마이페이지에 추가된 컨텐츠를 관리한다.|
===== 관련기능 =====
마이페이지관리기능은 크게 **마이페이지 컨텐츠 목록조회**, **마이페이지 컨텐츠 상세조회**, **마이페이지 컨텐츠 등록/수정**, **마이페이지 컨텐츠 삭제/미리보기**, **마이페이지 설정**, **컨텐츠 추가하기**, **마이페이지 조회** 기능으로 구성되어 있다.
==== 마이페이지 컨텐츠 목록조회 ====
=== 비즈니스 규칙 ===
관리자가 기(記) 등록된 마이페이지 컨텐츠 정보를 리스트 형태로 조회 할 수 있고, 기능버튼으로는 미리보기, 등록, 삭제 기능을 사용할 수 있다.
=== 관련코드 ===
N/A
=== 관련화면 및 수행메뉴얼 ===
^Action^URL^Controller method^QueryID^
|등록|/uss/ivp/mpe/EgovIndvdlpgeCntntsRegistView.do|insertIndvdlpgeCntntsView| |
|미리보기|제공되는 컨텐츠의 연계 URL을 통한 팝업창|||
|삭제|/uss/ivp/mpe/EgovIndvdlpgeCntntsDel.do|deleteIndvdlpgeCntnts|IndvdlPgeDAO.deleteIndvdlpgeCntnts|
|목록|/uss/ivp/mpe/EgovIndvdlpgeCntntsDetail.do|selectIndvdlpgeCntnts|IndvdlPgeDAO.selectIndvdlpgeCntnts|
{{:egovframework:com:uss:ivp:mpe:mypge_cntnts_list.jpg|}}
- 등록 : 컨텐츠를 등록하기 위해서는 상단의 등록 버튼을 통해서 **마이페이지 등록** 화면으로 이동한다. \\
- 미리보기 : 미리보기 할 컨텐츠를 하나 선택하고 미리보기 버튼을 클릭하면 해당컨텐츠의 연계URL을 통해 팝업창에 컨텐츠를 볼 수 있다. \\
- 삭제 : 삭제 할 컨텐츠를 하나 혹은 다수로 선택하고 상단의 삭제 버튼을 통해서 컨텐츠를 삭제 할 수 있다. 이때 컨텐츠의 경우 일시적으로 컨텐츠를 사용못하게 하는 경우가 대부분이므로 완전 삭제하지 않고 사용자가 컨텐츠를 추가 하지 못하도록 **사용여부를 "N"으로 변경**한다. 컨텐츠를 데이터베이스에서 완전 살제 하기를 원할 경우는 각 컨텐츠 상세보기 화면으로 이동하여 그 기능을 수행할 수 있다.\\
- 목록 : **마이페이지 컨텐츠의 상세조회** 화면으로 이동한다.
----
==== 마이페이지 컨텐츠 등록 ====
=== 비즈니스 규칙 ===
마이페이지에 컨텐츠를 관리자가 등록하는 화면으로 컨텐츠 명, 연계URL, 상세보기 URL, 컨텐츠 설명은 필수 입력 항목이므로 반드시 입력해야 한다.
- 저장 처리 시 CNTNTS_ID 컬럼은 "egovframework.rte.fdl.idgnr.impl.EgovTableIdGnrService"를 통하여 \\
Primary Key => CNTNTS_ID(20자리) : C(1자리) + 일련번호(19자리)로 자동생성 부여된다.
=== 관련코드 ===
N/A
=== 관련화면 및 수행메뉴얼 ===
^Action^URL^Controller method^QueryID^
|목록|/uss/ivp/mpe/EgovIndvdlpgeCntntsList.do|selectIndvdlpgeCntntsList|IndvdlPgeDAO.selectIndvdlpgeCntntsList|
|등록|/uss/ivp/mpe/EgovIndvdlpgeCntntsRegist.do|insertIndvdlpgeCntnts|IndvdlPgeDAO.insertIndvdlpgeCntnts|
{{:egovframework:com:uss:ivp:mpe:mypge_cntnts_regi.jpg|}}
- 목록 : 목록 버튼 클릭시 **마이페이지 컨텐츠 목록 조회** 화면으로 이동한다. \\
- 등록 : 등록 버튼 클릭시 입력한 마이페이지 컨텐츠 정보를 저장한다.
----
==== 마이페이지 컨텐츠 수정 ====
=== 비즈니스 규칙 ===
마이페이지에 컨텐츠 수정 화면으로 컨텐츠 명, 연계URL, 상세보기 URL, 컨텐츠 설명 등을 수정할 수 있다.
=== 관련코드 ===
N/A
=== 관련화면 및 수행메뉴얼 ===
^Action^URL^Controller method^QueryID^
|목록|/uss/ivp/mpe/EgovIndvdlpgeCntntsList.do|selectIndvdlpgeCntntsList|IndvdlPgeDAO.selectIndvdlpgeCntntsList|
|수정|/uss/ivp/mpe/EgovIndvdlpgeCntntsUpdt.do|updateIndvdlpgeCntnts|IndvdlPgeDAO.updateIndvdlpgeCntnts|
|등록|/uss/ivp/mpe/EgovIndvdlpgeCntntsRegist.do|insertIndvdlpgeCntnts|IndvdlPgeDAO.insertIndvdlpgeCntnts|
{{:egovframework:com:uss:ivp:mpe:mypge_cntnts_updt.jpg|}}
- 목록 : 목록 버튼 클릭시 **마이페이지 컨텐츠 목록 조회** 화면으로 이동한다. \\
- 수정 : 수정 버큰 클릭시 **마이페이지 컨텐츠 수정** 후 수정 완료 메세지를 출력한다. \\
- 등록 : 등록 버튼 클릭시 입력한 마이페이지 컨텐츠 정보를 저장한다.
----
==== 마이페이지 컨텐츠 삭제/미리보기 ====
=== 비즈니스 규칙 ===
- **마이페이지 컨텐츠 목록 조회**화면에서 미리보고자 하는 컨텐츠를 선택하여 미리보기 하거나, 삭제하고자 하는 컨텐츠를 다중 선택하여 일괄 삭제가 가능한다. 삭제는 컨텐츠의 재사용을 위해 완전삭제가 아닌 비사용으로 전환한다.
=== 관련코드 ===
N/A
=== 관련화면 및 수행메뉴얼 ===
^Action^URL^Controller method^QueryID^
|미리보기|제공되는 컨텐츠의 연계 URL을 통한 팝업창|||
|삭제|/uss/ivp/mpe/EgovIndvdlpgeCntntsDel.do|deleteIndvdlpgeCntnts|IndvdlPgeDAO.deleteIndvdlpgeCntnts|
{{:egovframework:com:uss:ivp:mpe:mypge_cntnts_preview.jpg|}}
- 미리보기 : 미리보기 할 컨텐츠를 하나 선택하고 미리보기 버튼을 클릭하면 해당컨텐츠의 연계URL을 통해 팝업창에 컨텐츠를 볼 수 있다. \\
- 삭제 : 삭제 할 컨텐츠를 하나 혹은 다수로 선택하고 상단의 삭제 버튼을 통해서 컨텐츠를 삭제 할 수 있다. 이때 컨텐츠의 경우 일시적으로 컨텐츠를 사용못하게 하는 경우가 대부분이므로 완전 삭제하지 않고 사용자가 컨텐츠를 추가 하지 못하도록 **사용여부를 "N"으로 변경**한다. \\
----
==== 마이페이지 컨텐츠 상세보기/완전삭제====
=== 비즈니스 규칙 ===
- 마이페이지 컨텐츠 목록에서의 컨텐츠 삭제 기능은 컨텐츠의 사용유무를 변경 시키는 기능이며, 완전삭제는 목록에서 컨텐츠 상세보기 화면으로 이동하여 컨텐츠를 데이터베이스에서 완전히 삭제하는 기능을 말한다. 따라서 목록에서도 삭제된 컨텐츠를 확인할 수 있다. \\
=== 관련코드 ===
N/A
=== 관련화면 및 수행메뉴얼 ===
^Action^URL^Controller method^QueryID^
|목록|/uss/ivp/mpe/EgovIndvdlpgeCntntsList.do|selectIndvdlpgeCntntsList|IndvdlPgeDAO.selectIndvdlpgeCntntsList|
|수정|/uss/ivp/mpe/EgovIndvdlpgeCntntsUpdt.do|updateIndvdlpgeCntnts|IndvdlPgeDAO.updateIndvdlpgeCntnts|
|완전삭제|/uss/ivp/mpe/EgovIndvdlpgeCntntsDelDB.do|deleteIndvdlpgeCntntsDB|IndvdlPgeDAO.delIndvdlpgeCntntsDB|
{{:egovframework:com:uss:ivp:mpe:mypge_cntnts_deldb.jpg|}}
- 목록 : 목록 버튼 클릭시 **마이페이지 컨텐츠 목록 조회** 화면으로 이동한다. \\
- 수정 : 수정 버큰 클릭시 **마이페이지 컨텐츠 수정** 후 수정 완료 메세지를 출력한다. \\
- 완전삭제 : 완전삭제 버튼 클릭시 데이터베이스에 저장된 컨텐츠를 삭제하고 목록 페이지로 이동한다.
----
==== 마이페이지 구성====
=== 비즈니스 규칙 ===
- 마이페이지 보기 화면에서 출력된 컨텐츠의 배열방식 및 개수, 컨텐츠 타이틀 바 색상 등을 정의한다. 마이페이지를 보기 위해서는 반드시 마이페이지 구성을 설정하여야 한다.
=== 관련코드 ===
N/A
=== 관련화면 및 수행메뉴얼 ===
^Action^URL^Controller method^QueryID^
|저장|/uss/ivp/mpe/uss/ivp/mpe/EgovIndvdlpgeConfSave.do|checkIndvdlConf|IndvdlPgeDAO.insertIndvdlpgeConf|
{{:egovframework:com:uss:ivp:mpe:mypge_cntnts_conf.jpg|}}
- 저장 : 저장 버튼 클릭시 입력정보를 저장하고 **요청정보 처리 완료 메세지** 를 출력한다. \\
----
==== 마이페이지 컨텐츠 추가====
=== 비즈니스 규칙 ===
- 마이페이지에서 보기를 원하는 컨텐츠를 컨텐츠 목록에서 선택하여 추가한다. 컨텐츠 목록에서는 관리자가 등록한 컨텐츠 중 사용유무가 "Y"인 컨텐츠가 조회할 수 있다.
=== 관련코드 ===
N/A
=== 관련화면 및 수행메뉴얼 ===
^Action^URL^Controller method^QueryID^
|바로추가|/uss/ivp/mpe/EgovIndvdlpgeAddCntntsList.do|addIndvdlpgeCntntsList|IndvdlPgeDAO.addIndvdlpgeCntntsList| \\
|미리보기|팝업창을 통한 컨텐츠 미리보기|||
{{:egovframework:com:uss:ivp:mpe:mypge_cntnts_add.jpg|}}
- 바로추가 : 목록의 컨텐츠를 마이페이지에 바로추가 한다. \\
- 미리보기 : 추가할 컨텐츠를 마이페이지에 추가하기 전에 확인할 수 있다.
----
==== 마이페이지 보기====
=== 비즈니스 규칙 ===
- 마이페이지에 추가된 컨텐츠를 확인할 수 있다. 마이페이지를 보기 위해서는 마이페이지 구성이 설정되어 있어야 한다. 그렇지 않을 경우 설정화면으로 이동한다.
=== 관련코드 ===
N/A
=== 관련화면 및 수행메뉴얼 ===
^Action^URL^Controller method^QueryID^
|바로추가|/uss/ivp/mpe/EgovIndvdlpgeAddCntntsList.do|addIndvdlpgeCntntsList|IndvdlPgeDAO.addIndvdlpgeCntntsList| \\
|미리보기|팝업창을 통한 컨텐츠 미리보기|||
{{:egovframework:com:uss:ivp:mpe:mypge_cntnts_viewpge.jpg|}}
- more : 마이페이지에 나타난 컨텐츠의 상세보기 URL로 이동한다.\\
- X 이미지 버튼 : 추가된 컨텐츠를 마이페이지에서 제외시킬 수 있다.
----
===== 참고자료 =====
* 실행환경 참조 : [[egovframework:rte:fdl:id_generation#Table Id Generation Service|ID Generation Service]]
* 배포 및 테스트 관련 : [[common_component_system|Common Component System]] 및 [[배포_패키지_구성안|배포 패키지 구성안]]