mitao
2024-06-18 fd97cde3d994a3aa6898ba862cd20d0c081012c3
Merge remote-tracking branch 'origin/master'
29个文件已修改
1个文件已删除
1个文件已添加
603 ■■■■ 已修改文件
ruoyi-api/ruoyi-api-system/src/main/java/com/ruoyi/system/api/domain/vo/AuctionGoodsinfoVO.java 6 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
ruoyi-api/ruoyi-api-system/src/main/java/com/ruoyi/system/api/domain/vo/AuctionSalesroomGoodsInfoVO.java 12 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
ruoyi-api/ruoyi-api-system/src/main/java/com/ruoyi/system/api/domain/vo/Express100VO.java 1 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
ruoyi-api/ruoyi-api-system/src/main/java/com/ruoyi/system/api/domain/vo/GoodsGroupPurchaseInfoVO.java 4 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
ruoyi-api/ruoyi-api-system/src/main/java/com/ruoyi/system/api/domain/vo/MemberOrderListVO.java 7 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
ruoyi-api/ruoyi-api-system/src/main/java/com/ruoyi/system/api/domain/vo/OrderReturnVO.java 3 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
ruoyi-api/ruoyi-api-system/src/main/java/com/ruoyi/system/api/domain/vo/OrderVO.java 5 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
ruoyi-common/ruoyi-common-core/src/main/java/com/ruoyi/common/core/utils/ip/IpUtils.java 6 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
ruoyi-common/ruoyi-common-redis/src/main/java/com/ruoyi/common/redis/configure/RedisConfig.java 2 ●●● 补丁 | 查看 | 原始文档 | blame | 历史
ruoyi-modules/ruoyi-auction/src/main/java/com/ruoyi/auction/service/impl/AuctionGoodsServiceImpl.java 15 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
ruoyi-modules/ruoyi-auction/src/main/java/com/ruoyi/auction/service/impl/AuctionSalesroomGoodsServiceImpl.java 5 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
ruoyi-modules/ruoyi-auction/src/main/java/com/ruoyi/auction/service/impl/AuctionSalesroomServiceImpl.java 14 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
ruoyi-modules/ruoyi-goods/src/main/java/com/ruoyi/goods/service/impl/GoodsGroupPurchaseServiceImpl.java 1 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
ruoyi-modules/ruoyi-goods/src/main/java/com/ruoyi/goods/service/impl/GoodsSkuServiceImpl.java 5 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
ruoyi-modules/ruoyi-order/src/main/java/com/ruoyi/order/controller/forepart/ForepartLogisticsController.java 16 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
ruoyi-modules/ruoyi-order/src/main/java/com/ruoyi/order/service/impl/LogisticsServiceImpl.java 10 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
ruoyi-modules/ruoyi-order/src/main/java/com/ruoyi/order/service/impl/MemberInvoiceRiseServiceImpl.java 20 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
ruoyi-modules/ruoyi-order/src/main/java/com/ruoyi/order/service/impl/MemberInvoiceServiceImpl.java 8 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
ruoyi-modules/ruoyi-order/src/main/java/com/ruoyi/order/service/impl/OrderAuctionBondServiceImpl.java 11 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
ruoyi-modules/ruoyi-order/src/main/java/com/ruoyi/order/service/impl/OrderReturnRequestServiceImpl.java 2 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
ruoyi-modules/ruoyi-order/src/main/java/com/ruoyi/order/service/impl/OrderServiceImpl.java 15 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
ruoyi-modules/ruoyi-order/src/main/java/com/ruoyi/order/service/impl/PaylogServiceImpl.java 17 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
ruoyi-modules/ruoyi-order/src/main/java/com/ruoyi/order/util/WxPayUtils.java 287 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
ruoyi-modules/ruoyi-order/src/main/java/com/ruoyi/order/util/tencent/common/Configure.java 6 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
ruoyi-modules/ruoyi-order/src/main/java/com/ruoyi/order/util/tencent/common/cert_2/apiclient_cert.p12 补丁 | 查看 | 原始文档 | blame | 历史
ruoyi-modules/ruoyi-order/src/main/java/com/ruoyi/order/util/tencent/common/cert_2/apiclient_cert.pem 47 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
ruoyi-modules/ruoyi-order/src/main/java/com/ruoyi/order/util/tencent/common/cert_2/apiclient_key.pem 52 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
ruoyi-modules/ruoyi-order/src/main/java/com/ruoyi/order/util/tencent/common/cert_2/rootca.pem 19 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
ruoyi-modules/ruoyi-order/src/main/java/com/ruoyi/order/util/tencent/protocol/PayToTheUserReqData.java 2 ●●● 补丁 | 查看 | 原始文档 | blame | 历史
ruoyi-modules/ruoyi-order/src/main/java/com/ruoyi/order/util/tencent/protocol/UnifiedorderReqData.java 3 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
ruoyi-modules/ruoyi-order/src/main/java/com/ruoyi/order/util/tencent/protocol/WXPayReport.java 2 ●●● 补丁 | 查看 | 原始文档 | blame | 历史
ruoyi-api/ruoyi-api-system/src/main/java/com/ruoyi/system/api/domain/vo/AuctionGoodsinfoVO.java
@@ -53,12 +53,16 @@
    @ApiModelProperty(value = "商品说明")
    @JsonInclude(JsonInclude.Include.ALWAYS)
    private String explain;
    @ApiModelProperty(value = "商品介绍")
    @JsonInclude(JsonInclude.Include.ALWAYS)
    private String detail;
    @ApiModelProperty(value = "商品年份")
    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "GMT+8")
    @JsonInclude(JsonInclude.Include.ALWAYS)
    private String years;
    private LocalDateTime years;
    @ApiModelProperty(value = "商品分类")
    @JsonInclude(JsonInclude.Include.ALWAYS)
ruoyi-api/ruoyi-api-system/src/main/java/com/ruoyi/system/api/domain/vo/AuctionSalesroomGoodsInfoVO.java
@@ -86,6 +86,14 @@
    @JsonInclude(JsonInclude.Include.ALWAYS)
    private String album;
    @ApiModelProperty(value = "分享标题")
    @JsonInclude(JsonInclude.Include.ALWAYS)
    private String shareTitle;
    @ApiModelProperty(value = "分享图片")
    @JsonInclude(JsonInclude.Include.ALWAYS)
    private String sharePic;
    @ApiModelProperty(value = "是否出价 1未出价,2出价")
    @JsonInclude(JsonInclude.Include.ALWAYS)
    private Integer isBond;
@@ -122,7 +130,9 @@
    @JsonInclude(JsonInclude.Include.ALWAYS)
    private String orderNo;
    @ApiModelProperty(value = "商品说明")
    @JsonInclude(JsonInclude.Include.ALWAYS)
    private String explain;
}
ruoyi-api/ruoyi-api-system/src/main/java/com/ruoyi/system/api/domain/vo/Express100VO.java
@@ -11,5 +11,6 @@
    private String com;
    private String state;
    private String status;
    private String logisticsName;
    private List<LogisticsInfoVO> data;
}
ruoyi-api/ruoyi-api-system/src/main/java/com/ruoyi/system/api/domain/vo/GoodsGroupPurchaseInfoVO.java
@@ -6,6 +6,7 @@
import com.ruoyi.common.core.enums.GroupStatusEnum;
import com.ruoyi.common.core.enums.ListingStatusEnum;
import com.ruoyi.common.core.enums.StartStatusEnum;
import com.ruoyi.system.api.domain.Order;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
@@ -87,4 +88,7 @@
    @JsonInclude(JsonInclude.Include.ALWAYS)
    private Integer isGoodsGroupPurchase;
    @ApiModelProperty(value = "團購商品訂單")
    @JsonInclude(JsonInclude.Include.ALWAYS)
    private Order order;
}
ruoyi-api/ruoyi-api-system/src/main/java/com/ruoyi/system/api/domain/vo/MemberOrderListVO.java
@@ -77,5 +77,12 @@
    @JsonInclude(JsonInclude.Include.ALWAYS)
    private Long requestId;
    @ApiModelProperty(value = "快递单号")
    @JsonInclude(JsonInclude.Include.ALWAYS)
    private String courierNumber;
    @ApiModelProperty("发货快递")
    private String logisticsNum;
}
ruoyi-api/ruoyi-api-system/src/main/java/com/ruoyi/system/api/domain/vo/OrderReturnVO.java
@@ -71,6 +71,9 @@
    @JsonInclude(JsonInclude.Include.ALWAYS)
    private String courierNumber;
    @ApiModelProperty("发货快递")
    private String logisticsNum;
    @ApiModelProperty("退货时间")
    @JsonInclude(JsonInclude.Include.ALWAYS)
    private LocalDateTime returnTime;
ruoyi-api/ruoyi-api-system/src/main/java/com/ruoyi/system/api/domain/vo/OrderVO.java
@@ -169,4 +169,9 @@
    @JsonInclude(JsonInclude.Include.ALWAYS)
    private Long requestId;
    @ApiModelProperty("发货快递")
    private String logisticsNum;
}
ruoyi-common/ruoyi-common-core/src/main/java/com/ruoyi/common/core/utils/ip/IpUtils.java
@@ -65,7 +65,7 @@
            ip = request.getRemoteAddr();
        }
        return "0:0:0:0:0:0:0:1".equals(ip) ? "127.0.0.1" : getMultistageReverseProxyIp(ip);
        return "0:0:0:0:0:0:0:1".equals(ip) ? "192.168.110.188" : getMultistageReverseProxyIp(ip);
    }
    /**
@@ -77,7 +77,7 @@
    public static boolean internalIp(String ip)
    {
        byte[] addr = textToNumericFormatV4(ip);
        return internalIp(addr) || "127.0.0.1".equals(ip);
        return internalIp(addr) || "192.168.110.188".equals(ip);
    }
    /**
@@ -225,7 +225,7 @@
        catch (UnknownHostException e)
        {
        }
        return "127.0.0.1";
        return "192.168.110.188";
    }
    /**
ruoyi-common/ruoyi-common-redis/src/main/java/com/ruoyi/common/redis/configure/RedisConfig.java
@@ -59,7 +59,7 @@
        // 1.创建配置
        Config config = new Config();
        // 集群模式
        // config.useClusterServers().addNodeAddress("127.0.0.1:7004", "127.0.0.1:7001");
        // config.useClusterServers().addNodeAddress("192.168.110.188:7004", "192.168.110.188:7001");
        // 2.根据 Config 创建出 RedissonClient 示例。
        config.useSingleServer().setAddress("redis://192.168.110.188:6379").setPassword("123456");
        return Redisson.create(config);
ruoyi-modules/ruoyi-auction/src/main/java/com/ruoyi/auction/service/impl/AuctionGoodsServiceImpl.java
@@ -43,10 +43,7 @@
import com.ruoyi.system.api.domain.dto.RefundDTO;
import com.ruoyi.system.api.domain.vo.AuctionGoodsListVO;
import com.ruoyi.system.api.domain.vo.AuctionGoodsinfoVO;
import com.ruoyi.system.api.feignClient.AuctionClient;
import com.ruoyi.system.api.feignClient.GoodsSkuClient;
import com.ruoyi.system.api.feignClient.MemberClient;
import com.ruoyi.system.api.feignClient.OrderClient;
import com.ruoyi.system.api.feignClient.*;
import com.ruoyi.system.api.util.WebSocketUsers;
import io.seata.spring.annotation.GlobalTransactional;
import java.time.LocalDateTime;
@@ -81,6 +78,7 @@
    private final GoodsSkuClient goodsSkuClient;
    private final MemberClient memberClient;
    private final OrderClient orderClient;
    private final SysUserClient sysUserClient;
    private final AuctionClient auctionClient;
    private final IAuctionBidRecordService auctionBidRecordService;
@@ -422,7 +420,7 @@
        auctionGoodsinfoVO.setUnit(goodsSkuOne.getUnit());
        auctionGoodsinfoVO.setBond(byId.getBond());
        auctionGoodsinfoVO.setDescription(goodsSkuOne.getDescription());
        auctionGoodsinfoVO.setYears(String.valueOf(goodsSkuOne.getYears()));
        auctionGoodsinfoVO.setYears(goodsSkuOne.getYears());
        GoodsBrand data = goodsSkuClient.getBrandOne(goodsSkuOne.getBrandId(), SecurityConstants.INNER).getData();
        GoodsCategory data1 = goodsSkuClient.getCategoryOne(goodsSkuOne.getCategoryId(), SecurityConstants.INNER).getData();
        GoodsSeries data2 = goodsSkuClient.getSeriesOne(goodsSkuOne.getSeriesId(), SecurityConstants.INNER).getData();
@@ -441,7 +439,9 @@
        auctionGoodsinfoVO.setSpecUnit(goodsSkuOne.getSpecUnit());
        auctionGoodsinfoVO.setDetail(goodsSkuOne.getDetail());
        auctionGoodsinfoVO.setBond(byId.getBond());
        auctionGoodsinfoVO.setYears(String.valueOf(goodsSkuOne.getYears()));
        auctionGoodsinfoVO.setYears(goodsSkuOne.getYears());
        auctionGoodsinfoVO.setSharePic(goodsSkuOne.getSharePic());
        auctionGoodsinfoVO.setShareTitle(goodsSkuOne.getShareTitle());
        LambdaQueryWrapper<AuctionBidRecord> wrapper1= Wrappers.lambdaQuery();
        wrapper1.eq(AuctionBidRecord::getMemberId,auctionGoodsListDTO.getMemberId());
        wrapper1.eq(AuctionBidRecord::getAuctionType,1);
@@ -505,7 +505,8 @@
        }
        CustomConfig returnAddressUserName = sysUserClient.getconfig("MALL_ORDER_DESCRIPTION").getData();
        auctionGoodsinfoVO.setExplain(returnAddressUserName.getConfigValue());
        return auctionGoodsinfoVO;
    }
ruoyi-modules/ruoyi-auction/src/main/java/com/ruoyi/auction/service/impl/AuctionSalesroomGoodsServiceImpl.java
@@ -519,6 +519,8 @@
        AuctionSalesroomGoodsInfoVO.setUnit(goodsSku.getUnit());
        AuctionSalesroomGoodsInfoVO.setDescription(goodsSku.getDescription());
        AuctionSalesroomGoodsInfoVO.setDetail(goodsSku.getDetail());
        AuctionSalesroomGoodsInfoVO.setSharePic(goodsSku.getSharePic());
        AuctionSalesroomGoodsInfoVO.setShareTitle(goodsSku.getShareTitle());
        AuctionSalesroomGoodsInfoVO.setYears(String.valueOf(goodsSku.getYears().getYear()));
        GoodsBrand data = goodsSkuClient.getBrandOne(goodsSku.getBrandId(), SecurityConstants.INNER).getData();
        GoodsCategory data1 = goodsSkuClient.getCategoryOne(goodsSku.getCategoryId(), SecurityConstants.INNER).getData();
@@ -532,6 +534,9 @@
        AuctionSalesroomGoodsInfoVO.setAlbum(goodsSku.getAlbum());
        AuctionSalesroomGoodsInfoVO.setSpec(goodsSku.getSpec());
        AuctionSalesroomGoodsInfoVO.setSpecUnit(goodsSku.getSpecUnit());
        CustomConfig returnAddressUserName = sysUserClient.getconfig("MALL_ORDER_DESCRIPTION").getData();
        AuctionSalesroomGoodsInfoVO.setExplain(returnAddressUserName.getConfigValue());
        AuctionSalesroomGoodsInfoVO.setMinimumMarkupAmount(byId1.getMinimumMarkupAmount());
        LambdaQueryWrapper<AuctionBidRecord> wrapper1=Wrappers.lambdaQuery();
        wrapper1.eq(AuctionBidRecord::getMemberId,auctionSalesroomGoodsInfoDTO.getMemberId());
ruoyi-modules/ruoyi-auction/src/main/java/com/ruoyi/auction/service/impl/AuctionSalesroomServiceImpl.java
@@ -392,8 +392,14 @@
            MemberAuctionSalesroomDTO memberAuctionSalesroomDTO1=new MemberAuctionSalesroomDTO();
            memberAuctionSalesroomDTO1.setAuctionSalesroomId(auctionSalesroom.getId());
            List<OrderAuctionBond> data1 = orderClient.getOrderAuctionBondList1(memberAuctionSalesroomDTO1, SecurityConstants.INNER).getData();
            memberAuctionSalesroomVO.setApplyNum(data1.size());
            List.add(memberAuctionSalesroomVO);
            if(data1!=null){
                memberAuctionSalesroomVO.setApplyNum(data1.size());
                List.add(memberAuctionSalesroomVO);
            }else{
                memberAuctionSalesroomVO.setApplyNum(0);
            }
        }
        page.setRecords(List);
        return PageDTO.of(page);
@@ -625,11 +631,11 @@
        }else {
            AuctionGoods byId = auctionGoodsService.getById(bidVO.getTargetId());
            if (byId.getStartingPrice().doubleValue()<bidVO.getLastBidAmount().doubleValue()){
            if (byId.getStartingPrice().doubleValue()>bidVO.getLastBidAmount().doubleValue()){
                throw new ServiceException("出价不能比起拍价低");
            }
            BigDecimal bigDecimal=byId.getStartingPrice().add(byId.getMinimumMarkupAmount());
            if (bigDecimal.doubleValue()<bidVO.getLastBidAmount().doubleValue()){
            if (bigDecimal.doubleValue()>bidVO.getLastBidAmount().doubleValue()){
                throw new ServiceException("出价不能比每次最少加价低");
            }
            LambdaQueryWrapper<AuctionBidRecord> wrapper1=Wrappers.lambdaQuery();
ruoyi-modules/ruoyi-goods/src/main/java/com/ruoyi/goods/service/impl/GoodsGroupPurchaseServiceImpl.java
@@ -322,6 +322,7 @@
        Order data = orderClient.getOrderByGroupPurchaseMemberId(homeGoodsSkuDTO, SecurityConstants.INNER).getData();
        if (data!=null){
            goodsGroupPurchaseInfoVO.setIsGoodsGroupPurchase(2);
            goodsGroupPurchaseInfoVO.setOrder(data);
        }else{
            goodsGroupPurchaseInfoVO.setIsGoodsGroupPurchase(1);
        }
ruoyi-modules/ruoyi-goods/src/main/java/com/ruoyi/goods/service/impl/GoodsSkuServiceImpl.java
@@ -304,6 +304,11 @@
        if (homeGoodsSkuDTO.getSkuName()!=null){
            wrapper3.like(GoodsSku::getSkuName,homeGoodsSkuDTO.getSkuName());
        }
        if (homeGoodsSkuDTO.getGoodsSkuId()!=null){
            List<Long> id=new ArrayList<>();
            id.add(homeGoodsSkuDTO.getGoodsSkuId());
            wrapper3.notIn(GoodsSku::getId,id);
        }
        if (homeGoodsSkuDTO.getBrandId()!=null){
            wrapper3.eq(GoodsSku::getBrandId,homeGoodsSkuDTO.getBrandId());
        }
ruoyi-modules/ruoyi-order/src/main/java/com/ruoyi/order/controller/forepart/ForepartLogisticsController.java
@@ -1,6 +1,8 @@
package com.ruoyi.order.controller.forepart;
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
import com.baomidou.mybatisplus.core.toolkit.Wrappers;
import com.ruoyi.common.core.domain.R;
import com.ruoyi.common.core.utils.page.PageDTO;
import com.ruoyi.order.domain.MemberInvoice;
@@ -8,6 +10,7 @@
import com.ruoyi.order.service.ILogisticsService;
import com.ruoyi.order.service.impl.LogisticsServiceImpl;
import com.ruoyi.system.api.domain.Logistics;
import com.ruoyi.system.api.domain.Order;
import com.ruoyi.system.api.domain.dto.LogisticsDTO;
import com.ruoyi.system.api.domain.vo.Express100VO;
import io.swagger.annotations.Api;
@@ -18,6 +21,7 @@
import org.springframework.web.bind.annotation.RestController;
import javax.annotation.Resource;
import java.util.List;
/**
 * <p>
@@ -35,9 +39,8 @@
    private ILogisticsService iLogisticsService;
    @PostMapping("/getLogistics")
    @ApiOperation(value = "用户端-获取快递公司")
    public R<Logistics> getLogistics() {
        iLogisticsService.list();
        return R.ok();
    public R<List<Logistics>> getLogistics() {
        return R.ok(iLogisticsService.list());
    }
    @PostMapping("/getLogisticsList")
@@ -46,4 +49,11 @@
        return R.ok(iLogisticsService.getLogisticsList(logisticsDTO));
    }
    @PostMapping("/getLogisticsOne")
    @ApiOperation(value = "用户端-获取快递公司名稱")
    public R<Logistics> getLogisticsOne(@RequestBody LogisticsDTO logisticsDTO) {
        LambdaQueryWrapper<Logistics> wrapper= Wrappers.lambdaQuery();
        wrapper.eq(Logistics::getLogisticsNum,logisticsDTO.getCompany());
        return R.ok(  iLogisticsService.getOne(wrapper));
    }
}
ruoyi-modules/ruoyi-order/src/main/java/com/ruoyi/order/service/impl/LogisticsServiceImpl.java
@@ -1,6 +1,8 @@
package com.ruoyi.order.service.impl;
import com.alibaba.nacos.shaded.com.google.gson.Gson;
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
import com.baomidou.mybatisplus.core.toolkit.Wrappers;
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
import com.kuaidi100.sdk.api.QueryTrack;
import com.kuaidi100.sdk.core.IBaseClient;
@@ -8,12 +10,15 @@
import com.kuaidi100.sdk.request.QueryTrackParam;
import com.kuaidi100.sdk.request.QueryTrackReq;
import com.kuaidi100.sdk.utils.SignUtils;
import com.ruoyi.common.core.domain.R;
import com.ruoyi.order.mapper.LogisticsMapper;
import com.ruoyi.order.service.ILogisticsService;
import com.ruoyi.system.api.domain.Logistics;
import com.ruoyi.system.api.domain.dto.LogisticsDTO;
import com.ruoyi.system.api.domain.vo.Express100VO;
import org.springframework.stereotype.Service;
import javax.annotation.Resource;
/**
 * <p>
@@ -29,6 +34,7 @@
    private String key="BltjQodT7186";
    private String customer="56DE8E9E3D58CE73C60755C8B7483043";
@@ -55,6 +61,10 @@
        Gson gson = new Gson();
        String responseBody = execute.getBody();
        Express100VO response = gson.fromJson(responseBody, Express100VO.class);
        LambdaQueryWrapper<Logistics> wrapper= Wrappers.lambdaQuery();
        wrapper.eq(Logistics::getLogisticsNum,logisticsDTO.getCompany());
        Logistics one = this.getOne(wrapper);
        response.setLogisticsName(one.getLogisticsName());
        return response;
    }
}
ruoyi-modules/ruoyi-order/src/main/java/com/ruoyi/order/service/impl/MemberInvoiceRiseServiceImpl.java
@@ -49,15 +49,7 @@
        if (memberInvoiceRise==null){
            memberInvoiceRise=new MemberInvoiceRise();
        }
        if (memberInvoiceRiseDTO.getIsDefault()==2){
            LambdaQueryWrapper<MemberInvoiceRise> wrapper1= Wrappers.lambdaQuery();
            wrapper1.eq(MemberInvoiceRise::getMemberId,memberInvoiceRiseDTO.getMemberId());
            wrapper1.eq(MemberInvoiceRise::getDelFlag,0);
            wrapper1.eq(MemberInvoiceRise::getIsDefault,2);
            MemberInvoiceRise memberInvoiceRise2= this.getOne(wrapper1);
            memberInvoiceRise2.setIsDefault(1);
            this.updateById(memberInvoiceRise2);
        }
        memberInvoiceRise.setInvoiceType(memberInvoiceRiseDTO.getInvoiceType());
        memberInvoiceRise.setRiseType(memberInvoiceRiseDTO.getRiseType());
@@ -67,7 +59,8 @@
        memberInvoiceRise.setCorporationAccount(memberInvoiceRiseDTO.getCorporationAccount());
        memberInvoiceRise.setCorporationOpen(memberInvoiceRiseDTO.getCorporationOpen());
        memberInvoiceRise.setCorporationPhone(memberInvoiceRiseDTO.getCorporationPhone());
        memberInvoiceRise.setIsDefault(memberInvoiceRiseDTO.getIsDefault());
        memberInvoiceRise.setMemberId(memberInvoiceRiseDTO.getMemberId());
        memberInvoiceRise.setIsDefault(1);
        this.saveOrUpdate(memberInvoiceRise);
    }
@@ -81,9 +74,10 @@
        wrapper1.eq(MemberInvoiceRise::getDelFlag,0);
        wrapper1.eq(MemberInvoiceRise::getIsDefault,2);
        MemberInvoiceRise memberInvoiceRise2= this.getOne(wrapper1);
        memberInvoiceRise2.setIsDefault(1);
        this.updateById(memberInvoiceRise2);
        if(memberInvoiceRise2!=null){
            memberInvoiceRise2.setIsDefault(1);
            this.updateById(memberInvoiceRise2);
        }
        MemberInvoiceRise memberInvoiceRise=this.getById(memberInvoiceRiseDTO.getId());
        memberInvoiceRise.setIsDefault(2);
        this.updateById(memberInvoiceRise);
ruoyi-modules/ruoyi-order/src/main/java/com/ruoyi/order/service/impl/MemberInvoiceServiceImpl.java
@@ -25,6 +25,8 @@
import com.ruoyi.system.api.feignClient.GoodsSkuClient;
import com.ruoyi.system.api.feignClient.MemberClient;
import io.seata.common.util.StringUtils;
import java.math.BigDecimal;
import java.util.List;
import java.util.Map;
import java.util.Objects;
@@ -77,8 +79,9 @@
        memberInvoice.setCorporationPhone(memberInvoiceDTO.getCorporationPhone());
        memberInvoice.setCorporationOpen(memberInvoiceDTO.getCorporationOpen());
        memberInvoice.setRiseType(memberInvoiceDTO.getRiseType());
        this.save(memberInvoice);
        BigDecimal pice=new BigDecimal(0.0);
        this.save(memberInvoice);
       List<Long> memberInvoiceOrderList=memberInvoiceDTO.getOrderId();
       for (Long memberInvoiceOrder:memberInvoiceOrderList){
           MemberInvoiceOrder memberInvoiceOrder1=new MemberInvoiceOrder();
@@ -92,7 +95,10 @@
           OrderName=order.getSkuName();
           memberInvoiceOrder1.setOrderName(OrderName);
           iMemberInvoiceOrderService.save(memberInvoiceOrder1);
           pice.add(order.getTotalAmount());
       }
        memberInvoice.setInvoiceMoney(pice);
        this.updateById(memberInvoice);
    }
    @Override
ruoyi-modules/ruoyi-order/src/main/java/com/ruoyi/order/service/impl/OrderAuctionBondServiceImpl.java
@@ -120,12 +120,12 @@
    @Override
    public PayInfoVO SaveOrderAuctionBond(MemberAuctionSalesroomBondDTO memberAuctionSalesroomBondDTO) {
        PayInfoVO payInfoVO = new PayInfoVO();
        if (memberAuctionSalesroomBondDTO.getBondType() == 2) {
            AuctionSalesroom data = auctionClient.getauctionSalesroomOne(memberAuctionSalesroomBondDTO, SecurityConstants.INNER).getData();
        if (memberAuctionSalesroomBondDTO.getBondType() == 1) {
            AuctionGoods data = auctionClient.getauctionGoodsOne(memberAuctionSalesroomBondDTO, SecurityConstants.INNER).getData();
            if (data.getBond().intValue() == 0) {
                OrderAuctionBond orderAuctionBond = new OrderAuctionBond();
                orderAuctionBond.setOrderNo(OrderUtil.getOrderNoForPrefix("BO"));
                orderAuctionBond.setAuctionSalesroomId(memberAuctionSalesroomBondDTO.getAuctionSalesroomId());
                orderAuctionBond.setAuctionGoodsId(memberAuctionSalesroomBondDTO.getAuctionGoodsId());
                orderAuctionBond.setMemberId(memberAuctionSalesroomBondDTO.getMemberId());
                orderAuctionBond.setBond(data.getBond());
                orderAuctionBond.setBoundStatus(BondStatusEnum.PAID);
@@ -139,7 +139,7 @@
            } else {
                OrderAuctionBond orderAuctionBond = new OrderAuctionBond();
                orderAuctionBond.setOrderNo(OrderUtil.getOrderNoForPrefix("BO"));
                orderAuctionBond.setAuctionSalesroomId(memberAuctionSalesroomBondDTO.getAuctionSalesroomId());
                orderAuctionBond.setAuctionGoodsId(memberAuctionSalesroomBondDTO.getAuctionGoodsId());
                orderAuctionBond.setMemberId(memberAuctionSalesroomBondDTO.getMemberId());
                orderAuctionBond.setBond(data.getBond());
                orderAuctionBond.setBoundStatus(BondStatusEnum.TO_PLAY);
@@ -163,7 +163,8 @@
                payInfoVO.setBody("保证金");
            }
        } else {
            AuctionGoods data = auctionClient.getauctionGoodsOne(memberAuctionSalesroomBondDTO, SecurityConstants.INNER).getData();
            AuctionSalesroom data = auctionClient.getauctionSalesroomOne(memberAuctionSalesroomBondDTO, SecurityConstants.INNER).getData();
            if (data.getBond().intValue() == 0) {
                OrderAuctionBond orderAuctionBond = new OrderAuctionBond();
                orderAuctionBond.setOrderNo(OrderUtil.getOrderNoForPrefix("BO"));
ruoyi-modules/ruoyi-order/src/main/java/com/ruoyi/order/service/impl/OrderReturnRequestServiceImpl.java
@@ -72,8 +72,6 @@
    public OrderReturnVO saveOrderReturnRequest(OrderReturnDTO OrderReturnDTO) {
        Order order = orderMapper.selectById(OrderReturnDTO.getOrderId());
        order.setOrderStatus(OrderStatusEnum.AFTER_SALE);
        orderMapper.updateById(order);
        OrderReturnRequest orderReturnRequest = new OrderReturnRequest();
        orderReturnRequest.setOrderId(OrderReturnDTO.getOrderId());
        orderReturnRequest.setRequestTime(LocalDateTime.now());
ruoyi-modules/ruoyi-order/src/main/java/com/ruoyi/order/service/impl/OrderServiceImpl.java
@@ -520,8 +520,6 @@
            CouponMemberDTO couponMemberDTO=new CouponMemberDTO();
            couponMemberDTO.setId(memberOrderDTO.getCouponId());
            CouponMember data = promotionClient.getCouponMember(couponMemberDTO, SecurityConstants.INNER).getData();
            if (order.getCouponId()!=0){
                CouponMemberDTO couponMemberDTO1=new CouponMemberDTO();
                couponMemberDTO1.setId(memberOrderDTO.getCouponId());
@@ -562,14 +560,11 @@
            couponMemberDTO2.setId(memberOrderDTO.getCouponId());
            couponMemberDTO2.setCouponStatus(1);
            promotionClient.updCouponMember(couponMemberDTO2, SecurityConstants.INNER);
        }else{
            if (order.getCouponId()!=0){
            if (order.getCouponId()!=null&&order.getCouponId()!=0){
                CouponMemberDTO couponMemberDTO1=new CouponMemberDTO();
                couponMemberDTO1.setId(order.getCouponId());
                couponMemberDTO1.setCouponStatus(0);
                couponMemberDTO1.setId(order.getCouponId());
                promotionClient.updCouponMember(couponMemberDTO1, SecurityConstants.INNER);
            }
            order.setCouponId(0L);
@@ -633,6 +628,9 @@
            if (StringUtils.isNotNull(orderReturnRequest)&&orderReturnRequest!=null) {
                MemberOrderList.setStatus(orderReturnRequest.getStatus());
                MemberOrderList.setRequestId(orderReturnRequest.getId());
                MemberOrderList.setIsRequest(2);
            }else{
                MemberOrderList.setIsRequest(1);
            }
            LambdaQueryWrapper<OrderAuctionBond> wrapper3= Wrappers.lambdaQuery();
            wrapper3.eq(OrderAuctionBond::getOrderId,MemberOrderList.getId());
@@ -670,6 +668,9 @@
            if (StringUtils.isNotNull(orderReturnRequest)&&orderReturnRequest!=null) {
                orderVO.setStatus(orderReturnRequest.getStatus());
                orderVO.setRequestId(orderReturnRequest.getId());
                orderVO.setIsRequest(2);
            }else{
                orderVO.setIsRequest(1);
            }
            LambdaQueryWrapper<OrderAuctionBond> wrapper3= Wrappers.lambdaQuery();
ruoyi-modules/ruoyi-order/src/main/java/com/ruoyi/order/service/impl/PaylogServiceImpl.java
@@ -40,6 +40,7 @@
import java.io.IOException;
import java.io.PrintWriter;
import java.math.BigDecimal;
import java.security.SignatureException;
import java.time.LocalDateTime;
import java.util.ArrayList;
import java.util.HashMap;
@@ -410,15 +411,15 @@
            AppPayReqData appPay = new AppPayReqData(apptype, (String) map.get("appid"), (String) map.get("mch_id"),
                    (String) map.get("prepay_id"), unifiedorderReqData.getNonce_str());
                HashMap<String, Object> map1 = new HashMap<>();
                map1.put("timeStamp", appPay.getTimestamp());
                map1.put("nonceStr",  appPay.getNoncestr());
                map1.put("package", "prepay_id=" +  appPay.getPrepayid());
                map1.put("signType", "RSA");
                map1.put("paySign", appPay.getSign());
            // 对获取预支付返回接口参数进行封装(生成支付订单接口数据)
            appPayMap.put("appid", appPay.getAppid());// 小程序ID
            appPayMap.put("nonceStr", appPay.getNoncestr());// 随机字符串(32位)
            appPayMap.put("package", appPay.get_package());// 扩展字段(暂填写固定值Sign=WXPay)
            appPayMap.put("partnerId", appPay.getPartnerid());// 商户号
            appPayMap.put("prepayId", appPay.getPrepayid());// 预支付编号(微信返回的支付交易会话ID)
            appPayMap.put("timeStamp", appPay.getTimestamp());// 时间戳
            appPayMap.put("sign", appPay.getSign());// 根据API给的签名规则进行签名
            return R.ok(appPayMap);
            return R.ok(map1);
        } catch (Exception e) {
            System.out.println("统一下单_API_处理异常!");
            e.printStackTrace();
ruoyi-modules/ruoyi-order/src/main/java/com/ruoyi/order/util/WxPayUtils.java
New file
@@ -0,0 +1,287 @@
/*
package com.ruoyi.order.util;
import cn.hutool.http.HttpRequest;
import cn.hutool.json.JSONObject;
import cn.hutool.json.JSONUtil;
import org.jdom2.Document;
import org.jdom2.Element;
import org.jdom2.JDOMException;
import org.jdom2.input.SAXBuilder;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Component;
import java.io.ByteArrayInputStream;
import java.io.IOException;
import java.io.InputStream;
import java.io.UnsupportedEncodingException;
import java.security.*;
import java.util.*;
public class WxPayUtils {
    public static final String serial_no = "xxx";
    // 商户号
    public static final String mchId = "xxx";
    // appid
    public static final String appId = "xxx";
    // 证书私钥
    public static final String privateKey = "-----BEGIN PRIVATE KEY-----\n" +
            "MIIEvgIBADANBgkqhkiG9w0BAQEFAASCBKgwggSkAgEAAoIBAQDBJn3bVt9BbLhs\n" +
            "+ZjULV7Odh4rtBBd2wc7uZ8RlN/9E8sJfAefowiSTPwOkTYKDlyhpG131a4VKj+N\n" +
            "zaTu0Y5zQGyl29ElHVVuPw4mVni7xyqVdJ5VUxyJMKHmQsGpngHS4sF28c5Aihfi\n" +
            "Gkydt6BRF8xwFC9u+D0r4PY9dwHTn4jyaFd25CMUxVO+rfjOWFuGa/rEjtQw03KU\n" +
            "UVR6np6FmNXdWalQbmbETyUqGjCac6J7hDZ1LIRU4YtqMqqsXhnk3FaoS23MOgaZ\n" +
            "RE3nIgpYqGgfXfLOKDt5n4zLALJkV0xmk3VErbheWpzRVFae/JMtsf/8ySgtiOga\n" +
            "n8fvShJNAgMBAAECggEAf+P+vbb9yJI2Y2G5QfRwrAAl5gYqOBsI5RD5NGkBDs+G\n" +
            "RtdrLNaEnGqBExwvTeVIjHcVTJ2d0MHSpxAdP0xeKA3mYsPz7cFIieESe2wSMTOl\n" +
            "DKTVGeYYJPagnJhjJu5KgtpGA34EdVN6kOmdBWlKq6c4ZJXY+n8/8cfZA8XC3d3B\n" +
            "favo104podp8cC2IVNMs21OzbjD4V+6VV9X/5BA6x7bDcarlJXSyCehdXgjhjNmT\n" +
            "/9gz7MFhOsUlAG7P03easIRcZCQL6z9MebD3xfVYcXnS4L3CcVw1FWEdLXxe/3IG\n" +
            "Q8UPTPHhTLFRbURHI00x1jEvcD9qKXYgKeU/N7IY+QKBgQD93r2SotKM5EDxM3L2\n" +
            "5UFrmEVnf4bwg5QDyZFpjAJ+/uMSsEX3f1m8Mst82Y4Mybz8XVMNsUJmoY8eJoM+\n" +
            "sqRbI5HXySsFEbDqh7jrtBoN7R1rl3jQw4qxqWYR8GQJ6VqAXuEFbrxgE1YFgqw5\n" +
            "40HAYbv417h0h5A1rcRKegoW9wKBgQDCxVaCmBzcYYFc2leRy6qH965OEedqbSCV\n" +
            "QPprCDBoBM6jrq97ZfWyfmLNSjjFhTSz9h8z5dQcePZrrI3+evlE8V18hUmWN6rM\n" +
            "CvPCb+4q8CwiHmLFqVp+m11MR8EOBcWCW/HlioqBKTLglijY53RUjW7No/T+32sf\n" +
            "5R1qYq672wKBgQC3dztFN4o169bK+UWCDBgFK9wsecsJEe3r9sWxo09Ce+2aWe2W\n" +
            "eWBeU88fARJZR4neT4tv/8Re6y7EuUxsCSoh+0iwy17doPVb6I3JOTUDD3MNiD/1\n" +
            "jvsyfZuYJ0QErbGLyAWSqX5VaGPoQ5E3nHauE3OG2E8jV7zuLhAHSr7z7QKBgAF8\n" +
            "Z/CPIIk95TLEJ67hEuf+p8HIuS9CreD1ofN3GIdyofD1wDj8yicWd8KBMnWvUnud\n" +
            "ARfwRPICqj6gDmVGoug3vzLYAXu36QGtg7aUDAkf0/ZerPo9FIeqv8d5NKvat2sL\n" +
            "MIlDyVK68bxs6NreyTBr89B108SuB68ynErXfeXJAoGBAMCoJyWdFAQKVvycHyv4\n" +
            "914+v7niQahws23wxHlzvup8/doCS1XVQAoEyQ4iIPDHYmiOCcmzCQnb1CWgMbIl\n" +
            "oBY3baP1GWOwEWw/HYKOwHW3fLkYC/xaRi+b5IxyEzR7hlCm/A6gCnCUYqIdU8gd\n" +
            "jYE4kGB2O/5vdbITdSMai47o\n" +
            "-----END PRIVATE KEY-----";
    */
/**
     * 获取微信预支付订单号
     * @return
     *//*
    public JSONObject getPrepayId(Integer apptype, String outTradeNo, String body1,String openId, Double price){
        JSONObject jsonObject = new JSONObject();
        JSONObject amountJsonObject = new JSONObject();
        JSONObject payerJsonObject = new JSONObject();
        amountJsonObject.put("total",price);
        payerJsonObject.put("openid",openId);
        // 应用ID
        jsonObject.put("appid",appId);
        // 商户号
        jsonObject.put("mchid",mchId);
        // 商品描述
        jsonObject.put("description",body1);
        // 商户订单号
        jsonObject.put("out_trade_no",outTradeNo);
        // 通知地址
        jsonObject.put("notify_url","https://zc.xxx.com/wx/api/pay/notifyUrl");
        // 订单金额信息
        jsonObject.put("amount",amountJsonObject);
        // 支付者信息
        jsonObject.put("payer",payerJsonObject);
        String body = jsonObject.toString();
        System.out.println(body);
        String authorization = signStr("POST", "/v3/pay/transactions/jsapi", body);
        String result = HttpRequest.post("https://api.mch.weixin.qq.com/v3/pay/transactions/jsapi")
                .body(body)
                .header("Content-Type","application/json")
                .header("Accept","application/json")
                .header("Authorization","WECHATPAY2-SHA256-RSA2048 " + authorization)//头信息,多个头信息多次调用此方法即可
                .timeout(10000)//超时,毫秒
                .execute().body();
        JSONObject jsonObject1 = JSONUtil.parseObj(result);
        String prepay_id = jsonObject1 == null ? "":(String) jsonObject1.get("prepay_id");
        JSONObject resultJsonObject = new JSONObject();
        resultJsonObject.put("prepay_id",prepay_id);
        resultJsonObject.put("chatPrice",wxOrder.getTotalPrice());
        return resultJsonObject;
    }
    */
/**
     * 成功获取微信预支付订单号后, 返回给前端调起微信支付的必要参数
     * @param orderNo   商户订单号
     * @param prepay_id 预支付订单号
     * @return
     *//*
    public Map<String, Object> returnToReceptionJson(String orderNo, String prepay_id){
        HashMap<String, Object> map = new HashMap<>();
        long timeStamp = System.currentTimeMillis() / 1000;
        String uuid = UUID.randomUUID().toString().replace("-", "");
        String paySign = getPaySign(timeStamp, uuid, prepay_id);
        map.put("orderId", orderNo);
        map.put("timeStamp", timeStamp);
        map.put("nonceStr", uuid);
        map.put("package", "prepay_id=" + prepay_id);
        map.put("signType", "RSA");
        map.put("paySign", paySign);
        return map;
    }
    public String getPaySign(long timestamp, String randString, String prepay_id){
        String data =  appId + "\n" +
                timestamp + "\n" +
                randString + "\n" +
                "prepay_id=" + prepay_id + "\n";
        String signature = null;
        try {
            signature = sign(data.getBytes("utf-8"));
        } catch (SignatureException e) {
            e.printStackTrace();
        } catch (UnsupportedEncodingException e) {
            e.printStackTrace();
        }
        return signature;
    }
    public String signStr2(String method, String url){
        String nonceStr = UUID.randomUUID().toString();
        long timestamp = System.currentTimeMillis() / 1000;
        String message = buildMessage2(method, url, timestamp, nonceStr);
        String signature = null;
        try {
            signature = sign(message.getBytes("utf-8"));
        } catch (Exception e) {
            e.printStackTrace();
        }
        System.out.println("签名后:[" + signature + "]");
        return  "mchid=\"" + mchId + "\","
                + "serial_no=\"" + serial_no + "\","
                + "nonce_str=\"" + nonceStr + "\","
                + "timestamp=\"" + timestamp + "\","
                + "signature=\"" + signature + "\"";
    }
    public String buildMessage2(String method, String url, long timestamp, String nonceStr) {
        String str = method + "\n"
                + url + "\n"
                + timestamp + "\n"
                + nonceStr + "\n\n";
        System.out.println("签名数据[" + str + "]");
        return str;
    }
    public String signStr(String method, String url, String body){
        String nonceStr = UUID.randomUUID().toString();
        long timestamp = System.currentTimeMillis() / 1000;
        String message = buildMessage(method, url, timestamp, nonceStr, body);
        System.out.println("message:[" + message + "]");
        String signature = null;
        try {
            signature = sign(message.getBytes("utf-8"));
        } catch (Exception e) {
            e.printStackTrace();
        }
        System.out.println("signature=[" + signature + "]");
        return  "mchid=\"" + mchId + "\","
                + "nonce_str=\"" + nonceStr + "\","
                + "timestamp=\"" + timestamp + "\","
                + "serial_no=\"" + serial_no + "\","
                + "signature=\"" + signature + "\"";
    }
    public String buildMessage(String method, String url, long timestamp, String nonceStr, String body) {
        String str = method + "\n"
                + url + "\n"
                + timestamp + "\n"
                + nonceStr + "\n"
                + body + "\n";
        return str;
    }
    public String sign(byte[] message) throws Exception {
        Signature sign = null;
        try {
            sign = Signature.getInstance("SHA256withRSA");
            PrivateKey privateKey = getPrivateKey();
            sign.initSign(privateKey);
            sign.update(message);
        } catch (NoSuchAlgorithmException e) {
            e.printStackTrace();
        } catch (SignatureException e) {
            e.printStackTrace();
        } catch (InvalidKeyException e) {
            e.printStackTrace();
        } catch (IOException e) {
            e.printStackTrace();
        }
        return Base64.getEncoder().encodeToString(sign.sign());
    }
    */
/**
     * 获取私钥。
     *//*
    public static PrivateKey getPrivateKey() throws IOException {
        PrivateKey merchantPrivateKey = PemUtil.loadPrivateKey(
                new ByteArrayInputStream(privateKey.getBytes("utf-8")));
        return merchantPrivateKey;
    }
    // xml解析
    public static Map doXMLParse(String strxml) throws JDOMException, IOException {
        strxml = strxml.replaceFirst("encoding=\".*\"", "encoding=\"UTF-8\"");
        if(null == strxml || "".equals(strxml)) {
            return null;
        }
        Map m = new HashMap();
        InputStream in = new ByteArrayInputStream(strxml.getBytes("UTF-8"));
        SAXBuilder builder = new SAXBuilder();
        Document doc = builder.build(in);
        Element root = doc.getRootElement();
        List list = root.getChildren();
        Iterator it = list.iterator();
        while(it.hasNext()) {
            Element e = (Element) it.next();
            String k = e.getName();
            String v = "";
            List children = e.getChildren();
            if(children.isEmpty()) {
                v = e.getTextNormalize();
            } else {
                v = getChildrenText(children);
            }
            m.put(k, v);
        }
        //关闭流
        in.close();
        return m;
    }
    */
/**
     * 获取子结点的xml
     *
     * @param children
     * @return String
     *//*
    public static String getChildrenText(List children) {
        StringBuffer sb = new StringBuffer();
        if(!children.isEmpty()) {
            Iterator it = children.iterator();
            while(it.hasNext()) {
                Element e = (Element) it.next();
                String name = e.getName();
                String value = e.getTextNormalize();
                List list = e.getChildren();
                sb.append("<" + name + ">");
                if(!list.isEmpty()) {
                    sb.append(getChildrenText(list));
                }
                sb.append(value);
                sb.append("</" + name + ">");
            }
        }
        return sb.toString();
    }
}
*/
ruoyi-modules/ruoyi-order/src/main/java/com/ruoyi/order/util/tencent/common/Configure.java
@@ -55,7 +55,7 @@
    }    
    
    //HTTPS证书密码,默认密码等于商户号MCHID
    private static String certPassword_2 = GmchID;
    private static String certPassword_2 = mchID;
    
    //是否使用异步线程的方式来上报API测速,默认为异步模式
    private static boolean useThreadToDoReport = true;
@@ -99,9 +99,9 @@
        Configure.useThreadToDoReport = useThreadToDoReport;
    }
    public static String HttpsRequestClassName = "com.tencent.common.HttpsRequest";
    public static String HttpsRequestClassName = "com.ruoyi.order.util.tencent.common.HttpsRequest";
    
    public static String HttpsRequestClassName_2 = "com.tencent.common.HttpsRequest_2";
    public static String HttpsRequestClassName_2 = "com.ruoyi.order.util.tencent.common.HttpsRequest_2";
    public static void setKey(String key) {
        Configure.key = key;
ruoyi-modules/ruoyi-order/src/main/java/com/ruoyi/order/util/tencent/common/cert_2/apiclient_cert.p12
Binary files differ
ruoyi-modules/ruoyi-order/src/main/java/com/ruoyi/order/util/tencent/common/cert_2/apiclient_cert.pem
@@ -1,26 +1,25 @@
-----BEGIN CERTIFICATE-----
MIIEbDCCA9WgAwIBAgIEAV66BDANBgkqhkiG9w0BAQUFADCBijELMAkGA1UEBhMC
Q04xEjAQBgNVBAgTCUd1YW5nZG9uZzERMA8GA1UEBxMIU2hlbnpoZW4xEDAOBgNV
BAoTB1RlbmNlbnQxDDAKBgNVBAsTA1dYRzETMBEGA1UEAxMKTW1wYXltY2hDQTEf
MB0GCSqGSIb3DQEJARYQbW1wYXltY2hAdGVuY2VudDAeFw0xNzA2MjkwNjQwMzha
Fw0yNzA2MjcwNjQwMzhaMIGbMQswCQYDVQQGEwJDTjESMBAGA1UECBMJR3Vhbmdk
b25nMREwDwYDVQQHEwhTaGVuemhlbjEQMA4GA1UEChMHVGVuY2VudDEOMAwGA1UE
CxMFTU1QYXkxMDAuBgNVBAMUJ+WTiOWwlOa7qOWQjeeahOe9kee7nOenkeaKgOac
iemZkOWFrOWPuDERMA8GA1UEBBMIMzE4OTQ3MDYwggEiMA0GCSqGSIb3DQEBAQUA
A4IBDwAwggEKAoIBAQDJS/abCCpwvnppCU0TxW84PF2cqpUF3Ip9KmQytNCPRZPK
q299efclcWOYozB7zSY4OsZ9UyAod1+HsFEjyJBTWyJfakNewiF6AIsydZtFZ65t
8ReQ66VTebB1imEq/OrQMXphBwJ1TSH5Jk2pW7JA9U5LqZ3apgDa9PrFHY4dhnkf
IxQI6Xn0Y7fUJsGszP+5ETbtlLW5PZQiE2H8T3xCwH3mnmg/rppTZaBVIE/7SskW
iEVPd8g/fec8xDAoAulv1FsBdrPGXyWiFkpcTdrQKHaMa0J7AtMfSnMb1Z/pAIQp
DxCjCJRM0gfvZNOj2nyqbZD3JJAP8LFnTrasdb/NAgMBAAGjggFGMIIBQjAJBgNV
HRMEAjAAMCwGCWCGSAGG+EIBDQQfFh0iQ0VTLUNBIEdlbmVyYXRlIENlcnRpZmlj
YXRlIjAdBgNVHQ4EFgQUBMf3KHk8wfRKtAdcnz+VCFwDdeYwgb8GA1UdIwSBtzCB
tIAUPgUm9iJitBVbiM1kfrDUYqflhnShgZCkgY0wgYoxCzAJBgNVBAYTAkNOMRIw
EAYDVQQIEwlHdWFuZ2RvbmcxETAPBgNVBAcTCFNoZW56aGVuMRAwDgYDVQQKEwdU
ZW5jZW50MQwwCgYDVQQLEwNXWEcxEzARBgNVBAMTCk1tcGF5bWNoQ0ExHzAdBgkq
hkiG9w0BCQEWEG1tcGF5bWNoQHRlbmNlbnSCCQC7VJcrvADoVzAOBgNVHQ8BAf8E
BAMCBsAwFgYDVR0lAQH/BAwwCgYIKwYBBQUHAwIwDQYJKoZIhvcNAQEFBQADgYEA
EFcsWO+7E4v7NNdprZYbYASr4e4Uw+EO+RLbkuFUQhHTGMW/biFlYounarNncTFs
SylXIkCylTRxSZmLNhr8D9/TJ1c9Vrbp8SqlgS5DlhLU3PGjmY7Yl+Zth06v6kv+
0GqwKCljlN+DQNq2wxL7z3S/XDZGTb8tAhLtOKyPkpg=
MIIEITCCAwmgAwIBAgIUSmKUuRgKAuIo5mZrAXzAQxjRA6gwDQYJKoZIhvcNAQEL
BQAwXjELMAkGA1UEBhMCQ04xEzARBgNVBAoTClRlbnBheS5jb20xHTAbBgNVBAsT
FFRlbnBheS5jb20gQ0EgQ2VudGVyMRswGQYDVQQDExJUZW5wYXkuY29tIFJvb3Qg
Q0EwHhcNMjQwNjE4MDgyNTQ3WhcNMjkwNjE3MDgyNTQ3WjB7MRMwEQYDVQQDDAox
Njc4MzQ1NjI3MRswGQYDVQQKDBLlvq7kv6HllYbmiLfns7vnu58xJzAlBgNVBAsM
HuaIkOmDveWWnOacm+enkeaKgOaciemZkOWFrOWPuDELMAkGA1UEBhMCQ04xETAP
BgNVBAcMCFNoZW5aaGVuMIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEA
xMnTizbQwoQ4VIy9uH/ilbAFfK7nKY7oPs3QLIvudupj95rWHqn96+ap5dky6ToG
1OmVLWqQTrTy8PCfqrsZEwupBw5rEhvgyFj042jJ4I9wM208YQlaMjLu72fnfRRh
38FRBt0Y66UiqAtRKuZeaJj+GZ4cknEUQeK3eh/pDL8TwfkvnzMtUmIICc0IAFFU
9aJQhlecw96hQ9fjVyWTOqD5SXz2yhW9AOdlJlkG61CQfGyQuHxpB4PBiMEk5gn7
9MPTxMag2h2wH4qOb0RkmB/pzC1rNJjgS/cgmkQ35LGEYC65FspOhrOKfw432/OX
QTZUz0oKEPZw2UmfO77FwwIDAQABo4G5MIG2MAkGA1UdEwQCMAAwCwYDVR0PBAQD
AgP4MIGbBgNVHR8EgZMwgZAwgY2ggYqggYeGgYRodHRwOi8vZXZjYS5pdHJ1cy5j
b20uY24vcHVibGljL2l0cnVzY3JsP0NBPTFCRDQyMjBFNTBEQkMwNEIwNkFEMzk3
NTQ5ODQ2QzAxQzNFOEVCRDImc2c9SEFDQzQ3MUI2NTQyMkUxMkIyN0E5RDMzQTg3
QUQxQ0RGNTkyNkUxNDAzNzEwDQYJKoZIhvcNAQELBQADggEBAGNBS3HVK2pqNjmh
u9/eLfCjgEF/YLNy/u5yAuJBceLTtT4IWtpNKHbUoljLVLQ9ZApFNsjk55QwZZ4h
dcU7XBvPsr1cryNC187WnFb6DX8uMm1G0Koo8ukWhd4B9hft5Nb9wLxmtO8WxYpA
r4UuqXz8srLSqUtRu7o5SFXsOwYT+8nwuUNNdWQLJyuKEb0s39eGPECFH8iz+S4G
P1sXs//TnxvAsqp+bODZYH9OazfCUG56cs+NiEZktzl9o6lap/ycI9DRuLLFMyfD
Bie9QaJ/p9jIOZlJsTHsouNu5d+Mk1tEhdOBh8l53uIi19IPBIGtekVAouQR2zTk
PLrU9bA=
-----END CERTIFICATE-----
ruoyi-modules/ruoyi-order/src/main/java/com/ruoyi/order/util/tencent/common/cert_2/apiclient_key.pem
@@ -1,28 +1,28 @@
-----BEGIN PRIVATE KEY-----
MIIEuwIBADANBgkqhkiG9w0BAQEFAASCBKUwggShAgEAAoIBAQDJS/abCCpwvnpp
CU0TxW84PF2cqpUF3Ip9KmQytNCPRZPKq299efclcWOYozB7zSY4OsZ9UyAod1+H
sFEjyJBTWyJfakNewiF6AIsydZtFZ65t8ReQ66VTebB1imEq/OrQMXphBwJ1TSH5
Jk2pW7JA9U5LqZ3apgDa9PrFHY4dhnkfIxQI6Xn0Y7fUJsGszP+5ETbtlLW5PZQi
E2H8T3xCwH3mnmg/rppTZaBVIE/7SskWiEVPd8g/fec8xDAoAulv1FsBdrPGXyWi
FkpcTdrQKHaMa0J7AtMfSnMb1Z/pAIQpDxCjCJRM0gfvZNOj2nyqbZD3JJAP8LFn
Trasdb/NAgMBAAECggEAPP5pgNxej78HtF//HOiMJMwVyWzeruH+jKKVrc+gCmmY
uKZtp+WW/592AEAiZsDovc0Ba+QOMHTLW4APdfpF0RwiNCsssr+8CQ21H9sG62bZ
MbMF4wGkHMEYuOTvQGlWdTMo09Gd6xEuJCJ5EcIZJxmtWbvRevkl9TKZ8bRc5ZDZ
2s/8cgzps9lbnkbTZ9TAF7n7XOlPy4YqIBKW33RCHUtQCfCDERLaBRAG6SbNUsBQ
SUYq6PsroFtqgwXxbygVsXfNBBfXZ8nfyqupvkOto+2NJjDr6cm5cT+bMyStcNdN
UAssNUbw7DjcQ+0esS0Z9K7Tah5kmLzzGcDnyNoLgQKBgQDtLeEzRWU9QIksvzUb
tIAwz/yLTVAQ74/ke6VP4pAWkLdgcVWxY+HOfXyNTWC3MZ2BSyj3oTaahgCQAVb3
dXmRDWjRWggUcTLNWgZCcjPw4oshdzVPz1t5WR9/9c+UDqSFSrBGVJ5cVLNpDxSk
1KYX7gNdu+h8RTKpKxyOleJaEQKBgQDZRShPjZYvcLNv79y3cT8RHX8qi2akd7by
X6VwxoFeZ5TeK51fdZjUSyU5/8Jmq9m+K3W7edYrzAOiLYYSCNAVQEoxqGacPla2
OlpiSPbtafoIy0ovsJvV6DAZwwtF0cowvdNnXvPsYlKlAKCXnRxf+Ap9/XYArBD6
dTpcj1Ht/QKBgQDHhCK/GI9TeWhrZeVtCugTJ8MQA9doh72JvKGRk8sV0GMSFAS8
FoOrSlBuJTtIn8oZK3qo5MqkLjlm6lmYDRBYfuk/wvatC5RqvmIpnxwmdMwJONh1
7L7MU7Z10/fsWmz3W57xatlUXkQWCoOZLPETjDr0rM+jSiqVuBhrsZYZoQKBgGN8
mFW9Fm0IpRF3etCAyYkTwZwAkvJyYtIe28mFC83njjIhNIF2fpGPCy/AngqXXDAJ
BHLg+iG53FwRjleJs4ZXluGgI8Qdg2UT2TkyAed6ZGRMed7WdrT/Ca9yMSI6SuQA
t+GYiAbQitlFLUPfTBPhpyRDwBnUsD2PGjcx5SkdAn8KkFSMExG4y4eZD+UxLXsj
/QfQj0eUyzu5XyvPXLD9XV1YL3pX7+DxvU98ogFH4QBh2KtDbe2RldyiH8toSP0F
kXoj4/CtUp8EDBpeLgbdxCYvKW+Lz9oyPNouhkV7m0KRrHV/3CPOeHqkh0dNdW6f
RKW9WsNAtAS2ncev7Mjj
MIIEvAIBADANBgkqhkiG9w0BAQEFAASCBKYwggSiAgEAAoIBAQDEydOLNtDChDhU
jL24f+KVsAV8rucpjug+zdAsi+526mP3mtYeqf3r5qnl2TLpOgbU6ZUtapBOtPLw
8J+quxkTC6kHDmsSG+DIWPTjaMngj3AzbTxhCVoyMu7vZ+d9FGHfwVEG3RjrpSKo
C1Eq5l5omP4ZnhyScRRB4rd6H+kMvxPB+S+fMy1SYggJzQgAUVT1olCGV5zD3qFD
1+NXJZM6oPlJfPbKFb0A52UmWQbrUJB8bJC4fGkHg8GIwSTmCfv0w9PExqDaHbAf
io5vRGSYH+nMLWs0mOBL9yCaRDfksYRgLrkWyk6Gs4p/Djfb85dBNlTPSgoQ9nDZ
SZ87vsXDAgMBAAECggEAA91OyTIXYWqFTKvC4geo5HWjdfJdWcSTrQAPsYBB+5XY
xrkEsW93LBXIiln8lPXtwmqf4ldwZAtLpg2jpQ+ti2E0PY477gwcGvMcRAb/x+gp
NOlVQTaUzd2QMaVht2QaE/HQ7IiU/7OrfY9TVbtWaUlv3ALt3rZXxn90SPKtefGR
0hhz9hXnnPq2XQ4F2Pe9wwNabRljuBWh5jrTru77nthmrb7afgzPlzvhbBejiJR0
Yj2zjtiTDojo0jEAO2dM3OQERR9OSR5u0X+fawjT7JPGssjBH6ICBWakaUB9Oe/7
fxqOolRxJPV9dlkQGPTOp0buE+Y2YUmMPqvV6Ey4OQKBgQD0BIlu1lveyRo6J0U4
9l9RRQzBrQPGGCZkDJ9GEWL6KdCobFnjE/E21L+cGg4wkAvMpfj9nVc64gZ0Yvm0
oqyQXapwTxJRpwgl+AK1Q79Pe0L4esCvS6JX4eXHsJZiPUS/0gzOU1HCkCoggJ2m
E7mnKdc2bj32oUI5z6UzOUAiPwKBgQDOc5Xu0zYMhTzLvkBrL9ILGTBsWN3rdldf
QdFlbQMiWWmSrLIMLAmLIullMxFtFqVxjHBumKHq5HOuyxxKMMKdFNXs4WZ0HNyp
y4uk7J1bpWBeaM5rExszmK4gpEdMt7G0Oi5NP2DIJ1fNFZulEqNwX3XsSYSPqDWZ
2nvteYSzfQKBgAaPgKpsNPgebAgYOjI33YQv2RHz9uACkjWqaTXXDdQv/54nm5sR
VDDnM2edA7imhsqvw6v96PR6UzYZ2yDSJtWSzxxJ4/IyDXQH4PrCoYgfhkNr+XY9
EFZQin797m0hvJFzskhx0QbsHVXWX2axrRIje9fIyv2whDlNreFcrq69AoGAExih
77tdrn7MhtQMRV3hAeHMltkJffQuVMNTyRvyREUc/NI4jeOs5k/OYuv8WqjTmNMy
uygnIgELqkljToGAHuOEfirDPU5GIvaO7ixsycNcTJ9JKKJVy8n9oUtQxQngyBjx
m3eXTixFdNTg1r4InCZYVAjg2CDpBFgvSmIJIkkCgYA9xRIkr2bZEv0SVPy9Le8E
WtqEvYT/61G5n2tESwBPAmrkVSZbmlZFZd7GnV+U7D4Yt3G9gEj754fPabS7prW4
Y0QSYLcRZGIDcbUahPd47ehsDgJljJW+ELTz0Vqi69j+X6fHGyupnWy0TIUpkQgK
Um0XDvKxBoO1wp31FS370g==
-----END PRIVATE KEY-----
ruoyi-modules/ruoyi-order/src/main/java/com/ruoyi/order/util/tencent/common/cert_2/rootca.pem
File was deleted
ruoyi-modules/ruoyi-order/src/main/java/com/ruoyi/order/util/tencent/protocol/PayToTheUserReqData.java
@@ -24,7 +24,7 @@
    private String re_user_name;// 收款用户姓名        可选    马花花    String    收款用户真实姓名。     如果check_name设置为FORCE_CHECK或OPTION_CHECK,则必填用户真实姓名
    private Integer amount;// 金额        是    10099    int    企业付款金额,单位为分
    private String desc;// 企业付款描述信息        是    理赔    String    企业付款操作说明信息。必填。
    private String spbill_create_ip = "127.0.0.1";// Ip地址        是    192.168.0.1    String(32)    调用接口的机器Ip地址
    private String spbill_create_ip = "192.168.110.188";// Ip地址        是    192.168.0.1    String(32)    调用接口的机器Ip地址
    *//**
     * 企业向用户付款
ruoyi-modules/ruoyi-order/src/main/java/com/ruoyi/order/util/tencent/protocol/UnifiedorderReqData.java
@@ -173,6 +173,9 @@
    }
    public Map<String,Object> toMap(){
        Map<String,Object> map = new HashMap<String, Object>();
        Field[] fields = this.getClass().getDeclaredFields();
ruoyi-modules/ruoyi-order/src/main/java/com/ruoyi/order/util/tencent/protocol/WXPayReport.java
@@ -110,7 +110,7 @@
    }
    private static final String REPORT_URL = "http://report.mch.weixin.qq.com/wxpay/report/default";
    // private static final String REPORT_URL = "http://127.0.0.1:5000/test";
    // private static final String REPORT_URL = "http://192.168.110.188:5000/test";
    private static final int DEFAULT_CONNECT_TIMEOUT_MS = 6*1000;