From 7d06c6472f1acea6b2e49e7b8837bf555e94e219 Mon Sep 17 00:00:00 2001 From: zhangqian <zhangqian@123.com> Date: 星期二, 07 五月 2024 16:21:06 +0800 Subject: [PATCH] fox --- models/attendance_manage.go | 38 ++++++++++++++++++++++++++++++++++++++ 1 files changed, 38 insertions(+), 0 deletions(-) diff --git a/models/attendance_manage.go b/models/attendance_manage.go index ed14ff0..412bf42 100644 --- a/models/attendance_manage.go +++ b/models/attendance_manage.go @@ -26,6 +26,7 @@ WorkType WorkTypeManage `json:"workType" gorm:"foreignKey:WorkTypeId"` Status constvar.AttendanceStatus `json:"status" gorm:"type:int(11);comment:鐘舵��"` OverTimeDuration decimal.Decimal `json:"overTimeDuration" gorm:"type:decimal(20,2);comment:鍔犵彮鏃堕暱"` + PhoneNum string `gorm:"type:varchar(191);comment:鎵嬫満鍙�" json:"phoneNum"` } AttendanceManageSearch struct { AttendanceManage @@ -34,6 +35,8 @@ Preload bool Ids []uint Month string + Keyword string + Order string Orm *gorm.DB } ) @@ -71,6 +74,26 @@ return slf } +func (slf *AttendanceManageSearch) SetDate(date string) *AttendanceManageSearch { + slf.Date = date + return slf +} + +func (slf *AttendanceManageSearch) SetWorkerId(workerId string) *AttendanceManageSearch { + slf.WorkerId = workerId + return slf +} + +func (slf *AttendanceManageSearch) SetKeyword(keyword string) *AttendanceManageSearch { + slf.Keyword = keyword + return slf +} + +func (slf *AttendanceManageSearch) SetOrder(order string) *AttendanceManageSearch { + slf.Order = order + return slf +} + func (slf *AttendanceManageSearch) build() *gorm.DB { var db = slf.Orm.Table(slf.TableName()) @@ -86,6 +109,21 @@ db = db.Where("date like ?", slf.Month+"%") } + if slf.Date != "" { + db = db.Where("date = ?", slf.Date) + } + + if slf.WorkerId != "" { + db = db.Where("worker_id = ?", slf.WorkerId) + } + + if slf.Keyword != "" { + db = db.Where("worker_name like ? or worker_id like ?", "%"+slf.Keyword+"%", "%"+slf.Keyword+"%") + } + if slf.Order != "" { + db = db.Order(slf.Order) + } + return db } -- Gitblit v1.8.0