Commit a7ea91b5 by NitefullWind

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

parent 9dc10198
......@@ -3,6 +3,7 @@
#include <QSqlQuery>
#include <QSqlRecord>
#include <QSqlError>
#include <QDir>
#include <QFile>
#include <QApplication>
#include <QDebug>
......@@ -25,7 +26,12 @@ FMBackup* FMBackup::instance()
bool FMBackup::connect()
{
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)) {
isOk = createTable(dbname);
} else {
......@@ -44,10 +50,7 @@ bool FMBackup::connect()
bool FMBackup::createTable(const QString &dbname)
{
QFile dbFile(dbname);
dbFile.open(QIODevice::WriteOnly);
dbFile.close();
_db = QSqlDatabase::addDatabase("QSQLITE3");
_db = QSqlDatabase::addDatabase("QSQLITE");
_db.setDatabaseName(dbname);
_db.open();
QSqlQuery query(_db);
......@@ -65,7 +68,7 @@ bool FMBackup::insertReqData(const QString url, const QString &reqData)
qDebug() << "备份数据:" << reqData;
if (!isOk) {
qDebug() << "备份失败:" << _db.lastError().text();
qDebug() << "备份失败:" << query.lastError().text();
}
return isOk;
}
......
......@@ -87,9 +87,12 @@ void FMVipForward::request(const QJsonObject &reqJob)
QJsonDocument json(reqJob);
QByteArray reqData = json.toJson(QJsonDocument::Compact);
// 结算请求时,如果没有account或account字段为空,则为非会员支付。备份请求信息
// 结算请求时,如果没用余额、积分、优惠券、代金券则备份请求信息
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;
} else {
_needBackupData = "";
......@@ -237,7 +240,7 @@ void FMVipForward::final(const QJsonObject &job, QJsonObject &fmjob)
QJsonArray pay_ids = posTransObj["pay_ids"].toArray();
fmjob["memberTransId"] = job["fm_id"];
QJsonArray coupons = posTransObj["coupons"].toArray();
QJsonArray coupons = posTransObj["coupons"].toArray(); // 优惠券
int codeAmount=0, scoreAmount=0, cashAmount=0, thirdAmount=0;
transObj["thirdPayType"] = 4;
foreach (QJsonValue pay_v , pay_ids)
......@@ -248,7 +251,7 @@ void FMVipForward::final(const QJsonObject &job, QJsonObject &fmjob)
codeAmount = pay_ob["paid_total_amount"].toInt();
} else if(type == "25") {
scoreAmount = pay_ob["paid_total_amount"].toInt();
} else if(type == "77") {
} else if(type == "77") { // 代金券
coupons.append(pay_ob["code"].toString());
} else if(type == "72" || type == "73") {
thirdAmount = pay_ob["paid_total_amount"].toInt();
......
......@@ -2,10 +2,6 @@
#include "ui_fmviplogin.h"
#include "fmvippanel.h"
#include <QFile>
#include <QJsonDocument>
#include <QNetworkRequest>
#include <QNetworkReply>
#include <QNetworkAccessManager>
#include "fmvipforward.h"
#include "fmloading.h"
......@@ -18,11 +14,13 @@ FMVipLogin::FMVipLogin(bool isMustPayCode, QDialog *parent) :
QString operator_id = SESSIONDATA_STRING("operator_id");
QString business_date = SESSIONDATA_STRING("business_date");
ui->login_edit->setFocus();
ui->operator_label->setText(operator_id);
ui->bd_label->setText(business_date);
QString version_info = getVersionInfo();
ui->version_lable->setText(version_info);
if(isMustPayCode)
{
ui->login_edit->setPlaceholderText("输入支付码");
......@@ -37,6 +35,20 @@ FMVipLogin::~FMVipLogin()
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()
{
qDebug() << __FUNCTION__;
......
......@@ -16,6 +16,8 @@ class FMVipLogin : public FMVipWnd
public:
explicit FMVipLogin(bool isMustPayCode = false, QDialog *parent = 0);
~FMVipLogin();
QString getVersionInfo();
protected:
void resetWnd();
signals:
......
......@@ -338,6 +338,33 @@
</property>
</widget>
</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>
</widget>
</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