Commit a7ea91b5 by NitefullWind

1. 备份代码新增新建文件夹。 2. 新增认证界面显示版本号。 3. 修复备份重发的业务逻辑错误。

parent 9dc10198
...@@ -3,6 +3,7 @@ ...@@ -3,6 +3,7 @@
#include <QSqlQuery> #include <QSqlQuery>
#include <QSqlRecord> #include <QSqlRecord>
#include <QSqlError> #include <QSqlError>
#include <QDir>
#include <QFile> #include <QFile>
#include <QApplication> #include <QApplication>
#include <QDebug> #include <QDebug>
...@@ -25,7 +26,12 @@ FMBackup* FMBackup::instance() ...@@ -25,7 +26,12 @@ FMBackup* FMBackup::instance()
bool FMBackup::connect() bool FMBackup::connect()
{ {
bool isOk; bool isOk;
QString dbname = qApp->applicationDirPath() + "/backup/backupReq.db"; QString backupPath = qApp->applicationDirPath()+"/backup/";
QDir dir;
if(!dir.exists(backupPath)) {
dir.mkdir(backupPath);
}
QString dbname = backupPath + "backupReq.db";
if(!QFile::exists(dbname)) { if(!QFile::exists(dbname)) {
isOk = createTable(dbname); isOk = createTable(dbname);
} else { } else {
...@@ -44,10 +50,7 @@ bool FMBackup::connect() ...@@ -44,10 +50,7 @@ bool FMBackup::connect()
bool FMBackup::createTable(const QString &dbname) bool FMBackup::createTable(const QString &dbname)
{ {
QFile dbFile(dbname); _db = QSqlDatabase::addDatabase("QSQLITE");
dbFile.open(QIODevice::WriteOnly);
dbFile.close();
_db = QSqlDatabase::addDatabase("QSQLITE3");
_db.setDatabaseName(dbname); _db.setDatabaseName(dbname);
_db.open(); _db.open();
QSqlQuery query(_db); QSqlQuery query(_db);
...@@ -65,7 +68,7 @@ bool FMBackup::insertReqData(const QString url, const QString &reqData) ...@@ -65,7 +68,7 @@ bool FMBackup::insertReqData(const QString url, const QString &reqData)
qDebug() << "备份数据:" << reqData; qDebug() << "备份数据:" << reqData;
if (!isOk) { if (!isOk) {
qDebug() << "备份失败:" << _db.lastError().text(); qDebug() << "备份失败:" << query.lastError().text();
} }
return isOk; return isOk;
} }
......
...@@ -87,9 +87,12 @@ void FMVipForward::request(const QJsonObject &reqJob) ...@@ -87,9 +87,12 @@ void FMVipForward::request(const QJsonObject &reqJob)
QJsonDocument json(reqJob); QJsonDocument json(reqJob);
QByteArray reqData = json.toJson(QJsonDocument::Compact); QByteArray reqData = json.toJson(QJsonDocument::Compact);
// 结算请求时,如果没有account或account字段为空,则为非会员支付。备份请求信息 // 结算请求时,如果没用余额、积分、优惠券、代金券则备份请求信息
auto trans = reqJob["transaction"].toObject(); auto trans = reqJob["transaction"].toObject();
if (reqJob["reqType"]== FM_VIP_FINAL && trans["account"].toString().isEmpty()) { if (reqJob["reqType"]== FM_VIP_FINAL) {
if( trans["codeAmount"].toInt()==0 &&
trans["scoreAmount"].toInt()==0 &&
trans["coupons"].toArray().isEmpty() )
_needBackupData = reqData; _needBackupData = reqData;
} else { } else {
_needBackupData = ""; _needBackupData = "";
...@@ -237,7 +240,7 @@ void FMVipForward::final(const QJsonObject &job, QJsonObject &fmjob) ...@@ -237,7 +240,7 @@ void FMVipForward::final(const QJsonObject &job, QJsonObject &fmjob)
QJsonArray pay_ids = posTransObj["pay_ids"].toArray(); QJsonArray pay_ids = posTransObj["pay_ids"].toArray();
fmjob["memberTransId"] = job["fm_id"]; fmjob["memberTransId"] = job["fm_id"];
QJsonArray coupons = posTransObj["coupons"].toArray(); QJsonArray coupons = posTransObj["coupons"].toArray(); // 优惠券
int codeAmount=0, scoreAmount=0, cashAmount=0, thirdAmount=0; int codeAmount=0, scoreAmount=0, cashAmount=0, thirdAmount=0;
transObj["thirdPayType"] = 4; transObj["thirdPayType"] = 4;
foreach (QJsonValue pay_v , pay_ids) foreach (QJsonValue pay_v , pay_ids)
...@@ -248,7 +251,7 @@ void FMVipForward::final(const QJsonObject &job, QJsonObject &fmjob) ...@@ -248,7 +251,7 @@ void FMVipForward::final(const QJsonObject &job, QJsonObject &fmjob)
codeAmount = pay_ob["paid_total_amount"].toInt(); codeAmount = pay_ob["paid_total_amount"].toInt();
} else if(type == "25") { } else if(type == "25") {
scoreAmount = pay_ob["paid_total_amount"].toInt(); scoreAmount = pay_ob["paid_total_amount"].toInt();
} else if(type == "77") { } else if(type == "77") { // 代金券
coupons.append(pay_ob["code"].toString()); coupons.append(pay_ob["code"].toString());
} else if(type == "72" || type == "73") { } else if(type == "72" || type == "73") {
thirdAmount = pay_ob["paid_total_amount"].toInt(); thirdAmount = pay_ob["paid_total_amount"].toInt();
......
...@@ -2,10 +2,6 @@ ...@@ -2,10 +2,6 @@
#include "ui_fmviplogin.h" #include "ui_fmviplogin.h"
#include "fmvippanel.h" #include "fmvippanel.h"
#include <QFile> #include <QFile>
#include <QJsonDocument>
#include <QNetworkRequest>
#include <QNetworkReply>
#include <QNetworkAccessManager>
#include "fmvipforward.h" #include "fmvipforward.h"
#include "fmloading.h" #include "fmloading.h"
...@@ -18,11 +14,13 @@ FMVipLogin::FMVipLogin(bool isMustPayCode, QDialog *parent) : ...@@ -18,11 +14,13 @@ FMVipLogin::FMVipLogin(bool isMustPayCode, QDialog *parent) :
QString operator_id = SESSIONDATA_STRING("operator_id"); QString operator_id = SESSIONDATA_STRING("operator_id");
QString business_date = SESSIONDATA_STRING("business_date"); QString business_date = SESSIONDATA_STRING("business_date");
ui->login_edit->setFocus(); ui->login_edit->setFocus();
ui->operator_label->setText(operator_id); ui->operator_label->setText(operator_id);
ui->bd_label->setText(business_date); ui->bd_label->setText(business_date);
QString version_info = getVersionInfo();
ui->version_lable->setText(version_info);
if(isMustPayCode) if(isMustPayCode)
{ {
ui->login_edit->setPlaceholderText("输入支付码"); ui->login_edit->setPlaceholderText("输入支付码");
...@@ -37,6 +35,20 @@ FMVipLogin::~FMVipLogin() ...@@ -37,6 +35,20 @@ FMVipLogin::~FMVipLogin()
delete ui; delete ui;
} }
QString FMVipLogin::getVersionInfo()
{
QByteArray versionInfo;
QFile versionFile(qApp->applicationDirPath() + "/version.dat");
bool isOk = versionFile.open(QIODevice::ReadOnly);
if(isOk) {
versionInfo = versionFile.readAll();
} else {
versionInfo = "未知";
}
versionFile.close();
return versionInfo;
}
void FMVipLogin::on_login_btn_clicked() void FMVipLogin::on_login_btn_clicked()
{ {
qDebug() << __FUNCTION__; qDebug() << __FUNCTION__;
......
...@@ -16,6 +16,8 @@ class FMVipLogin : public FMVipWnd ...@@ -16,6 +16,8 @@ class FMVipLogin : public FMVipWnd
public: public:
explicit FMVipLogin(bool isMustPayCode = false, QDialog *parent = 0); explicit FMVipLogin(bool isMustPayCode = false, QDialog *parent = 0);
~FMVipLogin(); ~FMVipLogin();
QString getVersionInfo();
protected: protected:
void resetWnd(); void resetWnd();
signals: signals:
......
...@@ -338,6 +338,33 @@ ...@@ -338,6 +338,33 @@
</property> </property>
</widget> </widget>
</item> </item>
<item>
<spacer name="horizontalSpacer_2">
<property name="orientation">
<enum>Qt::Horizontal</enum>
</property>
<property name="sizeHint" stdset="0">
<size>
<width>40</width>
<height>20</height>
</size>
</property>
</spacer>
</item>
<item>
<widget class="QLabel" name="label">
<property name="text">
<string>版本 : </string>
</property>
</widget>
</item>
<item>
<widget class="QLabel" name="version_lable">
<property name="text">
<string>1.0 (2016.10.25 20:20)</string>
</property>
</widget>
</item>
</layout> </layout>
</widget> </widget>
</item> </item>
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment