| | |
| | | PageSize int |
| | | Preload bool |
| | | Ids []int |
| | | MemberIds []int |
| | | } |
| | | ) |
| | | |
| | |
| | | if len(slf.Ids) != 0 { |
| | | db = db.Where("id in ?", slf.Ids) |
| | | } |
| | | |
| | | if slf.SourceType != 0 { |
| | | db = db.Where("source_type = ?", slf.SourceType) |
| | | } |
| | | if slf.SourceId != 0 { |
| | | db = db.Where("source_id = ?", slf.SourceId) |
| | | } |
| | | if slf.ClientId != 0 { |
| | | db = db.Where("client_id = ?", slf.ClientId) |
| | | } |
| | | if slf.Preload { |
| | | db = db.Preload("Client"). |
| | | Preload("Member"). |
| | |
| | | db = db.Where("amount_has_refund = ?", slf.Keyword) |
| | | |
| | | } |
| | | } |
| | | |
| | | if len(slf.MemberIds) > 0 { |
| | | db = db.Where("sales_return.member_id in ?", slf.MemberIds) |
| | | } |
| | | if slf.Number != "" { |
| | | db = db.Where("number = ?", slf.Number) |
| | | } |
| | | |
| | | return db |
| | |
| | | return records, err |
| | | } |
| | | |
| | | func (slf *SalesReturnSearch) Count() (int64, error) { |
| | | var db = slf.build() |
| | | var total int64 |
| | | err := db.Count(&total).Error |
| | | return total, err |
| | | } |
| | | |
| | | func (slf *SalesReturnSearch) MaxAutoIncr() (int, error) { |
| | | type Result struct { |
| | | Max int |
| | | } |
| | | |
| | | var ( |
| | | result Result |
| | | db = slf.build() |
| | | ) |
| | | |
| | | err := db.Select("MAX(id) as max").Scan(&result).Error |
| | | if err != nil { |
| | | return result.Max, fmt.Errorf("max err: %v", err) |
| | | } |
| | | return result.Max, nil |
| | | } |
| | | |
| | | func (slf *SalesReturnSearch) SetId(id int) *SalesReturnSearch { |
| | | slf.Id = id |
| | | return slf |
| | |
| | | slf.Preload = preload |
| | | return slf |
| | | } |
| | | func (slf *SalesReturnSearch) SetSourceType(sourceType constvar.SalesReturnSourceType) *SalesReturnSearch { |
| | | slf.SourceType = sourceType |
| | | return slf |
| | | } |
| | | |
| | | func (slf *SalesReturnSearch) SetSourceId(sourceId int) *SalesReturnSearch { |
| | | slf.SourceId = sourceId |
| | | return slf |
| | | } |
| | | |
| | | func (slf *SalesReturnSearch) SetClientId(clientId int) *SalesReturnSearch { |
| | | slf.ClientId = clientId |
| | | return slf |
| | | } |
| | | |
| | | func (slf *SalesReturnSearch) SetNumber(number string) *SalesReturnSearch { |
| | | slf.Number = number |
| | | return slf |
| | | } |
| | | |
| | | func (slf *SalesReturnSearch) UpdateByMap(data map[string]interface{}) error { |
| | | var db = slf.build() |
| | | return db.Updates(data).Error |
| | | } |
| | | |
| | | func (slf *SalesReturnSearch) SetMemberIds(memberIds []int) *SalesReturnSearch { |
| | | slf.MemberIds = memberIds |
| | | return slf |
| | | } |