优化订单管理代管展示

This commit is contained in:
yml2213
2026-07-26 10:15:49 +08:00
parent 3107c54b65
commit 756fa342cb
5 changed files with 44 additions and 1 deletions
+1
View File
@@ -130,6 +130,7 @@ type AdminOrderQuery struct {
Keyword string
Status string
HandoffStatus string
HandoffMode string
SettlementStatus string
}
@@ -60,6 +60,7 @@ func parseAdminOrderQuery(c *gin.Context) AdminOrderQuery {
Keyword: strings.TrimSpace(c.Query("keyword")),
Status: strings.TrimSpace(c.Query("status")),
HandoffStatus: strings.TrimSpace(c.Query("handoff_status")),
HandoffMode: strings.TrimSpace(c.Query("handoff_mode")),
SettlementStatus: strings.TrimSpace(c.Query("settlement_status")),
}
}
@@ -84,6 +84,12 @@ func applyAdminOrderFilters(db *gorm.DB, query AdminOrderQuery) *gorm.DB {
if query.HandoffStatus != "" {
db = db.Where("o.handoff_status = ?", query.HandoffStatus)
}
switch query.HandoffMode {
case handoffModePlatform:
db = db.Where("(o.handoff_mode = ? OR o.settlement_mode = ?)", handoffModePlatform, settlementModePlatformManaged)
case handoffModeOwner, "normal":
db = db.Where("COALESCE(NULLIF(o.handoff_mode, ''), ?) <> ? AND COALESCE(NULLIF(o.settlement_mode, ''), ?) <> ?", handoffModeOwner, handoffModePlatform, settlementModeOwnerWallet, settlementModePlatformManaged)
}
if query.SettlementStatus != "" {
db = db.Where("o.settlement_status = ?", query.SettlementStatus)
}