1.优化会员邀请记录,自己开通会员,自己续费也需要进行记录;
This commit is contained in:
parent
3c9cf29eca
commit
fdc30f76d8
|
@ -560,7 +560,7 @@ func PushWXPayNotice(c *gin.Context) {
|
|||
effectiveStoreInfo, err := model.GetUserEffectiveStore(invite.FromUid)
|
||||
if err != nil {
|
||||
logger.Error("GetUserEffectiveStore err:", err)
|
||||
effectiveStoreInfo.StoreID = invite.StoreId
|
||||
effectiveStoreInfo.StoreID = 0
|
||||
}
|
||||
|
||||
if invite.Action == 1 { // 1-未激活 用户首次开通
|
||||
|
@ -590,8 +590,8 @@ func PushWXPayNotice(c *gin.Context) {
|
|||
logger.Info("invite.Action == 2")
|
||||
inviteRecordNew := &model.UserInviteRecord{
|
||||
ToUid: invite.ToUid,
|
||||
//FromUid: invite.FromUid,
|
||||
//StoreId: effectiveStoreInfo.StoreID,
|
||||
FromUid: invite.FromUid,
|
||||
StoreId: effectiveStoreInfo.StoreID,
|
||||
Action: 2,
|
||||
SpendType: spendType,
|
||||
MemberLevel: record.MemberLevel,
|
||||
|
@ -604,8 +604,8 @@ func PushWXPayNotice(c *gin.Context) {
|
|||
if isShopAssistantCode { // 如果使用了优惠券,则是店员邀请续费;否则是用户自己发起续费
|
||||
inviteRecordNew.Scan = 1
|
||||
inviteRecordNew.RenewHide = 0 // 店员干预续费
|
||||
inviteRecordNew.FromUid = invite.FromUid
|
||||
inviteRecordNew.StoreId = effectiveStoreInfo.StoreID
|
||||
//inviteRecordNew.FromUid = invite.FromUid
|
||||
//inviteRecordNew.StoreId = effectiveStoreInfo.StoreID
|
||||
}
|
||||
err = model.DB.Create(inviteRecordNew).Error
|
||||
if err != nil {
|
||||
|
@ -613,11 +613,10 @@ func PushWXPayNotice(c *gin.Context) {
|
|||
}
|
||||
|
||||
userInviteNew := &model.UserInvite{
|
||||
//FromUid: invite.FromUid,
|
||||
//UserType: invite.UserType,
|
||||
//StoreId: effectiveStoreInfo.StoreID,
|
||||
//MemberOpenTime: invite.MemberOpenTime,
|
||||
//StoreType: invite.StoreType,
|
||||
FromUid: invite.FromUid,
|
||||
UserType: invite.UserType,
|
||||
StoreId: effectiveStoreInfo.StoreID,
|
||||
StoreType: invite.StoreType,
|
||||
MemberOpenTime: time.Now(),
|
||||
MemberType: 2,
|
||||
MemberStatus: 2,
|
||||
|
@ -635,10 +634,10 @@ func PushWXPayNotice(c *gin.Context) {
|
|||
userInviteNew.Scan = 1
|
||||
userInviteNew.RenewHide = 0
|
||||
userInviteNew.InviteForm = 1
|
||||
userInviteNew.FromUid = invite.FromUid
|
||||
userInviteNew.StoreId = effectiveStoreInfo.StoreID
|
||||
userInviteNew.UserType = invite.UserType
|
||||
userInviteNew.StoreType = invite.StoreType
|
||||
//userInviteNew.FromUid = invite.FromUid
|
||||
//userInviteNew.StoreId = effectiveStoreInfo.StoreID
|
||||
//userInviteNew.UserType = invite.UserType
|
||||
//userInviteNew.StoreType = invite.StoreType
|
||||
}
|
||||
err = model.DB.Create(userInviteNew).Error
|
||||
if err != nil {
|
||||
|
@ -675,8 +674,8 @@ func PushWXPayNotice(c *gin.Context) {
|
|||
model.AddCooperativeMemberPromotion(inviteUser.CooperativeBusinessId,
|
||||
uint32(effectiveStoreInfo.StoreID), inviteUser.Uid, int(record.MemberLevel),
|
||||
int(record.MemberGenre))
|
||||
userQs = userQs.SetStoreId(effectiveStoreInfo.StoreID) // 更新用户门店:邀请人的有效门店
|
||||
}
|
||||
userQs = userQs.SetStoreId(effectiveStoreInfo.StoreID) // 更新用户门店:邀请人的有效门店
|
||||
}
|
||||
|
||||
_, err = userQs.SetOpenMemberChannel(openMemberChannel).UpdateNum()
|
||||
|
@ -685,6 +684,33 @@ func PushWXPayNotice(c *gin.Context) {
|
|||
}
|
||||
}
|
||||
}
|
||||
} else if err == model.RecordNotFound { // 没有邀请记录,完全是用户自己开通会员,自己续费;按产品要求也需要有记录
|
||||
inviteRecordNew := &model.UserInviteRecord{
|
||||
Action: 2,
|
||||
SpendType: spendType,
|
||||
MemberLevel: record.MemberLevel,
|
||||
First: 0,
|
||||
Scan: 0, // 自动生成
|
||||
ActionTime: newTime,
|
||||
MemberGenre: record.MemberGenre,
|
||||
RenewHide: 1,
|
||||
}
|
||||
err = model.DB.Create(inviteRecordNew).Error
|
||||
if err != nil {
|
||||
logger.Error("create invite record err:", err)
|
||||
}
|
||||
|
||||
// 记录对应的数量
|
||||
switch spendType {
|
||||
case 2: // 开通
|
||||
fmt.Println("用户开通------")
|
||||
model.AddCooperativeMemberPromotion(user.CooperativeBusinessId, 0, 0,
|
||||
int(record.MemberLevel), int(record.MemberGenre))
|
||||
case 3: // 续费
|
||||
fmt.Println("用户续费---")
|
||||
model.AddCooperativeMemberRenewal(user.CooperativeBusinessId, 0, 0,
|
||||
int(record.MemberLevel), int(record.MemberGenre), true)
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
|
@ -919,7 +945,7 @@ func PushWXPayNotice(c *gin.Context) {
|
|||
effectiveStoreInfo, err := model.GetUserEffectiveStore(invite.FromUid)
|
||||
if err != nil {
|
||||
logger.Error("GetUserEffectiveStore err:", err)
|
||||
effectiveStoreInfo.StoreID = invite.StoreId
|
||||
effectiveStoreInfo.StoreID = 0
|
||||
}
|
||||
|
||||
if invite.Action != 2 {
|
||||
|
@ -994,6 +1020,21 @@ func PushWXPayNotice(c *gin.Context) {
|
|||
logger.Error("create invite record err:", err)
|
||||
}
|
||||
}
|
||||
} else if err == model.RecordNotFound { // 没有邀请记录,完全是用户自己开通会员,自己续费;按产品要求也需要有记录
|
||||
inviteRecordNew := &model.UserInviteRecord{
|
||||
Action: 2,
|
||||
SpendType: 4,
|
||||
MemberLevel: record.MemberLevel,
|
||||
First: 0,
|
||||
Scan: 0, // 自动生成
|
||||
ActionTime: newTime,
|
||||
MemberGenre: record.MemberGenre,
|
||||
RenewHide: 1,
|
||||
}
|
||||
err = model.DB.Create(inviteRecordNew).Error
|
||||
if err != nil {
|
||||
logger.Error("create invite record err:", err)
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
|
@ -1007,7 +1048,7 @@ func PushWXPayNotice(c *gin.Context) {
|
|||
effectiveStoreInfo, err := model.GetUserEffectiveStore(invite.FromUid)
|
||||
if err != nil {
|
||||
logger.Error("GetUserEffectiveStore err:", err)
|
||||
effectiveStoreInfo.StoreID = invite.StoreId
|
||||
effectiveStoreInfo.StoreID = 0
|
||||
}
|
||||
// 统计用户升级的数量,方便前端展示
|
||||
// 分3种情况:1-店员干预(使用了店员兑换码兑换的优惠券)、2-自动续费(开通会员时有店员邀请,原价or优惠券续费)
|
||||
|
@ -1015,6 +1056,14 @@ func PushWXPayNotice(c *gin.Context) {
|
|||
if isShopAssistantCode { // 1-店员干预(使用了店员兑换码兑换的优惠券)
|
||||
model.AddCooperativeMemberUpgrade(user.CooperativeBusinessId,
|
||||
uint32(effectiveStoreInfo.StoreID), invite.FromUid, user.MemberLevel, int(record.MemberLevel), false)
|
||||
|
||||
_, err = model.NewUserQuerySet(model.DB).UidEq(record.Uid).GetUpdater().
|
||||
SetStoreId(effectiveStoreInfo.StoreID).UpdateNum() // 更新用户门店:邀请人的有效门店
|
||||
if err != nil {
|
||||
logger.Info("uid:", user.Uid)
|
||||
logger.Info("store_id:", effectiveStoreInfo.StoreID)
|
||||
logger.Error("MemberUpgrade update user store_id err:", err)
|
||||
}
|
||||
} else if !isShopAssistantCode && err != model.RecordNotFound { // 2-自动续费(开通会员时有店员邀请,原价or优惠券续费)
|
||||
model.AddCooperativeMemberUpgrade(user.CooperativeBusinessId,
|
||||
uint32(effectiveStoreInfo.StoreID), invite.FromUid, user.MemberLevel, int(record.MemberLevel), true)
|
||||
|
@ -1530,7 +1579,7 @@ func HmPushWXPayNotice(c *gin.Context) {
|
|||
effectiveStoreInfo, err := model.GetUserEffectiveStore(invite.FromUid)
|
||||
if err != nil {
|
||||
logger.Error("GetUserEffectiveStore err:", err)
|
||||
effectiveStoreInfo.StoreID = invite.StoreId
|
||||
effectiveStoreInfo.StoreID = 0
|
||||
}
|
||||
|
||||
if invite.Action == 1 { // 首次开通会员
|
||||
|
@ -1559,8 +1608,8 @@ func HmPushWXPayNotice(c *gin.Context) {
|
|||
} else { // 续费会员-用户直接续费
|
||||
inviteRecordNew := &model.UserInviteRecord{
|
||||
ToUid: invite.ToUid,
|
||||
//FromUid: invite.FromUid,
|
||||
//StoreId: effectiveStoreInfo.StoreID,
|
||||
FromUid: invite.FromUid,
|
||||
StoreId: effectiveStoreInfo.StoreID,
|
||||
Action: 2,
|
||||
SpendType: spendType,
|
||||
MemberLevel: record.MemberLevel,
|
||||
|
@ -1573,8 +1622,8 @@ func HmPushWXPayNotice(c *gin.Context) {
|
|||
if isShopAssistantCode { // 如果使用了优惠券,则是店员邀请续费;否则是用户自己发起续费
|
||||
inviteRecordNew.Scan = 1
|
||||
inviteRecordNew.RenewHide = 0 // 店员干预续费
|
||||
inviteRecordNew.FromUid = invite.FromUid
|
||||
inviteRecordNew.StoreId = effectiveStoreInfo.StoreID
|
||||
//inviteRecordNew.FromUid = invite.FromUid
|
||||
//inviteRecordNew.StoreId = effectiveStoreInfo.StoreID
|
||||
}
|
||||
err = model.DB.Create(inviteRecordNew).Error
|
||||
if err != nil {
|
||||
|
@ -1582,10 +1631,10 @@ func HmPushWXPayNotice(c *gin.Context) {
|
|||
}
|
||||
|
||||
userInviteNew := &model.UserInvite{
|
||||
//FromUid: invite.FromUid,
|
||||
//UserType: invite.UserType,
|
||||
//StoreId: effectiveStoreInfo.StoreID,
|
||||
//StoreType: invite.StoreType,
|
||||
FromUid: invite.FromUid,
|
||||
UserType: invite.UserType,
|
||||
StoreId: effectiveStoreInfo.StoreID,
|
||||
StoreType: invite.StoreType,
|
||||
MemberOpenTime: time.Now(),
|
||||
MemberType: 2,
|
||||
MemberStatus: 2,
|
||||
|
@ -1604,10 +1653,10 @@ func HmPushWXPayNotice(c *gin.Context) {
|
|||
userInviteNew.Scan = 1
|
||||
userInviteNew.RenewHide = 0
|
||||
userInviteNew.InviteForm = 1
|
||||
userInviteNew.FromUid = invite.FromUid
|
||||
userInviteNew.StoreId = effectiveStoreInfo.StoreID
|
||||
userInviteNew.UserType = invite.UserType
|
||||
userInviteNew.StoreType = invite.StoreType
|
||||
//userInviteNew.FromUid = invite.FromUid
|
||||
//userInviteNew.StoreId = effectiveStoreInfo.StoreID
|
||||
//userInviteNew.UserType = invite.UserType
|
||||
//userInviteNew.StoreType = invite.StoreType
|
||||
}
|
||||
err = model.DB.Create(userInviteNew).Error
|
||||
if err != nil {
|
||||
|
@ -1647,8 +1696,8 @@ func HmPushWXPayNotice(c *gin.Context) {
|
|||
fmt.Println("用户开通------")
|
||||
model.AddCooperativeMemberPromotion(inviteUser.CooperativeBusinessId,
|
||||
uint32(effectiveStoreInfo.StoreID), inviteUser.Uid, int(record.MemberLevel), int(record.MemberGenre))
|
||||
userQs = userQs.SetStoreId(effectiveStoreInfo.StoreID) // 更新用户门店:邀请人的有效门店
|
||||
}
|
||||
userQs = userQs.SetStoreId(effectiveStoreInfo.StoreID) // 更新用户门店:邀请人的有效门店
|
||||
}
|
||||
|
||||
logger.Info("userQs UpdateNum start")
|
||||
|
@ -1661,6 +1710,33 @@ func HmPushWXPayNotice(c *gin.Context) {
|
|||
fmt.Println("userQs UpdateNum end")
|
||||
}
|
||||
}
|
||||
} else if err == model.RecordNotFound { // 没有邀请记录,完全是用户自己开通会员,自己续费;按产品要求也需要有记录
|
||||
inviteRecordNew := &model.UserInviteRecord{
|
||||
Action: 2,
|
||||
SpendType: spendType,
|
||||
MemberLevel: record.MemberLevel,
|
||||
First: 0,
|
||||
Scan: 0, // 自动生成
|
||||
ActionTime: newTime,
|
||||
MemberGenre: record.MemberGenre,
|
||||
RenewHide: 1,
|
||||
}
|
||||
err = model.DB.Create(inviteRecordNew).Error
|
||||
if err != nil {
|
||||
logger.Error("create invite record err:", err)
|
||||
}
|
||||
|
||||
// 记录对应的数量
|
||||
switch spendType {
|
||||
case 2: // 开通
|
||||
fmt.Println("用户开通------")
|
||||
model.AddCooperativeMemberPromotion(user.CooperativeBusinessId, 0, 0,
|
||||
int(record.MemberLevel), int(record.MemberGenre))
|
||||
case 3: // 续费
|
||||
fmt.Println("用户续费---")
|
||||
model.AddCooperativeMemberRenewal(user.CooperativeBusinessId, 0, 0,
|
||||
int(record.MemberLevel), int(record.MemberGenre), true)
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
|
@ -1896,7 +1972,7 @@ func HmPushWXPayNotice(c *gin.Context) {
|
|||
effectiveStoreInfo, err := model.GetUserEffectiveStore(invite.FromUid)
|
||||
if err != nil {
|
||||
logger.Error("GetUserEffectiveStore err:", err)
|
||||
effectiveStoreInfo.StoreID = invite.StoreId
|
||||
effectiveStoreInfo.StoreID = 0
|
||||
}
|
||||
|
||||
if invite.Action != 2 {
|
||||
|
@ -1971,6 +2047,21 @@ func HmPushWXPayNotice(c *gin.Context) {
|
|||
logger.Error("create invite record err:", err)
|
||||
}
|
||||
}
|
||||
} else if err == model.RecordNotFound { // 没有邀请记录,完全是用户自己开通会员,自己续费;按产品要求也需要有记录
|
||||
inviteRecordNew := &model.UserInviteRecord{
|
||||
Action: 2,
|
||||
SpendType: 4,
|
||||
MemberLevel: record.MemberLevel,
|
||||
First: 0,
|
||||
Scan: 0, // 自动生成
|
||||
ActionTime: newTime,
|
||||
MemberGenre: record.MemberGenre,
|
||||
RenewHide: 1,
|
||||
}
|
||||
err = model.DB.Create(inviteRecordNew).Error
|
||||
if err != nil {
|
||||
logger.Error("create invite record err:", err)
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
|
@ -1984,15 +2075,24 @@ func HmPushWXPayNotice(c *gin.Context) {
|
|||
effectiveStoreInfo, err := model.GetUserEffectiveStore(invite.FromUid)
|
||||
if err != nil {
|
||||
logger.Error("GetUserEffectiveStore err:", err)
|
||||
effectiveStoreInfo.StoreID = invite.StoreId
|
||||
effectiveStoreInfo.StoreID = 0
|
||||
}
|
||||
|
||||
// 统计用户升级的数量,方便前端展示
|
||||
// 分3种情况:1-店员干预(使用了店员兑换码兑换的优惠券)、2-自动续费(开通会员时有店员邀请,原价or优惠券续费)
|
||||
// 3-自动续费(自己开通会员,原价or优惠券续费) 目前只有1算店员提成,正常1和2都会算;3不算提成
|
||||
fmt.Println("isShopAssistantCode:", isShopAssistantCode)
|
||||
if isShopAssistantCode { // 1-店员干预(使用了店员兑换码兑换的优惠券)
|
||||
model.AddCooperativeMemberUpgrade(user.CooperativeBusinessId,
|
||||
uint32(effectiveStoreInfo.StoreID), invite.FromUid, user.MemberLevel, int(record.MemberLevel), false)
|
||||
|
||||
_, err = model.NewUserQuerySet(model.DB).UidEq(record.Uid).GetUpdater().
|
||||
SetStoreId(effectiveStoreInfo.StoreID).UpdateNum() // 更新用户门店:邀请人的有效门店
|
||||
if err != nil {
|
||||
logger.Info("uid:", user.Uid)
|
||||
logger.Info("store_id:", effectiveStoreInfo.StoreID)
|
||||
logger.Error("MemberUpgrade update user store_id err:", err)
|
||||
}
|
||||
} else if !isShopAssistantCode && err != model.RecordNotFound { // 2-自动续费(开通会员时有店员邀请,原价or优惠券续费)
|
||||
model.AddCooperativeMemberUpgrade(user.CooperativeBusinessId,
|
||||
uint32(effectiveStoreInfo.StoreID), invite.FromUid, user.MemberLevel, int(record.MemberLevel), true)
|
||||
|
|
|
@ -189,10 +189,10 @@ func AddCooperativeMemberPromotion(cooperativeId, storeId, assistantUid uint32,
|
|||
logger.Error("cooperative business err:", err)
|
||||
return
|
||||
}
|
||||
//fmt.Println("cooperativeId:", cooperativeId)
|
||||
//fmt.Println("storeId:", storeId)
|
||||
//fmt.Println("assistantUid:", assistantUid)
|
||||
//fmt.Println("memberLevel:", memberLevel)
|
||||
fmt.Println("cooperativeId:", cooperativeId)
|
||||
fmt.Println("storeId:", storeId)
|
||||
fmt.Println("assistantUid:", assistantUid)
|
||||
fmt.Println("memberLevel:", memberLevel)
|
||||
|
||||
go func() {
|
||||
promotion := &CooperativeMemberPromotion{CooperativeBusinessId: cooperativeId, CooperativeName: cooperativeBusiness.Name}
|
||||
|
@ -210,14 +210,15 @@ func AddCooperativeMemberPromotion(cooperativeId, storeId, assistantUid uint32,
|
|||
return
|
||||
}
|
||||
|
||||
err = promotionStore.AddPromotion(begin, memberLevel, storeId)
|
||||
err = promotionDay.AddPromotion(begin, memberLevel)
|
||||
if err != nil {
|
||||
begin.Rollback()
|
||||
logger.Error("promotion add promotion err:", err)
|
||||
return
|
||||
}
|
||||
|
||||
err = promotionDay.AddPromotion(begin, memberLevel)
|
||||
if storeId != 0 {
|
||||
err = promotionStore.AddPromotion(begin, memberLevel, storeId)
|
||||
if err != nil {
|
||||
begin.Rollback()
|
||||
logger.Error("promotion add promotion err:", err)
|
||||
|
@ -230,13 +231,17 @@ func AddCooperativeMemberPromotion(cooperativeId, storeId, assistantUid uint32,
|
|||
logger.Error("promotion add promotion err:", err)
|
||||
return
|
||||
}
|
||||
}
|
||||
|
||||
if assistantUid != 0 {
|
||||
err = inviteReport.AddPromotion(begin, memberLevel, memberGenre)
|
||||
if err != nil {
|
||||
begin.Rollback()
|
||||
logger.Error("promotion add promotion err:", err)
|
||||
return
|
||||
}
|
||||
}
|
||||
|
||||
err = begin.Commit().Error
|
||||
if err != nil {
|
||||
begin.Rollback()
|
||||
|
@ -529,10 +534,11 @@ func AddCooperativeMemberRenewal(cooperativeId, storeId, assistantUid uint32, me
|
|||
logger.Error("cooperative business err:", err)
|
||||
return
|
||||
}
|
||||
//fmt.Println("cooperativeId:", cooperativeId)
|
||||
//fmt.Println("storeId:", storeId)
|
||||
//fmt.Println("assistantUid:", assistantUid)
|
||||
//fmt.Println("memberLevel:", memberLevel)
|
||||
fmt.Println("cooperativeId:", cooperativeId)
|
||||
fmt.Println("storeId:", storeId)
|
||||
fmt.Println("assistantUid:", assistantUid)
|
||||
fmt.Println("memberLevel:", memberLevel)
|
||||
fmt.Println("autoRenewFlag:", autoRenewFlag)
|
||||
|
||||
go func() {
|
||||
promotion := &CooperativeMemberPromotion{CooperativeBusinessId: cooperativeId, CooperativeName: cooperativeBusiness.Name}
|
||||
|
@ -550,14 +556,15 @@ func AddCooperativeMemberRenewal(cooperativeId, storeId, assistantUid uint32, me
|
|||
return
|
||||
}
|
||||
|
||||
err = promotionStore.AddRenewal(begin, memberLevel, storeId)
|
||||
err = promotionDay.AddRenewal(begin, memberLevel)
|
||||
if err != nil {
|
||||
begin.Rollback()
|
||||
logger.Error("promotion add promotion err:", err)
|
||||
return
|
||||
}
|
||||
|
||||
err = promotionDay.AddRenewal(begin, memberLevel)
|
||||
if storeId != 0 {
|
||||
err = promotionStore.AddRenewal(begin, memberLevel, storeId)
|
||||
if err != nil {
|
||||
begin.Rollback()
|
||||
logger.Error("promotion add promotion err:", err)
|
||||
|
@ -570,7 +577,9 @@ func AddCooperativeMemberRenewal(cooperativeId, storeId, assistantUid uint32, me
|
|||
logger.Error("promotion add promotion err:", err)
|
||||
return
|
||||
}
|
||||
}
|
||||
|
||||
if assistantUid != 0 {
|
||||
if autoRenewFlag { // 自动续费
|
||||
err = inviteReport.AddRenewalAuto(begin, memberLevel, memberGenre)
|
||||
} else { // 干预续费
|
||||
|
@ -581,6 +590,8 @@ func AddCooperativeMemberRenewal(cooperativeId, storeId, assistantUid uint32, me
|
|||
logger.Error("promotion add promotion err:", err)
|
||||
return
|
||||
}
|
||||
}
|
||||
|
||||
err = begin.Commit().Error
|
||||
if err != nil {
|
||||
begin.Rollback()
|
||||
|
@ -932,6 +943,11 @@ func AddCooperativeMemberUpgrade(cooperativeId, storeId, assistantUid, beforeMem
|
|||
logger.Error("cooperative business err:", err)
|
||||
return
|
||||
}
|
||||
fmt.Println("cooperativeId:", cooperativeId)
|
||||
fmt.Println("storeId:", storeId)
|
||||
fmt.Println("assistantUid:", assistantUid)
|
||||
fmt.Println("memberLevel:", memberLevel)
|
||||
fmt.Println("autoFlag:", autoFlag)
|
||||
|
||||
go func() {
|
||||
promotion := &CooperativeMemberPromotion{CooperativeBusinessId: cooperativeId, CooperativeName: cooperativeBusiness.Name}
|
||||
|
@ -949,14 +965,15 @@ func AddCooperativeMemberUpgrade(cooperativeId, storeId, assistantUid, beforeMem
|
|||
return
|
||||
}
|
||||
|
||||
err = promotionStore.AddUpgrade(begin, beforeMemberLevel, memberLevel, storeId)
|
||||
err = promotionDay.AddUpgrade(begin, beforeMemberLevel, memberLevel)
|
||||
if err != nil {
|
||||
begin.Rollback()
|
||||
logger.Error("promotion add promotion err:", err)
|
||||
return
|
||||
}
|
||||
|
||||
err = promotionDay.AddUpgrade(begin, beforeMemberLevel, memberLevel)
|
||||
if storeId != 0 {
|
||||
err = promotionStore.AddUpgrade(begin, beforeMemberLevel, memberLevel, storeId)
|
||||
if err != nil {
|
||||
begin.Rollback()
|
||||
logger.Error("promotion add promotion err:", err)
|
||||
|
@ -969,13 +986,17 @@ func AddCooperativeMemberUpgrade(cooperativeId, storeId, assistantUid, beforeMem
|
|||
logger.Error("promotion add promotion err:", err)
|
||||
return
|
||||
}
|
||||
}
|
||||
|
||||
if assistantUid != 0 {
|
||||
err = inviteReport.AddUpgrade(begin, beforeMemberLevel, memberLevel, autoFlag)
|
||||
if err != nil {
|
||||
begin.Rollback()
|
||||
logger.Error("promotion add promotion err:", err)
|
||||
return
|
||||
}
|
||||
}
|
||||
|
||||
err = begin.Commit().Error
|
||||
if err != nil {
|
||||
begin.Rollback()
|
||||
|
@ -1008,7 +1029,7 @@ func (m *CooperativeMemberPromotion) AddUpgrade(gdb *gorm.DB, beforeMemberLevel
|
|||
m.UpgradePlatinumToBlackCount = 1
|
||||
}
|
||||
}
|
||||
fmt.Println("邀请会员sql:", sql)
|
||||
fmt.Println("CooperativeMemberPromotion AddUpgrade 邀请会员sql:", sql)
|
||||
exist, err := QueryRecordExist(fmt.Sprintf(
|
||||
"SELECT * FROM cooperative_member_promotion WHERE cooperative_business_id=%d AND date='%s' ",
|
||||
m.CooperativeBusinessId, dateString))
|
||||
|
@ -1109,6 +1130,7 @@ func (m *CooperativeMemberPromotionDay) AddUpgrade(gdb *gorm.DB, beforeMemberLev
|
|||
m.UpgradePlatinumToBlackCount = 1
|
||||
}
|
||||
}
|
||||
fmt.Println("CooperativeMemberPromotionDay AddUpgrade 邀请会员sql:", sql)
|
||||
exist, err := QueryRecordExist(fmt.Sprintf(
|
||||
"SELECT * FROM cooperative_member_promotion_day WHERE cooperative_business_id=%d AND day_time='%s'",
|
||||
m.CooperativeBusinessId, dayString))
|
||||
|
@ -1243,6 +1265,7 @@ func (m *InviteMemberReport) AddUpgrade(gdb *gorm.DB, beforeMemberLevel uint32,
|
|||
}
|
||||
}
|
||||
|
||||
fmt.Println("InviteMemberReport AddUpgrade 邀请会员升级sql:", sql)
|
||||
exist, err := QueryRecordExist(fmt.Sprintf(
|
||||
"SELECT * FROM invite_member_report WHERE cooperative_business_id=%d AND date='%s' AND uid=%d",
|
||||
m.CooperativeBusinessId, dateString, m.Uid))
|
||||
|
|
|
@ -264,27 +264,49 @@ const StoreDateTimeFormat = "2006.01.02"
|
|||
|
||||
// GetUserEffectiveStore 获取店员当前的有效门店(邀请客户时使用)
|
||||
func GetUserEffectiveStore(uid uint32) (*StoreInfo, error) {
|
||||
if uid == 0 {
|
||||
return &StoreInfo{}, nil
|
||||
}
|
||||
|
||||
user := new(SysUser)
|
||||
if err := NewSysUserQuerySet(DB).UidEq(uid).One(user); err != nil {
|
||||
logger.Error("Error:", err, "UID:", uid)
|
||||
return nil, err
|
||||
}
|
||||
|
||||
// 解析门店数据
|
||||
if err := json.Unmarshal([]byte(user.StoreData), &user.StoreList); err != nil {
|
||||
var userStores []StoreInfo
|
||||
if user.RoleId == 1 { // 系统管理员
|
||||
var stores []Store
|
||||
err := NewStoreQuerySet(DB).CooperativeBusinessIdEq(user.CooperativeBusinessId).All(&stores)
|
||||
if err != nil {
|
||||
return nil, err
|
||||
}
|
||||
|
||||
if len(user.StoreList) == 0 {
|
||||
for _, item := range stores {
|
||||
tempStore := StoreInfo{
|
||||
StoreID: uint64(item.ID),
|
||||
StoreName: item.Name,
|
||||
ExpireTime: "2099.12.30",
|
||||
}
|
||||
userStores = append(userStores, tempStore)
|
||||
}
|
||||
} else { // 普通用户
|
||||
// 解析门店数据
|
||||
if err := json.Unmarshal([]byte(user.StoreData), &userStores); err != nil {
|
||||
return nil, err
|
||||
}
|
||||
|
||||
if len(userStores) == 0 {
|
||||
return nil, errors.New("no stores found")
|
||||
}
|
||||
}
|
||||
|
||||
// 当前时间
|
||||
now := time.Now()
|
||||
|
||||
// 过滤掉过期的门店
|
||||
validStores := make([]StoreInfo, 0)
|
||||
for _, store := range user.StoreList {
|
||||
for _, store := range userStores {
|
||||
expireTime, err := time.Parse(StoreDateTimeFormat, store.ExpireTime)
|
||||
if err != nil {
|
||||
logger.Error("Error parsing time:", err, "ExpireTime:", store.ExpireTime)
|
||||
|
|
Loading…
Reference in New Issue
Block a user