From bdb0d8f937e3d27243c6c846677d048baba0f5d7 Mon Sep 17 00:00:00 2001 From: wucongxing8150 <815046773@qq.com> Date: Mon, 14 Oct 2024 09:30:53 +0800 Subject: [PATCH] =?UTF-8?q?=E6=96=B0=E5=A2=9E=E4=BA=86=E8=8E=B7=E5=8F=96?= =?UTF-8?q?=E7=94=A8=E6=88=B7=E4=BC=98=E6=83=A0=E5=8D=B7=E5=88=97=E8=A1=A8?= =?UTF-8?q?=E6=90=9C=E7=B4=A2=E6=9D=A1=E4=BB=B6?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- api/dao/UserCoupon.go | 36 ++++++++++++++++++++++++++++++++++++ api/requests/Coupon.go | 2 +- api/requests/UserCoupon.go | 4 ++++ 3 files changed, 41 insertions(+), 1 deletion(-) diff --git a/api/dao/UserCoupon.go b/api/dao/UserCoupon.go index 95418e7..9413864 100644 --- a/api/dao/UserCoupon.go +++ b/api/dao/UserCoupon.go @@ -168,6 +168,42 @@ func (r *UserCouponDao) GetUserCouponPageSearch(req requests.GetUserCouponPage, query = query.Where(gorm.Expr("user_id IN (?)", subQuery)) } + // 用户手机号 + if req.UserMobile != "" { + subQuery := global.Db.Model(&model.User{}). + Select("user_id"). + Where("mobile LIKE ?", "%"+req.UserMobile+"%") + + query = query.Where(gorm.Expr("user_id IN (?)", subQuery)) + } + + // 优惠券名称 + if req.CouponName != "" { + subQuery := global.Db.Model(&model.Coupon{}). + Select("coupon_id"). + Where("coupon_name LIKE ?", "%"+req.CouponName+"%") + + query = query.Where(gorm.Expr("coupon_id IN (?)", subQuery)) + } + + // 优惠券类型 + if req.CouponType != nil { + subQuery := global.Db.Model(&model.Coupon{}). + Select("coupon_id"). + Where("coupon_type = ?", req.CouponType) + + query = query.Where(gorm.Expr("coupon_id IN (?)", subQuery)) + } + + // 适用范围 + if req.ApplicationScope != nil { + subQuery := global.Db.Model(&model.Coupon{}). + Select("coupon_id"). + Where("application_scope = ?", req.ApplicationScope) + + query = query.Where(gorm.Expr("coupon_id IN (?)", subQuery)) + } + // 排序 query = query.Order("created_at desc") diff --git a/api/requests/Coupon.go b/api/requests/Coupon.go index 3cc38df..8839714 100644 --- a/api/requests/Coupon.go +++ b/api/requests/Coupon.go @@ -37,6 +37,6 @@ type AddSystemCoupon struct { ValidDays *int `json:"valid_days" form:"valid_days" label:"有效天数" validate:"omitempty,numeric,min=1"` ValidStartTime *string `json:"valid_start_time" form:"valid_start_time" label:"开始使用时间"` // 假设转换为字符串格式 ValidEndTime *string `json:"valid_end_time" form:"valid_end_time" label:"结束使用时间"` // 假设转换为字符串格式 - SystemMemberIds []*string `json:"system_member_ids" form:"system_member_ids" label:"会员id"` // 会员id(逗号分割) + SystemMemberIds []*string `json:"system_member_ids" form:"system_member_ids" label:"会员id"` // 会员id CouponDesc string `json:"coupon_desc" form:"coupon_desc" label:"优惠券描述"` } diff --git a/api/requests/UserCoupon.go b/api/requests/UserCoupon.go index 05850bd..09bc889 100644 --- a/api/requests/UserCoupon.go +++ b/api/requests/UserCoupon.go @@ -12,4 +12,8 @@ type GetUserCouponPage struct { CouponId string `json:"coupon_id" form:"coupon_id" label:"优惠券id"` UserCouponStatus *int `json:"user_coupon_status" form:"user_coupon_status" label:"状态"` // 状态(0:未使用 1:已使用 3:已过期) UserName string `json:"user_name" form:"user_name" label:"用户名称"` + UserMobile string `json:"user_mobile" form:"user_mobile" label:"用户手机号"` + CouponName string `json:"coupon_name" form:"coupon_name" label:"优惠券名称"` + CouponType *int `json:"coupon_type" form:"coupon_type" label:"优惠券类型"` // (1:无门槛 2:满减) + ApplicationScope *int `json:"application_scope" form:"application_scope" label:"适用范围"` // 适用范围(1:全场通用 2:单项 3:会员) }