From 9ce60a50cbf7cc6ae74aa440e7a6b8b5fe4ad6b4 Mon Sep 17 00:00:00 2001 From: zhangyongzhangyong <2012005003@qq.coom> Date: Tue, 2 Jun 2020 10:02:36 +0800 Subject: [PATCH] =?UTF-8?q?=E6=B6=88=E6=81=AF=E9=80=9A=E7=9F=A5-=E9=80=9A?= =?UTF-8?q?=E7=9F=A5=E7=AE=A1=E7=90=86=EF=BC=8C=E5=A2=9E=E5=8A=A0=E9=80=9A?= =?UTF-8?q?=E7=9F=A5=E9=83=A8=E9=97=A8=E5=9B=9E=E6=98=BE?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../com/elink/esua/epdc/dao/NoticeDao.java | 9 +++++ .../epdc/service/impl/NoticeServiceImpl.java | 35 ++++++++++++++++--- .../src/main/resources/mapper/NoticeDao.xml | 9 +++++ 3 files changed, 48 insertions(+), 5 deletions(-) diff --git a/esua-epdc/epdc-module/epdc-news/epdc-news-server/src/main/java/com/elink/esua/epdc/dao/NoticeDao.java b/esua-epdc/epdc-module/epdc-news/epdc-news-server/src/main/java/com/elink/esua/epdc/dao/NoticeDao.java index 8fa6f286..0caa2349 100644 --- a/esua-epdc/epdc-module/epdc-news/epdc-news-server/src/main/java/com/elink/esua/epdc/dao/NoticeDao.java +++ b/esua-epdc/epdc-module/epdc-news/epdc-news-server/src/main/java/com/elink/esua/epdc/dao/NoticeDao.java @@ -121,4 +121,13 @@ public interface NoticeDao extends BaseDao { * @Date 09:46 2020-05-19 **/ List selectListV2AppNotice(EpdcNoticeListV2FormDTO formDto); + + /** + * 根据主键ID, 查询通知的部门id + * @param noticeId + * @return java.util.List + * @Author zhangyong + * @Date 09:43 2020-06-02 + **/ + List selectListNoticeDeptIdInfo(String noticeId); } diff --git a/esua-epdc/epdc-module/epdc-news/epdc-news-server/src/main/java/com/elink/esua/epdc/service/impl/NoticeServiceImpl.java b/esua-epdc/epdc-module/epdc-news/epdc-news-server/src/main/java/com/elink/esua/epdc/service/impl/NoticeServiceImpl.java index 4fc18211..52f51025 100644 --- a/esua-epdc/epdc-module/epdc-news/epdc-news-server/src/main/java/com/elink/esua/epdc/service/impl/NoticeServiceImpl.java +++ b/esua-epdc/epdc-module/epdc-news/epdc-news-server/src/main/java/com/elink/esua/epdc/service/impl/NoticeServiceImpl.java @@ -122,14 +122,39 @@ public class NoticeServiceImpl extends BaseServiceImpl public NoticeDTO get(String id) { NoticeEntity entity = baseDao.selectById(id); NoticeDTO dto = ConvertUtils.sourceToTarget(entity, NoticeDTO.class); - /*if(StringUtils.isNotBlank(dto.getAllDeptIds())){ - String[] idsShow = dto.getAllDeptIds().split(","); - List ids = Arrays.asList(idsShow); - dto.setAllDeptIdsShow(ids.subList(1,ids.size())); - }*/ + + // 通知部门回显 + List listNoticeDeptId = baseDao.selectListNoticeDeptIdInfo(dto.getId()); + dto.setAllDeptIdsShow(this.getParentAllDeptInfo(listNoticeDeptId)); return dto; } + /** + * 根据部门id, 查询所有的父级id, 最后拼接起来 + * @param listDeptId + * @return java.util.List + * @Author zhangyong + * @Date 09:55 2020-06-02 + **/ + private List getParentAllDeptInfo(List listDeptId){ + // [0,1,2,3] + List allDeptIdsShowList = new ArrayList<>(); + for (Long list : listDeptId){ + // 查询父级部门 + Result parentAndAllDept = adminFeignClient.getParentAndAllDept(list.toString()); + ParentAndAllDeptDTO parentAndAllDeptDTO = parentAndAllDept.getData(); + String allDeptIds = parentAndAllDeptDTO.getAllDeptIds(); + String[] deptIdsShow = allDeptIds.split(","); + Long[] allDeptIdsShowLong = new Long[deptIdsShow.length]; + // 从第一级开始保存 + for (int i = 0; i <= deptIdsShow.length -1; i++){ + allDeptIdsShowLong[i] = Long.valueOf(deptIdsShow[i]); + } + allDeptIdsShowList.add(allDeptIdsShowLong); + } + return allDeptIdsShowList; + } + @Override @Transactional(rollbackFor = Exception.class) public void save(NoticeDTO dto) { diff --git a/esua-epdc/epdc-module/epdc-news/epdc-news-server/src/main/resources/mapper/NoticeDao.xml b/esua-epdc/epdc-module/epdc-news/epdc-news-server/src/main/resources/mapper/NoticeDao.xml index 46e22240..29ebb686 100644 --- a/esua-epdc/epdc-module/epdc-news/epdc-news-server/src/main/resources/mapper/NoticeDao.xml +++ b/esua-epdc/epdc-module/epdc-news/epdc-news-server/src/main/resources/mapper/NoticeDao.xml @@ -116,4 +116,13 @@ en.RELEASE_TIME DESC LIMIT #{pageIndex},#{pageSize} + +