package com.github.ouyangbob.admin.account.controller; import org.apache.commons.lang3.StringUtils; import org.slf4j.Logger; import org.slf4j.LoggerFactory; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Controller; import org.springframework.ui.ModelMap; import org.springframework.web.bind.annotation.RequestMapping; import org.springframework.web.bind.annotation.RequestMethod; import org.springframework.web.servlet.mvc.support.RedirectAttributes; import com.github.ouyangbob.admin.account.model.entity.AdminUser; import com.github.ouyangbob.admin.account.model.vo.AdminUserQueryVo; import com.github.ouyangbob.admin.account.service.IAdminUserService; import com.github.ouyangbob.admin.account.shiro.PasswordHelper; import com.github.ouyangbob.shiro.CurrentUserUtil; import com.github.pagehelper.PageInfo; @Controller @RequestMapping("/admin/user/") public class AdminUserController { private static final Logger logger=LoggerFactory.getLogger(AdminUserController.class); @Autowired private IAdminUserService adminUserService; @RequestMapping("list") public String index(AdminUserQueryVo query,ModelMap modelMap){ query.setPageSize(1); PageInfo<AdminUser> pageInfo = adminUserService.queryAdminUserPage(query); modelMap.put("pageInfo", pageInfo); return "admin/user/list"; } @RequestMapping("delete") public String delete(String userId,RedirectAttributes redirectAttributes){ AdminUser adminUser=adminUserService.findAdminUserById(userId); if(adminUser!=null){ if(adminUser.getId().equals(CurrentUserUtil.getCurrentUser().getId())){ redirectAttributes.addFlashAttribute("error", "禁止删除当前登录账号"); }else{ adminUserService.removeAdminUser(adminUser); redirectAttributes.addFlashAttribute("info", "删除成功"); } } return "redirect:list.adm"; } @RequestMapping(value="form" , method=RequestMethod.GET) public String formGet(String userId,AdminUser adminUser,ModelMap modelMap){ if(StringUtils.isNotBlank(userId)){ adminUser=adminUserService.findAdminUserById(userId); }else{ adminUser.setStatus(1); } modelMap.put("adminUser", adminUser); return "admin/user/form"; } @RequestMapping(value="form" , method=RequestMethod.POST) public String formPost(AdminUser adminUser,RedirectAttributes redirectAttributes){ if(StringUtils.isBlank(adminUser.getLoginName())){ redirectAttributes.addFlashAttribute("adminUser", adminUser); redirectAttributes.addFlashAttribute("error", "请输入用户名"); redirectAttributes.addAttribute("userId", adminUser.getId()); return "redirect:form.adm"; }else if(StringUtils.isBlank(adminUser.getId()) && StringUtils.isBlank(adminUser.getLoginPasswd())){ redirectAttributes.addFlashAttribute("adminUser", adminUser); redirectAttributes.addFlashAttribute("error", "请输入密码"); redirectAttributes.addAttribute("userId", adminUser.getId()); return "redirect:form.adm"; } AdminUser adminUserDb=adminUser; if(StringUtils.isNotBlank(adminUser.getId())){ adminUserDb=adminUserService.findAdminUserById(adminUser.getId()); adminUserDb.setStatus(adminUser.getStatus()); if(StringUtils.isNotBlank(adminUser.getLoginPasswd())){ adminUserDb.setLoginPasswd(PasswordHelper.newPassword(adminUser.getLoginPasswd())); } redirectAttributes.addFlashAttribute("info", "修改管理员成功"); }else{ adminUserDb.setLoginPasswd(PasswordHelper.newPassword(adminUser.getLoginPasswd())); redirectAttributes.addFlashAttribute("info", "添加管理员成功"); } adminUserService.saveOrUpdateAdminUser(adminUserDb); return "redirect:list.adm"; } }