Index: ssts-web/src/main/webapp/disinfectsystem/onlineExams/httpTreeOptionView.js =================================================================== diff -u -r38547 -r38578 --- ssts-web/src/main/webapp/disinfectsystem/onlineExams/httpTreeOptionView.js (.../httpTreeOptionView.js) (revision 38547) +++ ssts-web/src/main/webapp/disinfectsystem/onlineExams/httpTreeOptionView.js (.../httpTreeOptionView.js) (revision 38578) @@ -323,8 +323,15 @@ } top.Ext4.MessageBox.confirm("请确认", '是否删除选择的' + entityName, function (btn) { if (btn == 'yes') { - HttpTreeOptionTableManager.deleteOptionByIds(ids, function () { - reloadTreeAndTable(); + HttpTreeOptionTableManager.deleteOptionByIds(ids, function (result) { + if(result){ + var jsonObj = Ext.decode(result); + if(jsonObj.success){ + reloadTreeAndTable(); + }else{ + showResult(jsonObj.message); + } + } }); } }) Index: forgon-core/src/main/java/com/forgon/systemsetting/dwr/table/HttpTreeOptionTableManager.java =================================================================== diff -u -r12331 -r38578 --- forgon-core/src/main/java/com/forgon/systemsetting/dwr/table/HttpTreeOptionTableManager.java (.../HttpTreeOptionTableManager.java) (revision 12331) +++ forgon-core/src/main/java/com/forgon/systemsetting/dwr/table/HttpTreeOptionTableManager.java (.../HttpTreeOptionTableManager.java) (revision 38578) @@ -4,11 +4,15 @@ import java.util.List; import java.util.Map; +import net.sf.json.JSONObject; + import org.apache.commons.lang.StringUtils; import com.forgon.component.grid.GridManager; import com.forgon.systemsetting.model.HttpTreeOption; import com.forgon.systemsetting.service.HttpTreeOptionManager; +import com.forgon.tools.StrutsResponseUtils; +import com.forgon.tools.json.JSONUtil; import com.forgon.treenode.model.THTreeNode; import com.forgon.treenode.service.THTreeNodeManager; @@ -37,20 +41,30 @@ this.gridManager = gridManager; } - public void deleteOptionByIds(String ids) { - if (StringUtils.isEmpty(ids)) - return; - String[] idArray = ids.split(";"); + public String deleteOptionByIds(String ids) { - List idList = new ArrayList(); - for (String id : idArray) { - idList.add(Long.parseLong(id)); + JSONObject result = JSONUtil.buildJsonObject(true, "删除成功"); + String name = ""; + try { + if (StringUtils.isEmpty(ids)) + return result.toString(); + String[] idArray = ids.split(";"); + + List idList = new ArrayList(); + for (String id : idArray) { + idList.add(Long.parseLong(id)); + } + List poList = thTreeNodeManager.findTHTreeNodeByIds( + HttpTreeOption.class.getSimpleName(), idList); + for (THTreeNode thTreeNode : poList) { + name = thTreeNode.getName(); + thTreeNodeManager.deleteTHTreeNode(thTreeNode); + } + } catch (Exception e) { + e.printStackTrace(); + result = JSONUtil.buildJsonObject(false, String.format("%s已经被引用,无法删除。", name)); } - List poList = thTreeNodeManager.findTHTreeNodeByIds( - HttpTreeOption.class.getSimpleName(), idList); - for (THTreeNode thTreeNode : poList) { - thTreeNodeManager.deleteTHTreeNode(thTreeNode); - } + return result.toString(); } public void moveUpOrgUnit(String id) { Index: forgon-core/src/main/java/com/forgon/systemsetting/action/HttpOptionAction.java =================================================================== diff -u -r38291 -r38578 --- forgon-core/src/main/java/com/forgon/systemsetting/action/HttpOptionAction.java (.../HttpOptionAction.java) (revision 38291) +++ forgon-core/src/main/java/com/forgon/systemsetting/action/HttpOptionAction.java (.../HttpOptionAction.java) (revision 38578) @@ -244,10 +244,19 @@ public void deleteHttpOption(){ JSONObject result = JSONUtil.buildJsonObject(true, "删除成功"); String ids = StrutsParamUtils.getPraramValue("ids", null); + String optionText = ""; try { - httpOptionManager.deleteHttpOption(ids); + List list = httpOptionManager.getCollection(ids, ";"); + if(CollectionUtils.isEmpty(list)){ + return; + } + for (HttpOption httpOption : list) { + optionText = httpOption.getOptionText(); + httpOptionManager.delete(httpOption); + } } catch (Exception e) { - result = JSONUtil.buildJsonObject(false, "删除失败:" + e.getMessage()); + e.printStackTrace(); + result = JSONUtil.buildJsonObject(false, String.format("%s已经被引用,无法删除。", optionText)); } StrutsResponseUtils.output(result); }