abiao лет назад: 5
Родитель
Сommit
52b7451897

+ 62 - 1
go/gopath/src/fohow.com/apps/controllers/railsadmin_controller/update_shop_application.go

@@ -1,7 +1,9 @@
 package railsadmin_controller
 
 import (
+	"fmt"
 	"fohow.com/apps"
+	"fohow.com/apps/models/balance_model"
 	"fohow.com/apps/models/user_model"
 	"github.com/astaxie/beego"
 	"strconv"
@@ -34,9 +36,68 @@ func (self *RailsadminController) UpdateShopApplication() {
 	wxUser.ShowInviteMode = int64(1)
 	wxUser.Rank = int64(2)
 	wxUser.Save()
-
+	//上线分佣金
+	source := balance_model.SHOP_APPYCATION
+	go ApplySuccessInviterBenefit(wxUser, shopApplication.Id, source)
 	//更改下级会员群主ID
 	inviteList := user_model.GetWxUsersByInviteIdAll(wxUser.Id, false)
 	go user_model.UpdateClass(inviteList, wxUser.Id, wxUser.IntroUserId)
 	self.ServeJSON()
 }
+
+func ApplySuccessInviterBenefit(wxUser *user_model.WxUser, shopId int64, source string) {
+
+	//本人充值4200代金券
+	rId := fmt.Sprintf("shop-apply-%d", shopId)
+	c := balance_model.BALANCE_UPGRADE
+	item := balance_model.GetBalanceBySourceAndRId(source, rId)
+	if item != nil {
+		return
+	}
+	b := new(balance_model.Balance).Create(wxUser.Id, wxUser.UserId, c, source, rId, fmt.Sprintf("¥%0.2f", float64(c)/100))
+	benefitWxUser := GetInviter(wxUser)
+	if b == nil || benefitWxUser == nil || benefitWxUser.Id == int64(1) {
+		return
+	}
+	//充值成功发放佣金
+	beego.BeeLogger.Warn("shop-apply_benefitWxUser: %s", benefitWxUser)
+	beego.BeeLogger.Warn("shop-apply_newSendInviterBenefit:%v,%v,%s", wxUser, benefitWxUser, shopId)
+	shopApply := user_model.GetShopApplicationById(shopId)
+	if shopApply == nil {
+		return
+	}
+	//发放佣金  13800-4500 16800-5000
+	count := int64(0)
+	if shopApply.Total == user_model.TOTAL_RANK1 {
+		count = user_model.PROUD_RANK1
+	} else {
+		count = user_model.PROUD_RANK2
+	}
+
+	remark := fmt.Sprintf("%s%s", wxUser.Nickname, "店长申请成功")
+
+	inviteOrder := new(user_model.InviteOrder).Create(benefitWxUser.Id, wxUser.Id, wxUser.Id, count, shopApply.Total, user_model.SOURCE_SHOP_BENEFIT, rId)
+	s := balance_model.CASH_SOURCE_PRODUCT_BENEFIT
+	cb := balance_model.GetCashBalanceByWxUIdAndRIdAndSource(benefitWxUser.Id, rId, s)
+	if cb == nil {
+		cb = new(balance_model.CashBalance).Create(inviteOrder.BenefitWxUId, count, s, rId, remark)
+		if cb != nil {
+			//标志进账
+			inviteOrder.IsEnterBalance = true
+			inviteOrder.EnterTime = cb.CreatedAt
+			inviteOrder.Save()
+		}
+	}
+}
+
+func GetInviter(wxUser *user_model.WxUser) *user_model.WxUser {
+	inviter := user_model.GetWxUserById(wxUser.InviteId, false)
+	if inviter == nil {
+		return nil
+	}
+	if inviter.ShowInviteMode == int64(1) {
+		return inviter
+	} else {
+		return GetInviter(inviter)
+	}
+}

+ 2 - 2
go/gopath/src/fohow.com/apps/controllers/user_controller/user_controller.go

@@ -410,9 +410,9 @@ func (self *UserController) ShopApplication() {
 	if wxUser.Rank > user_model.WX_USER_RANK_ONE {
 		self.ReturnError(403, apps.AlreadyShop, "", nil)
 	}
-	total := int64(16800)
+	total := user_model.TOTAL_RANK2
 	if wxUser.Rank == user_model.WX_USER_RANK_ONE {
-		total = int64(13800)
+		total = user_model.TOTAL_RANK1
 	}
 	k := fmt.Sprintf("%s%s", sms_model.SHOP_APPLICATION, mobile)
 	if cacheCode, ok := cache.Cache.Get(k).(string); ok {

+ 4 - 0
go/gopath/src/fohow.com/apps/models/balance_model/balance.go

@@ -39,6 +39,8 @@ const (
 	BALANCE_SOURCE_ALL_REFUNDED_NAME      = "全额退款"
 	BALANCE_SOURCE_PART_REFUNDED          = "part_refunded"
 	BALANCE_SOURCE_PART_REFUNDED_NAME     = "部分退款"
+	SHOP_APPYCATION                       = "shop_applycation"
+	SHOP_APPYCATION_NAME                  = "店铺申请"
 
 	BALANCE_FREND_BUY      = "frend_buy"
 	BALANCE_FREND_BUY_NAME = "群员购物"
@@ -126,6 +128,8 @@ func (self *Balance) GetSourceName() string {
 		sourceName = BALANCE_SOURCE_DEDUCT_NAME
 	case BALANCE_FREND_BUY:
 		sourceName = BALANCE_FREND_BUY_NAME
+	case SHOP_APPYCATION:
+		sourceName = SHOP_APPYCATION_NAME
 	}
 	return sourceName
 }

+ 6 - 3
go/gopath/src/fohow.com/apps/models/balance_model/cash_balance.go

@@ -32,9 +32,10 @@ const (
 	CASH_SOURCE_EXTRACT_REJECT_NAME  = "拒绝提现"            //拒绝提现
 	CASH_SOURCE_PRODUCT_BENEFIT      = "product_benefit" // 一级商品佣金
 	CASH_SOURCE_PRODUCT_BENEFIT_NAME = "商品佣金"
-
-	BALANCE_SOURCE_BENEFIT      = "balance_benefit" // 代金券充值佣金
-	BALANCE_SOURCE_BENEFIT_NAME = "代金券充值佣金"
+	CASH_SOURCE_SHOP_BENEFIT         = "shop_benefit" // 一级商品佣金
+	CASH_SOURCE_SHOP_BENEFIT_NAME    = "店长申请佣金"
+	BALANCE_SOURCE_BENEFIT           = "balance_benefit" // 代金券充值佣金
+	BALANCE_SOURCE_BENEFIT_NAME      = "代金券充值佣金"
 
 	FX_CASH_SOURCE_PRODUCT_BENEFIT      = "fx_product_benefit" // 二级商品佣金
 	FX_CASH_SOURCE_PRODUCT_BENEFIT_NAME = "分享商品佣金"
@@ -142,6 +143,8 @@ func (self *CashBalance) Create(wxUId, c int64, s, rId, remark string) (item *Ca
 func (self *CashBalance) GetSourceName() string {
 	sourceName := ""
 	switch self.Source {
+	case CASH_SOURCE_SHOP_BENEFIT:
+		sourceName = CASH_SOURCE_SHOP_BENEFIT_NAME
 	case CASH_SOURCE_PRODUCT_BENEFIT:
 		sourceName = CASH_SOURCE_PRODUCT_BENEFIT_NAME
 	case CASH_SOURCE_PROJECT_BENEFIT:

+ 2 - 1
go/gopath/src/fohow.com/apps/models/user_model/invite.go

@@ -16,8 +16,9 @@ const (
 	SOURCE_BINDING            = "binding"            //用户绑定
 	SOURCE_PRODUCT_BENEFIT    = "product_benefit"    //商品佣金
 	FX_SOURCE_PRODUCT_BENEFIT = "fx_product_benefit" //二级商品佣金
-	SOURCE_PROJECT_BENEFIT    = "project_benefit"    //项目佣金
+	SOURCE_PROJECT_BENEFIT    = "project_benefit"    //申请店长佣金
 	BALANCE_BENEFIT           = "balance_benefit"    //代金券充值佣金
+	SOURCE_SHOP_BENEFIT       = "shop_benefit"       //申请店长佣金
 
 	SECOND_RELATE_ID_PREFIT = "SECOND_"
 )

+ 4 - 0
go/gopath/src/fohow.com/apps/models/user_model/shop_application.go

@@ -9,6 +9,10 @@ import (
 
 const (
 	shop_applications_tablename = "shop_applications"
+	TOTAL_RANK1                 = int64(13800)
+	TOTAL_RANK2                 = int64(16800)
+	PROUD_RANK1                 = int64(450000)
+	PROUD_RANK2                 = int64(500000)
 )
 
 type ShopApplication struct {