From 251c3ff0282168c8cc44c48d27916b02e3498a7f Mon Sep 17 00:00:00 2001 From: wangpengfei <274878379@qq.com> Date: 星期五, 11 八月 2023 15:01:04 +0800 Subject: [PATCH] fix --- model/serviceFeeManage.go | 352 +++++++++++++++++++++++++++++----------------------------- 1 files changed, 176 insertions(+), 176 deletions(-) diff --git a/model/serviceFeeManage.go b/model/serviceFeeManage.go index 16ec527..4ef85e8 100644 --- a/model/serviceFeeManage.go +++ b/model/serviceFeeManage.go @@ -1,176 +1,176 @@ -package model - -import ( - "aps_crm/constvar" - "aps_crm/pkg/mysqlx" - "gorm.io/gorm" - "time" -) - -type ( - ServiceFeeManage struct { - Id int `json:"id" gorm:"column:id;primaryKey;autoIncrement;not null"` - ClientId int `json:"client_id" gorm:"column:client_id;type:int(11);comment:瀹㈡埛ID"` - Client *Client `json:"client" gorm:"foreignKey:ClientId"` - MemberId int `json:"member_id" gorm:"column:member_id;type:int(11);comment:鍛樺伐ID"` - LatestDate time.Time `json:"latest_date" gorm:"column:latest_date;type:datetime;comment:鏈�鏅氭湇鍔℃椂闂�"` - Remark string `json:"remark" gorm:"column:remark;type:varchar(255);comment:澶囨敞"` - File string `json:"file" gorm:"column:file;type:varchar(255);comment:鏂囦欢"` - gorm.Model `json:"-"` - } - - ServiceFeeManageSearch struct { - ServiceFeeManage - Orm *gorm.DB - QueryClass constvar.ServiceFeeQueryClass - KeywordType constvar.ServiceFeeKeywordType - Keyword string - OrderBy string - PageNum int - PageSize int - } -) - -func (ServiceFeeManage) TableName() string { - return "service_fee_manage" -} - -func NewServiceFeeManageSearch(db *gorm.DB) *ServiceFeeManageSearch { - if db == nil { - db = mysqlx.GetDB() - } - - return &ServiceFeeManageSearch{ - Orm: db, - } -} - -func (slf *ServiceFeeManageSearch) build() *gorm.DB { - var db = slf.Orm.Model(&ServiceFeeManage{}) - if slf.Id != 0 { - db.Where("id = ?", slf.Id) - } - if slf.ClientId != 0 { - db.Where("client_id = ?", slf.ClientId) - } - switch slf.QueryClass { - case constvar.ServiceFeeQueryClassExpireLessThen60Days: - db = db.Where("latest_date > ? and latest_date < ?", time.Now(), time.Now().AddDate(0, 0, 60)) - case constvar.ServiceFeeQueryClassExpireLessThen30Days: - db = db.Where("latest_date > ? and latest_date < ?", time.Now(), time.Now().AddDate(0, 0, 30)) - case constvar.ServiceFeeQueryClassExpireAboutTo60Day: - db = db.Where("latest_date = ?", time.Now().AddDate(0, 0, -60)) - case constvar.ServiceFeeQueryClassExpireAboutTo30Day: - db = db.Where("latest_date = ?", time.Now().AddDate(0, 0, -30)) - case constvar.ServiceFeeQueryClassExpired: - db = db.Where("latest_date < ?", time.Now()) - case constvar.ServiceFeeQueryClassNoService: - db = db.Where("latest_date < ?", time.Now().AddDate(0, 0, -60)) - - } - - switch slf.KeywordType { - case constvar.ServiceFeeKeywordCustomerName: - db.Joins("left join clients on clients.id = service_fee_manage.client_id") - db = db.Where("clients.name = ?", slf.Keyword) - case constvar.ServiceFeeKeywordCustomerType: - db.Joins("left join clients on clients.id = service_fee_manage.client_id") - db = db.Where("clients.client_type_id = ?", slf.Keyword) - case constvar.ServiceFeeKeywordSalesPrincipal: - db.Joins("left join clients on clients.id = service_fee_manage.client_id") - db = db.Where("clients.member_id = ?", slf.Keyword) - case constvar.ServiceFeeKeywordCustomerScale: - db.Joins("left join clients on clients.id = service_fee_manage.client_id") - db = db.Where("clients.enterprise_scale_id = ?", slf.Keyword) - case constvar.ServiceFeeKeywordClientLevel: - db.Joins("left join clients on clients.id = service_fee_manage.client_id") - db = db.Where("clients.client_level_id = ?", slf.Keyword) - case constvar.ServiceFeeKeywordCustomerNo: - db.Joins("left join clients on clients.id = service_fee_manage.client_id") - db = db.Where("clients.number = ?", slf.Keyword) - case constvar.ServiceFeeKeywordCustomerStatus: - db.Joins("left join clients on clients.id = service_fee_manage.client_id") - db = db.Where("clients.client_status_id = ?", slf.Keyword) - case constvar.ServiceFeeKeywordServiceEndDate: - db = db.Where("latest_date = ?", slf.Keyword) - case constvar.ServiceFeeKeywordProductName: - //todo - } - - return db -} - -func (slf *ServiceFeeManageSearch) Create(record *ServiceFeeManage) error { - var db = slf.build() - return db.Create(record).Error -} - -func (slf *ServiceFeeManageSearch) Update(record *ServiceFeeManage) error { - var db = slf.build() - return db.Updates(record).Error -} - -func (slf *ServiceFeeManageSearch) Delete() error { - var db = slf.build() - return db.Delete(&ServiceFeeManage{}).Error -} - -func (slf *ServiceFeeManageSearch) SetId(id int) *ServiceFeeManageSearch { - slf.Id = id - return slf -} - -func (slf *ServiceFeeManageSearch) SetKeywordType(keyword constvar.ServiceFeeKeywordType) *ServiceFeeManageSearch { - slf.KeywordType = keyword - return slf -} - -func (slf *ServiceFeeManageSearch) SetQueryClass(queryClass constvar.ServiceFeeQueryClass) *ServiceFeeManageSearch { - slf.QueryClass = queryClass - return slf -} - -func (slf *ServiceFeeManageSearch) SetKeyword(keyword string) *ServiceFeeManageSearch { - slf.Keyword = keyword - return slf -} - -func (slf *ServiceFeeManageSearch) Find() (*ServiceFeeManage, error) { - var db = slf.build() - var record = new(ServiceFeeManage) - err := db.First(record).Error - return record, err -} - -func (slf *ServiceFeeManageSearch) FindAll() ([]*ServiceFeeManage, int64, error) { - var db = slf.build() - var records = make([]*ServiceFeeManage, 0) - var total int64 - if err := db.Count(&total).Error; err != nil { - return records, total, err - } - if slf.PageNum > 0 && slf.PageSize > 0 { - db = db.Limit(slf.PageSize).Offset((slf.PageNum - 1) * slf.PageSize) - } - - if slf.PageNum > 0 && slf.PageSize > 0 { - db = db.Limit(slf.PageSize).Offset((slf.PageNum - 1) * slf.PageSize) - } - - err := db.Preload("Client").Find(&records).Error - return records, total, err -} - -func (slf *ServiceFeeManageSearch) SetPage(page, size int) *ServiceFeeManageSearch { - slf.PageNum, slf.PageSize = page, size - return slf -} - -func (slf *ServiceFeeManageSearch) SetOrder(order string) *ServiceFeeManageSearch { - slf.OrderBy = order - return slf -} -func (slf *ServiceFeeManageSearch) SetIds(ids []int) *ServiceFeeManageSearch { - slf.Orm = slf.Orm.Where("id in (?)", ids) - return slf -} +package model + +import ( + "aps_crm/constvar" + "aps_crm/pkg/mysqlx" + "gorm.io/gorm" + "time" +) + +type ( + ServiceFeeManage struct { + Id int `json:"id" gorm:"column:id;primaryKey;autoIncrement;not null"` + ClientId int `json:"client_id" gorm:"column:client_id;type:int(11);comment:瀹㈡埛ID"` + Client *Client `json:"client" gorm:"foreignKey:ClientId"` + MemberId int `json:"member_id" gorm:"column:member_id;type:int(11);comment:鍛樺伐ID"` + LatestDate *time.Time `json:"latest_date" gorm:"column:latest_date;type:datetime;comment:鏈�鏅氭湇鍔℃椂闂�"` + Remark string `json:"remark" gorm:"column:remark;type:varchar(255);comment:澶囨敞"` + File string `json:"file" gorm:"column:file;type:varchar(255);comment:鏂囦欢"` + gorm.Model `json:"-"` + } + + ServiceFeeManageSearch struct { + ServiceFeeManage + Orm *gorm.DB + QueryClass constvar.ServiceFeeQueryClass + KeywordType constvar.ServiceFeeKeywordType + Keyword string + OrderBy string + PageNum int + PageSize int + } +) + +func (ServiceFeeManage) TableName() string { + return "service_fee_manage" +} + +func NewServiceFeeManageSearch(db *gorm.DB) *ServiceFeeManageSearch { + if db == nil { + db = mysqlx.GetDB() + } + + return &ServiceFeeManageSearch{ + Orm: db, + } +} + +func (slf *ServiceFeeManageSearch) build() *gorm.DB { + var db = slf.Orm.Model(&ServiceFeeManage{}) + if slf.Id != 0 { + db.Where("id = ?", slf.Id) + } + if slf.ClientId != 0 { + db.Where("client_id = ?", slf.ClientId) + } + switch slf.QueryClass { + case constvar.ServiceFeeQueryClassExpireLessThen60Days: + db = db.Where("latest_date > ? and latest_date < ?", time.Now(), time.Now().AddDate(0, 0, 60)) + case constvar.ServiceFeeQueryClassExpireLessThen30Days: + db = db.Where("latest_date > ? and latest_date < ?", time.Now(), time.Now().AddDate(0, 0, 30)) + case constvar.ServiceFeeQueryClassExpireAboutTo60Day: + db = db.Where("latest_date = ?", time.Now().AddDate(0, 0, -60)) + case constvar.ServiceFeeQueryClassExpireAboutTo30Day: + db = db.Where("latest_date = ?", time.Now().AddDate(0, 0, -30)) + case constvar.ServiceFeeQueryClassExpired: + db = db.Where("latest_date < ?", time.Now()) + case constvar.ServiceFeeQueryClassNoService: + db = db.Where("latest_date < ?", time.Now().AddDate(0, 0, -60)) + + } + + switch slf.KeywordType { + case constvar.ServiceFeeKeywordCustomerName: + db.Joins("left join clients on clients.id = service_fee_manage.client_id") + db = db.Where("clients.name = ?", slf.Keyword) + case constvar.ServiceFeeKeywordCustomerType: + db.Joins("left join clients on clients.id = service_fee_manage.client_id") + db = db.Where("clients.client_type_id = ?", slf.Keyword) + case constvar.ServiceFeeKeywordSalesPrincipal: + db.Joins("left join clients on clients.id = service_fee_manage.client_id") + db = db.Where("clients.member_id = ?", slf.Keyword) + case constvar.ServiceFeeKeywordCustomerScale: + db.Joins("left join clients on clients.id = service_fee_manage.client_id") + db = db.Where("clients.enterprise_scale_id = ?", slf.Keyword) + case constvar.ServiceFeeKeywordClientLevel: + db.Joins("left join clients on clients.id = service_fee_manage.client_id") + db = db.Where("clients.client_level_id = ?", slf.Keyword) + case constvar.ServiceFeeKeywordCustomerNo: + db.Joins("left join clients on clients.id = service_fee_manage.client_id") + db = db.Where("clients.number = ?", slf.Keyword) + case constvar.ServiceFeeKeywordCustomerStatus: + db.Joins("left join clients on clients.id = service_fee_manage.client_id") + db = db.Where("clients.client_status_id = ?", slf.Keyword) + case constvar.ServiceFeeKeywordServiceEndDate: + db = db.Where("latest_date = ?", slf.Keyword) + case constvar.ServiceFeeKeywordProductName: + //todo + } + + return db +} + +func (slf *ServiceFeeManageSearch) Create(record *ServiceFeeManage) error { + var db = slf.build() + return db.Create(record).Error +} + +func (slf *ServiceFeeManageSearch) Update(record *ServiceFeeManage) error { + var db = slf.build() + return db.Updates(record).Error +} + +func (slf *ServiceFeeManageSearch) Delete() error { + var db = slf.build() + return db.Delete(&ServiceFeeManage{}).Error +} + +func (slf *ServiceFeeManageSearch) SetId(id int) *ServiceFeeManageSearch { + slf.Id = id + return slf +} + +func (slf *ServiceFeeManageSearch) SetKeywordType(keyword constvar.ServiceFeeKeywordType) *ServiceFeeManageSearch { + slf.KeywordType = keyword + return slf +} + +func (slf *ServiceFeeManageSearch) SetQueryClass(queryClass constvar.ServiceFeeQueryClass) *ServiceFeeManageSearch { + slf.QueryClass = queryClass + return slf +} + +func (slf *ServiceFeeManageSearch) SetKeyword(keyword string) *ServiceFeeManageSearch { + slf.Keyword = keyword + return slf +} + +func (slf *ServiceFeeManageSearch) Find() (*ServiceFeeManage, error) { + var db = slf.build() + var record = new(ServiceFeeManage) + err := db.First(record).Error + return record, err +} + +func (slf *ServiceFeeManageSearch) FindAll() ([]*ServiceFeeManage, int64, error) { + var db = slf.build() + var records = make([]*ServiceFeeManage, 0) + var total int64 + if err := db.Count(&total).Error; err != nil { + return records, total, err + } + if slf.PageNum > 0 && slf.PageSize > 0 { + db = db.Limit(slf.PageSize).Offset((slf.PageNum - 1) * slf.PageSize) + } + + if slf.PageNum > 0 && slf.PageSize > 0 { + db = db.Limit(slf.PageSize).Offset((slf.PageNum - 1) * slf.PageSize) + } + + err := db.Preload("Client").Find(&records).Error + return records, total, err +} + +func (slf *ServiceFeeManageSearch) SetPage(page, size int) *ServiceFeeManageSearch { + slf.PageNum, slf.PageSize = page, size + return slf +} + +func (slf *ServiceFeeManageSearch) SetOrder(order string) *ServiceFeeManageSearch { + slf.OrderBy = order + return slf +} +func (slf *ServiceFeeManageSearch) SetIds(ids []int) *ServiceFeeManageSearch { + slf.Orm = slf.Orm.Where("id in (?)", ids) + return slf +} -- Gitblit v1.8.0