[Java二级分销佣金实现demo]

目录

✨前言:

✨Java简单分销demo

🐱‍🚀创建一个Product类,包含商品的名称、价格和佣金比例。

🐱‍🚀创建一个User类,包含用户的姓名和佣金总额。

🐱‍🚀创建一个SalesSystem类,包含商品列表和用户列表,以及实现购买和分销的方法。

🐱‍🚀在主函数中创建商品和用户,并进行购买和分销操作。

🐱‍🚀✨运行结果:

🐱‍🚀✨代码描述:

✨简单表结构设计:

🐱‍🏍商品表(product)

🐱‍🏍用户表(user)

🐱‍🏍分销记录表(distribution)


✨前言:

    🐱‍🚀之前做过分销场景,主要是A用户分享商品链接,然后B用户使用这个链接去购买以后,A用户可以获取佣金,当时记得是 通gu过A用户id ,还有分享商品id 房子url里面,然后B用户购买以后  会记录他们购买的关联信息,然后去做一些业务逻辑处理开心✨

✨Java简单分销demo

  1. 🐱‍🚀创建一个Product类,包含商品的名称、价格和佣金比例。

 public class Product {
    private String name;
    private double price;
    private double commissionRate;

    public Product(String name, double price, double commissionRate) {
        this.name = name;
        this.price = price;
        this.commissionRate = commissionRate;
    }

    public String getName() {
        return name;
    }

    public double getPrice() {
        return price;
    }

    public double getCommissionRate() {
        return commissionRate;
    }
}
  1. 🐱‍🚀创建一个User类,包含用户的姓名和佣金总额。

public class User {
    private String name;
    private double commissionTotal;

    public User(String name) {
        this.name = name;
        this.commissionTotal = 0;
    }

    public String getName() {
        return name;
    }

    public double getCommissionTotal() {
        return commissionTotal;
    }

    public void addCommission(double commission) {
        this.commissionTotal += commission;
    }
}
  1. 🐱‍🚀创建一个SalesSystem类,包含商品列表和用户列表,以及实现购买和分销的方法。

import java.util.ArrayList;

public class SalesSystem {
    private ArrayList<Product> productList;
    private ArrayList<User> userList;

    public SalesSystem() {
        this.productList = new ArrayList<>();
        this.userList = new ArrayList<>();
    }

    public void addProduct(Product product) {
        this.productList.add(product);
    }

    public void addUser(User user) {
        this.userList.add(user);
    }

    public void purchase(User buyer, Product product) {
        double commission = product.getPrice() * product.getCommissionRate();
        for (User seller : this.userList) {
            if (seller != buyer && seller.getName().equals(product.getName() + "的分享者")) {
                seller.addCommission(commission);
            }
        }
    }
}
  1. 🐱‍🚀在主函数中创建商品和用户,并进行购买和分销操作。

public static void main(String[] args) {
    SalesSystem salesSystem = new SalesSystem();

    // 创建商品
    Product product1 = new Product("商品1", 100, 0.1);
    Product product2 = new Product("商品2", 200, 0.2);
    salesSystem.addProduct(product1);
    salesSystem.addProduct(product2);

    // 创建用户
    User userA = new User("用户A");
    User userB = new User("用户B");
    User userC = new User("商品1的分享者");
    User userD = new User("商品2的分享者");
    salesSystem.addUser(userA);
    salesSystem.addUser(userB);
    salesSystem.addUser(userC);
    salesSystem.addUser(userD);

    // 用户B购买商品1
    salesSystem.purchase(userB, product1);

    // 商品1的分享者获得佣金
    System.out.println(userC.getName() + "的佣金总额为:" + userC.getCommissionTotal());

    // 用户B购买商品2
    salesSystem.purchase(userB, product2);

    // 商品2的分享者获得佣金
    System.out.println(userD.getName() + "的佣金总额为:" + userD.getCommissionTotal());
}

🐱‍🚀运行结果:

商品1的分享者的佣金总额为:10.0

商品2的分享者的佣金总额为:40.0

 

 

🐱‍🚀代码描述:

  • 用户B购买商品1和商品2时,只有对应的分享者获得了相应的佣金。

这里主要逻辑就是 只要卖seller 满足他是分享者条件的时候 才会让他获取佣金,   在平常业务逻辑中 ,会有很多复杂业务, 分销者等级不同 分销金不同,  在设计表结构的时候,  简单设置的话就是直接在商品上面设计分销金, 商品在发布的时候就提前给他弄好佣金,  另一种就是分销规则, 根据分销者的等级 对应不同的分销佣金,这个就需要表之间的关联了, 或者使用标识 在业务层实现

简单表结构设计:

根据上面的代码,我们可以设计以下的MySQL表结构:

  1. 🐱‍🏍商品表(product)

字段名类型描述
idint商品ID
namevarchar(50)商品名称
pricedouble商品价格
commission_ratedouble分销佣金比例
share_user_idint分享者用户ID
  1. 🐱‍🏍用户表(user)

字段名类型描述
idint用户ID
namevarchar(50)用户名称
balancedouble用户余额
  1. 🐱‍🏍分销记录表(distribution)

字段名类型描述
idint分销记录ID
product_idint商品ID
buyer_idint购买者用户ID
seller_idint分享者用户ID
commissiondouble分销佣金

🐱‍🚀

在这个表结构中,商品表(product)记录了商品的基本信息,包括商品ID、名称、价格、分销佣金比例和分享者用户ID。用户表(user)记录了用户的基本信息,包括用户ID、名称和余额。分销记录表(distribution)记录了每一次分销的详细信息,包括分销记录ID、商品ID、购买者用户ID、分享者用户ID和分销佣金。

  • 0
    点赞
  • 5
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

是汤圆丫

怎么 给1分?

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值