
微信购物电子商务系统设计与实现.doc
11页购物电子商务系统设计与实现 张渊博 北京工业大学计算机学院 摘 要: 基于 B2C 的网上购物电子商务系统, 结合 EasyRec 推荐系统提供商品推荐系统基于公众平台开发, 主要分为前端模块和后台管理模块, 前端模块主要通过 HTML5+JavaScript 实现购物流程和用户基本管理功能, 并提供推荐位;后台管理系统使用 OpenCustomer 完成系统管理, 并开发前端购物和公众号业务功能的支持模块OpenCustomer 是 Sourceforge·net 可供下载使用的开源电子商务和 CRM (客户关系管理) 系统, 使用 Mysql 数据库和 Java/EJB技术, 前端实现框架是 SSI该系统支持多公司 (商户) 、多库存管理、权限管理、订单管理、销售管理、财务结算等功能, 并提供 Web 购物及后台 Web 管理页面, 为用户带来全新购物体验关键词: 电子商务; 公众平台; 推荐系统; Sourceforge; 作者简介:张渊博 (1991-) , 男, 河南郑州人, 北京工业大学计算机学院硕士研究生, 研究方向为大数据、分布式存储收稿日期:2017-05-18Design and Implementation of WeChat Shopping E-business SystemZHANG Yuan-bo School of Computing, Beijing University of Technology; Abstract: Online shopping e-commerce system based on B2C WeChat, combine with easyRec providing merchandise recommendation.The System based on WeChat public platform, Wechat users focus on WeChat Official Accounts, then buy goods online.The system is divided into front end module and background management module.Front end uses HTML5+JavaScript to implement shopping process and WeChat users' management, with recommendation place providing.Background management uses OpenCustomer to manage.OpenCustomer is a open source electronic commerce and CRM system, using MYSQL and Java/EJB.The front end frame is SSI.The system will support multiple companies, multiple stock, privilege management, orders management, sales management, financial settlement and so on, then will provide shopping page and background web management page.Keyword: E-business; WeChat public platform; recommender system; Sourceforge; Received: 2017-05-180 引言网上购物系统是 B2C[1] (企业与消费者的交易) 、B2B (企业与企业的商务交易) 、C2C (消费者与消费者的交易) 等类型电子商务的前端门户, 网上购物系统实现了线下面对面的交易到消费者和卖家交易双方在网络虚拟环境下的交易。
当前主流的网上购物系统不仅具有基本的商品浏览、站内查找、购买和商品评价等功能, 还提供商品推荐功能, 系统通过对交易过程中的业务数据进行挖掘, 推荐出用户可能感兴趣度的商品或者热度高的商品在网络购物规模日益庞大的网络经济时代, 移动端购物系统为更加方便的购物体验提供了新的发展思路利用公众平台[2]提供的完善接口支持, 本文设计开发了一套网购电子商务系统, 并结合推荐引擎 easyRec 的调用实现商品推荐功能系统后台管理模块具备电子商务功能, 提供 CRM[3], 还提供前端购物和公众号的业务支持模块1 相关技术1.1 JavaScriptJavaScript[4]是一种脚本语言, 它是轻量级的, 无需编译现实环境下的绝大多数网站都使用 JavaScript 进行解析JavaScript 常用于为 HTML 页面增加动态内容1.2 SSI 框架SSI 框架组成构件包括 Struts2[5]、Spring[6]和 Ibatis[7], 该框架使开发者和运营商管理起来更加容易SSI 的各组件帮助完成各层级之间的信息交换, 一个完整 Web 端的功能实现与信息通信在 SSI 框架的支持下变得更加简便。
Struts2 相对简化了配置文件信息, 使页面和 Action 之间的关系与通信更加简捷1.3 MySQLMySQL[8]是目前受欢迎程度很高的开源 SQL 系统, 可分配多个用户, 能够充分利用处理器等硬件资源, 同时能为多线程开发提供服务和支持1.4 JDBCJDBC (Java Data Base Connectivity, Java 数据库连接) 可以为多种关系数据库提供统一访问, 通过 JDBC 驱动更加方便地向各种关系数据库传送 SQL 语句开发者只需将 Java 和 JDBC 结合起来写一组通用程序就可以支持所有平台上的运行1.5 easyRec 推荐引擎EasyRec[9]集成方便、容易扩展且功能丰富, 是一套拥有后台管理系统页面的推荐系统, 其提供了 Rest 和 Javascript 两种访问方式EasyRec 使用 tenant (appProjectID) 参数确定不同网站的唯一性, 并同时服务于多个网站请求不同网站应用被称为不同的“Tenant”, 被操作者管理每一个 Tenant 拥有一个唯一标识符, 供 API 调用所需, 操作者 API 密钥 (32bitAPIKEY) 也要同时提供。
例如 js 调用:"/easyrec-web/api/version/json/recommendAlgorithm?apikey=32bitAPIKEY&tenantid=appProjectID&itemid=productId"1.6 开发和运行环境开发和部署所需要工具及其软件为:开发工具主要有 Myeclipse8.5、Mysql-5.6.31-winx64;操作系统:Windows7;服务器软件:Tomcat6.0, Windows Server 2012;浏览器:Internet Explorer6.0 及以上版本, 或者 Chrome2 系统分析与设计2.1 系统整体设计该电子商务系统分为前端网上购物模块和后台管理模块用户进行网上购物前需先关注商城公众号, 在公众号窗口界面, 用户触发商城菜单按钮进入相应商城首页[9-14], 然后通过各种链接和导航浏览商品、添加购物、下单、提交订单、完成支付等, 从而完成网上购物网上购物系统为用户提供了个人信息维护功能, 用户可查看和管理自己的历史订单系统后台管理模块 (OpenCustomer) 让平台商 (系统维护方和运营商) 、第三方商户 (以下简称“第三方”) 、供货商这 3 种角色在系统中实现菜单配置、财务结算、商品配置、商品上架、订单处理和客户查看等工作。
前端网购模块主要有公众号开发模块、购物车、个人中心模块 (1) 公众号开发模块该模块实现系统与服务器的交互通信, 为公众号和购物系统的正常协作提供支持和服务, 实现用户关注公众号、进入商城、“我的-个人中心”等菜单事件处理; (2) 购物车模块该模块支持和实现用户购买商品的整个流程, 包括商品浏览、购物、下单等, 是系统最重要的部分; (3) 个人中心模块该模块支持和实现用户自己的订单管理、查看及信息管理, 包括收货、收货地址和个人资料等功能后台管理模块主要实现系统菜单及参数配置、角色和后台系统登录用户的管理维护、财务对账结算等所涉及的客户、商品、客户订单等数据存储在系统数据库 (MyDB) 中, 各实体之间关系的建立通过外键完成后台管理系统具备电子商务业务处理能力, 能够统一处理和调用这些业务数据第三方使用系统分配权限对商品进行配置、对订单进行处理、对客户进行管理系统前端模块通过调用数据库数据获取商品、客户、订单等数据, 同时创建客户、订单等平台商在后台为每个第三方分配登录用户名和密码, 保存公众号信息appid、appsecret 等这些公众号信息, 对于希望入驻平台的第三方商户和平台开发商而言, 是对接平台的钥匙;单独对于平台开发商而言, 则是归集信息和响应信息的依据, 是实现端网上购物系统的关键和必备参数[15-17]。
有了这些参数支持, 第三方就可以进行公众号开发, 将公司 (商城) 商品展示给关注用户, 实现线上销售该电子商务系统的网购和后台管理功能如下:(1) 直接购买和购物车功能通过端购买公司商品, 需实现商品列表、商品详情、直接购买、添加商品到购物车、结算、下单、确认提交订单、支付等功能2) 客户资料信息管理该功能帮助用户维护个人资料和收货信息, 包括、邮件、地址等用户可以设置多个收货地址, 但只能将其中一个设成默认地址3) 用户订单管理该功能可让用户删除已完成和已取消状态下的订单, 查看所有订单及每个订单的详细信息4) 商城公众号开发商城公众号开发提供的服务包括接入验证、菜单、消息事件请求支持等5) 后台管理平台商、第三方、供货商 3 种角色的管理员用户能够在后台系统中对系统、商品、订单、客户等进行统一管理2.2 系统需求分析2.2.1 业务逻辑需求分析该系统作为一套完整的电子商务系统, 需要兼具前端网上购物和后台管理功能1) 前端购物系统业务需求分析前端网上购物在端进行, 需要借助公众开发平台实现用户关注商城公众号, 通过点击公众号的商城名菜单进入商城首页, 浏览商品、查看详情、直接购买或者添加购物车、确认订单、提交订单、支付并完成购物流程。
用户可以到个人中心页面对个人资料、收货信息进行增删改查等, 到订单中心对订单列表和订单详情进行查看, 对于已经完成的订单和取消的订单仍有记录的, 提供删除订单记录功能2) 后台管理系统业务需求分析提供 3 种角色:平台商 (项目系统平台的开发商或者运营商) 、第三方、供货商这 3 种角色具有相对独立的业务管理权限平台商角色用户主要业务功能:对后台系统管理页面的菜单进行维护、创建角色、为角色分配可操作的菜单权限、创建不同角色的登录用户、维护系统业务功能参数、创建其它两种角色的用户名和密码、财务结算业务等第三方角色用户主要业务功能:添加商品、上架下架商品、查看订单、维护商城店铺名称及Logo 等基本信息数据、增删改查供货商数据、查看客户等供货商角色用户主要业务功能:查看订单、发货、维护库存等2.2.2 数据流分析本系统前端购物系统产生的主要业务数据是客户、商品、订单数据, 这些数据统一存储在 MyDB 数据库中 openid 与客户 ID、公司等的对应和关联关系, 以及 OpenCustomer 后台管理相关业务和系统数据也存储在 MyDB 数据。
