Chinaunix首页 | 论坛 | 博客
  • 博客访问: 93496
  • 博文数量: 26
  • 博客积分: 0
  • 博客等级: 民兵
  • 技术积分: 291
  • 用 户 组: 普通用户
  • 注册时间: 2014-01-22 16:05
文章分类
文章存档

2014年(26)

分类: 网络与安全

2014-03-05 15:41:30



相信从事电子商务软件开发的朋友对SHOP++网上商城软件比较了解,本人近期也在研究SHOP++,并对shop++第三方支付插件开发比较有深入了解,SHOP++第三方支付方式采用插件机制开发,扩展新的第三方支付非常简单,下面是插件开发的基本方法,大家可以参考一下:
1、参考并复制net.shopxx.plugin.alipayDirect包
2、重命名包名称、插件类(AlipayDirectPlugin.java)名称、配置控制器类(AlipayDirectController.java)名称、配置视图(setting.ftl)名称
3、修改插件类的@Component注解值并保证其惟一
4、修改插件类实现方法,具体如下:
/**
* 获取插件名称
*/
public abstract String getName();

/**
* 获取插件版本
*/
public abstract String getVersion();

/**
* 获取插件作者
*/
public abstract String getAuthor();

/**
* 获取插件网址
*/
public abstract String getSiteUrl();

/**
* 获取安装URL,管理后台插件安装链接地址,若不需要安装功能返回null,若需要该功能,需编写相应配置控制器类
*/
public abstract String getInstallUrl();

/**
* 获取卸载URL,管理后台插件卸载链接地址,若不需要卸载功能返回null,若需要该功能,需编写相应配置控制器类
*/
public abstract String getUninstallUrl();

/**
* 获取设置URL,管理后台插件设置链接地址,若不需要设置功能返回null,若需要该功能,需编写相应配置控制器类
*/
public abstract String getSettingUrl();

/**
* 获取请求URL,跳转到第三方支付界面的URL
*/
public abstract String getRequestUrl();

/**
* 获取请求方法,跳转到第三方支付界面的请求方法
*/
public abstract RequestMethod getRequestMethod();

/**
* 获取请求字符编码,跳转到第三方支付界面的字符编码
*/
public abstract String getRequestCharset();

/**
* 获取请求参数,跳转到第三方支付界面的请求参数
*
* @param sn
*            编号
* @param description
*            描述
* @param request
*            httpServletRequest
* @return 请求参数
*/
public abstract Map getParameterMap(String sn, String description, HttpServletRequest request);

/**
* 验证通知是否合法,验证第三方支付完成后的返回结果是否合法
*
* @param sn
*            编号
* @param notifyMethod
*            通知方法
* @param request
*            httpServletRequest
* @return 通知是否合法
*/
public abstract boolean verifyNotify(String sn, NotifyMethod notifyMethod, HttpServletRequest request);

/**
* 获取通知返回消息,收到第三方支付完成后的返回结果的响应
*
* @param sn
*            编号
* @param notifyMethod
*            通知方法
* @param request
*            httpServletRequest
* @return 通知返回消息
*/
public abstract String getNotifyMessage(String sn, NotifyMethod notifyMethod, HttpServletRequest request);

/**
* 获取超时时间,支付超时时间
*/
public abstract Integer getTimeout();

阅读(1518) | 评论(0) | 转发(0) |
给主人留下些什么吧!~~