admin
2024-04-26 5e7b0ed4a154ad067cbcf4aa1a1c7cce32f9864c
fanli/src/main/java/com/yeshi/fanli/aspect/AdminLoginAspect.java
@@ -17,6 +17,8 @@
import org.aspectj.lang.annotation.Around;
import org.aspectj.lang.annotation.Aspect;
import org.aspectj.lang.reflect.MethodSignature;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
import org.springframework.stereotype.Component;
import org.springframework.web.context.request.RequestContextHolder;
import org.springframework.web.context.request.ServletRequestAttributes;
@@ -36,6 +38,8 @@
@Aspect
public class AdminLoginAspect {
    private Logger logger = LoggerFactory.getLogger(AdminLoginAspect.class);
    @Resource
    private AdminUserService adminUserService;
@@ -53,7 +57,16 @@
        AdminUser admin = (AdminUser) request.getSession().getAttribute(Constant.SESSION_ADMIN);
        if (Constant.IS_TEST) {
            admin = new AdminUser();
            admin.setId(1L);
            admin.setName("Ceshi");
            admin.setAccount("ceshi");
        }
        if (admin == null) {
            String from = request.getParameter("from");
            // 邮件H5来源的不判断是否登录
@@ -64,19 +77,22 @@
                    signAES = URLDecoder.decode(request.getParameter("sign"), "UTF-8");
                String sign = AESUtil.decrypt(signAES, Constant.ADMINH5_AESKEY);
                if (!StringUtil.isNullOrEmpty(sign)) {
                    LogHelper.error("H5审核签名:" + sign);
                    logger.debug("H5审核签名:" + sign);
                    JSONObject json = JSONObject.fromObject(sign);
                    long time = json.optLong("timeStamp");
                    long adminId = json.optLong("adminId");
                    AdminUser adminUser = adminUserService.selectByPrimaryKey(adminId);
                    // 1个小时链接失效
                    if (System.currentTimeMillis() - time > 1000 * 60 * 60 || adminUser == null) {
                        logger.debug("H5审核链接失效");
                        servletContainer.getResponse().getWriter()
                                .print(callback + "(" + JsonUtil.loadFalseResult(2, "链接失效") + ")");
                        return null;
                    } else {
                        logger.debug("H5审核设置Session开始");
                        request.getSession().setAttribute(Constant.SESSION_ADMIN, adminUser);
                        request.getSession().setAttribute(Constant.SESSION_EXTRACT_VERIFY_RESULT, "1");
                        logger.debug("H5审核设置Session结束");
                    }
                } else {
                    servletContainer.getResponse().getWriter()