diff --git a/code/cpp/car_dealer_util/proj/vs2019/car_dealer_util/car_dealer_util.vcxproj b/code/cpp/car_dealer_util/proj/vs2019/car_dealer_util/car_dealer_util.vcxproj
index d1a5dbf..89beb25 100644
--- a/code/cpp/car_dealer_util/proj/vs2019/car_dealer_util/car_dealer_util.vcxproj
+++ b/code/cpp/car_dealer_util/proj/vs2019/car_dealer_util/car_dealer_util.vcxproj
@@ -40,6 +40,7 @@
+
@@ -52,6 +53,7 @@
+
@@ -81,6 +83,7 @@
+
diff --git a/code/cpp/car_dealer_util/proj/vs2019/car_dealer_util/car_dealer_util.vcxproj.filters b/code/cpp/car_dealer_util/proj/vs2019/car_dealer_util/car_dealer_util.vcxproj.filters
index 7084774..a0470fb 100644
--- a/code/cpp/car_dealer_util/proj/vs2019/car_dealer_util/car_dealer_util.vcxproj.filters
+++ b/code/cpp/car_dealer_util/proj/vs2019/car_dealer_util/car_dealer_util.vcxproj.filters
@@ -205,6 +205,9 @@
数据\数据结构\送返修推荐表
+
+ 窗口\内容窗口\数据管理\新送返修监控表
+
@@ -233,6 +236,9 @@
窗口\内容窗口\数据管理\卢霖城 - 送返修推荐表
+
+ 窗口\内容窗口\数据管理\新送返修监控表
+
@@ -256,6 +262,9 @@
窗口\内容窗口\数据管理\卢霖城 - 送返修推荐表
+
+ 窗口\内容窗口\数据管理\新送返修监控表
+
diff --git a/code/cpp/car_dealer_util/proj/vs2019/car_dealer_util/source/Widgets/ContentWidget/QNewRepairMonitorWidget/moc_QNewRepairMonitorWidget.cpp b/code/cpp/car_dealer_util/proj/vs2019/car_dealer_util/source/Widgets/ContentWidget/QNewRepairMonitorWidget/moc_QNewRepairMonitorWidget.cpp
new file mode 100644
index 0000000..d9c74d5
--- /dev/null
+++ b/code/cpp/car_dealer_util/proj/vs2019/car_dealer_util/source/Widgets/ContentWidget/QNewRepairMonitorWidget/moc_QNewRepairMonitorWidget.cpp
@@ -0,0 +1,95 @@
+/****************************************************************************
+** Meta object code from reading C++ file 'QNewRepairMonitorWidget.h'
+**
+** Created by: The Qt Meta Object Compiler version 67 (Qt 5.14.2)
+**
+** WARNING! All changes made in this file will be lost!
+*****************************************************************************/
+
+#include
+#include "../../../../../../../source/Widgets/ContentWidget/QNewRepairMonitorWidget/QNewRepairMonitorWidget.h"
+#include
+#include
+#if !defined(Q_MOC_OUTPUT_REVISION)
+#error "The header file 'QNewRepairMonitorWidget.h' doesn't include ."
+#elif Q_MOC_OUTPUT_REVISION != 67
+#error "This file was generated using the moc from 5.14.2. It"
+#error "cannot be used with the include files from this version of Qt."
+#error "(The moc has changed too much.)"
+#endif
+
+QT_BEGIN_MOC_NAMESPACE
+QT_WARNING_PUSH
+QT_WARNING_DISABLE_DEPRECATED
+struct qt_meta_stringdata_QNewRepairMonitorWidget_t {
+ QByteArrayData data[1];
+ char stringdata0[24];
+};
+#define QT_MOC_LITERAL(idx, ofs, len) \
+ Q_STATIC_BYTE_ARRAY_DATA_HEADER_INITIALIZER_WITH_OFFSET(len, \
+ qptrdiff(offsetof(qt_meta_stringdata_QNewRepairMonitorWidget_t, stringdata0) + ofs \
+ - idx * sizeof(QByteArrayData)) \
+ )
+static const qt_meta_stringdata_QNewRepairMonitorWidget_t qt_meta_stringdata_QNewRepairMonitorWidget = {
+ {
+QT_MOC_LITERAL(0, 0, 23) // "QNewRepairMonitorWidget"
+
+ },
+ "QNewRepairMonitorWidget"
+};
+#undef QT_MOC_LITERAL
+
+static const uint qt_meta_data_QNewRepairMonitorWidget[] = {
+
+ // content:
+ 8, // revision
+ 0, // classname
+ 0, 0, // classinfo
+ 0, 0, // methods
+ 0, 0, // properties
+ 0, 0, // enums/sets
+ 0, 0, // constructors
+ 0, // flags
+ 0, // signalCount
+
+ 0 // eod
+};
+
+void QNewRepairMonitorWidget::qt_static_metacall(QObject *_o, QMetaObject::Call _c, int _id, void **_a)
+{
+ Q_UNUSED(_o);
+ Q_UNUSED(_id);
+ Q_UNUSED(_c);
+ Q_UNUSED(_a);
+}
+
+QT_INIT_METAOBJECT const QMetaObject QNewRepairMonitorWidget::staticMetaObject = { {
+ QMetaObject::SuperData::link(),
+ qt_meta_stringdata_QNewRepairMonitorWidget.data,
+ qt_meta_data_QNewRepairMonitorWidget,
+ qt_static_metacall,
+ nullptr,
+ nullptr
+} };
+
+
+const QMetaObject *QNewRepairMonitorWidget::metaObject() const
+{
+ return QObject::d_ptr->metaObject ? QObject::d_ptr->dynamicMetaObject() : &staticMetaObject;
+}
+
+void *QNewRepairMonitorWidget::qt_metacast(const char *_clname)
+{
+ if (!_clname) return nullptr;
+ if (!strcmp(_clname, qt_meta_stringdata_QNewRepairMonitorWidget.stringdata0))
+ return static_cast(this);
+ return QWidget::qt_metacast(_clname);
+}
+
+int QNewRepairMonitorWidget::qt_metacall(QMetaObject::Call _c, int _id, void **_a)
+{
+ _id = QWidget::qt_metacall(_c, _id, _a);
+ return _id;
+}
+QT_WARNING_POP
+QT_END_MOC_NAMESPACE
diff --git a/code/cpp/car_dealer_util/source/Widgets/ContentWidget/QDataManagementWidget/QDataManagementWidget.cpp b/code/cpp/car_dealer_util/source/Widgets/ContentWidget/QDataManagementWidget/QDataManagementWidget.cpp
index eb8e821..4cbea48 100644
--- a/code/cpp/car_dealer_util/source/Widgets/ContentWidget/QDataManagementWidget/QDataManagementWidget.cpp
+++ b/code/cpp/car_dealer_util/source/Widgets/ContentWidget/QDataManagementWidget/QDataManagementWidget.cpp
@@ -38,8 +38,8 @@ void QDataManagementWidget::initWidgets()
pLayoutScrollArea = new QGridLayout;
pLayout = new QGridLayout;
- pLayout->setMargin(0);
- pLayoutScrollArea->setMargin(0);
+ pLayout->setMargin( 0 );
+ pLayoutScrollArea->setMargin( 0 );
pLayout->addWidget( &achievementWidget );
pLayoutScrollArea->addWidget( pScrollArea );
@@ -47,56 +47,56 @@ void QDataManagementWidget::initWidgets()
ui.pCarDealerAchievementTab->setLayout( pLayoutScrollArea );
//车商方案表
- pScrollArea = new QScrollArea(nullptr);
+ pScrollArea = new QScrollArea( nullptr );
pLayoutScrollArea = new QGridLayout();
- pLayout = new QGridLayout();
+ pLayout = new QGridLayout();
- pLayoutScrollArea->setMargin(0);
- pLayout->setMargin(0);
+ pLayoutScrollArea->setMargin( 0 );
+ pLayout->setMargin( 0 );
- pLayout->addWidget(&schemaWidget);
- pLayoutScrollArea->addWidget(pScrollArea);
- pScrollArea->setLayout(pLayout);
- ui.pCarDealerSchemaTab->setLayout(pLayoutScrollArea);
+ pLayout->addWidget( &schemaWidget );
+ pLayoutScrollArea->addWidget( pScrollArea );
+ pScrollArea->setLayout( pLayout );
+ ui.pCarDealerSchemaTab->setLayout( pLayoutScrollArea );
//卢霖城送返修推荐表
- pScrollArea = new QScrollArea(nullptr);
+ pScrollArea = new QScrollArea( nullptr );
pLayoutScrollArea = new QGridLayout();
- pLayout = new QGridLayout();
+ pLayout = new QGridLayout();
- pLayoutScrollArea->setMargin(0);
- pLayout->setMargin(0);
+ pLayoutScrollArea->setMargin( 0 );
+ pLayout->setMargin( 0 );
- pLayout->addWidget(&repairRecommendationWidget);
- pLayoutScrollArea->addWidget(pScrollArea);
- pScrollArea->setLayout(pLayout);
- ui.pRepairRecommandationTab->setLayout(pLayoutScrollArea);
+ pLayout->addWidget( &repairRecommendationWidget );
+ pLayoutScrollArea->addWidget( pScrollArea );
+ pScrollArea->setLayout( pLayout );
+ ui.pRepairRecommandationTab->setLayout( pLayoutScrollArea );
//新送返修监控
- pScrollArea = new QScrollArea(nullptr);
+ pScrollArea = new QScrollArea( nullptr );
pLayoutScrollArea = new QGridLayout();
- pLayout = new QGridLayout();
+ pLayout = new QGridLayout();
- pLayoutScrollArea->setMargin(0);
- pLayout->setMargin(0);
+ pLayoutScrollArea->setMargin( 0 );
+ pLayout->setMargin( 0 );
- pLayout->addWidget(&repairRecommendationWidget);
- pLayoutScrollArea->addWidget(pScrollArea);
- pScrollArea->setLayout(pLayout);
- ui.pNewRepairMonitorTab->setLayout(pLayoutScrollArea);
+ pLayout->addWidget( &newRepairMonitorWidget );
+ pLayoutScrollArea->addWidget( pScrollArea );
+ pScrollArea->setLayout( pLayout );
+ ui.pNewRepairMonitorTab->setLayout( pLayoutScrollArea );
//送返修工单
- pScrollArea = new QScrollArea(nullptr);
+ pScrollArea = new QScrollArea( nullptr );
pLayoutScrollArea = new QGridLayout();
- pLayout = new QGridLayout();
+ pLayout = new QGridLayout();
- pLayoutScrollArea->setMargin(0);
- pLayout->setMargin(0);
+ pLayoutScrollArea->setMargin( 0 );
+ pLayout->setMargin( 0 );
- pLayout->addWidget(&repairRecommendationWidget);
- pLayoutScrollArea->addWidget(pScrollArea);
- pScrollArea->setLayout(pLayout);
- ui.pRepairOrderTab->setLayout(pLayoutScrollArea);
+ pLayout->addWidget( &repairOrderWidget );
+ pLayoutScrollArea->addWidget( pScrollArea );
+ pScrollArea->setLayout( pLayout );
+ ui.pRepairOrderTab->setLayout( pLayoutScrollArea );
}
void QDataManagementWidget::initSignal()
diff --git a/code/cpp/car_dealer_util/source/Widgets/ContentWidget/QDataManagementWidget/QDataManagementWidget.h b/code/cpp/car_dealer_util/source/Widgets/ContentWidget/QDataManagementWidget/QDataManagementWidget.h
index e5c34cb..1beb416 100644
--- a/code/cpp/car_dealer_util/source/Widgets/ContentWidget/QDataManagementWidget/QDataManagementWidget.h
+++ b/code/cpp/car_dealer_util/source/Widgets/ContentWidget/QDataManagementWidget/QDataManagementWidget.h
@@ -4,6 +4,8 @@
#include "ui_QDataManagementWidget.h"
#include "QCarDealerAchievementWidget.h"
#include "QCarDealerSchemaWidget.h"
+#include "QRepairOrderWidget.h"
+#include "../QNewRepairMonitorWidget/QNewRepairMonitorWidget.h"
#include "../QRepairRecommendationWidget/QRepairRecommendationWidget.h"
class QDataManagementWidget : public QWidget
@@ -26,4 +28,6 @@ private:
QCarDealerAchievementWidget achievementWidget;
QCarDealerSchemaWidget schemaWidget;
QRepairRecommendationWidget repairRecommendationWidget;
+ QRepairOrderWidget repairOrderWidget;
+ QNewRepairMonitorWidget newRepairMonitorWidget;
};
diff --git a/code/cpp/car_dealer_util/source/Widgets/ContentWidget/QNewRepairMonitorWidget/QNewRepairMonitorWidget.cpp b/code/cpp/car_dealer_util/source/Widgets/ContentWidget/QNewRepairMonitorWidget/QNewRepairMonitorWidget.cpp
new file mode 100644
index 0000000..c0389fb
--- /dev/null
+++ b/code/cpp/car_dealer_util/source/Widgets/ContentWidget/QNewRepairMonitorWidget/QNewRepairMonitorWidget.cpp
@@ -0,0 +1,11 @@
+#include "QNewRepairMonitorWidget.h"
+
+QNewRepairMonitorWidget::QNewRepairMonitorWidget(QWidget *parent)
+ : QWidget(parent)
+{
+ ui.setupUi(this);
+}
+
+QNewRepairMonitorWidget::~QNewRepairMonitorWidget()
+{
+}
diff --git a/code/cpp/car_dealer_util/source/Widgets/ContentWidget/QNewRepairMonitorWidget/QNewRepairMonitorWidget.h b/code/cpp/car_dealer_util/source/Widgets/ContentWidget/QNewRepairMonitorWidget/QNewRepairMonitorWidget.h
new file mode 100644
index 0000000..1168494
--- /dev/null
+++ b/code/cpp/car_dealer_util/source/Widgets/ContentWidget/QNewRepairMonitorWidget/QNewRepairMonitorWidget.h
@@ -0,0 +1,16 @@
+#pragma once
+
+#include
+#include "ui_QNewRepairMonitorWidget.h"
+
+class QNewRepairMonitorWidget : public QWidget
+{
+ Q_OBJECT
+
+public:
+ QNewRepairMonitorWidget(QWidget *parent = Q_NULLPTR);
+ ~QNewRepairMonitorWidget();
+
+private:
+ Ui::QNewRepairMonitorWidget ui;
+};
diff --git a/code/cpp/car_dealer_util/source/Widgets/ContentWidget/QNewRepairMonitorWidget/QNewRepairMonitorWidget.ui b/code/cpp/car_dealer_util/source/Widgets/ContentWidget/QNewRepairMonitorWidget/QNewRepairMonitorWidget.ui
new file mode 100644
index 0000000..1dc7c95
--- /dev/null
+++ b/code/cpp/car_dealer_util/source/Widgets/ContentWidget/QNewRepairMonitorWidget/QNewRepairMonitorWidget.ui
@@ -0,0 +1,23 @@
+
+ QNewRepairMonitorWidget
+
+
+ QNewRepairMonitorWidget
+
+
+
+ 0
+ 0
+ 400
+ 300
+
+
+
+ QNewRepairMonitorWidget
+
+
+
+
+
+
+
diff --git a/code/cpp/car_dealer_util/source/Widgets/ContentWidget/QRepairOrderWidget/QRepairOrderWidget.cpp b/code/cpp/car_dealer_util/source/Widgets/ContentWidget/QRepairOrderWidget/QRepairOrderWidget.cpp
index e6ab942..4325f90 100644
--- a/code/cpp/car_dealer_util/source/Widgets/ContentWidget/QRepairOrderWidget/QRepairOrderWidget.cpp
+++ b/code/cpp/car_dealer_util/source/Widgets/ContentWidget/QRepairOrderWidget/QRepairOrderWidget.cpp
@@ -1,11 +1,120 @@
+#include
+#include
#include "QRepairOrderWidget.h"
+#include
+#include "../../Data/DataManipulation/Excel/LoadFromExcel.h"
+#include "../../Data/DataManipulation/oracle/ImportToOracle.h"
+#include "../../util/qt/qt_util.h"
-QRepairOrderWidget::QRepairOrderWidget(QWidget *parent)
- : QWidget(parent)
+using namespace std;
+
+QRepairOrderWidget::QRepairOrderWidget( QWidget * parent )
+ : QWidget( parent )
{
- ui.setupUi(this);
+ ui.setupUi( this );
+
+ init();
}
QRepairOrderWidget::~QRepairOrderWidget()
{
}
+
+void QRepairOrderWidget::onImport()
+{
+ QString fileDir = ".";
+ QString dialogCaption = "打开文件";
+ QString filter = "Excel文件 (*.xlsx)";
+ //QStringList fileList;
+
+ try
+ {
+ //读取文件
+ QStringList fileList = QFileDialog::getOpenFileNames( nullptr,
+ dialogCaption,
+ fileDir,
+ filter );
+
+ if ( fileList.count() == 0 )
+ {
+ return;
+ }
+
+ //清理旧数据
+ repairOrderVector.clear();
+
+ for ( auto iterFile = fileList.begin();
+ iterFile != fileList.end();
+ ++iterFile )
+ {
+ LoadRepairOrderFromXlsx( iterFile->toStdWString(),
+ 0,
+ 1,
+ repairOrderVector );
+ }
+ }
+ catch ( runtime_error & error )
+ {
+ QMessageBox::critical( nullptr,
+ "读取失败!",
+ "数据读取失败!" );
+
+ return;
+ }
+
+ //如果没有读取任何记录,就退出!
+ if ( repairOrderVector.size() == 0 )
+ {
+ return;
+ }
+
+ //写入数据
+ try
+ {
+ //以后要修改
+ string userName = "car_dealer";
+ string password = "cpic123456";
+ string tnsName = "xmcx1";
+
+ ImportRepairOrderToOracle( userName,
+ password,
+ tnsName,
+ repairOrderVector );
+
+ showRepairOrder();
+ }
+ catch ( runtime_error & error )
+ {
+ QMessageBox::critical( nullptr,
+ "写入失败",
+ QString::fromLocal8Bit( error.what() ) );
+ return;
+ }
+
+
+}
+
+void QRepairOrderWidget::init()
+{
+ initData();
+ initWidgets();
+ initSignal();
+}
+
+void QRepairOrderWidget::initData()
+{
+}
+
+void QRepairOrderWidget::initWidgets()
+{
+ setLayout( ui.pLayoutMain );
+}
+
+void QRepairOrderWidget::initSignal()
+{
+ connect( ui.pButtonImport, SIGNAL( clicked() ), this, SLOT( onImport() ) );
+}
+
+void QRepairOrderWidget::showRepairOrder()
+{
+}
diff --git a/code/cpp/car_dealer_util/source/Widgets/ContentWidget/QRepairOrderWidget/QRepairOrderWidget.h b/code/cpp/car_dealer_util/source/Widgets/ContentWidget/QRepairOrderWidget/QRepairOrderWidget.h
index c719a57..a26dc6f 100644
--- a/code/cpp/car_dealer_util/source/Widgets/ContentWidget/QRepairOrderWidget/QRepairOrderWidget.h
+++ b/code/cpp/car_dealer_util/source/Widgets/ContentWidget/QRepairOrderWidget/QRepairOrderWidget.h
@@ -1,7 +1,8 @@
-#pragma once
+#pragma once
#include
#include "ui_QRepairOrderWidget.h"
+#include "../../Data/Datastructure/RepairOrder/RepairOrder.h"
class QRepairOrderWidget : public QWidget
{
@@ -11,6 +12,18 @@ public:
QRepairOrderWidget(QWidget *parent = Q_NULLPTR);
~QRepairOrderWidget();
+protected Q_SLOTS:
+ void onImport();
+
+private:
+ void init();
+ void initData();
+ void initWidgets();
+ void initSignal();
+ void showRepairOrder();
+
private:
Ui::QRepairOrderWidget ui;
+
+ std::vector repairOrderVector;
};
diff --git a/code/cpp/car_dealer_util/source/Widgets/ContentWidget/QRepairOrderWidget/QRepairOrderWidget.ui b/code/cpp/car_dealer_util/source/Widgets/ContentWidget/QRepairOrderWidget/QRepairOrderWidget.ui
index c43c41e..45b1d00 100644
--- a/code/cpp/car_dealer_util/source/Widgets/ContentWidget/QRepairOrderWidget/QRepairOrderWidget.ui
+++ b/code/cpp/car_dealer_util/source/Widgets/ContentWidget/QRepairOrderWidget/QRepairOrderWidget.ui
@@ -1,23 +1,303 @@
-
+
+
QRepairOrderWidget
-
-
- QRepairOrderWidget
-
-
+
+
- 0
- 0
- 400
- 300
+ 0
+ 0
+ 666
+ 445
-
+
QRepairOrderWidget
+
+
+
+ 20
+ 10
+ 581
+ 331
+
+
+
+
+ 5
+
+
+ 5
+
+
+ 5
+
+ -
+
+
-
+
+
+ 导入
+
+
+
+ :/QMainFrame/Resources/excel.png
+
+
+
+
+ 32
+ 32
+
+
+
+ Qt::ToolButtonTextBesideIcon
+
+
+
+ -
+
+
+ Qt::Horizontal
+
+
+
+ 40
+ 20
+
+
+
+
+
+
+ -
+
+
+ QAbstractItemView::NoEditTriggers
+
+
+ false
+
+
+ true
+
+
+ QAbstractItemView::SingleSelection
+
+
+ QAbstractItemView::SelectRows
+
+
+ false
+
+
+
+ 工单号
+
+
+ AlignCenter
+
+
+
+
+ 工单类型
+
+
+ AlignCenter
+
+
+
+
+ 报案号
+
+
+ AlignCenter
+
+
+
+
+ 出险区域
+
+
+ AlignCenter
+
+
+
+
+ 出险日期
+
+
+ AlignCenter
+
+
+
+
+ 创建日期
+
+
+ AlignCenter
+
+
+
+
+ 商业险保单号
+
+
+ AlignCenter
+
+
+
+
+ 交强险保单号
+
+
+ AlignCenter
+
+
+
+
+ 车牌号
+
+
+ AlignCenter
+
+
+
+
+ 品牌名称
+
+
+ AlignCenter
+
+
+
+
+ 是否标的车
+
+
+ AlignCenter
+
+
+
+
+ 是否推荐成功
+
+
+ AlignCenter
+
+
+
+
+ 推荐车商代码
+
+
+ AlignCenter
+
+
+
+
+ 推荐车商名称
+
+
+ AlignCenter
+
+
+
+
+ 报案推荐车商
+
+
+ AlignCenter
+
+
+
+
+ 查看推荐车商
+
+
+ AlignCenter
+
+
+
+
+ 接报案人
+
+
+ AlignCenter
+
+
+
+
+ 查勘员
+
+
+ AlignCenter
+
+
+
+
+ 工单确认时间
+
+
+ AlignCenter
+
+
+
+
+ 车辆进厂时间
+
+
+ AlignCenter
+
+
+
+
+ 车辆出厂时间
+
+
+ AlignCenter
+
+
+
+
+ 状态
+
+
+ AlignCenter
+
+
+
+
+ 损失项目ID
+
+
+ AlignCenter
+
+
+
+
+ 查勘员推荐
+
+
+ AlignCenter
+
+
+
+
+ 状态
+
+
+ AlignCenter
+
+
+
+
+
+
-
-
-
+
+
+
+
-
+