|  | @@ -1,4 +1,9 @@
 | 
	
		
			
				|  |  |  package com.yami.shop.wx.service.impl;
 | 
	
		
			
				|  |  | +import com.yami.shop.wx.form.MiniProgramInfo;
 | 
	
		
			
				|  |  | +import com.yami.shop.wx.form.StoreInfo;
 | 
	
		
			
				|  |  | +import com.yami.shop.wx.form.SalesInfo;
 | 
	
		
			
				|  |  | +import com.yami.shop.wx.form.*;
 | 
	
		
			
				|  |  | +import com.google.common.collect.Lists;
 | 
	
		
			
				|  |  |  
 | 
	
		
			
				|  |  |  import com.alibaba.fastjson2.JSON;
 | 
	
		
			
				|  |  |  import com.alibaba.fastjson2.JSONObject;
 | 
	
	
		
			
				|  | @@ -504,28 +509,104 @@ public class WxProviderServiceImpl implements WxProviderService {
 | 
	
		
			
				|  |  |          }
 | 
	
		
			
				|  |  |      }
 | 
	
		
			
				|  |  |  
 | 
	
		
			
				|  |  | +    private static String rsaEncryptData(String data) {
 | 
	
		
			
				|  |  | +        return data;
 | 
	
		
			
				|  |  | +    }
 | 
	
		
			
				|  |  | +
 | 
	
		
			
				|  |  | +
 | 
	
		
			
				|  |  |      //测试
 | 
	
		
			
				|  |  |      public static void serviceAddMerchant() {
 | 
	
		
			
				|  |  | -        Map<String, Object> parameters = new TreeMap<>();
 | 
	
		
			
				|  |  | -        //业务申请编号
 | 
	
		
			
				|  |  | -        parameters.put("business_code", "业务申请编号");
 | 
	
		
			
				|  |  | +        SubmitInfo submitInfo = new SubmitInfo();
 | 
	
		
			
				|  |  | +        submitInfo.setBusinessCode("业务申请编号");
 | 
	
		
			
				|  |  |  
 | 
	
		
			
				|  |  |          //超级管理员信息
 | 
	
		
			
				|  |  | -        parameters.put("contact_info", "");
 | 
	
		
			
				|  |  | +        ContactInfo contactInfo = new ContactInfo();
 | 
	
		
			
				|  |  | +        contactInfo.setContactType("LEGAL");
 | 
	
		
			
				|  |  | +        contactInfo.setContactName(rsaEncryptData("超级管理员姓名"));
 | 
	
		
			
				|  |  | +        contactInfo.setMobilePhone(rsaEncryptData("联系手机"));
 | 
	
		
			
				|  |  | +        contactInfo.setContactEmail(rsaEncryptData("联系邮箱"));
 | 
	
		
			
				|  |  | +        submitInfo.setContactInfo(contactInfo);
 | 
	
		
			
				|  |  |  
 | 
	
		
			
				|  |  |          //主体资料
 | 
	
		
			
				|  |  | -        parameters.put("subject_info", "");
 | 
	
		
			
				|  |  | +        SubjectInfo subjectInfo = new SubjectInfo();
 | 
	
		
			
				|  |  | +        subjectInfo.setSubjectType("个体户/企业");
 | 
	
		
			
				|  |  | +        subjectInfo.setFinanceInstitution(false);
 | 
	
		
			
				|  |  | +        BusinessLicense businessLicense = new BusinessLicense();
 | 
	
		
			
				|  |  | +        businessLicense.setLicenseCopy("营业执照照片");
 | 
	
		
			
				|  |  | +        businessLicense.setLicenseNumber("统一社会信用代码");
 | 
	
		
			
				|  |  | +        businessLicense.setMerchantName("商户名称");
 | 
	
		
			
				|  |  | +        businessLicense.setLegalPerson("个体户经营者/法定代表人姓名");
 | 
	
		
			
				|  |  | +        businessLicense.setLicenseAddress("注册地址");
 | 
	
		
			
				|  |  | +        businessLicense.setPeriodBegin("有效期限开始日期");
 | 
	
		
			
				|  |  | +        businessLicense.setPeriodEnd("有效期限结束日期");
 | 
	
		
			
				|  |  | +
 | 
	
		
			
				|  |  | +        subjectInfo.setBusinessLicenseInfo(businessLicense);
 | 
	
		
			
				|  |  | +        IdentityInfo identityInfo = new IdentityInfo();
 | 
	
		
			
				|  |  | +        identityInfo.setIdDocType("IDENTIFICATION_TYPE_IDCARD");
 | 
	
		
			
				|  |  | +        IdCardInfo idCardInfo = new IdCardInfo();
 | 
	
		
			
				|  |  | +        idCardInfo.setIdCardCopy("身份证人像面照片");
 | 
	
		
			
				|  |  | +        idCardInfo.setIdCardNational("身份证国徽面照片");
 | 
	
		
			
				|  |  | +        idCardInfo.setIdCardName("身份证姓名");
 | 
	
		
			
				|  |  | +        idCardInfo.setIdCardNumber("身份证号码");
 | 
	
		
			
				|  |  | +        idCardInfo.setIdCardAddress("身份证居住地址-主体类型为企业时,需要填写。其他主体类型,无需上传");
 | 
	
		
			
				|  |  | +        idCardInfo.setCardPeriodBegin("身份证有效期开始时间");
 | 
	
		
			
				|  |  | +        idCardInfo.setCardPeriodEnd("身份证有效期结束时间");
 | 
	
		
			
				|  |  | +        identityInfo.setIdCardInfo(idCardInfo);
 | 
	
		
			
				|  |  | +        subjectInfo.setIdentityInfo(identityInfo);
 | 
	
		
			
				|  |  | +        List<UBOInfoList> uboInfoList = Lists.newArrayList();
 | 
	
		
			
				|  |  | +        UBOInfoList uboInfo = new UBOInfoList();
 | 
	
		
			
				|  |  | +        uboInfo.setUboIdDocType("IDENTIFICATION_TYPE_IDCARD");
 | 
	
		
			
				|  |  | +        uboInfo.setUboIdDocCopy("证件正面照片");
 | 
	
		
			
				|  |  | +        uboInfo.setUboIdDocCopyBack("证件反面照片");
 | 
	
		
			
				|  |  | +        uboInfo.setUboIdDocName("证件姓名");
 | 
	
		
			
				|  |  | +        uboInfo.setUboIdDocNumber("证件号码");
 | 
	
		
			
				|  |  | +        uboInfo.setUboIdDocAddress("证件居住地址");
 | 
	
		
			
				|  |  | +        uboInfo.setUboPeriodBegin("证件有效期开始时间");
 | 
	
		
			
				|  |  | +        uboInfo.setUboPeriodEnd("证件有效期结束时间");
 | 
	
		
			
				|  |  | +        uboInfoList.add(uboInfo);
 | 
	
		
			
				|  |  | +        subjectInfo.setUboInfoList(uboInfoList);
 | 
	
		
			
				|  |  | +        submitInfo.setSubjectInfo(subjectInfo);
 | 
	
		
			
				|  |  |  
 | 
	
		
			
				|  |  |          //经营资料
 | 
	
		
			
				|  |  | -        parameters.put("business_info", "");
 | 
	
		
			
				|  |  | -
 | 
	
		
			
				|  |  | -        //结算规则
 | 
	
		
			
				|  |  | -        parameters.put("settlement_info", "");
 | 
	
		
			
				|  |  | +        BusinessInfo businessInfo = new BusinessInfo();
 | 
	
		
			
				|  |  | +        businessInfo.setMerchantShortname("商户简称");
 | 
	
		
			
				|  |  | +        businessInfo.setServicePhone("客服电话");
 | 
	
		
			
				|  |  | +        SalesInfo salesInfo = new SalesInfo();
 | 
	
		
			
				|  |  | +        StoreInfo storeInfo = new StoreInfo();
 | 
	
		
			
				|  |  | +        storeInfo.setBizStoreName("线下场所名称");
 | 
	
		
			
				|  |  | +        storeInfo.setBizAddressCode("线下场所省市编码");
 | 
	
		
			
				|  |  | +        storeInfo.setBizStoreAddress("线下场所地址");
 | 
	
		
			
				|  |  | +        storeInfo.setStoreEntrancePic(Lists.newArrayList("线下场所门头照片"));
 | 
	
		
			
				|  |  | +        storeInfo.setIndoorPic(Lists.newArrayList("线下场所内部照片"));
 | 
	
		
			
				|  |  | +        storeInfo.setBizSubAppid("线下场所对应的商家AppID");
 | 
	
		
			
				|  |  | +        salesInfo.setBizStoreInfo(storeInfo);
 | 
	
		
			
				|  |  | +        MiniProgramInfo miniProgramInfo = new MiniProgramInfo();
 | 
	
		
			
				|  |  | +        miniProgramInfo.setMiniProgramAppid("服务商小程序AppID");
 | 
	
		
			
				|  |  | +        miniProgramInfo.setMiniProgramSubAppid("商家小程序AppID");
 | 
	
		
			
				|  |  | +        miniProgramInfo.setMiniProgramPics(Lists.newArrayList("小程序截图"));
 | 
	
		
			
				|  |  | +        salesInfo.setMiniProgramInfo(miniProgramInfo);
 | 
	
		
			
				|  |  | +        businessInfo.setSalesInfo(salesInfo);
 | 
	
		
			
				|  |  | +        submitInfo.setBusinessInfo(businessInfo);
 | 
	
		
			
				|  |  | +
 | 
	
		
			
				|  |  | +        SettlementInfo settlementInfo = new SettlementInfo();
 | 
	
		
			
				|  |  | +        settlementInfo.setSettlementId("入驻结算规则ID");
 | 
	
		
			
				|  |  | +        settlementInfo.setQualificationType("所属行业-填写指定行业名称");
 | 
	
		
			
				|  |  | +        submitInfo.setSettlementInfo(settlementInfo);
 | 
	
		
			
				|  |  | +
 | 
	
		
			
				|  |  | +        BankAccountInfo bankAccountInfo = new BankAccountInfo();
 | 
	
		
			
				|  |  | +        bankAccountInfo.setBankAccountType("对公银行账户/经营者个人银行卡");
 | 
	
		
			
				|  |  | +        bankAccountInfo.setAccountName("开户名称");
 | 
	
		
			
				|  |  | +        bankAccountInfo.setAccountBank("开户银行");
 | 
	
		
			
				|  |  | +        bankAccountInfo.setBankAddressCode("开户银行省市编码");
 | 
	
		
			
				|  |  | +        bankAccountInfo.setBankBranchId("开户银行银行号");
 | 
	
		
			
				|  |  | +        bankAccountInfo.setBankName("开户银行全称(含支行)");
 | 
	
		
			
				|  |  | +        bankAccountInfo.setAccountNumber("银行账号");
 | 
	
		
			
				|  |  | +        submitInfo.setBankAccountInfo(bankAccountInfo);
 | 
	
		
			
				|  |  | +        System.out.println(JSON.toJSON(submitInfo));
 | 
	
		
			
				|  |  | +    }
 | 
	
		
			
				|  |  |  
 | 
	
		
			
				|  |  | -        //结算银行账户
 | 
	
		
			
				|  |  | -        parameters.put("bank_account_info", "");
 | 
	
		
			
				|  |  |  
 | 
	
		
			
				|  |  | -        System.out.println(parameters);
 | 
	
		
			
				|  |  | +    public static void main(String[] args) {
 | 
	
		
			
				|  |  | +        serviceAddMerchant();
 | 
	
		
			
				|  |  |      }
 | 
	
		
			
				|  |  | -
 | 
	
		
			
				|  |  |  }
 |