代码整理

This commit is contained in:
暮光:城中城
2018-12-08 14:59:26 +08:00
parent 67c584761d
commit 6465d3c412
80 changed files with 2043 additions and 882 deletions

View File

@@ -0,0 +1,20 @@
package com.zyplayer.doc.manage.web.generator;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RestController;
/**
* <p>
* 前端控制器
* </p>
*
* @author 暮光:城中城
* @since 2018-12-05
*/
@RestController
@RequestMapping("/auth-info")
public class GeneratorAuthInfoController {
}

View File

@@ -0,0 +1,20 @@
package com.zyplayer.doc.manage.web.generator;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RestController;
/**
* <p>
* 前端控制器
* </p>
*
* @author 暮光:城中城
* @since 2018-12-05
*/
@RestController
@RequestMapping("/user-auth")
public class GeneratorUserAuthController {
}

View File

@@ -0,0 +1,20 @@
package com.zyplayer.doc.manage.web.generator;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RestController;
/**
* <p>
* 前端控制器
* </p>
*
* @author 暮光:城中城
* @since 2018-12-05
*/
@RestController
@RequestMapping("/user-info")
public class GeneratorUserInfoController {
}

View File

@@ -0,0 +1,20 @@
package com.zyplayer.doc.manage.web.generator;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RestController;
/**
* <p>
* 前端控制器
* </p>
*
* @author 暮光:城中城
* @since 2018-12-05
*/
@RestController
@RequestMapping("/zyplayer-storage")
public class GeneratorZyplayerStorageController {
}

View File

@@ -0,0 +1,63 @@
package com.zyplayer.doc.manage.web.manage;
import java.util.Date;
import java.util.List;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.security.access.prepost.PreAuthorize;
import org.springframework.web.bind.annotation.PostMapping;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RestController;
import com.zyplayer.doc.core.json.DocResponseJson;
import com.zyplayer.doc.core.json.ResponseJson;
import com.zyplayer.doc.manage.framework.config.security.DocUserDetails;
import com.zyplayer.doc.manage.framework.config.security.DocUserUtil;
import com.zyplayer.doc.manage.repository.manage.entity.AuthInfo;
import com.zyplayer.doc.manage.service.manage.AuthInfoService;
@RestController
@RequestMapping("/auth/info")
@PreAuthorize("hasAuthority('AUTH_MANAGE')")
public class AuthInfoController {
@Autowired
AuthInfoService authInfoService;
@PostMapping("/list")
public ResponseJson<Object> list() {
List<AuthInfo> authList = authInfoService.list();
return DocResponseJson.ok(authList);
}
@PostMapping("/delete")
public ResponseJson<Object> delete(Long id) {
AuthInfo authInfo = authInfoService.getById(id);
if (authInfo == null || authInfo.getCanEdit() == 0) {
return DocResponseJson.warn("该权限不允许删除");
}
authInfoService.removeById(id);
return DocResponseJson.ok();
}
@PostMapping("/update")
public ResponseJson<Object> update(Long id, String authName, String authDesc) {
AuthInfo authInfo = new AuthInfo();
authInfo.setAuthDesc(authDesc);
authInfo.setAuthName(authName);
if (id != null && id > 0) {
AuthInfo authInfoSel = authInfoService.getById(id);
if (authInfoSel == null || authInfoSel.getCanEdit() == 0) {
return DocResponseJson.warn("该权限不允许编辑");
}
authInfo.setId(id);
authInfoService.updateById(authInfo);
} else {
DocUserDetails currentUser = DocUserUtil.getCurrentUser();
authInfo.setCreationTime(new Date());
authInfo.setCreateUid(currentUser.getUserId());
authInfoService.save(authInfo);
}
return DocResponseJson.ok();
}
}

View File

@@ -1,23 +0,0 @@
package com.zyplayer.doc.manage.web.manage;
import org.springframework.stereotype.Controller;
import org.springframework.web.bind.annotation.RequestMapping;
@Controller
public class HelloController {
// @RequestMapping("/")
// public String index() {
// return "manage/index";
// }
//
// @RequestMapping("/hello")
// public String hello() {
// return "manage/hello";
// }
//
// @RequestMapping("/login")
// public String login() {
// return "statics/manage/hello.html";
// }
}

View File

@@ -0,0 +1,58 @@
package com.zyplayer.doc.manage.web.manage;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import org.apache.commons.lang.StringUtils;
import org.springframework.security.core.AuthenticationException;
import org.springframework.security.web.WebAttributes;
import org.springframework.security.web.savedrequest.HttpSessionRequestCache;
import org.springframework.security.web.savedrequest.RequestCache;
import org.springframework.security.web.savedrequest.SavedRequest;
import org.springframework.web.bind.annotation.GetMapping;
import org.springframework.web.bind.annotation.RestController;
import org.springframework.web.servlet.ModelAndView;
import com.zyplayer.doc.core.json.DocResponseJson;
@RestController
public class LoginController {
private RequestCache requestCache = new HttpSessionRequestCache();
@GetMapping(value = "/login")
public ModelAndView loginPage(HttpServletRequest request) {
return new ModelAndView("/statics/manage/login.html");
}
/**
* 如果是访问受限页面后跳转到登录页的则在targetUrl保存之前受限页面的路径供页面调用
*
* @param request
* @param response
* @return
*/
@GetMapping(value = "/login/success")
public DocResponseJson<String> loginSuccess(HttpServletRequest request, HttpServletResponse response) {
SavedRequest savedRequest = requestCache.getRequest(request, response);
String targetUrl = null;
if (savedRequest != null) {
targetUrl = savedRequest.getRedirectUrl();
}
if (StringUtils.isBlank(targetUrl)) {
targetUrl = "/";
}
return DocResponseJson.ok(targetUrl);
}
/**
* 获取异常信息返回给页面
* @param request
* @param response
* @return
*/
@GetMapping(value = "/login/failure")
public DocResponseJson<String> loginFailure(HttpServletRequest request, HttpServletResponse response) {
AuthenticationException ae = (AuthenticationException) request.getSession().getAttribute(WebAttributes.AUTHENTICATION_EXCEPTION);
return DocResponseJson.warn(ae.getMessage());
}
}

View File

@@ -0,0 +1,70 @@
package com.zyplayer.doc.manage.web.manage;
import java.util.Date;
import java.util.List;
import java.util.stream.Collectors;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.security.access.prepost.PreAuthorize;
import org.springframework.web.bind.annotation.PostMapping;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RestController;
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
import com.zyplayer.doc.core.json.DocResponseJson;
import com.zyplayer.doc.core.json.ResponseJson;
import com.zyplayer.doc.manage.framework.config.security.DocUserDetails;
import com.zyplayer.doc.manage.framework.config.security.DocUserUtil;
import com.zyplayer.doc.manage.repository.manage.entity.AuthInfo;
import com.zyplayer.doc.manage.repository.manage.entity.UserAuth;
import com.zyplayer.doc.manage.service.manage.AuthInfoService;
import com.zyplayer.doc.manage.service.manage.UserAuthService;
@RestController
@RequestMapping("/user/auth")
@PreAuthorize("hasAuthority('AUTH_ASSIGN')")
public class UserAuthController {
@Autowired
AuthInfoService authInfoService;
@Autowired
UserAuthService userAuthService;
@PostMapping("/list")
public ResponseJson<Object> list(Long userId) {
QueryWrapper<UserAuth> userAuthWrapper = new QueryWrapper<>();
userAuthWrapper.eq("user_id", userId);
List<UserAuth> userAuthList = userAuthService.list(userAuthWrapper);
if (userAuthList == null || userAuthList.isEmpty()) {
return DocResponseJson.ok();
}
QueryWrapper<AuthInfo> authQueryWrapper = new QueryWrapper<>();
authQueryWrapper.in("id", userAuthList.stream().collect(Collectors.mapping(UserAuth::getAuthId, Collectors.toList())));
List<AuthInfo> authList = authInfoService.list(authQueryWrapper);
return DocResponseJson.ok(authList);
}
@PostMapping("/delete")
public ResponseJson<Object> delete(Long id) {
userAuthService.removeById(id);
return DocResponseJson.ok();
}
@PostMapping("/insert")
public ResponseJson<Object> insert(Long id, Long userId, Long authId) {
DocUserDetails currentUser = DocUserUtil.getCurrentUser();
UserAuth userAuth = new UserAuth();
userAuth.setAuthId(authId);
userAuth.setUserId(userId);
if (id != null && id > 0) {
userAuth.setId(id);
userAuthService.updateById(userAuth);
} else {
userAuth.setCreationTime(new Date());
userAuth.setCreateUid(currentUser.getUserId());
userAuthService.save(userAuth);
}
return DocResponseJson.ok();
}
}

View File

@@ -1,123 +0,0 @@
package com.zyplayer.doc.manage.web.manage;
import java.util.Collection;
import java.util.HashMap;
import java.util.Map;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import org.springframework.security.core.AuthenticationException;
import org.springframework.security.core.GrantedAuthority;
import org.springframework.security.web.WebAttributes;
import org.springframework.security.web.savedrequest.HttpSessionRequestCache;
import org.springframework.security.web.savedrequest.RequestCache;
import org.springframework.security.web.savedrequest.SavedRequest;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RequestMethod;
import org.springframework.web.bind.annotation.RestController;
import org.springframework.web.servlet.ModelAndView;
import com.zyplayer.doc.manage.framework.config.security.MyUserDetails;
import com.zyplayer.doc.manage.framework.config.security.UserUtil;
@RestController
public class UserController {
private RequestCache requestCache = new HttpSessionRequestCache();
@RequestMapping(value = "/login_page", method = RequestMethod.GET)
public ModelAndView loginPage(HttpServletRequest request) {
if (true) {
return new ModelAndView("/login/ajax");
} else {
return new ModelAndView("login.html");
}
}
/**
* 如果是访问受限页面后跳转到登录页的则在targetUrl保存之前受限页面的路径供页面调用
*
* @param request
* @param response
* @return
*/
@RequestMapping(value = "/login/success", method = RequestMethod.GET)
public Map<String, Object> loginSuccess(HttpServletRequest request, HttpServletResponse response) {
SavedRequest savedRequest = requestCache.getRequest(request, response);
String targetUrl = null;
if (savedRequest != null) {
targetUrl = savedRequest.getRedirectUrl();
}
Map<String, Object> result = new HashMap<String, Object>();
result.put("success", true);
result.put("targetUrl", targetUrl);
return result;
}
/**
* 获取异常信息返回给页面
* @param request
* @param response
* @return
*/
@RequestMapping(value = "/login/failure", method = RequestMethod.GET)
public Map<String, Object> loginFailure(HttpServletRequest request, HttpServletResponse response) {
AuthenticationException ae = (AuthenticationException) request.getSession().getAttribute(WebAttributes.AUTHENTICATION_EXCEPTION);
Map<String, Object> result = new HashMap<String, Object>();
result.put("success", false);
result.put("message", ae.getMessage());
return result;
}
@RequestMapping(value = "/login/ajax", method = RequestMethod.GET)
public Map<String, Object> loginAjax() {
Map<String, Object> result = new HashMap<String, Object>();
result.put("success", false);
result.put("message", "you need login!");
return result;
}
@RequestMapping(value = "/security/user", method = RequestMethod.GET)
public Map<String, Object> securityUser(HttpServletRequest request) {
MyUserDetails user = UserUtil.getCurrentUser();
Map<String, Object> result = new HashMap<String, Object>();
StringBuilder userRole = new StringBuilder();
if (user != null) {
result.put("userId", user.getUserId());
result.put("userName", user.getUsername());
Collection<? extends GrantedAuthority> roleLst = user.getAuthorities();
for (GrantedAuthority sga : roleLst) {
userRole.append(sga.toString() + "; ");
}
}
result.put("userRole", userRole.toString());
result.put("message", "This message is only visible to the user");
return result;
}
@RequestMapping(value = "/security/admin", method = RequestMethod.GET)
public Map<String, Object> securityAdmin(HttpServletRequest request) {
MyUserDetails user = UserUtil.getCurrentUser();
Map<String, Object> result = new HashMap<String, Object>();
StringBuilder userRole = new StringBuilder();
if (user != null) {
result.put("userId", user.getUserId());
result.put("userName", user.getUsername());
Collection<? extends GrantedAuthority> roleLst = user.getAuthorities();
for (GrantedAuthority sga : roleLst) {
userRole.append(sga.toString() + "; ");
}
}
result.put("userRole", userRole.toString());
result.put("message", "This message is only visible to the admin");
return result;
}
@RequestMapping(value = "/user/account", method = RequestMethod.GET)
public Map<String, Object> getUserAcctunt(HttpServletRequest request) {
Map<String, Object> result = new HashMap<String, Object>();
result.put("message", "需要进行完整认证的请求不是通过Remember-me功能进行的认证");
return result;
}
}

View File

@@ -0,0 +1,62 @@
package com.zyplayer.doc.manage.web.manage;
import java.util.Date;
import java.util.List;
import org.apache.commons.lang.StringUtils;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.security.access.prepost.PreAuthorize;
import org.springframework.web.bind.annotation.PostMapping;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RestController;
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
import com.zyplayer.doc.core.json.DocResponseJson;
import com.zyplayer.doc.core.json.ResponseJson;
import com.zyplayer.doc.manage.framework.config.security.DocUserDetails;
import com.zyplayer.doc.manage.framework.config.security.DocUserUtil;
import com.zyplayer.doc.manage.repository.manage.entity.UserInfo;
import com.zyplayer.doc.manage.service.manage.UserInfoService;
@RestController
@RequestMapping("/user/info")
@PreAuthorize("hasAuthority('USER_MANAGE')")
public class UserInfoController {
@Autowired
UserInfoService userInfoService;
@PostMapping("/list")
public ResponseJson<Object> list(String userName) {
QueryWrapper<UserInfo> queryWrapper = new QueryWrapper<>();
if (StringUtils.isNotBlank(userName)) {
queryWrapper.like("user_name", userName);
}
List<UserInfo> userInfoList = userInfoService.list(queryWrapper);
return DocResponseJson.ok(userInfoList);
}
@PostMapping("/delete")
public ResponseJson<Object> delete(Long id) {
UserInfo userInfo = new UserInfo();
userInfo.setId(id);
userInfo.setDelFlag(1);
userInfo.setUpdateTime(new Date());
userInfoService.updateById(userInfo);
return DocResponseJson.ok();
}
@PostMapping("/update")
public ResponseJson<Object> update(UserInfo userInfo) {
if (userInfo.getId() != null && userInfo.getId() > 0) {
userInfo.setUpdateTime(new Date());
userInfoService.updateById(userInfo);
} else {
DocUserDetails currentUser = DocUserUtil.getCurrentUser();
userInfo.setCreationTime(new Date());
userInfo.setCreateUid(currentUser.getUserId());
userInfoService.save(userInfo);
}
return DocResponseJson.ok();
}
}

View File

@@ -6,16 +6,8 @@ import org.springframework.web.bind.annotation.RestController;
import com.zyplayer.doc.manage.repository.manage.mapper.ZyplayerStorageMapper;
/**
* <p>
* 前端控制器
* </p>
*
* @author 暮光:城中城
* @since 2018-11-27
*/
@RestController
@RequestMapping("/zyplayer-storage")
@RequestMapping("/zyplayer/storage")
public class ZyplayerStorageController {
@Autowired