批量更新支付宝子商户号

master
dalong306 3 years ago
parent 8930962e7a
commit a299e9ce41

@ -0,0 +1,190 @@
package au.com.royalpay.payment.manage.dev.core;
import au.com.royalpay.payment.channels.alipay.runtime.AlipayOnlineApi;
import au.com.royalpay.payment.channels.alipay.runtime.AlipayRetailApi;
import au.com.royalpay.payment.core.beans.EmptyMerchantApplication;
import au.com.royalpay.payment.core.impls.MerchantChannelApplicationManager;
import au.com.royalpay.payment.manage.mappers.system.ClientMapper;
import com.alibaba.fastjson.JSONObject;
import org.apache.commons.lang3.StringUtils;
import org.apache.http.util.TextUtils;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
import org.springframework.stereotype.Service;
import javax.annotation.Resource;
import java.util.Arrays;
import java.util.HashMap;
import java.util.Iterator;
@Service
public class AlipayRegisterService {
private final Logger logger = LoggerFactory.getLogger(getClass());
@Resource
private MerchantChannelApplicationManager merchantChannelApplicationManager;
@Resource
private ClientMapper clientMapper;
public void batchUpdateAlipayApply() {
logger.info("=======>batchUpdateAlipayApply=开始批量更新支付宝");
String[] alipayonlines = new String[]{
};
HashMap sb = new HashMap();
HashMap sb2 = new HashMap();
HashMap sb_failure = new HashMap();
HashMap sb_failure2 = new HashMap();
StringBuilder fail_reason = new StringBuilder();
fail_reason.append("线上===========\n");
Arrays.stream(alipayonlines).forEach(
clientMoniker -> {
JSONObject client = clientMapper.findClientByMoniker(clientMoniker);
if (client == null) {
logger.info("======>alipayonline:" + clientMoniker + ":client为空");
sb_failure.put(clientMoniker, clientMoniker);
fail_reason.append(clientMoniker + ":商户已失效,");
return;
}
if (TextUtils.isEmpty(client.getString("acn"))) {
client.put("acn", null);
}
logger.info("======>alipayonline:" + clientMoniker);
if (!client.containsKey("company_website") || TextUtils.isEmpty(client.getString("company_website"))) {
client.put("company_website", "https://www.royalpay.com.au/");
}
if (StringUtils.isBlank(client.getString("business_structure"))) {
client.put("business_structure", "Registered body(Sole Trader)");
}
if (StringUtils.isBlank(client.getString("alipayindustry"))) {
logger.info("======>alipayonline:" + clientMoniker + ":alipayindustry为空给默认值5311");
client.put("alipayindustry", "5311");
}
try {
merchantChannelApplicationManager.getRegister(AlipayOnlineApi.class).apply(client, new EmptyMerchantApplication(), null);
logger.info("======>alipayindustry:register:" + clientMoniker);
sb.put(clientMoniker, clientMoniker);
} catch (Exception e) {
e.printStackTrace();
logger.info("======>alipayindustry:register2:" + clientMoniker);
if ("DUPLICATE_REQUEST".equalsIgnoreCase(e.getMessage())) {
sb.put(clientMoniker, clientMoniker);
} else {
sb_failure.put(clientMoniker, clientMoniker);
fail_reason.append(clientMoniker + ":" + e.getMessage() + ",");
}
}
try {
Thread.sleep(500);
} catch (InterruptedException e) {
e.printStackTrace();
}
}
);
String[] alipayRetails = new String[]{
};
fail_reason.append("线下===========\n");
Arrays.stream(alipayRetails).forEach(
clientMoniker -> {
JSONObject client = clientMapper.findClientByMoniker(clientMoniker);
if (client == null) {
logger.info("======>alipayRetail:" + clientMoniker + ":client为空");
sb_failure2.put(clientMoniker, clientMoniker);
fail_reason.append(clientMoniker + ":商户已失效,");
return;
}
if (TextUtils.isEmpty(client.getString("acn"))) {
client.put("acn", null);
}
logger.info("======>alipayRetail:" + clientMoniker);
if (!client.containsKey("store_photo") || !client.containsKey("company_photo")) {
sb_failure2.put(clientMoniker, clientMoniker);
fail_reason.append(clientMoniker + ":store_photo和company_photo为空,");
return;
}
if (StringUtils.isBlank(client.getString("business_structure"))) {
client.put("business_structure", "Registered body(Sole Trader)");
}
if (StringUtils.isBlank(client.getString("alipayindustry"))) {
logger.info("======>alipayRetail:" + clientMoniker + ":alipayindustry为空给默认值5311");
client.put("alipayindustry", "5311");
}
try {
merchantChannelApplicationManager.getRegister(AlipayRetailApi.class).apply(client, new EmptyMerchantApplication(), null);
logger.info("======>alipayRetail:register:" + clientMoniker);
sb2.put(clientMoniker, clientMoniker);
} catch (Exception e) {
System.out.println("====>Exception:" + e.getMessage());
e.printStackTrace();
logger.info("======>alipayRetail:register2:" + clientMoniker);
if ("DUPLICATE_REQUEST".equalsIgnoreCase(e.getMessage())) {
sb.put(clientMoniker, clientMoniker);
} else {
sb_failure2.put(clientMoniker, clientMoniker);
fail_reason.append(clientMoniker + ":" + e.getMessage() + ",");
}
}
try {
Thread.sleep(500);
} catch (InterruptedException e) {
e.printStackTrace();
}
}
);
// logger.info("======>as:" + sb.toString());
// logger.info("======>sb_failure:" + sb_failure.toString());
// logger.info("======>as2:" + sb2.toString());
// logger.info("======>sb_failure2:" + sb_failure2.toString());
StringBuilder stringBuilder = new StringBuilder();
StringBuilder stringBuilder2 = new StringBuilder();
Iterator iterator = sb.keySet().iterator();
while (iterator.hasNext()) {
stringBuilder.append(iterator.next() + ",");
}
Iterator iterator2 = sb2.keySet().iterator();
while (iterator2.hasNext()) {
stringBuilder2.append(iterator2.next() + ",");
}
StringBuilder stringBuilderFail = new StringBuilder();
StringBuilder stringBuilderFail2 = new StringBuilder();
Iterator iterator_fail = sb_failure.keySet().iterator();
while (iterator_fail.hasNext()) {
stringBuilderFail.append(iterator_fail.next() + ",");
}
Iterator iterator_fail2 = sb_failure2.keySet().iterator();
while (iterator_fail2.hasNext()) {
stringBuilderFail2.append(iterator_fail2.next() + ",");
}
logger.info("======>stringBuilder:" + stringBuilder.toString());
logger.info("======>stringBuilder2:" + stringBuilder2.toString());
logger.info("======>stringBuilderFail:" + stringBuilderFail.toString());
logger.info("======>stringBuilderFail2:" + stringBuilderFail2.toString());
logger.info("======>fail_reason:" + fail_reason.toString());
}
}

@ -21,6 +21,7 @@ import au.com.royalpay.payment.manage.dev.bean.AliExcel;
import au.com.royalpay.payment.manage.dev.bean.Message; import au.com.royalpay.payment.manage.dev.bean.Message;
import au.com.royalpay.payment.manage.dev.bean.SendWechatMessage; import au.com.royalpay.payment.manage.dev.bean.SendWechatMessage;
import au.com.royalpay.payment.manage.dev.core.AliforexcelService; import au.com.royalpay.payment.manage.dev.core.AliforexcelService;
import au.com.royalpay.payment.manage.dev.core.AlipayRegisterService;
import au.com.royalpay.payment.manage.dev.core.WechatMessageService; import au.com.royalpay.payment.manage.dev.core.WechatMessageService;
import au.com.royalpay.payment.manage.mappers.payment.OrderMapper; import au.com.royalpay.payment.manage.mappers.payment.OrderMapper;
import au.com.royalpay.payment.manage.mappers.payment.RefundMapper; import au.com.royalpay.payment.manage.mappers.payment.RefundMapper;
@ -135,6 +136,9 @@ public class TestController {
@Resource @Resource
private MerchantChannelApplicationManager merchantChannelApplicationManager; private MerchantChannelApplicationManager merchantChannelApplicationManager;
@Resource
private AlipayRegisterService alipayRegisterService;
@ManagerMapping(value = "/{clientMoniker}/export/agreepdf", method = RequestMethod.GET, role = {ManagerRole.ADMIN, ManagerRole.DIRECTOR, ManagerRole.OPERATOR}) @ManagerMapping(value = "/{clientMoniker}/export/agreepdf", method = RequestMethod.GET, role = {ManagerRole.ADMIN, ManagerRole.DIRECTOR, ManagerRole.OPERATOR})
public void exportAgreeFile(@PathVariable String clientMoniker, @ModelAttribute(CommonConsts.MANAGER_STATUS) JSONObject manager, HttpServletResponse httpResponse) throws Exception { public void exportAgreeFile(@PathVariable String clientMoniker, @ModelAttribute(CommonConsts.MANAGER_STATUS) JSONObject manager, HttpServletResponse httpResponse) throws Exception {
httpResponse.setContentType("application/pdf"); httpResponse.setContentType("application/pdf");
@ -807,94 +811,19 @@ public class TestController {
} }
int st=0;
/** /**
* *
*/ */
@GetMapping(value = "/batch_update_alipayapply") @GetMapping(value = "/batch_update_alipayapply")
public void batchUpdateAlipayApply() { public void batchUpdateAlipayApply() {
logger.info("=======>batchUpdateAlipayApply=开始批量更新支付宝"); if(st>0){
String[] alipayonlines = new String[]{}; return;
StringBuilder sb=new StringBuilder(); }
Arrays.stream(alipayonlines).forEach( st++;
clientMoniker -> {
JSONObject client = clientMapper.findClientByMoniker(clientMoniker);
if (client == null) {
logger.info("======>alipayonline:" + clientMoniker + ":client为空");
return;
}
if(TextUtils.isEmpty(client.getString("acn"))){
client.put("acn",null);
}
logger.info("======>alipayonline:" + clientMoniker);
if (!client.containsKey("company_website")) {
client.put("company_website", "https://www.royalpay.com.au/");
}
if (StringUtils.isBlank(client.getString("business_structure"))) {
client.put("business_structure", "Registered body(Sole Trader)");
}
if (StringUtils.isBlank(client.getString("alipayindustry"))) {
logger.info("======>alipayonline:" + clientMoniker + ":alipayindustry为空给默认值5311");
client.put("alipayindustry", "5311");
}
logger.info("======>alipayindustry:register:" + clientMoniker);
sb.append(clientMoniker+",");
// try {
// merchantChannelApplicationManager.getRegister(AlipayOnlineApi.class).apply(client, new EmptyMerchantApplication(), null);
// } catch (Exception e) {
// e.printStackTrace();
// }
// try {
// Thread.sleep(100);
// } catch (InterruptedException e) {
// e.printStackTrace();
// }
}
);
String[] alipayRetails = new String[]{ };
Arrays.stream(alipayRetails).forEach(
clientMoniker -> {
JSONObject client = clientMapper.findClientByMoniker(clientMoniker);
if (client == null) {
logger.info("======>alipayRetail:" + clientMoniker + ":client为空");
}
if(TextUtils.isEmpty(client.getString("acn"))){
client.put("acn",null);
}
logger.info("======>alipayRetail:" + clientMoniker);
if (!client.containsKey("store_photo") || !client.containsKey("company_photo")) {
return;
}
if (StringUtils.isBlank(client.getString("business_structure"))) {
client.put("business_structure", "Registered body(Sole Trader)");
}
if (StringUtils.isBlank(client.getString("alipayindustry"))) {
logger.info("======>alipayRetail:" + clientMoniker + ":alipayindustry为空给默认值5311");
client.put("alipayindustry", "5311");
}
if(TextUtils.isEmpty(client.getString("acn")) && !TextUtils.isEmpty(client.getString("abn")))
logger.info("======>alipayRetail:register:" + clientMoniker);
sb.append(clientMoniker+",");
// try {
// merchantChannelApplicationManager.getRegister(AlipayRetailApi.class).apply(client, new EmptyMerchantApplication(), null);
// } catch (Exception e) {
// e.printStackTrace();
// }
// try {
// Thread.sleep(100);
// } catch (InterruptedException e) {
// e.printStackTrace();
// }
}
);
logger.info("======>as:" + sb.toString());
alipayRegisterService.batchUpdateAlipayApply();
} }
} }

Loading…
Cancel
Save