From 31b8c6fc8c13f6a6e04362801eec0fce85af7366 Mon Sep 17 00:00:00 2001 From: manailin <261030956@qq.com> Date: 星期四, 11 十一月 2021 08:54:04 +0800 Subject: [PATCH] Merge branch 'test' of http://gitlab.nhys.cdnhxx.com/root/zhihuishequ into test --- springcloud_k8s_panzhihuazhihuishequ/auth/src/main/java/com/panzhihua/auth/service/impl/LoginServiceImpl.java | 258 +++++++++++++++++++++++++++++++++++++++++++++++++++ 1 files changed, 258 insertions(+), 0 deletions(-) diff --git a/springcloud_k8s_panzhihuazhihuishequ/auth/src/main/java/com/panzhihua/auth/service/impl/LoginServiceImpl.java b/springcloud_k8s_panzhihuazhihuishequ/auth/src/main/java/com/panzhihua/auth/service/impl/LoginServiceImpl.java new file mode 100644 index 0000000..2598caa --- /dev/null +++ b/springcloud_k8s_panzhihuazhihuishequ/auth/src/main/java/com/panzhihua/auth/service/impl/LoginServiceImpl.java @@ -0,0 +1,258 @@ +package com.panzhihua.auth.service.impl; + +import java.util.concurrent.TimeUnit; + +import javax.annotation.Resource; + +import com.panzhihua.common.model.vos.R; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.data.redis.core.StringRedisTemplate; +import org.springframework.data.redis.core.ValueOperations; +import org.springframework.security.authentication.AuthenticationManager; +import org.springframework.security.authentication.UsernamePasswordAuthenticationToken; +import org.springframework.security.core.Authentication; +import org.springframework.stereotype.Service; + +import com.panzhihua.auth.service.LoginService; +import com.panzhihua.common.constants.TokenConstant; +import com.panzhihua.common.constants.UserConstants; +import com.panzhihua.common.model.vos.LoginReturnVO; +import com.panzhihua.common.model.vos.LoginReturnsVO; +import com.panzhihua.common.model.vos.LoginUserInfoVO; +import com.panzhihua.common.utlis.JWTTokenUtil; + +/** + * @program: springcloud_k8s_panzhihuazhihuishequ + * @description: token + * @author: huang.hongfa weixin hhf9596 qq 959656820 + * @create: 2020-11-19 17:07 + **/ +@Service +public class LoginServiceImpl implements LoginService { + @Resource + private AuthenticationManager authenticationManager; + @Autowired + private StringRedisTemplate redisTemplate; + + /** + * 微信小程序登录 + * + * @param openId + * 微信标识 + * @return jwt + */ + @Override + public LoginReturnVO loginApplets(String openId) { + Authentication authentication = null; + authentication = authenticationManager + .authenticate(new UsernamePasswordAuthenticationToken(openId + "_1", UserConstants.PASSWORD)); + LoginUserInfoVO loginUser = (LoginUserInfoVO)authentication.getPrincipal(); + String token = JWTTokenUtil.generateToken(loginUser); + String refeshToken = JWTTokenUtil.generateRefeshToken(loginUser); + LoginReturnVO loginReturnVO = new LoginReturnVO(); + loginReturnVO.setToken(token); + loginReturnVO.setRefreshToken(refeshToken); + return loginReturnVO; + } + + /** + * 小程序用户登出 + * + * @param token + * 登录用户token + */ + @Override + public void logoutApplets(String token) { + ValueOperations<String, String> valueOperations = redisTemplate.opsForValue(); + token = token.replaceAll(TokenConstant.TOKEN_PRE, ""); + valueOperations.set(UserConstants.LOGOUT_TOKEN + token, token, TokenConstant.EXPIRETIME, TimeUnit.MINUTES); + } + + /** + * 运营后台登录 + * + * @param account + * 账户 + * @param password + * 密码 + * @return 登录结果 + */ + @Override + public LoginReturnVO loginAppletsBackStage(String account, String password) { + Authentication authentication = null; + authentication = + authenticationManager.authenticate(new UsernamePasswordAuthenticationToken(account + "_2", password)); + LoginUserInfoVO loginUser = (LoginUserInfoVO)authentication.getPrincipal(); + String token = JWTTokenUtil.generateToken(loginUser); + String refeshToken = JWTTokenUtil.generateRefeshToken(loginUser); + LoginReturnVO loginReturnVO = new LoginReturnVO(); + loginReturnVO.setToken(token); + loginReturnVO.setRefreshToken(refeshToken); + return loginReturnVO; + } + + /** + * 社区后台登录 + * + * @param account + * 账户 + * @param password + * 密码 + * @return 登录结果 + */ + @Override + public LoginReturnVO loginCommunityBackage(String account, String password) { + Authentication authentication = null; + authentication = + authenticationManager.authenticate(new UsernamePasswordAuthenticationToken(account + "_3", password)); + LoginUserInfoVO loginUser = (LoginUserInfoVO)authentication.getPrincipal(); + String token = JWTTokenUtil.generateToken(loginUser); + String refeshToken = JWTTokenUtil.generateRefeshToken(loginUser); + LoginReturnVO loginReturnVO = new LoginReturnVO(); + loginReturnVO.setToken(token); + loginReturnVO.setRefreshToken(refeshToken); + return loginReturnVO; + } + + /** + * 商家后台登录 + * + * @param account + * 账户 + * @param password + * 密码 + * @return 登录结果 + */ + @Override + public LoginReturnVO loginShopBackStage(String account, String password) { + Authentication authentication = null; + authentication = + authenticationManager.authenticate(new UsernamePasswordAuthenticationToken(account + "_5", password)); + LoginUserInfoVO loginUser = (LoginUserInfoVO)authentication.getPrincipal(); + String token = JWTTokenUtil.generateToken(loginUser); + String refeshToken = JWTTokenUtil.generateRefeshToken(loginUser); + LoginReturnVO loginReturnVO = new LoginReturnVO(); + loginReturnVO.setToken(token); + loginReturnVO.setRefreshToken(refeshToken); + return loginReturnVO; + } + + /** + * 大数据统计平台(区、街道、社区三层登陆接口) + * + * @param account + * 账户 + * @param password + * 密码 + * @author manailin + * @return 登录结果 + * @date 2021-5-13 10:56 + */ + @Override + public LoginReturnVO loginBigDataBackStage(String account, String password) { + Authentication authentication = null; + authentication = + authenticationManager.authenticate(new UsernamePasswordAuthenticationToken(account + "_8", password)); + LoginUserInfoVO loginUser = (LoginUserInfoVO)authentication.getPrincipal(); + String token = JWTTokenUtil.generateToken(loginUser); + String refeshToken = JWTTokenUtil.generateRefeshToken(loginUser); + LoginReturnVO loginReturnVO = new LoginReturnVO(); + loginReturnVO.setToken(token); + loginReturnVO.setRefreshToken(refeshToken); + return loginReturnVO; + } + + /** + * 商家后台登录 + * + * @param account + * 账户 + * @param password + * 密码 + * @return 登录结果 + */ + @Override + public LoginReturnsVO loginGridApp(String account, String password) { + Authentication authentication = null; + authentication = + authenticationManager.authenticate(new UsernamePasswordAuthenticationToken(account + "_6", password)); + LoginUserInfoVO loginUser = (LoginUserInfoVO)authentication.getPrincipal(); + String token = JWTTokenUtil.generateToken(loginUser); + String refeshToken = JWTTokenUtil.generateRefeshToken(loginUser); + LoginReturnsVO loginReturnVO = new LoginReturnsVO(); + loginReturnVO.setToken(token); + loginReturnVO.setRefreshToken(refeshToken); + loginReturnVO.setUserId(loginUser.getUserId()); + return loginReturnVO; + } + + /** + * 商家后台登录 + * + * @param account + * 账户 + * @param password + * 密码 + * @return 登录结果 + */ + @Override + public LoginReturnVO loginGridBackstage(String account, String password) { + Authentication authentication = null; + authentication = + authenticationManager.authenticate(new UsernamePasswordAuthenticationToken(account + "_7", password)); + LoginUserInfoVO loginUser = (LoginUserInfoVO)authentication.getPrincipal(); + String token = JWTTokenUtil.generateToken(loginUser); + String refeshToken = JWTTokenUtil.generateRefeshToken(loginUser); + LoginReturnVO loginReturnVO = new LoginReturnVO(); + loginReturnVO.setToken(token); + loginReturnVO.setRefreshToken(refeshToken); + return loginReturnVO; + } + + @Override + public LoginReturnVO loginCgBackage(String account, String password){ + Authentication authentication = null; + authentication = + authenticationManager.authenticate(new UsernamePasswordAuthenticationToken(account + "_9", password)); + LoginUserInfoVO loginUser = (LoginUserInfoVO)authentication.getPrincipal(); + String token = JWTTokenUtil.generateToken(loginUser); + String refeshToken = JWTTokenUtil.generateRefeshToken(loginUser); + LoginReturnVO loginReturnVO = new LoginReturnVO(); + loginReturnVO.setToken(token); + loginReturnVO.setRefreshToken(refeshToken); + return loginReturnVO; + } + + @Override + public LoginReturnsVO loginAlarmApp(String account, String password) { + Authentication authentication = null; + authentication = + authenticationManager.authenticate(new UsernamePasswordAuthenticationToken(account + "_10", password)); + LoginUserInfoVO loginUser = (LoginUserInfoVO)authentication.getPrincipal(); + String token = JWTTokenUtil.generateToken(loginUser); + String refeshToken = JWTTokenUtil.generateRefeshToken(loginUser); + LoginReturnsVO loginReturnVO = new LoginReturnsVO(); + loginReturnVO.setToken(token); + loginReturnVO.setRefreshToken(refeshToken); + loginReturnVO.setUserId(loginUser.getUserId()); + return loginReturnVO; + } + + /** + * 便民服务商家后台登录 + * @param account 账户 + * @param password 密码 + * @return 登录结果 + */ + @Override + public LoginReturnVO loginMerchantBackStage(String account, String password) { + Authentication authentication = authenticationManager.authenticate(new UsernamePasswordAuthenticationToken(account + "_10", password)); + LoginUserInfoVO loginUser = (LoginUserInfoVO)authentication.getPrincipal(); + String token = JWTTokenUtil.generateToken(loginUser); + String refeshToken = JWTTokenUtil.generateRefeshToken(loginUser); + LoginReturnVO loginReturnVO = new LoginReturnVO(); + loginReturnVO.setToken(token); + loginReturnVO.setRefreshToken(refeshToken); + return loginReturnVO; + } +} -- Gitblit v1.7.1