12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970 |
- package income
- import (
- "context"
- incomeD "go-common/app/job/main/growup/dao/income"
- model "go-common/app/job/main/growup/model/income"
- )
- // ChargeRatioSvr charge ratio service
- type ChargeRatioSvr struct {
- dao *incomeD.Dao
- }
- // NewChargeRatioSvr new charge ratio service
- func NewChargeRatioSvr(dao *incomeD.Dao) *ChargeRatioSvr {
- return &ChargeRatioSvr{dao: dao}
- }
- // ArchiveChargeRatio get av charge ratio
- func (p *ChargeRatioSvr) ArchiveChargeRatio(c context.Context, limit int64) (rs map[int]map[int64]*model.ArchiveChargeRatio, err error) {
- rs = make(map[int]map[int64]*model.ArchiveChargeRatio)
- var id int64
- for {
- var ros map[int]map[int64]*model.ArchiveChargeRatio
- ros, id, err = p.dao.ArchiveChargeRatio(c, id, limit)
- if err != nil {
- return
- }
- if len(ros) == 0 {
- break
- }
- for ctype, m := range ros {
- if _, ok := rs[ctype]; ok {
- for aid, ratio := range m {
- rs[ctype][aid] = ratio
- }
- } else {
- rs[ctype] = m
- }
- }
- }
- return
- }
- // UpChargeRatio get up charge ratio
- func (p *ChargeRatioSvr) UpChargeRatio(c context.Context, limit int64) (rs map[int]map[int64]*model.UpChargeRatio, err error) {
- rs = make(map[int]map[int64]*model.UpChargeRatio)
- var id int64
- for {
- var ros map[int]map[int64]*model.UpChargeRatio
- ros, id, err = p.dao.UpChargeRatio(c, id, limit)
- if err != nil {
- return
- }
- if len(ros) == 0 {
- break
- }
- for ctype, m := range ros {
- if _, ok := rs[ctype]; ok {
- for mid, ratio := range m {
- rs[ctype][mid] = ratio
- }
- } else {
- rs[ctype] = m
- }
- }
- }
- return
- }
|