From 4b2c52b17abef8521f9211b4865e1cad0288b12a Mon Sep 17 00:00:00 2001 From: liujiandao <274878379@qq.com> Date: 星期六, 21 十月 2023 17:47:50 +0800 Subject: [PATCH] Merge branch 'master' of http://192.168.5.5:10010/r/aps/crm --- model/saleChanceProduct.go | 114 +++++++++++++++++++++++++++++++++++++++++++++++++++++++++ 1 files changed, 114 insertions(+), 0 deletions(-) diff --git a/model/saleChanceProduct.go b/model/saleChanceProduct.go new file mode 100644 index 0000000..0236b44 --- /dev/null +++ b/model/saleChanceProduct.go @@ -0,0 +1,114 @@ +package model + +import ( + "aps_crm/pkg/mysqlx" + "fmt" + "gorm.io/gorm" +) + +type ( + // SaleChanceProduct 閿�鍞満浼氬拰浜у搧鍏宠仈 + SaleChanceProduct struct { + SaleChanceId int `json:"saleChanceId" gorm:"column:sale_chance_id;type:int;primary_key;not null;default:0"` + ProductId uint `json:"productId" gorm:"primary_key;column:product_id;type:int;not null;default:0;comment:浜у搧id"` + } + + // SaleChanceProductSearch 閿�鍞満浼氬拰浜у搧鍏宠仈鎼滅储鏉′欢 + SaleChanceProductSearch struct { + SaleChanceProduct + Orm *gorm.DB + Keyword string + PageNum int + PageSize int + } +) + +func (SaleChanceProduct) TableName() string { + return "sale_chance_product" +} + +func NewSaleChanceProductSearch() *SaleChanceProductSearch { + return &SaleChanceProductSearch{ + Orm: mysqlx.GetDB(), + } +} + +func (slf *SaleChanceProductSearch) build() *gorm.DB { + var db = slf.Orm.Model(&SaleChanceProduct{}) + + return db +} + +func (slf *SaleChanceProductSearch) Create(record *SaleChanceProduct) error { + var db = slf.build() + return db.Create(record).Error +} + +func (slf *SaleChanceProductSearch) CreateBatch(records []*SaleChanceProduct) error { + var db = slf.build() + return db.Create(records).Error +} + +func (slf *SaleChanceProductSearch) Delete() error { + var db = slf.build() + return db.Delete(&SaleChanceProduct{}).Error +} + +func (slf *SaleChanceProductSearch) Update(record *SaleChanceProduct) error { + var db = slf.build() + return db.Updates(record).Error +} + +func (slf *SaleChanceProductSearch) FindAll() ([]*SaleChanceProduct, error) { + var db = slf.build() + var record = make([]*SaleChanceProduct, 0) + err := db.Find(&record).Error + return record, err +} + +func (slf *SaleChanceProductSearch) SetPage(page, size int) *SaleChanceProductSearch { + slf.PageNum, slf.PageSize = page, size + return slf +} + +func (slf *SaleChanceProductSearch) SetOrm(tx *gorm.DB) *SaleChanceProductSearch { + slf.Orm = tx + return slf +} + +func (slf *SaleChanceProductSearch) First() (*SaleChanceProduct, error) { + var db = slf.build() + var record = new(SaleChanceProduct) + err := db.First(record).Error + return record, err +} + +func (slf *SaleChanceProductSearch) Updates(values interface{}) error { + var db = slf.build() + return db.Updates(values).Error +} + +func (slf *SaleChanceProductSearch) Save(record *SaleChanceProduct) error { + var db = slf.build() + + if err := db.Save(record).Error; err != nil { + return fmt.Errorf("save err: %v, record: %+v", err, record) + } + + return nil +} + +func (slf *SaleChanceProductSearch) Find() ([]*SaleChanceProduct, int64, error) { + var db = slf.build() + var records = make([]*SaleChanceProduct, 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) + } + + err := db.Find(&records).Error + return records, total, err +} -- Gitblit v1.8.0