diff --git a/server/internal/api/exports.go b/server/internal/api/exports.go index b88a5fe..006a708 100644 --- a/server/internal/api/exports.go +++ b/server/internal/api/exports.go @@ -216,6 +216,11 @@ func (a *ExportsAPI) create(w http.ResponseWriter, r *http.Request) { fail(w, r, http.StatusBadRequest, "缺少时间过滤:必须提供 create_time_between") return } + // 验证 plan_id_eq 为必选字段 + if v, ok := p.Filters["plan_id_eq"]; !ok || v == nil || v == "" || v == 0 { + fail(w, r, http.StatusBadRequest, "plan_id_eq 为必选字段") + return + } } filtered := make([]string, 0, len(fs)) tv := 0 diff --git a/server/internal/api/resellers.go b/server/internal/api/resellers.go index f14f05e..e3cff6b 100644 --- a/server/internal/api/resellers.go +++ b/server/internal/api/resellers.go @@ -24,7 +24,6 @@ func ResellersHandler(resellerDB *sql.DB) http.Handler { } func (a *ResellersAPI) list(w http.ResponseWriter, r *http.Request) { - creatorsParam := r.URL.Query().Get("creator") q := r.URL.Query().Get("q") limitStr := r.URL.Query().Get("limit") limit := 2000 @@ -33,30 +32,11 @@ func (a *ResellersAPI) list(w http.ResponseWriter, r *http.Request) { limit = n } } - creators := []string{} - for _, s := range strings.Split(creatorsParam, ",") { - s = strings.TrimSpace(s) - if s != "" { - creators = append(creators, s) - } - } - if len(creators) == 0 { - ok(w, r, []map[string]interface{}{}) - return - } - ph := strings.Repeat("?,", len(creators)) - ph = strings.TrimSuffix(ph, ",") - sql1 := "SELECT id, COALESCE(name,'') AS name FROM reseller WHERE (creator IN (" + ph + ") OR salesman_id IN (" + ph + "))" + // 不再过滤 creator,返回所有分销商 + sql1 := "SELECT id, COALESCE(name,'') AS name FROM reseller" args := []interface{}{} - for _, c := range creators { - args = append(args, c) - } - // salesman_id IN 需要再传一次参数 - for _, c := range creators { - args = append(args, c) - } if q != "" { - sql1 += " AND (CAST(id AS CHAR) LIKE ? OR name LIKE ?)" + sql1 += " WHERE CAST(id AS CHAR) LIKE ? OR name LIKE ?" like := "%" + q + "%" args = append(args, like, like) } diff --git a/web/modules/state.js b/web/modules/state.js index 3427f30..1752b5a 100644 --- a/web/modules/state.js +++ b/web/modules/state.js @@ -245,7 +245,8 @@ const ValidationRules = { } }, trigger: 'change' - }] + }], + planId: [{ required: true, message: '请选择计划', trigger: 'change' }] }; } };