com.itliupengcheng.atcrowdfunding.controller
![](https://i-blog.csdnimg.cn/blog_migrate/8f900a89c6347c561fdf2122f13be562.gif)
![](https://i-blog.csdnimg.cn/blog_migrate/961ddebeb323a10fe0623af514929fc1.gif)
package com.atguigu.atcrowdfunding.controller; import java.util.ArrayList; import java.util.HashMap; import java.util.List; import java.util.Map; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Controller; import org.springframework.ui.Model; import org.springframework.web.bind.annotation.RequestMapping; import org.springframework.web.bind.annotation.ResponseBody; import com.atguigu.atcrowdfunding.bean.AJAXResult; import com.atguigu.atcrowdfunding.bean.Permission; import com.atguigu.atcrowdfunding.service.PermissionService; @Controller @RequestMapping("/permission") public class PermissionController { @Autowired private PermissionService permissionService; @ResponseBody @RequestMapping("/delete") public Object delete( Permission permission ) { AJAXResult result = new AJAXResult(); try { permissionService.deletePermission(permission); result.setSuccess(true); } catch ( Exception e ) { e.printStackTrace(); result.setSuccess(false); } return result; } @ResponseBody @RequestMapping("/update") public Object update( Permission permission ) { AJAXResult result = new AJAXResult(); try { permissionService.updatePermission(permission); result.setSuccess(true); } catch ( Exception e ) { e.printStackTrace(); result.setSuccess(false); } return result; } @ResponseBody @RequestMapping("/insert") public Object insert( Permission permission ) { AJAXResult result = new AJAXResult(); try { permissionService.insertPermission(permission); result.setSuccess(true); } catch ( Exception e ) { e.printStackTrace(); result.setSuccess(false); } return result; } @RequestMapping("/add") public String add() { return "permission/add"; } @RequestMapping("/edit") public String edit( Integer id, Model model ) { Permission permission = permissionService.queryById(id); model.addAttribute("permission", permission); return "permission/edit"; } @RequestMapping("/index") public String index() { return "permission/index"; } @ResponseBody @RequestMapping("/loadAssignData") public Object loadAssignData( Integer roleid ) { List<Permission> permissions = new ArrayList<Permission>(); List<Permission> ps = permissionService.queryAll(); // 鑾峰彇褰撳墠瑙掕壊宸茬粡鍒嗛厤鐨勮鍙俊鎭� List<Integer> permissionids = permissionService.queryPermissionidsByRoleid(roleid); Map<Integer, Permission> permissionMap = new HashMap<Integer, Permission>(); for (Permission p : ps) { if ( permissionids.contains(p.getId()) ) { p.setChecked(true); } else { p.setChecked(false); } permissionMap.put(p.getId(), p); } for ( Permission p : ps ) { Permission child = p; if ( child.getPid() == 0 ) { permissions.add(p); } else { Permission parent = permissionMap.get(child.getPid()); parent.getChildren().add(child); } } return permissions; } @ResponseBody @RequestMapping("/loadData") public Object loadData() { List<Permission> permissions = new ArrayList<Permission>(); // Permission root = new Permission(); // root.setName("椤剁骇鑺傜偣"); // // Permission child = new Permission(); // child.setName("瀛愯妭鐐�"); // // root.getChildren().add(child); // permissions.add(root); // 璇诲彇鏍戝舰缁撴瀯鏁版嵁 /* Permission root = permissionService.queryRootPermission(); List<Permission> childPermissions = permissionService.queryChildPermissions(root.getId()); for ( Permission childPermission : childPermissions ) { List<Permission> childChildPermissions = permissionService.queryChildPermissions(childPermission.getId()); childPermission.setChildren(childChildPermissions); } root.setChildren(childPermissions); permissions.add(root); */ // 閫掑綊鏌ヨ鏁版嵁 /* Permission parent = new Permission(); parent.setId(0); queryChildPermissions(parent); //permissions. return parent.getChildren(); */ // 鏌ヨ鎵�鏈夌殑璁稿彲鏁版嵁 List<Permission> ps = permissionService.queryAll(); /* for ( Permission p : ps ) { // 瀛愯妭鐐� Permission child = p; if ( p.getPid() == 0 ) { permissions.add(p); } else { for ( Permission innerPermission : ps ) { if ( child.getPid().equals(innerPermission.getId()) ) { // 鐖惰妭鐐� Permission parent = innerPermission; // 缁勫悎鐖跺瓙鑺傜偣鐨勫叧绯� parent.getChildren().add(child); break; } } } } */ Map<Integer, Permission> permissionMap = new HashMap<Integer, Permission>(); for (Permission p : ps) { permissionMap.put(p.getId(), p); } for ( Permission p : ps ) { Permission child = p; if ( child.getPid() == 0 ) { permissions.add(p); } else { Permission parent = permissionMap.get(child.getPid()); parent.getChildren().add(child); } } return permissions; } /** */ private void queryChildPermissions( Permission parent ) { List<Permission> childPermissions = permissionService.queryChildPermissions(parent.getId()); for ( Permission permission : childPermissions ) { queryChildPermissions(permission); } parent.setChildren(childPermissions); } }
![](https://i-blog.csdnimg.cn/blog_migrate/8f900a89c6347c561fdf2122f13be562.gif)
![](https://i-blog.csdnimg.cn/blog_migrate/961ddebeb323a10fe0623af514929fc1.gif)
package com.atguigu.atcrowdfunding.controller; import java.util.HashMap; import java.util.List; import java.util.Map; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Controller; import org.springframework.web.bind.annotation.RequestMapping; import org.springframework.web.bind.annotation.ResponseBody; import com.atguigu.atcrowdfunding.bean.AJAXResult; import com.atguigu.atcrowdfunding.bean.Page; import com.atguigu.atcrowdfunding.bean.Role; import com.atguigu.atcrowdfunding.service.RoleService; @Controller @RequestMapping("/role") public class RoleController { @Autowired private RoleService roleService; @ResponseBody @RequestMapping("/pageQuery") public Object pageQuery( String queryText, Integer pageno, Integer pagesize ) { AJAXResult result = new AJAXResult(); try { // Map<String, Object> map = new HashMap<String, Object>(); map.put("start", (pageno-1)*pagesize); map.put("size", pagesize); map.put("queryText", queryText); List<Role> roles = roleService.pageQueryData( map ); int totalsize = roleService.pageQueryCount( map ); // int totalno = 0; if ( totalsize % pagesize == 0 ) { totalno = totalsize / pagesize; } else { totalno = totalsize / pagesize + 1; } // Page<Role> rolePage = new Page<Role>(); rolePage.setDatas(roles); rolePage.setTotalno(totalno); rolePage.setTotalsize(totalsize); rolePage.setPageno(pageno); result.setData(rolePage); result.setSuccess(true); } catch ( Exception e ) { e.printStackTrace(); result.setSuccess(false); } return result; } @ResponseBody @RequestMapping("/doAssign") public Object doAssign( Integer roleid, Integer[] permissionids ) { AJAXResult result = new AJAXResult(); try { Map<String, Object> paramMap = new HashMap<String, Object>(); paramMap.put("roleid", roleid); paramMap.put("permissionids", permissionids); roleService.insertRolePermission(paramMap); result.setSuccess(true); } catch ( Exception e ) { e.printStackTrace(); result.setSuccess(false); } return result; } @RequestMapping("/assign") public String assign() { return "role/assign"; } @RequestMapping("/index") public String index() { return "role/index"; } }
![](https://i-blog.csdnimg.cn/blog_migrate/8f900a89c6347c561fdf2122f13be562.gif)
![](https://i-blog.csdnimg.cn/blog_migrate/961ddebeb323a10fe0623af514929fc1.gif)
package com.atguigu.atcrowdfunding.controller; import java.text.SimpleDateFormat; import java.util.ArrayList; import java.util.Date; import java.util.HashMap; import java.util.List; import java.util.Map; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Controller; import org.springframework.ui.Model; import org.springframework.web.bind.annotation.RequestMapping; import org.springframework.web.bind.annotation.RequestParam; import org.springframework.web.bind.annotation.ResponseBody; import com.atguigu.atcrowdfunding.bean.AJAXResult; import com.atguigu.atcrowdfunding.bean.Page; import com.atguigu.atcrowdfunding.bean.Role; import com.atguigu.atcrowdfunding.bean.User; import com.atguigu.atcrowdfunding.service.RoleService; import com.atguigu.atcrowdfunding.service.UserService; @Controller @RequestMapping("/user") public class UserController { @Autowired private UserService userService; @Autowired private RoleService roleService; @ResponseBody @RequestMapping("/deletes") public Object deletes( Integer[] userid ) { AJAXResult result = new AJAXResult(); try { Map<String, Object> map = new HashMap<String, Object>(); map.put("userids", userid); userService.deleteUsers(map); result.setSuccess(true); } catch ( Exception e ) { e.printStackTrace(); result.setSuccess(false); } return result; } @ResponseBody @RequestMapping("/delete") public Object delete( Integer id ) { AJAXResult result = new AJAXResult(); try { userService.deleteUserById(id); result.setSuccess(true); } catch ( Exception e ) { e.printStackTrace(); result.setSuccess(false); } return result; } @ResponseBody @RequestMapping("/update") public Object update( User user ) { AJAXResult result = new AJAXResult(); try { userService.updateUser(user); result.setSuccess(true); } catch ( Exception e ) { e.printStackTrace(); result.setSuccess(false); } return result; } @RequestMapping("/edit") public String edit( Integer id, Model model ) { User user = userService.queryById(id); model.addAttribute("user", user); return "user/edit"; } @RequestMapping("/assign") public String assign( Integer id, Model model ) { User user = userService.queryById(id); model.addAttribute("user", user); List<Role> roles = roleService.queryAll(); List<Role> assingedRoles = new ArrayList<Role>(); List<Role> unassignRoles = new ArrayList<Role>(); // 鑾峰彇鍏崇郴琛ㄧ殑鏁版嵁 List<Integer> roleids = userService.queryRoleidsByUserid(id); for ( Role role : roles ) { if ( roleids.contains(role.getId()) ) { assingedRoles.add(role); } else { unassignRoles.add(role); } } model.addAttribute("assingedRoles", assingedRoles); model.addAttribute("unassignRoles", unassignRoles); return "user/assign"; } @ResponseBody @RequestMapping("/doAssign") public Object doAssign( Integer userid, Integer[] unassignroleids ) { AJAXResult result = new AJAXResult(); try { // 澧炲姞鍏崇郴琛ㄦ暟鎹� Map<String, Object> map = new HashMap<String, Object>(); map.put("userid", userid); map.put("roleids", unassignroleids); userService.insertUserRoles(map); result.setSuccess(true); } catch ( Exception e ) { e.printStackTrace(); result.setSuccess(false); } return result; } @ResponseBody @RequestMapping("/dounAssign") public Object dounAssign( Integer userid, Integer[] assignroleids ) { AJAXResult result = new AJAXResult(); try { // 鍒犻櫎鍏崇郴琛ㄦ暟鎹� Map<String, Object> map = new HashMap<String, Object>(); map.put("userid", userid); map.put("roleids", assignroleids); userService.deleteUserRoles(map); result.setSuccess(true); } catch ( Exception e ) { e.printStackTrace(); result.setSuccess(false); } return result; } @ResponseBody @RequestMapping("/insert") public Object insert( User user ) { AJAXResult result = new AJAXResult(); try { SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss"); user.setCreatetime(sdf.format(new Date())); user.setUserpswd("123456"); userService.insertUser(user); result.setSuccess(true); } catch ( Exception e ) { e.printStackTrace(); result.setSuccess(false); } return result; } @RequestMapping("/add") public String add() { return "user/add"; } @ResponseBody @RequestMapping("/pageQuery") public Object pageQuery( String queryText, Integer pageno, Integer pagesize ) { AJAXResult result = new AJAXResult(); try { // 鍒嗛〉鏌ヨ Map<String, Object> map = new HashMap<String, Object>(); map.put("start", (pageno-1)*pagesize); map.put("size", pagesize); map.put("queryText", queryText); List<User> users = userService.pageQueryData( map ); // 褰撳墠椤电爜 // 鎬荤殑鏁版嵁鏉℃暟 int totalsize = userService.pageQueryCount( map ); // 鏈�澶ч〉鐮侊紙鎬婚〉鐮侊級 int totalno = 0; if ( totalsize % pagesize == 0 ) { totalno = totalsize / pagesize; } else { totalno = totalsize / pagesize + 1; } // 鍒嗛〉瀵硅薄 Page<User> userPage = new Page<User>(); userPage.setDatas(users); userPage.setTotalno(totalno); userPage.setTotalsize(totalsize); userPage.setPageno(pageno); result.setData(userPage); result.setSuccess(true); } catch ( Exception e ) { e.printStackTrace(); result.setSuccess(false); } return result; } @RequestMapping("/index") public String index() { return "user/index"; } /** * 鐢ㄦ埛棣栭〉 * @return */ @RequestMapping("/index1") public String index1( @RequestParam(required=false, defaultValue="1")Integer pageno, @RequestParam(required=false, defaultValue="2")Integer pagesize, Model model ) { // 鍒嗛〉鏌ヨ // limit start, size Map<String, Object> map = new HashMap<String, Object>(); map.put("start", (pageno-1)*pagesize); map.put("size", pagesize); List<User> users = userService.pageQueryData( map ); model.addAttribute("users", users); // 褰撳墠椤电爜 model.addAttribute("pageno", pageno); // 鎬荤殑鏁版嵁鏉℃暟 int totalsize = userService.pageQueryCount( map ); // 鏈�澶ч〉鐮侊紙鎬婚〉鐮侊級 int totalno = 0; if ( totalsize % pagesize == 0 ) { totalno = totalsize / pagesize; } else { totalno = totalsize / pagesize + 1; } model.addAttribute("totalno", totalno); return "user/index"; } }
com..itliupengcheng.atcrowdfunding.dao
![](https://i-blog.csdnimg.cn/blog_migrate/8f900a89c6347c561fdf2122f13be562.gif)
![](https://i-blog.csdnimg.cn/blog_migrate/961ddebeb323a10fe0623af514929fc1.gif)
package com.atguigu.atcrowdfunding.dao; import java.util.List; import org.apache.ibatis.annotations.Select; import com.atguigu.atcrowdfunding.bean.Permission; import com.atguigu.atcrowdfunding.bean.User; public interface PermissionDao { @Select("select * from t_permission where pid is null") Permission queryRootPermission(); @Select("select * from t_permission where pid = #{pid}") List<Permission> queryChildPermissions(Integer pid); @Select("select * from t_permission") List<Permission> queryAll(); void insertPermission(Permission permission); @Select("select * from t_permission where id = #{id}") Permission queryById(Integer id); void updatePermission(Permission permission); void deletePermission(Permission permission); @Select("select permissionid from t_role_permission where roleid = #{roleid}") List<Integer> queryPermissionidsByRoleid(Integer roleid); List<Permission> queryPermissionsByUser(User dbUser); }
![](https://i-blog.csdnimg.cn/blog_migrate/8f900a89c6347c561fdf2122f13be562.gif)
![](https://i-blog.csdnimg.cn/blog_migrate/961ddebeb323a10fe0623af514929fc1.gif)
package com.atguigu.atcrowdfunding.dao; import java.util.List; import java.util.Map; import org.apache.ibatis.annotations.Select; import com.atguigu.atcrowdfunding.bean.Role; public interface RoleDao { List<Role> pageQueryData(Map<String, Object> map); int pageQueryCount(Map<String, Object> map); @Select("select * from t_role") List<Role> queryAll(); void insertRolePermission(Map<String, Object> paramMap); void deleteRolePermissions(Map<String, Object> paramMap); }
![](https://i-blog.csdnimg.cn/blog_migrate/8f900a89c6347c561fdf2122f13be562.gif)
![](https://i-blog.csdnimg.cn/blog_migrate/961ddebeb323a10fe0623af514929fc1.gif)
package com.atguigu.atcrowdfunding.dao; import java.util.List; import java.util.Map; import org.apache.ibatis.annotations.Select; import com.atguigu.atcrowdfunding.bean.User; public interface UserDao { @Select("select * from t_user") List<User> queryAll(); @Select("select * from t_user where loginacct = #{loginacct} and userpswd = #{userpswd}") User query4Login(User user); List<User> pageQueryData(Map<String, Object> map); int pageQueryCount(Map<String, Object> map); void insertUser(User user); @Select("select * from t_user where id = #{id}") User queryById(Integer id); void updateUser(User user); void deleteUserById(Integer id); void deleteUsers(Map<String, Object> map); void insertUserRoles(Map<String, Object> map); void deleteUserRoles(Map<String, Object> map); @Select("select roleid from t_user_role where userid = #{userid}") List<Integer> queryRoleidsByUserid(Integer id); }
com.itliupengcheng.atcrowdfunding.servise
![](https://i-blog.csdnimg.cn/blog_migrate/8f900a89c6347c561fdf2122f13be562.gif)
![](https://i-blog.csdnimg.cn/blog_migrate/961ddebeb323a10fe0623af514929fc1.gif)
package com.atguigu.atcrowdfunding.service; import java.util.List; import com.atguigu.atcrowdfunding.bean.Permission; import com.atguigu.atcrowdfunding.bean.User; public interface PermissionService { Permission queryRootPermission(); List<Permission> queryChildPermissions(Integer pid); List<Permission> queryAll(); void insertPermission(Permission permission); Permission queryById(Integer id); void updatePermission(Permission permission); void deletePermission(Permission permission); List<Integer> queryPermissionidsByRoleid(Integer roleid); List<Permission> queryPermissionsByUser(User dbUser); }
![](https://i-blog.csdnimg.cn/blog_migrate/8f900a89c6347c561fdf2122f13be562.gif)
![](https://i-blog.csdnimg.cn/blog_migrate/961ddebeb323a10fe0623af514929fc1.gif)
package com.atguigu.atcrowdfunding.service; import java.util.List; import java.util.Map; import com.atguigu.atcrowdfunding.bean.Role; public interface RoleService { List<Role> pageQueryData(Map<String, Object> map); int pageQueryCount(Map<String, Object> map); List<Role> queryAll(); void insertRolePermission(Map<String, Object> paramMap); }
![](https://i-blog.csdnimg.cn/blog_migrate/8f900a89c6347c561fdf2122f13be562.gif)
![](https://i-blog.csdnimg.cn/blog_migrate/961ddebeb323a10fe0623af514929fc1.gif)
package com.atguigu.atcrowdfunding.service; import java.util.List; import java.util.Map; import com.atguigu.atcrowdfunding.bean.User; public interface UserService { List<User> queryAll(); User query4Login(User user); List<User> pageQueryData(Map<String, Object> map); int pageQueryCount(Map<String, Object> map); void insertUser(User user); User queryById(Integer id); void updateUser(User user); void deleteUserById(Integer id); void deleteUsers(Map<String, Object> map); void deleteUserRoles(Map<String, Object> map); void insertUserRoles(Map<String, Object> map); List<Integer> queryRoleidsByUserid(Integer id); }
com.itliupengcheng.atcrowdfunding.servise.impl
![](https://i-blog.csdnimg.cn/blog_migrate/8f900a89c6347c561fdf2122f13be562.gif)
![](https://i-blog.csdnimg.cn/blog_migrate/961ddebeb323a10fe0623af514929fc1.gif)
package com.atguigu.atcrowdfunding.service.impl; import java.util.List; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Service; import com.atguigu.atcrowdfunding.bean.Permission; import com.atguigu.atcrowdfunding.bean.User; import com.atguigu.atcrowdfunding.dao.PermissionDao; import com.atguigu.atcrowdfunding.service.PermissionService; @Service public class PermissionServiceImpl implements PermissionService { @Autowired private PermissionDao permissionDao; public Permission queryRootPermission() { return permissionDao.queryRootPermission(); } public List<Permission> queryChildPermissions(Integer pid) { return permissionDao.queryChildPermissions(pid); } public List<Permission> queryAll() { return permissionDao.queryAll(); } public void insertPermission(Permission permission) { permissionDao.insertPermission(permission); } public Permission queryById(Integer id) { return permissionDao.queryById(id); } public void updatePermission(Permission permission) { permissionDao.updatePermission(permission); } public void deletePermission(Permission permission) { permissionDao.deletePermission(permission); } public List<Integer> queryPermissionidsByRoleid(Integer roleid) { return permissionDao.queryPermissionidsByRoleid(roleid); } public List<Permission> queryPermissionsByUser(User dbUser) { return permissionDao.queryPermissionsByUser(dbUser); } }
![](https://i-blog.csdnimg.cn/blog_migrate/8f900a89c6347c561fdf2122f13be562.gif)
![](https://i-blog.csdnimg.cn/blog_migrate/961ddebeb323a10fe0623af514929fc1.gif)
package com.atguigu.atcrowdfunding.service.impl; import java.util.List; import java.util.Map; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Service; import com.atguigu.atcrowdfunding.bean.Role; import com.atguigu.atcrowdfunding.dao.RoleDao; import com.atguigu.atcrowdfunding.service.RoleService; @Service public class RoleServiceImpl implements RoleService { @Autowired private RoleDao roleDao; public List<Role> pageQueryData(Map<String, Object> map) { return roleDao.pageQueryData(map); } public int pageQueryCount(Map<String, Object> map) { return roleDao.pageQueryCount(map); } public List<Role> queryAll() { return roleDao.queryAll(); } public void insertRolePermission(Map<String, Object> paramMap) { roleDao.deleteRolePermissions(paramMap); roleDao.insertRolePermission(paramMap); } }
![](https://i-blog.csdnimg.cn/blog_migrate/8f900a89c6347c561fdf2122f13be562.gif)
![](https://i-blog.csdnimg.cn/blog_migrate/961ddebeb323a10fe0623af514929fc1.gif)
package com.atguigu.atcrowdfunding.service.impl; import java.util.List; import java.util.Map; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Service; import com.atguigu.atcrowdfunding.bean.User; import com.atguigu.atcrowdfunding.dao.UserDao; import com.atguigu.atcrowdfunding.service.UserService; @Service public class UserServiceImpl implements UserService { @Autowired private UserDao userDao; public List<User> queryAll() { return userDao.queryAll(); } public User query4Login(User user) { return userDao.query4Login(user); } public List<User> pageQueryData(Map<String, Object> map) { return userDao.pageQueryData(map); } public int pageQueryCount(Map<String, Object> map) { return userDao.pageQueryCount(map); } public void insertUser(User user) { userDao.insertUser(user); } public User queryById(Integer id) { return userDao.queryById(id); } public void updateUser(User user) { userDao.updateUser(user); } public void deleteUserById(Integer id) { userDao.deleteUserById(id); } public void deleteUsers(Map<String, Object> map) { userDao.deleteUsers(map); } public void deleteUserRoles(Map<String, Object> map) { userDao.deleteUserRoles(map); } public void insertUserRoles(Map<String, Object> map) { userDao.insertUserRoles(map); } public List<Integer> queryRoleidsByUserid(Integer id) { return userDao.queryRoleidsByUserid(id); } }