当前仓库属于暂停状态,部分功能使用受限,详情请查阅 仓库状态说明
1 Star 0 Fork 658

低吟浅唱的歌谣 / EDEN-MACE
暂停

forked from Hickey / EDEN-MACE 
加入 Gitee
与超过 1200万 开发者一起发现、参与优秀开源项目,私有仓库也完全免费 :)
免费加入
克隆/下载
贡献代码
同步代码
取消
提示: 由于 Git 不支持空文件夾,创建文件夹后会生成空的 .keep 文件
Loading...
README
Apache-2.0

分销管理系统(EDEN-MACE)

项目演示

后台演示地址

http://47.104.183.147 用户名/密码:admin/111111

前端模拟演示

请手机扫二维码

输入图片说明

前言

随着微信等社交工具的出现,很多软件出现了通过人脉赚钱的方式,每个人通过各种方式将数据传递给另外的人,通过这种分裂式的发展,使得产品能够得到有效的推广,并且可以进行有效的精准推广,于是市场上产生了很多的微信三级分销等软件,也有很多成功的产品,比如拼多多等,根据我个人了解 很多初创企业 都使用这种模式,在产品刚刚上线的时候就使用这种模式,为企业赚得了第一桶金。

但是我们用第三方软件,有很多问题,比如 很多东西都不能够定制化,很多业务不够满足自己产品的需求,于是只能"凑合着用",有些公司会定制开发,产生了很大的开发成本和时间,在任何一个产品上线的时候,时间就是产品的生命线,尤其是遇到不熟悉这些业务的开发的时候 ,可能需求和产品会产生误差,会导致产品拖延很长时间。

我通过对分销系统多年的研究发现,分销的分润和等级的计算完全在后台进行配置化管理,将抽象的分销系统具体化,前端可以单独开发,开发成本和时间完全可以进行控制,于是就开发这样的一套系统。

视频介绍

https://pan.baidu.com/s/1MmKzOW69q8EE72ULOr2BXg

我们的价值

对于程序员 ,可以学到技术和业务逻辑紧密结合,用业务作为跳板去学习技术

对于企业,可以实现企业的推广,快速将人脉变现

产品亮点

1、权限和分销完全分离,符合开发的 低耦合的需求。

2、产品完全可配置化,仅需要少量改动

3、采用微服务思想,和原业务低耦合 ,不需要的时候可以随时下线。

4、可视化图形化界面统计。

5、完善化的账务体系,可追溯每一笔分润的来源。

适用企业

1、已有项目,需要增加分销功能。

2、项目需要暂时使用分销功能。

3、对接多个系统,需要对多个账户进行控制的系统

场景案例

  1. 电商商品需要增加购买商品分佣功能
  2. 广告网站需要增加邀请奖励功能
  3. 金融机构需要增加推广奖励 的功能

目标

企业级软件,为企业低成本、高效率、快速的盈利。

开源地址

https://gitee.com/codingdb/distribution_management

技术特色

1、引用guns 权限管理系统

2、采用spring boot 简化了配置、并且将开发环境的配置和生产环境配置分离开。

3、jwt 安全验证。

4、将权限数据库和业务数据库进行分离

5、采用quartz进行任务调度,直接修改数据库即可

6、采用枚举类和数据字典配合的方式进行数据维护,不必要的地方直接调用枚举类,减少数据库的调用。

7、策略模式和简单工厂模式实现佣金的扩展,可以很容易的扩展分销系统。

8、 采用swagger方式对外开放接口,并且使用restful风格。

9、采用阿里云编码规约。

10、分销商自动分配权限。

11、自动权限配置功能。

代码展示

枚举类实现自动计算分润

ZERO_STATUS("0","按照百分比计算") {
       @Override
       public BigDecimal calResult(BigDecimal amount, BigDecimal arg) {
           return amount.multiply(arg);
       }
   }

策略模式实现分佣账户的扩展

 public AmountFactoryContext(String type) {
        switch (type){
            case "0":
                amountService = new TradeAmountServiceImpl();
                break;
            case  "1":
                amountService = new LevelAmountServiceImpl();
                break;
            default:
                break;
        }
    }

特别鸣谢

咕泡学院青山老师

项目总览

项目使用场景图示

输入图片说明

分销功能架构图

输入图片说明

分销内部设计图 输入图片说明

项目说明

distribution_management 用来运行分销管理系统

plug用来调试接口,调试完成后,可以直接使用

安装方法

下载此项目后,generator.ExecuSql 修改数据库和密码,可以自动导入sql。

运行/distribution_management 目录下的项目,访问http://localhost/。

账号 : admin /111111

​ dist/123

项目特色

经典分销模式

如下图中的分销模式,就可以很好的与本系统对接 输入图片说明

强大的账户体系

输入图片说明

系统可拔插

​ 系统以微服务的形式运行,即独立于其他的软件,提供接口进行交互,不会对其他的系统产生新的冗余数据。

​ 假设李老板 前期需要推广自己的软件,自己的软件又没有设计这个功能,加功能又需要很多钱,这个时候,使用这个软件就可以减少资金的投入(写很少的代码就可以实现自己的需求)。

系统稳定了,李老板 不需要这个分销软件了, 那么可以直接将原来的几行代码关了,或者在自己的系统中增加开关,直接就可以关掉。并且不影响原来的系统的运行。

分销配置化

假设李老板 原来只设置一级又分润,后面需要给二级或者三级分润,这个时候只需要在后台进行配置就可以。李老板 如果设置原来的配置每笔交易按照百分比收取,后来改为每笔交易按照固定金额收取,就可以直接在后台进行配置。 如下图中的分润配置,可以根据各种情况进行配置分润。 输入图片说明

会员关系可视化

会员的发展理论上可以无限制的发展下去,并且可以通过树状图表现出来。

分销关系权限化

每个分销商只能看到自己名下的会员。并且可以看到自己的交易明细,这个就减少原有的系统的开发。

积分控制可视化

输入图片说明

平台简介

对接参考,用来对系统进行对接,并且已经写好了的模拟接口,可以模仿使用 输入图片说明

会员信息对会员账号和会员资金进行管理 输入图片说明 输入图片说明 输入图片说明

分销配置用来配置分润等信息 输入图片说明 输入图片说明 输入图片说明

交易中心 集中对收入和支出进行管理 输入图片说明 输入图片说明 统计中心 对数据进行统计 交易动态,可以查看最新的交易成功的动态 输入图片说明 账户收益统计图 输入图片说明

模拟前端界面展示

输入图片说明

输入图片说明

利用docker 本地部署

inside docker folder, start docker by

  $ ./start.sh

Then dump the data inside docker folder, access mysql container by

  $ docker exec -it distribution-mysql bash -l 
  $ mysql -uroot -p
  $ source /docker-entrypoint-initdb.d/distribution.sql;
  $ source /docker-entrypoint-initdb.d/authority.sql;

注意: 这里mysql 的port 是 6603, 需要在application-dev.yml 中替换成相应的port.

Apache License Version 2.0, January 2004 http://www.apache.org/licenses/ TERMS AND CONDITIONS FOR USE, REPRODUCTION, AND DISTRIBUTION 1. Definitions. "License" shall mean the terms and conditions for use, reproduction, and distribution as defined by Sections 1 through 9 of this document. "Licensor" shall mean the copyright owner or entity authorized by the copyright owner that is granting the License. "Legal Entity" shall mean the union of the acting entity and all other entities that control, are controlled by, or are under common control with that entity. For the purposes of this definition, "control" means (i) the power, direct or indirect, to cause the direction or management of such entity, whether by contract or otherwise, or (ii) ownership of fifty percent (50%) or more of the outstanding shares, or (iii) beneficial ownership of such entity. "You" (or "Your") shall mean an individual or Legal Entity exercising permissions granted by this License. "Source" form shall mean the preferred form for making modifications, including but not limited to software source code, documentation source, and configuration files. "Object" form shall mean any form resulting from mechanical transformation or translation of a Source form, including but not limited to compiled object code, generated documentation, and conversions to other media types. "Work" shall mean the work of authorship, whether in Source or Object form, made available under the License, as indicated by a copyright notice that is included in or attached to the work (an example is provided in the Appendix below). "Derivative Works" shall mean any work, whether in Source or Object form, that is based on (or derived from) the Work and for which the editorial revisions, annotations, elaborations, or other modifications represent, as a whole, an original work of authorship. For the purposes of this License, Derivative Works shall not include works that remain separable from, or merely link (or bind by name) to the interfaces of, the Work and Derivative Works thereof. "Contribution" shall mean any work of authorship, including the original version of the Work and any modifications or additions to that Work or Derivative Works thereof, that is intentionally submitted to Licensor for inclusion in the Work by the copyright owner or by an individual or Legal Entity authorized to submit on behalf of the copyright owner. For the purposes of this definition, "submitted" means any form of electronic, verbal, or written communication sent to the Licensor or its representatives, including but not limited to communication on electronic mailing lists, source code control systems, and issue tracking systems that are managed by, or on behalf of, the Licensor for the purpose of discussing and improving the Work, but excluding communication that is conspicuously marked or otherwise designated in writing by the copyright owner as "Not a Contribution." "Contributor" shall mean Licensor and any individual or Legal Entity on behalf of whom a Contribution has been received by Licensor and subsequently incorporated within the Work. 2. Grant of Copyright License. Subject to the terms and conditions of this License, each Contributor hereby grants to You a perpetual, worldwide, non-exclusive, no-charge, royalty-free, irrevocable copyright license to reproduce, prepare Derivative Works of, publicly display, publicly perform, sublicense, and distribute the Work and such Derivative Works in Source or Object form. 3. Grant of Patent License. Subject to the terms and conditions of this License, each Contributor hereby grants to You a perpetual, worldwide, non-exclusive, no-charge, royalty-free, irrevocable (except as stated in this section) patent license to make, have made, use, offer to sell, sell, import, and otherwise transfer the Work, where such license applies only to those patent claims licensable by such Contributor that are necessarily infringed by their Contribution(s) alone or by combination of their Contribution(s) with the Work to which such Contribution(s) was submitted. If You institute patent litigation against any entity (including a cross-claim or counterclaim in a lawsuit) alleging that the Work or a Contribution incorporated within the Work constitutes direct or contributory patent infringement, then any patent licenses granted to You under this License for that Work shall terminate as of the date such litigation is filed. 4. Redistribution. You may reproduce and distribute copies of the Work or Derivative Works thereof in any medium, with or without modifications, and in Source or Object form, provided that You meet the following conditions: You must give any other recipients of the Work or Derivative Works a copy of this License; and You must cause any modified files to carry prominent notices stating that You changed the files; and You must retain, in the Source form of any Derivative Works that You distribute, all copyright, patent, trademark, and attribution notices from the Source form of the Work, excluding those notices that do not pertain to any part of the Derivative Works; and If the Work includes a "NOTICE" text file as part of its distribution, then any Derivative Works that You distribute must include a readable copy of the attribution notices contained within such NOTICE file, excluding those notices that do not pertain to any part of the Derivative Works, in at least one of the following places: within a NOTICE text file distributed as part of the Derivative Works; within the Source form or documentation, if provided along with the Derivative Works; or, within a display generated by the Derivative Works, if and wherever such third-party notices normally appear. The contents of the NOTICE file are for informational purposes only and do not modify the License. You may add Your own attribution notices within Derivative Works that You distribute, alongside or as an addendum to the NOTICE text from the Work, provided that such additional attribution notices cannot be construed as modifying the License. You may add Your own copyright statement to Your modifications and may provide additional or different license terms and conditions for use, reproduction, or distribution of Your modifications, or for any such Derivative Works as a whole, provided Your use, reproduction, and distribution of the Work otherwise complies with the conditions stated in this License. 5. Submission of Contributions. Unless You explicitly state otherwise, any Contribution intentionally submitted for inclusion in the Work by You to the Licensor shall be under the terms and conditions of this License, without any additional terms or conditions. Notwithstanding the above, nothing herein shall supersede or modify the terms of any separate license agreement you may have executed with Licensor regarding such Contributions. 6. Trademarks. This License does not grant permission to use the trade names, trademarks, service marks, or product names of the Licensor, except as required for reasonable and customary use in describing the origin of the Work and reproducing the content of the NOTICE file. 7. Disclaimer of Warranty. Unless required by applicable law or agreed to in writing, Licensor provides the Work (and each Contributor provides its Contributions) on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied, including, without limitation, any warranties or conditions of TITLE, NON-INFRINGEMENT, MERCHANTABILITY, or FITNESS FOR A PARTICULAR PURPOSE. You are solely responsible for determining the appropriateness of using or redistributing the Work and assume any risks associated with Your exercise of permissions under this License. 8. Limitation of Liability. In no event and under no legal theory, whether in tort (including negligence), contract, or otherwise, unless required by applicable law (such as deliberate and grossly negligent acts) or agreed to in writing, shall any Contributor be liable to You for damages, including any direct, indirect, special, incidental, or consequential damages of any character arising as a result of this License or out of the use or inability to use the Work (including but not limited to damages for loss of goodwill, work stoppage, computer failure or malfunction, or any and all other commercial damages or losses), even if such Contributor has been advised of the possibility of such damages. 9. Accepting Warranty or Additional Liability. While redistributing the Work or Derivative Works thereof, You may choose to offer, and charge a fee for, acceptance of support, warranty, indemnity, or other liability obligations and/or rights consistent with this License. However, in accepting such obligations, You may act only on Your own behalf and on Your sole responsibility, not on behalf of any other Contributor, and only if You agree to indemnify, defend, and hold each Contributor harmless for any liability incurred by, or claims asserted against, such Contributor by reason of your accepting any such warranty or additional liability. END OF TERMS AND CONDITIONS APPENDIX: How to apply the Apache License to your work To apply the Apache License to your work, attach the following boilerplate notice, with the fields enclosed by brackets "{}" replaced with your own identifying information. (Don't include the brackets!) The text should be enclosed in the appropriate comment syntax for the file format. We also recommend that a file or class name and description of purpose be included on the same "printed page" as the copyright notice for easier identification within third-party archives. Copyright 2018 小江 Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. You may obtain a copy of the License at http://www.apache.org/licenses/LICENSE-2.0 Unless required by applicable law or agreed to in writing, software distributed under the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions and limitations under the License.

简介

微服务下的分销管理利器,更加灵活的管理佣金,涵盖并且总结了目前流行的分销模式,让分销更加简单,有问题可以加qq 3174667330 展开 收起
Java
Apache-2.0
取消

发行版

暂无发行版

贡献者

全部

近期动态

加载更多
不能加载更多了
Java
1
https://gitee.com/www.rrl.com/distribution_management.git
git@gitee.com:www.rrl.com/distribution_management.git
www.rrl.com
distribution_management
EDEN-MACE
master

搜索帮助

14c37bed 8189591 565d56ea 8189591