Skip to content
Projects
Groups
Snippets
Help
This project
Loading...
Sign in / Register
Toggle navigation
T
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
shuai.liu
takeaway
Commits
c4681ec8
Commit
c4681ec8
authored
Jul 25, 2018
by
刘帅
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
1. 处理部分退款,添加退款详情同第三方对接退单商品明细
parent
0c740c8d
Hide whitespace changes
Inline
Side-by-side
Showing
8 changed files
with
107 additions
and
12 deletions
+107
-12
component/process.cpp
+9
-2
component/tcpsocket.cpp
+8
-2
fmTakeaway/controls/flowControl.cpp
+49
-1
fmTakeaway/controls/flowControl.h
+6
-0
fmTakeaway/detailform.cpp
+7
-0
fmTakeaway/mainwindow.cpp
+17
-7
fmTakeaway/tools/dataManage.cpp
+10
-0
fmTakeaway/tools/dataManage.h
+1
-0
No files found.
component/process.cpp
View file @
c4681ec8
...
@@ -58,8 +58,15 @@ QList<QVariantMap> Process::toDstFormat(QJsonDocument docSrc)
...
@@ -58,8 +58,15 @@ QList<QVariantMap> Process::toDstFormat(QJsonDocument docSrc)
if
(
status
==
3
||
status
==
30
||
status
==
100
)
//退款
if
(
status
==
3
||
status
==
30
||
status
==
100
)
//退款
{
{
dstMap
.
insert
(
QString
(
"type"
),
QString
(
"4"
));
if
(
order
[
"refund_status"
].
toInt
()
==
100
&&
order
[
"refund_type"
].
toInt
()
==
2
)
bodyMap
.
insert
(
QString
(
"reason"
),
QString
(
"非码外卖退订"
));
{
dstMap
.
insert
(
QString
(
"type"
),
QString
(
"4"
));
bodyMap
.
insert
(
QString
(
"reason"
),
QString
(
"非码外卖退订"
));
}
else
{
continue
;
}
}
}
else
if
(
status
==
1
||
status
==
2
||
status
==
4
||
status
==
6
||
status
==
200
)
else
if
(
status
==
1
||
status
==
2
||
status
==
4
||
status
==
6
||
status
==
200
)
{
{
...
...
component/tcpsocket.cpp
View file @
c4681ec8
...
@@ -13,8 +13,14 @@ TcpSocket::TcpSocket(QObject *parent): QTcpSocket(parent)
...
@@ -13,8 +13,14 @@ TcpSocket::TcpSocket(QObject *parent): QTcpSocket(parent)
}
}
void
TcpSocket
::
readData
()
void
TcpSocket
::
readData
()
{
{
QByteArray
byteArray
=
readAll
();
QByteArray
byteArray
,
temp
;
temp
=
readAll
();
while
(
!
temp
.
isEmpty
())
{
byteArray
+=
temp
;
temp
=
readAll
();
}
QString
str
(
byteArray
);
QString
str
(
byteArray
);
QLOG_DEBUG
()
<<
(
const
char
*
)
str
.
toUtf8
();
QLOG_DEBUG
()
<<
(
const
char
*
)
str
.
toUtf8
();
...
...
fmTakeaway/controls/flowControl.cpp
View file @
c4681ec8
...
@@ -246,8 +246,14 @@ void FlowControl::_onProcessOrderHandle(const QString& orderId, const QString &o
...
@@ -246,8 +246,14 @@ void FlowControl::_onProcessOrderHandle(const QString& orderId, const QString &o
showAlertForm
(
AlertForm
::
OK
,
QString
(
"%1成功.[%2]"
).
arg
(
operationName
,
order_id
));
showAlertForm
(
AlertForm
::
OK
,
QString
(
"%1成功.[%2]"
).
arg
(
operationName
,
order_id
));
OrderObject
*
orderObj
=
m_ordersMap
.
value
(
order_id
);
OrderObject
*
orderObj
=
m_ordersMap
.
value
(
order_id
);
orderObj
->
status
=
recvObj
[
"status"
].
toInt
();
orderObj
->
status
=
recvObj
[
"status"
].
toInt
();
if
(
orderObj
->
refund_status
==
22
)
orderObj
->
status
=
200
;
//只是为了更新显示 实际服务端返回"status": 0,
emit
updateOrderDisplay
(
orderObj
);
emit
updateOrderDisplay
(
orderObj
);
//处理部分退款
if
(
orderObj
->
refund_status
==
22
&&
recvObj
[
"refund_status"
].
toInt
()
==
100
)
//同意部分退款
{
partialRefund
(
order_id
);
}
onSucessful
();
onSucessful
();
}
else
}
else
{
{
...
@@ -322,6 +328,48 @@ void FlowControl::_onStockSync(QJsonObject obj)
...
@@ -322,6 +328,48 @@ void FlowControl::_onStockSync(QJsonObject obj)
);
);
}
}
void
FlowControl
::
partialRefund
(
QString
order_id
)
{
QByteArray
appendData
=
DataManage
::
getRefundDetail
(
m_token
,
order_id
);
m_http
.
Post
(
appendData
,[
this
](
const
QByteArray
&
data
)
{
QLOG_INFO
()
<<
QString
(
"退款详情: %1"
).
arg
(
QString
(
data
).
simplified
());
QJsonObject
recvObj
=
QJsonDocument
::
fromJson
(
data
).
object
();
if
(
recvObj
[
"statusCode"
].
toInt
()
==
100
)
{
QTcpSocket
*
socket
=
new
QTcpSocket
();
socket
->
connectToHost
(
"127.0.0.1"
,
34956
);
if
(
!
socket
->
waitForConnected
(
LOCAL_SOCKET_TIMEOUT
))
{
QLOG_ERROR
()
<<
"connect takeaway component failed!"
;
return
;
}
socket
->
write
(
QJsonDocument
(
recvObj
).
toJson
(
QJsonDocument
::
Compact
));
if
(
!
socket
->
waitForBytesWritten
(
LOCAL_SOCKET_TIMEOUT
))
{
QLOG_ERROR
()
<<
"write to takeaway component failed!"
;
return
;
}
socket
->
disconnectFromHost
();
if
(
socket
->
state
()
==
QAbstractSocket
::
UnconnectedState
||
socket
->
waitForDisconnected
(
1000
))
delete
socket
;
}
else
{
showAlertForm
(
AlertForm
::
ERROR
,
QString
(
"获取退款详情失败[%1]"
).
arg
(
recvObj
[
"msg"
].
toString
()),
true
);
}
}
,[
this
](
const
QNetworkReply
::
NetworkError
&
error
)
{
showAlertForm
(
AlertForm
::
ERROR
,
"获取退款详情失败[网络错误,请检查网络连接]"
,
true
);
QLOG_ERROR
()
<<
QString
(
"获取退款详情失败: %1"
).
arg
(
error
);
}
);
}
void
FlowControl
::
ProcessOrder
(
OrderObject
*
orderObj
,
const
QString
&
operation
)
void
FlowControl
::
ProcessOrder
(
OrderObject
*
orderObj
,
const
QString
&
operation
)
{
{
QByteArray
appendData
;
QByteArray
appendData
;
...
...
fmTakeaway/controls/flowControl.h
View file @
c4681ec8
...
@@ -103,6 +103,12 @@ private slots:
...
@@ -103,6 +103,12 @@ private slots:
* */
* */
void
_onStockSync
(
QJsonObject
obj
);
void
_onStockSync
(
QJsonObject
obj
);
/* 功能:部分退款后续处理
* 参数:[1]订单id
* 返回:NULL
* */
void
partialRefund
(
QString
order_id
);
signals
:
signals
:
/* 功能:登陆成功
/* 功能:登陆成功
* 参数:[1]门店名称
* 参数:[1]门店名称
...
...
fmTakeaway/detailform.cpp
View file @
c4681ec8
...
@@ -154,6 +154,13 @@ void DetailForm::_GetOrderAdditional(OrderObject *orderObj, QString &operation,
...
@@ -154,6 +154,13 @@ void DetailForm::_GetOrderAdditional(OrderObject *orderObj, QString &operation,
ui
->
detail_btnProc
->
hide
();
ui
->
detail_btnProc
->
hide
();
break
;
break
;
}
}
if
(
orderObj
->
refund_status
==
20
||
orderObj
->
refund_status
==
22
)
{
statusDesc
=
"等待退款,如需退款请返回上级页面."
;
operation
=
OPERATION_REFUSE_REFUND
;
ui
->
detail_btnRefund
->
hide
();
ui
->
detail_btnProc
->
show
();
}
}
}
return
;
return
;
...
...
fmTakeaway/mainwindow.cpp
View file @
c4681ec8
...
@@ -222,22 +222,32 @@ void MainWindow::_GetOrderAdditional(OrderObject *orderObj, QTableWidget *&table
...
@@ -222,22 +222,32 @@ void MainWindow::_GetOrderAdditional(OrderObject *orderObj, QTableWidget *&table
table
=
ui
->
main_tableYCL
;
table
=
ui
->
main_tableYCL
;
break
;
break
;
case
6
:
case
6
:
if
(
orderObj
->
refund_status
==
22
)
if
(
orderObj
->
refund_status
==
22
)
{
{
statusDesc
=
"申请部分退款"
;
statusDesc
=
"申请部分退款"
;
operation
=
OPERATION_AGREE_REFUND
;
operation
=
OPERATION_AGREE_REFUND
;
table
=
ui
->
main_tableDCL
;
table
=
ui
->
main_tableDCL
;
break
;
break
;
}
}
case
200
:
case
200
:
statusDesc
=
"已完成"
;
statusDesc
=
"已完成"
;
table
=
ui
->
main_tableYWC
;
table
=
ui
->
main_tableYWC
;
break
;
break
;
case
3
:
case
3
:
if
(
orderObj
->
refund_status
==
22
)
{
statusDesc
=
"申请部分退款"
;
operation
=
OPERATION_AGREE_REFUND
;
table
=
ui
->
main_tableDCL
;
}
else
{
statusDesc
=
"已取消"
;
statusDesc
=
"已取消"
;
table
=
ui
->
main_tableYQX
;
table
=
ui
->
main_tableYQX
;
}
break
;
break
;
}
}
//部分退款 status 可能为3、6
}
}
return
;
return
;
...
...
fmTakeaway/tools/dataManage.cpp
View file @
c4681ec8
...
@@ -155,3 +155,13 @@ QByteArray DataManage::getCodeData(const QString &token)
...
@@ -155,3 +155,13 @@ QByteArray DataManage::getCodeData(const QString &token)
json
.
insert
(
"token"
,
token
);
json
.
insert
(
"token"
,
token
);
return
QJsonDocument
(
json
).
toJson
().
simplified
();
return
QJsonDocument
(
json
).
toJson
().
simplified
();
}
}
QByteArray
DataManage
::
getRefundDetail
(
const
QString
&
token
,
const
QString
&
orderId
)
{
QJsonObject
json
,
order
;
json
.
insert
(
"reqtype"
,
27
);
json
.
insert
(
"token"
,
token
);
order
.
insert
(
"order_id"
,
orderId
);
json
.
insert
(
"order"
,
order
);
return
QJsonDocument
(
json
).
toJson
().
simplified
();
}
fmTakeaway/tools/dataManage.h
View file @
c4681ec8
...
@@ -23,6 +23,7 @@ public:
...
@@ -23,6 +23,7 @@ public:
static
QByteArray
getMenuData
(
const
QString
&
token
,
const
QString
&
channel
);
static
QByteArray
getMenuData
(
const
QString
&
token
,
const
QString
&
channel
);
static
QByteArray
getCodeData
(
const
QString
&
token
);
static
QByteArray
getCodeData
(
const
QString
&
token
);
static
QByteArray
getRefundDetail
(
const
QString
&
token
,
const
QString
&
orderId
);
};
};
#endif // DATAMANAGE_H
#endif // DATAMANAGE_H
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