mitao
2025-02-26 aacde98013cc9b99f812c7a08d210a68c9b8359f
springcloud_k8s_panzhihuazhihuishequ/common/src/main/java/com/panzhihua/common/controller/BaseController.java
@@ -1,7 +1,11 @@
package com.panzhihua.common.controller;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import com.panzhihua.common.model.vos.community.ComActVO;
import com.panzhihua.common.model.vos.sangeshenbian.SystemUserVo;
import com.panzhihua.common.utlis.StringUtils;
import org.springframework.util.ObjectUtils;
import org.springframework.web.context.request.RequestContextHolder;
import org.springframework.web.context.request.ServletRequestAttributes;
@@ -16,6 +20,9 @@
import lombok.SneakyThrows;
import lombok.extern.slf4j.Slf4j;
import static java.util.Objects.isNull;
import static org.apache.commons.lang3.StringUtils.isBlank;
/**
 * @program: springcloud_k8s_panzhihuazhihuishequ
@@ -41,6 +48,14 @@
        return ((ServletRequestAttributes)RequestContextHolder.getRequestAttributes()).getRequest();
    }
    /**
     * 获取request对象
     */
    public HttpServletResponse getResponse() {
        return ((ServletRequestAttributes)RequestContextHolder.getRequestAttributes()).getResponse();
    }
    /**
     * 获取登录对象信息
     *
@@ -60,9 +75,9 @@
    public Long getCommunityId() {
        LoginUserInfoVO loginUserInfo = this.getLoginUserInfo();
        Long communityId = loginUserInfo.getCommunityId();
        if (null == communityId || 0 == communityId) {
            throw new ServiceException("用户未绑定社区");
        }
//        if (null == communityId) {
//            throw new ServiceException("用户未绑定社区");
//        }
        return communityId;
    }
@@ -94,6 +109,33 @@
        }
        return areaId;
    }
    /**
     * 获取登录对象所在区域编码
     *
     * @return
     */
    public String getAreaCode() {
        String appid = this.getRequest().getHeader("appid");
        if(StringUtils.isNotEmpty(appid)){
            if(appid.equals("wx08932ba29546ff82")){
                return "510411";
            }
            else if(appid.equals("wx50d8c395af50481b")){
                return "510402";
            }
            else {
                return "510423";
            }
        } else {
            LoginUserInfoVO loginUserInfoVO=this.getLoginUserInfo();
            ComActVO comActVO=loginUserInfoVO.getComActVO();
            if(isNull(comActVO) || isBlank(comActVO.getAreaCode())){
                return "510423";
            }
            return comActVO.getAreaCode();
        }
    }
    /**
     * 获取登录token
@@ -106,6 +148,18 @@
        return header;
    }
    public String getAppId(){
        String appid = this.getRequest().getHeader("appid");
        if(StringUtils.isEmpty(appid)){
            return "wx0cef797390444b75";
        }
        return appid;
    }
    public String getAppSecret(){
        LoginUserInfoVO loginUserInfo = this.getLoginUserInfo();
        return loginUserInfo.getAppSecret();
    }
    /**
     * 获取登录对象所有信息
     *
@@ -147,5 +201,23 @@
        LoginUserInfoVO loginUserInfoVO = JSONObject.parseObject(userInfo, LoginUserInfoVO.class);
        return loginUserInfoVO;
    }
    /**
     * 获取三个身边管理后台登录用户信息
     * @return
     */
    @SneakyThrows
    public SystemUserVo getLoginUserInfoSanGeShenBian() {
        HttpServletRequest request = this.getRequest();
        String userInfo = request.getHeader(TokenConstant.TOKEN_USERINFO);
        boolean empty = ObjectUtils.isEmpty(userInfo);
        if (empty) {
            return null;
        }
        byte[] bytes = AES.parseHexStr2Byte(userInfo);
        byte[] decrypt = AES.decrypt(bytes, Constants.AES_KEY);
        userInfo = new String(decrypt);
        SystemUserVo loginUserInfoVO = JSONObject.parseObject(userInfo, SystemUserVo.class);
        return loginUserInfoVO;
    }
}