首页>代码>新年新气象,云端的Java开源共享论坛 —— XLineCode 0.9.4 正式版发布!欢迎大家下载>/src/main/java/com/vertonur/admin/action/GroupUpdateAction.java
package com.vertonur.admin.action; import javax.servlet.http.HttpServletRequest; import javax.servlet.http.HttpServletResponse; import org.apache.struts.action.ActionForm; import org.apache.struts.action.ActionForward; import org.apache.struts.action.ActionMapping; import org.apache.struts.action.ActionMessage; import org.apache.struts.action.ActionMessages; import com.vertonur.context.SystemContextService; import com.vertonur.dms.GroupService; import com.vertonur.dms.constant.ServiceEnum; import com.vertonur.admin.form.GroupConfigForm; import com.vertonur.common.OperactionCheckAction; import com.vertonur.pojo.security.Group; import com.vertonur.pojo.security.Group.GroupType; public class GroupUpdateAction extends OperactionCheckAction { @Override public ActionForward processRequest(ActionMapping mapping, ActionForm form, HttpServletRequest request, HttpServletResponse response) throws Exception { if (!isTokenValid(request)) { ActionMessages errors = new ActionMessages(); errors.add(ActionMessages.GLOBAL_MESSAGE, new ActionMessage( "error.doublesubmit")); saveErrors(request, errors); return mapping.getInputForward(); } GroupService groupService = SystemContextService.getService() .getDataManagementService(ServiceEnum.GROUP_SERVICE); GroupConfigForm castedForm = (GroupConfigForm) form; String action = request.getParameter("action"); if (action != null && "delete".equals(action)) { int[] ids = castedForm.getGroupIds(); for (int id : ids) groupService.deleteGroup(id); return mapping.findForward("ToGroupList"); } int groupId = castedForm.getGroupId(); String name = castedForm.getGroupName(); String description = castedForm.getGroupDesc().trim(); int parentGroupId = castedForm.getParentGroupId(); String groupType = castedForm.getGroupType(); Group parentGroup = groupService.getGroupById(parentGroupId); Group group = groupService.getGroupById(groupId); if (group == null) { group = new Group(); group.setName(name); group.setGroupType(GroupType.valueOf(groupType)); group.setDescription(description); if (parentGroupId == 0) { group.setNestedLevel(0); } else { group.setParent(parentGroup); parentGroup.addSubGroup(group); group.setNestedLevel(parentGroup.getNestedLevel() + 1); } groupService.saveGroup(group); } else { group.setName(name); group.setDescription(description); group.setGroupType(GroupType.valueOf(groupType)); Group originalParent = group.getParent(); if (parentGroupId == 0) { if (originalParent != null) originalParent.removeSubGroup(group); group.setParent(null); group.setNestedLevel(0); } else { if (originalParent == null) { parentGroup.addSubGroup(group); group.setParent(parentGroup); group.setNestedLevel(parentGroup.getNestedLevel() + 1); } else if (originalParent != null && originalParent.getId() != parentGroupId) { originalParent.removeSubGroup(group); parentGroup.addSubGroup(group); group.setParent(parentGroup); group.setNestedLevel(parentGroup.getNestedLevel() + 1); } } groupService.updateGroup(group); } return mapping.findForward("ToGroupList"); } }
最近下载更多
xieguirong LV2
2023年5月23日
微信网友_6006224956723200 LV1
2022年6月17日
小燕子飞飞飞 LV2
2022年6月8日
固安琪 LV2
2022年3月10日
17361631173 LV8
2022年2月14日
18201280876 LV1
2021年12月9日
王茜12131 LV1
2020年6月15日
低调人 LV38
2020年3月24日
EMkiller LV3
2020年2月26日
158293 LV1
2019年12月24日