Updata:修正sql

This commit is contained in:
jiaji.H 2026-02-03 13:11:14 +08:00
parent 420a169c65
commit 40bd33d19c

View File

@ -123,19 +123,19 @@ func GetInvoiceList(req *bundle.GetInvoiceListReq) (data []*model.InvoiceInfo, t
query = query.Where("COALESCE(invoice.apply_time, pia.apply_time) <= ?", req.ApplyTimeEnd) query = query.Where("COALESCE(invoice.apply_time, pia.apply_time) <= ?", req.ApplyTimeEnd)
} }
if req.Name != "" { if req.Name != "" {
// 使用 COALESCE 后的 name 进行筛选 // 使用 COALESCE 后的 name 进行模糊筛选
query = query.Where("COALESCE(pia.name, rn.name) = ?", req.Name) query = query.Where("COALESCE(pia.name, rn.name) LIKE ?", "%"+req.Name+"%")
} }
if req.Phone != "" { if req.Phone != "" {
// 使用 COALESCE 后的 phone 进行筛选 // 使用 COALESCE 后的 phone 进行模糊筛选
query = query.Where("COALESCE(pia.phone, user.tel_num) = ?", req.Phone) query = query.Where("COALESCE(pia.phone, user.tel_num) LIKE ?", "%"+req.Phone+"%")
} }
if req.Country != "" { if req.Country != "" {
// 使用 COALESCE 后的 country 进行筛选 // 使用 COALESCE 后的 country 进行模糊筛选(与 SELECT 一致使用 rn.nationality
query = query.Where("COALESCE(pia.country, user.country) = ?", req.Country) query = query.Where("COALESCE(pia.country, rn.nationality) LIKE ?", "%"+req.Country+"%")
} }
if req.UserName != "" { if req.UserName != "" {
query = query.Where("invoice.user_name = ?", req.UserName) query = query.Where("invoice.user_name LIKE ?", "%"+req.UserName+"%")
} }
query = query.Count(&total) query = query.Count(&total)
query.Order("invoice.apply_time DESC") query.Order("invoice.apply_time DESC")
@ -214,7 +214,7 @@ func GetInvoiceInfoByOrderNo(req *bundle.GetInvoiceInfoByOrderNoReq) (data []*mo
bor.pay_time AS pay_time, bor.pay_time AS pay_time,
invoice.paper_invocie_status AS paper_invocie_status invoice.paper_invocie_status AS paper_invocie_status
`). `).
Joins("left join bundle_order_records bor on invoice.order_no = bor.order_no and bor.deleted_at = 0"). Joins("left join bundle_order_records bor on invoice.order_no = bor.order_no and bor.deleted_at is null").
Where("invoice.user_id = ?", req.UserId).Find(&data).Error Where("invoice.user_id = ?", req.UserId).Find(&data).Error
if err != nil { if err != nil {
return nil, err return nil, err