From 2dcfe238ab12f4f18cbd5705a6af5357b367a886 Mon Sep 17 00:00:00 2001 From: jiangqs <jiangqs> Date: 星期六, 01 七月 2023 14:20:57 +0800 Subject: [PATCH] 商户端会员和平台活动 --- ruoyi-modules/ruoyi-shop/src/main/java/com/ruoyi/shop/util/Certificate.java | 25 ++---------- ruoyi-modules/ruoyi-shop/src/main/resources/mapper/task/ShopFileMapper.xml | 2 ruoyi-modules/ruoyi-shop/src/main/java/com/ruoyi/shop/service/impl/shop/ShopServiceImpl.java | 21 ++++++++-- ruoyi-modules/ruoyi-shop/src/main/java/com/ruoyi/shop/util/SignUtils.java | 29 +++----------- ruoyi-modules/ruoyi-shop/src/main/resources/mapper/shop/ShopRelUserMapper.xml | 2 ruoyi-modules/ruoyi-shop/src/main/java/com/ruoyi/shop/util/CertificateUtils.java | 30 ++++----------- 6 files changed, 36 insertions(+), 73 deletions(-) diff --git a/ruoyi-modules/ruoyi-shop/src/main/java/com/ruoyi/shop/service/impl/shop/ShopServiceImpl.java b/ruoyi-modules/ruoyi-shop/src/main/java/com/ruoyi/shop/service/impl/shop/ShopServiceImpl.java index 763c21e..1bbf267 100644 --- a/ruoyi-modules/ruoyi-shop/src/main/java/com/ruoyi/shop/service/impl/shop/ShopServiceImpl.java +++ b/ruoyi-modules/ruoyi-shop/src/main/java/com/ruoyi/shop/service/impl/shop/ShopServiceImpl.java @@ -155,13 +155,24 @@ String[] relUserIdArray = relUserIds.split(","); ShopRelUser shopRelUser; Long userId; - for (String str : relUserIdArray) { - userId = Long.valueOf(str); - shopRelUser = shopRelUserService.getByUserId(userId); - if(shopRelUser!=null){ - throw new ServiceException(AppErrorConstant.SHOP_USER_DOUBLE); + if(mgtEditShopDto.getShopId()!=null){ + for (String str : relUserIdArray) { + userId = Long.valueOf(str); + shopRelUser = shopRelUserService.getByUserId(userId); + if(shopRelUser!=null&&!shopRelUser.getShopId().equals(mgtEditShopDto.getShopId())){ + throw new ServiceException(AppErrorConstant.SHOP_USER_DOUBLE); + } + } + }else { + for (String str : relUserIdArray) { + userId = Long.valueOf(str); + shopRelUser = shopRelUserService.getByUserId(userId); + if(shopRelUser!=null){ + throw new ServiceException(AppErrorConstant.SHOP_USER_DOUBLE); + } } } + } //验证商户名唯一 Shop shopSame = this.getOne(new LambdaQueryWrapper<Shop>().eq(Shop::getDelFlag,0).eq(Shop::getShopName,mgtEditShopDto.getShopName())); diff --git a/ruoyi-modules/ruoyi-shop/src/main/java/com/ruoyi/shop/util/Certificate.java b/ruoyi-modules/ruoyi-shop/src/main/java/com/ruoyi/shop/util/Certificate.java index 0c917e3..f8c0dc1 100644 --- a/ruoyi-modules/ruoyi-shop/src/main/java/com/ruoyi/shop/util/Certificate.java +++ b/ruoyi-modules/ruoyi-shop/src/main/java/com/ruoyi/shop/util/Certificate.java @@ -1,25 +1,8 @@ package com.ruoyi.shop.util; -import com.alibaba.fastjson2.JSONArray; -import com.alibaba.fastjson2.JSONObject; -import com.ruoyi.shop.util.dto.CertificateItem; -import com.ruoyi.shop.util.dto.EncryptedCertificateItem; import lombok.extern.slf4j.Slf4j; -import org.apache.commons.codec.binary.Base64; -import org.apache.http.Header; -import org.apache.http.HttpEntity; -import org.apache.http.client.config.RequestConfig; -import org.apache.http.client.methods.CloseableHttpResponse; -import org.apache.http.client.methods.HttpGet; -import org.apache.http.impl.client.CloseableHttpClient; -import org.apache.http.impl.client.HttpClients; -import org.apache.http.util.EntityUtils; import org.slf4j.Logger; import org.slf4j.LoggerFactory; - -import java.security.cert.X509Certificate; -import java.util.ArrayList; -import java.util.List; /** * @date 2020-03-18 15:06 @@ -41,7 +24,7 @@ * @param savePath * @return */ - public static List<X509Certificate> getCertByAPI(String merchantId, int timeout, String serialNo, String mchPrivateKeyPath, String wechatPubKeyPath, String APIv3Key, String savePath) { + /*public static List<X509Certificate> getCertByAPI(String merchantId, int timeout, String serialNo, String mchPrivateKeyPath, String wechatPubKeyPath, String APIv3Key, String savePath) { String result = ""; //创建http请求 HttpGet httpGet = new HttpGet("https://api.mch.weixin.qq.com/v3/certificates"); @@ -105,11 +88,11 @@ } logger.info("证书List:" + certList); - /*List<PlainCertificateItem> plainList = decrypt(certList, APIv3Key); + *//*List<PlainCertificateItem> plainList = decrypt(certList, APIv3Key); if (CollectionUtils.isNotEmpty(plainList)) { logger.info("平台证书开始保存"); x509Certs = saveCertificate(plainList, savePath); - }*/ + }*//* } } } @@ -121,7 +104,7 @@ logger.error("下载平台证书返回结果:" + e); } return x509Certs; - } + }*/ /*private static List<PlainCertificateItem> decrypt(List<CertificateItem> certList,CloseableHttpResponse response) throws GeneralSecurityException, IOException { diff --git a/ruoyi-modules/ruoyi-shop/src/main/java/com/ruoyi/shop/util/CertificateUtils.java b/ruoyi-modules/ruoyi-shop/src/main/java/com/ruoyi/shop/util/CertificateUtils.java index 3e24f6e..8b6cfae 100644 --- a/ruoyi-modules/ruoyi-shop/src/main/java/com/ruoyi/shop/util/CertificateUtils.java +++ b/ruoyi-modules/ruoyi-shop/src/main/java/com/ruoyi/shop/util/CertificateUtils.java @@ -1,19 +1,5 @@ package com.ruoyi.shop.util; -import cn.hutool.core.codec.Base64; -import cn.hutool.core.io.FileUtil; -import java.io.BufferedInputStream; -import java.io.FileInputStream; -import java.io.IOException; -import java.io.InputStream; -import java.security.KeyFactory; -import java.security.NoSuchAlgorithmException; -import java.security.PrivateKey; -import java.security.cert.*; -import java.security.spec.InvalidKeySpecException; -import java.security.spec.PKCS8EncodedKeySpec; - - /** * @date 2020-03-18 11:25 * @description 证书相关 @@ -26,7 +12,7 @@ * @param priKeyPath 商户私钥证书路径 * @return */ - public static String getPrivateKey(String priKeyPath) throws Exception { + /*public static String getPrivateKey(String priKeyPath) throws Exception { String originalKey = FileUtil.readUtf8String(priKeyPath); String privateKey = originalKey .replace("-----BEGIN PRIVATE KEY-----", "") @@ -41,11 +27,11 @@ } - /** + *//** * 从字符串中加载私钥 * @param privateKeyStr 私钥 * @return - */ + *//* public static PrivateKey loadPrivateKey(String privateKeyStr) throws Exception { try { byte[] buffer = Base64.decode(privateKeyStr); @@ -62,11 +48,11 @@ } - /** + *//** * 获取证书 * @param fileName 证书文件路径 (required) * @return - */ + *//* public static X509Certificate getCertificate(String fileName) throws IOException { InputStream fis = new FileInputStream(fileName); try (BufferedInputStream bis = new BufferedInputStream(fis)) { @@ -84,11 +70,11 @@ } - /** + *//** * 获取证书 * @param inputStream 证书文件 * @return - */ + *//* public static X509Certificate getCertificate(InputStream inputStream) { try { CertificateFactory cf = CertificateFactory.getInstance("X509"); @@ -102,5 +88,5 @@ } catch (CertificateException e) { throw new RuntimeException("无效的证书", e); } - } + }*/ } diff --git a/ruoyi-modules/ruoyi-shop/src/main/java/com/ruoyi/shop/util/SignUtils.java b/ruoyi-modules/ruoyi-shop/src/main/java/com/ruoyi/shop/util/SignUtils.java index b61ba47..ac5c3f1 100644 --- a/ruoyi-modules/ruoyi-shop/src/main/java/com/ruoyi/shop/util/SignUtils.java +++ b/ruoyi-modules/ruoyi-shop/src/main/java/com/ruoyi/shop/util/SignUtils.java @@ -1,24 +1,7 @@ package com.ruoyi.shop.util; -import cn.hutool.http.HttpResponse; -import com.ruoyi.common.core.utils.uuid.IdUtils; -import com.wechat.pay.contrib.apache.httpclient.util.PemUtil; -import org.apache.commons.codec.binary.Base64; -import org.apache.commons.lang3.StringUtils; import org.slf4j.Logger; import org.slf4j.LoggerFactory; - -import java.io.FileInputStream; -import java.nio.charset.StandardCharsets; -import java.security.KeyFactory; -import java.security.PrivateKey; -import java.security.PublicKey; -import java.security.Signature; -import java.security.cert.Certificate; -import java.security.cert.CertificateFactory; -import java.security.spec.PKCS8EncodedKeySpec; -import java.util.List; -import java.util.Map; /** * @date 2020-03-18 11:02 @@ -37,7 +20,7 @@ * @param mchPrivateKeyPath 电商平台商户API私钥 * @return */ - public static String authorization(String method,String urlSuffix,String mchId,String serialNo,String body,String mchPrivateKeyPath) { + /*public static String authorization(String method,String urlSuffix,String mchId,String serialNo,String body,String mchPrivateKeyPath) { try { String mchPrivateKey = CertificateUtils.getPrivateKey(mchPrivateKeyPath); //时间戳 @@ -69,7 +52,7 @@ } } - /** + *//** * Authorization 签名串 * @param method * @param urlSuffix @@ -77,7 +60,7 @@ * @param nonceStr * @param body * @return - */ + *//* private static StringBuilder signMessage(String method,String urlSuffix,String timestamp,String nonceStr,String body) { return new StringBuilder() .append(method) @@ -92,13 +75,13 @@ .append("\n"); } - /** + *//** * 私钥签名 * @param data 需要加密的数据 * @param mchPriKey * @return * @throws Exception - */ + *//* public static byte[] v3signRSA(String data, String mchPriKey) throws Exception { //签名的类型 Signature sign = Signature.getInstance("SHA256withRSA"); @@ -156,5 +139,5 @@ logger.info("v3VerifyRSA result:{}","签名验证失败"); } return result; - } + }*/ } \ No newline at end of file diff --git a/ruoyi-modules/ruoyi-shop/src/main/resources/mapper/shop/ShopRelUserMapper.xml b/ruoyi-modules/ruoyi-shop/src/main/resources/mapper/shop/ShopRelUserMapper.xml index ad21716..5d6706a 100644 --- a/ruoyi-modules/ruoyi-shop/src/main/resources/mapper/shop/ShopRelUserMapper.xml +++ b/ruoyi-modules/ruoyi-shop/src/main/resources/mapper/shop/ShopRelUserMapper.xml @@ -72,6 +72,6 @@ </delete> <update id="deleteByShopId"> - UPDATE shop_rel_user SET del_flag = 1 WHERE shop_id = #{shopId} + UPDATE t_shop_rel_user SET del_flag = 1 WHERE shop_id = #{shopId} </update> </mapper> diff --git a/ruoyi-modules/ruoyi-shop/src/main/resources/mapper/task/ShopFileMapper.xml b/ruoyi-modules/ruoyi-shop/src/main/resources/mapper/task/ShopFileMapper.xml index 4afeb61..d72bdb3 100644 --- a/ruoyi-modules/ruoyi-shop/src/main/resources/mapper/task/ShopFileMapper.xml +++ b/ruoyi-modules/ruoyi-shop/src/main/resources/mapper/task/ShopFileMapper.xml @@ -67,7 +67,7 @@ </delete> <update id="deleteByShopId"> - UPDATE shop_file SET del_flag = 1 WHERE shop_id = #{shopId} + UPDATE t_shop_file SET del_flag = 1 WHERE shop_id = #{shopId} </update> </mapper> -- Gitblit v1.7.1