@@ -29,6 +29,8 @@ maxlength="${c.dataLength}" class="form-control"/> <#elseif c.showType == "select"> <${'#'}form:select path="${c.javaFieldId}" name="label" data="getDictList:${c.dictType}" class="form-control " /> + <#elseif c.showType == "radiobox"> + <${'#'}form:radio path="${c.javaFieldId}" dictType="${c.dictType}" class="form-control "/> <#elseif c.showType == "dateselect" && c.queryType == "between"> - @@ -61,7 +63,13 @@ $('#dataGrid').dataGrid({ columnModel: [ <#list table.columnList as c> <#if c.isList?? && c.isList == "1"> - {header:'${c.comments}', name:'${c.javaFieldId}', index:'a.${c.name}', width:90, align:"center"}, + <#if c.showType == "radiobox"> + {header:'${c.comments}', name:'${c.javaFieldId}', index:'a.${c.name}', width:50, align:"center", formatter: function(val, obj, row, act){ + return js.transDictLabel(${"$"}{@DictUtils.getDictListJson('${c.dictType}')}, val, ''); + }}, + <#else> + {header:'${c.comments}', name:'${c.javaFieldId}', index:'a.${c.name}', width:90, align:"center"}, + {header:'操作', name:'actions', width:100, sortable:false, title:false, align:"center",formatter: function(val, obj, row, act){ diff --git a/jsite-core/src/main/resources/template/modules/gen/treetable/viewList.xml b/jsite-core/src/main/resources/template/modules/gen/treetable/viewList.xml index d9122b86c401b642c37adcadefe0db6178ec4ca7..3acbc493b3b9a36957c0103f5cee90bc54e95cba 100644 --- a/jsite-core/src/main/resources/template/modules/gen/treetable/viewList.xml +++ b/jsite-core/src/main/resources/template/modules/gen/treetable/viewList.xml @@ -37,7 +37,13 @@ $('#dataGrid').dataGrid({ columnModel: [ <#list table.columnList as c> <#if c.isList?? && c.isList == "1"> - {header:'${c.comments}', name:'${c.javaFieldId}', index:'a.${c.name}', width:90, align:"center"}, + <#if c.showType == "radiobox"> + {header:'${c.comments}', name:'${c.javaFieldId}', index:'a.${c.name}', width:50, align:"center", formatter: function(val, obj, row, act){ + return js.transDictLabel(${"$"}{@DictUtils.getDictListJson('${c.dictType}')}, val, ''); + }}, + <#else> + {header:'${c.comments}', name:'${c.javaFieldId}', index:'a.${c.name}', width:90, align:"center"}, + {header:'操作', name:'actions', width:100, sortable:false, title:false, align:"center",formatter: function(val, obj, row, act){ diff --git a/jsite-framework/src/main/java/com/jsite/modules/sys/service/SystemService.java b/jsite-framework/src/main/java/com/jsite/modules/sys/service/SystemService.java index 0710f6415cd7abf787f4696c326712e98c6f692b..335e1ecf08a48a57ef3108fb06c03039f910ed19 100644 --- a/jsite-framework/src/main/java/com/jsite/modules/sys/service/SystemService.java +++ b/jsite-framework/src/main/java/com/jsite/modules/sys/service/SystemService.java @@ -334,19 +334,28 @@ public class SystemService extends BaseService { String oldParentId = ""; if(parent == null) {// 新增的根节点 - menu.setTreeLeaf("1"); + menu.setTreeLeaf("0"); menu.setTreeLevel(0); + if(menu.getIsNewRecord()) {//新增的下级菜单 + menu.setTreeLeaf("1"); + } } else { if(menu.getIsNewRecord()) {//新增的下级菜单 menu.setTreeLeaf("1"); menu.setTreeLevel(parent.getTreeLevel()+1); - if(parent.getIsTreeLeaf()) { - parent.setTreeLeaf("0"); - menuDao.update(parent); - } } else { oldParentId = getMenu(menu.getId()).getParent().getId();// 数据库中当前的menu的ParentId,还未更新 } + //更新选择的父节点 + parent.setTreeLeaf("0"); + Menu topparent = this.getMenu(parent.getParent().getId()); + if (topparent != null) { + parent.setTreeLevel(topparent.getTreeLevel() + 1); + } else { + menu.setTreeLevel(0); + } + menuDao.update(parent); + menu.setTreeLevel(parent.getTreeLevel() + 1); } // 获取修改前的parentIds,用于更新子节点的parentIds @@ -368,12 +377,13 @@ public class SystemService extends BaseService { if(!oldParentId.equals(menu.getParent().getId())) {// 不相同则menu修改了父节点 Menu oldParent = getMenu(oldParentId); // 判断原来的父节点下还有没有子菜单 - List list = menuDao.findSubMenuListByPid(oldParent); - if(list.size() <= 0) { - - if(!oldParent.getIsTreeLeaf()) { - oldParent.setTreeLeaf("1"); - menuDao.update(oldParent); + if(oldParent!=null) { + List list = menuDao.findSubMenuListByPid(oldParent); + if(list.size() <= 0) { + if(!oldParent.getIsTreeLeaf()) { + oldParent.setTreeLeaf("1"); + menuDao.update(oldParent); + } } } }