优化业务/系统字典功能,数据类型数量可改变,可任意组合菜单(作用域必须单独),页面自动设定权限,组合菜单时数据类型超过1种,列表页面条件搜索添加数据类型条件。

修订校验时浏览器的兼容问题,
This commit is contained in:
zhangshilin
2018-03-31 17:23:11 +08:00
parent 894661a8b8
commit aa84684b3b
19 changed files with 330 additions and 666 deletions

View File

@@ -23,6 +23,7 @@ import com.google.common.collect.Lists;
import com.google.common.collect.Maps;
import com.nis.domain.Page;
import com.nis.domain.basics.ServiceDictInfo;
import com.nis.util.ConfigDictUtils;
import com.nis.util.Configurations;
import com.nis.util.StringUtil;
import com.nis.util.StringUtils;
@@ -44,21 +45,6 @@ public class ServiceDictInfoController extends BaseController {
}
/**
* 根据serviceDictId查出配置对象
* @param serviceDictId
* @param request
* @param response
* @param model
* @return
*/
@ResponseBody
@RequestMapping(value = "loadDataDict")
public ServiceDictInfo loadDataDict(@RequestParam(required=false) Integer serviceDictId,HttpServletRequest request, HttpServletResponse response, Model model){
return serviceDictInfoService.getDictById(serviceDictId);
}
/**
* 查询业务辅助表-业务字典信息列表(无条件分页查询)
@@ -69,16 +55,11 @@ public class ServiceDictInfoController extends BaseController {
* @param model
* @return
*/
@RequiresPermissions(value={"basics:classification:view","basics:attribute:view","basics:label:view"},logical=Logical.OR)
@RequiresPermissions(value={"basics:classification:view","basics:attribute:view","basics:label:view","basics:classificationattribute:edit"},logical=Logical.OR)
@RequestMapping(value = {"list", ""})
public String list(String itType, ServiceDictInfo serviceDictInfo,HttpServletRequest request, HttpServletResponse response, Model model) {
//处理数据
String[] strArr = itType.split("-");
Integer[] intArr = new Integer[strArr.length];
for(int i=0;i<strArr.length;i++){
intArr[i] = Integer.valueOf(strArr[i]);
}
List<Integer> intArr = ConfigDictUtils.dealTypeCondition(Configurations.getStringProperty("SERVICE_DICT_ITM_TYPE", ""), itType);
String searchType = null;
String searchContent = null;
if(!StringUtils.isBlank(serviceDictInfo.getItemCode())){
@@ -93,12 +74,15 @@ public class ServiceDictInfoController extends BaseController {
model.addAttribute("searchContent", searchContent);
Page<ServiceDictInfo> pageCondition = new Page<ServiceDictInfo>(request, response);
//查询符合条件总数
List<ServiceDictInfo> allList = serviceDictInfoService.findAllServiceDictInfo(serviceDictInfo,intArr,pageCondition.getOrderBy());
model.addAttribute("showTotalCount", allList.size());
//查出顶层分页数据
Page<ServiceDictInfo> page = serviceDictInfoService.findTopDictList(pageCondition, serviceDictInfo,intArr);
Page<ServiceDictInfo> page = serviceDictInfoService.findTopDictList(pageCondition, serviceDictInfo,intArr);
// 植入序号
for (int i = 0; i < page.getList().size(); i++) {
page.getList().get(i).setShowSequence("" + (i + 1 + ((page.getPageNo() - 1) * page.getPageSize())));
@@ -129,7 +113,7 @@ public class ServiceDictInfoController extends BaseController {
//处理下级序号
ServiceDictInfo.addChildrenSeq(list, 0);
model.addAttribute("itType", itType);
model.addAttribute("intArr", Arrays.asList(intArr));
model.addAttribute("intArr", intArr);
model.addAttribute("list", list);
return "/basics/serviceDictList";
}
@@ -141,7 +125,7 @@ public class ServiceDictInfoController extends BaseController {
* @param model
* @return
*/
@RequiresPermissions(value={"basics:classification:edit","basics:attribute:edit","basics:label:edit"},logical=Logical.OR)
@RequiresPermissions(value={"basics:classification:edit","basics:attribute:edit","basics:label:edit","basics:classificationattribute:edit"},logical=Logical.OR)
@RequestMapping(value={"form"})
public String form(ServiceDictInfo serviceDictInfo, Model model,String doAction,String itType) {
if(doAction!=null&&doAction.equals("0")){
@@ -152,12 +136,8 @@ public class ServiceDictInfoController extends BaseController {
parent.setServiceDictId(0);
serviceDictInfo.setParent(parent);
}
String[] strArr = itType.split("-");
Integer[] intArr = new Integer[strArr.length];
for(int i=0;i<strArr.length;i++){
intArr[i] = Integer.valueOf(strArr[i]);
}
model.addAttribute("intArr", Arrays.asList(intArr));
List<Integer> intArr = ConfigDictUtils.dealTypeCondition(Configurations.getStringProperty("SERVICE_DICT_ITM_TYPE", ""), itType);
model.addAttribute("intArr", intArr);
model.addAttribute("serviceDictInfo", serviceDictInfo);
model.addAttribute("itType", itType);
return "/basics/serviceDictForm";
@@ -236,10 +216,6 @@ public class ServiceDictInfoController extends BaseController {
map.put("id", serviceDictInfo.getServiceDictId());
map.put("pId", serviceDictInfo.getParent().getServiceDictId());
map.put("name",serviceDictInfo.getItemValue());
/*if(serviceDictInfo.getParent().getServiceDictId()!=0){
ServiceDictInfo parent = serviceDictInfoService.getDictById(serviceDictInfo.getParent().getServiceDictId());
//map.put("placeholder",parent.getItemType().toString());
}*/
mapList.add(map);
}
@@ -296,7 +272,7 @@ public class ServiceDictInfoController extends BaseController {
*/
@ResponseBody
@RequestMapping(value = "ajaxChildrenType")
public boolean ajaxChildrenType(Integer parent,Integer newItemType) {
public boolean ajaxChildrenType(Integer parent,Integer itemType) {
if(parent==null){
return true;
}
@@ -306,7 +282,7 @@ public class ServiceDictInfoController extends BaseController {
return true;
}else{
for(ServiceDictInfo serviceDictInfo:list){
if(serviceDictInfo.getItemType()==newItemType){
if(serviceDictInfo.getItemType()==itemType){
return true;
}
}
@@ -386,9 +362,8 @@ public class ServiceDictInfoController extends BaseController {
return true;
}
}else{
ServiceDictInfo c = serviceDictInfoService.getDictById(currentId);
if(p.getLevelNo()<max){
//查出该所有下级的层级数之和
//查出该节点所有下级的层级数之和
List<ServiceDictInfo> list = serviceDictInfoService.getDictByParentId(currentId);
if(list==null||list.size()==0){
return true;