1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253 |
- package service
- import (
- "context"
- "time"
- "go-common/app/job/main/vip/model"
- "go-common/library/log"
- "github.com/pkg/errors"
- )
- //ScanSalaryLog scan salary log.
- func (s *Service) ScanSalaryLog(c context.Context) (err error) {
- var (
- dv = time.Now().Format("2006_01")
- olds []*model.OldSalaryLog
- size = 1000
- endID = 0
- )
- if endID, err = s.dao.SalaryLogMaxID(context.TODO(), dv); err != nil {
- err = errors.WithStack(err)
- return
- }
- page := endID / size
- if endID%size != 0 {
- page++
- }
- for i := 0; i < page; {
- startID := i * size
- eID := (i + 1) * size
- if olds, err = s.dao.SelOldSalaryList(context.TODO(), startID, eID, dv); err != nil {
- err = errors.WithStack(err)
- return
- }
- i++
- for _, v := range olds {
- l := &model.VideoCouponSalaryLog{
- Mid: v.Mid,
- CouponCount: v.CouponCount,
- State: v.State,
- Type: v.Type,
- CouponType: model.SalaryCouponType,
- }
- if err = s.dao.AddSalaryLog(context.TODO(), l, dv); err != nil {
- err = errors.WithStack(err)
- log.Error("+%v", err)
- continue
- }
- }
- }
- return
- }
|