From f264456b1e4fd284f53ecc4c70a3b951578bfd2d Mon Sep 17 00:00:00 2001
From: wangpengfei <274878379@qq.com>
Date: 星期五, 18 八月 2023 17:13:05 +0800
Subject: [PATCH] Merge remote-tracking branch 'origin/master'

---
 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