SpringBoot 프로젝트 도킹 마이크로 편지 무대 지불 개발 - 마이크로 채널을 하나의 통합 인터페이스 개발

나는 SDK 마이크로 채널 급여를 찾지 못했습니다. 순수한 필기 인터페이스 문서에 공식 자신에 따르면, 다양한 XML은 JSON, JSON 회전 XML 암호화 및 복호화, 서명 ,,,, 모든 사람들의 붕괴를 켤 수 있습니다

셋째 날의 개발은, 공식 SDK를 발견했다. 기분이 갑자기 빛을 갑자기보고, 사람들은 그것의 이완 된 부분이다.

몇 마디의 사람이 코드에 직접 말했다

첫 번째는 그것을 마이크로 채널 종속성의 도입 비용을 지불한다

<의존성> 
<의 groupId> com.github.wxpay </를의 groupId>
<artifactId를> wxpay-SDK </를 artifactId를>
<version>은 0.0.3 </ 버전>
</ 의존성>

우리는 각각의 방법에 내부 소스를 조사 할 수 캡슐화 내가 눈물을 터뜨렸다 기본 출신도 매우 좋았다
예를 들어, 하나의 인터페이스 개발에서 통합 마이크로 편지 다음
  / ** 마이크로 채널 @description에 단일 인터페이스 
* @author의 웬징의
*의 @date 2019년 5월 13일 10시 46분
파라미터 : [wxUnifiedorderModel]
* @return com.zyhp.utils.Result
** /
공용 wxUnifiedorder 결과 (WxUnifiedorderModel wxUnifiedorderModel )는 {예외 발생
    의 새로운 미세 유로 페이, 실제 개발이 바람직하다 싱글 톤 // 새로운
신규 신규 MyWxConfig의 구성 = () MyWxConfig
; wXPay wxPay = 새로운 새 wXPay (구성)
하는의 SortedMap <문자열, 문자열>를 PARAMS = 새로운 새 TreeMap의 <문자열 문자열> ();
params.put ( "device_info에", "웹"); // 디바이스 번호
params.put ( "본체"wxUnifiedorderModel.getBody ( )); // 설명
// 판매자 순서 번호를 생성하는
길이를 serialNumMax = redisUtil.incr ( "outTradeNo");
문자열 outTradeNo = CommonUtil.getDateStr (새 Date ()) + serialNumMax;
wxUnifiedorderModel.setOutTradeNo (outTradeNo);
params.put ( "out_trade_no", outTradeNo);
params.put ( "total_fee"wxUnifiedorderModel.getTotalFee () movePointRight (2)로 .toString ().);
// params.put ( "TIME_START", TIME_START);
params.put ( "trade_type", "JSAPI");
params.put ( "notify_url"Constans.SERVICE_HOST + "/ payInfoBack");
params.put ( "spbill_create_ip", wxUnifiedorderModel.getSpbillCreateIp ());
지도 <문자열, 문자열> 된 resultMap = wxPay.unifiedOrder (PARAMS);
경우 ( "FAIL".equals (resultMap.get ( "return_code"


( "성공".equals은 (resultMap.get는 ( "RESULT_CODE"))) {경우
새로운 결과를 반환 ( "- 1", resultMap.get ( "err_code_des"), NULL);
}
//保存该订单记录
wxUnifiedorderModel.setTimeStart (새 Date ());
wxUnifiedorderModelMapper.insert (wxUnifiedorderModel);
새로운 결과를 리턴 ( "1", "成功") resultMap.get ( "prepay_id");
}

추천

출처www.cnblogs.com/wenjing-520/p/10870878.html