提交信息!

This commit is contained in:
Kane Wang 2020-12-18 17:21:29 +08:00
parent 63910b48ea
commit 6be7e49dd2
7 changed files with 113 additions and 79 deletions

View File

@ -7,4 +7,4 @@ UserInfo * pStaffInfo = nullptr;
const string SYSTEM_ADMIN = "999"; const string SYSTEM_ADMIN = "999";
const string ADMIN = "000"; const string ADMIN = "000";
const string TEAM_LEADER = "000"; const string TEAM_LEADER = "001";

View File

@ -70,6 +70,7 @@ const wchar_t * pwszRepairOrderCaption[] = {
//卢霖城-送返修推荐表 //卢霖城-送返修推荐表
const unsigned int REPAIR_RECOMMANDATION_CAPTION_COUNT = 11; const unsigned int REPAIR_RECOMMANDATION_CAPTION_COUNT = 11;
const wchar_t * pwszRepairRecommandationCaption[] = { const wchar_t * pwszRepairRecommandationCaption[] = {
L"分公司名称",
L"工单号", L"工单号",
L"工单类型", L"工单类型",
L"报案号", L"报案号",
@ -781,6 +782,7 @@ void LoadRepairRecommandationFromXlsx( const std::wstring &
//起始列索引 //起始列索引
int colunmIndex = pSheet->firstCol(); int colunmIndex = pSheet->firstCol();
wstring branchName = ReadCellStringFromXlsx( pBook, sheetIndex, rowIndex, colunmIndex++, true );
wstring orderNo = ReadCellStringFromXlsx( pBook, sheetIndex, rowIndex, colunmIndex++, true ); wstring orderNo = ReadCellStringFromXlsx( pBook, sheetIndex, rowIndex, colunmIndex++, true );
wstring orderType = ReadCellStringFromXlsx( pBook, sheetIndex, rowIndex, colunmIndex++, true ); wstring orderType = ReadCellStringFromXlsx( pBook, sheetIndex, rowIndex, colunmIndex++, true );
wstring notifyNo = ReadCellStringFromXlsx( pBook, sheetIndex, rowIndex, colunmIndex++, true ); wstring notifyNo = ReadCellStringFromXlsx( pBook, sheetIndex, rowIndex, colunmIndex++, true );
@ -793,7 +795,8 @@ void LoadRepairRecommandationFromXlsx( const std::wstring &
wstring messageSendingDate = ReadCellStringFromXlsx( pBook, sheetIndex, rowIndex, colunmIndex++, true ); wstring messageSendingDate = ReadCellStringFromXlsx( pBook, sheetIndex, rowIndex, colunmIndex++, true );
wstring dataSource = ReadCellStringFromXlsx( pBook, sheetIndex, rowIndex, colunmIndex++, true ); wstring dataSource = ReadCellStringFromXlsx( pBook, sheetIndex, rowIndex, colunmIndex++, true );
RepairRecommandationRecord record( orderNo, RepairRecommandationRecord record( branchName,
orderNo,
orderType, orderType,
notifyNo, notifyNo,
RecommandCarDealerCode, RecommandCarDealerCode,

View File

@ -448,7 +448,8 @@ void ImportRepairRecommandationToOracle( const std::string &
const otext * szSql = const otext * szSql =
"BEGIN \n" "BEGIN \n"
" car_dealer.data_import_util_pkg.import_repairing_suggestion(:a_order_no, \n" " car_dealer.data_import_util_pkg.import_repairing_suggestion(:a_branch_name, \n"
" :a_order_no, \n"
" :a_order_type, \n" " :a_order_type, \n"
" :a_notify_no, \n" " :a_notify_no, \n"
" :a_sug_cardealer_code, \n" " :a_sug_cardealer_code, \n"
@ -484,7 +485,6 @@ void ImportRepairRecommandationToOracle( const std::string &
} }
catch ( runtime_error & error ) catch ( runtime_error & error )
{ {
OCI_ConnectionFree( pConn );
OCI_Cleanup(); OCI_Cleanup();
throw error; throw error;
@ -497,6 +497,7 @@ void ImportRepairRecommandationToOracle( const std::string &
try try
{ {
//绑定数据 //绑定数据
string = QString::fromStdWString(iterOrder->getBrandName()).toLocal8Bit();
string = QString::fromStdWString( iterOrder->getOrderNo() ).toLocal8Bit(); string = QString::fromStdWString( iterOrder->getOrderNo() ).toLocal8Bit();
string = QString::fromStdWString( iterOrder->getOrderType() ).toLocal8Bit(); string = QString::fromStdWString( iterOrder->getOrderType() ).toLocal8Bit();
string = QString::fromStdWString( iterOrder->getNotifyNo() ).toLocal8Bit(); string = QString::fromStdWString( iterOrder->getNotifyNo() ).toLocal8Bit();
@ -515,6 +516,7 @@ void ImportRepairRecommandationToOracle( const std::string &
} }
//执行语句 //执行语句
OCI_BindString(pStmt, ":a_branch_name", (otext*).c_str(), .size());
OCI_BindString( pStmt, ":a_order_no", (otext*).c_str(), .size() ); OCI_BindString( pStmt, ":a_order_no", (otext*).c_str(), .size() );
OCI_BindString( pStmt, ":a_order_type", (otext*).c_str(), .size() ); OCI_BindString( pStmt, ":a_order_type", (otext*).c_str(), .size() );
OCI_BindString( pStmt, ":a_notify_no", (otext*).c_str(), .size() ); OCI_BindString( pStmt, ":a_notify_no", (otext*).c_str(), .size() );
@ -540,8 +542,6 @@ void ImportRepairRecommandationToOracle( const std::string &
//output_error_message( errorMessage ); //output_error_message( errorMessage );
OCI_Rollback( pConn );
OCI_ConnectionFree( pConn );
OCI_Cleanup(); OCI_Cleanup();
throw runtime_error( errorMessage ); throw runtime_error( errorMessage );

View File

@ -1,4 +1,4 @@
#pragma once #pragma once
#include <string> #include <string>
@ -9,33 +9,28 @@
class RepairRecommandationRecord class RepairRecommandationRecord
{ {
public: public:
RepairRecommandationRecord( std::wstring orderNo,
std::wstring orderType,
std::wstring notifyNo, RepairRecommandationRecord( std::wstring branchName, std::wstring orderNo, std::wstring orderType, std::wstring notifyNo, std::wstring suggestedCarDealerCode, std::wstring suggestedCarDealerName, std::wstring damageDate, std::wstring plateNumber, std::wstring brandName, std::wstring messageType, std::wstring messageSendingDate, std::wstring dataSource )
std::wstring suggestedCarDealerCode, : branchName_( std::move(branchName) ),
std::wstring suggestedCarDealerName, orderNo_( std::move(orderNo) ),
std::wstring damageDate, orderType_( std::move(orderType) ),
std::wstring plateNumber, notifyNo_( std::move(notifyNo) ),
std::wstring brandName, suggestedCarDealerCode_( std::move(suggestedCarDealerCode) ),
std::wstring messageType, suggestedCarDealerName_( std::move(suggestedCarDealerName) ),
std::wstring messageSendingDate, damageDate_( std::move(damageDate) ),
std::wstring dataSource ) plateNumber_( std::move(plateNumber) ),
: orderNo_( std::move( orderNo ) ), brandName_( std::move(brandName) ),
orderType_( std::move( orderType ) ), messageType_( std::move(messageType) ),
notifyNo_( std::move( notifyNo ) ), messageSendingDate_( std::move(messageSendingDate) ),
suggestedCarDealerCode_( std::move( suggestedCarDealerCode ) ), dataSource_( std::move(dataSource) )
suggestedCarDealerName_( std::move( suggestedCarDealerName ) ),
damageDate_( std::move( damageDate ) ),
plateNumber_( std::move( plateNumber ) ),
brandName_( std::move( brandName ) ),
messageType_( std::move( messageType ) ),
messageSendingDate_( std::move( messageSendingDate ) ),
dataSource_( std::move( dataSource ) )
{ {
} }
RepairRecommandationRecord( const RepairRecommandationRecord & other ) RepairRecommandationRecord( const RepairRecommandationRecord & other )
: orderNo_( other.orderNo_ ), : branchName_( other.branchName_ ),
orderNo_( other.orderNo_ ),
orderType_( other.orderType_ ), orderType_( other.orderType_ ),
notifyNo_( other.notifyNo_ ), notifyNo_( other.notifyNo_ ),
suggestedCarDealerCode_( other.suggestedCarDealerCode_ ), suggestedCarDealerCode_( other.suggestedCarDealerCode_ ),
@ -50,17 +45,18 @@ public:
} }
RepairRecommandationRecord( RepairRecommandationRecord && other ) RepairRecommandationRecord( RepairRecommandationRecord && other )
: orderNo_( std::move( other.orderNo_ ) ), : branchName_( std::move(other.branchName_) ),
orderType_( std::move( other.orderType_ ) ), orderNo_( std::move(other.orderNo_) ),
notifyNo_( std::move( other.notifyNo_ ) ), orderType_( std::move(other.orderType_) ),
suggestedCarDealerCode_( std::move( other.suggestedCarDealerCode_ ) ), notifyNo_( std::move(other.notifyNo_) ),
suggestedCarDealerName_( std::move( other.suggestedCarDealerName_ ) ), suggestedCarDealerCode_( std::move(other.suggestedCarDealerCode_) ),
damageDate_( std::move( other.damageDate_ ) ), suggestedCarDealerName_( std::move(other.suggestedCarDealerName_) ),
plateNumber_( std::move( other.plateNumber_ ) ), damageDate_( std::move(other.damageDate_) ),
brandName_( std::move( other.brandName_ ) ), plateNumber_( std::move(other.plateNumber_) ),
messageType_( std::move( other.messageType_ ) ), brandName_( std::move(other.brandName_) ),
messageSendingDate_( std::move( other.messageSendingDate_ ) ), messageType_( std::move(other.messageType_) ),
dataSource_( std::move( other.dataSource_ ) ) messageSendingDate_( std::move(other.messageSendingDate_) ),
dataSource_( std::move(other.dataSource_) )
{ {
} }
@ -68,6 +64,7 @@ public:
{ {
if ( this == &other ) if ( this == &other )
return *this; return *this;
branchName_ = other.branchName_;
orderNo_ = other.orderNo_; orderNo_ = other.orderNo_;
orderType_ = other.orderType_; orderType_ = other.orderType_;
notifyNo_ = other.notifyNo_; notifyNo_ = other.notifyNo_;
@ -86,6 +83,7 @@ public:
{ {
if ( this == &other ) if ( this == &other )
return *this; return *this;
branchName_ = std::move( other.branchName_ );
orderNo_ = std::move( other.orderNo_ ); orderNo_ = std::move( other.orderNo_ );
orderType_ = std::move( other.orderType_ ); orderType_ = std::move( other.orderType_ );
notifyNo_ = std::move( other.notifyNo_ ); notifyNo_ = std::move( other.notifyNo_ );
@ -100,6 +98,39 @@ public:
return *this; return *this;
} }
friend bool operator==( const RepairRecommandationRecord & lhs, const RepairRecommandationRecord & rhs )
{
return lhs.branchName_ == rhs.branchName_
&& lhs.orderNo_ == rhs.orderNo_
&& lhs.orderType_ == rhs.orderType_
&& lhs.notifyNo_ == rhs.notifyNo_
&& lhs.suggestedCarDealerCode_ == rhs.suggestedCarDealerCode_
&& lhs.suggestedCarDealerName_ == rhs.suggestedCarDealerName_
&& lhs.damageDate_ == rhs.damageDate_
&& lhs.plateNumber_ == rhs.plateNumber_
&& lhs.brandName_ == rhs.brandName_
&& lhs.messageType_ == rhs.messageType_
&& lhs.messageSendingDate_ == rhs.messageSendingDate_
&& lhs.dataSource_ == rhs.dataSource_;
}
friend bool operator!=( const RepairRecommandationRecord & lhs, const RepairRecommandationRecord & rhs )
{
return !(lhs == rhs);
}
std::wstring getBranchName() const
{
return branchName_;
}
void setBranchName( const std::wstring & branchName )
{
branchName_ = branchName;
}
std::wstring getOrderNo() const std::wstring getOrderNo() const
{ {
return orderNo_; return orderNo_;
@ -211,6 +242,7 @@ public:
} }
private: private:
std::wstring branchName_;
std::wstring orderNo_; std::wstring orderNo_;
std::wstring orderType_; std::wstring orderType_;
std::wstring notifyNo_; std::wstring notifyNo_;

View File

@ -159,9 +159,8 @@ void QDataManagementWidget::initWidgetByPrivileges()
ui.pRepairOrderTab->setEnabled( false ); ui.pRepairOrderTab->setEnabled( false );
ui.pNewRepairMonitorTab->setEnabled( false ); ui.pNewRepairMonitorTab->setEnabled( false );
ui.pRepairRecommandationTab->setEnabled( false ); ui.pRepairRecommandationTab->setEnabled( false );
ui.pCarDealerSchemaTab->setEnabled( false ); ui.pCarDealerSchemaTab->setEnabled(true);
ui.pCarDealerAchievementTab->setEnabled( true ); ui.pCarDealerAchievementTab->setEnabled( true );
ui.pCarDealerAchievementTab->setFocus();
ui.tabWidget->setCurrentWidget(ui.pCarDealerAchievementTab); ui.tabWidget->setCurrentWidget(ui.pCarDealerAchievementTab);
} }

View File

@ -1,4 +1,4 @@
#include <stdexcept> #include <stdexcept>
#include <QtWidgets/QtWidgets> #include <QtWidgets/QtWidgets>
#include "QRepairRecommendationWidget.h" #include "QRepairRecommendationWidget.h"
#include "../../Data/DataManipulation/Excel/LoadFromExcel.h" #include "../../Data/DataManipulation/Excel/LoadFromExcel.h"
@ -75,13 +75,13 @@ void QRepairRecommendationWidget::onImport()
QMessageBox::critical( nullptr, QMessageBox::critical( nullptr,
QString::fromUtf8( "保存数据出错!" ), QString::fromUtf8( "保存数据出错!" ),
QString::fromUtf8( error.what() ) ); QString::fromLocal8Bit( error.what() ) );
return; return;
} }
//提示 //提示
QString messageInfo = QString::fromUtf8( "Maybe写入%1了条记录。" ).arg( recommandationVector.size() ); QString messageInfo = QString::fromUtf8( "写入%1了条记录。" ).arg( recommandationVector.size() );
QMessageBox::information( nullptr, QMessageBox::information( nullptr,
QString::fromUtf8( "保存成功" ), QString::fromUtf8( "保存成功" ),
@ -129,78 +129,78 @@ void QRepairRecommendationWidget::showRepairRecommandation()
pItem->setText( QString::fromStdWString( iter->getOrderNo() ) ); pItem->setText( QString::fromStdWString( iter->getOrderNo() ) );
pItem->setTextAlignment( Qt::AlignHCenter | Qt::AlignVCenter ); pItem->setTextAlignment( Qt::AlignHCenter | Qt::AlignVCenter );
ui.pTableWidgetRepairRecommandation->setItem(rowIndex, columnIndex++, pItem); ui.pTableWidgetRepairRecommandation->setItem( rowIndex, columnIndex++, pItem );
//工单类型 //工单类型
pItem = new QTableWidgetItem(); pItem = new QTableWidgetItem();
pItem->setText(QString::fromStdWString(iter->getOrderType())); pItem->setText( QString::fromStdWString( iter->getOrderType() ) );
pItem->setTextAlignment(Qt::AlignHCenter | Qt::AlignVCenter); pItem->setTextAlignment( Qt::AlignHCenter | Qt::AlignVCenter );
ui.pTableWidgetRepairRecommandation->setItem(rowIndex, columnIndex++, pItem); ui.pTableWidgetRepairRecommandation->setItem( rowIndex, columnIndex++, pItem );
//报案号 //报案号
pItem = new QTableWidgetItem(); pItem = new QTableWidgetItem();
pItem->setText(QString::fromStdWString(iter->getNotifyNo())); pItem->setText( QString::fromStdWString( iter->getNotifyNo() ) );
pItem->setTextAlignment(Qt::AlignHCenter | Qt::AlignVCenter); pItem->setTextAlignment( Qt::AlignHCenter | Qt::AlignVCenter );
ui.pTableWidgetRepairRecommandation->setItem(rowIndex, columnIndex++, pItem); ui.pTableWidgetRepairRecommandation->setItem( rowIndex, columnIndex++, pItem );
//推荐车商代码 //推荐车商代码
pItem = new QTableWidgetItem(); pItem = new QTableWidgetItem();
pItem->setText(QString::fromStdWString(iter->getSuggestedCarDealerCode())); pItem->setText( QString::fromStdWString( iter->getSuggestedCarDealerCode() ) );
pItem->setTextAlignment(Qt::AlignHCenter | Qt::AlignVCenter); pItem->setTextAlignment( Qt::AlignHCenter | Qt::AlignVCenter );
ui.pTableWidgetRepairRecommandation->setItem(rowIndex, columnIndex++, pItem); ui.pTableWidgetRepairRecommandation->setItem( rowIndex, columnIndex++, pItem );
//推荐车商名称 //推荐车商名称
pItem = new QTableWidgetItem(); pItem = new QTableWidgetItem();
pItem->setText(QString::fromStdWString(iter->getSuggestedCarDealerName())); pItem->setText( QString::fromStdWString( iter->getSuggestedCarDealerName() ) );
pItem->setTextAlignment(Qt::AlignHCenter | Qt::AlignVCenter); pItem->setTextAlignment( Qt::AlignHCenter | Qt::AlignVCenter );
ui.pTableWidgetRepairRecommandation->setItem(rowIndex, columnIndex++, pItem); ui.pTableWidgetRepairRecommandation->setItem( rowIndex, columnIndex++, pItem );
//出险日期 //出险日期
pItem = new QTableWidgetItem(); pItem = new QTableWidgetItem();
pItem->setText(QString::fromStdWString(iter->getDamageDate())); pItem->setText( QString::fromStdWString( iter->getDamageDate() ) );
pItem->setTextAlignment(Qt::AlignHCenter | Qt::AlignVCenter); pItem->setTextAlignment( Qt::AlignHCenter | Qt::AlignVCenter );
ui.pTableWidgetRepairRecommandation->setItem(rowIndex, columnIndex++, pItem); ui.pTableWidgetRepairRecommandation->setItem( rowIndex, columnIndex++, pItem );
//车牌号 //车牌号
pItem = new QTableWidgetItem(); pItem = new QTableWidgetItem();
pItem->setText(QString::fromStdWString(iter->getPlateNumber())); pItem->setText( QString::fromStdWString( iter->getPlateNumber() ) );
pItem->setTextAlignment(Qt::AlignHCenter | Qt::AlignVCenter); pItem->setTextAlignment( Qt::AlignHCenter | Qt::AlignVCenter );
ui.pTableWidgetRepairRecommandation->setItem(rowIndex, columnIndex++, pItem); ui.pTableWidgetRepairRecommandation->setItem( rowIndex, columnIndex++, pItem );
//品牌名称 //品牌名称
pItem = new QTableWidgetItem(); pItem = new QTableWidgetItem();
pItem->setText(QString::fromStdWString(iter->getBrandName())); pItem->setText( QString::fromStdWString( iter->getBrandName() ) );
pItem->setTextAlignment(Qt::AlignHCenter | Qt::AlignVCenter); pItem->setTextAlignment( Qt::AlignHCenter | Qt::AlignVCenter );
ui.pTableWidgetRepairRecommandation->setItem(rowIndex, columnIndex++, pItem); ui.pTableWidgetRepairRecommandation->setItem( rowIndex, columnIndex++, pItem );
//短信类型 //短信类型
pItem = new QTableWidgetItem(); pItem = new QTableWidgetItem();
pItem->setText(QString::fromStdWString(iter->getMessageType())); pItem->setText( QString::fromStdWString( iter->getMessageType() ) );
pItem->setTextAlignment(Qt::AlignHCenter | Qt::AlignVCenter); pItem->setTextAlignment( Qt::AlignHCenter | Qt::AlignVCenter );
ui.pTableWidgetRepairRecommandation->setItem(rowIndex, columnIndex++, pItem); ui.pTableWidgetRepairRecommandation->setItem( rowIndex, columnIndex++, pItem );
//发送时间 //发送时间
pItem = new QTableWidgetItem(); pItem = new QTableWidgetItem();
pItem->setText(QString::fromStdWString(iter->getMessageSendingDate())); pItem->setText( QString::fromStdWString( iter->getMessageSendingDate() ) );
pItem->setTextAlignment(Qt::AlignHCenter | Qt::AlignVCenter); pItem->setTextAlignment( Qt::AlignHCenter | Qt::AlignVCenter );
ui.pTableWidgetRepairRecommandation->setItem(rowIndex, columnIndex++, pItem); ui.pTableWidgetRepairRecommandation->setItem( rowIndex, columnIndex++, pItem );
//数据来源 //数据来源
pItem = new QTableWidgetItem(); pItem = new QTableWidgetItem();
pItem->setText(QString::fromStdWString(iter->getDataSource())); pItem->setText( QString::fromStdWString( iter->getDataSource() ) );
pItem->setTextAlignment(Qt::AlignHCenter | Qt::AlignVCenter); pItem->setTextAlignment( Qt::AlignHCenter | Qt::AlignVCenter );
ui.pTableWidgetRepairRecommandation->setItem(rowIndex, columnIndex++, pItem); ui.pTableWidgetRepairRecommandation->setItem( rowIndex, columnIndex++, pItem );
} }
resizeTableWidgetTab(ui.pTableWidgetRepairRecommandation, 10); resizeTableWidgetTab( ui.pTableWidgetRepairRecommandation, 10 );
} }