Skip to content
Projects
Groups
Snippets
Help
This project
Loading...
Sign in / Register
Toggle navigation
S
sbkpay
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
zhenfei.zhang
sbkpay
Commits
fe5a9e58
Commit
fe5a9e58
authored
Aug 19, 2017
by
李定达
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
1.修复已知bug;2.周一UAT版本
parent
80e41b72
Expand all
Hide whitespace changes
Inline
Side-by-side
Showing
10 changed files
with
156 additions
and
40 deletions
+156
-40
sbkpay/control.cpp
+17
-4
sbkpay/control.h
+1
-1
sbkpay/fmtool.h
+18
-0
sbkpay/global.h
+4
-1
sbkpay/hostwidget.cpp
+13
-2
sbkpay/hostwidget.h
+4
-1
sbkpay/hostwidget.ui
+0
-0
sbkpay/main.cpp
+4
-4
sbkpay/rspfactory.h
+94
-26
sbkpay/sbkpay.pro.user
+1
-1
No files found.
sbkpay/control.cpp
View file @
fe5a9e58
...
@@ -46,6 +46,8 @@ Control::Control(QObject *parent) : QObject(parent), _widget(NULL)
...
@@ -46,6 +46,8 @@ Control::Control(QObject *parent) : QObject(parent), _widget(NULL)
void
Control
::
Start
(
const
char
*
indata
,
char
*
outdata
)
void
Control
::
Start
(
const
char
*
indata
,
char
*
outdata
)
{
{
QLOG_INFO
()
<<
"get data from pos:"
<<
indata
;
QString
appPath
;
QString
appPath
;
char
pathStr
[
MAX_PATH
]
=
{
0
};
char
pathStr
[
MAX_PATH
]
=
{
0
};
GetProcPath
(
pathStr
);
GetProcPath
(
pathStr
);
...
@@ -233,20 +235,28 @@ bool Control::GetJson(ReqType type,QJsonObject &json, const QByteArray array, QS
...
@@ -233,20 +235,28 @@ bool Control::GetJson(ReqType type,QJsonObject &json, const QByteArray array, QS
json
=
jsonDocument
.
object
();
json
=
jsonDocument
.
object
();
if
(
json
.
contains
(
JSON_KEY_MESSAGE
)
&&
json
.
contains
(
JSON_KEY_STATUSCODE
)
&&
(
json
[
JSON_KEY_STATUSCODE
].
toInt
()
==
307
||
json
[
JSON_KEY_STATUSCODE
].
toInt
()
==
303
))
{
error
=
QString
::
fromLocal8Bit
(
"签名过期,请重新获取签名"
);
json
.
insert
(
JSON_KEY_MESSAGE
,
QString
::
fromLocal8Bit
(
"签名过期,请重新获取签名"
));
}
if
(
type
==
againprint
)
json
.
insert
(
JSON_KEY_FMID
,
_fmId
);
RspFactory
::
GetResPonseJson
(
type
,
_response
,
json
);
RspFactory
::
GetResPonseJson
(
type
,
_response
,
json
);
if
(
json
.
contains
(
JSON_KEY_MESSAGE
))
if
(
json
.
contains
(
JSON_KEY_MESSAGE
))
error
=
json
[
JSON_KEY_MESSAGE
].
toString
();
error
=
json
[
JSON_KEY_MESSAGE
].
toString
();
if
(
json
.
contains
(
JSON_KEY_MESSAGE
)
&&
json
.
contains
(
JSON_KEY_STATUSCODE
)
&&
json
[
JSON_KEY_STATUSCODE
].
toInt
()
==
302
)
error
=
QString
::
fromLocal8Bit
(
"签名过期,请获取签名"
);
if
(
type
==
refund
&&
json
.
contains
(
JSON_KEY_STATUSCODE
)
&&
json
[
JSON_KEY_STATUSCODE
].
toInt
()
==
100
)
json
.
insert
(
JSON_KET_CLIENTREF
,
FMTool
::
GetString
(
_request
.
Amount
,
12
));
if
(
json
.
contains
(
JSON_KEY_STATUSCODE
)
&&
json
[
JSON_KEY_STATUSCODE
].
toInt
()
==
100
)
if
(
json
.
contains
(
JSON_KEY_STATUSCODE
)
&&
json
[
JSON_KEY_STATUSCODE
].
toInt
()
==
100
)
return
true
;
return
true
;
return
false
;
return
false
;
}
}
...
@@ -258,6 +268,9 @@ void Control::Request(ReqType type, QStringList list)
...
@@ -258,6 +268,9 @@ void Control::Request(ReqType type, QStringList list)
JsonFactory
::
GetJsonWithType
(
type
,
json
,
_request
,
list
);
JsonFactory
::
GetJsonWithType
(
type
,
json
,
_request
,
list
);
if
(
type
==
againprint
)
_fmId
=
list
[
0
];
bool
rlt
=
SendMessageToPayMent
(
json
,
outdata
,
error
);
bool
rlt
=
SendMessageToPayMent
(
json
,
outdata
,
error
);
if
(
rlt
)
if
(
rlt
)
...
...
sbkpay/control.h
View file @
fe5a9e58
...
@@ -57,7 +57,7 @@ private:
...
@@ -57,7 +57,7 @@ private:
//确保exe结束后不会重新弹窗
//确保exe结束后不会重新弹窗
QMutex
_lock
;
QMutex
_lock
;
QString
_fmId
;
...
...
sbkpay/fmtool.h
View file @
fe5a9e58
...
@@ -146,6 +146,24 @@ public:
...
@@ -146,6 +146,24 @@ public:
}
}
static
void
SetStringWith
(
void
*
beginptr
,
int
size
,
const
QString
&
in
)
{
char
buf
[
MAX_PRINT_LEN
]
=
{
0
};
char
tmpbuf
[
MAX_PRINT_LEN
]
=
{
0
};
if
(
in
.
isEmpty
())
return
;
strcpy
(
buf
,
in
.
toUtf8
().
data
());
int
len
=
UTF8ToGBK
((
unsigned
char
*
)
buf
,
(
unsigned
char
*
)
tmpbuf
,
MAX_PRINT_LEN
);
memcpy
((
char
*
)
beginptr
,
tmpbuf
,
len
-
1
);
//qDebug() << tmpbuf;
}
};
};
...
...
sbkpay/global.h
View file @
fe5a9e58
...
@@ -3,7 +3,7 @@
...
@@ -3,7 +3,7 @@
#define MAX_BUF_LEN 25600
#define MAX_BUF_LEN 25600
#define MAX_CHILED_LEN 256
#define MAX_CHILED_LEN 256
#define MAX_PRINT_LEN
8192
#define MAX_PRINT_LEN
12800
#define PRINT_FILE_NAME "print.txt"
#define PRINT_FILE_NAME "print.txt"
...
@@ -40,6 +40,9 @@
...
@@ -40,6 +40,9 @@
#define JSON_KEY_PRINT "print"
#define JSON_KEY_PRINT "print"
#define JSON_KEY_PRINTACTION "printAction"
#define JSON_KEY_PRINTACTION "printAction"
#define JSON_KET_CLIENTREF "cAlientrefundamount"
#define JSON_KEY_PAYMENTMETHODCODE "paymentMethodCode"
#define JSON_KEY_PAYMENTMETHODCODE "paymentMethodCode"
#define JSON_KEY_TRANSAMOUNT "transAmount"
#define JSON_KEY_TRANSAMOUNT "transAmount"
#define JSON_KEY_MERDISCOUNT "merchantDiscount"
#define JSON_KEY_MERDISCOUNT "merchantDiscount"
...
...
sbkpay/hostwidget.cpp
View file @
fe5a9e58
...
@@ -17,6 +17,8 @@ HostWidget::HostWidget(QWidget *parent) :
...
@@ -17,6 +17,8 @@ HostWidget::HostWidget(QWidget *parent) :
_need_exit
=
false
;
_need_exit
=
false
;
_runing
=
false
;
_widgetlist
.
append
(
ui
->
pay
);
_widgetlist
.
append
(
ui
->
pay
);
_widgetlist
.
append
(
ui
->
find
);
_widgetlist
.
append
(
ui
->
find
);
_widgetlist
.
append
(
ui
->
Manager
);
_widgetlist
.
append
(
ui
->
Manager
);
...
@@ -83,6 +85,11 @@ void HostWidget::InitWidget()
...
@@ -83,6 +85,11 @@ void HostWidget::InitWidget()
}
}
}
}
void
HostWidget
::
setRuning
(
bool
runing
)
{
_runing
=
runing
;
}
HostWidget
::~
HostWidget
()
HostWidget
::~
HostWidget
()
{
{
delete
ui
;
delete
ui
;
...
@@ -94,10 +101,12 @@ HostWidget::~HostWidget()
...
@@ -94,10 +101,12 @@ HostWidget::~HostWidget()
void
HostWidget
::
keyPressEvent
(
QKeyEvent
*
ke
)
void
HostWidget
::
keyPressEvent
(
QKeyEvent
*
ke
)
{
{
if
(
ke
->
key
()
==
Qt
::
Key_Return
&&
_curr_show_widget
==
ui
->
pay
)
if
(
ke
->
key
()
==
Qt
::
Key_Return
&&
_curr_show_widget
==
ui
->
pay
)
{
{
if
(
!
_need_exit
)
if
(
!
_need_exit
&&
_runing
==
false
)
{
{
_runing
=
true
;
ui
->
btn_pay_exit
->
hide
();
ui
->
btn_pay_exit
->
hide
();
ui
->
label_pay_money
->
hide
();
ui
->
label_pay_money
->
hide
();
...
@@ -163,7 +172,7 @@ void HostWidget::ShowWithRequest(AlipayRequest request)
...
@@ -163,7 +172,7 @@ void HostWidget::ShowWithRequest(AlipayRequest request)
ui
->
btn_pay_exit
->
hide
();
ui
->
btn_pay_exit
->
hide
();
ui
->
label_pay_money
->
hide
();
ui
->
label_pay_money
->
hide
();
_refundamout
=
FMTool
::
GetString
(
_data
.
Amount
,
12
).
toInt
();
//
_refundamout = FMTool::GetString(_data.Amount, 12).toInt();
_label_pay_timer
->
start
(
60
,
QString
::
fromLocal8Bit
(
"%1 秒"
));
_label_pay_timer
->
start
(
60
,
QString
::
fromLocal8Bit
(
"%1 秒"
));
...
@@ -272,6 +281,7 @@ void HostWidget::ShowWiteJson(bool flag, QJsonObject object, QString error)
...
@@ -272,6 +281,7 @@ void HostWidget::ShowWiteJson(bool flag, QJsonObject object, QString error)
});
});
}
}
ui
->
tableWidget
->
sortByColumn
(
2
,
Qt
::
DescendingOrder
);
ui
->
tableWidget
->
show
();
ui
->
tableWidget
->
show
();
}
}
}
}
...
@@ -438,6 +448,7 @@ void HostWidget::on_btn_sign_sign_clicked()
...
@@ -438,6 +448,7 @@ void HostWidget::on_btn_sign_sign_clicked()
void
HostWidget
::
on_btn_find_check_clicked
()
void
HostWidget
::
on_btn_find_check_clicked
()
{
{
QStringList
list
;
QStringList
list
;
ui
->
tableWidget
->
clear
();
ui
->
tableWidget
->
clear
();
...
...
sbkpay/hostwidget.h
View file @
fe5a9e58
...
@@ -29,6 +29,9 @@ public:
...
@@ -29,6 +29,9 @@ public:
void
ShowWiteMGS
(
ReqType
type
,
bool
flag
,
QString
message
=
QString
());
void
ShowWiteMGS
(
ReqType
type
,
bool
flag
,
QString
message
=
QString
());
void
ShowWiteJson
(
bool
flag
,
QJsonObject
object
,
QString
error
);
void
ShowWiteJson
(
bool
flag
,
QJsonObject
object
,
QString
error
);
void
setRuning
(
bool
runing
);
signals
:
signals
:
void
RequestWithType
(
ReqType
type
,
QStringList
list
);
void
RequestWithType
(
ReqType
type
,
QStringList
list
);
...
@@ -89,7 +92,7 @@ private:
...
@@ -89,7 +92,7 @@ private:
bool
_need_exit
;
bool
_need_exit
;
int
_refundamout
;
bool
_runing
;
ReqType
_type
;
ReqType
_type
;
};
};
...
...
sbkpay/hostwidget.ui
View file @
fe5a9e58
This diff is collapsed.
Click to expand it.
sbkpay/main.cpp
View file @
fe5a9e58
...
@@ -236,17 +236,17 @@ int main(int argc, char *argv[])
...
@@ -236,17 +236,17 @@ int main(int argc, char *argv[])
AlipayRequest
req
;
AlipayRequest
req
;
FMTool
::
SetString
(
req
.
BusinessDay
,
8
,
QString
(
"2017090
8
"
));
FMTool
::
SetString
(
req
.
BusinessDay
,
8
,
QString
(
"2017090
9
"
));
FMTool
::
SetString
(
req
.
TransType
,
2
,
QString
(
"10"
));
FMTool
::
SetString
(
req
.
TransType
,
2
,
QString
(
"10"
));
FMTool
::
SetString
(
req
.
PlatNo
,
4
,
QString
(
"1443"
));
FMTool
::
SetString
(
req
.
PlatNo
,
4
,
QString
(
"1443"
));
FMTool
::
SetString
(
req
.
TransTime
,
6
,
QString
(
"130301"
));
FMTool
::
SetString
(
req
.
TransTime
,
6
,
QString
(
"130301"
));
FMTool
::
SetString
(
req
.
StoreNo
,
20
,
QString
(
"17607"
));
FMTool
::
SetString
(
req
.
StoreNo
,
20
,
QString
(
"17607"
));
FMTool
::
SetString
(
req
.
DeviceNo
,
6
,
QString
(
"1"
));
FMTool
::
SetString
(
req
.
DeviceNo
,
6
,
QString
(
"1"
));
FMTool
::
SetString
(
req
.
CashierNo
,
6
,
QString
(
"0123"
));
FMTool
::
SetString
(
req
.
CashierNo
,
6
,
QString
(
"0123"
));
FMTool
::
SetString
(
req
.
CashTraceNo
,
6
,
QString
(
"1
231
23"
));
FMTool
::
SetString
(
req
.
CashTraceNo
,
6
,
QString
(
"1
67
23"
));
FMTool
::
SetString
(
req
.
OriginTrace
,
64
,
QString
(
"
*1232132132131234565354342-
"
));
FMTool
::
SetString
(
req
.
OriginTrace
,
64
,
QString
(
"
7871170818A00002005
"
));
FMTool
::
SetString
(
req
.
Amount
,
12
,
QString
(
"1"
));
FMTool
::
SetString
(
req
.
Amount
,
12
,
QString
(
"1"
));
FMTool
::
SetString
(
req
.
Reserved1
,
48
,
QString
(
"1241123
12312312312312----3
2"
));
FMTool
::
SetString
(
req
.
Reserved1
,
48
,
QString
(
"1241123
582133589442
2"
));
req
.
item_line_qty
[
0
]
=
'2'
;
req
.
item_line_qty
[
0
]
=
'2'
;
req
.
item_line_qty
[
1
]
=
' '
;
req
.
item_line_qty
[
1
]
=
' '
;
...
...
sbkpay/rspfactory.h
View file @
fe5a9e58
...
@@ -4,6 +4,7 @@
...
@@ -4,6 +4,7 @@
#include "requestmodel.h"
#include "requestmodel.h"
#include "global.h"
#include "global.h"
#include "fmtool.h"
#include "fmtool.h"
#include "QsLog.h"
#include <QFile>
#include <QFile>
#include <QJsonObject>
#include <QJsonObject>
...
@@ -55,19 +56,26 @@ private:
...
@@ -55,19 +56,26 @@ private:
FMTool
::
SetString
(
response
.
ResponseCode
,
3
,
QString
::
number
(
json
[
JSON_KEY_STATUSCODE
].
toInt
()));
FMTool
::
SetString
(
response
.
ResponseCode
,
3
,
QString
::
number
(
json
[
JSON_KEY_STATUSCODE
].
toInt
()));
FMTool
::
SetString
(
response
.
ResponseMsg
,
40
,
json
[
JSON_KEY_MESSAGE
].
toString
());
FMTool
::
SetString
(
response
.
ResponseMsg
,
40
,
json
[
JSON_KEY_MESSAGE
].
toString
());
FMTool
::
SetString
(
response
.
CardTraceNo
,
40
,
json
[
JSON_KEY_FMID
].
toString
());
FMTool
::
SetString
(
response
.
CardTraceNo
,
40
,
json
[
JSON_KEY_FMID
].
toString
());
//MTool::SetString(response.CardTraceNo, 40, "99571708191000040011");
FMTool
::
SetString
(
response
.
NeedPrint
,
2
,
QString
(
"01"
));
FMTool
::
SetString
(
response
.
NeedPrint
,
2
,
QString
(
"01"
));
int
transAmount
=
json
[
JSON_KEY_TRANSAMOUNT
].
toInt
();
int
transAmount
=
json
[
JSON_KEY_TRANSAMOUNT
].
toInt
();
int
merchantDiscount
=
json
[
JSON_KEY_MERDISCOUNT
].
toInt
();
int
merchantDiscount
=
json
[
JSON_KEY_MERDISCOUNT
].
toInt
();
int
platformDiscount
=
json
[
JSON_KEY_PLTDISCOUNT
].
toInt
();
int
platformDiscount
=
json
[
JSON_KEY_PLTDISCOUNT
].
toInt
();
int
userAmount
=
transAmount
-
merchantDiscount
-
platformDiscount
;
int
userAmount
=
transAmount
-
merchantDiscount
-
platformDiscount
;
//用户实付
QString
number
;
struct
EFTItem
*
item
=
(
struct
EFTItem
*
)
response
.
EFT_Detail_information
[
0
];
FMTool
::
SetString
((
void
*
)
&
(
item
->
billType
),
1
,
"1"
);
{
FMTool
::
SetString
((
void
*
)
&
(
item
->
billId
),
8
,
QString
(
"36464"
));
//用户实付
FMTool
::
SetString
((
void
*
)
&
(
item
->
amount
),
12
,
QString
::
number
(
userAmount
));
struct
EFTItem
*
item
=
(
struct
EFTItem
*
)
response
.
EFT_Detail_information
[
0
];
FMTool
::
SetString
((
void
*
)
&
(
item
->
transactionNum
),
64
,
json
[
JSON_KEY_PAYMENTMETHODCODE
].
toString
());
FMTool
::
SetString
((
void
*
)
&
(
item
->
billType
),
1
,
"1"
);
FMTool
::
SetString
((
void
*
)
&
(
item
->
billId
),
8
,
QString
(
"36464"
));
FMTool
::
SetString
((
void
*
)
&
(
item
->
amount
),
12
,
QString
::
number
(
userAmount
));
FMTool
::
SetString
((
void
*
)
&
(
item
->
transactionNum
),
64
,
json
[
JSON_KEY_FMID
].
toString
());
//FMTool::SetString((void *)&(item->transactionNum), 64, "99571708191000040011");
number
=
"01"
;
}
if
(
merchantDiscount
!=
0
)
if
(
merchantDiscount
!=
0
)
...
@@ -78,7 +86,9 @@ private:
...
@@ -78,7 +86,9 @@ private:
FMTool
::
SetString
((
void
*
)
&
(
item
->
billType
),
1
,
"1"
);
FMTool
::
SetString
((
void
*
)
&
(
item
->
billType
),
1
,
"1"
);
FMTool
::
SetString
((
void
*
)
&
(
item
->
billId
),
8
,
QString
(
"36466"
));
FMTool
::
SetString
((
void
*
)
&
(
item
->
billId
),
8
,
QString
(
"36466"
));
FMTool
::
SetString
((
void
*
)
&
(
item
->
amount
),
12
,
QString
::
number
(
merchantDiscount
));
FMTool
::
SetString
((
void
*
)
&
(
item
->
amount
),
12
,
QString
::
number
(
merchantDiscount
));
FMTool
::
SetString
((
void
*
)
&
(
item
->
transactionNum
),
64
,
json
[
JSON_KEY_PAYMENTMETHODCODE
].
toString
());
//FMTool::SetString((void *)&(item->amount), 12, QString("100"));
FMTool
::
SetString
((
void
*
)
&
(
item
->
transactionNum
),
64
,
json
[
JSON_KEY_FMID
].
toString
());
number
=
"02"
;
}
}
if
(
platformDiscount
!=
0
)
if
(
platformDiscount
!=
0
)
...
@@ -89,25 +99,44 @@ private:
...
@@ -89,25 +99,44 @@ private:
FMTool
::
SetString
((
void
*
)
&
(
item
->
billType
),
1
,
"1"
);
FMTool
::
SetString
((
void
*
)
&
(
item
->
billType
),
1
,
"1"
);
FMTool
::
SetString
((
void
*
)
&
(
item
->
billId
),
8
,
QString
(
"10001"
));
FMTool
::
SetString
((
void
*
)
&
(
item
->
billId
),
8
,
QString
(
"10001"
));
FMTool
::
SetString
((
void
*
)
&
(
item
->
amount
),
12
,
QString
::
number
(
platformDiscount
));
FMTool
::
SetString
((
void
*
)
&
(
item
->
amount
),
12
,
QString
::
number
(
platformDiscount
));
FMTool
::
SetString
((
void
*
)
&
(
item
->
transactionNum
),
64
,
json
[
JSON_KEY_PAYMENTMETHODCODE
].
toString
());
//FMTool::SetString((void *)&(item->amount), 12, QString("100"));
FMTool
::
SetString
((
void
*
)
&
(
item
->
transactionNum
),
64
,
json
[
JSON_KEY_FMID
].
toString
());
number
=
"03"
;
}
}
FMTool
::
SetString
(
response
.
EFT_quantity
,
2
,
number
);
if
(
json
[
JSON_KEY_STATUSCODE
].
toInt
()
==
100
)
return
SetPinter
(
response
,
json
);
return
true
;
}
static
bool
GetRefundResponse
(
AlipayResponse
&
response
,
const
QJsonObject
&
json
)
{
FMTool
::
SetString
(
response
.
ResponseCode
,
3
,
QString
::
number
(
json
[
JSON_KEY_STATUSCODE
].
toInt
()));
FMTool
::
SetString
(
response
.
ResponseMsg
,
40
,
json
[
JSON_KEY_MESSAGE
].
toString
());
FMTool
::
SetString
(
response
.
CardTraceNo
,
40
,
json
[
JSON_KEY_FMID
].
toString
());
FMTool
::
SetString
(
response
.
NeedPrint
,
2
,
QString
(
"01"
));
int
transAmount
=
json
[
JSON_KET_CLIENTREF
].
toInt
();
int
merchantDiscount
=
json
[
JSON_KEY_MERDISCOUNT
].
toInt
();
int
platformDiscount
=
json
[
JSON_KEY_PLTDISCOUNT
].
toInt
();
int
userAmount
=
transAmount
-
merchantDiscount
-
platformDiscount
;
QString
number
;
if
(
json
[
JSON_KEY_STATUSCODE
].
toInt
()
==
100
)
if
(
json
[
JSON_KEY_STATUSCODE
].
toInt
()
!=
100
)
return
SetPinter
(
response
,
json
);
{
return
true
;
struct
EFTItem
*
item
=
(
struct
EFTItem
*
)
response
.
EFT_Detail_information
[
0
];
}
static
bool
GetRefundResponse
(
AlipayResponse
&
response
,
const
QJsonObject
&
json
)
FMTool
::
SetString
((
void
*
)
&
(
item
->
billType
),
1
,
"1"
);
{
FMTool
::
SetString
((
void
*
)
&
(
item
->
billId
),
8
,
QString
(
"36464"
));
FMTool
::
SetString
(
response
.
ResponseCode
,
3
,
QString
::
number
(
json
[
JSON_KEY_STATUSCODE
].
toInt
()));
FMTool
::
SetString
((
void
*
)
&
(
item
->
amount
),
12
,
QString
::
number
(
userAmount
));
FMTool
::
SetString
(
response
.
ResponseMsg
,
40
,
json
[
JSON_KEY_MESSAGE
].
toString
());
FMTool
::
SetString
((
void
*
)
&
(
item
->
transactionNum
),
64
,
json
[
JSON_KEY_FMID
].
toString
());
FMTool
::
SetString
(
response
.
CardTraceNo
,
40
,
json
[
JSON_KEY_FMID
].
toString
());
number
=
"01"
;
FMTool
::
SetString
(
response
.
NeedPrint
,
2
,
QString
(
"01"
));
}
FMTool
::
SetString
(
response
.
EFT_quantity
,
2
,
number
);
if
(
json
[
JSON_KEY_STATUSCODE
].
toInt
()
==
100
)
if
(
json
[
JSON_KEY_STATUSCODE
].
toInt
()
==
100
)
return
SetPinter
(
response
,
json
);
return
SetPinter
(
response
,
json
);
...
@@ -134,7 +163,7 @@ private:
...
@@ -134,7 +163,7 @@ private:
FMTool
::
SetString
(
response
.
NeedPrint
,
2
,
QString
(
"01"
));
FMTool
::
SetString
(
response
.
NeedPrint
,
2
,
QString
(
"01"
));
if
(
json
[
JSON_KEY_STATUSCODE
].
toInt
()
==
100
)
if
(
json
[
JSON_KEY_STATUSCODE
].
toInt
()
==
100
)
return
SetPinter
(
response
,
json
);
return
Set
Again
Pinter
(
response
,
json
);
return
true
;
return
true
;
}
}
...
@@ -143,33 +172,72 @@ private:
...
@@ -143,33 +172,72 @@ private:
return
false
;
return
false
;
}
}
static
bool
SetPinter
(
AlipayResponse
&
response
,
const
QJsonObject
&
json
)
static
bool
Set
Again
Pinter
(
AlipayResponse
&
response
,
const
QJsonObject
&
json
)
{
{
if
(
!
json
.
contains
(
JSON_KEY_EXT
)
||
!
json
[
JSON_KEY_EXT
].
isObject
())
if
(
!
json
.
contains
(
JSON_KEY_EXT
)
||
!
json
[
JSON_KEY_EXT
].
isObject
())
return
false
;
return
false
;
FMTool
::
SetString
(
response
.
NeedPrint
,
2
,
QString
(
"00"
));
FMTool
::
SetString
(
response
.
NeedPrint
,
2
,
QString
(
"00"
));
QJsonObject
obj
=
json
[
JSON_KEY_EXT
].
toObject
();
QString
str
;
str
.
append
(
obj
[
JSON_KEY_PRINT
].
toString
());
str
.
replace
(
"#"
,
"
\r\n
"
);
str
.
append
(
"==============================
\r\n
"
).
append
(
QChar
(
27
)).
append
(
QChar
(
'@'
)).
append
(
QChar
(
29
)).
append
(
"hP"
).
append
(
QChar
(
29
)).
append
(
QChar
(
'w'
)).
append
(
QChar
(
2
)).
append
(
QChar
(
29
)).
append
(
QChar
(
'H'
)).
append
(
QChar
(
2
));
str
.
append
(
QChar
(
27
)).
append
(
QChar
(
'a'
)).
append
(
QChar
(
1
)).
append
(
QChar
(
29
)).
append
(
"kF"
).
append
(
QChar
(
20
)).
append
(
json
[
JSON_KEY_FMID
].
toString
()).
append
(
"
\r\n
"
).
append
(
QChar
(
27
)).
append
(
'@'
).
append
(
'\r'
).
append
(
'\n'
);
qDebug
()
<<
str
;
qDebug
()
<<
json
;
QFile
file
(
qApp
->
applicationDirPath
()
+
"/"
+
PRINT_FILE_NAME
);
QString
path
=
qApp
->
applicationDirPath
()
+
"/"
+
PRINT_FILE_NAME
;
FMTool
::
SetString
(
response
.
EFTprintFileName
,
200
,
path
.
replace
(
"/"
,
"
\\
"
));
file
.
open
(
QFile
::
WriteOnly
);
if
(
!
file
.
isOpen
())
return
false
;
char
array
[
MAX_PRINT_LEN
]
=
{
0
};
FMTool
::
SetStringWith
(
array
,
str
.
toUtf8
().
length
(),
str
);
file
.
write
(
array
);
file
.
flush
();
file
.
close
();
return
true
;
}
static
bool
SetPinter
(
AlipayResponse
&
response
,
const
QJsonObject
&
json
)
{
if
(
!
json
.
contains
(
JSON_KEY_EXT
)
||
!
json
[
JSON_KEY_EXT
].
isObject
())
return
false
;
FMTool
::
SetString
(
response
.
NeedPrint
,
2
,
QString
(
"00"
));
QJsonObject
obj
=
json
[
JSON_KEY_EXT
].
toObject
();
QJsonObject
obj
=
json
[
JSON_KEY_EXT
].
toObject
();
QString
str
=
obj
[
JSON_KEY_PRINT
].
toString
();
QString
str
=
obj
[
JSON_KEY_PRINT
].
toString
();
str
.
replace
(
"#"
,
"
\r\n
"
);
str
.
replace
(
"#"
,
"
\r\n
"
);
str
.
append
(
"
\r\n
"
);
QFile
file
(
qApp
->
applicationDirPath
()
+
"/"
+
PRINT_FILE_NAME
);
QFile
file
(
qApp
->
applicationDirPath
()
+
"/"
+
PRINT_FILE_NAME
);
FMTool
::
SetString
(
response
.
EFTprintFileName
,
200
,
QString
(
qApp
->
applicationDirPath
()
+
"/"
+
PRINT_FILE_NAME
))
;
QString
path
=
qApp
->
applicationDirPath
()
+
"/"
+
PRINT_FILE_NAME
;
FMTool
::
SetString
(
response
.
EFTprintFileName
,
200
,
path
.
replace
(
"/"
,
"
\\
"
));
file
.
open
(
QFile
::
WriteOnly
);
file
.
open
(
QFile
::
WriteOnly
);
if
(
!
file
.
isOpen
())
if
(
!
file
.
isOpen
())
return
false
;
return
false
;
char
buf
[
MAX_PRINT_LEN
]
=
{
0
};
char
array
[
MAX_PRINT_LEN
]
=
{
0
};
FMTool
::
SetString
(
buf
,
str
.
toUtf8
().
length
(),
str
);
FMTool
::
SetString
With
(
array
,
str
.
toUtf8
().
length
(),
str
);
file
.
write
(
buf
);
file
.
write
(
array
);
file
.
flush
();
file
.
flush
();
...
...
sbkpay/sbkpay.pro.user
View file @
fe5a9e58
<?xml version="1.0" encoding="UTF-8"?>
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE QtCreatorProject>
<!DOCTYPE QtCreatorProject>
<!-- Written by QtCreator 3.5.1, 2017-08-1
8T10:49:38
. -->
<!-- Written by QtCreator 3.5.1, 2017-08-1
9T19:19:22
. -->
<qtcreator>
<qtcreator>
<data>
<data>
<variable>
EnvironmentId
</variable>
<variable>
EnvironmentId
</variable>
...
...
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