From 5e48545a731c8a237ae7b3b6ebf0748677032aa6 Mon Sep 17 00:00:00 2001 From: CD <1103614279@qq.com> Date: Tue, 27 Sep 2022 15:28:42 +0800 Subject: [PATCH 1/3] bug --- .../SarFileCompareItemCommentController.java | 4 +- .../ISarFileCompareItemCommentService.java | 2 +- .../SarFileCompareItemCommentServiceImpl.java | 90 ++++++++++++++++--- 3 files changed, 80 insertions(+), 16 deletions(-) diff --git a/jero-boot/jero-boot-modules/src/main/java/com/jero/modules/compare/controller/SarFileCompareItemCommentController.java b/jero-boot/jero-boot-modules/src/main/java/com/jero/modules/compare/controller/SarFileCompareItemCommentController.java index 2856b2102..e0b474d01 100644 --- a/jero-boot/jero-boot-modules/src/main/java/com/jero/modules/compare/controller/SarFileCompareItemCommentController.java +++ b/jero-boot/jero-boot-modules/src/main/java/com/jero/modules/compare/controller/SarFileCompareItemCommentController.java @@ -165,8 +165,8 @@ public class SarFileCompareItemCommentController extends JeroController list = null; if (includeComments && StringUtils.isEmpty(selectIds)) { //只导出全文评论的情况 @@ -180,8 +199,10 @@ public class SarFileCompareItemCommentServiceImpl extends ServiceImpl sfcItemMap = SarFileCompareItemServiceImpl.queryMapByInfoId(infoId); + SarFileCompareInfo sarFileCompareInfo = sarFileCompareInfoServiceImpl.queryById(infoId); + OutputStream os = null; - Workbook workbook = new XSSFWorkbook(); + Workbook workbook = new HSSFWorkbook(); try { SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss"); String fileName = "导出对比结果 " + sdf.format(new Date()) + ".xlsx"; @@ -195,15 +216,15 @@ public class SarFileCompareItemCommentServiceImpl extends ServiceImpl", "").replace("

", "\r\n"); - row.createCell(2).setCellValue(text); + BufferedImage bufferImg = null; + ByteArrayOutputStream byteArrayOut = new ByteArrayOutputStream(); + addImgdata(text,request.getSession()); + String rowdata = ""; + String rowDataAndPath = (String) request.getSession().getAttribute("txtAndImg"); + for (String s : rowDataAndPath.split("---")) { + if (s.contains(".jpg") || s.contains(".png")) { + File file = new File(filePath + s); + if (file.exists()) { + bufferImg = ImageIO.read(file); + ImageIO.write(bufferImg, "jpg", byteArrayOut); + //anchor主要用于设置图片的属性 + HSSFClientAnchor anchor = new HSSFClientAnchor(0, 0, 600, 200,(short)3, i, (short) 3, i); + patriarch.createPicture(anchor, workbook.addPicture(byteArrayOut.toByteArray(), HSSFWorkbook.PICTURE_TYPE_JPEG)); + + } + } else { + rowdata = rowdata + s; + } + } + + + row.createCell(3).setCellValue(rowdata); row.setRowStyle(cellStyle); } } @@ -235,15 +280,15 @@ public class SarFileCompareItemCommentServiceImpl extends ServiceImpl", "").replace("

", "\r\n"); - row.createCell(5).setCellValue(text); + row.createCell(7).setCellValue(text); row.setRowStyle(cellStyle); } } - row.createCell(6).setCellValue(itemComment.getComment()); + row.createCell(8).setCellValue(itemComment.getComment()); for (int j = 0; j < 7; j++) { Cell cell = row.getCell(j); if (null != cell) { @@ -280,4 +325,23 @@ public class SarFileCompareItemCommentServiceImpl extends ServiceImpl标签内容中的图片路径,并重新按顺序拼接 + * @param text + * @return + */ + private void addImgdata(String text,HttpSession session) { + if (text.contains("<") || text.contains(">")) { + String txtLeft = text.substring(0, text.indexOf("<")); + String txtRight = text.substring(text.indexOf(">") + 1); + String img = text.substring(text.indexOf("<"), text.indexOf(">")); + String path = img.substring(img.lastIndexOf("=") + 1, img.lastIndexOf("\"")); + text = txtLeft + "---" + path + "---" + txtRight; + addImgdata(text, session); + } else { + session.setAttribute("txtAndImg", text); + } + } + } From e5a6df0110bc1b73ad68c58e433a52cd0d26685e Mon Sep 17 00:00:00 2001 From: CD <1103614279@qq.com> Date: Tue, 27 Sep 2022 17:34:12 +0800 Subject: [PATCH 2/3] bug59974 --- .../controller/ExtRepoFolderController.java | 22 ++++++--- .../service/IExtRepoFolderService.java | 10 ++++ .../impl/ExtRepoFolderServiceImpl.java | 46 ++++++++++++++++++- 3 files changed, 70 insertions(+), 8 deletions(-) diff --git a/jero-boot/jero-boot-modules/src/main/java/com/jero/modules/extRepo/controller/ExtRepoFolderController.java b/jero-boot/jero-boot-modules/src/main/java/com/jero/modules/extRepo/controller/ExtRepoFolderController.java index a77ed3230..4c6662775 100644 --- a/jero-boot/jero-boot-modules/src/main/java/com/jero/modules/extRepo/controller/ExtRepoFolderController.java +++ b/jero-boot/jero-boot-modules/src/main/java/com/jero/modules/extRepo/controller/ExtRepoFolderController.java @@ -13,10 +13,12 @@ import com.jero.modules.extRepo.service.IExtRepoFolderService; import io.swagger.annotations.Api; import io.swagger.annotations.ApiOperation; import lombok.extern.slf4j.Slf4j; +import org.apache.commons.lang3.ObjectUtils; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.validation.annotation.Validated; import org.springframework.web.bind.annotation.*; +import javax.servlet.http.HttpSession; import java.util.List; @@ -47,7 +49,7 @@ public class ExtRepoFolderController extends JeroController queryList() { ERFTreeDataVO dataVO = new ERFTreeDataVO(); - dataVO.setManager(extRepoFolderService.isManager()); + dataVO.setManager(true); dataVO.setList(extRepoFolderService.queryTreeList()); return Result.OK(dataVO); } @@ -61,9 +63,11 @@ public class ExtRepoFolderController extends JeroController add(@Validated @RequestBody ExtRepoFolder extRepoFolder) { + public Result add(@Validated @RequestBody ExtRepoFolder extRepoFolder, HttpSession session) { Result result = new Result(); - if (extRepoFolderService.haveManageAuth(extRepoFolder.getSupFolder())) { + session.setAttribute("haveSuperiorManageAuth", false); + extRepoFolderService.haveSuperiorManageAuth(extRepoFolder.getSupFolder(),session); + if (ObjectUtils.isNotEmpty(session.getAttribute("haveSuperiorManageAuth"))&&(Boolean) session.getAttribute("haveSuperiorManageAuth")) { if (!extRepoFolder.isAddSub()) { //增加同级文件夹 ExtRepoFolder folder = extRepoFolderService.queryById(extRepoFolder.getSupFolder()); @@ -94,9 +98,11 @@ public class ExtRepoFolderController extends JeroController edit(@Validated @RequestBody ExtRepoFolder extRepoFolder) { + public Result edit(@Validated @RequestBody ExtRepoFolder extRepoFolder, HttpSession session) { Result result = new Result(); - if (extRepoFolderService.haveManageAuth(extRepoFolder.getId())) { + session.setAttribute("haveSuperiorManageAuth", false); + extRepoFolderService.haveSuperiorManageAuth(extRepoFolder.getSupFolder(),session); + if (ObjectUtils.isNotEmpty(session.getAttribute("haveSuperiorManageAuth"))&&(Boolean) session.getAttribute("haveSuperiorManageAuth")) { extRepoFolderService.editById(extRepoFolder); if (CutEnum.CN.getValue().equals(extRepoFolder.getCut())) { result.success("编辑成功!"); @@ -123,9 +129,11 @@ public class ExtRepoFolderController extends JeroController delete(@RequestParam(name = "id", required = true) String id, - @RequestParam(name = "cut", defaultValue = "cn") String cut) { + @RequestParam(name = "cut", defaultValue = "cn") String cut, HttpSession session) { Result result = new Result(); - if (extRepoFolderService.haveManageAuth(id)) { + session.setAttribute("haveSuperiorManageAuth", false); + extRepoFolderService.haveSuperiorManageAuth(id,session); + if (ObjectUtils.isNotEmpty(session.getAttribute("haveSuperiorManageAuth"))&&(Boolean) session.getAttribute("haveSuperiorManageAuth")) { List resList = extRepoFolderService.getListBySupFolder(id); if (resList.isEmpty()) { ExtRepoFolder erf = extRepoFolderService.queryById(id); diff --git a/jero-boot/jero-boot-modules/src/main/java/com/jero/modules/extRepo/service/IExtRepoFolderService.java b/jero-boot/jero-boot-modules/src/main/java/com/jero/modules/extRepo/service/IExtRepoFolderService.java index de4d4da8f..4a52b0959 100644 --- a/jero-boot/jero-boot-modules/src/main/java/com/jero/modules/extRepo/service/IExtRepoFolderService.java +++ b/jero-boot/jero-boot-modules/src/main/java/com/jero/modules/extRepo/service/IExtRepoFolderService.java @@ -4,6 +4,7 @@ import com.baomidou.mybatisplus.extension.service.IService; import com.jero.modules.extRepo.entity.ERFTreeData; import com.jero.modules.extRepo.entity.ExtRepoFolder; +import javax.servlet.http.HttpSession; import java.util.List; /** @@ -91,4 +92,13 @@ public interface IExtRepoFolderService extends IService { * @return */ List getListBySupFolder(String supFolder); + + /** + * 判断上级是否有权限 + * @param supFolder + * @param session + * @return + */ + void haveSuperiorManageAuth(String supFolder, HttpSession session); + } diff --git a/jero-boot/jero-boot-modules/src/main/java/com/jero/modules/extRepo/service/impl/ExtRepoFolderServiceImpl.java b/jero-boot/jero-boot-modules/src/main/java/com/jero/modules/extRepo/service/impl/ExtRepoFolderServiceImpl.java index 30df6c310..f9ad6ac17 100644 --- a/jero-boot/jero-boot-modules/src/main/java/com/jero/modules/extRepo/service/impl/ExtRepoFolderServiceImpl.java +++ b/jero-boot/jero-boot-modules/src/main/java/com/jero/modules/extRepo/service/impl/ExtRepoFolderServiceImpl.java @@ -14,10 +14,12 @@ import com.jero.modules.extRepo.service.IExtRepoFolderService; import com.jero.modules.system.entity.SysUserRole; import com.jero.modules.system.service.ISysUserRoleService; import org.apache.commons.lang.StringUtils; +import org.apache.commons.lang3.ObjectUtils; import org.apache.shiro.SecurityUtils; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Service; +import javax.servlet.http.HttpSession; import java.util.*; import java.util.stream.Collectors; @@ -246,7 +248,7 @@ public class ExtRepoFolderServiceImpl extends ServiceImpl(),childLevel)); date.sortChildren(); resList.add(date); } else { @@ -257,6 +259,28 @@ public class ExtRepoFolderServiceImpl extends ServiceImpl subFolderTree(String folder,List childTree,int level) { + int childLevel = level + 1; + List listBySupFolder = getListBySupFolder(folder); + for (ExtRepoFolder extRepoFolder : listBySupFolder) { + ERFTreeData date = new ERFTreeData(extRepoFolder.getFolderName(), extRepoFolder.getId(), childLevel, extRepoFolder.getOrderId()); + date.setAuthManageIdsName(extRepoFolder.getAuthManageIdsName()); + date.setAuthManageIds(extRepoFolder.getAuthManageIds()); + date.setAuthViewIdsName(extRepoFolder.getAuthViewIdsName()); + date.setAuthViewIds(extRepoFolder.getAuthViewIds()); + date.setChildren(subFolderTree(extRepoFolder.getId(), new ArrayList(),childLevel)); + date.sortChildren(); + childTree.add(date); + } + return childTree; + } + private List getStringList(String listStr) { List res = new ArrayList<>(); if (null != listStr) { @@ -324,4 +348,24 @@ public class ExtRepoFolderServiceImpl extends ServiceImpl Date: Wed, 28 Sep 2022 10:29:48 +0800 Subject: [PATCH 3/3] =?UTF-8?q?=E4=B8=80=E8=87=B4=E8=AF=84=E4=BC=B0?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../SarFileCompareItemCommentController.java | 13 +++++++++++++ .../ISarFileCompareItemCommentService.java | 2 ++ .../SarFileCompareItemCommentServiceImpl.java | 16 ++++++++++++++++ 3 files changed, 31 insertions(+) diff --git a/jero-boot/jero-boot-modules/src/main/java/com/jero/modules/compare/controller/SarFileCompareItemCommentController.java b/jero-boot/jero-boot-modules/src/main/java/com/jero/modules/compare/controller/SarFileCompareItemCommentController.java index e0b474d01..1db0758fb 100644 --- a/jero-boot/jero-boot-modules/src/main/java/com/jero/modules/compare/controller/SarFileCompareItemCommentController.java +++ b/jero-boot/jero-boot-modules/src/main/java/com/jero/modules/compare/controller/SarFileCompareItemCommentController.java @@ -86,6 +86,19 @@ public class SarFileCompareItemCommentController extends JeroController consensusAssessment(@Validated @RequestBody SarFileCompareItemComment sarFileCompareItemComment) { + sarFileCompareItemCommentService.consensusAssessment(sarFileCompareItemComment); + return Result.OK("添加成功!"); + } + /** * 编辑 * diff --git a/jero-boot/jero-boot-modules/src/main/java/com/jero/modules/compare/service/ISarFileCompareItemCommentService.java b/jero-boot/jero-boot-modules/src/main/java/com/jero/modules/compare/service/ISarFileCompareItemCommentService.java index 0b8e05896..b9f86323e 100644 --- a/jero-boot/jero-boot-modules/src/main/java/com/jero/modules/compare/service/ISarFileCompareItemCommentService.java +++ b/jero-boot/jero-boot-modules/src/main/java/com/jero/modules/compare/service/ISarFileCompareItemCommentService.java @@ -68,4 +68,6 @@ public interface ISarFileCompareItemCommentService extends IService