diff --git a/src/main/java/com/dbnt/kcgfilemanager/controller/BoardController.java b/src/main/java/com/dbnt/kcgfilemanager/controller/BoardController.java index a28289c..cef90d6 100644 --- a/src/main/java/com/dbnt/kcgfilemanager/controller/BoardController.java +++ b/src/main/java/com/dbnt/kcgfilemanager/controller/BoardController.java @@ -1,12 +1,17 @@ package com.dbnt.kcgfilemanager.controller; +import com.dbnt.kcgfilemanager.model.UserInfo; import com.dbnt.kcgfilemanager.service.UserInfoService; import lombok.RequiredArgsConstructor; +import org.springframework.security.authentication.UsernamePasswordAuthenticationToken; import org.springframework.web.bind.annotation.GetMapping; import org.springframework.web.bind.annotation.RequestMapping; import org.springframework.web.bind.annotation.RestController; import org.springframework.web.servlet.ModelAndView; +import java.security.Principal; +import java.time.LocalDateTime; + @RestController @RequiredArgsConstructor @RequestMapping("/board") @@ -22,8 +27,12 @@ public class BoardController { @GetMapping("/contentWrite") - public ModelAndView doDenied() { + public ModelAndView contentWrite(Principal principal) { ModelAndView mav = new ModelAndView("board/contentWrite"); + UserInfo loginUser = ((UserInfo)((UsernamePasswordAuthenticationToken) principal).getPrincipal()); + mav.addObject("userId", loginUser.getUserId()); + mav.addObject("userName", loginUser.getName()); + mav.addObject("nowDate", LocalDateTime.now()); return mav; } diff --git a/src/main/java/com/dbnt/kcgfilemanager/model/Board.java b/src/main/java/com/dbnt/kcgfilemanager/model/Board.java new file mode 100644 index 0000000..fca7086 --- /dev/null +++ b/src/main/java/com/dbnt/kcgfilemanager/model/Board.java @@ -0,0 +1,36 @@ +package com.dbnt.kcgfilemanager.model; + +import lombok.Getter; +import lombok.NoArgsConstructor; +import lombok.Setter; +import org.hibernate.annotations.DynamicInsert; +import org.hibernate.annotations.DynamicUpdate; + +import javax.persistence.*; +import java.time.LocalDateTime; + +@Getter +@Setter +@Entity +@NoArgsConstructor +@DynamicInsert +@DynamicUpdate +@Table(name = "BOARD") +public class Board extends BaseModel{ + @Id + @GeneratedValue(strategy = GenerationType.IDENTITY) + @Column(name = "CONTENT_SEQ") + private Integer contentSeq; + @Column(name = "CATEGORY_SEQ") + private Integer categorySeq; + @Column(name = "TITLE") + private String title; + @Column(name = "DESCRIPTION") + private String description; + @Column(name = "STATUS") + private String status; + @Column(name = "CREATE_ID") + private String createId; + @Column(name = "CREATE_DATE") + private LocalDateTime createDate; +} diff --git a/src/main/java/com/dbnt/kcgfilemanager/model/BoardLog.java b/src/main/java/com/dbnt/kcgfilemanager/model/BoardLog.java new file mode 100644 index 0000000..660e3a3 --- /dev/null +++ b/src/main/java/com/dbnt/kcgfilemanager/model/BoardLog.java @@ -0,0 +1,45 @@ +package com.dbnt.kcgfilemanager.model; + +import lombok.*; +import org.hibernate.annotations.DynamicInsert; +import org.hibernate.annotations.DynamicUpdate; + +import javax.persistence.*; +import java.io.Serializable; +import java.time.LocalDateTime; + +@Getter +@Setter +@Entity +@NoArgsConstructor +@DynamicInsert +@DynamicUpdate +@Table(name = "BOARD_LOG") +@IdClass(BoardLog.BoardLogId.class) +public class BoardLog { + + @Id + @Column(name = "CONTENT_SEQ", nullable = false) + private Integer contentSeq; + @Id + @Column(name = "LOG_SEQ", nullable = false) + private Integer logSeq; + + @Column(name = "LOG_STATUS") + private String logStatus; + @Column(name = "DESCRIPTION") + private String description; + @Column(name = "CREATE_ID") + private String createId; + @Column(name = "CREATE_DATE") + private LocalDateTime createDate; + + @Embeddable + @Data + @NoArgsConstructor + @AllArgsConstructor + public static class BoardLogId implements Serializable { + private Integer contentSeq; + private Integer logSeq; + } +} diff --git a/src/main/java/com/dbnt/kcgfilemanager/model/FileInfo.java b/src/main/java/com/dbnt/kcgfilemanager/model/FileInfo.java new file mode 100644 index 0000000..df76bcb --- /dev/null +++ b/src/main/java/com/dbnt/kcgfilemanager/model/FileInfo.java @@ -0,0 +1,44 @@ +package com.dbnt.kcgfilemanager.model; + +import lombok.*; +import org.hibernate.annotations.DynamicInsert; +import org.hibernate.annotations.DynamicUpdate; + +import javax.persistence.*; +import java.io.Serializable; + +@Getter +@Setter +@Entity +@NoArgsConstructor +@DynamicInsert +@DynamicUpdate +@Table(name = "FILE_INFO") +@IdClass(FileInfo.FileInfoId.class) +public class FileInfo { + + @Id + @Column(name = "CONTENT_SEQ", nullable = false) + private Integer contentSeq; + @Id + @Column(name = "FILE_SEQ", nullable = false) + private Integer fileSeq; + + @Column(name = "ORIGINAL_NAME") + private String originalName; + @Column(name = "CONVERSION_NAME") + private String conversionName; + @Column(name = "EXTENTION") + private String extention; + @Column(name = "SAVE_PATH") + private String savePath; + + @Embeddable + @Data + @NoArgsConstructor + @AllArgsConstructor + public static class FileInfoId implements Serializable { + private Integer contentSeq; + private Integer fileSeq; + } +} diff --git a/src/main/java/com/dbnt/kcgfilemanager/model/HashTag.java b/src/main/java/com/dbnt/kcgfilemanager/model/HashTag.java new file mode 100644 index 0000000..c38d17e --- /dev/null +++ b/src/main/java/com/dbnt/kcgfilemanager/model/HashTag.java @@ -0,0 +1,26 @@ +package com.dbnt.kcgfilemanager.model; + + +import lombok.Getter; +import lombok.NoArgsConstructor; +import lombok.Setter; +import org.hibernate.annotations.DynamicInsert; +import org.hibernate.annotations.DynamicUpdate; + +import javax.persistence.*; + +@Getter +@Setter +@Entity +@NoArgsConstructor +@DynamicInsert +@DynamicUpdate +@Table(name = "HASH_TAG") +public class HashTag { + @Id + @GeneratedValue(strategy = GenerationType.IDENTITY) + @Column(name = "TAG_SEQ") + private Integer tagSeq; + @Column(name = "TAG_NAME") + private String tagName; +} diff --git a/src/main/java/com/dbnt/kcgfilemanager/model/HashTagLink.java b/src/main/java/com/dbnt/kcgfilemanager/model/HashTagLink.java new file mode 100644 index 0000000..7ed6330 --- /dev/null +++ b/src/main/java/com/dbnt/kcgfilemanager/model/HashTagLink.java @@ -0,0 +1,35 @@ +package com.dbnt.kcgfilemanager.model; + +import lombok.*; +import org.hibernate.annotations.DynamicInsert; +import org.hibernate.annotations.DynamicUpdate; + +import javax.persistence.*; +import java.io.Serializable; + +@Getter +@Setter +@Entity +@NoArgsConstructor +@DynamicInsert +@DynamicUpdate +@Table(name = "HASH_TAG_LINK") +@IdClass(HashTagLink.HashTagLinkId.class) +public class HashTagLink { + + @Id + @Column(name = "CONTENT_SEQ", nullable = false) + private Integer contentSeq; + @Id + @Column(name = "TAG_SEQ", nullable = false) + private Integer tagSeq; + + @Embeddable + @Data + @NoArgsConstructor + @AllArgsConstructor + public static class HashTagLinkId implements Serializable { + private Integer contentSeq; + private Integer tagSeq; + } +} diff --git a/src/main/resources/static/js/board/contentWrite.js b/src/main/resources/static/js/board/contentWrite.js index f2f5618..67a66de 100644 --- a/src/main/resources/static/js/board/contentWrite.js +++ b/src/main/resources/static/js/board/contentWrite.js @@ -31,7 +31,7 @@ function setCategorySelector(depth, categorySeq){ if(parentSeq === categorySeq){ option.removeAttr("style"); }else{ - option.css("display", "none;"); + option.css("display", "none"); } } }) diff --git a/src/main/resources/templates/board/contentWrite.html b/src/main/resources/templates/board/contentWrite.html index bb8ddda..d9d1c31 100644 --- a/src/main/resources/templates/board/contentWrite.html +++ b/src/main/resources/templates/board/contentWrite.html @@ -74,13 +74,14 @@