You can not select more than 25 topics
			Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
		
		
		
		
			
				
					133 lines
				
				6.5 KiB
			
		
		
			
		
	
	
					133 lines
				
				6.5 KiB
			| 
								 
											3 years ago
										 
									 | 
							
								package com.bocom.api.example.pmssMpng;
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								import com.alibaba.fastjson.JSON;
							 | 
						||
| 
								 | 
							
								import com.bocom.api.DefaultBocomClient;
							 | 
						||
| 
								 | 
							
								import com.bocom.api.helper.DateHelper;
							 | 
						||
| 
								 | 
							
								import com.bocom.api.helper.MyConfig;
							 | 
						||
| 
								 | 
							
								import com.bocom.api.request.pmssMpng.MPNG020702RequestV1;
							 | 
						||
| 
								 | 
							
								import com.bocom.api.response.pmssMpng.MPNG020702ResponseV1;
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								import java.util.ArrayList;
							 | 
						||
| 
								 | 
							
								import java.util.Date;
							 | 
						||
| 
								 | 
							
								import java.util.List;
							 | 
						||
| 
								 | 
							
								import java.util.UUID;
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								/**
							 | 
						||
| 
								 | 
							
								 * <pre>
							 | 
						||
| 
								 | 
							
								 * 查询订单@MPNG-MAPI
							 | 
						||
| 
								 | 
							
								 * </pre>
							 | 
						||
| 
								 | 
							
								 * <p>
							 | 
						||
| 
								 | 
							
								 *
							 | 
						||
| 
								 | 
							
								 * </p>
							 | 
						||
| 
								 | 
							
								 */
							 | 
						||
| 
								 | 
							
								public class QueryOrder_MPNG020702V1Test {
							 | 
						||
| 
								 | 
							
								    // head交易状态
							 | 
						||
| 
								 | 
							
								    private static final String RESP_STATUS_P = "P"; // 处理中
							 | 
						||
| 
								 | 
							
								    private static final String RESP_STATUS_F = "F"; // 失败
							 | 
						||
| 
								 | 
							
								    private static final String RESP_STATUS_S = "S"; // 成功
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								    // 订单处理状态
							 | 
						||
| 
								 | 
							
								    private static final String TRAN_STATE_PROCESS = "PROCESS"; // 处理中
							 | 
						||
| 
								 | 
							
								    private static final String TRAN_STATE_SUCCESS = "SUCCESS"; // 交易成功
							 | 
						||
| 
								 | 
							
								    private static final String TRAN_STATE_FAILURE = "FAILURE"; // 交易失败
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								    // body交易状态
							 | 
						||
| 
								 | 
							
								    private static final String ORDER_STATUS_PAIED = "PAIED";       // 交易成功
							 | 
						||
| 
								 | 
							
								    private static final String ORDER_STATUS_WAITPAY = "WAITPAY";   // 等待支付
							 | 
						||
| 
								 | 
							
								    private static final String ORDER_STATUS_REFUNDED = "REFUNDED"; // 部分退款
							 | 
						||
| 
								 | 
							
								    private static final String ORDER_STATUS_REFUNDALL = "REFUNDALL"; // 全部退款
							 | 
						||
| 
								 | 
							
								    private static final String ORDER_STATUS_CLOSED = "CLOSED";     // 部分退款
							 | 
						||
| 
								 | 
							
								    private static final String ORDER_STATUS_INITIAL = "INITIAL";   // 初始化
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								    public static void main(String[] args) {
							 | 
						||
| 
								 | 
							
								        try {
							 | 
						||
| 
								 | 
							
								            DefaultBocomClient client = new DefaultBocomClient(MyConfig.APP_ID, MyConfig.MY_PRIVATE_KEY, MyConfig.APIGW_PUBLIC_KEY);
							 | 
						||
| 
								 | 
							
								            /*
							 | 
						||
| 
								 | 
							
								              测试环境可以忽略SSL证书告警,生产环境不可忽略
							 | 
						||
| 
								 | 
							
								             */
							 | 
						||
| 
								 | 
							
								            client.ignoreSSLHostnameVerifier();
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								            MPNG020702RequestV1 request = new MPNG020702RequestV1();
							 | 
						||
| 
								 | 
							
								            request.setServiceUrl(MyConfig.APIGW_URL_ADDRESS + "/api/pmssMpng/MPNG020702/v1");
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								            MPNG020702RequestV1.MPNG020702RequestV1Biz bizContent = new MPNG020702RequestV1.MPNG020702RequestV1Biz();
							 | 
						||
| 
								 | 
							
								            MPNG020702RequestV1.MPNG020702RequestV1Biz.ReqHead reqHead = new MPNG020702RequestV1.MPNG020702RequestV1Biz.ReqHead();
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								            reqHead.setTransTime(DateHelper.dateToStr(new Date(), DateHelper.DateEnum.yyyyMMddHHmmss)); // 交易时间 yyyyMMddHHmmss
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								            reqHead.setVersion("V-1.0");
							 | 
						||
| 
								 | 
							
								            bizContent.setReqHead(reqHead);
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								            MPNG020702RequestV1.MPNG020702RequestV1Biz.ReqBody reqBody = new MPNG020702RequestV1.MPNG020702RequestV1Biz.ReqBody();
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								            reqBody.setMerTradeDate(DateHelper.dateToStr(new Date(), DateHelper.DateEnum.yyyyMMdd));
							 | 
						||
| 
								 | 
							
								            reqBody.setPayMerTranNo("Test_xbd_3033");
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								            reqBody.setTranScene("B2C-JSAPI-WECHAT"); // 交易场景
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								            List<MPNG020702RequestV1.MPNG020702RequestV1Biz.ReqBody.RequireFields> require_fieldsList = new ArrayList<>();
							 | 
						||
| 
								 | 
							
								            MPNG020702RequestV1.MPNG020702RequestV1Biz.ReqBody.RequireFields require_fields = new MPNG020702RequestV1.MPNG020702RequestV1Biz.ReqBody.RequireFields();
							 | 
						||
| 
								 | 
							
								            require_fields.setRequireField("bank_tran_no");
							 | 
						||
| 
								 | 
							
								            require_fieldsList.add(require_fields);
							 | 
						||
| 
								 | 
							
								            //--------------------------------------------
							 | 
						||
| 
								 | 
							
								            require_fields = new MPNG020702RequestV1.MPNG020702RequestV1Biz.ReqBody.RequireFields();
							 | 
						||
| 
								 | 
							
								            require_fields.setRequireField("third_party");
							 | 
						||
| 
								 | 
							
								            require_fieldsList.add(require_fields);
							 | 
						||
| 
								 | 
							
								            // ----------------------------------------------
							 | 
						||
| 
								 | 
							
								            require_fields = new MPNG020702RequestV1.MPNG020702RequestV1Biz.ReqBody.RequireFields();
							 | 
						||
| 
								 | 
							
								            require_fields.setRequireField("third_party_tran_no");
							 | 
						||
| 
								 | 
							
								            require_fieldsList.add(require_fields);
							 | 
						||
| 
								 | 
							
								            // ----------------------------------------------
							 | 
						||
| 
								 | 
							
								            require_fields = new MPNG020702RequestV1.MPNG020702RequestV1Biz.ReqBody.RequireFields();
							 | 
						||
| 
								 | 
							
								            require_fields.setRequireField("payment_info");
							 | 
						||
| 
								 | 
							
								            require_fieldsList.add(require_fields);
							 | 
						||
| 
								 | 
							
								            // ----------------------------------------------
							 | 
						||
| 
								 | 
							
								            require_fields = new MPNG020702RequestV1.MPNG020702RequestV1Biz.ReqBody.RequireFields();
							 | 
						||
| 
								 | 
							
								            require_fields.setRequireField("refund_info");
							 | 
						||
| 
								 | 
							
								            require_fieldsList.add(require_fields);
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								            reqBody.setRequireFields(require_fieldsList);
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								            reqBody.setMerPtcId(MyConfig.MER_PTC_ID);   // 商户编号:131058140006137
							 | 
						||
| 
								 | 
							
								            reqBody.setPartnerId(MyConfig.PARTNER_ID);
							 | 
						||
| 
								 | 
							
								//            reqBody.setSysOrderNo("4200001389202203083033723192");
							 | 
						||
| 
								 | 
							
								            bizContent.setReqBody(reqBody);
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								            request.setBizContent(bizContent);
							 | 
						||
| 
								 | 
							
								            MPNG020702ResponseV1 response = client.execute(request, UUID.randomUUID().toString().replace("-", ""));
							 | 
						||
| 
								 | 
							
								            System.out.println("resp:" + JSON.toJSONString(response));
							 | 
						||
| 
								 | 
							
								//            String rspMsg = response.getRspMsg();
							 | 
						||
| 
								 | 
							
								//            String rspCode = response.getRspCode();
							 | 
						||
| 
								 | 
							
								//            System.out.println(rspCode);
							 | 
						||
| 
								 | 
							
								//            System.out.println(rspMsg);
							 | 
						||
| 
								 | 
							
								            if (response.isSuccess()) { // 调用接口成功
							 | 
						||
| 
								 | 
							
								                // head
							 | 
						||
| 
								 | 
							
								                MPNG020702ResponseV1.RspHead rspHead = response.getRspHead();
							 | 
						||
| 
								 | 
							
								                String responseCode = rspHead.getResponseCode();
							 | 
						||
| 
								 | 
							
								                String responseMsg = rspHead.getResponseMsg();
							 | 
						||
| 
								 | 
							
								                String responseStatus = rspHead.getResponseStatus(); // 交易状态 P:处理中 F:失败 S:成功
							 | 
						||
| 
								 | 
							
								                String responseTime = rspHead.getResponseTime();
							 | 
						||
| 
								 | 
							
								                if (!RESP_STATUS_S.equals(responseStatus)) {
							 | 
						||
| 
								 | 
							
								                    System.out.println(responseCode);
							 | 
						||
| 
								 | 
							
								                }
							 | 
						||
| 
								 | 
							
								                // body
							 | 
						||
| 
								 | 
							
								                MPNG020702ResponseV1.RspBody rspBody = response.getRspBody();
							 | 
						||
| 
								 | 
							
								                String outTradeNo = rspBody.getPayMerTranNo();
							 | 
						||
| 
								 | 
							
								                MPNG020702ResponseV1.RspBody.RequireValues requireValues = rspBody.getRequireValues();
							 | 
						||
| 
								 | 
							
								                String bankTransNo = requireValues.getBankTranNo();
							 | 
						||
| 
								 | 
							
								                String tranState = rspBody.getTranState(); // PROCESS 处理中  SUCCESS 交易成功   FAILURE 交易失败
							 | 
						||
| 
								 | 
							
								                String orderStatus = rspBody.getOrderStatus(); // PAIED交易成功 WAITPAY等待支付  REFUNDED部分退款  REFUNDALL全部退款  CLOSED订单关闭 INITIAL初始化
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								                String totalAmount = rspBody.getTotalAmount(); // 订单总金额
							 | 
						||
| 
								 | 
							
								            } else {
							 | 
						||
| 
								 | 
							
								                System.out.println(response.getRspCode());
							 | 
						||
| 
								 | 
							
								                System.out.println(response.getRspMsg());
							 | 
						||
| 
								 | 
							
								            }
							 | 
						||
| 
								 | 
							
								        } catch (Exception e) {
							 | 
						||
| 
								 | 
							
								            e.printStackTrace();
							 | 
						||
| 
								 | 
							
								        }
							 | 
						||
| 
								 | 
							
								    }
							 | 
						||
| 
								 | 
							
								}
							 |