diff --git a/laws-modules/src/main/java/com/jero/modules/laws/system/controller/LawsContactManageController.java b/laws-modules/src/main/java/com/jero/modules/laws/system/controller/LawsContactManageController.java index efc88ee3..c879b04c 100644 --- a/laws-modules/src/main/java/com/jero/modules/laws/system/controller/LawsContactManageController.java +++ b/laws-modules/src/main/java/com/jero/modules/laws/system/controller/LawsContactManageController.java @@ -63,6 +63,28 @@ public class LawsContactManageController extends JeroController> pageMerge(LawsContactManage lawsContactManage, + @RequestParam(name="pageNo", defaultValue="1") Integer pageNo, + @RequestParam(name="pageSize", defaultValue="10") Integer pageSize, + HttpServletRequest req) { + IPage pageList = lawsContactManageService.queryPageMerge(lawsContactManage, pageNo, pageSize, req); + return Result.OK(pageList); + } + /** * 列表查询 * diff --git a/laws-modules/src/main/java/com/jero/modules/laws/system/service/ILawsContactManageService.java b/laws-modules/src/main/java/com/jero/modules/laws/system/service/ILawsContactManageService.java index bba184e2..67a855ea 100644 --- a/laws-modules/src/main/java/com/jero/modules/laws/system/service/ILawsContactManageService.java +++ b/laws-modules/src/main/java/com/jero/modules/laws/system/service/ILawsContactManageService.java @@ -26,6 +26,17 @@ public interface ILawsContactManageService extends IService { */ IPage queryPage(LawsContactManage lawsContactManage, Integer pageNo, Integer pageSize, HttpServletRequest req); + /** + * 分页查询 + * + * @param lawsContactManage + * @param pageNo + * @param pageSize + * @param req + * @return + */ + IPage queryPageMerge(LawsContactManage lawsContactManage, Integer pageNo, Integer pageSize, HttpServletRequest req); + /** * 列表查询 * diff --git a/laws-modules/src/main/java/com/jero/modules/laws/system/service/impl/LawsContactManageServiceImpl.java b/laws-modules/src/main/java/com/jero/modules/laws/system/service/impl/LawsContactManageServiceImpl.java index 2798e71e..e8c5b1c8 100644 --- a/laws-modules/src/main/java/com/jero/modules/laws/system/service/impl/LawsContactManageServiceImpl.java +++ b/laws-modules/src/main/java/com/jero/modules/laws/system/service/impl/LawsContactManageServiceImpl.java @@ -65,6 +65,37 @@ public class LawsContactManageServiceImpl extends ServiceImpl queryPageMerge(LawsContactManage lawsContactManage, Integer pageNo, Integer pageSize, + HttpServletRequest req) { + QueryWrapper queryWrapper = QueryGenerator.initQueryWrapper(lawsContactManage, req.getParameterMap()); + queryWrapper.select("group_concat(id) as id, group_concat(create_by) as create_by, max(create_time) as create_time, " + + "group_concat(update_by) as update_by, max(update_time) as update_time, group_concat(org_code) as org_code," + + " group_concat(depart_name) as depart_name, group_concat(depart_id) as depart_id, " + + "group_concat(engineer_id) as engineer_id, group_concat(leader_id) as leader_id,contact_id "); + String contactId = "contact_id"; + if (StringUtils.isNotBlank(lawsContactManage.getContact())){ + List userList = sysUserService.list(new LambdaQueryWrapper() + .like(SysUser::getRealname, lawsContactManage.getContact())); + if (userList.isEmpty()){ + return new Page<>(pageNo, pageSize); + } + queryWrapper.in(contactId, userList.stream().map(SysUser::getId).collect(Collectors.toList())); + } + queryWrapper.groupBy(contactId); + Page page = new Page<>(pageNo, pageSize); + return page(page, queryWrapper); + } + /** * 列表查询 *