第一版跨服务调用校验身份,用不了

This commit is contained in:
baozhipeng
2021-09-14 11:49:38 +08:00
parent d952cb3cc0
commit 8ae4dc7646
2 changed files with 31 additions and 11 deletions
@@ -1,6 +1,9 @@
package com.jero.payment.service.impl; package com.jero.payment.service.impl;
import cn.hutool.core.util.CharsetUtil;
import cn.hutool.core.util.StrUtil;
import cn.hutool.http.HttpUtil; import cn.hutool.http.HttpUtil;
import com.alibaba.fastjson.JSONObject;
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
import com.baomidou.mybatisplus.core.conditions.update.LambdaUpdateWrapper; import com.baomidou.mybatisplus.core.conditions.update.LambdaUpdateWrapper;
@@ -11,6 +14,7 @@ import com.jero.common.api.vo.Result;
import com.jero.common.exception.JeroBootException; import com.jero.common.exception.JeroBootException;
import com.jero.common.system.query.QueryGenerator; import com.jero.common.system.query.QueryGenerator;
import com.jero.common.system.vo.LoginUser; import com.jero.common.system.vo.LoginUser;
import com.jero.common.util.RestUtil;
import com.jero.common.util.oConvertUtils; import com.jero.common.util.oConvertUtils;
import com.jero.contract.common.PayIncomeContractCommon; import com.jero.contract.common.PayIncomeContractCommon;
import com.jero.meeting.entity.PayMeetingSituation; import com.jero.meeting.entity.PayMeetingSituation;
@@ -27,6 +31,7 @@ import com.jero.project.entity.PayWorkingGroup;
import com.jero.project.entity.PayWorkingGroupSubItem; import com.jero.project.entity.PayWorkingGroupSubItem;
import com.jero.project.mapper.PayCommonProjectMapper; import com.jero.project.mapper.PayCommonProjectMapper;
import com.jero.project.mapper.PayWorkingGroupSubItemMapper; import com.jero.project.mapper.PayWorkingGroupSubItemMapper;
import com.jero.util.standardsUtil;
import io.lettuce.core.dynamic.annotation.Param; import io.lettuce.core.dynamic.annotation.Param;
import org.apache.commons.beanutils.PropertyUtils; import org.apache.commons.beanutils.PropertyUtils;
import org.apache.commons.collections.CollectionUtils; import org.apache.commons.collections.CollectionUtils;
@@ -42,12 +47,10 @@ import org.springframework.web.servlet.ModelAndView;
import javax.annotation.Resource; import javax.annotation.Resource;
import javax.servlet.http.HttpServletRequest; import javax.servlet.http.HttpServletRequest;
import java.io.UnsupportedEncodingException;
import java.math.BigDecimal; import java.math.BigDecimal;
import java.text.DecimalFormat; import java.text.DecimalFormat;
import java.util.Arrays; import java.util.*;
import java.util.Date;
import java.util.List;
import java.util.Objects;
import java.util.stream.Collectors; import java.util.stream.Collectors;
/** /**
@@ -73,6 +76,8 @@ public class PayPaymentRecordServiceImpl extends ServiceImpl<PayPaymentRecordMap
@Value("${jero.path.upload}") @Value("${jero.path.upload}")
private String upLoadPath; private String upLoadPath;
@Value("${standards.url}")
private static String url;
/** /**
* 到账开票主列表 * 到账开票主列表
@@ -81,6 +86,18 @@ public class PayPaymentRecordServiceImpl extends ServiceImpl<PayPaymentRecordMap
* @return * @return
*/ */
public List<PayCommonProject> mainList(Page page, PayCommonProject payCommonProject){ public List<PayCommonProject> mainList(Page page, PayCommonProject payCommonProject){
//使用公钥加密token
byte[] bytes = standardsUtil.encryptByRsaPriKey();
//从标协项目获取公钥
String publicKey = HttpUtil.get("http://localhost:8080/api/authenticationUtils/getPublicKey");
HashMap<String, Object> paramMap = new HashMap<>();
paramMap.put("token", Base64.getEncoder().encodeToString(bytes));
paramMap.put("publicKey", publicKey);
String result3= HttpUtil.get("http://localhost:8080/api/paymentInfo/incomingPaymentCheck", paramMap);
return payPaymentRecordMapper.mainList(page, payCommonProject); return payPaymentRecordMapper.mainList(page, payCommonProject);
} }
@@ -1,5 +1,7 @@
package com.jero.util; package com.jero.util;
import cn.hutool.core.util.CharsetUtil;
import cn.hutool.core.util.StrUtil;
import cn.hutool.crypto.asymmetric.KeyType; import cn.hutool.crypto.asymmetric.KeyType;
import cn.hutool.crypto.asymmetric.RSA; import cn.hutool.crypto.asymmetric.RSA;
import cn.hutool.http.HttpUtil; import cn.hutool.http.HttpUtil;
@@ -19,7 +21,7 @@ public class standardsUtil {
private static String token; private static String token;
public static String getRSAPublicKey(){ public static String getRSAPublicKey(){
JSONObject jsonObject = RestUtil.get(url + "/sys/getRSAPublicKey"); JSONObject jsonObject = RestUtil.get(url + "/commonUtils/getRSAPublicKey");
if (jsonObject.getBoolean("success")) { if (jsonObject.getBoolean("success")) {
return jsonObject.getString("result"); return jsonObject.getString("result");
}else { }else {
@@ -30,13 +32,14 @@ public class standardsUtil {
/** /**
* RSA 使用公钥加密token * RSA 使用公钥加密token
* @param RSAPublicKey 公钥
* @return String 加密后的字符串
*/ */
public static String encryptByRsaPriKey(String RSAPublicKey) { public static byte[] encryptByRsaPriKey() {
RSA rsa = new RSA(null, RSAPublicKey); //从标协项目获取公钥
byte[] encrypt = rsa.encrypt(token, KeyType.PublicKey); String publicKey=HttpUtil.get("http://localhost:8080/api/authenticationUtils/getPublicKey");
return new String(encrypt);
RSA rsa = new RSA(null,publicKey);
return rsa.encrypt(StrUtil.bytes("Aa123456!!", CharsetUtil.CHARSET_UTF_8), KeyType.PublicKey);
} }
} }