From 7bb4bab7995e0474979f374f24971c55a480e765 Mon Sep 17 00:00:00 2001 From: KNKIM Date: Tue, 14 Sep 2021 16:43:53 +0900 Subject: [PATCH] =?UTF-8?q?=EA=B3=B5=EC=A7=80=EC=82=AC=ED=95=AD,=20?= =?UTF-8?q?=EC=83=81=EC=84=B8=EC=A1=B0=ED=9A=8C=20:=20DB=20=EC=97=B0?= =?UTF-8?q?=EB=8F=99=20=EC=A0=81=EC=9A=A9?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../UR-1D9F07B0D8F84938887817B05FC83E90-4 | Bin 0 -> 26391 bytes .../java/nlib/bbs/service/AttachFileVO.java | 167 ++++++++++++++++++ .../bbs/service/impl/BoardServiceImpl.java | 68 +++++++ src/main/java/nlib/cmm/fileupload/FileVO.java | 64 +++++++ .../jsp/nlib/bbs/selectAncmntArticle.jsp | 155 ++++++++++++++++ src/main/webapp/temp/date.txt | 1 + src/main/webapp/temp/test.js | 0 7 files changed, 455 insertions(+) create mode 100644 data/fileupload/bbs/ancmnt/UR-1D9F07B0D8F84938887817B05FC83E90-4 create mode 100644 src/main/java/nlib/bbs/service/AttachFileVO.java create mode 100644 src/main/java/nlib/bbs/service/impl/BoardServiceImpl.java create mode 100644 src/main/java/nlib/cmm/fileupload/FileVO.java create mode 100644 src/main/webapp/WEB-INF/jsp/nlib/bbs/selectAncmntArticle.jsp create mode 100644 src/main/webapp/temp/date.txt create mode 100644 src/main/webapp/temp/test.js diff --git a/data/fileupload/bbs/ancmnt/UR-1D9F07B0D8F84938887817B05FC83E90-4 b/data/fileupload/bbs/ancmnt/UR-1D9F07B0D8F84938887817B05FC83E90-4 new file mode 100644 index 0000000000000000000000000000000000000000..b4f8308f180ccf5be6097d70b360e6cc9ba0ffeb GIT binary patch literal 26391 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 bh5r$F@gg4mDVski#DAD<>^@U2NZRs0#}V_= literal 0 HcmV?d00001 diff --git a/src/main/java/nlib/bbs/service/AttachFileVO.java b/src/main/java/nlib/bbs/service/AttachFileVO.java new file mode 100644 index 00000000..169d94d9 --- /dev/null +++ b/src/main/java/nlib/bbs/service/AttachFileVO.java @@ -0,0 +1,167 @@ +package nlib.bbs.service; + +/** + *
+ * @Class Name : AttachFileVO.java
+ * 
+ * @Description : 첨부파일 정보 VO 
+ * 
+ * 
+ * @프로젝트명: 지방문화원 통합자료관리시스템 구축사업 (2021)
+ *
+ * 
+ * + * @ ------------ -------- --------------------------- + * @ 수정일 수정자 수정내용 + * @ ------------ -------- --------------------------- + * @ 2021. 9. 14. KNKIM 최초 생성 + * + * + * @author 이씨플라자 * DIGITALSHIP KNKIM + * @since 2021. 9. 14. + * @version 1.0 + * + */ +public class AttachFileVO { + + private String subPathKey; /* 첨부파일서브경로 */ + + private String fileMask; /* 첨부파일아이디 */ + private String fileId; /* 업무 아이디 */ + private int fileSeq; /* 파일 번호 */ + private String fileName; /* 파일 이름 */ + private int fileSize; /* 파일 사이즈 */ + private String fileTypeCd; /* 파일 유형(디지털화사용) */ + private int downloadCount; /* 파일 다운로드 횟수 */ + private String downloadExpireDate; /* 파일 만료 날짜 */ + private int downloadLimitCount; /* 파일 다운로드 제한 횟수 */ + + private String deleteYn; /* 삭제 여부 */ + private String streamingUrl; /* 스트리밍URL */ + private String content; /* 내용주기 */ + private String atchTypeCd; /* 첨부파일유형 */ + + private String regDd; /* 등록 날짜 */ + + + public String getFileMask() { + return fileMask; + } + + public void setFileMask(String fileMask) { + this.fileMask = fileMask; + } + + public String getFileId() { + return fileId; + } + + public void setFileId(String fileId) { + this.fileId = fileId; + } + + public String getFileName() { + return fileName; + } + + public void setFileName(String fileName) { + this.fileName = fileName; + } + + public String getFileTypeCd() { + return fileTypeCd; + } + + public void setFileTypeCd(String fileTypeCd) { + this.fileTypeCd = fileTypeCd; + } + + public String getDownloadExpireDate() { + return downloadExpireDate; + } + + public void setDownloadExpireDate(String downloadExpireDate) { + this.downloadExpireDate = downloadExpireDate; + } + + public String getDeleteYn() { + return deleteYn; + } + + public void setDeleteYn(String deleteYn) { + this.deleteYn = deleteYn; + } + + public String getStreamingUrl() { + return streamingUrl; + } + + public void setStreamingUrl(String streamingUrl) { + this.streamingUrl = streamingUrl; + } + + public String getContent() { + return content; + } + + public void setContent(String content) { + this.content = content; + } + + public String getAtchTypeCd() { + return atchTypeCd; + } + + public void setAtchTypeCd(String atchTypeCd) { + this.atchTypeCd = atchTypeCd; + } + + public String getRegDd() { + return regDd; + } + + public void setRegDd(String regDd) { + this.regDd = regDd; + } + + public int getFileSeq() { + return fileSeq; + } + + public void setFileSeq(int fileSeq) { + this.fileSeq = fileSeq; + } + + public int getFileSize() { + return fileSize; + } + + public void setFileSize(int fileSize) { + this.fileSize = fileSize; + } + + public int getDownloadCount() { + return downloadCount; + } + + public void setDownloadCount(int downloadCount) { + this.downloadCount = downloadCount; + } + + public int getDownloadLimitCount() { + return downloadLimitCount; + } + + public void setDownloadLimitCount(int downloadLimitCount) { + this.downloadLimitCount = downloadLimitCount; + } + + public String getSubPathKey() { + return subPathKey; + } + + public void setSubPathKey(String subPathKey) { + this.subPathKey = subPathKey; + } + +} diff --git a/src/main/java/nlib/bbs/service/impl/BoardServiceImpl.java b/src/main/java/nlib/bbs/service/impl/BoardServiceImpl.java new file mode 100644 index 00000000..84b4508b --- /dev/null +++ b/src/main/java/nlib/bbs/service/impl/BoardServiceImpl.java @@ -0,0 +1,68 @@ +package nlib.bbs.service.impl; + +import java.util.List; + +import javax.annotation.Resource; + +import org.slf4j.Logger; +import org.slf4j.LoggerFactory; +import org.springframework.stereotype.Service; + +import nlib.bbs.service.ArticleVO; +import nlib.bbs.service.BoardService; +import nlib.util.StringUtil; + +public abstract class BoardServiceImpl implements BoardService +{ + static Logger log = LoggerFactory.getLogger(BoardServiceImpl.class); + + public abstract BoardDAO getBoardDAO(); + + /* + * 게시글 목록을 조회한다. + */ + public List listArticles(ArticleVO articleVO) throws Exception { + + return getBoardDAO().listArticles(articleVO); + } + + /** + * 게시글 건수를 조회한다. + */ + public int countArticles(ArticleVO articleVO) throws Exception { + + return getBoardDAO().countArticles(articleVO); + } + + + /** + * 조회수를 증가시킨다. + * + * @param + * @return + * @throws Exception + */ + public int updateRead(ArticleVO articleVO) throws Exception { + return getBoardDAO().updateRead(articleVO); + } + + /** + * 게시글 상세 내용을 조회한다. + * + * @param + * @return + * @throws Exception + */ + public ArticleVO selectArticle(ArticleVO articleVO) throws Exception { + + // 게시글 조회 + ArticleVO retVO = getBoardDAO().selectArticle(articleVO); + // 첨부파일 조회 + if(StringUtil.isNotEmpty(retVO.getBdAttachFileId())) retVO.setAttachFiles(getBoardDAO().listAttachFiles(retVO.getBdAttachFileId())); + // 조회수 증가 + updateRead(articleVO); + + return retVO; + } + +} \ No newline at end of file diff --git a/src/main/java/nlib/cmm/fileupload/FileVO.java b/src/main/java/nlib/cmm/fileupload/FileVO.java new file mode 100644 index 00000000..874e1046 --- /dev/null +++ b/src/main/java/nlib/cmm/fileupload/FileVO.java @@ -0,0 +1,64 @@ +package nlib.cmm.fileupload; + +/** + *
+ * @Class Name : AttachFileVO.java
+ * 
+ * @Description : 첨부파일 정보 VO 
+ * 
+ * 
+ * @프로젝트명: 지방문화원 통합자료관리시스템 구축사업 (2021)
+ *
+ * 
+ * + * @ ------------ -------- --------------------------- + * @ 수정일 수정자 수정내용 + * @ ------------ -------- --------------------------- + * @ 2021. 9. 14. KNKIM 최초 생성 + * + * + * @author 이씨플라자 * DIGITALSHIP KNKIM + * @since 2021. 9. 14. + * @version 1.0 + * + */ +public class FileVO { + + private String subPathKey; /* 첨부파일서브경로 */ + private String fileMask; /* 첨부파일아이디 */ + private String fileId; /* 업무 아이디 */ + private int fileSeq; /* 파일 번호 */ + private String fileName; /* 파일 이름 */ + + public String getSubPathKey() { + return subPathKey; + } + public void setSubPathKey(String subPathKey) { + this.subPathKey = subPathKey; + } + public String getFileMask() { + return fileMask; + } + public void setFileMask(String fileMask) { + this.fileMask = fileMask; + } + public String getFileId() { + return fileId; + } + public void setFileId(String fileId) { + this.fileId = fileId; + } + public int getFileSeq() { + return fileSeq; + } + public void setFileSeq(int fileSeq) { + this.fileSeq = fileSeq; + } + public String getFileName() { + return fileName; + } + public void setFileName(String fileName) { + this.fileName = fileName; + } + +} diff --git a/src/main/webapp/WEB-INF/jsp/nlib/bbs/selectAncmntArticle.jsp b/src/main/webapp/WEB-INF/jsp/nlib/bbs/selectAncmntArticle.jsp new file mode 100644 index 00000000..cb35059b --- /dev/null +++ b/src/main/webapp/WEB-INF/jsp/nlib/bbs/selectAncmntArticle.jsp @@ -0,0 +1,155 @@ +<% +/** + *
+ * @Class Name : selectAncmntArticle.jsp
+ * 
+ * @Description : 공지사항 상세내용을 조회한다.
+ * 
+ * 
+ * @프로젝트명: 지방문화원 통합자료관리시스템 구축사업 (2021)
+ *
+ * 
+ * + * @ ------------ -------- --------------------------- + * @ 수정일 수정자 수정내용 + * @ ------------ -------- --------------------------- + * @ 2021. 9. 14. KNKIM 최초 생성 + * + * + * @author 이씨플라자 * DIGITALSHIP KNKIM + * @since 2021. 9. 14. + * @version 1.0 + * + */ + %> +<%@ page language="java" contentType="text/html; charset=UTF-8" %> +<%@ taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core" %> +<%@ taglib prefix="ui" uri="http://egovframework.gov/ctl/ui" %> +<%@ taglib prefix="fn" uri="http://java.sun.com/jsp/jstl/functions" %> +<%@ taglib prefix="fmt" uri="http://java.sun.com/jsp/jstl/fmt" %> +<%@ taglib prefix="spring" uri="http://www.springframework.org/tags" %> +<%@ taglib prefix="form" uri="http://www.springframework.org/tags/form" %> +<%@ taglib prefix="validator" uri="http://www.springmodules.org/tags/commons-validator" %> + +공지사항 - 상세조회 + + + + +${pageTitle} + + + + + + + +

${pageTitle }

+ +메시지 : ${message } +
+ +
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
유형 + 공지 + 일반 + + 작성일${article.regDd }
제목${article.title}
질문내용${article.content}
+ <% + // 파일정보 : 저장파일ID=원파일명 + %> + + ${attachFile.fileName} (${attachFile.fileSize} byte(s))
+
+
첨부파일 없음 +
+ +
+ + + + +
+ +
+ + +
+ + + + +
+ + + diff --git a/src/main/webapp/temp/date.txt b/src/main/webapp/temp/date.txt new file mode 100644 index 00000000..5aab76d2 --- /dev/null +++ b/src/main/webapp/temp/date.txt @@ -0,0 +1 @@ +Tue Sep 14 2021 08:25:17 GMT+0900 (대한민국 표준시) \ No newline at end of file diff --git a/src/main/webapp/temp/test.js b/src/main/webapp/temp/test.js new file mode 100644 index 00000000..e69de29b