业务辅助表-业务字典管理平台 分页展示条件搜索,(新增修改部分功能未完善)

This commit is contained in:
zhangshilin
2018-03-01 19:13:57 +08:00
parent d2ff00a622
commit b07485f7f5
15 changed files with 1016 additions and 321 deletions

View File

@@ -18,8 +18,6 @@ import org.springframework.web.servlet.mvc.support.RedirectAttributes;
import com.google.common.collect.Lists;
import com.google.common.collect.Maps;
import com.nis.domain.Page;
import com.nis.domain.SysDataDictionaryName;
import com.nis.domain.SysMenu;
import com.nis.domain.configuration.ServiceDictInfo;
import com.nis.util.StringUtil;
import com.nis.util.StringUtils;
@@ -58,7 +56,7 @@ public class ServiceDictInfoController extends BaseController {
/**
* 查询业务辅助表-业务字典信息列表
* 查询业务辅助表-业务字典信息列表(无条件分页查询)
* @param serviceDictInfo
* @param request
* @param response
@@ -68,13 +66,66 @@ public class ServiceDictInfoController extends BaseController {
@RequiresPermissions("sys:dict:view")
@RequestMapping(value = {"list", ""})
public String list(ServiceDictInfo serviceDictInfo,HttpServletRequest request, HttpServletResponse response, Model model) {
//查出顶层分页数据
Page<ServiceDictInfo> page = serviceDictInfoService.findTopDictList(new Page<ServiceDictInfo>(request, response), serviceDictInfo);
model.addAttribute("page", page);
//查出所有数据
List<ServiceDictInfo> allList = serviceDictInfoService.findAllDictList();
//处理数据,保留顶层中的所有下层数据
List<ServiceDictInfo> list = Lists.newArrayList();
boolean flag = false;
for(int i=allList.size()-1;i>=0;i--){
ServiceDictInfo temp = allList.get(i);
if(temp.getParent()!=null&&temp.getParent().getServiceDictId()!=null&&temp.getParent().getServiceDictId()==0){
for(ServiceDictInfo topTemp:page.getList()){
if(temp.getServiceDictId()==topTemp.getServiceDictId()){
flag = true;
break;
}
}
if(!flag){
allList.remove(temp);
flag=false;
}else{
flag=false;
}
}
}
Page<ServiceDictInfo> page = serviceDictInfoService.findDictList(new Page<ServiceDictInfo>(request, response), serviceDictInfo);
model.addAttribute("page", page);
ServiceDictInfo.sortList(list,allList,0,true);
//ServiceDictInfo.sortList(list, allList, 0, true);
model.addAttribute("list", list);
return "/cfg/serviceDictList";
}
/**
* 查询业务辅助表-业务字典信息列表(含条件查询)
* @param serviceDictInfo
* @param request
* @param response
* @param model
* @return
*/
@RequiresPermissions("sys:dict:view")
@RequestMapping(value = {"searchList"})
public String searchList(ServiceDictInfo serviceDictInfo,HttpServletRequest request, HttpServletResponse response, Model model) {
if(StringUtils.strIsBlank(serviceDictInfo.getItemValue())
&&serviceDictInfo.getItemCode()==null
&&serviceDictInfo.getItemType()==null
&&serviceDictInfo.getBeginDate()==null
&&serviceDictInfo.getEditTime()==null){
return "redirect:"+ adminPath + "/configuration/serviceDictInfo/list";
}
Page<ServiceDictInfo> page = serviceDictInfoService.findDictSearchList(new Page<ServiceDictInfo>(request, response), serviceDictInfo);
model.addAttribute("page", page);
return "/cfg/serviceDictInfoSearchList";
}
/**
* 进入添加或修改页面
* @param serviceDictInfo
@@ -86,6 +137,13 @@ public class ServiceDictInfoController extends BaseController {
if(doAction!=null&&doAction.equals("0")){
return "/cfg/serviceDictInfo";
}
if (serviceDictInfo.getParent() == null || serviceDictInfo.getParent().getId() == null) {
ServiceDictInfo parent = new ServiceDictInfo();
parent.setServiceDictId(0);
serviceDictInfo.setParent(parent);
}
model.addAttribute("serviceDictInfo", serviceDictInfo);
return "/cfg/serviceDictForm";
}
/**
@@ -106,13 +164,17 @@ public class ServiceDictInfoController extends BaseController {
e.printStackTrace();
addMessage(redirectAttributes, "保存配置失败!");
}
if(serviceDictInfo.getItemType()==3){
return "redirect:" + adminPath + "/configuration/serviceDictInfo/markList";
}else{
return "redirect:" + adminPath + "/configuration/serviceDictInfo/list";
}
return "redirect:" + adminPath + "/configuration/serviceDictInfo/list";
}
/**
* 删除
* 删除(删除时删除所有下级菜单)
* @param serviceDictInfo
* @param model
* @return
@@ -142,11 +204,12 @@ public class ServiceDictInfoController extends BaseController {
@RequestMapping(value = "treeData")
public List<Map<String, Object>> treeData(@RequestParam(required=false) String extId,@RequestParam(required=false) String isShowHide, HttpServletResponse response) {
List<Map<String, Object>> mapList = Lists.newArrayList();
List<ServiceDictInfo> list = serviceDictInfoService.findAllDict();
//找出所有的非叶子配置
List<ServiceDictInfo> list = serviceDictInfoService.findAllNoLeafDictList();
for (int i=0; i<list.size(); i++){
ServiceDictInfo serviceDictInfo = list.get(i);
if (StringUtils.isBlank(extId) || (extId !=null && !extId.equals(serviceDictInfo.getServiceDictId().toString()))) {
if(isShowHide != null && isShowHide.equals("0") && serviceDictInfo.getIsValid().equals(0)){
if(serviceDictInfo.getIsValid().equals(0)){
continue;
}
Map<String, Object> map = Maps.newHashMap();
@@ -178,12 +241,19 @@ public class ServiceDictInfoController extends BaseController {
if(doAction!=null&&doAction.equals("0")){
return "/cfg/serviceDictMarkInfo";
}
if (serviceDictInfo.getParent() == null || serviceDictInfo.getParent().getId() == null) {
ServiceDictInfo parent = new ServiceDictInfo();
parent.setServiceDictId(0);
serviceDictInfo.setParent(parent);
}
model.addAttribute("serviceDictInfo", serviceDictInfo);
return "/cfg/serviceDictMarkForm";
}
/**
* 查询业务辅助表-业务字典信息列表
* 查询标签列表(无条件分页查询)
* @param serviceDictInfo
* @param request
* @param response
@@ -191,15 +261,67 @@ public class ServiceDictInfoController extends BaseController {
* @return
*/
@RequiresPermissions("sys:dict:view")
@RequestMapping(value = {"markList"})
@RequestMapping(value = {"markList", ""})
public String markList(ServiceDictInfo serviceDictInfo,HttpServletRequest request, HttpServletResponse response, Model model) {
//查出顶层分页数据
Page<ServiceDictInfo> page = serviceDictInfoService.findTopDictMarkList(new Page<ServiceDictInfo>(request, response), serviceDictInfo);
model.addAttribute("page", page);
//查出所有数据
List<ServiceDictInfo> allList = serviceDictInfoService.findAllDictMarkList();
//处理数据,保留顶层中的所有下层数据
List<ServiceDictInfo> list = Lists.newArrayList();
boolean flag = false;
for(int i=allList.size()-1;i>=0;i--){
ServiceDictInfo temp = allList.get(i);
if(temp.getParent()!=null&&temp.getParent().getServiceDictId()!=null&&temp.getParent().getServiceDictId()==0){
for(ServiceDictInfo topTemp:page.getList()){
if(temp.getServiceDictId()==topTemp.getServiceDictId()){
flag = true;
break;
}
}
if(!flag){
allList.remove(temp);
flag=false;
}else{
flag=false;
}
}
}
Page<ServiceDictInfo> page = serviceDictInfoService.findDictMarkList(new Page<ServiceDictInfo>(request, response), serviceDictInfo);
model.addAttribute("page", page);
ServiceDictInfo.sortList(list,allList,0,true);
//ServiceDictInfo.sortList(list, allList, 0, true);
model.addAttribute("list", list);
return "/cfg/serviceDictMarkList";
}
/**
* 查询业务辅助表-业务字典信息列表(含条件查询)
* @param serviceDictInfo
* @param request
* @param response
* @param model
* @return
*/
@RequiresPermissions("sys:dict:view")
@RequestMapping(value = {"searchMarkList"})
public String searchMarkList(ServiceDictInfo serviceDictInfo,HttpServletRequest request, HttpServletResponse response, Model model) {
if(StringUtils.strIsBlank(serviceDictInfo.getItemValue())
&&serviceDictInfo.getItemCode()==null
&&serviceDictInfo.getItemType()==null
&&serviceDictInfo.getBeginDate()==null
&&serviceDictInfo.getEditTime()==null){
return "redirect:"+ adminPath + "/configuration/serviceDictInfo/markList";
}
Page<ServiceDictInfo> page = serviceDictInfoService.findDictSearchMarkList(new Page<ServiceDictInfo>(request, response), serviceDictInfo);
model.addAttribute("page", page);
return "/cfg/serviceDictInfoSearchMarkList";
}
/**
* 新增或修改
@@ -242,4 +364,34 @@ public class ServiceDictInfoController extends BaseController {
return "redirect:" + adminPath + "/configuration/serviceDictInfo/markList";
}
/**
* isShowHide是否显示隐藏菜单
* @param extId
* @param isShowHidden
* @param response
* @return
*/
@RequiresPermissions("user")
@ResponseBody
@RequestMapping(value = "treeMarkData")
public List<Map<String, Object>> treeMarkData(@RequestParam(required=false) String extId,@RequestParam(required=false) String isShowHide, HttpServletResponse response) {
List<Map<String, Object>> mapList = Lists.newArrayList();
//找出所有的非叶子配置
List<ServiceDictInfo> list = serviceDictInfoService.findAllNoLeafDictMarkList();
for (int i=0; i<list.size(); i++){
ServiceDictInfo serviceDictInfo = list.get(i);
if (StringUtils.isBlank(extId) || (extId !=null && !extId.equals(serviceDictInfo.getServiceDictId().toString()))) {
if(serviceDictInfo.getIsValid().equals(0)){
continue;
}
Map<String, Object> map = Maps.newHashMap();
map.put("id", serviceDictInfo.getServiceDictId());
map.put("pId", serviceDictInfo.getParent().getServiceDictId());
map.put("name",serviceDictInfo.getItemValue());
mapList.add(map);
}
}
return mapList;
}
}