1
This commit is contained in:
parent
9cf96cf800
commit
3ac5b2b0c3
3
app.go
3
app.go
@ -64,6 +64,8 @@ func (this *app) init(userApp UserApp) {
|
||||
_sysLog.init()
|
||||
_tgLog = new(TGLog_)
|
||||
_tgLog.init()
|
||||
_pageQuery = new (pageQuery)
|
||||
_pageQuery.init()
|
||||
_httpCliMgr = new(HttpCliMgr)
|
||||
_httpCliMgr.init()
|
||||
{
|
||||
@ -90,6 +92,7 @@ func (this *app) init(userApp UserApp) {
|
||||
func (this *app) unInit() {
|
||||
this.chGoLoopTimerExit <- 1
|
||||
_httpCliMgr.unInit()
|
||||
_pageQuery.unInit()
|
||||
_timer.unInit()
|
||||
_timer = nil
|
||||
this.userApp.UnInit()
|
||||
|
46
pagequery.go
46
pagequery.go
@ -30,6 +30,7 @@ type PageQueryFilter interface {
|
||||
And() PageQueryFilter
|
||||
Or() PageQueryFilter
|
||||
Not() PageQueryFilter
|
||||
GetLinkOp() LinkOp
|
||||
GenSql() string
|
||||
}
|
||||
|
||||
@ -45,11 +46,11 @@ type PageQueryOne struct {
|
||||
type PageQueryComp struct {
|
||||
linkOp LinkOp
|
||||
not bool
|
||||
subFilters []*PageQueryOne
|
||||
subFilters []PageQueryFilter
|
||||
}
|
||||
|
||||
type PageQueryParam struct {
|
||||
Filter []PageQueryFilter
|
||||
Filter *PageQueryComp
|
||||
OrderBy string
|
||||
}
|
||||
|
||||
@ -62,7 +63,13 @@ func (this *PageQueryParam) genSql() string {
|
||||
return sql
|
||||
}
|
||||
|
||||
func (this *pageQuery) Like(fieldName string, val string) *PageQueryOne {
|
||||
func (this *pageQuery) init() {
|
||||
}
|
||||
|
||||
func (this *pageQuery) unInit() {
|
||||
}
|
||||
|
||||
func (this *pageQuery) Like(fieldName string, val string) PageQueryFilter {
|
||||
f := &PageQueryOne{
|
||||
cond: QC_LIKE,
|
||||
fieldName: fieldName,
|
||||
@ -70,7 +77,7 @@ func (this *pageQuery) Like(fieldName string, val string) *PageQueryOne {
|
||||
return f
|
||||
}
|
||||
|
||||
func (this *pageQuery) EQ(fieldName string, val string) *PageQueryOne {
|
||||
func (this *pageQuery) EQ(fieldName string, val string) PageQueryFilter {
|
||||
f := &PageQueryOne{
|
||||
cond: QC_EQ,
|
||||
fieldName: fieldName,
|
||||
@ -78,7 +85,7 @@ func (this *pageQuery) EQ(fieldName string, val string) *PageQueryOne {
|
||||
return f
|
||||
}
|
||||
|
||||
func (this *pageQuery) LT(fieldName string, val string) *PageQueryOne {
|
||||
func (this *pageQuery) LT(fieldName string, val string) PageQueryFilter {
|
||||
f := &PageQueryOne{
|
||||
cond: QC_LT,
|
||||
fieldName: fieldName,
|
||||
@ -86,7 +93,7 @@ func (this *pageQuery) LT(fieldName string, val string) *PageQueryOne {
|
||||
return f
|
||||
}
|
||||
|
||||
func (this *pageQuery) LE(fieldName string, val string) *PageQueryOne {
|
||||
func (this *pageQuery) LE(fieldName string, val string) PageQueryFilter {
|
||||
f := &PageQueryOne{
|
||||
cond: QC_LE,
|
||||
fieldName: fieldName,
|
||||
@ -94,7 +101,7 @@ func (this *pageQuery) LE(fieldName string, val string) *PageQueryOne {
|
||||
return f
|
||||
}
|
||||
|
||||
func (this *pageQuery) GT(fieldName string, val string) *PageQueryOne {
|
||||
func (this *pageQuery) GT(fieldName string, val string) PageQueryFilter {
|
||||
f := &PageQueryOne{
|
||||
cond: QC_GT,
|
||||
fieldName: fieldName,
|
||||
@ -102,7 +109,7 @@ func (this *pageQuery) GT(fieldName string, val string) *PageQueryOne {
|
||||
return f
|
||||
}
|
||||
|
||||
func (this *pageQuery) GE(fieldName string, val string) *PageQueryOne {
|
||||
func (this *pageQuery) GE(fieldName string, val string) PageQueryFilter {
|
||||
f := &PageQueryOne{
|
||||
cond: QC_GE,
|
||||
fieldName: fieldName,
|
||||
@ -110,7 +117,7 @@ func (this *pageQuery) GE(fieldName string, val string) *PageQueryOne {
|
||||
return f
|
||||
}
|
||||
|
||||
func (this *pageQuery) Custom(fieldName string, val string) *PageQueryOne {
|
||||
func (this *pageQuery) Custom(fieldName string, val string) PageQueryFilter {
|
||||
f := &PageQueryOne{
|
||||
cond: QC_CUSTOM,
|
||||
fieldName: fieldName,
|
||||
@ -118,13 +125,13 @@ func (this *pageQuery) Custom(fieldName string, val string) *PageQueryOne {
|
||||
return f
|
||||
}
|
||||
|
||||
func (this *pageQuery) Comp(subFilters []*PageQueryOne) *PageQueryComp {
|
||||
func (this *pageQuery) Comp(subFilters ...PageQueryFilter) PageQueryFilter {
|
||||
f := &PageQueryComp{
|
||||
subFilters: subFilters}
|
||||
return f
|
||||
}
|
||||
|
||||
func (this *PageQueryOne) IgnoreEmpy() *PageQueryOne {
|
||||
func (this *PageQueryOne) IgnoreEmpy() PageQueryFilter {
|
||||
this.ignoreEmpty = true
|
||||
return this
|
||||
}
|
||||
@ -145,6 +152,10 @@ func (this *PageQueryOne) Not() PageQueryFilter {
|
||||
return this
|
||||
}
|
||||
|
||||
func (this *PageQueryOne) GetLinkOp() LinkOp {
|
||||
return this.linkOp
|
||||
}
|
||||
|
||||
func (this *PageQueryOne) GenSql() string {
|
||||
if this.ignoreEmpty && this.val == "" {
|
||||
return " "
|
||||
@ -197,12 +208,23 @@ func (this *PageQueryComp) Not() PageQueryFilter {
|
||||
return this
|
||||
}
|
||||
|
||||
func (this *PageQueryComp) GetLinkOp() LinkOp {
|
||||
return this.linkOp
|
||||
}
|
||||
|
||||
func (this *PageQueryComp) GenSql() string {
|
||||
if len(this.subFilters) <= 0 {
|
||||
return " "
|
||||
}
|
||||
sql := " "
|
||||
for _, filter := range this.subFilters {
|
||||
for index, filter := range this.subFilters {
|
||||
if index == 0 {
|
||||
if filter.GetLinkOp() == LK_AND {
|
||||
sql = " 1=1 "
|
||||
} else {
|
||||
sql = " 1<>1 "
|
||||
}
|
||||
}
|
||||
sql += filter.GenSql()
|
||||
}
|
||||
if this.not {
|
||||
|
Loading…
x
Reference in New Issue
Block a user