支付通微会员开发文档_第1页
支付通微会员开发文档_第2页
支付通微会员开发文档_第3页
支付通微会员开发文档_第4页
支付通微会员开发文档_第5页
已阅读5页,还剩15页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、u支付通微会员开发文档2014年07月28日中国支付通集团控股有限公司研发中心文档修订历史版本号日期说明作者/审阅V1.014.07.28文档创建Hang YJ目 录1.前言62.定义及名词解释62.1.weixinhy62.2.aop62.3.ggpt63.系统框架交互73.1.统交互流程图831.1基于Jersey通信84.简单介绍实现8举一个例子简单介绍94.1.AOP系统94.1.1 开发相应的*Request对象,9参考com.allinpay.api.request.UserInfoRequest94.1.2相应的Conntroller10使用ConnectToOpenServic

2、e对象,调用AOP系统。参考erceptor.NewSpringAuthSessionInterceptor104.1.2设置Response对象11参考com.allinpay.api.response.open.UserInfoResponse114.2.Ggpt系统124.2.1开发相应的*Request12参考com.allinpay.api.request.saleact.UserInfoRequest124.2.2Component处理类13参考com.allinpay.api.server.saleact.QueryService13

3、4.2.3Response返回类,15参考com.allinpay.api.response.saleact. TBrhMenuResponse154.3.配置的修改164.3.1为该接口新增接口配置16登陆csnew,录入接口信息16将接口绑定到app上174.3.2为该接口新增接口配置19修改ggpt Hperties,新增配置的接口信息191. 前言 本文档系支付通微会员开发文档介绍。2. 定义及名词解释在本文件中对于接口及流程的描述中使用了一些业务相关术语。这里对这些术语进行简要的说明。2.1. weixinhy微信公众帐号系统2.2.

4、 aop转发weixinhyj请求的系统。2.3. ggpt后台业务系统。3. 系统框架交互微会员 系统交互图3.1. 统交互流程图31.1基于Jersey通信基于Restful的Jersey通信的基本介绍/developerworks/cn/web/wa-aj-tomcat/index.html/s/blog_616e189f0100syu8.html4. 简单介绍实现举一个例子简单介绍4.1. AOP系统4.1.1 开发相应的*Request对象,参考com.allinpay.api.request.UserIn

5、foRequestpublic class UserInfoRequest extends BaseWxAllinpayRequst public String brhId;public String userWxNum;.get、set方法.Override/重写该方法,指定请求类的处理Pathpublic String getApiMethodName() return allinpay.ggpt.saleact.query.userinfo;4.1.2相应的Conntroller使用ConnectToOpenService对象,调用AOP系统。参考com.allinpay.weixin.

6、interceptor.NewSpringAuthSessionInterceptorpublic class NewSpringAuthSessionInterceptor . public WxUserInfo getUserInfo(HttpServletRequest request, HttpServletResponse response) .if(!userInfo.isRefuse()/初始化Request请求UserInfoRequest userInfoRequest = new UserInfoRequest();/设置请求参数userInfoRequest.setBrh

7、Id(brhId);userInfoRequest.setUserWxNum(userInfo.getUserWxNum();/初始化返回参数UserInfoResponse userInfoResponse = new UserInfoResponse();try /使用connectToOpenService对象,调用AOP系统userInfoResponse = connectToOpenService.excute(userInfoRequest); catch (ApiException e)logger.error(查询微信用户信息异常:+e.getMessage();userIn

8、fo.setMobile(userInfoResponse.getMobile();userInfo.setCustId(userInfoResponse.getCustId();userInfo.setStat(userInfoResponse.getStat();return userInfo;4.1.2设置Response对象参考com.allinpay.api.response.open.UserInfoResponsepublic class UserInfoResponse extends BaseWxAllinpayResponse private static final lo

9、ng serialVersionUID = -L;/使用ApiField注解,里面的内容必须和ggpt返回的xml名称相对应,并且访问修饰符必须是public/* 手机号 */ApiField(mobile)public String mobile;/* 用户ID */ApiField(cust_id)public String custId;/* 微信关注状态 0:未关注 1:关注未注册 2:取消关注 3:已注册 */ApiField(stat)public String stat;.getset方法.4.2. Ggpt系统4.2.1开发相应的*Request参考com.allinpay.a

10、pi.request.saleact.UserInfoRequest public class UserInfoRequest extends AopObject private static final long serialVersionUID = L;/新增validator标签NotEmpty(message = 机构微信号不能为空)private String brhId;NotEmpty(message = 用户微信号不能为空)private String userWxNum;.getset方法.4.2.2Component处理类参考com.allinpay.api.server.

11、saleact.QueryServicePOST/该Path对应aop的*Request中的getApiMethodName()中的路径Path(userinfo)public Response userInfo(MultivaluedMap formParams)(获取微会员用户信息接口开始);String format = formParams.getFirst(FORMAT);/该接口信息必须通过csnew平台维护/验证签名Response validate = aopValidation(formParams);if(validate != null)return

12、 validate;UserInfoRequest req = AopUtils.getBusinessRequest(formParams, UserInfoRequest.class);/校验入参SetConstraintViolation sets = ValidatorHolder.validate(req);if(sets.size() 0)for(ConstraintViolation v : sets )String code = 51;String msg = getMessage(code);return AopUtils.getBusinessErrorResponse(f

13、ormat, code, msg,code,v.getMessage();/机构号String brhId = req.getBrhId();/用户微信IDString userWxId = req.getUserWxNum();List userInfoList = new ArrayList();HashMap map = new HashMap();map.put(brhId, brhId);map.put(userWxId, userWxId);userInfoList = basicManager.selectUserInfo(map);UserInfoResponse respon

14、se = new UserInfoResponse();. .response.setRspCode(TXN_SUCCESS);(获取微会员用户信息接口结束);return AopUtils.getFormatResponse(format, response);4.2.3Response返回类,参考com.allinpay.api.response.saleact. TBrhMenuResponseXmlAccessorType(XmlAccessType.FIELD)XmlRootElement(name = ggpt_saleact_brhmenu_query_re

15、sponse)public class TBrhMenuResponse extends AopObject private static final long serialVersionUID = -L;/ 应答码,和aop解析的response值对应XmlElement(name = rsp_code)private String rspCode;/ 错误信息XmlElement(name = ret_msg)private String retMsg;XmlElementWrapper(name = brh_menu + ARRAYS_SUFFIX)XmlElement(name = brh_menu)public List brhMenuArrays;.get/set方法.4.3. 配置的修改4.3.1为该接口新增接口配置登陆csnew,录入接口信息将接口绑定到a

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

最新文档

评论

0/150

提交评论