增加限制条件

This commit is contained in:
hoteas
2022-05-06 11:35:40 +08:00
parent aea2e0241d
commit 4cbc84063a
7 changed files with 87 additions and 48 deletions
+30 -13
View File
@@ -598,7 +598,7 @@ func (that *MakeCode) Info(table string, userData Map, db *db.HoTimeDB) (string,
//初始化ruleData
if ruleData == nil {
ruleData = Map{}
for _, v := range that.TableColumns["admin"] {
for _, v := range that.TableColumns[that.FileConfig.GetString("table")] {
if v.GetString("link") != "" &&
v.GetString("name") != "parent_id" &&
userData.Get(v.GetString("name")) != nil {
@@ -814,7 +814,7 @@ func (that *MakeCode) Search(table string, userData Map, req *http.Request, db *
//初始化ruleData
if ruleData == nil {
ruleData = Map{}
for _, v := range that.TableColumns["admin"] {
for _, v := range that.TableColumns[that.FileConfig.GetString("table")] {
if v.GetString("link") != "" &&
v.GetString("name") != "parent_id" &&
userData.Get(v.GetString("name")) != nil {
@@ -885,14 +885,31 @@ func (that *MakeCode) Search(table string, userData Map, req *http.Request, db *
continue
}
//日期类型
if searchItemName == "daterange" && v.GetString("type") == "time" {
//fmt.Println(req.Form["daterange"])
if len(req.Form["daterange"]) == 1 {
daterange[table+"."+v.GetString("name")+"[<]"] = req.FormValue("daterange")
} else {
if searchItemName == "daterange" {
if v.GetString("type") == "unixtime" {
//fmt.Println(req.Form["daterange"])
if len(req.Form["daterange"]) == 1 {
daterange[table+"."+v.GetString("name")+"[<]"] = req.FormValue("daterange")
} else if len(req.Form["daterange"]) == 2 {
daterange[table+"."+v.GetString("name")+"[<>]"] = ObjToSlice(req.Form["daterange"])
daterange[table+"."+v.GetString("name")+"[<>]"] = ObjToSlice(req.Form["daterange"])
}
}
if v.GetString("type") == "time" {
//fmt.Println(req.Form["daterange"])
if len(req.Form["daterange"]) == 1 {
t := time.Unix(ObjToCeilInt64(req.FormValue("daterange")), 0).Format("2006-01-02 15:04:05")
daterange[table+"."+v.GetString("name")+"[<]"] = t
} else if len(req.Form["daterange"]) == 2 {
t1 := time.Unix(ObjToCeilInt64(req.Form["daterange"][0]), 0).Format("2006-01-02 15:04:05")
t2 := time.Unix(ObjToCeilInt64(req.Form["daterange"][1]), 0).Format("2006-01-02 15:04:05")
daterange[table+"."+v.GetString("name")+"[<>]"] = Slice{t1, t2}
}
}
}
}
@@ -944,11 +961,11 @@ func (that *MakeCode) Search(table string, userData Map, req *http.Request, db *
}
if len(daterange) > 1 {
//if data["AND"] == nil {
data = Map{"AND": Map{"AND": data, "OR": daterange}}
//}else{
// data = Map{"AND": Map{"AND": data, "OR": daterange}}
//}
if data == nil || len(data) == 0 {
data = Map{"OR": daterange}
} else {
data = Map{"AND": Map{"AND": data, "OR": daterange}}
}
}
if len(data) > 1 {