Fecmall开源B2C商城


fecmall



Fecmall开源产品,是遵从开源协议的产品,允许商用免费授权,代码100%开源,您可以安装进行商用,授权协议的详细, 请参看 Fecmall授权协议

您可以在开源产品上面进行二次开发做自己的项目,满足自己公司的需要。

Fecmall性能Ab压测http://www.fecmall.com/topic/1573

Fecmall授权协议http://www.fecmall.com/license

Fecmall QAhttp://www.fecmall.com/topic/400


一:Fecmall开源系统Demo

Pc Demo: http://fecshop.appfront.fancyecommerce.com/
手机H5 Demo: http://fecshop.apphtml5.fancyecommerce.com/
手机Vue: http://demo.fancyecommerce.com/#/
后台:Demo: Fecmall-2.12.1版本演示地址



二:入口简介

为满足多场景,多设备的电商模板,fecmall加入了多个入口,其中, Fecmall的底层功能是在Servcies层实现, 各个入口调用Servces里面的方法实现自己的逻辑, 这样底层代码实现统一实现,参数设置统一,保证各个入口数据一致, 目前Fecmall的规划是6个入口:

功能详情
Appfront入口前台PC端,电脑浏览器访问前端的部分,适用于pc电脑端
apphtml5前台WAP端,html5做的部分,适用于移动浏览器设备
appserver前台服务端,该端口提供api,适合于做前后端彻底 分离的应用,譬如:手机app,VUE类似的应用。目前已经支持的入口:VUE,微信小程序
appadmin后台端,在后台可以编辑产品查看订单等一系列的客服和编辑执行的部分
appapi和第三方进行数据交互端,在该端口可以将fecmall系统的数据传递给其他 的系统,譬如将订单传递给ERP,利用产品刊登工具刊登产品等。
console在服务器后台执行批量线下脚本端,譬如计算几月内产品销量,同步搜索引擎产品数据, 未支付订单自动取消等等离线脚本



三:系统文档

Fecmall作为一款框架级别的产品,有着完备的文档

开发文档: Fecmall开发文档
帮助文档 Fecmall帮助文档
应用市场文档 Fecmall应用市场文档



四:架构功能列表

功能详情
多入口fecmall是多入口商城,为了满足多设备,多系统对接, 多数据处理的需要,分为:pc入口(appfront),html5入口(apphtml5), 前后端分离入口(appserver),后台入口(appadmin),多系统api交互入口(appapi),脚本端入口(console), 以及公用common部分
多store每个入口都可以设置多个store,每个store可以用不同的子域名,也可以通过url后缀 的方式进行设置,每个store有对应的语言,以及默认货币 ,您可以在后台对store进行管理,添加自己的多语言,详细参看:Fecmall多store
多语言支持多语言store,可以设置为子域名store和后缀型store,支持站内语言,数据语言,邮件多语言,报错信息多语言等, 详细参看:Fecmall多语言
多货币支持多货币,可以设置基础货币,后台的产品价格,运费等都以基础货币进行设置, store可以设置默认货币,用户第一次访问为该store的默认货币,用户可以切换其他的货币查看价格, 来满足国际化商城的需要,详细参看:Fecmall多货币
多模板机制参考magento的theme机制原理,使用Yii2的view机制实现 通过设置多个模板文件路径,设置不同的优先级,通过高优先级theme view文件覆盖低优先级view文件的机制, 来实现theme的重写,进而支持独立模板theme开发,您可以为fecmall开发多个不同的模板,通过配置引入即可 ,详细参看:Fecmall多模板
多数据库存储 Fecmall 是加入services层架构,底层的数据都是通过service进行提供,可以根据不同的数据库,实现多种不同的services,fecmall 目前对非事务性表进行了mysql和mongodb双数据库实现,譬如产品,分类,评论,cms等等, 默认使用mysql,可以在后台通过配置切换到mongodb,也可以使用redis 购物车替换mysql购物车存储, 该机制可以方便的替换掉底层,为您业务增长改变存储工具带来很多的便利,重构底层非常方便。 ,详细参看:Fecmall Services
多搜索引擎工具您可以根据需要,通过配置,切换使用mysql,mongodb,xunsearch,elasticSearch 来满足产品搜索的需要Fecmall搜索
错误捕捉机制 services中出现的错误信息,统一由 helper errors service进行统一处理,方便error信息管理
Event事件机制 通过事件,方便的对某些功能进行无代码侵入性添加功能,详细参看 Fecmall Event事件机制
配置加速fecmall配置加速的将fecmall的N个配置文件合并成一个配置文件, 进而减少了使用merge合并数组耗费的时间, 在并发不高的网站不需要做这个配置加速,影响不大,并发量高 的网站推荐使用,详细参看: Fecmall配置加速
手机检测跳转手机web浏览器访问pc入口,通过设置进行检测,自动跳转到h5或者vue入口, Fecmall手机检测跳转
封装SessionFecmall对session机制进行了封装,来满足浏览器访问入口,和前后端分离api入口的统一管理, 详细参看Fecmall Session
Log日志通过该功能打印log信息,开发利器,将代码执行过程中的变量信息打印出来,方便调试 ,详细参看: Fecmall Log日志
Assets部分管理的是css js 以及css中出现的img等静态资源 , 详细参看:
Error Handler错误捕捉机制,开发环境可以直接将错误报出,但是线上为了安全, 需要将错误信息隐藏起来,而且,用户再访问过程中出现的错误捕捉起来,存储到数据库,开发者通过这个可以查看 被用户访问的,存在错误的页面url,呈现问题,解决问题,这些一般都是测试人员没有测试到的错误,通过该机制收集, 详细参看: Fecmall Error Handler
缓存Fecmall的缓存,有整页缓存,区块缓存,您可以通过配置开启和关闭缓存, 可以将缓存放到磁盘文件或者redis里面,可以在后台刷新缓存, 详细参看:Fecmall 缓存
URL重写伪静态seo考虑的因素,将页面标题关键字写入url里面, 加强该页面中该关键字的权重, 详细参看:Fecmall URL重写伪静态
fecmall升级fecmall是一直维护的开源电商商城,以composer库包独立发布, fecmall版本更新后,您可以通过composer进行升级版本代码,详细参看: Fecmall升级
fecmall应用市场Fecmall扩展性非常强,可以在不修改源代码的前提下修改任意功能,在满足自身升级, 用户本地开发外,还支持第三方发布独立应用扩展,第三方用户可以将开发的应用扩展发布到应用市场平台, 供其他用户下载,赚取RMB,当然,官方开发的扩展也都在应用市场发布,用户购买后, 可以在后台直接在线安装应用,满足自身需要,详细参看:Fecmall升级



五:页面功能列表

功能详情
首页电商商城主页,您可以再后台设置首页seo信息(title,meta-keywords,meta-description等),以及首页显示的产品, ,详细参看:Fecmall首页
静态块配置可以在后台设置html静态块,然后再页面中引入, 方便维护修改,譬如首页的走马灯图,底部文字条款的编辑等,详细参看: Fecmall 静态块
Page单页对于电商商城的文字条款等偏静态化的文字单页, 譬如文字条款,退款协议等等,可以通过后台设置Page,方便的进行在线编辑文字内容 ,详细参看:Fecmall Page页
404页面当url不存在的时候,就会显示404页面,方便用户继续回到首页 ,详细参看: Fecmall 404页面
小部件widget:功能和view一起的独立块,功能部分提供动态数据, view部分进行页面展示,可以通过函数引用到各个不同的页面,对于各个页面中经常出现的区块, 很适合用widget,譬如页面的头部,尾部,产品的价格等,详细参看: Fecmall小部件
分类页面您可以再后台设置分类的各个细节选项, 分类的菜单显示,分类产品的排序,分类的属性过滤,以及后台添加分类,设置产品等等 详细参看:Fecmall分类页面
产品页面后台上传产品,设置产品页面参数,设置规格数据等等, 详细参看:Fecmall 产品页面
购物车页面 详细参看:FecMall 购物车
账户中心页面您可以登陆注册用户,找回密码,使用第三方facebook,google登陆,管理帐号信息,订单,评论,收藏,管理收货地址等
产品评论页面查看产品评论页面,评星等
contact页面联系我们页面



六:商城功能列表

产品库存产品的库存管理,产品下单库存扣除,高并发库存超卖控制 , 未支付订单库存返还,详细参看: Fecmall产品库存
产品价格分类产品原价,产品销售价格,产品特价,产品特价开始时间, 产品特价结束时间,产品批发价格等 , 详细参看:产品价格
产品属性Fecmall只添加了通用的属性,譬如名字,价格,描述,图片等, 对于特定的商品,有一些特定的属性,因此fecmall设计了产品属性功能,您可以为该类产品添加属性, 分为普通属性和spu属性,普通属性是用来显示记录用的, 而spu属性就是我们所说的规划属性,譬如颜色,尺码等,是用户下单需要进行选择的属性, 您可以根据需要添加属性,详细参看:Fecmall后台设置属性
产品属性组fecmall属性组的概念,和magento中的属性组概念类型 是针对特定类产品而设计的,譬如衣服有颜色,尺码,款式,领口,袖长等属性, 那么该类产品可以设置衣服属性组,为这个属性组勾选相应的属性即可, 当我们在后台为该类产品添加了属性,然后将产品属性和产品属性组关联起来, 当用户添加产品选择属性组后,那么相应属性组的属性就会加入到该类产品中, 您可以根据不同类别的产品,譬如电子产品,服装,等设置不同的属性组 ,详细参看:Fecmall后台设置属性组
产品导入您可以在后台,通过excel进行产品信息的导入。
产品评论对于用户下单的产品,用户可以进行产品评论,详细参看:Fecmall产品评论
优惠卷通过优惠卷码,兑换优惠卷,下单折扣 ,详细参看:Fecmall优惠卷
货运方式用户下单,运费的选择以及运费的计算 ,加入实际重和体积重的概念,进行运费的 计算,详细参看:Fecmall货运方式
支付方式用户订单进行支付的支付方式, 目前支持: paypal支付,支付宝pc和H5支付,微信pc扫码支付,微信内部jsApi支付,微信h5支付 , 对于微信支付可以参看: fecmall微信支付 支付方式详细参看:Fecmall 支付方式
游客下单支持未注册用户下单,详细参看:Fecmall 游客下单
Newsletter支持newsletter邮件订阅,详细参看:Fecmall Newsletter
FB,Google登陆使用facebook,google账户直接登陆商城 ,详细参看:Fecmall FB,Google登陆
国家设置对货运地址中,国家和省市的编辑,详细参看:Fecmall国家设置
微信小程序微信小程序入口,demo地址可以在微信搜索`fecmall`查看,fecmall 在后端api进行支持,同时微信小程序部分也进行了实现 , 详细参看:微信小程序
订单用户下单,参数设置,以及订单管理等 ,详细参看:Fecmall订单
Sitemap网站地图sitemap生成以及nginx设置等 ,详细参看:Fecmall Sitemap
Robots网站地图Rotobs文件的设置 ,详细参看:Fecshop Robots
邮件用户注册,找回密码,下单等邮件的设置和使用 , 支持多语言邮件,详细参看:Fecmall邮件
Cron脚本需要cron设置的fecmall脚本 ,详细参看:Fecmall Cron
验证码注册用户,找回密码等提交操作,为防止用户恶意操作,需要进行验证码验证 ,详细参看:Fecmall 验证码
搜索Fecmall进行了多搜索工具实现 您可以使用mysql,mongodb,xunsearch进行搜索,也可以使用elasticSearch扩展实现, 或者自己二次开发自己想要的搜索工具,详细参看:Fecmall 搜索
后台RBAC权限RBAC权限管理, ,以action为粒度,对信息的查看,编辑,保存,删除, 以及信息归属用户方面,在框架层面进行了控制, 让您公司员工的权限控制更加严格,详细参看:Fecmall RBAC
产品属性添加您可以在后台进行产品属性的添加 ,详细参看:Fecmall产品属性
产品属性组将产品和产品属性组建立关联,新建产品的时候,选择相应的属性组, 就有了该属性组下面关联的所有产品属性 ,详细参看:Fecmall产品属性组
产品属性排序分类产品列表页面,属性排序,您可以在后台分类排序管理部分,进行配置
产品属性过滤分类产品列表页面,侧栏属性过滤,可以通过属性快速查看相应的产品 , 目前需要mongodb数据库存储才能使用,详细参看:
账户注册登陆用户注册用户,登陆用户
密码找回通过邮件找回密码
账户中心账户中心管理,包含信息管理,订单管理,用户收藏管理,用户评论管理等
购物车用户购物车 ,详细参看:Fecmall 购物车
收货地址管理用户的搜索地址编辑
第三方erp系统对接您可以通过fecmall提供的api,和第三方erp系统进行产品和数据的对接 ,详细参看:Fecmall api入口
前后端分离api型支持前后端分离型应用,譬如vue,微信小程序,app等, 其中,后端api已经实现,前端部分:vue,微信小程序进行了 实现,app需要 自己实现 ,详细参看:Fecmall Appserver
计算最终价格脚本用户分类产品按照价格过滤和排序 ,详细参看:Fecmall计算最终价格
产品库存同步脚本详情 ,详细参看:fecmall product: 产品库存表库存数据同步到产品flat表的脚本
mysql和mongodb数据同步脚本您可以将产品数据,由mysql和mongodb之间相互同步 同步之前一定要记得备份 ,详细参看: fecmall product: mysql产品分类数据同步到mongodb的脚本fecmall product: Mongodb产品分类数据同步到Mysql的脚本
Sitemap生成脚本生成sitemap的脚本,详细参看:Fecmall Sitemap脚本
UrlRewrite重写url脚本批量生成url rewrite的脚本,详细参看:Fecmall url rewrite:生成脚本
订单取消返还库存脚本订单取消后,返还产品库存的脚本 ,详细参看:fecmall order:pending订单取消脚本
计算产品销量脚本批量处理订单,计算支付订单产品销量的脚本 ,详细参看:Fecmall 计算产品销量脚本
搜索数据同步脚本Fecmall产品数据与搜索引擎工具数据同步的脚本 ,详细参看:fecmall search:产品同步到搜索的脚本
数据库fecmall是多数据库电商系统,关于数据库表结构的介绍 ,详细参看:Fecmall 数据库
多语言编辑您可以在后台进行多语言编辑,以及设置各个store的默认语言 ,详细参看:Fecmall多语言
多货币编辑您可以在后台进行多货币设置,以及为每个store设置默认货币 ,详细参看:Fecmall多货币
添加storeFecmall store的管理 ,详细参看:Fecmall Store
在线安装应用Fecmall后台直接在线安装应用 ,详细参看:Fecmall在线安装应用扩展



七:Fecmall项目历程

http://www.fecmall.com/site/timeline







Your Site Analytics