From eb6b6dbb35a9f029e0b7d269773685c19fd40976 Mon Sep 17 00:00:00 2001 From: 无关风月 <443237572@qq.com> Date: 星期四, 11 七月 2024 10:47:51 +0800 Subject: [PATCH] 玩湃微信商户认证代码 --- cloud-server-management/src/main/java/com/dsh/guns/modular/system/util/WeChatUtil.java | 336 ++++++++++++++++++++++++++++---------------------------- 1 files changed, 168 insertions(+), 168 deletions(-) diff --git a/cloud-server-management/src/main/java/com/dsh/guns/modular/system/util/WeChatUtil.java b/cloud-server-management/src/main/java/com/dsh/guns/modular/system/util/WeChatUtil.java index b85e134..0db8e40 100644 --- a/cloud-server-management/src/main/java/com/dsh/guns/modular/system/util/WeChatUtil.java +++ b/cloud-server-management/src/main/java/com/dsh/guns/modular/system/util/WeChatUtil.java @@ -1,168 +1,168 @@ -package com.dsh.guns.modular.system.util; - -import com.alibaba.fastjson.JSON; -import com.alibaba.fastjson.JSONObject; -import com.alipay.api.domain.Shop; -import com.dsh.course.util.UUIDUtil; -import com.dsh.guns.core.util.ToolUtil; -import com.dsh.guns.modular.system.controller.util.UploadUtil; -import com.dsh.guns.modular.system.model.OperatorAuth; -import com.dsh.guns.modular.system.model.TOperator; -import com.dsh.guns.modular.system.model.User; -import com.dsh.guns.modular.system.service.IUserService; -import com.github.binarywang.wxpay.bean.ecommerce.ApplymentsRequest; -import com.github.binarywang.wxpay.bean.ecommerce.ApplymentsResult; -import com.github.binarywang.wxpay.bean.media.ImageUploadResult; -import com.github.binarywang.wxpay.service.EcommerceService; -import com.github.binarywang.wxpay.service.MerchantMediaService; -import com.github.binarywang.wxpay.service.WxPayService; -import lombok.AllArgsConstructor; -import lombok.NoArgsConstructor; -import org.apache.commons.codec.digest.DigestUtils; -import org.springframework.beans.factory.annotation.Autowired; -import org.springframework.beans.factory.annotation.Value; -import org.springframework.context.annotation.Bean; -import org.springframework.http.*; -import org.springframework.stereotype.Component; -import org.springframework.web.client.RestTemplate; - -import java.io.ByteArrayInputStream; -import java.io.InputStream; -import java.io.UnsupportedEncodingException; -import java.net.URLDecoder; -import java.util.ArrayList; -import java.util.HashMap; -import java.util.List; -import java.util.Map; - -/** - * 微信工具类 - */ -@Component -public class WeChatUtil { - - private WxPayService wxService; - - - - /** - * @description 电商二级商户进件(提交申请单) - * @author jqs - * @date 2023/8/11 10:04 - * @param shopAuthentication - * @param applyNumber - * @param operator - * @return ApplymentsResult - */ - - - public ApplymentsResult ecommerceApply(OperatorAuth shopAuthentication, String applyNumber, TOperator operator) throws Exception { - - EcommerceService ecommerceService = wxService.getEcommerceService(); - MerchantMediaService merchantMediaService = wxService.getMerchantMediaService(); - ApplymentsRequest request = new ApplymentsRequest(); - //生成提交类 - request.setOutRequestNo(applyNumber); - if("ENTERPRISE".equals(shopAuthentication.getBodyType())){ - request.setOrganizationType("2"); - }else{ - request.setOrganizationType("4"); - } - //营业执照 - ApplymentsRequest.BusinessLicenseInfo business_license_info = new ApplymentsRequest.BusinessLicenseInfo(); - InputStream blImageIO = OBSUploadUtil.getOBSStream(shopAuthentication.getBusinessPicture().replace("https://obs.ap-southeast-4.myhuaweicloud.com/","")); - ImageUploadResult blImageIR = merchantMediaService.imageUploadV3(blImageIO,applyNumber+"blimage.jpg"); - business_license_info.setBusinessLicenseCopy(blImageIR.getMediaId()); - blImageIO.close(); - business_license_info.setBusinessLicenseNumber(shopAuthentication.getBusinessNumber()); - business_license_info.setMerchantName(shopAuthentication.getBusinessName()); - business_license_info.setLegalPerson(shopAuthentication.getLegalPerson()); - business_license_info.setCompanyAddress(shopAuthentication.getRegisterAddress()); - List<String> businessTimeList = new ArrayList<>(); - businessTimeList.add(0,shopAuthentication.getBusinessTerm()); - businessTimeList.add(1,shopAuthentication.getBusinessEnd()); - if(businessTimeList!=null&&businessTimeList.size()>1){ - String businessTime = JSONObject.toJSONString(businessTimeList); - business_license_info.setBusinessTime(businessTime); - } - request.setBusinessLicenseInfo(business_license_info); - //法人证件 - request.setIdDocType("IDENTIFICATION_TYPE_MAINLAND_IDCARD"); - ApplymentsRequest.IdCardInfo id_card_info = new ApplymentsRequest.IdCardInfo(); - InputStream lpIcFrontIO = OBSUploadUtil.getOBSStream(shopAuthentication.getLegalFront().replace("https://obs.ap-southeast-4.myhuaweicloud.com/","")); - ImageUploadResult lpIcFrontIR = merchantMediaService.imageUploadV3(lpIcFrontIO,applyNumber+"lpIcFront.jpg"); - id_card_info.setIdCardCopy(lpIcFrontIR.getMediaId()); - lpIcFrontIO.close(); - InputStream lpIcBackIO = OBSUploadUtil.getOBSStream(shopAuthentication.getLegalBack().replace("https://obs.ap-southeast-4.myhuaweicloud.com/","")); - ImageUploadResult lpIcBackIR = merchantMediaService.imageUploadV3(lpIcBackIO,applyNumber+"lpIcBack.jpg"); - id_card_info.setIdCardNational(lpIcBackIR.getMediaId()); - lpIcBackIO.close(); - id_card_info.setIdCardName(shopAuthentication.getLegalPerson()); - id_card_info.setIdCardNumber(shopAuthentication.getLeagleNumber()); - if("ENTERPRISE".equals(shopAuthentication.getBodyType())){ - id_card_info.setIdCardAddress(shopAuthentication.getLegalAddress()); - } - id_card_info.setIdCardValidTimeBegin(shopAuthentication.getLegalTerm()); - id_card_info.setIdCardValidTime(shopAuthentication.getLegalEnd()); - request.setIdCardInfo(id_card_info); - //企业填写 - if("ENTERPRISE".equals(shopAuthentication.getBodyType())){ - //受益人 - if("true".equals(shopAuthentication.getIsBeneficiary())){ - request.setOwner(true); - }else{ - request.setOwner(false); - List<ApplymentsRequest.UboInfo> ubo_info_list = new ArrayList<>(); - ApplymentsRequest.UboInfo uboInfo = new ApplymentsRequest.UboInfo(); - uboInfo.setUboIdDocType("IDENTIFICATION_TYPE_MAINLAND_IDCARD"); - InputStream uboIcFrontIO = OBSUploadUtil.getOBSStream(shopAuthentication.getBeneficiaryFront().replace("https://obs.ap-southeast-4.myhuaweicloud.com/","")); - ImageUploadResult uboIcFrontIR = merchantMediaService.imageUploadV3(uboIcFrontIO,applyNumber+"uboIcFront.jpg"); - uboInfo.setUboIdDocCopy(uboIcFrontIR.getMediaId()); - uboIcFrontIO.close(); - InputStream uboIcBackIO = OBSUploadUtil.getOBSStream(shopAuthentication.getBeneficiaryBack().replace("https://obs.ap-southeast-4.myhuaweicloud.com/","")); - ImageUploadResult uboIcBackIR = merchantMediaService.imageUploadV3(uboIcBackIO,applyNumber+"uboIcBack.jpg"); - uboInfo.setUboIdDocCopyBack(uboIcBackIR.getMediaId()); - uboIcBackIO.close(); - uboInfo.setUboIdDocName(shopAuthentication.getBeneficiary()); - uboInfo.setUboIdDocNumber(shopAuthentication.getBeneficiaryNumber()); - uboInfo.setUboIdDocAddress(shopAuthentication.getBeneficiaryAddress()); - uboInfo.setUboIdDocPeriodBegin(shopAuthentication.getBeneficiaryTerm()); - ubo_info_list.add(uboInfo); - request.setUboInfoList(ubo_info_list); - } - } - //结算账户信息 - ApplymentsRequest.AccountInfo accountInfo = new ApplymentsRequest.AccountInfo(); - if(shopAuthentication.getAccountType().equals(1)){ - accountInfo.setBankAccountType("74"); - }else{ - accountInfo.setBankAccountType("75"); - } - accountInfo.setAccountBank(shopAuthentication.getBank()); - accountInfo.setAccountName(shopAuthentication.getAccountName()); - accountInfo.setBankAddressCode(shopAuthentication.getCityCode()); - accountInfo.setBankName(shopAuthentication.getBankName()); - accountInfo.setAccountNumber(shopAuthentication.getBankNumber()); - request.setAccountInfo(accountInfo); - ApplymentsRequest.ContactInfo contactInfo = new ApplymentsRequest.ContactInfo(); - contactInfo.setContactType("65"); - contactInfo.setContactName(shopAuthentication.getLegalPerson()); - contactInfo.setContactIdCardNumber(shopAuthentication.getLeagleNumber()); - contactInfo.setMobilePhone(shopAuthentication.getLegalPhone()); - contactInfo.setContactEmail(shopAuthentication.getLegalEmail()); - request.setContactInfo(contactInfo); - //店铺信息 - ApplymentsRequest.SalesSceneInfo salesSceneInfo = new ApplymentsRequest.SalesSceneInfo(); - salesSceneInfo.setStoreName(operator.getName()); -// InputStream storeQrCodeIO = OBSUploadUtils.getOSSInputStream(operator.getShopCode().replace("https://hongruitang.oss-cn-beijing.aliyuncs.com/","")); -// ImageUploadResult storeQrCodeIR = merchantMediaService.imageUploadV3(storeQrCodeIO,applyNumber+"storeQrCode.jpg"); -// salesSceneInfo.setStoreQrCode(storeQrCodeIR.getMediaId()); -// storeQrCodeIO.close(); - request.setSalesSceneInfo(salesSceneInfo); - request.setMerchantShortname(operator.getName()); -// request.setBusinessAdditionPics(shopAuthentication.getBaPics()); -// request.setBusinessAdditionDesc(shopAuthentication.getBaDesc()); - return ecommerceService.createApply(request); - } - -} +//package com.dsh.guns.modular.system.util; +// +//import com.alibaba.fastjson.JSON; +//import com.alibaba.fastjson.JSONObject; +//import com.alipay.api.domain.Shop; +//import com.dsh.course.util.UUIDUtil; +//import com.dsh.guns.core.util.ToolUtil; +//import com.dsh.guns.modular.system.controller.util.UploadUtil; +//import com.dsh.guns.modular.system.model.OperatorAuth; +//import com.dsh.guns.modular.system.model.TOperator; +//import com.dsh.guns.modular.system.model.User; +//import com.dsh.guns.modular.system.service.IUserService; +//import com.github.binarywang.wxpay.bean.ecommerce.ApplymentsRequest; +//import com.github.binarywang.wxpay.bean.ecommerce.ApplymentsResult; +//import com.github.binarywang.wxpay.bean.media.ImageUploadResult; +//import com.github.binarywang.wxpay.service.EcommerceService; +//import com.github.binarywang.wxpay.service.MerchantMediaService; +//import com.github.binarywang.wxpay.service.WxPayService; +//import lombok.AllArgsConstructor; +//import lombok.NoArgsConstructor; +//import org.apache.commons.codec.digest.DigestUtils; +//import org.springframework.beans.factory.annotation.Autowired; +//import org.springframework.beans.factory.annotation.Value; +//import org.springframework.context.annotation.Bean; +//import org.springframework.http.*; +//import org.springframework.stereotype.Component; +//import org.springframework.web.client.RestTemplate; +// +//import java.io.ByteArrayInputStream; +//import java.io.InputStream; +//import java.io.UnsupportedEncodingException; +//import java.net.URLDecoder; +//import java.util.ArrayList; +//import java.util.HashMap; +//import java.util.List; +//import java.util.Map; +// +///** +// * 微信工具类 +// */ +//@Component +//public class WeChatUtil { +// +// private WxPayService wxService; +// +// +// +// /** +// * @description 电商二级商户进件(提交申请单) +// * @author jqs +// * @date 2023/8/11 10:04 +// * @param shopAuthentication +// * @param applyNumber +// * @param operator +// * @return ApplymentsResult +// */ +// +// +// public ApplymentsResult ecommerceApply(OperatorAuth shopAuthentication, String applyNumber, TOperator operator) throws Exception { +// +// EcommerceService ecommerceService = wxService.getEcommerceService(); +// MerchantMediaService merchantMediaService = wxService.getMerchantMediaService(); +// ApplymentsRequest request = new ApplymentsRequest(); +// //生成提交类 +// request.setOutRequestNo(applyNumber); +// if("ENTERPRISE".equals(shopAuthentication.getBodyType())){ +// request.setOrganizationType("2"); +// }else{ +// request.setOrganizationType("4"); +// } +// //营业执照 +// ApplymentsRequest.BusinessLicenseInfo business_license_info = new ApplymentsRequest.BusinessLicenseInfo(); +// InputStream blImageIO = OBSUploadUtil.getOBSStream(shopAuthentication.getBusinessPicture().replace("https://obs.ap-southeast-4.myhuaweicloud.com/","")); +// ImageUploadResult blImageIR = merchantMediaService.imageUploadV3(blImageIO,applyNumber+"blimage.jpg"); +// business_license_info.setBusinessLicenseCopy(blImageIR.getMediaId()); +// blImageIO.close(); +// business_license_info.setBusinessLicenseNumber(shopAuthentication.getBusinessNumber()); +// business_license_info.setMerchantName(shopAuthentication.getBusinessName()); +// business_license_info.setLegalPerson(shopAuthentication.getLegalPerson()); +// business_license_info.setCompanyAddress(shopAuthentication.getRegisterAddress()); +// List<String> businessTimeList = new ArrayList<>(); +// businessTimeList.add(0,shopAuthentication.getBusinessTerm()); +// businessTimeList.add(1,shopAuthentication.getBusinessEnd()); +// if(businessTimeList!=null&&businessTimeList.size()>1){ +// String businessTime = JSONObject.toJSONString(businessTimeList); +// business_license_info.setBusinessTime(businessTime); +// } +// request.setBusinessLicenseInfo(business_license_info); +// //法人证件 +// request.setIdDocType("IDENTIFICATION_TYPE_MAINLAND_IDCARD"); +// ApplymentsRequest.IdCardInfo id_card_info = new ApplymentsRequest.IdCardInfo(); +// InputStream lpIcFrontIO = OBSUploadUtil.getOBSStream(shopAuthentication.getLegalFront().replace("https://obs.ap-southeast-4.myhuaweicloud.com/","")); +// ImageUploadResult lpIcFrontIR = merchantMediaService.imageUploadV3(lpIcFrontIO,applyNumber+"lpIcFront.jpg"); +// id_card_info.setIdCardCopy(lpIcFrontIR.getMediaId()); +// lpIcFrontIO.close(); +// InputStream lpIcBackIO = OBSUploadUtil.getOBSStream(shopAuthentication.getLegalBack().replace("https://obs.ap-southeast-4.myhuaweicloud.com/","")); +// ImageUploadResult lpIcBackIR = merchantMediaService.imageUploadV3(lpIcBackIO,applyNumber+"lpIcBack.jpg"); +// id_card_info.setIdCardNational(lpIcBackIR.getMediaId()); +// lpIcBackIO.close(); +// id_card_info.setIdCardName(shopAuthentication.getLegalPerson()); +// id_card_info.setIdCardNumber(shopAuthentication.getLeagleNumber()); +// if("ENTERPRISE".equals(shopAuthentication.getBodyType())){ +// id_card_info.setIdCardAddress(shopAuthentication.getLegalAddress()); +// } +// id_card_info.setIdCardValidTimeBegin(shopAuthentication.getLegalTerm()); +// id_card_info.setIdCardValidTime(shopAuthentication.getLegalEnd()); +// request.setIdCardInfo(id_card_info); +// //企业填写 +// if("ENTERPRISE".equals(shopAuthentication.getBodyType())){ +// //受益人 +// if("true".equals(shopAuthentication.getIsBeneficiary())){ +// request.setOwner(true); +// }else{ +// request.setOwner(false); +// List<ApplymentsRequest.UboInfo> ubo_info_list = new ArrayList<>(); +// ApplymentsRequest.UboInfo uboInfo = new ApplymentsRequest.UboInfo(); +// uboInfo.setUboIdDocType("IDENTIFICATION_TYPE_MAINLAND_IDCARD"); +// InputStream uboIcFrontIO = OBSUploadUtil.getOBSStream(shopAuthentication.getBeneficiaryFront().replace("https://obs.ap-southeast-4.myhuaweicloud.com/","")); +// ImageUploadResult uboIcFrontIR = merchantMediaService.imageUploadV3(uboIcFrontIO,applyNumber+"uboIcFront.jpg"); +// uboInfo.setUboIdDocCopy(uboIcFrontIR.getMediaId()); +// uboIcFrontIO.close(); +// InputStream uboIcBackIO = OBSUploadUtil.getOBSStream(shopAuthentication.getBeneficiaryBack().replace("https://obs.ap-southeast-4.myhuaweicloud.com/","")); +// ImageUploadResult uboIcBackIR = merchantMediaService.imageUploadV3(uboIcBackIO,applyNumber+"uboIcBack.jpg"); +// uboInfo.setUboIdDocCopyBack(uboIcBackIR.getMediaId()); +// uboIcBackIO.close(); +// uboInfo.setUboIdDocName(shopAuthentication.getBeneficiary()); +// uboInfo.setUboIdDocNumber(shopAuthentication.getBeneficiaryNumber()); +// uboInfo.setUboIdDocAddress(shopAuthentication.getBeneficiaryAddress()); +// uboInfo.setUboIdDocPeriodBegin(shopAuthentication.getBeneficiaryTerm()); +// ubo_info_list.add(uboInfo); +// request.setUboInfoList(ubo_info_list); +// } +// } +// //结算账户信息 +// ApplymentsRequest.AccountInfo accountInfo = new ApplymentsRequest.AccountInfo(); +// if(shopAuthentication.getAccountType().equals(1)){ +// accountInfo.setBankAccountType("74"); +// }else{ +// accountInfo.setBankAccountType("75"); +// } +// accountInfo.setAccountBank(shopAuthentication.getBank()); +// accountInfo.setAccountName(shopAuthentication.getAccountName()); +// accountInfo.setBankAddressCode(shopAuthentication.getCityCode()); +// accountInfo.setBankName(shopAuthentication.getBankName()); +// accountInfo.setAccountNumber(shopAuthentication.getBankNumber()); +// request.setAccountInfo(accountInfo); +// ApplymentsRequest.ContactInfo contactInfo = new ApplymentsRequest.ContactInfo(); +// contactInfo.setContactType("65"); +// contactInfo.setContactName(shopAuthentication.getLegalPerson()); +// contactInfo.setContactIdCardNumber(shopAuthentication.getLeagleNumber()); +// contactInfo.setMobilePhone(shopAuthentication.getLegalPhone()); +// contactInfo.setContactEmail(shopAuthentication.getLegalEmail()); +// request.setContactInfo(contactInfo); +// //店铺信息 +// ApplymentsRequest.SalesSceneInfo salesSceneInfo = new ApplymentsRequest.SalesSceneInfo(); +// salesSceneInfo.setStoreName(operator.getName()); +//// InputStream storeQrCodeIO = OBSUploadUtils.getOSSInputStream(operator.getShopCode().replace("https://hongruitang.oss-cn-beijing.aliyuncs.com/","")); +//// ImageUploadResult storeQrCodeIR = merchantMediaService.imageUploadV3(storeQrCodeIO,applyNumber+"storeQrCode.jpg"); +//// salesSceneInfo.setStoreQrCode(storeQrCodeIR.getMediaId()); +//// storeQrCodeIO.close(); +// request.setSalesSceneInfo(salesSceneInfo); +// request.setMerchantShortname(operator.getName()); +//// request.setBusinessAdditionPics(shopAuthentication.getBaPics()); +//// request.setBusinessAdditionDesc(shopAuthentication.getBaDesc()); +// return ecommerceService.createApply(request); +// } +// +//} -- Gitblit v1.7.1