|
|
|
@ -32,29 +32,36 @@ func OrderProfit(od order.Information, tx *gorm.DB) error {
|
|
|
|
|
// 自购平台100%
|
|
|
|
|
return nil
|
|
|
|
|
} else if s1.Level != 0 {
|
|
|
|
|
// 40%导购补贴
|
|
|
|
|
if err := tx.Create(order.CreateProfit(od.SharerID, order.Guide, base, od.ID)).Error; err != nil {
|
|
|
|
|
return err
|
|
|
|
|
}
|
|
|
|
|
// 10%品牌补贴
|
|
|
|
|
if err := tx.Create(order.CreateProfit(od.SharerID, order.Brand, base, od.ID)).Error; err != nil {
|
|
|
|
|
return err
|
|
|
|
|
}
|
|
|
|
|
spID := od.SharerID
|
|
|
|
|
if s1.Level == 1 {
|
|
|
|
|
var sp1 user.Information
|
|
|
|
|
if err := tx.First(&sp1, "id = ?", s1.ParentID).Error; err != nil {
|
|
|
|
|
if s1.Level == 10 {
|
|
|
|
|
// 子公司导购获取全部导购收益
|
|
|
|
|
if err := tx.Create(order.CreateProfit(u1.RootID, order.All, base, od.ID)).Error; err != nil {
|
|
|
|
|
return err
|
|
|
|
|
}
|
|
|
|
|
} else {
|
|
|
|
|
// 40%导购补贴
|
|
|
|
|
if err := tx.Create(order.CreateProfit(od.SharerID, order.Guide, base, od.ID)).Error; err != nil {
|
|
|
|
|
return err
|
|
|
|
|
}
|
|
|
|
|
// 10%品牌补贴
|
|
|
|
|
if err := tx.Create(order.CreateProfit(od.SharerID, order.Brand, base, od.ID)).Error; err != nil {
|
|
|
|
|
return err
|
|
|
|
|
}
|
|
|
|
|
spID := od.SharerID
|
|
|
|
|
if s1.Level == 1 {
|
|
|
|
|
var sp1 user.Information
|
|
|
|
|
if err := tx.First(&sp1, "id = ?", s1.ParentID).Error; err != nil {
|
|
|
|
|
return err
|
|
|
|
|
}
|
|
|
|
|
spID = sp1.ID
|
|
|
|
|
}
|
|
|
|
|
// 20%开店补贴
|
|
|
|
|
if err := tx.Create(order.CreateProfit(spID, order.Shop, base, od.ID)).Error; err != nil {
|
|
|
|
|
return err
|
|
|
|
|
}
|
|
|
|
|
// 30%店铺补贴
|
|
|
|
|
if err := tx.Create(order.CreateProfit(u1.RootID, order.Company, base, od.ID)).Error; err != nil {
|
|
|
|
|
return err
|
|
|
|
|
}
|
|
|
|
|
spID = sp1.ID
|
|
|
|
|
}
|
|
|
|
|
// 20%开店补贴
|
|
|
|
|
if err := tx.Create(order.CreateProfit(spID, order.Shop, base, od.ID)).Error; err != nil {
|
|
|
|
|
return err
|
|
|
|
|
}
|
|
|
|
|
// 30%店铺补贴
|
|
|
|
|
if err := tx.Create(order.CreateProfit(u1.RootID, order.Company, base, od.ID)).Error; err != nil {
|
|
|
|
|
return err
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
case 1:
|
|
|
|
|