| | |
| | | package com.ruoyi.shop.util; |
| | | |
| | | import com.github.binarywang.wxpay.bean.ecommerce.ApplymentsRequest; |
| | | import com.github.binarywang.wxpay.bean.ecommerce.ApplymentsResult; |
| | | import com.github.binarywang.wxpay.bean.ecommerce.ApplymentsStatusResult; |
| | | import com.github.binarywang.wxpay.bean.media.ImageUploadResult; |
| | | import com.github.binarywang.wxpay.exception.WxPayException; |
| | | import com.github.binarywang.wxpay.service.EcommerceService; |
| | | import com.github.binarywang.wxpay.service.MerchantMediaService; |
| | | import com.github.binarywang.wxpay.service.WxPayService; |
| | | import com.ruoyi.shop.domain.pojo.shop.ShopAuthentication; |
| | | import com.ruoyi.system.api.domain.poji.shop.Shop; |
| | | import lombok.AllArgsConstructor; |
| | | import org.springframework.stereotype.Component; |
| | | |
| | | import java.io.InputStream; |
| | | import java.util.ArrayList; |
| | | import java.util.List; |
| | | |
| | | /** |
| | | * 微信支付 |
| | |
| | | @AllArgsConstructor |
| | | public class WechatPayUtils { |
| | | |
| | | /*private final WxPayService wxService; |
| | | private final WxPayService wxService; |
| | | |
| | | *//** |
| | | * 电商二级商户进件(提交申请单) |
| | | *//* |
| | | public ApplymentsResult ecommerceApply(ShopAuthentication shopAuthentication, String applyNumber, Shop shop) throws WxPayException { |
| | | /** |
| | | * @description 电商二级商户进件(提交申请单) |
| | | * @author jqs |
| | | * @date 2023/8/11 10:04 |
| | | * @param shopAuthentication |
| | | * @param applyNumber |
| | | * @param shop |
| | | * @return ApplymentsResult |
| | | */ |
| | | public ApplymentsResult ecommerceApply(ShopAuthentication shopAuthentication, String applyNumber, Shop shop) throws Exception { |
| | | EcommerceService ecommerceService = wxService.getEcommerceService(); |
| | | MerchantMediaService merchantMediaService = wxService.getMerchantMediaService(); |
| | | ApplymentsRequest request = new ApplymentsRequest(); |
| | | //生成提交类 |
| | | request.setOutRequestNo(applyNumber); |
| | |
| | | } |
| | | //营业执照 |
| | | ApplymentsRequest.BusinessLicenseInfo business_license_info = new ApplymentsRequest.BusinessLicenseInfo(); |
| | | business_license_info.setBusinessLicenseCopy(shopAuthentication.getBlImage()); |
| | | InputStream blImageIO = OBSUploadUtils.getOSSInputStream(shopAuthentication.getBlImage()); |
| | | ImageUploadResult blImageIR = merchantMediaService.imageUploadV3(blImageIO,applyNumber+"blimage"); |
| | | business_license_info.setBusinessLicenseCopy(blImageIR.getMediaId()); |
| | | blImageIO.close(); |
| | | business_license_info.setBusinessLicenseNumber(shopAuthentication.getBlNumber()); |
| | | business_license_info.setMerchantName(shopAuthentication.getBlShopName()); |
| | | business_license_info.setLegalPerson(shopAuthentication.getBlCorporateName()); |
| | |
| | | //法人证件 |
| | | request.setIdDocType("IDENTIFICATION_TYPE_MAINLAND_IDCARD"); |
| | | ApplymentsRequest.IdCardInfo id_card_info = new ApplymentsRequest.IdCardInfo(); |
| | | id_card_info.setIdCardCopy(shopAuthentication.getLpIcFront()); |
| | | id_card_info.setIdCardNational(shopAuthentication.getLpIcBack()); |
| | | InputStream lpIcFrontIO = OBSUploadUtils.getOSSInputStream(shopAuthentication.getLpIcFront()); |
| | | ImageUploadResult lpIcFrontIR = merchantMediaService.imageUploadV3(lpIcFrontIO,applyNumber+"lpIcFront"); |
| | | id_card_info.setIdCardCopy(lpIcFrontIR.getMediaId()); |
| | | lpIcFrontIO.close(); |
| | | InputStream lpIcBackIO = OBSUploadUtils.getOSSInputStream(shopAuthentication.getLpIcBack()); |
| | | ImageUploadResult lpIcBackIR = merchantMediaService.imageUploadV3(lpIcBackIO,applyNumber+"lpIcBack"); |
| | | id_card_info.setIdCardNational(lpIcBackIR.getMediaId()); |
| | | lpIcBackIO.close(); |
| | | id_card_info.setIdCardName(shopAuthentication.getLpCorporateName()); |
| | | id_card_info.setIdCardNumber(shopAuthentication.getLpIdCard()); |
| | | id_card_info.setIdCardValidTimeBegin(shopAuthentication.getLpIcStartDate()); |
| | |
| | | List<ApplymentsRequest.UboInfo> ubo_info_list = new ArrayList<>(); |
| | | ApplymentsRequest.UboInfo uboInfo = new ApplymentsRequest.UboInfo(); |
| | | uboInfo.setUboIdDocType("IDENTIFICATION_TYPE_MAINLAND_IDCARD"); |
| | | uboInfo.setUboIdDocCopy(shopAuthentication.getUboIcFront()); |
| | | uboInfo.setUboIdDocCopyBack(shopAuthentication.getUboIcBack()); |
| | | InputStream uboIcFrontIO = OBSUploadUtils.getOSSInputStream(shopAuthentication.getUboIcFront()); |
| | | ImageUploadResult uboIcFrontIR = merchantMediaService.imageUploadV3(uboIcFrontIO,applyNumber+"uboIcFront"); |
| | | uboInfo.setUboIdDocCopy(uboIcFrontIR.getMediaId()); |
| | | uboIcFrontIO.close(); |
| | | InputStream uboIcBackIO = OBSUploadUtils.getOSSInputStream(shopAuthentication.getUboIcBack()); |
| | | ImageUploadResult uboIcBackIR = merchantMediaService.imageUploadV3(uboIcBackIO,applyNumber+"uboIcBack"); |
| | | uboInfo.setUboIdDocCopyBack(uboIcBackIR.getMediaId()); |
| | | uboIcBackIO.close(); |
| | | uboInfo.setUboIdDocName(shopAuthentication.getUboName()); |
| | | uboInfo.setUboIdDocNumber(shopAuthentication.getUboIdCard()); |
| | | uboInfo.setUboIdDocAddress(shopAuthentication.getUboIcAddress()); |
| | | uboInfo.setUboIdDocPeriodBegin(shopAuthentication.getUboIcStartDate()); |
| | | uboInfo.setUboIdDocCopyBack(shopAuthentication.getUboIcEndDate()); |
| | | ubo_info_list.add(uboInfo); |
| | | request.setUboInfoList(ubo_info_list); |
| | | } |
| | |
| | | //店铺信息 |
| | | ApplymentsRequest.SalesSceneInfo salesSceneInfo = new ApplymentsRequest.SalesSceneInfo(); |
| | | salesSceneInfo.setStoreName(shop.getShopName()); |
| | | salesSceneInfo.setStoreUrl(""); |
| | | salesSceneInfo.setStoreQrCode(""); |
| | | salesSceneInfo.setStoreQrCode("https://wxapp.hhhrt.cn/mini/shop?id="+shop.getShopId()); |
| | | salesSceneInfo.setMiniProgramSubAppid("wxb7f0ea286fc4e535"); |
| | | request.setSalesSceneInfo(salesSceneInfo); |
| | | request.setMerchantShortname(shop.getShopName()); |
| | | request.setBusinessAdditionPics(shopAuthentication.getBaPics()); |
| | | request.setBusinessAdditionDesc(shopAuthentication.getBaDesc()); |
| | | |
| | | return ecommerceService.createApply(request); |
| | | } |
| | | |
| | | |
| | | *//** |
| | | * 通过查询申请状态API查询二级商户入驻申请结果 |
| | | * @param applymentId 微信支付申请单号 |
| | | * @return 申请状态 |
| | | * @throws WxPayException |
| | | *//* |
| | | /** |
| | | * @description 查询申请审核状态 |
| | | * @author jqs |
| | | * @date 2023/8/11 10:04 |
| | | * @param applymentId |
| | | * @return ApplymentsStatusResult |
| | | */ |
| | | public ApplymentsStatusResult queryApplyStatusByApplymentId(String applymentId) throws WxPayException { |
| | | return wxService.getEcommerceService().queryApplyStatusByApplymentId(applymentId); |
| | | }*/ |
| | | } |
| | | |
| | | } |