diff --git a/laws-module-system/src/main/java/com/jero/modules/system/controller/SysDepartController.java b/laws-module-system/src/main/java/com/jero/modules/system/controller/SysDepartController.java index 333187bf..80da4d55 100644 --- a/laws-module-system/src/main/java/com/jero/modules/system/controller/SysDepartController.java +++ b/laws-module-system/src/main/java/com/jero/modules/system/controller/SysDepartController.java @@ -45,6 +45,7 @@ import javax.servlet.http.HttpServletRequest; import javax.servlet.http.HttpServletResponse; import java.io.IOException; import java.util.*; +import java.util.stream.Collectors; /** *

@@ -341,11 +342,26 @@ public class SysDepartController { */ @RequiresPermissions("sys:depart:export") @RequestMapping(value = "/exportXls") - public ModelAndView exportXls(SysDepart sysDepart,HttpServletRequest request) { - // Step.1 组装查询条件 + public ModelAndView exportXls(SysDepart sysDepart,HttpServletRequest request, + @RequestParam(name = "keyWord", required = false) String keyWord, + @RequestParam(name = "myDeptSearch", required = false) String myDeptSearch) { + List collectIds = new ArrayList<>(); + if (StringUtils.isNotBlank(keyWord)) { + LoginUser user = (LoginUser) SecurityUtils.getSubject().getPrincipal(); + String departIds = null; + if(oConvertUtils.isNotEmpty(user.getUserIdentity()) && user.getUserIdentity().equals( CommonConstant.USER_IDENTITY_2 )){ + departIds = user.getDepartIds(); + } + List treeList = this.sysDepartService.searhBy(keyWord,myDeptSearch,departIds); + collectIds = treeList.stream().map(SysDepartTreeModel::getId).collect(Collectors.toList()); + } + // Step.1 组装查询条件 QueryWrapper queryWrapper = QueryGenerator.initQueryWrapper(sysDepart, request.getParameterMap()); //Step.2 AutoPoi 导出Excel ModelAndView mv = new ModelAndView(new JeecgEntityExcelView()); + if (!collectIds.isEmpty()) { + queryWrapper.in("id",collectIds); + } String selections = request.getParameter("selections"); if(!oConvertUtils.isEmpty(selections)){ queryWrapper.in("id",selections.split(","));