Skip to content
Projects
Groups
Snippets
Help
Loading...
Help
Support
Keyboard shortcuts
?
Submit feedback
Contribute to GitLab
Sign in
Toggle navigation
A
apaas-meshproxy
Project overview
Project overview
Details
Activity
Releases
Repository
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Issues
0
Issues
0
List
Boards
Labels
Milestones
Merge Requests
0
Merge Requests
0
CI / CD
CI / CD
Pipelines
Jobs
Schedules
Analytics
Analytics
CI / CD
Repository
Value Stream
Wiki
Wiki
Snippets
Snippets
Members
Members
Collapse sidebar
Close sidebar
Activity
Graph
Create a new issue
Jobs
Commits
Issue Boards
Open sidebar
gzga-jzapi
apaas-meshproxy
Commits
35da4089
Commit
35da4089
authored
Jun 22, 2020
by
张宇迪
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
修改字段过滤
parent
31add993
Changes
2
Hide whitespace changes
Inline
Side-by-side
Showing
2 changed files
with
57 additions
and
145 deletions
+57
-145
src/service/field.go
src/service/field.go
+11
-8
src/tools/dataconvertutil/dataconvertutil.go
src/tools/dataconvertutil/dataconvertutil.go
+46
-137
No files found.
src/service/field.go
View file @
35da4089
...
@@ -163,8 +163,8 @@ func ApplyCallCounts(proxyData model.ProxyData) (err error) {
...
@@ -163,8 +163,8 @@ func ApplyCallCounts(proxyData model.ProxyData) (err error) {
fmt
.
Println
(
err
.
Error
())
fmt
.
Println
(
err
.
Error
())
return
return
}
}
date
:=
time
.
Now
()
.
Format
(
config
.
LocalDateTimeFormat
)
//
date := time.Now().Format(config.LocalDateTimeFormat)
err
=
redis
.
RPush
(
fmt
.
Sprintf
(
"%s
-%d"
,
config
.
ApplyTag
,
proxyData
.
Apply_id
),
[]
byte
(
date
)
)
err
=
redis
.
RPush
(
fmt
.
Sprintf
(
"%s
"
,
config
.
ApplyTag
),
proxyData
.
Apply_id
)
fmt
.
Println
(
"rpush data to list failed:"
,
err
)
fmt
.
Println
(
"rpush data to list failed:"
,
err
)
return
return
}
}
...
@@ -173,13 +173,15 @@ func ApplyCallCounts(proxyData model.ProxyData) (err error) {
...
@@ -173,13 +173,15 @@ func ApplyCallCounts(proxyData model.ProxyData) (err error) {
func
FiledFilter
(
proxyData
model
.
ProxyData
,
respbody
[]
byte
)
interface
{}
{
func
FiledFilter
(
proxyData
model
.
ProxyData
,
respbody
[]
byte
)
interface
{}
{
fields
:=
[]
request
.
ServiceField
{}
fields
:=
[]
request
.
ServiceField
{}
fields
=
dataconvertutil
.
GetResponseField
(
proxyData
.
ResFields
)
fields
=
dataconvertutil
.
GetResponseField
(
proxyData
.
ResFields
)
model
,
arrmodel
:=
dataconvertutil
.
ConvertJson
(
fields
)
_
,
arrmodel
:=
dataconvertutil
.
ConvertJson
(
fields
)
realData
:=
make
(
map
[
string
]
interface
{})
realData
:=
make
(
map
[
string
]
interface
{})
json
.
Unmarshal
(
respbody
,
&
realData
)
json
.
Unmarshal
(
respbody
,
&
realData
)
if
model
!=
nil
&&
len
(
model
)
!=
0
{
if
arrmodel
!=
nil
&&
len
(
arrmodel
)
!=
0
&&
len
(
realData
)
!=
0
{
return
Change
(
model
,
realData
)
if
fields
[
0
]
.
Type
==
"array"
{
}
else
if
arrmodel
!=
nil
&&
len
(
arrmodel
)
!=
0
{
return
Change
(
arrmodel
,
realData
)
return
Change
(
model
,
realData
)
}
else
{
return
Change
(
arrmodel
[
0
],
realData
)
}
}
}
return
respbody
return
respbody
}
}
...
@@ -194,7 +196,8 @@ func Change(model interface{}, returnData interface{}) interface{} {
...
@@ -194,7 +196,8 @@ func Change(model interface{}, returnData interface{}) interface{} {
for
k1
,
v1
:=
range
model
.
(
map
[
string
]
interface
{})
{
for
k1
,
v1
:=
range
model
.
(
map
[
string
]
interface
{})
{
if
k
==
k1
{
if
k
==
k1
{
flag
=
true
flag
=
true
Change
(
v
,
v1
)
//Change(v, v1)
Change
(
v1
,
v
)
}
}
}
}
// 删除属性
// 删除属性
...
...
src/tools/dataconvertutil/dataconvertutil.go
View file @
35da4089
...
@@ -15,88 +15,45 @@ func ConvertJson(fields []request.ServiceField) (map[string]interface{}, []inter
...
@@ -15,88 +15,45 @@ func ConvertJson(fields []request.ServiceField) (map[string]interface{}, []inter
return
m
,
n
return
m
,
n
}
}
for
_
,
field
:=
range
fields
{
for
_
,
field
:=
range
fields
{
if
field
.
Selected
==
1
&&
field
.
Type
==
"object"
{
if
field
.
Selected
==
1
&&
(
field
.
Type
==
"object"
||
field
.
Type
==
"array"
)
{
mm
,
nn
:=
ConvertJson
(
field
.
Children
)
if
field
.
Name
==
""
{
if
field
.
Name
==
""
{
mm
,
nn
:=
ConvertJson
(
field
.
Children
)
if
len
(
nn
)
!=
0
{
if
len
(
nn
)
!=
0
{
n
=
append
(
n
,
nn
)
n
=
append
(
n
,
nn
)
}
else
{
}
else
{
n
=
append
(
n
,
mm
)
n
=
append
(
n
,
mm
)
}
}
}
else
{
}
else
{
mm
,
nn
:=
ConvertJson
(
field
.
Children
)
if
len
(
nn
)
!=
0
{
if
len
(
nn
)
!=
0
{
m
[
field
.
Name
]
=
nn
m
[
field
.
Name
]
=
nn
}
else
{
}
else
{
m
[
field
.
Name
]
=
mm
m
[
field
.
Name
]
=
mm
}
}
}
}
}
else
if
field
.
Selected
==
1
&&
(
field
.
Type
==
"string"
||
field
.
Type
==
"file"
||
field
.
Type
==
"text"
)
{
}
else
if
field
.
Selected
==
1
&&
field
.
Type
==
"array"
{
if
field
.
Name
==
""
{
if
len
(
field
.
Children
)
>
0
{
n
=
append
(
n
,
field
.
Example
)
//判断第一个元素是否为对象 如果为对象则名称必定为空
//第一个元素 要么为对象,要么为基本类型 要么为数组
if
field
.
Children
[
0
]
.
Type
==
"object"
||
field
.
Children
[
0
]
.
Type
==
"array"
{
mm
,
nn
:=
ConvertJson
(
field
.
Children
[
0
]
.
Children
)
if
field
.
Name
==
""
{
if
len
(
nn
)
!=
0
{
n
=
append
(
n
,
nn
)
}
else
{
n
=
append
(
n
,
mm
)
}
}
else
{
if
len
(
nn
)
!=
0
{
m
[
field
.
Name
]
=
nn
}
else
{
m
[
field
.
Name
]
=
mm
}
}
}
else
{
if
field
.
Name
!=
""
{
var
aaa
[]
interface
{}
m
[
field
.
Name
]
=
aaa
}
else
{
if
len
(
field
.
Children
)
>
0
{
switch
field
.
Children
[
0
]
.
Type
{
case
"string"
,
"text"
,
"file"
:
n
=
append
(
n
,
field
.
Children
[
0
]
.
Example
)
case
"int"
:
n
=
append
(
n
,
tools
.
ParseInt
(
field
.
Children
[
0
]
.
Example
,
0
))
case
"float"
:
n
=
append
(
n
,
tools
.
ParseFloat64
(
field
.
Children
[
0
]
.
Example
,
1.00
))
case
"boolean"
:
n
=
append
(
n
,
true
)
case
"array"
:
n
=
append
(
n
,
[]
interface
{}{
field
.
Children
[
0
]
.
Example
})
default
:
var
cc
interface
{}
n
=
append
(
n
,
cc
)
}
}
else
{
var
cc
interface
{}
n
=
append
(
n
,
cc
)
}
}
}
}
else
{
}
else
{
if
field
.
Name
!=
""
{
m
[
field
.
Name
]
=
field
.
Example
m
[
field
.
Name
]
=
[]
interface
{}{
field
.
Example
}
}
}
else
{
}
else
if
field
.
Selected
==
1
&&
field
.
Type
==
"int"
{
var
cc
interface
{}
if
field
.
Name
==
""
{
n
=
append
(
n
,
cc
)
n
=
append
(
n
,
field
.
Example
)
}
}
else
{
m
[
field
.
Name
]
=
tools
.
ParseInt
(
field
.
Example
,
0
)
}
}
else
if
field
.
Selected
==
1
&&
field
.
Type
==
"float"
{
if
field
.
Name
==
""
{
n
=
append
(
n
,
field
.
Example
)
}
else
{
m
[
field
.
Name
]
=
tools
.
ParseFloat64
(
field
.
Example
,
0.0
)
}
}
else
if
field
.
Selected
==
1
&&
field
.
Type
==
"bool"
{
if
field
.
Name
==
""
{
n
=
append
(
n
,
field
.
Example
)
}
else
{
m
[
field
.
Name
]
=
true
}
}
}
else
if
field
.
Selected
==
1
{
m
[
field
.
Name
]
=
field
.
Example
}
}
}
}
return
m
,
n
return
m
,
n
...
@@ -110,96 +67,48 @@ func ConvertJsonAll(fields []request.ServiceField) (map[string]interface{}, []in
...
@@ -110,96 +67,48 @@ func ConvertJsonAll(fields []request.ServiceField) (map[string]interface{}, []in
return
m
,
n
return
m
,
n
}
}
for
_
,
field
:=
range
fields
{
for
_
,
field
:=
range
fields
{
if
field
.
Type
==
"object"
{
if
field
.
Type
==
"object"
||
field
.
Type
==
"array"
{
mm
,
nn
:=
ConvertJsonAll
(
field
.
Children
)
if
field
.
Name
==
""
{
if
field
.
Name
==
""
{
mm
,
nn
:=
ConvertJsonAll
(
field
.
Children
)
if
len
(
nn
)
!=
0
{
if
len
(
nn
)
!=
0
{
n
=
append
(
n
,
nn
)
n
=
append
(
n
,
nn
)
}
else
{
}
else
{
n
=
append
(
n
,
mm
)
n
=
append
(
n
,
mm
)
}
}
}
else
{
}
else
{
mm
,
nn
:=
ConvertJsonAll
(
field
.
Children
)
if
len
(
nn
)
!=
0
{
if
len
(
nn
)
!=
0
{
m
[
field
.
Name
]
=
nn
m
[
field
.
Name
]
=
nn
}
else
{
}
else
{
m
[
field
.
Name
]
=
mm
m
[
field
.
Name
]
=
mm
}
}
}
}
}
else
if
field
.
Type
==
"string"
||
field
.
Type
==
"file"
||
field
.
Type
==
"text"
{
}
else
if
field
.
Type
==
"array"
{
if
field
.
Name
==
""
{
if
len
(
field
.
Children
)
>
0
{
n
=
append
(
n
,
field
.
Example
)
//判断第一个元素是否为对象 如果为对象则名称必定为空
//第一个元素 要么为对象,要么为基本类型 要么为数组
if
field
.
Children
[
0
]
.
Type
==
"object"
||
field
.
Children
[
0
]
.
Type
==
"array"
{
mm
,
nn
:=
ConvertJsonAll
(
field
.
Children
[
0
]
.
Children
)
if
field
.
Name
==
""
{
if
len
(
nn
)
!=
0
{
n
=
append
(
n
,
nn
)
}
else
{
n
=
append
(
n
,
mm
)
}
}
else
{
if
len
(
nn
)
!=
0
{
m
[
field
.
Name
]
=
nn
}
else
{
m
[
field
.
Name
]
=
mm
}
}
}
else
{
if
field
.
Name
!=
""
{
var
aaa
[]
interface
{}
m
[
field
.
Name
]
=
aaa
}
else
{
if
len
(
field
.
Children
)
>
0
{
switch
field
.
Children
[
0
]
.
Type
{
case
"string"
,
"text"
,
"file"
:
n
=
append
(
n
,
field
.
Children
[
0
]
.
Example
)
case
"int"
:
n
=
append
(
n
,
tools
.
ParseInt
(
field
.
Children
[
0
]
.
Example
,
0
))
case
"float"
:
n
=
append
(
n
,
tools
.
ParseFloat64
(
field
.
Children
[
0
]
.
Example
,
1.00
))
case
"boolean"
:
n
=
append
(
n
,
true
)
case
"array"
:
n
=
append
(
n
,
[]
interface
{}{
field
.
Children
[
0
]
.
Example
})
default
:
var
cc
interface
{}
n
=
append
(
n
,
cc
)
}
}
else
{
var
cc
interface
{}
n
=
append
(
n
,
cc
)
}
}
}
}
else
{
}
else
{
if
field
.
Name
!=
""
{
m
[
field
.
Name
]
=
field
.
Example
m
[
field
.
Name
]
=
[]
interface
{}{
field
.
Example
}
}
else
{
var
cc
interface
{}
n
=
append
(
n
,
cc
)
}
}
}
}
else
if
field
.
Type
==
"string"
||
field
.
Type
==
"file"
{
m
[
field
.
Name
]
=
field
.
Example
}
else
if
field
.
Type
==
"int"
{
}
else
if
field
.
Type
==
"int"
{
m
[
field
.
Name
]
=
tools
.
ParseInt
(
field
.
Example
,
0
)
if
field
.
Name
==
""
{
n
=
append
(
n
,
field
.
Example
)
}
else
{
m
[
field
.
Name
]
=
tools
.
ParseInt
(
field
.
Example
,
0
)
}
}
else
if
field
.
Type
==
"float"
{
}
else
if
field
.
Type
==
"float"
{
m
[
field
.
Name
]
=
tools
.
ParseFloat64
(
field
.
Example
,
0.0
)
if
field
.
Name
==
""
{
n
=
append
(
n
,
field
.
Example
)
}
else
{
m
[
field
.
Name
]
=
tools
.
ParseFloat64
(
field
.
Example
,
0.0
)
}
}
else
if
field
.
Type
==
"bool"
{
}
else
if
field
.
Type
==
"bool"
{
m
[
field
.
Name
]
=
true
if
field
.
Name
==
""
{
n
=
append
(
n
,
field
.
Example
)
}
else
{
m
[
field
.
Name
]
=
true
}
}
}
}
}
return
m
,
n
return
m
,
n
}
}
...
...
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment