1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980818283848586878889 |
- package dao
- import (
- "context"
- "fmt"
- "go-common/app/job/main/growup/model"
- "go-common/library/log"
- )
- const (
- // list av_breach_record
- _avBreachRecordSQL = "SELECT id,av_id,mid,money,cdate,reason FROM av_breach_record WHERE cdate >= '%s' AND cdate <= '%s'"
- _avBreachPreSQL = "SELECT aid,mid FROM av_breach_pre WHERE cdate = '%s' AND ctype = ? AND state = ?"
- // insert
- _inAvBreachPreSQL = "INSERT INTO av_breach_pre(aid, mid, cdate, ctype, state) VALUES(%s) ON DUPLICATE KEY UPDATE state=VALUES(state)"
- // update
- _upAvBreachPresSQL = "UPDATE av_breach_pre SET state = ? WHERE aid = ? AND ctype = ? AND cdate >= '%s' AND state = 1"
- )
- // GetAvBreach get av_breach by date
- func (d *Dao) GetAvBreach(c context.Context, start, end string) (avs []*model.AvBreach, err error) {
- avs = make([]*model.AvBreach, 0)
- rows, err := d.db.Query(c, fmt.Sprintf(_avBreachRecordSQL, start, end))
- if err != nil {
- log.Error("GetAvBreach d.db.Query error(%v)", err)
- return
- }
- defer rows.Close()
- for rows.Next() {
- list := &model.AvBreach{}
- err = rows.Scan(&list.ID, &list.AvID, &list.MID, &list.Money, &list.Date, &list.Reason)
- if err != nil {
- log.Error("GetAvBreach rows scan error(%v)", err)
- return
- }
- avs = append(avs, list)
- }
- err = rows.Err()
- return
- }
- // GetAvBreachPre get av breach pre by date and state
- func (d *Dao) GetAvBreachPre(c context.Context, ctype, state int, cdate string) (avs []*model.AvBreach, err error) {
- avs = make([]*model.AvBreach, 0)
- rows, err := d.db.Query(c, fmt.Sprintf(_avBreachPreSQL, cdate), ctype, state)
- if err != nil {
- log.Error("GetAvBreachPre d.db.Query error(%v)", err)
- return
- }
- defer rows.Close()
- for rows.Next() {
- list := &model.AvBreach{}
- err = rows.Scan(&list.AvID, &list.MID)
- if err != nil {
- log.Error("GetAvBreachPre rows scan error(%v)", err)
- return
- }
- avs = append(avs, list)
- }
- err = rows.Err()
- return
- }
- // InsertAvBreachPre insert into av_breach_pre
- func (d *Dao) InsertAvBreachPre(c context.Context, val string) (rows int64, err error) {
- if val == "" {
- return
- }
- res, err := d.db.Exec(c, fmt.Sprintf(_inAvBreachPreSQL, val))
- if err != nil {
- log.Error("InsertAvBreachPre(%s) tx.Exec error(%v)", val, err)
- return
- }
- return res.RowsAffected()
- }
- // UpdateAvBreachPre update av breach pre
- func (d *Dao) UpdateAvBreachPre(c context.Context, aid, ctype int64, date string, state int) (rows int64, err error) {
- res, err := d.db.Exec(c, fmt.Sprintf(_upAvBreachPresSQL, date), state, aid, ctype)
- if err != nil {
- log.Error("UpdateAvBreachPre tx.Exec error(%v)", err)
- return
- }
- return res.RowsAffected()
- }
|