telsale-management/代码/telsale_aux_kit/source/QTelSalePolicyInfoQuery.cpp

199 lines
5.2 KiB
C++
Raw Normal View History

#include <vector>
#include <Qtwidgets/QtWidgets>
#include "SystemDataQuery.h"
#include "SystemData.h"
#include "QTelSalePolicyInfoQuery.h"
using namespace std;
QTelSalePolicyInfoQuery::QTelSalePolicyInfoQuery(QWidget *parent)
: QWidget(parent)
{
setupUi(this);
init();
initWidget();
initSignal();
}
QTelSalePolicyInfoQuery::~QTelSalePolicyInfoQuery()
{
}
void QTelSalePolicyInfoQuery::init()
{
}
void QTelSalePolicyInfoQuery::initWidget()
{
setLayout( pLayoutMain );
//¼<><C2BC>ʱ<EFBFBD><CAB1>
pDateEditStart->setDate( QDate::currentDate().addDays(-1) );
pDateEditEnd->setDate( QDate::currentDate() );
}
void QTelSalePolicyInfoQuery::initSignal()
{
connect( pEditOperatorCode, SIGNAL(editingFinished()), this, SLOT(onOperatorCodeEdited()) );
connect( pEditOperatorCode, SIGNAL(textChanged(const QString &)), this, SLOT(onOperatorCodeEditing(const QString &)) );
connect( pButtonQuery, SIGNAL(clicked()), this, SLOT(onQuery()) );
connect( pButtonReset, SIGNAL(clicked()), this, SLOT(onReset()) );
}
void QTelSalePolicyInfoQuery::onOperatorCodeEditing(const QString & text)
{
pEditOperatorName->clear();
}
void QTelSalePolicyInfoQuery::onOperatorCodeEdited()
{
string strStaffCode = pEditOperatorCode->text().toLocal8Bit().data();
string strStaffName;
queryStaffInfo( strStaffCode, strStaffName );
pEditOperatorName->setText( QString::fromLocal8Bit( strStaffName.c_str() ));
}
void QTelSalePolicyInfoQuery::onQuery()
{
string strPolicyNo = pEditPolicyNo->text().toLocal8Bit().data();
string strOperatorCode;
string strStartDate;
string strEndDate;
vector<SPolicyQuery> vPolicyInfo;
if ( !pEditOperatorName->text().isEmpty() )
{
strOperatorCode = pEditOperatorCode->text().toLocal8Bit().data();
}
else
{
//<2F>Զ<EFBFBD>ʹ<EFBFBD>ò<EFBFBD><C3B2><EFBFBD>Ա<EFBFBD>Ĺ<EFBFBD><C4B9><EFBFBD>Ϊ<EFBFBD><CEAA><EFBFBD><EFBFBD>
strOperatorCode = getUserCode();
}
if ( pGroupBoxDate->isChecked() )
{
strStartDate = pDateEditStart->date().toString( QString::fromLocal8Bit("MM/dd/yyyy") ).toLocal8Bit().data();
strEndDate = pDateEditEnd->date().toString( QString::fromLocal8Bit("MM/dd/yyyy") ).toLocal8Bit().data();
}
try
{
QueryTelSalePolicyInfo( strPolicyNo,
strOperatorCode,
strStartDate,
strEndDate,
vPolicyInfo );
showData( vPolicyInfo );
}
catch ( runtime_error & error )
{
QMessageBox::critical( this, QString::fromLocal8Bit("<EFBFBD><EFBFBD>ѯ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>"), QString::fromLocal8Bit(error.what()) );
}
}
void QTelSalePolicyInfoQuery::onReset()
{
//¼<><C2BC>ʱ<EFBFBD><CAB1>
pDateEditStart->setDate( QDate::currentDate().addDays(-1) );
pDateEditEnd->setDate( QDate::currentDate() );
pEditPolicyNo->clear();
pEditOperatorCode->clear();
pEditOperatorName->clear();
}
void QTelSalePolicyInfoQuery::showData(std::vector<SPolicyQuery> & vPolicy)
{
QTableWidgetItem * pItem = NULL;
QLabel * pLabel = NULL;
unsigned int nRowIndex = 0;
pTableWidgetInfo->setRowCount( vPolicy.size() );
for ( vector<SPolicyQuery>::iterator iter = vPolicy.begin(); iter != vPolicy.end(); ++iter )
{
//<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
pItem = new QTableWidgetItem( QString::fromLocal8Bit( iter->strPolicySerial.c_str() ));
pItem->setTextAlignment( Qt::AlignHCenter | Qt::AlignVCenter );
pTableWidgetInfo->setItem( nRowIndex, 0, pItem );
//<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
pItem = new QTableWidgetItem( QString::fromLocal8Bit( iter->strSalerCode.c_str() ));
pItem->setTextAlignment( Qt::AlignHCenter | Qt::AlignVCenter );
pTableWidgetInfo->setItem( nRowIndex, 1, pItem );
//<2F><><EFBFBD><EFBFBD>
pItem = new QTableWidgetItem( QString::fromLocal8Bit( iter->strDeptName.c_str() ));
pItem->setTextAlignment( Qt::AlignHCenter | Qt::AlignVCenter );
pTableWidgetInfo->setItem( nRowIndex, 2, pItem );
//<2F><><EFBFBD><EFBFBD>
pItem = new QTableWidgetItem( QString::fromLocal8Bit( iter->strOfficeName.c_str() ));
pItem->setTextAlignment( Qt::AlignHCenter | Qt::AlignVCenter );
pTableWidgetInfo->setItem( nRowIndex, 3, pItem );
//<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
if ( iter->strCDLH == "1" )
{
pItem = new QTableWidgetItem( QString::fromLocal8Bit( "<EFBFBD><EFBFBD>" ));
}
else
{
pItem = new QTableWidgetItem( QString::fromLocal8Bit( "<EFBFBD><EFBFBD>" ));
}
pItem->setTextAlignment( Qt::AlignHCenter | Qt::AlignVCenter );
pTableWidgetInfo->setItem( nRowIndex, 4, pItem );
//<2F><><EFBFBD>̴<EFBFBD><CCB4><EFBFBD>
pItem = new QTableWidgetItem( QString::fromLocal8Bit( iter->strAutoTraderCode.c_str() ));
pItem->setTextAlignment( Qt::AlignHCenter | Qt::AlignVCenter );
pTableWidgetInfo->setItem( nRowIndex, 5, pItem );
//<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
pItem = new QTableWidgetItem( QString::fromLocal8Bit( iter->strAutoTraderName.c_str() ));
pItem->setTextAlignment( Qt::AlignHCenter | Qt::AlignVCenter );
pTableWidgetInfo->setItem( nRowIndex, 6, pItem );
//<2F><>Ʒ<EFBFBD>ܼ<EFBFBD>ֵ
pItem = new QTableWidgetItem( QString::number(iter->dGiftPriceSum, 'f', 2) );
pItem->setTextAlignment( Qt::AlignHCenter | Qt::AlignVCenter );
pTableWidgetInfo->setItem( nRowIndex, 7, pItem );
//<2F><>Ʒ
pItem = new QTableWidgetItem( QString::fromLocal8Bit( iter->strGifts.c_str() ));
pItem->setTextAlignment( Qt::AlignLeft | Qt::AlignVCenter );
pTableWidgetInfo->setItem( nRowIndex, 8, pItem );
//¼<><C2BC><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
pItem = new QTableWidgetItem( QString::fromLocal8Bit( iter->strInputDate.c_str() ));
pItem->setTextAlignment( Qt::AlignHCenter | Qt::AlignVCenter );
pTableWidgetInfo->setItem( nRowIndex, 9, pItem );
++nRowIndex;
}
pTableWidgetInfo->resizeColumnsToContents();
}