#5354 数字看板增加积分余额选项

Merged
chenyifan01 merged 3 commits from fix-5126 into V20240402 1 month ago
  1. +26
    -1
      models/reward_operate_record.go

+ 26
- 1
models/reward_operate_record.go View File

@@ -359,6 +359,7 @@ func (r *RewardOperateRecordShow) ConvertToExcelColumn() []Column {
{Name: "资源单价", Value: fmt.Sprint(r.UnitPrice)},
{Name: "数量", Value: fmt.Sprint(r.SuccessCount)},
{Name: "总额", Value: fmt.Sprint(r.Amount)},
{Name: "积分余额", Value: fmt.Sprint(r.BalanceAfter)},
}
}
return result
@@ -565,6 +566,31 @@ func GetAdminRewardRecordShowList(opts *RewardRecordListOpts) (RewardRecordShowL
if err != nil {
return nil, 0, err
}

//查询每条消耗明细记录的实时积分余额
if opts.OperateType == OperateTypeDecrease && len(r) > 0 {
serialNos := make([]string, len(r))
for i := 0; i < len(r); i++ {
serialNos[i] = r[i].SerialNo
}
logList1 := make([]PointAccountLog, 0)
x.Table("point_account_log").Select("source_id,max(account_version) as account_version").
In("source_id", serialNos).GroupBy("source_id").Find(&logList1)
newCond := builder.NewCond()
for _, l := range logList1 {
newCond = newCond.Or(builder.And(builder.Eq{"source_id": l.SourceId}, builder.Eq{"account_version": l.AccountVersion}))
}
logList2 := make([]PointAccountLog, 0)
x.Table("point_account_log").Cols("source_id", "balance_after").
Where(newCond).Find(&logList2)
tmpMap := make(map[string]int64, 0)
for _, l := range logList2 {
tmpMap[l.SourceId] = l.BalanceAfter
}
for i, l := range r {
r[i].BalanceAfter = tmpMap[l.SerialNo]
}
}
RewardRecordShowList(r).loadAttribute(true)
newShowList := make([]*RewardOperateRecordShow, 0)
for i := 0; i < len(r); i++ {
@@ -574,7 +600,6 @@ func GetAdminRewardRecordShowList(opts *RewardRecordListOpts) (RewardRecordShowL
newShowList = append(newShowList, r[i])
}
return newShowList, count, nil
return r, count, nil
}

func IsWechatOpenIdRewarded(wechatOpenId string) bool {


Loading…
Cancel
Save