Skip to content
Projects
Groups
Snippets
Help
This project
Loading...
Sign in / Register
Toggle navigation
F
fmtakeout
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
李定达
fmtakeout
Commits
427e28cc
Commit
427e28cc
authored
Jun 21, 2018
by
李定达
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
1.对接获取服务器地址接口并测试
parent
25b218e8
Show whitespace changes
Inline
Side-by-side
Showing
7 changed files
with
109 additions
and
15 deletions
+109
-15
takeout/base/Network/billSocket.cpp
+2
-2
takeout/base/Network/billSocket.h
+1
-1
takeout/control/ordergetwork.h
+0
-1
takeout/control/orderpushwork.cpp
+76
-4
takeout/control/orderpushwork.h
+8
-1
takeout/main.cpp
+11
-6
takeout/preDefine.h
+11
-0
No files found.
takeout/base/Network/billSocket.cpp
View file @
427e28cc
...
@@ -17,7 +17,7 @@ BillSocket::~BillSocket()
...
@@ -17,7 +17,7 @@ BillSocket::~BillSocket()
}
}
bool
BillSocket
::
S_Request
(
const
QJsonObject
&
requestJson
,
QJsonObject
&
recvJson
,
QString
url
,
QString
&
error
)
bool
BillSocket
::
S_Request
(
const
QJsonObject
&
requestJson
,
QJsonObject
&
recvJson
,
QString
url
,
QString
&
error
,
QByteArray
contentype
)
{
{
QNetworkAccessManager
m_networkManger
;
QNetworkAccessManager
m_networkManger
;
...
@@ -28,7 +28,7 @@ bool BillSocket::S_Request(const QJsonObject &requestJson, QJsonObject &recvJson
...
@@ -28,7 +28,7 @@ bool BillSocket::S_Request(const QJsonObject &requestJson, QJsonObject &recvJson
QNetworkRequest
networkRequest
;
QNetworkRequest
networkRequest
;
networkRequest
.
setUrl
(
url
);
networkRequest
.
setUrl
(
url
);
networkRequest
.
setRawHeader
(
"Content-Type"
,
"text/json"
);
networkRequest
.
setRawHeader
(
"Content-Type"
,
contentype
);
QByteArray
sendArray
=
QJsonDocument
(
requestJson
).
toJson
(
QJsonDocument
::
Compact
);
QByteArray
sendArray
=
QJsonDocument
(
requestJson
).
toJson
(
QJsonDocument
::
Compact
);
QEventLoop
eventLoop
;
QEventLoop
eventLoop
;
...
...
takeout/base/Network/billSocket.h
View file @
427e28cc
...
@@ -15,7 +15,7 @@ public:
...
@@ -15,7 +15,7 @@ public:
bool
Request
(
const
QJsonObject
&
requestJson
,
QJsonObject
&
recvJson
,
QString
url
,
QString
&
error
);
bool
Request
(
const
QJsonObject
&
requestJson
,
QJsonObject
&
recvJson
,
QString
url
,
QString
&
error
);
static
bool
S_Request
(
const
QJsonObject
&
requestJson
,
QJsonObject
&
recvJson
,
QString
url
,
QString
&
error
);
static
bool
S_Request
(
const
QJsonObject
&
requestJson
,
QJsonObject
&
recvJson
,
QString
url
,
QString
&
error
,
QByteArray
contentype
=
QByteArray
(
"text/json"
)
);
private
:
private
:
QNetworkAccessManager
m_networkManger
;
QNetworkAccessManager
m_networkManger
;
//QNetworkRequest m_networkRequest;
//QNetworkRequest m_networkRequest;
...
...
takeout/control/ordergetwork.h
View file @
427e28cc
...
@@ -65,7 +65,6 @@ public:
...
@@ -65,7 +65,6 @@ public:
void
setUrl
(
const
QString
&
url
);
void
setUrl
(
const
QString
&
url
);
void
setAutoconfirm
(
const
QString
&
autoconfirm
);
void
setAutoconfirm
(
const
QString
&
autoconfirm
);
signals
:
signals
:
void
quit
();
void
quit
();
...
...
takeout/control/orderpushwork.cpp
View file @
427e28cc
...
@@ -3,11 +3,15 @@
...
@@ -3,11 +3,15 @@
#include <QStringList>
#include <QStringList>
#include <QSslConfiguration>
#include <QSslConfiguration>
#include <QTimer>
#include <QTimer>
#include <QJsonObject>
#include <QJsonArray>
#include "preDefine.h"
#include "preDefine.h"
#include "event/posevent.h"
#include "event/posevent.h"
#include "event/fmapplication.h"
#include "event/fmapplication.h"
#include "base/Network/billSocket.h"
#include "QsLog.h"
#include "QsLog.h"
OrderPushWork
::
OrderPushWork
(
QObject
*
parent
)
:
QObject
(
parent
)
OrderPushWork
::
OrderPushWork
(
QObject
*
parent
)
:
QObject
(
parent
)
...
@@ -16,6 +20,7 @@ OrderPushWork::OrderPushWork(QObject *parent) : QObject(parent)
...
@@ -16,6 +20,7 @@ OrderPushWork::OrderPushWork(QObject *parent) : QObject(parent)
_stopflag
=
1
;
_stopflag
=
1
;
_server_index
=
-
1
;
_server_index
=
-
1
;
_token
=
QString
(
""
);
_token
=
QString
(
""
);
_serurl
.
clear
();
FMApplication
::
subscibeEvent
(
this
,
PosEvent
::
s_token_change
);
FMApplication
::
subscibeEvent
(
this
,
PosEvent
::
s_token_change
);
}
}
...
@@ -35,10 +40,10 @@ void OrderPushWork::setStoreinfo(const QVariantMap &storeinfo)
...
@@ -35,10 +40,10 @@ void OrderPushWork::setStoreinfo(const QVariantMap &storeinfo)
_storeinfo
=
storeinfo
;
_storeinfo
=
storeinfo
;
}
}
void
OrderPushWork
::
setServicelist
(
const
QStringList
&
servicelist
)
//
void OrderPushWork::setServicelist(const QStringList &servicelist)
{
//
{
_servicelist
=
servicelist
;
//
_servicelist = servicelist;
}
//
}
QStringList
OrderPushWork
::
servicelist
()
const
QStringList
OrderPushWork
::
servicelist
()
const
{
{
...
@@ -263,6 +268,60 @@ bool OrderPushWork::checkMsgData(const QByteArray &msgdata)
...
@@ -263,6 +268,60 @@ bool OrderPushWork::checkMsgData(const QByteArray &msgdata)
return
false
;
return
false
;
}
}
bool
OrderPushWork
::
GetServiceList
()
{
if
(
_serurl
.
isEmpty
())
{
QLOG_ERROR
()
<<
"_serurl is empty"
;
return
false
;
}
QJsonObject
json
;
json
.
insert
(
JSON_KEY_PUSH_PARTNERID
,
_storeinfo
[
JSON_KEY_PARTNERID
].
toString
());
json
.
insert
(
JSON_KEY_PUSH_STOREID
,
_storeinfo
[
JSON_STOREID
].
toString
());
json
.
insert
(
JSON_KEY_PUSH_PROTOCPL
,
QString
(
"0"
));
QLOG_INFO
()
<<
"get service list request json : "
<<
json
;
QString
error
;
QJsonObject
recvjson
;
if
(
!
BillSocket
::
S_Request
(
json
,
recvjson
,
_serurl
,
error
,
QByteArray
(
"application/json"
)))
{
error
=
QString
::
fromLocal8Bit
(
"net work error : "
).
append
(
error
);
QLOG_ERROR
()
<<
"get service list failed : "
<<
error
;
return
false
;
}
QLOG_INFO
()
<<
"recv json : "
<<
recvjson
;
if
(
recvjson
.
contains
(
JSON_KEY_CODE
)
&&
recvjson
[
JSON_KEY_CODE
].
toString
().
compare
(
"ok"
,
Qt
::
CaseInsensitive
)
==
0
&&
recvjson
.
contains
(
JSON_KEY_LISTDATA
)
&&
recvjson
[
JSON_KEY_LISTDATA
].
isArray
())
{
QJsonArray
array
=
recvjson
[
JSON_KEY_LISTDATA
].
toArray
();
for
(
int
i
=
0
;
i
<
array
.
size
();
++
i
)
{
QJsonObject
tmp
=
array
[
i
].
toObject
();
qDebug
()
<<
tmp
;
if
(
tmp
.
contains
(
JSON_KEY_PUSH_PORT
)
&&
tmp
.
contains
(
JSON_KEY_PUSH_HOST
)
&&
!
tmp
[
JSON_KEY_PUSH_HOST
].
toString
().
isEmpty
())
{
QString
tmpsock
=
tmp
[
JSON_KEY_PUSH_HOST
].
toString
();
tmpsock
=
tmpsock
.
append
(
":"
).
append
(
QString
::
number
(
tmp
[
JSON_KEY_PUSH_PORT
].
toInt
()));
_servicelist
.
append
(
tmpsock
);
}
}
}
if
(
_servicelist
.
isEmpty
())
return
false
;
return
true
;
}
bool
OrderPushWork
::
getHost
(
QString
&
ip
,
qint16
&
port
)
bool
OrderPushWork
::
getHost
(
QString
&
ip
,
qint16
&
port
)
{
{
if
(
_servicelist
.
size
()
==
0
)
if
(
_servicelist
.
size
()
==
0
)
...
@@ -302,6 +361,14 @@ void OrderPushWork::workStart()
...
@@ -302,6 +361,14 @@ void OrderPushWork::workStart()
QLOG_INFO
()
<<
"get token success : "
<<
_token
;
QLOG_INFO
()
<<
"get token success : "
<<
_token
;
while
(
!
GetServiceList
()
&&
_stopflag
)
{
QLOG_WARN
()
<<
"GetServiceList failed timeout 10 sec"
;
EVENTWAIT
(
10000
);
}
QLOG_INFO
()
<<
"GetServiceList success : "
<<
_servicelist
;
while
(
_stopflag
)
while
(
_stopflag
)
{
{
do
do
...
@@ -333,6 +400,11 @@ void OrderPushWork::workStart()
...
@@ -333,6 +400,11 @@ void OrderPushWork::workStart()
}
}
}
}
void
OrderPushWork
::
setSerurl
(
const
QString
&
serurl
)
{
_serurl
=
serurl
;
}
void
OrderPushWork
::
setToken
(
const
QString
&
token
)
void
OrderPushWork
::
setToken
(
const
QString
&
token
)
{
{
_token
=
token
;
_token
=
token
;
...
...
takeout/control/orderpushwork.h
View file @
427e28cc
...
@@ -117,7 +117,7 @@ public:
...
@@ -117,7 +117,7 @@ public:
void
setStoreinfo
(
const
QVariantMap
&
storeinfo
);
void
setStoreinfo
(
const
QVariantMap
&
storeinfo
);
void
setServicelist
(
const
QStringList
&
servicelist
);
//
void setServicelist(const QStringList &servicelist);
QStringList
servicelist
()
const
;
QStringList
servicelist
()
const
;
...
@@ -129,6 +129,8 @@ public:
...
@@ -129,6 +129,8 @@ public:
void
setToken
(
const
QString
&
token
);
void
setToken
(
const
QString
&
token
);
void
setSerurl
(
const
QString
&
serurl
);
private
:
private
:
//链接到服务器
//链接到服务器
bool
connectTcpServer
();
bool
connectTcpServer
();
...
@@ -141,6 +143,9 @@ public:
...
@@ -141,6 +143,9 @@ public:
//检查是否有效的MSG
//检查是否有效的MSG
bool
checkMsgData
(
const
QByteArray
&
msgdata
);
bool
checkMsgData
(
const
QByteArray
&
msgdata
);
private
:
bool
GetServiceList
();
public
slots
:
public
slots
:
//推模式入口
//推模式入口
void
workStart
();
void
workStart
();
...
@@ -164,6 +169,8 @@ private:
...
@@ -164,6 +169,8 @@ private:
QString
_token
;
QString
_token
;
//token 锁
//token 锁
QMutex
_token_lock
;
QMutex
_token_lock
;
//获取服务器列表地址
QString
_serurl
;
};
};
...
...
takeout/main.cpp
View file @
427e28cc
...
@@ -42,13 +42,17 @@ int main(int argc, char *argv[])
...
@@ -42,13 +42,17 @@ int main(int argc, char *argv[])
map
.
insert
(
JSON_KEY_PWD
,
"beiguo_saas"
);
map
.
insert
(
JSON_KEY_PWD
,
"beiguo_saas"
);
map
.
insert
(
JSON_KEY_PARTNERID
,
"1585"
);
map
.
insert
(
JSON_KEY_PARTNERID
,
"1585"
);
//map.insert(JSON_KEY_PARTNERID, "song_test");
//map.insert(JSON_STOREID, "test");
pwork
.
setStoreinfo
(
map
);
pwork
.
setStoreinfo
(
map
);
QStringList
list
;
//
QStringList list;
list
.
append
(
"118.89.167.51:9083"
);
//
list.append("118.89.167.51:9083");
pwork
.
setServicelist
(
list
);
//pwork.setServicelist(list);
pwork
.
setSerurl
(
"http://118.89.167.51:9100/gateway?redirect_url=http://10.20.10.106:9140/queryIdleServer&access_token=7705bf51-0832-49e3-8a3d-ac9a57ff0d4b&bf_ver=1"
);
QObject
::
connect
(
&
thread
,
&
QThread
::
started
,
&
pwork
,
&
OrderPushWork
::
workStart
);
QObject
::
connect
(
&
thread
,
&
QThread
::
started
,
&
pwork
,
&
OrderPushWork
::
workStart
);
...
@@ -177,17 +181,18 @@ int main(int argc, char *argv[])
...
@@ -177,17 +181,18 @@ int main(int argc, char *argv[])
//work.setUrl(QString("http://118.89.167.51:9100//gateway?action=%1&access_token=%2&ver=%3&sign=%4"));
//work.setUrl(QString("http://118.89.167.51:9100//gateway?action=%1&access_token=%2&ver=%3&sign=%4"));
work
.
setUrl
(
geturl
);
work
.
setUrl
(
geturl
);
//work.setSerurl(pushurl);
work
.
setAutoconfirm
(
autoconf
);
work
.
setAutoconfirm
(
autoconf
);
work
.
setStoreinfo
(
map
);
work
.
setStoreinfo
(
map
);
work
.
setTimeout
(
180000
);
work
.
setTimeout
(
180000
);
QStringList
list
;
//
QStringList list;
//list.append("118.89.167.51:9083");
//list.append("118.89.167.51:9083");
list
.
append
(
pushurl
);
//
list.append(pushurl);
pwork
.
setStoreinfo
(
map
);
pwork
.
setStoreinfo
(
map
);
pwork
.
setSer
vicelist
(
list
);
pwork
.
setSer
url
(
pushurl
);
loac
.
moveToThread
(
&
thread
);
loac
.
moveToThread
(
&
thread
);
work
.
moveToThread
(
&
thread
);
work
.
moveToThread
(
&
thread
);
...
...
takeout/preDefine.h
View file @
427e28cc
...
@@ -120,6 +120,15 @@
...
@@ -120,6 +120,15 @@
#define JSON_KEY_VERSION "ver"
#define JSON_KEY_VERSION "ver"
#define JSON_KEY_PARTNERID "partner_id"
#define JSON_KEY_PARTNERID "partner_id"
#define JSON_KEY_PUSH_PARTNERID "partnerId"
#define JSON_KEY_PUSH_STOREID "storeId"
#define JSON_KEY_PUSH_PROTOCPL "protocol"
#define JSON_KEY_PUSH_PORT "port"
#define JSON_KEY_PUSH_HOST "host"
#define JSON_KEY_PUSH_URL "url"
#define JSON_KEY_USERID "user_id"
#define JSON_KEY_USERID "user_id"
#define JSON_KEY_PWD "pwd"
#define JSON_KEY_PWD "pwd"
#define JSON_KEY_TIMESTAMP "timestamp"
#define JSON_KEY_TIMESTAMP "timestamp"
...
@@ -142,6 +151,8 @@
...
@@ -142,6 +151,8 @@
#define JSON_KEY_TOKEN "token"
#define JSON_KEY_TOKEN "token"
#define JSON_KEY_REASON "reason"
#define JSON_KEY_REASON "reason"
#define JSON_KEY_LISTDATA "listData"
#define JSON_KEY_ORDERID "order_id"
#define JSON_KEY_ORDERID "order_id"
#define JSON_KEY_REASONCODE "reason_code"
#define JSON_KEY_REASONCODE "reason_code"
#define JSON_KEY_REASON "reason"
#define JSON_KEY_REASON "reason"
...
...
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