#include "formmffee.h" #include "ui_formmffee.h" #include "WSSSO.h" #include "respgetmfpayinfo.h" #include "respgetusersso.h" #include FormMfFee::FormMfFee(QWidget *parent) : QWidget(parent), ui(new Ui::FormMfFee) { ui->setupUi(this); resetUI(); } void FormMfFee::setUserHash(QString userHash) { this->userHash = userHash; if(this->userHash.isEmpty()) resetUI(); } FormMfFee::~FormMfFee() { delete ui; qDebug()<tableWidgetPayInfo->setEnabled(false); QTableWidgetItem *item = new QTableWidgetItem(); item->setTextAlignment(Qt::AlignRight|Qt::AlignVCenter); item->setText("暂无信息"); ui->tableWidgetPayInfo->setItem(1,4,item); ui->tableWidgetPayInfo->setEnabled(false); } void FormMfFee::renderPayInfo(QMultiMap map, int rowCount) { if(rowCount==0) { setDefaultPayInfo(); return ; } initPayInfoTable(rowCount); ui->tableWidgetPayInfo->setEnabled(true); QStringList keys; keys<<"payid"<<"usercode"<<"paymoney"<<"starttime"<<"endtime"<<"paytime"<<"payfunc"<<"memo"; keys<<"giftmoney"; for(int col=0;colsetData(Qt::UserRole,rows.at(row)); item->setData(Qt::DisplayRole,display); item->setTextAlignment(Qt::AlignHCenter|Qt::AlignVCenter); ui->tableWidgetPayInfo->setItem(row,col,item); } } ui->tableWidgetPayInfo->sortByColumn(0); } void FormMfFee::initPayInfoTable(int rows) { QStringList headers; headers.append("编号"); headers.append("所属用户"); headers.append("缴费金额"); headers.append("服务起始日期"); headers.append("服务截止日期"); headers.append("缴费时间"); headers.append("付费功能"); headers.append("备注"); ui->tableWidgetPayInfo->setRowCount(0); ui->tableWidgetPayInfo->setColumnCount(0); ui->tableWidgetPayInfo->setEditTriggers(QAbstractItemView::NoEditTriggers); ui->tableWidgetPayInfo->setColumnCount(8); ui->tableWidgetPayInfo->setHorizontalHeaderLabels(headers); ui->tableWidgetPayInfo->setRowCount(rows); ui->tableWidgetPayInfo->setShowGrid(false); ui->tableWidgetPayInfo->setAlternatingRowColors(true); ui->tableWidgetPayInfo->setSelectionBehavior(QAbstractItemView::SelectRows); ui->tableWidgetPayInfo->setSelectionMode(QAbstractItemView::MultiSelection); ui->tableWidgetPayInfo->setColumnWidth(0,50); ui->tableWidgetPayInfo->setColumnWidth(1,60); ui->tableWidgetPayInfo->setColumnWidth(2,60); ui->tableWidgetPayInfo->setColumnWidth(3,100); ui->tableWidgetPayInfo->setColumnWidth(4,100); ui->tableWidgetPayInfo->setColumnWidth(5,100); ui->tableWidgetPayInfo->setColumnWidth(6,100); ui->tableWidgetPayInfo->setColumnWidth(7,110); ui->tableWidgetPayInfo->horizontalHeader()->setStyleSheet("font:12px"); ui->tableWidgetPayInfo->horizontalHeader()->setResizeMode(QHeaderView::Fixed); ui->tableWidgetPayInfo->verticalHeader()->setResizeMode(QHeaderView::Fixed); ui->tableWidgetPayInfo->setHorizontalScrollBarPolicy(Qt::ScrollBarAlwaysOff); ui->tableWidgetPayInfo->setVerticalScrollBarPolicy(Qt::ScrollBarAlwaysOn); ui->tableWidgetPayInfo->verticalHeader()->setFixedWidth(25); ui->tableWidgetPayInfo->horizontalHeader()->setFixedHeight(25); ui->tableWidgetPayInfo->setSortingEnabled(true); } void FormMfFee::on_pushButtonQueryPayInfo_clicked() { if(this->userHash.isEmpty()) { QMessageBox::critical(this,"提示","您现在还未登录,请登录后再操作!",QMessageBox::Ok); return; } ui->pushButtonQueryPayInfo->setEnabled(false); WSSSO interface; QString dateStart = ui->dateEditStart->text(); QString dateEnd = ui->dateEditEnd->text(); ui->labelSubmit->setText("正在查询,请稍候..."); QString json = interface.getMfPayInfo(dateStart,dateEnd,this->userHash); ui->labelSubmit->setText(""); if(!json.isEmpty()){ RespGetMfPayInfo *response = new RespGetMfPayInfo(json); if(response->getRtnCode()==-1) { QMessageBox::critical(this,"提示","登录超时,请重新登录!",QMessageBox::Ok); } else if(response->getRtnCode()==1) renderPayInfo(response->getRs(),response->getRsCount()); else setDefaultPayInfo(); delete response; } else { QMessageBox::warning(this,"提示","网络连接失败!",QMessageBox::Ok); } ui->pushButtonQueryPayInfo->setEnabled(true); } void FormMfFee::resetUI() { setDefaultPayInfo(); ui->labelSubmit->setText(""); ui->labelSubmit->setStyleSheet("QLabel{color:#08a61b;font:12px;font-weight: bold;}"); ui->dateEditStart->setDate(QDate::currentDate().addDays(-30)); ui->dateEditEnd->setDate(QDate::currentDate()); ui->tabWidget->setCurrentIndex(0); ui->tabWidget->setStyleSheet("font:12px"); }