diff --git a/dangan-common/src/main/java/com/da/common/core/domain/entity/DaCatalog.java b/dangan-common/src/main/java/com/da/common/core/domain/entity/DaCatalog.java index cfe62fd..0e6c760 100644 --- a/dangan-common/src/main/java/com/da/common/core/domain/entity/DaCatalog.java +++ b/dangan-common/src/main/java/com/da/common/core/domain/entity/DaCatalog.java @@ -55,6 +55,28 @@ public class DaCatalog extends BaseEntity /** 当前目录及子目录识别数量 */ private Long sbCount; + /** 顺序排序 */ + private String xuhao; + + /** 拼音排序 */ + private String spell; + + public String getXuhao() { + return xuhao; + } + + public void setXuhao(String xuhao) { + this.xuhao = xuhao; + } + + public String getSpell() { + return spell; + } + + public void setSpell(String spell) { + this.spell = spell; + } + public Long getSbCount() { return sbCount; } diff --git a/dangan-dangan/src/main/java/com/da/dangan/controller/DaCatalogController.java b/dangan-dangan/src/main/java/com/da/dangan/controller/DaCatalogController.java index 371373d..6191bd3 100644 --- a/dangan-dangan/src/main/java/com/da/dangan/controller/DaCatalogController.java +++ b/dangan-dangan/src/main/java/com/da/dangan/controller/DaCatalogController.java @@ -39,6 +39,31 @@ public class DaCatalogController extends BaseController } /** + * 根据档案目录列表统计已识别数量 + * @param daCatalog + * @return + */ + //@PreAuthorize("@ss.hasPermi('dangan:catalog:list')") + @GetMapping("/count") + public AjaxResult count(DaCatalog daCatalog) + { + List catalogs = daCatalogService.selectDaCatalogListAndcount(daCatalog, getLoginUser()); + return success(catalogs); + } + + /** + * 获取当前第一级子目录的order_num最大值 新增的时候顺序值默认用这个值 + */ + @GetMapping("/number/{id}") + public AjaxResult getNumber(@PathVariable("id") Long id) + { + AjaxResult result = new AjaxResult(); + Integer num = daCatalogService.selectNumByPid(id); + num = num!=null?++num:0; + return result.success("操作成功").put("orderNum",num); + } + /** + * 获取目录下拉树列表 */ @GetMapping("/treeselect") diff --git a/dangan-dangan/src/main/java/com/da/dangan/mapper/DaBirthDjMapper.java b/dangan-dangan/src/main/java/com/da/dangan/mapper/DaBirthDjMapper.java index 7f7fb97..d4af39e 100644 --- a/dangan-dangan/src/main/java/com/da/dangan/mapper/DaBirthDjMapper.java +++ b/dangan-dangan/src/main/java/com/da/dangan/mapper/DaBirthDjMapper.java @@ -65,4 +65,6 @@ public interface DaBirthDjMapper Long selectCountByMuIds(List ids); List searchDaBirthDjList1(DaBirthDj daBirthDj); + + List selectCountByMuIds2(List> list); } diff --git a/dangan-dangan/src/main/java/com/da/dangan/mapper/DaCatalogMapper.java b/dangan-dangan/src/main/java/com/da/dangan/mapper/DaCatalogMapper.java index c6343bd..f26c533 100644 --- a/dangan-dangan/src/main/java/com/da/dangan/mapper/DaCatalogMapper.java +++ b/dangan-dangan/src/main/java/com/da/dangan/mapper/DaCatalogMapper.java @@ -68,4 +68,6 @@ public interface DaCatalogMapper List selectCatalogIdsByUserId(Long userId); List selectContainIdsById(String id); + + Integer selectNumByPid(Long id); } diff --git a/dangan-dangan/src/main/java/com/da/dangan/mapper/DaCzrkdjMapper.java b/dangan-dangan/src/main/java/com/da/dangan/mapper/DaCzrkdjMapper.java index 0aba62e..b1044b6 100644 --- a/dangan-dangan/src/main/java/com/da/dangan/mapper/DaCzrkdjMapper.java +++ b/dangan-dangan/src/main/java/com/da/dangan/mapper/DaCzrkdjMapper.java @@ -65,4 +65,6 @@ public interface DaCzrkdjMapper Long selectCountByMuIds(List muIds); List searchDaCzrkdjList1(DaCzrkdj daCzrkdj); + + List selectCountByMuIds2(List> list); } diff --git a/dangan-dangan/src/main/java/com/da/dangan/mapper/DaQyzMapper.java b/dangan-dangan/src/main/java/com/da/dangan/mapper/DaQyzMapper.java index bde0e79..38e4e96 100644 --- a/dangan-dangan/src/main/java/com/da/dangan/mapper/DaQyzMapper.java +++ b/dangan-dangan/src/main/java/com/da/dangan/mapper/DaQyzMapper.java @@ -65,4 +65,6 @@ public interface DaQyzMapper Long selectCountByMuIds(List ids); List searchDaQyzList1(DaQyz daQyz); + + List selectCountByMuIds2(List> list); } diff --git a/dangan-dangan/src/main/java/com/da/dangan/mapper/DaYtzmMapper.java b/dangan-dangan/src/main/java/com/da/dangan/mapper/DaYtzmMapper.java index b6cd43b..bf41036 100644 --- a/dangan-dangan/src/main/java/com/da/dangan/mapper/DaYtzmMapper.java +++ b/dangan-dangan/src/main/java/com/da/dangan/mapper/DaYtzmMapper.java @@ -65,4 +65,6 @@ public interface DaYtzmMapper Long selectCountByMuIds(List ids); List searchYtzmList1(DaYtzm daYtzm); + + List selectCountByMuIds2(List> list); } diff --git a/dangan-dangan/src/main/java/com/da/dangan/mapper/DaZfnyhkcgMapper.java b/dangan-dangan/src/main/java/com/da/dangan/mapper/DaZfnyhkcgMapper.java index 0e877b3..3ef040d 100644 --- a/dangan-dangan/src/main/java/com/da/dangan/mapper/DaZfnyhkcgMapper.java +++ b/dangan-dangan/src/main/java/com/da/dangan/mapper/DaZfnyhkcgMapper.java @@ -65,4 +65,6 @@ public interface DaZfnyhkcgMapper Long selectCountByMuIds(List ids); List searchDaZfnyhkcgList1(DaZfnyhkcg daZfnyhkcg); + + List selectCountByMuIds2(List> list); } diff --git a/dangan-dangan/src/main/java/com/da/dangan/mapper/DaZqzMapper.java b/dangan-dangan/src/main/java/com/da/dangan/mapper/DaZqzMapper.java index f23b521..f717647 100644 --- a/dangan-dangan/src/main/java/com/da/dangan/mapper/DaZqzMapper.java +++ b/dangan-dangan/src/main/java/com/da/dangan/mapper/DaZqzMapper.java @@ -65,4 +65,6 @@ public interface DaZqzMapper Long selectCountByMuIds(List ids); List searchDaZqzList1(DaZqz daZqz); + + List selectCountByMuIds2(List> list); } diff --git a/dangan-dangan/src/main/java/com/da/dangan/service/IDaCatalogService.java b/dangan-dangan/src/main/java/com/da/dangan/service/IDaCatalogService.java index cef0408..b49b0d6 100644 --- a/dangan-dangan/src/main/java/com/da/dangan/service/IDaCatalogService.java +++ b/dangan-dangan/src/main/java/com/da/dangan/service/IDaCatalogService.java @@ -84,4 +84,8 @@ public interface IDaCatalogService List selectAllDaCatalogList(DaCatalog daCatalog); + + public List selectDaCatalogListAndcount(DaCatalog daCatalog, LoginUser user); + + Integer selectNumByPid(Long id); } diff --git a/dangan-dangan/src/main/java/com/da/dangan/service/impl/DaCatalogServiceImpl.java b/dangan-dangan/src/main/java/com/da/dangan/service/impl/DaCatalogServiceImpl.java index b494715..d9aff4e 100644 --- a/dangan-dangan/src/main/java/com/da/dangan/service/impl/DaCatalogServiceImpl.java +++ b/dangan-dangan/src/main/java/com/da/dangan/service/impl/DaCatalogServiceImpl.java @@ -15,20 +15,17 @@ import com.da.dangan.service.IDaCatalogService; import org.springframework.stereotype.Service; import javax.annotation.Resource; -import java.util.ArrayList; -import java.util.Iterator; -import java.util.List; +import java.util.*; import java.util.stream.Collectors; /** * 档案目录Service业务层处理 - * + * * @author hs * @date 2024-05-08 */ @Service -public class DaCatalogServiceImpl implements IDaCatalogService -{ +public class DaCatalogServiceImpl implements IDaCatalogService { @Resource private DaCatalogMapper daCatalogMapper; @Resource @@ -45,15 +42,15 @@ public class DaCatalogServiceImpl implements IDaCatalogService private DaZfnyhkcgMapper daZfnyhkcgMapper; @Resource private DaZqzMapper daZqzMapper; + /** * 查询档案目录 - * + * * @param id 档案目录主键 * @return 档案目录 */ @Override - public DaCatalog selectDaCatalogById(Long id) - { + public DaCatalog selectDaCatalogById(Long id) { return daCatalogMapper.selectDaCatalogById(id); } @@ -75,22 +72,18 @@ public class DaCatalogServiceImpl implements IDaCatalogService * @return 树结构列表 */ @Override - public List buildCatalogTree(List catalogs) - { + public List buildCatalogTree(List catalogs) { List returnList = new ArrayList<>(); List tempList = catalogs.stream().map(DaCatalog::getId).collect(Collectors.toList()); - for (Iterator iterator = catalogs.iterator(); iterator.hasNext();) - { + for (Iterator iterator = catalogs.iterator(); iterator.hasNext(); ) { DaCatalog catalog = iterator.next(); // 如果是顶级节点, 遍历该父节点的所有子节点 - if (!tempList.contains(catalog.getPid())) - { + if (!tempList.contains(catalog.getPid())) { recursionFn(catalogs, catalog); returnList.add(catalog); } } - if (returnList.isEmpty()) - { + if (returnList.isEmpty()) { returnList = catalogs; } return returnList; @@ -98,6 +91,7 @@ public class DaCatalogServiceImpl implements IDaCatalogService /** * 查询所有目录列表 + * * @param daCatalog * @return */ @@ -113,16 +107,30 @@ public class DaCatalogServiceImpl implements IDaCatalogService * @return 档案目录 */ @Override - public List selectDaCatalogList(DaCatalog daCatalog, LoginUser loginUser) - { + public List selectDaCatalogList(DaCatalog daCatalog, LoginUser loginUser) { + List catalogList; + // 超管及角色为管理员显示所有目录信息 + if (SysUser.isAdmin(loginUser.getUserId()) || + loginUser.getUser().getRoles().stream().anyMatch(sysRole -> sysRole.getRoleKey().equals("sysAdmin"))) { + catalogList = daCatalogMapper.selectDaCatalogList(daCatalog); + } else { //根据用户权限显示目录信息 + daCatalog.getParams().put("userId", loginUser.getUserId()); + catalogList = daCatalogMapper.selectDaCatalogListByUserId(daCatalog); + } + return catalogList; + } + + /** + * 根据档案目录列表统计已识别 + */ + @Override + public List selectDaCatalogListAndcount(DaCatalog daCatalog, LoginUser loginUser) { List catalogList; // 超管及角色为管理员显示所有目录信息 - if (SysUser.isAdmin(loginUser.getUserId())|| - loginUser.getUser().getRoles().stream().anyMatch(sysRole -> sysRole.getRoleKey().equals("sysAdmin"))) - { + if (SysUser.isAdmin(loginUser.getUserId()) || + loginUser.getUser().getRoles().stream().anyMatch(sysRole -> sysRole.getRoleKey().equals("sysAdmin"))) { catalogList = daCatalogMapper.selectDaCatalogList(daCatalog); - } else - { //根据用户权限显示目录信息 + } else { //根据用户权限显示目录信息 daCatalog.getParams().put("userId", loginUser.getUserId()); catalogList = daCatalogMapper.selectDaCatalogListByUserId(daCatalog); } @@ -173,26 +181,94 @@ public class DaCatalogServiceImpl implements IDaCatalogService } } + //第二种方式 + /*Map> mapCollect = catalogList.stream().collect(Collectors.groupingBy(DaCatalog::getYwType)); + //将map集合转为set集合遍历 + Set>> entries = mapCollect.entrySet(); + for (Map.Entry> m : entries) { + List counts = new ArrayList<>();//存储结果 + List> idsList = new ArrayList<>();//存储参数 + for (int i = 0; i < m.getValue().size(); i++) { + List ids = new ArrayList<>(); + //查询子目录的所有id集合 + ids=daCatalogMapper.selectContainIdsById(m.getValue().get(i).getId().toString()); + ids.add(m.getValue().get(i).getId()); + idsList.add(ids); + } + switch (m.getKey()) { + case "option1": //常住人口登记表1 + //break; + case "option2": //常住卡 + // break; + case "option3": //常住人口登记表2 + //break; + case "option9": //常住人口登记表3 + counts = daCzrkdjMapper.selectCountByMuIds2(idsList); + for (int i = 0, j = 0; i < m.getValue().size(); i++, j++) { + m.getValue().get(i).setSbCount(counts.get(j)); + } + break; + case "option4": + //出生医学证明 + counts = daBirthDjMapper.selectCountByMuIds2(idsList); + for (int i = 0, j = 0; i < m.getValue().size(); i++, j++) { + m.getValue().get(i).setSbCount(counts.get(j)); + } + break; + case "option5": + //迁移证 + counts = daQyzMapper.selectCountByMuIds2(idsList); + for (int i = 0, j = 0; i < m.getValue().size(); i++, j++) { + m.getValue().get(i).setSbCount(counts.get(j)); + } + break; + case "option6": + //一胎证明 + counts = daYtzmMapper.selectCountByMuIds2(idsList); + for (int i = 0, j = 0; i < m.getValue().size(); i++, j++) { + m.getValue().get(i).setSbCount(counts.get(j)); + } + break; + case "option7": + //转非农业人口批复存根 + counts = daZfnyhkcgMapper.selectCountByMuIds2(idsList); + for (int i = 0, j = 0; i < m.getValue().size(); i++, j++) { + m.getValue().get(i).setSbCount(counts.get(j)); + } + break; + case "option8": + //准迁证 + counts = daZqzMapper.selectCountByMuIds2(idsList); + for (int i = 0, j = 0; i < m.getValue().size(); i++, j++) { + m.getValue().get(i).setSbCount(counts.get(j)); + } + break; + } + }*/ return catalogList; } + @Override + public Integer selectNumByPid(Long id) { + + return daCatalogMapper.selectNumByPid(id); + } + /** * 新增档案目录 - * + * * @param daCatalog 档案目录 * @return 结果 */ @Override - public int insertDaCatalog(DaCatalog daCatalog) - { + public int insertDaCatalog(DaCatalog daCatalog) { daCatalog.setCreateTime(DateUtils.getNowDate()); - if(daCatalog.getPid()==0){ //代表添加的是主目录 + if (daCatalog.getPid() == 0) { //代表添加的是主目录 daCatalog.setAncestors(daCatalog.getPid().toString()); - }else{ + } else { DaCatalog info = daCatalogMapper.selectDaCatalogById(daCatalog.getPid()); // 如果父节点不为正常状态,则不允许新增子节点 - if (!UserConstants.DEPT_NORMAL.equals(info.getStatus())) - { + if (!UserConstants.DEPT_NORMAL.equals(info.getStatus())) { throw new ServiceException("此目录停用,不允许新增"); } daCatalog.setAncestors(info.getAncestors() + "," + daCatalog.getPid()); @@ -203,13 +279,12 @@ public class DaCatalogServiceImpl implements IDaCatalogService /** * 修改档案目录 - * + * * @param daCatalog 档案目录 * @return 结果 */ @Override - public int updateDaCatalog(DaCatalog daCatalog) - { + public int updateDaCatalog(DaCatalog daCatalog) { daCatalog.setUpdateTime(DateUtils.getNowDate()); return daCatalogMapper.updateDaCatalog(daCatalog); } @@ -221,24 +296,23 @@ public class DaCatalogServiceImpl implements IDaCatalogService * @return 结果 */ @Override - public AjaxResult deleteDaCatalogById(Long id) - { + public AjaxResult deleteDaCatalogById(Long id) { DaCatalog catalog = new DaCatalog(); catalog.setPid(id); //有子级目录的不能删除 List daCatalogs = daCatalogMapper.selectDaCatalogList(catalog); - if(daCatalogs!=null&&daCatalogs.size()>0){ + if (daCatalogs != null && daCatalogs.size() > 0) { return AjaxResult.error("有子级目录,不能删除"); } //目录下已有上传图片的 不能删除 DaPicturesRecard picturesRecard = new DaPicturesRecard(); picturesRecard.setMuId(id); List daPicturesRecards = daPicturesRecardMapper.selectDaPicturesRecardList(picturesRecard); - if(daPicturesRecards!=null&&daPicturesRecards.size()>0){ + if (daPicturesRecards != null && daPicturesRecards.size() > 0) { return AjaxResult.error("目录下有已上传的图片,不能删除"); } - int i= daCatalogMapper.deleteDaCatalogById(id); - if(i>0){ + int i = daCatalogMapper.deleteDaCatalogById(id); + if (i > 0) { return AjaxResult.success(); } return AjaxResult.error(); @@ -246,13 +320,12 @@ public class DaCatalogServiceImpl implements IDaCatalogService /** * 批量删除档案目录 - * + * * @param ids 需要删除的档案目录主键 * @return 结果 */ @Override - public int deleteDaCatalogByIds(Long[] ids) - { + public int deleteDaCatalogByIds(Long[] ids) { return daCatalogMapper.deleteDaCatalogByIds(ids); } @@ -260,8 +333,7 @@ public class DaCatalogServiceImpl implements IDaCatalogService public boolean checkDaCatalogNameUnique(DaCatalog daCatalog) { Long daCatalogId = StringUtils.isNull(daCatalog.getId()) ? -1L : daCatalog.getId(); DaCatalog info = daCatalogMapper.checkDaCatalogNameUnique(daCatalog.getMuName(), daCatalog.getPid()); - if (StringUtils.isNotNull(info) && info.getId().longValue() != daCatalogId.longValue()) - { + if (StringUtils.isNotNull(info) && info.getId().longValue() != daCatalogId.longValue()) { return UserConstants.NOT_UNIQUE; } return UserConstants.UNIQUE; @@ -271,17 +343,14 @@ public class DaCatalogServiceImpl implements IDaCatalogService * 递归列表 * * @param list 分类表 - * @param t 子节点 + * @param t 子节点 */ - private void recursionFn(List list, DaCatalog t) - { + private void recursionFn(List list, DaCatalog t) { // 得到子节点列表 List childList = getChildList(list, t); t.setChildren(childList); - for (DaCatalog tChild : childList) - { - if (hasChild(list, tChild)) - { + for (DaCatalog tChild : childList) { + if (hasChild(list, tChild)) { recursionFn(list, tChild); } } @@ -290,15 +359,12 @@ public class DaCatalogServiceImpl implements IDaCatalogService /** * 得到子节点列表 */ - private List getChildList(List list, DaCatalog t) - { + private List getChildList(List list, DaCatalog t) { List tlist = new ArrayList(); Iterator it = list.iterator(); - while (it.hasNext()) - { + while (it.hasNext()) { DaCatalog n = (DaCatalog) it.next(); - if (n.getPid().longValue() == t.getId().longValue()) - { + if (n.getPid().longValue() == t.getId().longValue()) { tlist.add(n); } } @@ -308,8 +374,7 @@ public class DaCatalogServiceImpl implements IDaCatalogService /** * 判断是否有子节点 */ - private boolean hasChild(List list, DaCatalog t) - { + private boolean hasChild(List list, DaCatalog t) { return getChildList(list, t).size() > 0; } diff --git a/dangan-dangan/src/main/resources/mapper/dangan/DaBirthDjMapper.xml b/dangan-dangan/src/main/resources/mapper/dangan/DaBirthDjMapper.xml index 9f3c243..746b471 100644 --- a/dangan-dangan/src/main/resources/mapper/dangan/DaBirthDjMapper.xml +++ b/dangan-dangan/src/main/resources/mapper/dangan/DaBirthDjMapper.xml @@ -176,6 +176,20 @@ #{muId} + + insert into da_birth_dj diff --git a/dangan-dangan/src/main/resources/mapper/dangan/DaCatalogMapper.xml b/dangan-dangan/src/main/resources/mapper/dangan/DaCatalogMapper.xml index b099120..1249828 100644 --- a/dangan-dangan/src/main/resources/mapper/dangan/DaCatalogMapper.xml +++ b/dangan-dangan/src/main/resources/mapper/dangan/DaCatalogMapper.xml @@ -1,23 +1,23 @@ + PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" + "http://mybatis.org/dtd/mybatis-3-mapper.dtd"> - + - - - - - - - - - - - - - + + + + + + + + + + + + + @@ -26,18 +26,78 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" + + + + + - + - + @@ -89,7 +141,7 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" create_time, update_by, update_time, - + #{muName}, #{pid}, @@ -103,7 +155,7 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" #{createTime}, #{updateBy}, #{updateTime}, - + @@ -130,7 +182,7 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" - delete from da_catalog where id in + delete from da_catalog where id in #{id} diff --git a/dangan-dangan/src/main/resources/mapper/dangan/DaCzrkdjMapper.xml b/dangan-dangan/src/main/resources/mapper/dangan/DaCzrkdjMapper.xml index 57b7064..f4e2426 100644 --- a/dangan-dangan/src/main/resources/mapper/dangan/DaCzrkdjMapper.xml +++ b/dangan-dangan/src/main/resources/mapper/dangan/DaCzrkdjMapper.xml @@ -183,11 +183,11 @@ or card_id like concat('%', #{name}, '%') )--> and ( - name_p LIKE #{name} + name_p LIKE #{name} or hz_p LIKE #{name} or - jhr1_p LIKE #{name} + jhr1_p LIKE #{name} or jhr2_p LIKE #{name} ) @@ -229,6 +229,21 @@ + + + insert into da_czrkdj diff --git a/dangan-dangan/src/main/resources/mapper/dangan/DaQyzMapper.xml b/dangan-dangan/src/main/resources/mapper/dangan/DaQyzMapper.xml index 67c037f..310dff7 100644 --- a/dangan-dangan/src/main/resources/mapper/dangan/DaQyzMapper.xml +++ b/dangan-dangan/src/main/resources/mapper/dangan/DaQyzMapper.xml @@ -188,6 +188,20 @@ #{muId} + + insert into da_qyz diff --git a/dangan-dangan/src/main/resources/mapper/dangan/DaYtzmMapper.xml b/dangan-dangan/src/main/resources/mapper/dangan/DaYtzmMapper.xml index a1ebfb6..94ad905 100644 --- a/dangan-dangan/src/main/resources/mapper/dangan/DaYtzmMapper.xml +++ b/dangan-dangan/src/main/resources/mapper/dangan/DaYtzmMapper.xml @@ -157,7 +157,20 @@ #{muId} - + + insert into da_ytzm diff --git a/dangan-dangan/src/main/resources/mapper/dangan/DaZfnyhkcgMapper.xml b/dangan-dangan/src/main/resources/mapper/dangan/DaZfnyhkcgMapper.xml index 7419b2e..11e18c1 100644 --- a/dangan-dangan/src/main/resources/mapper/dangan/DaZfnyhkcgMapper.xml +++ b/dangan-dangan/src/main/resources/mapper/dangan/DaZfnyhkcgMapper.xml @@ -197,6 +197,20 @@ #{muId} + + insert into da_zfnyhkcg diff --git a/dangan-dangan/src/main/resources/mapper/dangan/DaZqzMapper.xml b/dangan-dangan/src/main/resources/mapper/dangan/DaZqzMapper.xml index 0a362dc..aeeee0c 100644 --- a/dangan-dangan/src/main/resources/mapper/dangan/DaZqzMapper.xml +++ b/dangan-dangan/src/main/resources/mapper/dangan/DaZqzMapper.xml @@ -220,7 +220,20 @@ #{muId} - + + insert into da_zqz