Skip to content
Projects
Groups
Snippets
Help
This project
Loading...
Sign in / Register
Toggle navigation
F
familyMart_takeaway
Overview
Overview
Details
Activity
Cycle Analytics
Repository
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Charts
Issues
0
Issues
0
List
Board
Labels
Milestones
Merge Requests
0
Merge Requests
0
CI / CD
CI / CD
Pipelines
Jobs
Schedules
Charts
Wiki
Wiki
Snippets
Snippets
Members
Collapse sidebar
Close sidebar
Activity
Graph
Charts
Create a new issue
Jobs
Commits
Issue Boards
Open sidebar
guanghui.cui
familyMart_takeaway
Commits
b310872f
Commit
b310872f
authored
Mar 20, 2018
by
guanghui.cui
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
初始化返回值修改
parent
5bc5d2c1
Hide whitespace changes
Inline
Side-by-side
Showing
2 changed files
with
35 additions
and
41 deletions
+35
-41
src/JsonModule.cpp
+32
-39
src/main.cpp
+3
-2
No files found.
src/JsonModule.cpp
View file @
b310872f
...
...
@@ -547,54 +547,47 @@ bool JsonModule::getInitBackData(IN const char* inJson,OUT std::string& outJson)
return
false
;
}
if
(
document
.
HasMember
(
"
fm_cmd
"
))
if
(
document
.
HasMember
(
"
code
"
))
{
rapidjson
::
Value
&
fm_cmd
=
document
[
"fm_cmd"
];
int
reqType
=
fm_cmd
.
GetInt
();
if
(
reqType
==
REQUEST_TYPE_INIT
){
int
status_code
=
0
,
autoconfirm
=
0
;
std
::
string
default_pos
,
msg
;
if
(
document
.
HasMember
(
"status_code"
)){
status_code
=
document
[
"status_code"
].
GetInt
();
}
if
(
document
.
HasMember
(
"autoconfirm"
)){
autoconfirm
=
document
[
"autoconfirm"
].
GetInt
();
}
if
(
document
.
HasMember
(
"default_pos"
)){
default_pos
=
document
[
"default_pos"
].
GetString
();
}
int
status_code
=
0
,
autoconfirm
=
0
;
std
::
string
default_pos
,
msg
;
if
(
100
==
status_code
){
msg
=
"success"
;
}
else
{
msg
=
"failed"
;
}
rapidjson
::
Value
&
code
=
document
[
"code"
];
status_code
=
atoi
(
code
.
GetString
());
rapidjson
::
StringBuffer
buffer
;
rapidjson
::
Writer
<
rapidjson
::
StringBuffer
>
writer
(
buffer
);
writer
.
StartObject
();
if
(
document
.
HasMember
(
"OrderConfirmType"
)){
autoconfirm
=
document
[
"OrderConfirmType"
].
GetInt
();
}
if
(
document
.
HasMember
(
"OrderPushPosIndex"
)){
default_pos
=
document
[
"OrderPushPosIndex"
].
GetString
();
}
writer
.
Key
(
"status_code"
);
writer
.
Int
(
status_code
);
if
(
document
.
HasMember
(
"message"
)){
msg
=
document
[
"message"
].
GetString
();
}
writer
.
Key
(
"autoconfirm"
);
writer
.
Int
(
autoconfirm
);
rapidjson
::
StringBuffer
buffer
;
rapidjson
::
Writer
<
rapidjson
::
StringBuffer
>
writer
(
buffer
);
writer
.
StartObject
();
writer
.
Key
(
"default_pos
"
);
writer
.
String
(
default_pos
.
c_str
()
);
writer
.
Key
(
"status_code
"
);
writer
.
Int
(
status_code
);
writer
.
Key
(
"msg
"
);
writer
.
String
(
msg
.
c_str
()
);
writer
.
Key
(
"autoconfirm
"
);
writer
.
Int
(
autoconfirm
);
writer
.
EndObject
();
writer
.
Key
(
"default_pos"
);
writer
.
String
(
default_pos
.
c_str
());
outJson
=
buffer
.
GetString
();
return
true
;
}
writer
.
Key
(
"msg"
);
writer
.
String
(
msg
.
c_str
());
writer
.
EndObject
();
outJson
=
buffer
.
GetString
();
return
true
;
}
return
false
;
}
...
...
src/main.cpp
View file @
b310872f
...
...
@@ -154,6 +154,7 @@ void* retry_send_pos_func(void* arg)
bRetryThreadRunning
=
true
;
std
::
vector
<
orderSendFailedObj
>::
iterator
Iter
;
for
(
Iter
=
vecFailedOrders
.
begin
();
Iter
!=
vecFailedOrders
.
end
();)
{
Iter
=
vecFailedOrders
.
begin
();
//一直发送第一个,直到发送成功
std
::
string
back_json
;
if
(
order_send_to_pos
((
*
Iter
).
order_json
,
back_json
)){
char
lpSql
[
200
]
=
{
0
};
...
...
@@ -164,13 +165,13 @@ void* retry_send_pos_func(void* arg)
LOG
(
ERROR
)
<<
"remove failed:"
<<
lpSql
;
}
vecFailedOrders
.
erase
(
Iter
);
//Iter为删除元素的下一个元素的迭代器
Iter
=
vecFailedOrders
.
begin
();
vecFailedOrders
.
erase
(
Iter
);
//Iter为删除元素的下一个元素的迭代器
}
sleep
(
1
);
//等待1s,再次尝试发送
}
LOG
(
INFO
)
<<
"retry_send_pos_func thread done"
;
bRetryThreadRunning
=
false
;
pthread_detach
(
pthread_self
());
}
...
...
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