From 1fc5652567b9668bde0c4f174bc9b2458de751eb Mon Sep 17 00:00:00 2001 From: zhangqian <zhangqian@123.com> Date: 星期五, 18 八月 2023 16:36:09 +0800 Subject: [PATCH] 销售明细修改产品 --- model/serviceContractStatus.go | 87 +++++++++++++++++++++++++++++++------------ 1 files changed, 63 insertions(+), 24 deletions(-) diff --git a/model/serviceContractStatus.go b/model/serviceContractStatus.go index f7e271b..881b69d 100644 --- a/model/serviceContractStatus.go +++ b/model/serviceContractStatus.go @@ -1,21 +1,30 @@ package model import ( + "aps_crm/constvar" "aps_crm/pkg/mysqlx" + "errors" + "fmt" "gorm.io/gorm" "sync" ) type ( - // ServiceContractStatus 鍟嗘満闃舵 + // ServiceContractStatus 鍚堝悓鐘舵�� ServiceContractStatus struct { - Id int `json:"id" gorm:"column:id;primary_key;AUTO_INCREMENT"` - Name string `json:"name" gorm:"column:name;type:varchar(255);comment:鍟嗘満闃舵鍚嶇О"` + Id int `json:"id" gorm:"column:id;type:int;primary_key;AUTO_INCREMENT"` + Name string `json:"name" gorm:"column:name;type:varchar(255);not null;default:'';comment:鍚嶇О"` } + // ServiceContractStatusSearch 鍚堝悓鐘舵�佹悳绱㈡潯浠� ServiceContractStatusSearch struct { ServiceContractStatus - Orm *gorm.DB + Orm *gorm.DB + QueryClass constvar.ServiceContractStatusQueryClass + KeywordType constvar.ServiceContractStatusKeywordType + Keyword string + PageNum int + PageSize int } ) @@ -34,9 +43,6 @@ if slf.Id != 0 { db = db.Where("id = ?", slf.Id) } - if slf.Name != "" { - db = db.Where("name = ?", slf.Name) - } return db } @@ -44,6 +50,11 @@ func (slf *ServiceContractStatusSearch) Create(record *ServiceContractStatus) error { var db = slf.build() return db.Create(record).Error +} + +func (slf *ServiceContractStatusSearch) CreateBatch(records []*ServiceContractStatus) error { + var db = slf.build() + return db.Create(records).Error } func (slf *ServiceContractStatusSearch) Delete() error { @@ -56,18 +67,11 @@ return db.Updates(record).Error } -func (slf *ServiceContractStatusSearch) Find() (*ServiceContractStatus, error) { - var db = slf.build() - var record = new(ServiceContractStatus) - err := db.First(record).Error - return record, err -} - func (slf *ServiceContractStatusSearch) FindAll() ([]*ServiceContractStatus, error) { var db = slf.build() - var records = make([]*ServiceContractStatus, 0) - err := db.Find(&records).Error - return records, err + var record = make([]*ServiceContractStatus, 0) + err := db.Find(&record).Error + return record, err } func (slf *ServiceContractStatusSearch) SetId(id int) *ServiceContractStatusSearch { @@ -75,19 +79,54 @@ return slf } -func (slf *ServiceContractStatusSearch) SetName(name string) *ServiceContractStatusSearch { - slf.Name = name +func (slf *ServiceContractStatusSearch) SetPage(page, size int) *ServiceContractStatusSearch { + slf.PageNum, slf.PageSize = page, size return slf } -func (slf *ServiceContractStatusSearch) Updates(data map[string]interface{}) error { - var db = slf.build() - return db.Updates(data).Error +func (slf *ServiceContractStatusSearch) SetOrm(tx *gorm.DB) *ServiceContractStatusSearch { + slf.Orm = tx + return slf } -func (slf *ServiceContractStatusSearch) CreateBatch(records []*ServiceContractStatus) error { +func (slf *ServiceContractStatusSearch) First() (*ServiceContractStatus, error) { var db = slf.build() - return db.Create(records).Error + var record = new(ServiceContractStatus) + err := db.First(record).Error + return record, err +} + +func (slf *ServiceContractStatusSearch) Updates(values interface{}) error { + var db = slf.build() + return db.Updates(values).Error +} + +func (slf *ServiceContractStatusSearch) Save(record *ServiceContractStatus) error { + if record.Id == 0 { + return errors.New("id涓虹┖") + } + 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 *ServiceContractStatusSearch) Find() ([]*ServiceContractStatus, int64, error) { + var db = slf.build() + var records = make([]*ServiceContractStatus, 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 } // InitDefaultData 鍒濆鍖栨暟鎹� -- Gitblit v1.8.0