Skip to content
Projects
Groups
Snippets
Help
This project
Loading...
Sign in / Register
Toggle navigation
F
fmp_epay
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
fmp_epay
Commits
671d1009
Commit
671d1009
authored
Mar 28, 2019
by
xiaoqing.gu
Browse files
Options
Browse Files
Download
Plain Diff
1、增加客显代码 2、支付新增查询接口
parents
652c6240
924b3007
Expand all
Hide whitespace changes
Inline
Side-by-side
Showing
13 changed files
with
309 additions
and
14 deletions
+309
-14
CMakeLists.txt
+97
-0
fmp_epay.cpp
+14
-1
fmp_epay.h
+5
-0
fmp_epay.pro
+2
-0
fmp_epay_def.h
+2
-0
fmp_epay_i.h
+8
-0
fmp_epay_p.cpp
+157
-10
fmp_epay_p.cpp.autosave
+0
-0
fmp_epay_p.h
+12
-0
fmp_epayview_dialog.cpp
+6
-0
fmp_epayview_dialog.h
+3
-0
res/MANIFEST.MF
+1
-1
version.h
+2
-2
No files found.
CMakeLists.txt
0 → 100644
View file @
671d1009
cmake_minimum_required
(
VERSION 3.1.0
)
project
(
fmp_epay
)
SET
(
TARGET_NAME fmp_epay
)
set
(
CMAKE_INCLUDE_CURRENT_DIR ON
)
set
(
CMAKE_AUTOMOC ON
)
set
(
CMAKE_AUTOUIC ON
)
set
(
CMAKE_AUTORCC ON
)
set
(
CMAKE_BUILD_TYPE Debug
)
find_package
(
Qt5 COMPONENTS Widgets Gui Core Sql Network Concurrent REQUIRED
)
IF
(
CMAKE_BUILD_TYPE MATCHES
"Debug"
)
message
(
"debug mode "
)
set
(
CTKCORE CTKCored.lib
)
set
(
CTKPLUG CTKPluginFrameworkd.lib
)
set
(
CMAKE_RUNTIME_OUTPUT_DIRECTORY_DEBUG
${
fmPOS_SOURCE_DIR
}
/debug/plugins
)
ELSEIF
(
CMAKE_BUILD_TYPE MATCHES
"Release"
)
set
(
CTKCORE CTKCore.lib
)
set
(
CTKPLUG CTKPluginFramework.lib
)
set
(
CMAKE_RUNTIME_OUTPUT_DIRECTORY_RELEASE
${
fmPOS_SOURCE_DIR
}
/Release/plugins
)
ENDIF
()
set
(
ORIGIN_TARGET
${
TARGET_NAME
}
)
#通过批处理文件获取版本和资源文件需要的一些信息
message
(
STATUS
"The bat :
${
ORIGIN_TARGET
}
"
)
set
(
ABSPATH
${
fmPOS_SOURCE_DIR
}
/fmprc_cmake.bat
)
message
(
STATUS
"The bat :
${
ABSPATH
}
"
)
execute_process
(
COMMAND
${
ABSPATH
}
${
TARGET_NAME
}
WORKING_DIRECTORY
${
fmPOS_SOURCE_DIR
}
OUTPUT_VARIABLE VER
)
string
(
REGEX REPLACE
"
\r
|
\n
"
" "
VERTEMP
${
VER
}
)
string
(
STRIP
${
VERTEMP
}
SEXY_STRING
)
string
(
REPLACE
" "
";"
SEXY_LIST
${
SEXY_STRING
}
)
message
(
STATUS
"list =
${
SEXY_LIST
}
"
)
list
(
GET SEXY_LIST 0 VER_TARGET
)
message
(
STATUS
"VER_TARGET =
${
VER_TARGET
}
"
)
list
(
GET SEXY_LIST 1 VER_TIME
)
message
(
STATUS
"VER_TIME =
${
VER_TIME
}
"
)
list
(
GET SEXY_LIST 2 VER_MAJOR
)
message
(
STATUS
"VER_MAJOR =
${
VER_MAJOR
}
"
)
list
(
GET SEXY_LIST 3 VER_MINOR
)
message
(
STATUS
"VER_MINOR =
${
VER_MINOR
}
"
)
list
(
GET SEXY_LIST 4 VER_REVISION
)
message
(
STATUS
"VER_REVISION =
${
VER_REVISION
}
"
)
list
(
GET SEXY_LIST 5 VERSION
)
message
(
STATUS
"VERSION =
${
VERSION
}
"
)
list
(
GET SEXY_LIST 6 VER_BUILD
)
message
(
STATUS
"VER_BUILD =
${
VER_BUILD
}
"
)
set
(
TARGET_NAME
${
TARGET_NAME
}
_
${
VERSION
}
)
find_path
(
versionpath version.h.in PATHS
${
CMAKE_CURRENT_SOURCE_DIR
}
/..
)
message
(
${
versionpath
}
)
#资源文件替换及拷贝
configure_file
(
"
${
PROJECT_SOURCE_DIR
}
/../version.h.in"
"
${
PROJECT_SOURCE_DIR
}
/version.h"
)
configure_file
(
"
${
PROJECT_SOURCE_DIR
}
/../MANIFEST.MF.in"
"
${
PROJECT_SOURCE_DIR
}
/res/MANIFEST.MF"
)
configure_file
(
"
${
PROJECT_SOURCE_DIR
}
/../template.qrc.in"
"
${
PROJECT_SOURCE_DIR
}
/res/
${
ORIGIN_TARGET
}
.qrc"
)
configure_file
(
"
${
PROJECT_SOURCE_DIR
}
/../pluginrc.h"
"
${
PROJECT_SOURCE_DIR
}
/res/resource.h"
COPYONLY
)
configure_file
(
"
${
PROJECT_SOURCE_DIR
}
/../pluginrc.rc"
"
${
PROJECT_SOURCE_DIR
}
/res/
${
ORIGIN_TARGET
}
.rc"
COPYONLY
)
file
(
GLOB DIR_SRCS
"*.h"
"*.cpp"
)
INCLUDE_DIRECTORIES
(
${
fmPOS_SOURCE_DIR
}
/include/ctk
)
INCLUDE_DIRECTORIES
(
${
fmPOS_SOURCE_DIR
}
/include/interface
)
link_directories
(
${
fmPOS_SOURCE_DIR
}
/lib
)
ADD_LIBRARY
(
${
TARGET_NAME
}
SHARED
${
DIR_SRCS
}
res/fmp_epay.qrc res/img.qrc res/fmp_epay.rc
)
target_link_libraries
(
${
TARGET_NAME
}
Qt5::Widgets
Qt5::Core
Qt5::Gui
Qt5::Network
Qt5::Sql
Qt5::Concurrent
${
CTKCORE
}
${
CTKPLUG
}
)
fmp_epay.cpp
View file @
671d1009
...
@@ -38,18 +38,31 @@ FMPePay::~FMPePay()
...
@@ -38,18 +38,31 @@ FMPePay::~FMPePay()
void
FMPePay
::
InitService
()
void
FMPePay
::
InitService
()
{
{
if
(
_inited
)
return
;
Q_D
(
FMPePay
);
Q_D
(
FMPePay
);
d
->
Init
();
d
->
Init
();
}
}
#ifdef GuestDisplay
void
FMPePay
::
OnAmountChange
(
int
amount
)
{
Q_D
(
FMPePay
);
d
->
SetAmoumt
(
amount
);
}
#endif
void
FMPePay
::
UninitService
()
void
FMPePay
::
UninitService
()
{
{
if
(
_inited
)
{
if
(
_inited
)
{
Q_D
(
FMPePay
);
Q_D
(
FMPePay
);
d
->
Uninit
();
d
->
Uninit
();
}
}
#ifdef GuestDisplay
emit
FMPePayInterface
::
gxqCWindow
();
#endif
}
}
void
FMPePay
::
SetBasicInfo
(
QVariantHash
hash
)
void
FMPePay
::
SetBasicInfo
(
QVariantHash
hash
)
...
...
fmp_epay.h
View file @
671d1009
...
@@ -31,6 +31,11 @@ public:
...
@@ -31,6 +31,11 @@ public:
void
DockQueryRequest
(
const
QByteArray
&
json
);
void
DockQueryRequest
(
const
QByteArray
&
json
);
QByteArray
DockQueryRespond
();
QByteArray
DockQueryRespond
();
#ifdef GuestDisplay
public
slots
:
void
OnAmountChange
(
int
amount
);
#endif
protected
slots
:
protected
slots
:
void
InitService
();
void
InitService
();
...
...
fmp_epay.pro
View file @
671d1009
...
@@ -15,6 +15,8 @@ QMAKE_LFLAGS_RELEASE += /debug /opt:ref
...
@@ -15,6 +15,8 @@ QMAKE_LFLAGS_RELEASE += /debug /opt:ref
CONFIG
+=
c
++
11
CONFIG
+=
c
++
11
DEFINES
+=
#
GuestDisplay
SOURCES
+=
\
SOURCES
+=
\
fmp_epay
.
cpp
\
fmp_epay
.
cpp
\
fmp_epay_p
.
cpp
\
fmp_epay_p
.
cpp
\
...
...
fmp_epay_def.h
View file @
671d1009
...
@@ -20,6 +20,7 @@
...
@@ -20,6 +20,7 @@
#define FMP_EPAY_TIMEOUT "timeout"
#define FMP_EPAY_TIMEOUT "timeout"
//
//
#define FMP_JKEY_FM_ORDER_ID "fm_order_id"
#define FMP_JKEY_POS_TRANSID "trans_id"
#define FMP_JKEY_POS_TRANSID "trans_id"
#define FMP_JKEY_FM_ORDERID "fm_id"
#define FMP_JKEY_FM_ORDERID "fm_id"
#define FMP_JKEY_PAY_TRANSID "fm_transId"
#define FMP_JKEY_PAY_TRANSID "fm_transId"
...
@@ -42,6 +43,7 @@
...
@@ -42,6 +43,7 @@
#define FMP_EPAY_REFUND_TRANSTRACTION_AMOUNT "refund_count"
#define FMP_EPAY_REFUND_TRANSTRACTION_AMOUNT "refund_count"
#define FMP_EPAY_REFUND_TRANSTRACTION_TRANSID "paied_trans_id"
#define FMP_EPAY_REFUND_TRANSTRACTION_TRANSID "paied_trans_id"
#define FMP_EPAY_REFUND_TRANSTRACTION_EBCODE "paied_ebcode"
#define FMP_EPAY_REFUND_TRANSTRACTION_EBCODE "paied_ebcode"
#define FMP_EPAY_REFUND_ID "refund_id"
//sql字段
//sql字段
...
...
fmp_epay_i.h
View file @
671d1009
...
@@ -35,9 +35,17 @@ signals:
...
@@ -35,9 +35,17 @@ signals:
void
TriggerInit
();
void
TriggerInit
();
void
TriggerUninit
();
void
TriggerUninit
();
public
slots
:
#ifdef GuestDisplay
virtual
void
OnAmountChange
(
int
amount
)
=
0
;
signals
:
void
gxqCWindow
();
#endif
protected
slots
:
protected
slots
:
void
OnTriggerInit
()
{
FMPluginInterface
::
OnTriggerInit
();
}
void
OnTriggerInit
()
{
FMPluginInterface
::
OnTriggerInit
();
}
void
OnTriggerUninit
()
{
FMPluginInterface
::
OnTriggerUninit
();
}
void
OnTriggerUninit
()
{
FMPluginInterface
::
OnTriggerUninit
();
}
// /**
// /**
// * @brief ShowPayDialog
// * @brief ShowPayDialog
// * 呈现支付主界面
// * 呈现支付主界面
...
...
fmp_epay_p.cpp
View file @
671d1009
...
@@ -39,6 +39,9 @@ FMPePayPrivate::FMPePayPrivate(FMPePay *parent)
...
@@ -39,6 +39,9 @@ FMPePayPrivate::FMPePayPrivate(FMPePay *parent)
_reverse_flag
(
false
),
_reverse_flag
(
false
),
_is_api
(
false
),
_is_api
(
false
),
_api_abort
(
false
),
_api_abort
(
false
),
#ifdef GuestDisplay
_amount
(
0
),
#endif
auto_close_seconds
(
0
)
auto_close_seconds
(
0
)
{
{
_watcher
=
new
QFutureWatcher
<
QByteArray
>
();
_watcher
=
new
QFutureWatcher
<
QByteArray
>
();
...
@@ -185,6 +188,15 @@ void FMPePayPrivate::Init()
...
@@ -185,6 +188,15 @@ void FMPePayPrivate::Init()
// return;
// return;
// }
// }
}
}
else
if
(
_origin_request
[
"fm_cmd"
].
toInt
()
==
10030
)
{
//组装支付查询接口的json
QJsonObject
obj
;
obj
.
insert
(
FMP_EPAY_STOREID
,
q
->
_store_id
);
obj
.
insert
(
FMP_EPAY_STATIONID
,
q
->
_station_id
);
obj
.
insert
(
FMP_EPAY_OPERATORID
,
q
->
_operator_id
);
ControlQueryJson
(
obj
);
}
QJsonArray
pos_products
=
_origin_request
[
"products"
].
toArray
();
QJsonArray
pos_products
=
_origin_request
[
"products"
].
toArray
();
QJsonArray
products
;
QJsonArray
products
;
int
i
=
1
;
int
i
=
1
;
...
@@ -196,17 +208,29 @@ void FMPePayPrivate::Init()
...
@@ -196,17 +208,29 @@ void FMPePayPrivate::Init()
hash
[
"products"
]
=
products
;
hash
[
"products"
]
=
products
;
}
}
if
(
_payDialog
==
nullptr
)
{
if
(
!
(
_origin_request
[
"fm_cmd"
].
toInt
()
==
10030
))
{
_payDialog
=
new
FMPPayDialog
(
this
,
hash
);
}
else
{
if
(
_payDialog
==
nullptr
)
{
_payDialog
->
setBasicInfo
(
hash
);
_payDialog
=
new
FMPPayDialog
(
this
,
hash
);
}
}
else
{
_payDialog
->
setBasicInfo
(
hash
);
}
#ifdef GuestDisplay
if
(
_amount
>
0
)
{
_payDialog
->
setAmount
(
_amount
);
_amount
=
0
;
}
#endif
_payDialog
->
show
();
_payDialog
->
show
();
if
(
_origin_request
[
"fm_cmd"
].
toInt
()
==
10041
&&
!
hash
[
FMP_JKEY_FM_ORDERID
].
toString
().
isEmpty
())
{
if
(
_origin_request
[
"fm_cmd"
].
toInt
()
==
10041
&&
!
hash
[
FMP_JKEY_FM_ORDERID
].
toString
().
isEmpty
())
{
_payDialog
->
confirmRefund
();
_payDialog
->
confirmRefund
();
}
}
}
}
}
...
@@ -229,6 +253,14 @@ void FMPePayPrivate::clearorder()
...
@@ -229,6 +253,14 @@ void FMPePayPrivate::clearorder()
});
});
}
}
#ifdef GuestDisplay
void
FMPePayPrivate
::
SetAmount
(
int
amount
)
{
if
(
_payDialog
!=
NULL
)
_payDialog
->
setAmount
(
amount
);
}
#endif
QSqlTableModel
*
FMPePayPrivate
::
model
()
const
QSqlTableModel
*
FMPePayPrivate
::
model
()
const
{
{
return
_model
;
return
_model
;
...
@@ -325,12 +357,54 @@ QByteArray FMPePayPrivate::DockRefundRespond()
...
@@ -325,12 +357,54 @@ QByteArray FMPePayPrivate::DockRefundRespond()
void
FMPePayPrivate
::
DockQueryRequest
(
const
QByteArray
&
json
)
void
FMPePayPrivate
::
DockQueryRequest
(
const
QByteArray
&
json
)
{
{
//!TODO DockQueryRequest()
//!TODO DockQueryRequest()
_is_api
=
true
;
_api_abort
=
false
;
_origin_request
=
QJsonDocument
::
fromJson
(
json
).
object
();
}
}
QByteArray
FMPePayPrivate
::
DockQueryRespond
()
QByteArray
FMPePayPrivate
::
DockQueryRespond
()
{
{
//!TODO DockQueryRespond()
//!TODO DockQueryRespond()
return
""
;
QByteArray
json
=
"{
\"
statusCode
\"
:106,
\"
msg
\"
:
\"\347\252\227\345\217\243\345\267\262\345\205\263\351\227\255\357\274\214\344\272\244\346\230\223\345\217\226\346\266\210\"
,
\"
prompt
\"
:0}"
;
_api_evt
.
exec
();
if
(
!
_api_abort
)
{
_docked_response
=
QJsonObject
();
_docked_response
[
FMP_EPAY_STATUSCODE
]
=
_origin_response
[
FMP_EPAY_STATUSCODE
];
_docked_response
[
FMP_EPAY_ERRORMSG
]
=
_origin_response
.
contains
(
"msg"
)
?
_origin_response
[
FMP_EPAY_ERRORMSG
]
:
QJsonValue
(
""
);
_docked_response
[
"prompt"
]
=
0
;
if
(
_origin_response
[
"statusCode"
].
toInt
()
==
100
)
{
_docked_response
[
"fm_transId"
]
=
_origin_response
[
"pay_transId"
];
_docked_response
[
FMP_EPAY_FMID
]
=
_origin_response
[
"fmId"
];
_docked_response
[
FMP_EPAY_PAYED_AMOUNT
]
=
_origin_response
[
"total_amount"
];
_docked_response
[
FMP_EPAY_INVOICE_AMOUNT
]
=
_origin_response
[
FMP_EPAY_INVOICE_AMOUNT
];
_docked_response
[
FMP_EPAY_DISCOUNT_AMOUNT
]
=
_origin_response
[
"mcoupon_amount"
].
toInt
()
+
_origin_response
[
"pcoupon_amount"
].
toInt
();
QJsonArray
pay_channels
;
QJsonObject
pay_ch
;
pay_ch
[
FMP_EPAY_PAY_ID
]
=
_origin_response
[
"pay_ebcode"
];
pay_ch
[
FMP_EPAY_PAY_DESC
]
=
_origin_response
[
"pay_id"
];
pay_ch
[
"code"
]
=
_origin_response
[
"code"
];
pay_ch
[
"pay_amount"
]
=
_origin_response
[
"total_amount"
];
pay_ch
[
"pay_account"
]
=
_origin_response
[
"pay_acount"
];
pay_ch
[
"platform_discount"
]
=
_origin_response
[
"mcoupon_amount"
];
pay_ch
[
"merchant_discount"
]
=
_origin_response
[
"pcoupon_amount"
];
if
(
_origin_response
.
contains
(
"ext"
))
{
pay_ch
[
"ext"
]
=
_origin_response
[
"ext"
];
}
pay_channels
.
append
(
pay_ch
);
_docked_response
[
FMP_EPAY_PAY_IDS
]
=
pay_channels
;
}
else
{
_docked_response
=
QJsonDocument
::
fromJson
(
json
).
object
();
}
_origin_response
=
QJsonObject
();
json
=
QJsonDocument
(
_docked_response
).
toJson
();
}
return
json
;
}
}
...
@@ -450,6 +524,7 @@ void FMPePayPrivate::HttpPost(const QString &url, const QByteArray &data, QFutur
...
@@ -450,6 +524,7 @@ void FMPePayPrivate::HttpPost(const QString &url, const QByteArray &data, QFutur
bool
FMPePayPrivate
::
HttpPost
(
QJsonObject
&
outjson
,
QJsonObject
json
,
QString
&
error
,
int
timeout
)
bool
FMPePayPrivate
::
HttpPost
(
QJsonObject
&
outjson
,
QJsonObject
json
,
QString
&
error
,
int
timeout
)
{
{
qDebug
()
<<
"------------------1-----------------------"
;
Q_Q
(
FMPePay
);
Q_Q
(
FMPePay
);
QEventLoop
loop
;
QEventLoop
loop
;
QTimer
timer
;
QTimer
timer
;
...
@@ -465,6 +540,7 @@ bool FMPePayPrivate::HttpPost(QJsonObject& outjson, QJsonObject json, QString &e
...
@@ -465,6 +540,7 @@ bool FMPePayPrivate::HttpPost(QJsonObject& outjson, QJsonObject json, QString &e
request
.
setSslConfiguration
(
config
);
request
.
setSslConfiguration
(
config
);
request
.
setRawHeader
(
"Content-Type"
,
"text/json"
);
request
.
setRawHeader
(
"Content-Type"
,
"text/json"
);
qDebug
()
<<
"------------------2-----------------------"
;
QNetworkReply
*
reply
=
manger
.
post
(
request
,
QJsonDocument
(
json
).
toJson
());
QNetworkReply
*
reply
=
manger
.
post
(
request
,
QJsonDocument
(
json
).
toJson
());
...
@@ -476,12 +552,15 @@ bool FMPePayPrivate::HttpPost(QJsonObject& outjson, QJsonObject json, QString &e
...
@@ -476,12 +552,15 @@ bool FMPePayPrivate::HttpPost(QJsonObject& outjson, QJsonObject json, QString &e
loop
.
exec
();
loop
.
exec
();
reply
->
deleteLater
();
reply
->
deleteLater
();
qDebug
()
<<
"------------------3-----------------------"
;
if
(
reply
->
error
()
!=
QNetworkReply
::
NoError
)
if
(
reply
->
error
()
!=
QNetworkReply
::
NoError
)
{
{
qDebug
()
<<
"------------------41-----------------------"
;
error
=
QString
::
fromLocal8Bit
(
"网络异常"
);
error
=
QString
::
fromLocal8Bit
(
"网络异常"
);
return
false
;
return
false
;
}
}
qDebug
()
<<
"------------------4-----------------------"
;
if
(
!
CheckReturnJson
(
reply
->
readAll
(),
outjson
))
if
(
!
CheckReturnJson
(
reply
->
readAll
(),
outjson
))
{
{
...
@@ -489,6 +568,7 @@ bool FMPePayPrivate::HttpPost(QJsonObject& outjson, QJsonObject json, QString &e
...
@@ -489,6 +568,7 @@ bool FMPePayPrivate::HttpPost(QJsonObject& outjson, QJsonObject json, QString &e
return
false
;
return
false
;
}
}
qDebug
()
<<
"------------------7-----------------------"
;
FMP_INFO
()
<<
outjson
;
FMP_INFO
()
<<
outjson
;
int
statusCode
=
outjson
[
FMP_RPAY_PAY_RETURN_STATUSCODE
].
toInt
();
int
statusCode
=
outjson
[
FMP_RPAY_PAY_RETURN_STATUSCODE
].
toInt
();
...
@@ -548,10 +628,12 @@ bool FMPePayPrivate::CheckReturnJson(QByteArray data, QJsonObject &returnjson)
...
@@ -548,10 +628,12 @@ bool FMPePayPrivate::CheckReturnJson(QByteArray data, QJsonObject &returnjson)
QJsonParseError
json_error
;
QJsonParseError
json_error
;
QJsonDocument
doc
=
QJsonDocument
::
fromJson
(
data
,
&
json_error
);
QJsonDocument
doc
=
QJsonDocument
::
fromJson
(
data
,
&
json_error
);
qDebug
()
<<
"------------------5-----------------------"
;
if
(
json_error
.
error
!=
QJsonParseError
::
NoError
||
!
doc
.
isObject
())
if
(
json_error
.
error
!=
QJsonParseError
::
NoError
||
!
doc
.
isObject
())
{
{
return
false
;
return
false
;
}
}
qDebug
()
<<
"------------------6-----------------------"
;
returnjson
=
doc
.
object
();
returnjson
=
doc
.
object
();
FMP_INFO
()
<<
"get return json : "
<<
returnjson
;
FMP_INFO
()
<<
"get return json : "
<<
returnjson
;
...
@@ -565,6 +647,17 @@ void FMPePayPrivate::SetBasicInfo(QVariantHash hash)
...
@@ -565,6 +647,17 @@ void FMPePayPrivate::SetBasicInfo(QVariantHash hash)
_payDialog
->
setBasicInfo
(
hash
);
_payDialog
->
setBasicInfo
(
hash
);
}
}
#ifdef GuestDisplay
void
FMPePayPrivate
::
SetAmoumt
(
int
amount
)
{
FMP_INFO
()
<<
"###------------------SetAmoumt amount : "
<<
amount
;
if
(
_payDialog
!=
NULL
)
_payDialog
->
setAmount
(
amount
);
else
_amount
=
amount
;
}
#endif
void
FMPePayPrivate
::
GetCheckMode
(
QString
sum
)
void
FMPePayPrivate
::
GetCheckMode
(
QString
sum
)
{
{
QString
sql
=
QString
(
"fmId like '%%%1%%' or pay_transId like '%%%1%%'"
).
arg
(
sum
);
QString
sql
=
QString
(
"fmId like '%%%1%%' or pay_transId like '%%%1%%'"
).
arg
(
sum
);
...
@@ -690,6 +783,58 @@ void FMPePayPrivate::ControlRefundJson(const QJsonObject &trans)
...
@@ -690,6 +783,58 @@ void FMPePayPrivate::ControlRefundJson(const QJsonObject &trans)
});
});
}
}
void
FMPePayPrivate
::
ControlQueryJson
(
const
QJsonObject
&
trans
)
{
QtConcurrent
::
run
(
[
&
,
trans
,
this
]()
{
Q_Q
(
FMPePay
);
_origin_response
=
QJsonObject
();
if
(
_reverse_flag
)
{
emit
error
(
QString
::
fromLocal8Bit
(
"网络连接异常(冲正...)"
));
_origin_response
[
"statusCode"
]
=
104
;
_origin_response
[
"msg"
]
=
QString
::
fromLocal8Bit
(
"网络连接异常"
);
_origin_response
[
"prompt"
]
=
0
;
emit
apiError
();
return
;
}
_docked_request
=
trans
;
_docked_request
[
FMP_EPAY_VER
]
=
3
;
_docked_request
[
FMP_EPAY_REQUESTTYPE
]
=
52
;
_docked_request
[
FMP_EPAY_TRANSID
]
=
_origin_request
[
FMP_EPAY_TRANSID
].
toString
();
_docked_request
[
FMP_EPAY_FMID
]
=
_origin_request
[
FMP_JKEY_FM_ORDER_ID
].
toString
();
_docked_request
[
FMP_EPAY_REFUND_ID
]
=
_origin_request
[
FMP_EPAY_REFUND_ID
].
toInt
();
FMP_INFO
()
<<
"query json : "
<<
_docked_request
;
QString
errors
;
QJsonObject
outjson
;
if
(
!
HttpPost
(
outjson
,
_docked_request
,
errors
,
q
->
_time_out
))
{
qDebug
()
<<
"------------------42-----------------------"
;
_origin_response
=
outjson
;
emit
error
(
errors
);
emit
apiError
();
qDebug
()
<<
"------------------43-----------------------"
;
}
else
{
if
(
_is_api
)
{
_origin_response
=
outjson
;
qDebug
()
<<
"_origin_response"
<<
_origin_response
;
}
// emit finished(outjson);
}
_api_evt
.
quit
();
qDebug
()
<<
"------------------44-----------------------"
;
});
}
void
FMPePayPrivate
::
ControlReverseJson
()
void
FMPePayPrivate
::
ControlReverseJson
()
{
{
_reverse_flag
=
true
;
_reverse_flag
=
true
;
...
@@ -800,6 +945,8 @@ bool FMPePayPrivate::GetRefundJson(const QJsonObject &trans)
...
@@ -800,6 +945,8 @@ bool FMPePayPrivate::GetRefundJson(const QJsonObject &trans)
_docked_request
.
insert
(
FMP_EPAY_REQUESTTYPE
,
62
);
_docked_request
.
insert
(
FMP_EPAY_REQUESTTYPE
,
62
);
_docked_request
.
insert
(
FMP_EPAY_PARTNERID
,
q
->
_partner_id
.
toInt
());
_docked_request
.
insert
(
FMP_EPAY_PARTNERID
,
q
->
_partner_id
.
toInt
());
_docked_request
.
insert
(
FMP_EPAY_CLIENTREQCOUNT
,
(
int
)((
++
s_ClientReqCount
)
%=
10000000
));
_docked_request
.
insert
(
FMP_EPAY_CLIENTREQCOUNT
,
(
int
)((
++
s_ClientReqCount
)
%=
10000000
));
//添加refund_id字段
_docked_request
.
insert
(
FMP_EPAY_REFUND_ID
,
(
int
)
QDateTime
::
currentDateTime
().
toTime_t
());
if
(
_is_api
)
{
if
(
_is_api
)
{
_docked_request
[
FMP_EPAY_STOREID
]
=
_origin_request
[
FMP_EPAY_STOREID
];
_docked_request
[
FMP_EPAY_STOREID
]
=
_origin_request
[
FMP_EPAY_STOREID
];
...
...
fmp_epay_p.cpp.autosave
0 → 100644
View file @
671d1009
This diff is collapsed.
Click to expand it.
fmp_epay_p.h
View file @
671d1009
...
@@ -31,6 +31,8 @@ public:
...
@@ -31,6 +31,8 @@ public:
void
ControlRefundJson
(
const
QJsonObject
&
trans
);
void
ControlRefundJson
(
const
QJsonObject
&
trans
);
void
ControlQueryJson
(
const
QJsonObject
&
trans
);
void
GetCheckMode
(
QString
sum
);
void
GetCheckMode
(
QString
sum
);
void
GetMode
();
void
GetMode
();
...
@@ -46,6 +48,9 @@ public:
...
@@ -46,6 +48,9 @@ public:
void
DockQueryRequest
(
const
QByteArray
&
json
);
void
DockQueryRequest
(
const
QByteArray
&
json
);
QByteArray
DockQueryRespond
();
QByteArray
DockQueryRespond
();
#ifdef GuestDisplay
void
SetAmoumt
(
int
amount
);
#endif
private
:
private
:
void
ControlReverseJson
();
void
ControlReverseJson
();
...
@@ -85,6 +90,10 @@ public:
...
@@ -85,6 +90,10 @@ public:
FMPSettingsInterface
*
_setting
;
FMPSettingsInterface
*
_setting
;
int
auto_close_seconds
;
//支付成功后自动关闭窗口秒数
int
auto_close_seconds
;
//支付成功后自动关闭窗口秒数
#ifdef GuestDisplay
void
SetAmount
(
int
amount
);
#endif
private
:
private
:
QJsonObject
_origin_request
;
QJsonObject
_origin_request
;
QJsonObject
_docked_request
;
QJsonObject
_docked_request
;
...
@@ -95,6 +104,9 @@ private:
...
@@ -95,6 +104,9 @@ private:
bool
_api_abort
;
bool
_api_abort
;
bool
_reverse_flag
;
bool
_reverse_flag
;
#ifdef GuestDisplay
int
_amount
;
#endif
static
unsigned
int
s_ClientReqCount
;
static
unsigned
int
s_ClientReqCount
;
FMPDataBase
*
_db
;
FMPDataBase
*
_db
;
...
...
fmp_epayview_dialog.cpp
View file @
671d1009
...
@@ -41,6 +41,7 @@ FMPPayDialog::FMPPayDialog(FMPePayPrivate *control, QVariantHash basicinfo, QWid
...
@@ -41,6 +41,7 @@ FMPPayDialog::FMPPayDialog(FMPePayPrivate *control, QVariantHash basicinfo, QWid
_wait
=
NULL
;
_wait
=
NULL
;
_success_flag
=
false
;
_success_flag
=
false
;
_is_amt
=
false
;
_is_amt
=
false
;
_amout_init
=
false
;
this
->
setWindowFlags
(
windowFlags
()
|
Qt
::
WindowStaysOnTopHint
|
Qt
::
FramelessWindowHint
);
this
->
setWindowFlags
(
windowFlags
()
|
Qt
::
WindowStaysOnTopHint
|
Qt
::
FramelessWindowHint
);
this
->
setWindowFlags
(
Qt
::
FramelessWindowHint
);
this
->
setWindowFlags
(
Qt
::
FramelessWindowHint
);
...
@@ -193,6 +194,11 @@ void FMPPayDialog::confirmRefund()
...
@@ -193,6 +194,11 @@ void FMPPayDialog::confirmRefund()
onBtnConfirmClicked
();
onBtnConfirmClicked
();
}
}
void
FMPPayDialog
::
setAmount
(
int
amount
)
{
ui
->
lineedit_num
->
setText
(
QString
::
number
((
amount
)
/
100.0
,
'f'
,
2
));
}
void
FMPPayDialog
::
show
()
void
FMPPayDialog
::
show
()
{
{
...
...
fmp_epayview_dialog.h
View file @
671d1009
...
@@ -44,6 +44,8 @@ public:
...
@@ -44,6 +44,8 @@ public:
void
confirmRefund
();
void
confirmRefund
();
void
setAmount
(
int
amount
);
public
slots
:
public
slots
:
void
showErrorMsg
(
QString
errormsg
);
void
showErrorMsg
(
QString
errormsg
);
...
@@ -131,6 +133,7 @@ private:
...
@@ -131,6 +133,7 @@ private:
QTimer
*
_wnd_close_timer
;
QTimer
*
_wnd_close_timer
;
int
_seconds
;
int
_seconds
;
bool
_isConfirmRefund
;
bool
_isConfirmRefund
;
bool
_amout_init
;
};
};
#endif // DIALOG_H
#endif // DIALOG_H
res/MANIFEST.MF
View file @
671d1009
Plugin-SymbolicName: fmp.epay
Plugin-SymbolicName: fmp.epay
Plugin-Version: 0.1.0
Plugin-Version: 0.1.0
Plugin-Name: fmp.epay
Plugin-Name: fmp.epay
Plugin-Copyright: Freemud Ltd. Copyright (C) 2014-201
8
Plugin-Copyright: Freemud Ltd. Copyright (C) 2014-201
9
Plugin-Vendor: Freemud
Plugin-Vendor: Freemud
version.h
View file @
671d1009
...
@@ -5,7 +5,7 @@
...
@@ -5,7 +5,7 @@
#define VER_MINOR 1
#define VER_MINOR 1
#define VER_REVISION 0
#define VER_REVISION 0
#define VER_BUILD
28
#define VER_BUILD
33
//! Convert version numbers to string
//! Convert version numbers to string
#define _STR(S) #S
#define _STR(S) #S
...
@@ -20,7 +20,7 @@
...
@@ -20,7 +20,7 @@
#define RES_STR_FILE_VER MAK_VER(VER_MAJOR, VER_MINOR, VER_REVISION, VER_BUILD)
#define RES_STR_FILE_VER MAK_VER(VER_MAJOR, VER_MINOR, VER_REVISION, VER_BUILD)
#define RES_STR_PRODUCT_VER MAK_VER(VER_MAJOR, VER_MINOR, VER_REVISION, VER_BUILD)
#define RES_STR_PRODUCT_VER MAK_VER(VER_MAJOR, VER_MINOR, VER_REVISION, VER_BUILD)
#define RES_COMPANY_NAME "上海非码网络科技有限公司\0"
#define RES_COMPANY_NAME "上海非码网络科技有限公司\0"
#define RES_COPYRIGHT "Freemud Ltd. Copyright (C) 2014-201
8
\0"
#define RES_COPYRIGHT "Freemud Ltd. Copyright (C) 2014-201
9
\0"
#define RES_FILE_DESC "fmp.epay\0"
#define RES_FILE_DESC "fmp.epay\0"
#define RES_INTER_NAME "fmp.epay\0"
#define RES_INTER_NAME "fmp.epay\0"
#define RES_FILE_NAME "fmp.epay\0"
#define RES_FILE_NAME "fmp.epay\0"
...
...
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