diff --git a/VamPa/src/main/java/com/vam/mapper/AdminMapper.java b/VamPa/src/main/java/com/vam/mapper/AdminMapper.java index d29abf6..5e1b328 100644 --- a/VamPa/src/main/java/com/vam/mapper/AdminMapper.java +++ b/VamPa/src/main/java/com/vam/mapper/AdminMapper.java @@ -33,4 +33,7 @@ public interface AdminMapper { /* 이미지 등록 */ public void imageEnroll(AttachImageVO vo); + /* 지정 상품 이미지 전체 삭제 */ + public void deleteImageAll(int bookId); + } diff --git a/VamPa/src/main/java/com/vam/service/AdminServiceImpl.java b/VamPa/src/main/java/com/vam/service/AdminServiceImpl.java index 863fb6c..798406e 100644 --- a/VamPa/src/main/java/com/vam/service/AdminServiceImpl.java +++ b/VamPa/src/main/java/com/vam/service/AdminServiceImpl.java @@ -80,13 +80,26 @@ public class AdminServiceImpl implements AdminService { } /* 상품 정보 수정 */ + @Transactional @Override public int goodsModify(BookVO vo) { + + int result = adminMapper.goodsModify(vo); - log.info("goodsModify........"); - - return adminMapper.goodsModify(vo); + if(result == 1 && vo.getImageList() != null && vo.getImageList().size() > 0) { + + adminMapper.deleteImageAll(vo.getBookId()); + + vo.getImageList().forEach(attach -> { + + attach.setBookId(vo.getBookId()); + adminMapper.imageEnroll(attach); + + }); + + } + return result; } /* 상품 정보 삭제 */ diff --git a/VamPa/src/main/resources/com/vam/mapper/AdminMapper.xml b/VamPa/src/main/resources/com/vam/mapper/AdminMapper.xml index 2773fde..e69f0ec 100644 --- a/VamPa/src/main/resources/com/vam/mapper/AdminMapper.xml +++ b/VamPa/src/main/resources/com/vam/mapper/AdminMapper.xml @@ -94,5 +94,12 @@ insert into vam_image(bookId, fileName, uploadPath, uuid) values (#{bookId}, #{fileName}, #{uploadPath}, #{uuid}) + + + + + delete FROM vam_image where bookId = #{bookId} + + \ No newline at end of file diff --git a/VamPa/src/main/webapp/WEB-INF/views/admin/goodsModify.jsp b/VamPa/src/main/webapp/WEB-INF/views/admin/goodsModify.jsp index 29be4c0..bfb9e9d 100644 --- a/VamPa/src/main/webapp/WEB-INF/views/admin/goodsModify.jsp +++ b/VamPa/src/main/webapp/WEB-INF/views/admin/goodsModify.jsp @@ -629,7 +629,7 @@ $("input[type='file']").on("change", function(e){ /* 이미지 존재시 삭제 */ - if($(".imgDeleteBtn").length > 0){ + if($("#result_card").length > 0){ deleteFile(); } diff --git a/VamPa/src/test/java/com/vam/mapper/AdminMapperTests.java b/VamPa/src/test/java/com/vam/mapper/AdminMapperTests.java index 2d2b4ca..95833d5 100644 --- a/VamPa/src/test/java/com/vam/mapper/AdminMapperTests.java +++ b/VamPa/src/test/java/com/vam/mapper/AdminMapperTests.java @@ -19,7 +19,7 @@ public class AdminMapperTests { private AdminMapper mapper; /* 상품 등록 */ - + /* @Test public void bookEnrollTest() throws Exception{ @@ -43,7 +43,7 @@ public class AdminMapperTests { System.out.println("After BookVO :" + book); } - + */ /* 카테고리 리스트 */ /* @@ -151,6 +151,16 @@ public class AdminMapperTests { } */ + /* 지정 상품 이미지 삭제 */ + @Test + public void deleteImageAllTest() { + + int bookId = 3124; + + mapper.deleteImageAll(bookId); + + } + } diff --git a/VamPa/target/classes/com/vam/mapper/AdminMapper.xml b/VamPa/target/classes/com/vam/mapper/AdminMapper.xml index 2773fde..e69f0ec 100644 --- a/VamPa/target/classes/com/vam/mapper/AdminMapper.xml +++ b/VamPa/target/classes/com/vam/mapper/AdminMapper.xml @@ -94,5 +94,12 @@ insert into vam_image(bookId, fileName, uploadPath, uuid) values (#{bookId}, #{fileName}, #{uploadPath}, #{uuid}) + + + + + delete FROM vam_image where bookId = #{bookId} + + \ No newline at end of file diff --git a/VamPa/target/m2e-wtp/web-resources/META-INF/maven/com.vam/controller/pom.properties b/VamPa/target/m2e-wtp/web-resources/META-INF/maven/com.vam/controller/pom.properties index d096ce3..6ca05fc 100644 --- a/VamPa/target/m2e-wtp/web-resources/META-INF/maven/com.vam/controller/pom.properties +++ b/VamPa/target/m2e-wtp/web-resources/META-INF/maven/com.vam/controller/pom.properties @@ -1,5 +1,5 @@ #Generated by Maven Integration for Eclipse -#Tue Jul 13 15:56:55 KST 2021 +#Tue Jul 20 15:40:19 KST 2021 m2e.projectLocation=C\:\\Users\\sjinj\\git\\Blog_Project2\\VamPa m2e.projectName=VamPa groupId=com.vam diff --git a/VamPa_MySQL/src/main/java/com/vam/mapper/AdminMapper.java b/VamPa_MySQL/src/main/java/com/vam/mapper/AdminMapper.java index fa004ff..caf7707 100644 --- a/VamPa_MySQL/src/main/java/com/vam/mapper/AdminMapper.java +++ b/VamPa_MySQL/src/main/java/com/vam/mapper/AdminMapper.java @@ -33,4 +33,7 @@ public interface AdminMapper { /* 이미지 등록 */ public void imageEnroll(AttachImageVO vo); + /* 지정 상품 이미지 전체 삭제 */ + public void deleteImageAll(int bookId); + } diff --git a/VamPa_MySQL/src/main/java/com/vam/service/AdminServiceImpl.java b/VamPa_MySQL/src/main/java/com/vam/service/AdminServiceImpl.java index a83ef83..4c2554f 100644 --- a/VamPa_MySQL/src/main/java/com/vam/service/AdminServiceImpl.java +++ b/VamPa_MySQL/src/main/java/com/vam/service/AdminServiceImpl.java @@ -75,14 +75,27 @@ public class AdminServiceImpl implements AdminService { } /* 상품 정보 수정 */ + @Transactional @Override public int goodsModify(BookVO vo) { + + int result = adminMapper.goodsModify(vo); - log.info("goodsModify........"); + if(result == 1 && vo.getImageList() != null && vo.getImageList().size() > 0) { + + adminMapper.deleteImageAll(vo.getBookId()); + + vo.getImageList().forEach(attach -> { + + attach.setBookId(vo.getBookId()); + adminMapper.imageEnroll(attach); + + }); + + } - return adminMapper.goodsModify(vo); - - } + return result; + } /* 상품 정보 삭제 */ @Override diff --git a/VamPa_MySQL/src/main/resources/com/vam/mapper/AdminMapper.xml b/VamPa_MySQL/src/main/resources/com/vam/mapper/AdminMapper.xml index 3fc68d7..7ba04a6 100644 --- a/VamPa_MySQL/src/main/resources/com/vam/mapper/AdminMapper.xml +++ b/VamPa_MySQL/src/main/resources/com/vam/mapper/AdminMapper.xml @@ -84,5 +84,12 @@ insert into vam_image(bookId, fileName, uploadPath, uuid) values (#{bookId}, #{fileName}, #{uploadPath}, #{uuid}) + + + + + delete FROM vam_image where bookId = #{bookId} + + \ No newline at end of file diff --git a/VamPa_MySQL/src/main/webapp/WEB-INF/views/admin/goodsModify.jsp b/VamPa_MySQL/src/main/webapp/WEB-INF/views/admin/goodsModify.jsp index 7246cd0..45622e9 100644 --- a/VamPa_MySQL/src/main/webapp/WEB-INF/views/admin/goodsModify.jsp +++ b/VamPa_MySQL/src/main/webapp/WEB-INF/views/admin/goodsModify.jsp @@ -627,7 +627,7 @@ $("input[type='file']").on("change", function(e){ /* 이미지 존재시 삭제 */ - if($(".imgDeleteBtn").length > 0){ + if($("#result_card").length > 0){ deleteFile(); } diff --git a/VamPa_MySQL/src/test/java/com/vam/mapper/AdminMapperTests.java b/VamPa_MySQL/src/test/java/com/vam/mapper/AdminMapperTests.java index 20745be..c8e8c45 100644 --- a/VamPa_MySQL/src/test/java/com/vam/mapper/AdminMapperTests.java +++ b/VamPa_MySQL/src/test/java/com/vam/mapper/AdminMapperTests.java @@ -150,4 +150,14 @@ public class AdminMapperTests { } */ + /* 지정 상품 이미지 삭제 */ + @Test + public void deleteImageAllTest() { + + int bookId = 3124; + + mapper.deleteImageAll(bookId); + + } + } diff --git a/VamPa_MySQL/target/classes/com/vam/mapper/AdminMapper.xml b/VamPa_MySQL/target/classes/com/vam/mapper/AdminMapper.xml index 3fc68d7..7ba04a6 100644 --- a/VamPa_MySQL/target/classes/com/vam/mapper/AdminMapper.xml +++ b/VamPa_MySQL/target/classes/com/vam/mapper/AdminMapper.xml @@ -84,5 +84,12 @@ insert into vam_image(bookId, fileName, uploadPath, uuid) values (#{bookId}, #{fileName}, #{uploadPath}, #{uuid}) + + + + + delete FROM vam_image where bookId = #{bookId} + + \ No newline at end of file diff --git a/VamPa_MySQL/target/m2e-wtp/web-resources/META-INF/maven/com.vam/controller/pom.properties b/VamPa_MySQL/target/m2e-wtp/web-resources/META-INF/maven/com.vam/controller/pom.properties index 1fe7f9b..f61e169 100644 --- a/VamPa_MySQL/target/m2e-wtp/web-resources/META-INF/maven/com.vam/controller/pom.properties +++ b/VamPa_MySQL/target/m2e-wtp/web-resources/META-INF/maven/com.vam/controller/pom.properties @@ -1,5 +1,5 @@ #Generated by Maven Integration for Eclipse -#Tue Jul 13 15:56:56 KST 2021 +#Tue Jul 20 15:40:20 KST 2021 m2e.projectLocation=C\:\\Users\\sjinj\\git\\Blog_Project2\\VamPa_MySQL m2e.projectName=VamPa_MySQL groupId=com.vam