From cdb47d41f39a5c600caa41692c9b5b0732944d6a Mon Sep 17 00:00:00 2001
From: wangpengfei <274878379@qq.com>
Date: 星期二, 08 八月 2023 11:38:27 +0800
Subject: [PATCH] fix
---
model/serviceFollowup.go | 41 +++++++++++++++++++++++++++++------------
1 files changed, 29 insertions(+), 12 deletions(-)
diff --git a/model/serviceFollowup.go b/model/serviceFollowup.go
index 118ae24..d2d4ada 100644
--- a/model/serviceFollowup.go
+++ b/model/serviceFollowup.go
@@ -1,6 +1,7 @@
package model
import (
+ "aps_crm/constvar"
"aps_crm/pkg/mysqlx"
"gorm.io/gorm"
)
@@ -12,6 +13,7 @@
Number string `json:"number" gorm:"column:number;type:varchar(255);comment:鍚堝悓缂栧彿"`
ContactId int `json:"contactId" gorm:"column:contact_id;type:int;comment:鑱旂郴浜篿d"`
ServiceId int `json:"serviceId" gorm:"column:service_id;type:int;comment:瀹㈡埛鏈嶅姟鍗昳d"`
+ ServiceOrder ServiceOrder `gorm:"foreignKey:ServiceId"`
CustomerServiceSheet CustomerServiceSheet `json:"customerServiceSheet" gorm:"foreignKey:ServiceId"`
MemberId int `json:"memberId" gorm:"column:member_id;type:int;comment:鏈嶅姟浜哄憳id"`
PlanId int `json:"planId" gorm:"column:plan_id;type:int;comment:鏈嶅姟璁″垝id"`
@@ -28,13 +30,12 @@
ServiceFollowupSearch struct {
ServiceFollowup
-
- Orm *gorm.DB
- Keyword string
- OrderBy string
- PageNum int
- PageSize int
-
+ Orm *gorm.DB
+ KeywordType constvar.ServiceFollowupKeywordType
+ Keyword interface{}
+ OrderBy string
+ PageNum int
+ PageSize int
}
)
@@ -50,11 +51,24 @@
func (slf *ServiceFollowupSearch) build() *gorm.DB {
var db = slf.Orm.Model(&ServiceFollowup{})
- if slf.Keyword != "" {
- db = db.Where("name LIKE ?", "%"+slf.Keyword+"%")
- }
if slf.Id != 0 {
db = db.Where("id = ?", slf.Id)
+ }
+
+ switch slf.KeywordType {
+ case constvar.ServiceFollowupKeywordFollowupNo:
+ db = db.Where("number = ?", slf.Keyword)
+ case constvar.ServiceFollowupKeywordCustomerName:
+ db = db.Where("client_id = ?", slf.Keyword)
+ case constvar.ServiceFollowupKeywordContactName:
+ db = db.Where("contact_id = ?", slf.Keyword)
+ case constvar.ServiceFollowupKeywordCustomerServiceNo:
+ db = db.Where("service_id = ?", slf.Keyword)
+ case constvar.ServiceFollowupKeywordVisitor:
+ db = db.Where("member_id = ?", slf.Keyword)
+ case constvar.ServiceFollowupKeywordSatisfactionDegree:
+ db = db.Where("satisfaction_id = ?", slf.Keyword)
+
}
return db
@@ -97,7 +111,7 @@
db = db.Limit(slf.PageSize).Offset((slf.PageNum - 1) * slf.PageSize)
}
- err := db.Preload("CustomerServiceSheet").Find(&records).Error
+ err := db.Preload("CustomerServiceSheet").Preload("ServiceOrder").Find(&records).Error
return records, total, err
}
@@ -106,7 +120,10 @@
return slf
}
-// 鍙兘鎬� 甯佺 褰撳墠鐘舵�侊紙閿�鍞満浼氾級
+func (slf *ServiceFollowupSearch) SetKeywordType(keyword constvar.ServiceFollowupKeywordType) *ServiceFollowupSearch {
+ slf.KeywordType = keyword
+ return slf
+}
func (slf *ServiceFollowupSearch) SetKeyword(keyword string) *ServiceFollowupSearch {
slf.Keyword = keyword
--
Gitblit v1.8.0