提交信息!

This commit is contained in:
Kane Wang 2020-11-30 12:50:17 +08:00
parent f961688dc1
commit 8555274b9c
5 changed files with 151 additions and 21 deletions

View File

@ -22,8 +22,8 @@ QT_BEGIN_MOC_NAMESPACE
QT_WARNING_PUSH QT_WARNING_PUSH
QT_WARNING_DISABLE_DEPRECATED QT_WARNING_DISABLE_DEPRECATED
struct qt_meta_stringdata_QRepairRecommendationWidget_t { struct qt_meta_stringdata_QRepairRecommendationWidget_t {
QByteArrayData data[1]; QByteArrayData data[3];
char stringdata0[28]; char stringdata0[38];
}; };
#define QT_MOC_LITERAL(idx, ofs, len) \ #define QT_MOC_LITERAL(idx, ofs, len) \
Q_STATIC_BYTE_ARRAY_DATA_HEADER_INITIALIZER_WITH_OFFSET(len, \ Q_STATIC_BYTE_ARRAY_DATA_HEADER_INITIALIZER_WITH_OFFSET(len, \
@ -32,10 +32,13 @@ struct qt_meta_stringdata_QRepairRecommendationWidget_t {
) )
static const qt_meta_stringdata_QRepairRecommendationWidget_t qt_meta_stringdata_QRepairRecommendationWidget = { static const qt_meta_stringdata_QRepairRecommendationWidget_t qt_meta_stringdata_QRepairRecommendationWidget = {
{ {
QT_MOC_LITERAL(0, 0, 27) // "QRepairRecommendationWidget" QT_MOC_LITERAL(0, 0, 27), // "QRepairRecommendationWidget"
QT_MOC_LITERAL(1, 28, 8), // "onImport"
QT_MOC_LITERAL(2, 37, 0) // ""
}, },
"QRepairRecommendationWidget" "QRepairRecommendationWidget\0onImport\0"
""
}; };
#undef QT_MOC_LITERAL #undef QT_MOC_LITERAL
@ -45,21 +48,32 @@ static const uint qt_meta_data_QRepairRecommendationWidget[] = {
8, // revision 8, // revision
0, // classname 0, // classname
0, 0, // classinfo 0, 0, // classinfo
0, 0, // methods 1, 14, // methods
0, 0, // properties 0, 0, // properties
0, 0, // enums/sets 0, 0, // enums/sets
0, 0, // constructors 0, 0, // constructors
0, // flags 0, // flags
0, // signalCount 0, // signalCount
// slots: name, argc, parameters, tag, flags
1, 0, 19, 2, 0x09 /* Protected */,
// slots: parameters
QMetaType::Void,
0 // eod 0 // eod
}; };
void QRepairRecommendationWidget::qt_static_metacall(QObject *_o, QMetaObject::Call _c, int _id, void **_a) void QRepairRecommendationWidget::qt_static_metacall(QObject *_o, QMetaObject::Call _c, int _id, void **_a)
{ {
Q_UNUSED(_o); if (_c == QMetaObject::InvokeMetaMethod) {
Q_UNUSED(_id); auto *_t = static_cast<QRepairRecommendationWidget *>(_o);
Q_UNUSED(_c); Q_UNUSED(_t)
switch (_id) {
case 0: _t->onImport(); break;
default: ;
}
}
Q_UNUSED(_a); Q_UNUSED(_a);
} }
@ -89,6 +103,17 @@ void *QRepairRecommendationWidget::qt_metacast(const char *_clname)
int QRepairRecommendationWidget::qt_metacall(QMetaObject::Call _c, int _id, void **_a) int QRepairRecommendationWidget::qt_metacall(QMetaObject::Call _c, int _id, void **_a)
{ {
_id = QWidget::qt_metacall(_c, _id, _a); _id = QWidget::qt_metacall(_c, _id, _a);
if (_id < 0)
return _id;
if (_c == QMetaObject::InvokeMetaMethod) {
if (_id < 1)
qt_static_metacall(this, _c, _id, _a);
_id -= 1;
} else if (_c == QMetaObject::RegisterMethodArgumentMetaType) {
if (_id < 1)
*reinterpret_cast<int*>(_a[0]) = -1;
_id -= 1;
}
return _id; return _id;
} }
QT_WARNING_POP QT_WARNING_POP

View File

@ -3,6 +3,7 @@
#include "QRepairRecommendationWidget.h" #include "QRepairRecommendationWidget.h"
#include "../../Data/DataManipulation/Excel/LoadFromExcel.h" #include "../../Data/DataManipulation/Excel/LoadFromExcel.h"
#include "../../Data/DataManipulation/oracle/ImportToOracle.h" #include "../../Data/DataManipulation/oracle/ImportToOracle.h"
#include "../../util/qt/qt_util.h"
using namespace std; using namespace std;
@ -10,6 +11,8 @@ QRepairRecommendationWidget::QRepairRecommendationWidget( QWidget * parent )
: QWidget( parent ) : QWidget( parent )
{ {
ui.setupUi( this ); ui.setupUi( this );
init();
} }
QRepairRecommendationWidget::~QRepairRecommendationWidget() QRepairRecommendationWidget::~QRepairRecommendationWidget()
@ -19,10 +22,10 @@ QRepairRecommendationWidget::~QRepairRecommendationWidget()
void QRepairRecommendationWidget::onImport() void QRepairRecommendationWidget::onImport()
{ {
//打开文件 //打开文件
QString dir = QString::fromLocal8Bit( "." ); QString dir = QString::fromUtf8( "." );
QString filter = QString::fromLocal8Bit( "Excel文件*.xlsx)" ); QString filter = QString::fromUtf8( "Excel文件(*.xlsx)" );
QStringList fileList = QFileDialog::getOpenFileNames( this, QStringList fileList = QFileDialog::getOpenFileNames( this,
QString::fromLocal8Bit( "请选择要导入的数据文件" ), QString::fromUtf8( "请选择要导入的数据文件" ),
dir, dir,
filter ); filter );
@ -48,8 +51,8 @@ void QRepairRecommendationWidget::onImport()
recommandationVector.clear(); recommandationVector.clear();
QMessageBox::critical( nullptr, QMessageBox::critical( nullptr,
QString::fromLocal8Bit( "读取Excel表格出错" ), QString::fromUtf8( "读取Excel表格出错" ),
QString::fromLocal8Bit( error.what() ) ); QString::fromUtf8( error.what() ) );
return; return;
} }
@ -62,7 +65,8 @@ void QRepairRecommendationWidget::onImport()
string password = "cpic123456"; string password = "cpic123456";
string tnsName = "xmcx1"; string tnsName = "xmcx1";
ImportRepairRecommandationToOracle(userName, password, tnsName, recommandationVector); ImportRepairRecommandationToOracle( userName, password, tnsName, recommandationVector );
showRepairRecommandation();
} }
catch ( runtime_error & error ) catch ( runtime_error & error )
{ {
@ -70,11 +74,18 @@ void QRepairRecommendationWidget::onImport()
recommandationVector.clear(); recommandationVector.clear();
QMessageBox::critical( nullptr, QMessageBox::critical( nullptr,
QString::fromLocal8Bit( "保存数据出错!" ), QString::fromUtf8( "保存数据出错!" ),
QString::fromLocal8Bit( error.what() ) ); QString::fromUtf8( error.what() ) );
return; return;
} }
//提示
QString messageInfo = QString::fromUtf8( "Maybe写入%1了条记录。" ).arg( recommandationVector.size() );
QMessageBox::information( nullptr,
QString::fromUtf8( "保存成功" ),
messageInfo );
} }
void QRepairRecommendationWidget::init() void QRepairRecommendationWidget::init()
@ -100,4 +111,96 @@ void QRepairRecommendationWidget::initSignal()
void QRepairRecommendationWidget::showRepairRecommandation() void QRepairRecommendationWidget::showRepairRecommandation()
{ {
int rowIndex = 0;
int columnIndex = 0;
QTableWidgetItem * pItem = nullptr;
ui.pTableWidgetRepairRecommandation->clearContents();
ui.pTableWidgetRepairRecommandation->setRowCount( recommandationVector.size() );
for ( auto iter = recommandationVector.begin();
iter != recommandationVector.end();
++iter, ++rowIndex )
{
columnIndex = 0;
//工单号
pItem = new QTableWidgetItem();
pItem->setText( QString::fromStdWString( iter->getOrderNo() ) );
pItem->setTextAlignment( Qt::AlignHCenter | Qt::AlignVCenter );
ui.pTableWidgetRepairRecommandation->setItem(rowIndex, columnIndex++, pItem);
//工单类型
pItem = new QTableWidgetItem();
pItem->setText(QString::fromStdWString(iter->getOrderType()));
pItem->setTextAlignment(Qt::AlignHCenter | Qt::AlignVCenter);
ui.pTableWidgetRepairRecommandation->setItem(rowIndex, columnIndex++, pItem);
//报案号
pItem = new QTableWidgetItem();
pItem->setText(QString::fromStdWString(iter->getNotifyNo()));
pItem->setTextAlignment(Qt::AlignHCenter | Qt::AlignVCenter);
ui.pTableWidgetRepairRecommandation->setItem(rowIndex, columnIndex++, pItem);
//推荐车商代码
pItem = new QTableWidgetItem();
pItem->setText(QString::fromStdWString(iter->getSuggestedCarDealerCode()));
pItem->setTextAlignment(Qt::AlignHCenter | Qt::AlignVCenter);
ui.pTableWidgetRepairRecommandation->setItem(rowIndex, columnIndex++, pItem);
//推荐车商名称
pItem = new QTableWidgetItem();
pItem->setText(QString::fromStdWString(iter->getSuggestedCarDealerName()));
pItem->setTextAlignment(Qt::AlignHCenter | Qt::AlignVCenter);
ui.pTableWidgetRepairRecommandation->setItem(rowIndex, columnIndex++, pItem);
//出险日期
pItem = new QTableWidgetItem();
pItem->setText(QString::fromStdWString(iter->getDamageDate()));
pItem->setTextAlignment(Qt::AlignHCenter | Qt::AlignVCenter);
ui.pTableWidgetRepairRecommandation->setItem(rowIndex, columnIndex++, pItem);
//车牌号
pItem = new QTableWidgetItem();
pItem->setText(QString::fromStdWString(iter->getPlateNumber()));
pItem->setTextAlignment(Qt::AlignHCenter | Qt::AlignVCenter);
ui.pTableWidgetRepairRecommandation->setItem(rowIndex, columnIndex++, pItem);
//品牌名称
pItem = new QTableWidgetItem();
pItem->setText(QString::fromStdWString(iter->getBrandName()));
pItem->setTextAlignment(Qt::AlignHCenter | Qt::AlignVCenter);
ui.pTableWidgetRepairRecommandation->setItem(rowIndex, columnIndex++, pItem);
//短信类型
pItem = new QTableWidgetItem();
pItem->setText(QString::fromStdWString(iter->getMessageType()));
pItem->setTextAlignment(Qt::AlignHCenter | Qt::AlignVCenter);
ui.pTableWidgetRepairRecommandation->setItem(rowIndex, columnIndex++, pItem);
//发送时间
pItem = new QTableWidgetItem();
pItem->setText(QString::fromStdWString(iter->getMessageSendingDate()));
pItem->setTextAlignment(Qt::AlignHCenter | Qt::AlignVCenter);
ui.pTableWidgetRepairRecommandation->setItem(rowIndex, columnIndex++, pItem);
//数据来源
pItem = new QTableWidgetItem();
pItem->setText(QString::fromStdWString(iter->getDataSource()));
pItem->setTextAlignment(Qt::AlignHCenter | Qt::AlignVCenter);
ui.pTableWidgetRepairRecommandation->setItem(rowIndex, columnIndex++, pItem);
}
resizeTableWidgetTab(ui.pTableWidgetRepairRecommandation, 10);
} }

View File

@ -18,8 +18,8 @@
<rect> <rect>
<x>150</x> <x>150</x>
<y>70</y> <y>70</y>
<width>258</width> <width>581</width>
<height>240</height> <height>331</height>
</rect> </rect>
</property> </property>
<layout class="QVBoxLayout" name="pLayoutMain"> <layout class="QVBoxLayout" name="pLayoutMain">
@ -184,6 +184,8 @@
</widget> </widget>
</widget> </widget>
<layoutdefault spacing="6" margin="11"/> <layoutdefault spacing="6" margin="11"/>
<resources/> <resources>
<include location="../../../resource.qrc"/>
</resources>
<connections/> <connections/>
</ui> </ui>

View File

@ -22,7 +22,7 @@ void excelTest()
vector<CarDealerScheme> schemeVector; vector<CarDealerScheme> schemeVector;
vector<CarDealerAchievement> achievementsVector; vector<CarDealerAchievement> achievementsVector;
vector<RepairOrder> repairOrderVector; vector<RepairOrder> repairOrderVector;
vector<RepairSuggestionRecord> suggestionRecordsVector; vector<RepairRecommandationRecord> suggestionRecordsVector;
vector<NewRepairMonitorReportRecord> repairMonitorVector; vector<NewRepairMonitorReportRecord> repairMonitorVector;
string userName = "car_dealer"; string userName = "car_dealer";