增加获取当前登录用户名功能,增加送返修工单excel文件读取功能。
This commit is contained in:
		@@ -24,6 +24,7 @@
 | 
				
			|||||||
    <ClCompile Include="..\..\..\source\data\Datastructure\RepairOrder\RepairOrder.cpp" />
 | 
					    <ClCompile Include="..\..\..\source\data\Datastructure\RepairOrder\RepairOrder.cpp" />
 | 
				
			||||||
    <ClCompile Include="..\..\..\source\data\excel\excel.cpp" />
 | 
					    <ClCompile Include="..\..\..\source\data\excel\excel.cpp" />
 | 
				
			||||||
    <ClCompile Include="..\..\..\source\main.cpp" />
 | 
					    <ClCompile Include="..\..\..\source\main.cpp" />
 | 
				
			||||||
 | 
					    <ClCompile Include="..\..\..\source\system\system_util.cpp" />
 | 
				
			||||||
    <ClCompile Include="..\..\..\source\test\test.cpp" />
 | 
					    <ClCompile Include="..\..\..\source\test\test.cpp" />
 | 
				
			||||||
    <ClCompile Include="..\..\..\source\Widgets\MainFrame\QMainFrame.cpp" />
 | 
					    <ClCompile Include="..\..\..\source\Widgets\MainFrame\QMainFrame.cpp" />
 | 
				
			||||||
  </ItemGroup>
 | 
					  </ItemGroup>
 | 
				
			||||||
@@ -43,6 +44,7 @@
 | 
				
			|||||||
    <ClInclude Include="..\..\..\source\Data\Datastructure\CarDealerScheme\CarDealerScheme.h" />
 | 
					    <ClInclude Include="..\..\..\source\Data\Datastructure\CarDealerScheme\CarDealerScheme.h" />
 | 
				
			||||||
    <ClInclude Include="..\..\..\source\data\Datastructure\RepairOrder\RepairOrder.h" />
 | 
					    <ClInclude Include="..\..\..\source\data\Datastructure\RepairOrder\RepairOrder.h" />
 | 
				
			||||||
    <ClInclude Include="..\..\..\source\data\excel\excel.h" />
 | 
					    <ClInclude Include="..\..\..\source\data\excel\excel.h" />
 | 
				
			||||||
 | 
					    <ClInclude Include="..\..\..\source\system\system_util.h" />
 | 
				
			||||||
    <ClInclude Include="..\..\..\source\test\test.h" />
 | 
					    <ClInclude Include="..\..\..\source\test\test.h" />
 | 
				
			||||||
  </ItemGroup>
 | 
					  </ItemGroup>
 | 
				
			||||||
  <PropertyGroup Label="Globals">
 | 
					  <PropertyGroup Label="Globals">
 | 
				
			||||||
 
 | 
				
			|||||||
@@ -59,6 +59,9 @@
 | 
				
			|||||||
    <Filter Include="数据\数据结构\送返修工单">
 | 
					    <Filter Include="数据\数据结构\送返修工单">
 | 
				
			||||||
      <UniqueIdentifier>{985188c7-d233-46c8-bc1f-f7079c27bb2e}</UniqueIdentifier>
 | 
					      <UniqueIdentifier>{985188c7-d233-46c8-bc1f-f7079c27bb2e}</UniqueIdentifier>
 | 
				
			||||||
    </Filter>
 | 
					    </Filter>
 | 
				
			||||||
 | 
					    <Filter Include="操作系统">
 | 
				
			||||||
 | 
					      <UniqueIdentifier>{fe56cbb8-cdae-4845-ba36-378341641817}</UniqueIdentifier>
 | 
				
			||||||
 | 
					    </Filter>
 | 
				
			||||||
  </ItemGroup>
 | 
					  </ItemGroup>
 | 
				
			||||||
  <ItemGroup>
 | 
					  <ItemGroup>
 | 
				
			||||||
    <ClCompile Include="..\..\..\source\main.cpp">
 | 
					    <ClCompile Include="..\..\..\source\main.cpp">
 | 
				
			||||||
@@ -88,6 +91,9 @@
 | 
				
			|||||||
    <ClCompile Include="..\..\..\source\data\Datastructure\RepairOrder\RepairOrder.cpp">
 | 
					    <ClCompile Include="..\..\..\source\data\Datastructure\RepairOrder\RepairOrder.cpp">
 | 
				
			||||||
      <Filter>数据\数据结构\送返修工单</Filter>
 | 
					      <Filter>数据\数据结构\送返修工单</Filter>
 | 
				
			||||||
    </ClCompile>
 | 
					    </ClCompile>
 | 
				
			||||||
 | 
					    <ClCompile Include="..\..\..\source\system\system_util.cpp">
 | 
				
			||||||
 | 
					      <Filter>操作系统</Filter>
 | 
				
			||||||
 | 
					    </ClCompile>
 | 
				
			||||||
  </ItemGroup>
 | 
					  </ItemGroup>
 | 
				
			||||||
  <ItemGroup>
 | 
					  <ItemGroup>
 | 
				
			||||||
    <QtRcc Include="..\..\..\source\resource.qrc">
 | 
					    <QtRcc Include="..\..\..\source\resource.qrc">
 | 
				
			||||||
@@ -136,5 +142,8 @@
 | 
				
			|||||||
    <ClInclude Include="..\..\..\source\data\Datastructure\RepairOrder\RepairOrder.h">
 | 
					    <ClInclude Include="..\..\..\source\data\Datastructure\RepairOrder\RepairOrder.h">
 | 
				
			||||||
      <Filter>数据\数据结构\送返修工单</Filter>
 | 
					      <Filter>数据\数据结构\送返修工单</Filter>
 | 
				
			||||||
    </ClInclude>
 | 
					    </ClInclude>
 | 
				
			||||||
 | 
					    <ClInclude Include="..\..\..\source\system\system_util.h">
 | 
				
			||||||
 | 
					      <Filter>操作系统</Filter>
 | 
				
			||||||
 | 
					    </ClInclude>
 | 
				
			||||||
  </ItemGroup>
 | 
					  </ItemGroup>
 | 
				
			||||||
</Project>
 | 
					</Project>
 | 
				
			||||||
@@ -67,7 +67,7 @@ void LoadCarDealerSchemeFromXlsx( const wstring &           filePath,
 | 
				
			|||||||
		const wstring && isQualified   = ReadCellStringFromXlsx( pBook, sheetIndex, rowIndex, colunmIndex + 8, true );
 | 
							const wstring && isQualified   = ReadCellStringFromXlsx( pBook, sheetIndex, rowIndex, colunmIndex + 8, true );
 | 
				
			||||||
 | 
					
 | 
				
			||||||
		//空行跳过
 | 
							//空行跳过
 | 
				
			||||||
		if (carDealerCode.empty() == true)
 | 
							if ( carDealerCode.empty() == true )
 | 
				
			||||||
		{
 | 
							{
 | 
				
			||||||
			rowIndex++;
 | 
								rowIndex++;
 | 
				
			||||||
 | 
					
 | 
				
			||||||
@@ -269,3 +269,229 @@ void LoadCarDealerAchievementFromXlsx( const std::wstring &                fileP
 | 
				
			|||||||
 | 
					
 | 
				
			||||||
	pBook->release();
 | 
						pBook->release();
 | 
				
			||||||
}
 | 
					}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					void LoadRepairOrderFromXlsx( const std::wstring &       filePath,
 | 
				
			||||||
 | 
					                              unsigned                   sheetIndex,
 | 
				
			||||||
 | 
					                              unsigned                   startRowIndex,
 | 
				
			||||||
 | 
					                              std::vector<RepairOrder> & orderVector )
 | 
				
			||||||
 | 
					{
 | 
				
			||||||
 | 
						Book *  pBook  = xlCreateXMLBookW();
 | 
				
			||||||
 | 
						Sheet * pSheet = nullptr;
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						if ( pBook == nullptr )
 | 
				
			||||||
 | 
						{
 | 
				
			||||||
 | 
							throw runtime_error( "libxl库加载失败!" );
 | 
				
			||||||
 | 
						}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						setKey( pBook );
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						if ( pBook->load( filePath.c_str() ) != true )
 | 
				
			||||||
 | 
						{
 | 
				
			||||||
 | 
							string errorMessage = "打开文件失败!";
 | 
				
			||||||
 | 
							errorMessage.append( pBook->errorMessage() );
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
							throw runtime_error( errorMessage );
 | 
				
			||||||
 | 
						}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						pSheet = pBook->getSheet( sheetIndex );
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						if ( pSheet == nullptr )
 | 
				
			||||||
 | 
						{
 | 
				
			||||||
 | 
							string errorMessage = "读取sheet失败!";
 | 
				
			||||||
 | 
							errorMessage.append( pBook->errorMessage() );
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
							pBook->release();
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
							throw runtime_error( errorMessage );
 | 
				
			||||||
 | 
						}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						int lastRowIndex  = pSheet->lastRow();
 | 
				
			||||||
 | 
						int firstRowIndex = pSheet->firstRow();
 | 
				
			||||||
 | 
						int rowIndex      = firstRowIndex + startRowIndex;
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						while ( rowIndex <= lastRowIndex )
 | 
				
			||||||
 | 
						{
 | 
				
			||||||
 | 
							int colunmIndex = pSheet->firstCol();
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
							const wstring && branchName                  = ReadCellStringFromXlsx( pBook, sheetIndex, rowIndex, colunmIndex++, true );
 | 
				
			||||||
 | 
							const wstring && orderNo                     = ReadCellStringFromXlsx( pBook, sheetIndex, rowIndex, colunmIndex++, true );
 | 
				
			||||||
 | 
							const wstring && orderType                   = ReadCellStringFromXlsx( pBook, sheetIndex, rowIndex, colunmIndex++, true );
 | 
				
			||||||
 | 
							const wstring && notifyNo                    = ReadCellStringFromXlsx( pBook, sheetIndex, rowIndex, colunmIndex++, true );
 | 
				
			||||||
 | 
							const wstring && damageArea                  = ReadCellStringFromXlsx( pBook, sheetIndex, rowIndex, colunmIndex++, true );
 | 
				
			||||||
 | 
							const wstring && damageDate                  = ReadCellStringFromXlsx( pBook, sheetIndex, rowIndex, colunmIndex++, true );
 | 
				
			||||||
 | 
							const wstring && generatingDate              = ReadCellStringFromXlsx( pBook, sheetIndex, rowIndex, colunmIndex++, true );
 | 
				
			||||||
 | 
							const wstring && policyNo                    = ReadCellStringFromXlsx( pBook, sheetIndex, rowIndex, colunmIndex++, true );
 | 
				
			||||||
 | 
							const wstring && policyNoJQX                 = ReadCellStringFromXlsx( pBook, sheetIndex, rowIndex, colunmIndex++, true );
 | 
				
			||||||
 | 
							const wstring && plateNumber                 = ReadCellStringFromXlsx( pBook, sheetIndex, rowIndex, colunmIndex++, true );
 | 
				
			||||||
 | 
							const wstring && brandName                   = ReadCellStringFromXlsx( pBook, sheetIndex, rowIndex, colunmIndex++, true );
 | 
				
			||||||
 | 
							const wstring && isInsuranceObject           = ReadCellStringFromXlsx( pBook, sheetIndex, rowIndex, colunmIndex++, true );
 | 
				
			||||||
 | 
							const wstring && isSuccess                   = ReadCellStringFromXlsx( pBook, sheetIndex, rowIndex, colunmIndex++, true );
 | 
				
			||||||
 | 
							const wstring && recommandDealerCode         = ReadCellStringFromXlsx( pBook, sheetIndex, rowIndex, colunmIndex++, true );
 | 
				
			||||||
 | 
							const wstring && recommandDealerName         = ReadCellStringFromXlsx( pBook, sheetIndex, rowIndex, colunmIndex++, true );
 | 
				
			||||||
 | 
							const wstring && recommandDealerCodeInNotify = ReadCellStringFromXlsx( pBook, sheetIndex, rowIndex, colunmIndex++, true );
 | 
				
			||||||
 | 
							const wstring && recommandDealerNameInNotify = ReadCellStringFromXlsx( pBook, sheetIndex, rowIndex, colunmIndex++, true );
 | 
				
			||||||
 | 
							const wstring && recommandDealerNameInSurvey = ReadCellStringFromXlsx( pBook, sheetIndex, rowIndex, colunmIndex++, true );
 | 
				
			||||||
 | 
							const wstring && agentName                   = ReadCellStringFromXlsx( pBook, sheetIndex, rowIndex, colunmIndex++, true );
 | 
				
			||||||
 | 
							const wstring && surveyor                    = ReadCellStringFromXlsx( pBook, sheetIndex, rowIndex, colunmIndex++, true );
 | 
				
			||||||
 | 
							const wstring && checkDate                   = ReadCellStringFromXlsx( pBook, sheetIndex, rowIndex, colunmIndex++, true );
 | 
				
			||||||
 | 
							const wstring && repairingStartDate          = ReadCellStringFromXlsx( pBook, sheetIndex, rowIndex, colunmIndex++, true );
 | 
				
			||||||
 | 
							const wstring && repairingFinishDate         = ReadCellStringFromXlsx( pBook, sheetIndex, rowIndex, colunmIndex++, true );
 | 
				
			||||||
 | 
							const wstring && status                      = ReadCellStringFromXlsx( pBook, sheetIndex, rowIndex, colunmIndex++, true );
 | 
				
			||||||
 | 
							const wstring && lostItemID                  = ReadCellStringFromXlsx( pBook, sheetIndex, rowIndex, colunmIndex++, true );
 | 
				
			||||||
 | 
							const wstring && surveyorRecommandStatus     = ReadCellStringFromXlsx( pBook, sheetIndex, rowIndex, colunmIndex++, true );
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
							//空行跳过
 | 
				
			||||||
 | 
							if ( orderNo.empty() == true )
 | 
				
			||||||
 | 
							{
 | 
				
			||||||
 | 
								rowIndex++;
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
								continue;
 | 
				
			||||||
 | 
							}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
							RepairOrder order( branchName,
 | 
				
			||||||
 | 
							                   orderNo,
 | 
				
			||||||
 | 
							                   orderType,
 | 
				
			||||||
 | 
							                   notifyNo,
 | 
				
			||||||
 | 
							                   damageArea,
 | 
				
			||||||
 | 
							                   damageDate,
 | 
				
			||||||
 | 
							                   generatingDate,
 | 
				
			||||||
 | 
							                   policyNo,
 | 
				
			||||||
 | 
							                   policyNoJQX,
 | 
				
			||||||
 | 
							                   plateNumber,
 | 
				
			||||||
 | 
							                   brandName,
 | 
				
			||||||
 | 
							                   isInsuranceObject,
 | 
				
			||||||
 | 
							                   isSuccess,
 | 
				
			||||||
 | 
							                   recommandDealerCode,
 | 
				
			||||||
 | 
							                   recommandDealerName,
 | 
				
			||||||
 | 
							                   recommandDealerCodeInNotify,
 | 
				
			||||||
 | 
							                   recommandDealerNameInNotify,
 | 
				
			||||||
 | 
							                   recommandDealerNameInSurvey,
 | 
				
			||||||
 | 
							                   agentName,
 | 
				
			||||||
 | 
							                   surveyor,
 | 
				
			||||||
 | 
							                   checkDate,
 | 
				
			||||||
 | 
							                   repairingStartDate,
 | 
				
			||||||
 | 
							                   repairingFinishDate,
 | 
				
			||||||
 | 
							                   status,
 | 
				
			||||||
 | 
							                   lostItemID,
 | 
				
			||||||
 | 
							                   surveyorRecommandStatus );
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
							orderVector.push_back( order );
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
							rowIndex++;
 | 
				
			||||||
 | 
						}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						pBook->release();
 | 
				
			||||||
 | 
					}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					void LoadRepairOrderFromXls( const std::wstring &       filePath,
 | 
				
			||||||
 | 
					                             unsigned                   sheetIndex,
 | 
				
			||||||
 | 
					                             unsigned                   startRowIndex,
 | 
				
			||||||
 | 
					                             std::vector<RepairOrder> & orderVector )
 | 
				
			||||||
 | 
					{
 | 
				
			||||||
 | 
						Book *  pBook  = xlCreateBookW();
 | 
				
			||||||
 | 
						Sheet * pSheet = nullptr;
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						if ( pBook == nullptr )
 | 
				
			||||||
 | 
						{
 | 
				
			||||||
 | 
							throw runtime_error( "libxl库加载失败!" );
 | 
				
			||||||
 | 
						}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						setKey( pBook );
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						if ( pBook->load( filePath.c_str() ) != true )
 | 
				
			||||||
 | 
						{
 | 
				
			||||||
 | 
							string errorMessage = "打开文件失败!";
 | 
				
			||||||
 | 
							errorMessage.append( pBook->errorMessage() );
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
							throw runtime_error( errorMessage );
 | 
				
			||||||
 | 
						}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						pSheet = pBook->getSheet( sheetIndex );
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						if ( pSheet == nullptr )
 | 
				
			||||||
 | 
						{
 | 
				
			||||||
 | 
							string errorMessage = "读取sheet失败!";
 | 
				
			||||||
 | 
							errorMessage.append( pBook->errorMessage() );
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
							pBook->release();
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
							throw runtime_error( errorMessage );
 | 
				
			||||||
 | 
						}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						int lastRowIndex  = pSheet->lastRow();
 | 
				
			||||||
 | 
						int firstRowIndex = pSheet->firstRow();
 | 
				
			||||||
 | 
						int rowIndex      = firstRowIndex + startRowIndex;
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						while ( rowIndex <= lastRowIndex )
 | 
				
			||||||
 | 
						{
 | 
				
			||||||
 | 
							int colunmIndex = pSheet->firstCol();
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
							const wstring && branchName                  = ReadCellStringFromXlsx( pBook, sheetIndex, rowIndex, colunmIndex++, true );
 | 
				
			||||||
 | 
							const wstring && orderNo                     = ReadCellStringFromXlsx( pBook, sheetIndex, rowIndex, colunmIndex++, true );
 | 
				
			||||||
 | 
							const wstring && orderType                   = ReadCellStringFromXlsx( pBook, sheetIndex, rowIndex, colunmIndex++, true );
 | 
				
			||||||
 | 
							const wstring && notifyNo                    = ReadCellStringFromXlsx( pBook, sheetIndex, rowIndex, colunmIndex++, true );
 | 
				
			||||||
 | 
							const wstring && damageArea                  = ReadCellStringFromXlsx( pBook, sheetIndex, rowIndex, colunmIndex++, true );
 | 
				
			||||||
 | 
							const wstring && damageDate                  = ReadCellStringFromXlsx( pBook, sheetIndex, rowIndex, colunmIndex++, true );
 | 
				
			||||||
 | 
							const wstring && generatingDate              = ReadCellStringFromXlsx( pBook, sheetIndex, rowIndex, colunmIndex++, true );
 | 
				
			||||||
 | 
							const wstring && policyNo                    = ReadCellStringFromXlsx( pBook, sheetIndex, rowIndex, colunmIndex++, true );
 | 
				
			||||||
 | 
							const wstring && policyNoJQX                 = ReadCellStringFromXlsx( pBook, sheetIndex, rowIndex, colunmIndex++, true );
 | 
				
			||||||
 | 
							const wstring && plateNumber                 = ReadCellStringFromXlsx( pBook, sheetIndex, rowIndex, colunmIndex++, true );
 | 
				
			||||||
 | 
							const wstring && brandName                   = ReadCellStringFromXlsx( pBook, sheetIndex, rowIndex, colunmIndex++, true );
 | 
				
			||||||
 | 
							const wstring && isInsuranceObject           = ReadCellStringFromXlsx( pBook, sheetIndex, rowIndex, colunmIndex++, true );
 | 
				
			||||||
 | 
							const wstring && isSuccess                   = ReadCellStringFromXlsx( pBook, sheetIndex, rowIndex, colunmIndex++, true );
 | 
				
			||||||
 | 
							const wstring && recommandDealerCode         = ReadCellStringFromXlsx( pBook, sheetIndex, rowIndex, colunmIndex++, true );
 | 
				
			||||||
 | 
							const wstring && recommandDealerName         = ReadCellStringFromXlsx( pBook, sheetIndex, rowIndex, colunmIndex++, true );
 | 
				
			||||||
 | 
							const wstring && recommandDealerCodeInNotify = ReadCellStringFromXlsx( pBook, sheetIndex, rowIndex, colunmIndex++, true );
 | 
				
			||||||
 | 
							const wstring && recommandDealerNameInNotify = ReadCellStringFromXlsx( pBook, sheetIndex, rowIndex, colunmIndex++, true );
 | 
				
			||||||
 | 
							const wstring && recommandDealerNameInSurvey = ReadCellStringFromXlsx( pBook, sheetIndex, rowIndex, colunmIndex++, true );
 | 
				
			||||||
 | 
							const wstring && agentName                   = ReadCellStringFromXlsx( pBook, sheetIndex, rowIndex, colunmIndex++, true );
 | 
				
			||||||
 | 
							const wstring && surveyor                    = ReadCellStringFromXlsx( pBook, sheetIndex, rowIndex, colunmIndex++, true );
 | 
				
			||||||
 | 
							const wstring && checkDate                   = ReadCellStringFromXlsx( pBook, sheetIndex, rowIndex, colunmIndex++, true );
 | 
				
			||||||
 | 
							const wstring && repairingStartDate          = ReadCellStringFromXlsx( pBook, sheetIndex, rowIndex, colunmIndex++, true );
 | 
				
			||||||
 | 
							const wstring && repairingFinishDate         = ReadCellStringFromXlsx( pBook, sheetIndex, rowIndex, colunmIndex++, true );
 | 
				
			||||||
 | 
							const wstring && status                      = ReadCellStringFromXlsx( pBook, sheetIndex, rowIndex, colunmIndex++, true );
 | 
				
			||||||
 | 
							const wstring && lostItemID                  = ReadCellStringFromXlsx( pBook, sheetIndex, rowIndex, colunmIndex++, true );
 | 
				
			||||||
 | 
							const wstring && surveyorRecommandStatus     = ReadCellStringFromXlsx( pBook, sheetIndex, rowIndex, colunmIndex++, true );
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
							//空行跳过
 | 
				
			||||||
 | 
							if ( orderNo.empty() == true )
 | 
				
			||||||
 | 
							{
 | 
				
			||||||
 | 
								rowIndex++;
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
								continue;
 | 
				
			||||||
 | 
							}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
							RepairOrder order( branchName,
 | 
				
			||||||
 | 
							                   orderNo,
 | 
				
			||||||
 | 
							                   orderType,
 | 
				
			||||||
 | 
							                   notifyNo,
 | 
				
			||||||
 | 
							                   damageArea,
 | 
				
			||||||
 | 
							                   damageDate,
 | 
				
			||||||
 | 
							                   generatingDate,
 | 
				
			||||||
 | 
							                   policyNo,
 | 
				
			||||||
 | 
							                   policyNoJQX,
 | 
				
			||||||
 | 
							                   plateNumber,
 | 
				
			||||||
 | 
							                   brandName,
 | 
				
			||||||
 | 
							                   isInsuranceObject,
 | 
				
			||||||
 | 
							                   isSuccess,
 | 
				
			||||||
 | 
							                   recommandDealerCode,
 | 
				
			||||||
 | 
							                   recommandDealerName,
 | 
				
			||||||
 | 
							                   recommandDealerCodeInNotify,
 | 
				
			||||||
 | 
							                   recommandDealerNameInNotify,
 | 
				
			||||||
 | 
							                   recommandDealerNameInSurvey,
 | 
				
			||||||
 | 
							                   agentName,
 | 
				
			||||||
 | 
							                   surveyor,
 | 
				
			||||||
 | 
							                   checkDate,
 | 
				
			||||||
 | 
							                   repairingStartDate,
 | 
				
			||||||
 | 
							                   repairingFinishDate,
 | 
				
			||||||
 | 
							                   status,
 | 
				
			||||||
 | 
							                   lostItemID,
 | 
				
			||||||
 | 
							                   surveyorRecommandStatus );
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
							orderVector.push_back( order );
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
							rowIndex++;
 | 
				
			||||||
 | 
						}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						pBook->release();
 | 
				
			||||||
 | 
					}
 | 
				
			||||||
 
 | 
				
			|||||||
@@ -4,6 +4,7 @@
 | 
				
			|||||||
#include <vector>
 | 
					#include <vector>
 | 
				
			||||||
#include "../../Datastructure/CarDealerScheme/CarDealerScheme.h"
 | 
					#include "../../Datastructure/CarDealerScheme/CarDealerScheme.h"
 | 
				
			||||||
#include "../../Datastructure/CarDealerAchievement/CarDealerAchievement.h"
 | 
					#include "../../Datastructure/CarDealerAchievement/CarDealerAchievement.h"
 | 
				
			||||||
 | 
					#include "../../Datastructure/RepairOrder/RepairOrder.h"
 | 
				
			||||||
 | 
					
 | 
				
			||||||
void LoadCarDealerSchemeFromXlsx( const std::wstring &           filePath,
 | 
					void LoadCarDealerSchemeFromXlsx( const std::wstring &           filePath,
 | 
				
			||||||
                                  unsigned int                   sheetIndex,
 | 
					                                  unsigned int                   sheetIndex,
 | 
				
			||||||
@@ -15,4 +16,14 @@ void LoadCarDealerAchievementFromXlsx( const std::wstring &                fileP
 | 
				
			|||||||
                                       unsigned int                        startRowIndex,
 | 
					                                       unsigned int                        startRowIndex,
 | 
				
			||||||
                                       std::vector<CarDealerAchievement> & achievementVector );
 | 
					                                       std::vector<CarDealerAchievement> & achievementVector );
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					void LoadRepairOrderFromXlsx( const std::wstring &       filePath,
 | 
				
			||||||
 | 
					                              unsigned int               sheetIndex,
 | 
				
			||||||
 | 
					                              unsigned int               startRowIndex,
 | 
				
			||||||
 | 
					                              std::vector<RepairOrder> & orderVector );
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					void LoadRepairOrderFromXls( const std::wstring &       filePath,
 | 
				
			||||||
 | 
					                             unsigned                   sheetIndex,
 | 
				
			||||||
 | 
					                             unsigned                   startRowIndex,
 | 
				
			||||||
 | 
					                             std::vector<RepairOrder> & orderVector );
 | 
				
			||||||
 | 
					
 | 
				
			||||||
//void LoadRepairOrderFromXlsx();
 | 
					//void LoadRepairOrderFromXlsx();
 | 
				
			||||||
 
 | 
				
			|||||||
@@ -1,14 +1,514 @@
 | 
				
			|||||||
 | 
					#pragma once
 | 
				
			||||||
#pragma once
 | 
					 | 
				
			||||||
 | 
					
 | 
				
			||||||
#include <string>
 | 
					#include <string>
 | 
				
			||||||
 | 
					#include <utility>
 | 
				
			||||||
 | 
					
 | 
				
			||||||
class RepairOrder
 | 
					class RepairOrder
 | 
				
			||||||
{
 | 
					{
 | 
				
			||||||
 | 
					public:
 | 
				
			||||||
 | 
						RepairOrder( std::wstring branchName,
 | 
				
			||||||
 | 
						             std::wstring orderNo,
 | 
				
			||||||
 | 
						             std::wstring orderType,
 | 
				
			||||||
 | 
						             std::wstring notifyNo,
 | 
				
			||||||
 | 
						             std::wstring damageArea,
 | 
				
			||||||
 | 
						             std::wstring damageDate,
 | 
				
			||||||
 | 
						             std::wstring generatingDate,
 | 
				
			||||||
 | 
						             std::wstring policyNo,
 | 
				
			||||||
 | 
						             std::wstring policyNoJqx,
 | 
				
			||||||
 | 
						             std::wstring plateNumber,
 | 
				
			||||||
 | 
						             std::wstring brandName,
 | 
				
			||||||
 | 
						             std::wstring isInsuranceObject,
 | 
				
			||||||
 | 
						             std::wstring isSuccess,
 | 
				
			||||||
 | 
						             std::wstring recommandDealerCode,
 | 
				
			||||||
 | 
						             std::wstring recommandDealerName,
 | 
				
			||||||
 | 
						             std::wstring recommandDealerCodeInNotify,
 | 
				
			||||||
 | 
						             std::wstring recommandDealerNameInNotify,
 | 
				
			||||||
 | 
						             std::wstring recommandDealerNameInSurvey,
 | 
				
			||||||
 | 
						             std::wstring agentName,
 | 
				
			||||||
 | 
						             std::wstring surveyor,
 | 
				
			||||||
 | 
						             std::wstring checkDate,
 | 
				
			||||||
 | 
						             std::wstring repairingStartDate,
 | 
				
			||||||
 | 
						             std::wstring repairingFinishDate,
 | 
				
			||||||
 | 
						             std::wstring status,
 | 
				
			||||||
 | 
						             std::wstring lostItemId,
 | 
				
			||||||
 | 
						             std::wstring surveyorRecommandStatus )
 | 
				
			||||||
 | 
							: branchName( std::move( branchName ) ),
 | 
				
			||||||
 | 
							  orderNo( std::move( orderNo ) ),
 | 
				
			||||||
 | 
							  orderType( std::move( orderType ) ),
 | 
				
			||||||
 | 
							  notifyNo( std::move( notifyNo ) ),
 | 
				
			||||||
 | 
							  damageArea( std::move( damageArea ) ),
 | 
				
			||||||
 | 
							  damageDate( std::move( damageDate ) ),
 | 
				
			||||||
 | 
							  generatingDate( std::move( generatingDate ) ),
 | 
				
			||||||
 | 
							  policyNo( std::move( policyNo ) ),
 | 
				
			||||||
 | 
							  policyNoJQX( std::move( policyNoJqx ) ),
 | 
				
			||||||
 | 
							  plateNumber( std::move( plateNumber ) ),
 | 
				
			||||||
 | 
							  brandName( std::move( brandName ) ),
 | 
				
			||||||
 | 
							  isInsuranceObject( std::move( isInsuranceObject ) ),
 | 
				
			||||||
 | 
							  isSuccess( std::move( isSuccess ) ),
 | 
				
			||||||
 | 
							  recommandDealerCode( std::move( recommandDealerCode ) ),
 | 
				
			||||||
 | 
							  recommandDealerName( std::move( recommandDealerName ) ),
 | 
				
			||||||
 | 
							  recommandDealerCodeInNotify( std::move( recommandDealerCodeInNotify ) ),
 | 
				
			||||||
 | 
							  recommandDealerNameInNotify( std::move( recommandDealerNameInNotify ) ),
 | 
				
			||||||
 | 
							  recommandDealerNameInSurvey( std::move( recommandDealerNameInSurvey ) ),
 | 
				
			||||||
 | 
							  agentName( std::move( agentName ) ),
 | 
				
			||||||
 | 
							  surveyor( std::move( surveyor ) ),
 | 
				
			||||||
 | 
							  checkDate( std::move( checkDate ) ),
 | 
				
			||||||
 | 
							  repairingStartDate( std::move( repairingStartDate ) ),
 | 
				
			||||||
 | 
							  repairingFinishDate( std::move( repairingFinishDate ) ),
 | 
				
			||||||
 | 
							  status( std::move( status ) ),
 | 
				
			||||||
 | 
							  lostItemID( std::move( lostItemId ) ),
 | 
				
			||||||
 | 
							  surveyorRecommandStatus( std::move( surveyorRecommandStatus ) )
 | 
				
			||||||
 | 
						{
 | 
				
			||||||
 | 
						}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						RepairOrder( const RepairOrder & other )
 | 
				
			||||||
 | 
							: branchName( other.branchName ),
 | 
				
			||||||
 | 
							  orderNo( other.orderNo ),
 | 
				
			||||||
 | 
							  orderType( other.orderType ),
 | 
				
			||||||
 | 
							  notifyNo( other.notifyNo ),
 | 
				
			||||||
 | 
							  damageArea( other.damageArea ),
 | 
				
			||||||
 | 
							  damageDate( other.damageDate ),
 | 
				
			||||||
 | 
							  generatingDate( other.generatingDate ),
 | 
				
			||||||
 | 
							  policyNo( other.policyNo ),
 | 
				
			||||||
 | 
							  policyNoJQX( other.policyNoJQX ),
 | 
				
			||||||
 | 
							  plateNumber( other.plateNumber ),
 | 
				
			||||||
 | 
							  brandName( other.brandName ),
 | 
				
			||||||
 | 
							  isInsuranceObject( other.isInsuranceObject ),
 | 
				
			||||||
 | 
							  isSuccess( other.isSuccess ),
 | 
				
			||||||
 | 
							  recommandDealerCode( other.recommandDealerCode ),
 | 
				
			||||||
 | 
							  recommandDealerName( other.recommandDealerName ),
 | 
				
			||||||
 | 
							  recommandDealerCodeInNotify( other.recommandDealerCodeInNotify ),
 | 
				
			||||||
 | 
							  recommandDealerNameInNotify( other.recommandDealerNameInNotify ),
 | 
				
			||||||
 | 
							  recommandDealerNameInSurvey( other.recommandDealerNameInSurvey ),
 | 
				
			||||||
 | 
							  agentName( other.agentName ),
 | 
				
			||||||
 | 
							  surveyor( other.surveyor ),
 | 
				
			||||||
 | 
							  checkDate( other.checkDate ),
 | 
				
			||||||
 | 
							  repairingStartDate( other.repairingStartDate ),
 | 
				
			||||||
 | 
							  repairingFinishDate( other.repairingFinishDate ),
 | 
				
			||||||
 | 
							  status( other.status ),
 | 
				
			||||||
 | 
							  lostItemID( other.lostItemID ),
 | 
				
			||||||
 | 
							  surveyorRecommandStatus( other.surveyorRecommandStatus )
 | 
				
			||||||
 | 
						{
 | 
				
			||||||
 | 
						}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						RepairOrder( RepairOrder && other )
 | 
				
			||||||
 | 
							: branchName( std::move( other.branchName ) ),
 | 
				
			||||||
 | 
							  orderNo( std::move( other.orderNo ) ),
 | 
				
			||||||
 | 
							  orderType( std::move( other.orderType ) ),
 | 
				
			||||||
 | 
							  notifyNo( std::move( other.notifyNo ) ),
 | 
				
			||||||
 | 
							  damageArea( std::move( other.damageArea ) ),
 | 
				
			||||||
 | 
							  damageDate( std::move( other.damageDate ) ),
 | 
				
			||||||
 | 
							  generatingDate( std::move( other.generatingDate ) ),
 | 
				
			||||||
 | 
							  policyNo( std::move( other.policyNo ) ),
 | 
				
			||||||
 | 
							  policyNoJQX( std::move( other.policyNoJQX ) ),
 | 
				
			||||||
 | 
							  plateNumber( std::move( other.plateNumber ) ),
 | 
				
			||||||
 | 
							  brandName( std::move( other.brandName ) ),
 | 
				
			||||||
 | 
							  isInsuranceObject( std::move( other.isInsuranceObject ) ),
 | 
				
			||||||
 | 
							  isSuccess( std::move( other.isSuccess ) ),
 | 
				
			||||||
 | 
							  recommandDealerCode( std::move( other.recommandDealerCode ) ),
 | 
				
			||||||
 | 
							  recommandDealerName( std::move( other.recommandDealerName ) ),
 | 
				
			||||||
 | 
							  recommandDealerCodeInNotify( std::move( other.recommandDealerCodeInNotify ) ),
 | 
				
			||||||
 | 
							  recommandDealerNameInNotify( std::move( other.recommandDealerNameInNotify ) ),
 | 
				
			||||||
 | 
							  recommandDealerNameInSurvey( std::move( other.recommandDealerNameInSurvey ) ),
 | 
				
			||||||
 | 
							  agentName( std::move( other.agentName ) ),
 | 
				
			||||||
 | 
							  surveyor( std::move( other.surveyor ) ),
 | 
				
			||||||
 | 
							  checkDate( std::move( other.checkDate ) ),
 | 
				
			||||||
 | 
							  repairingStartDate( std::move( other.repairingStartDate ) ),
 | 
				
			||||||
 | 
							  repairingFinishDate( std::move( other.repairingFinishDate ) ),
 | 
				
			||||||
 | 
							  status( std::move( other.status ) ),
 | 
				
			||||||
 | 
							  lostItemID( std::move( other.lostItemID ) ),
 | 
				
			||||||
 | 
							  surveyorRecommandStatus( std::move( other.surveyorRecommandStatus ) )
 | 
				
			||||||
 | 
						{
 | 
				
			||||||
 | 
						}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						RepairOrder & operator=( const RepairOrder & other )
 | 
				
			||||||
 | 
						{
 | 
				
			||||||
 | 
							if ( this == &other )
 | 
				
			||||||
 | 
								return *this;
 | 
				
			||||||
 | 
							branchName                  = other.branchName;
 | 
				
			||||||
 | 
							orderNo                     = other.orderNo;
 | 
				
			||||||
 | 
							orderType                   = other.orderType;
 | 
				
			||||||
 | 
							notifyNo                    = other.notifyNo;
 | 
				
			||||||
 | 
							damageArea                  = other.damageArea;
 | 
				
			||||||
 | 
							damageDate                  = other.damageDate;
 | 
				
			||||||
 | 
							generatingDate              = other.generatingDate;
 | 
				
			||||||
 | 
							policyNo                    = other.policyNo;
 | 
				
			||||||
 | 
							policyNoJQX                 = other.policyNoJQX;
 | 
				
			||||||
 | 
							plateNumber                 = other.plateNumber;
 | 
				
			||||||
 | 
							brandName                   = other.brandName;
 | 
				
			||||||
 | 
							isInsuranceObject           = other.isInsuranceObject;
 | 
				
			||||||
 | 
							isSuccess                   = other.isSuccess;
 | 
				
			||||||
 | 
							recommandDealerCode         = other.recommandDealerCode;
 | 
				
			||||||
 | 
							recommandDealerName         = other.recommandDealerName;
 | 
				
			||||||
 | 
							recommandDealerCodeInNotify = other.recommandDealerCodeInNotify;
 | 
				
			||||||
 | 
							recommandDealerNameInNotify = other.recommandDealerNameInNotify;
 | 
				
			||||||
 | 
							recommandDealerNameInSurvey = other.recommandDealerNameInSurvey;
 | 
				
			||||||
 | 
							agentName                   = other.agentName;
 | 
				
			||||||
 | 
							surveyor                    = other.surveyor;
 | 
				
			||||||
 | 
							checkDate                   = other.checkDate;
 | 
				
			||||||
 | 
							repairingStartDate          = other.repairingStartDate;
 | 
				
			||||||
 | 
							repairingFinishDate         = other.repairingFinishDate;
 | 
				
			||||||
 | 
							status                      = other.status;
 | 
				
			||||||
 | 
							lostItemID                  = other.lostItemID;
 | 
				
			||||||
 | 
							surveyorRecommandStatus     = other.surveyorRecommandStatus;
 | 
				
			||||||
 | 
							return *this;
 | 
				
			||||||
 | 
						}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						RepairOrder & operator=( RepairOrder && other )
 | 
				
			||||||
 | 
						{
 | 
				
			||||||
 | 
							if ( this == &other )
 | 
				
			||||||
 | 
								return *this;
 | 
				
			||||||
 | 
							branchName                  = std::move( other.branchName );
 | 
				
			||||||
 | 
							orderNo                     = std::move( other.orderNo );
 | 
				
			||||||
 | 
							orderType                   = std::move( other.orderType );
 | 
				
			||||||
 | 
							notifyNo                    = std::move( other.notifyNo );
 | 
				
			||||||
 | 
							damageArea                  = std::move( other.damageArea );
 | 
				
			||||||
 | 
							damageDate                  = std::move( other.damageDate );
 | 
				
			||||||
 | 
							generatingDate              = std::move( other.generatingDate );
 | 
				
			||||||
 | 
							policyNo                    = std::move( other.policyNo );
 | 
				
			||||||
 | 
							policyNoJQX                 = std::move( other.policyNoJQX );
 | 
				
			||||||
 | 
							plateNumber                 = std::move( other.plateNumber );
 | 
				
			||||||
 | 
							brandName                   = std::move( other.brandName );
 | 
				
			||||||
 | 
							isInsuranceObject           = std::move( other.isInsuranceObject );
 | 
				
			||||||
 | 
							isSuccess                   = std::move( other.isSuccess );
 | 
				
			||||||
 | 
							recommandDealerCode         = std::move( other.recommandDealerCode );
 | 
				
			||||||
 | 
							recommandDealerName         = std::move( other.recommandDealerName );
 | 
				
			||||||
 | 
							recommandDealerCodeInNotify = std::move( other.recommandDealerCodeInNotify );
 | 
				
			||||||
 | 
							recommandDealerNameInNotify = std::move( other.recommandDealerNameInNotify );
 | 
				
			||||||
 | 
							recommandDealerNameInSurvey = std::move( other.recommandDealerNameInSurvey );
 | 
				
			||||||
 | 
							agentName                   = std::move( other.agentName );
 | 
				
			||||||
 | 
							surveyor                    = std::move( other.surveyor );
 | 
				
			||||||
 | 
							checkDate                   = std::move( other.checkDate );
 | 
				
			||||||
 | 
							repairingStartDate          = std::move( other.repairingStartDate );
 | 
				
			||||||
 | 
							repairingFinishDate         = std::move( other.repairingFinishDate );
 | 
				
			||||||
 | 
							status                      = std::move( other.status );
 | 
				
			||||||
 | 
							lostItemID                  = std::move( other.lostItemID );
 | 
				
			||||||
 | 
							surveyorRecommandStatus     = std::move( other.surveyorRecommandStatus );
 | 
				
			||||||
 | 
							return *this;
 | 
				
			||||||
 | 
						}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						friend bool operator==( const RepairOrder & lhs, const RepairOrder & rhs )
 | 
				
			||||||
 | 
						{
 | 
				
			||||||
 | 
							return lhs.branchName == rhs.branchName
 | 
				
			||||||
 | 
							       && lhs.orderNo == rhs.orderNo
 | 
				
			||||||
 | 
							       && lhs.orderType == rhs.orderType
 | 
				
			||||||
 | 
							       && lhs.notifyNo == rhs.notifyNo
 | 
				
			||||||
 | 
							       && lhs.damageArea == rhs.damageArea
 | 
				
			||||||
 | 
							       && lhs.damageDate == rhs.damageDate
 | 
				
			||||||
 | 
							       && lhs.generatingDate == rhs.generatingDate
 | 
				
			||||||
 | 
							       && lhs.policyNo == rhs.policyNo
 | 
				
			||||||
 | 
							       && lhs.policyNoJQX == rhs.policyNoJQX
 | 
				
			||||||
 | 
							       && lhs.plateNumber == rhs.plateNumber
 | 
				
			||||||
 | 
							       && lhs.brandName == rhs.brandName
 | 
				
			||||||
 | 
							       && lhs.isInsuranceObject == rhs.isInsuranceObject
 | 
				
			||||||
 | 
							       && lhs.isSuccess == rhs.isSuccess
 | 
				
			||||||
 | 
							       && lhs.recommandDealerCode == rhs.recommandDealerCode
 | 
				
			||||||
 | 
							       && lhs.recommandDealerName == rhs.recommandDealerName
 | 
				
			||||||
 | 
							       && lhs.recommandDealerCodeInNotify == rhs.recommandDealerCodeInNotify
 | 
				
			||||||
 | 
							       && lhs.recommandDealerNameInNotify == rhs.recommandDealerNameInNotify
 | 
				
			||||||
 | 
							       && lhs.recommandDealerNameInSurvey == rhs.recommandDealerNameInSurvey
 | 
				
			||||||
 | 
							       && lhs.agentName == rhs.agentName
 | 
				
			||||||
 | 
							       && lhs.surveyor == rhs.surveyor
 | 
				
			||||||
 | 
							       && lhs.checkDate == rhs.checkDate
 | 
				
			||||||
 | 
							       && lhs.repairingStartDate == rhs.repairingStartDate
 | 
				
			||||||
 | 
							       && lhs.repairingFinishDate == rhs.repairingFinishDate
 | 
				
			||||||
 | 
							       && lhs.status == rhs.status
 | 
				
			||||||
 | 
							       && lhs.lostItemID == rhs.lostItemID
 | 
				
			||||||
 | 
							       && lhs.surveyorRecommandStatus == rhs.surveyorRecommandStatus;
 | 
				
			||||||
 | 
						}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						friend bool operator!=( const RepairOrder & lhs, const RepairOrder & rhs )
 | 
				
			||||||
 | 
						{
 | 
				
			||||||
 | 
							return !(lhs == rhs);
 | 
				
			||||||
 | 
						}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						std::wstring getBranchName() const
 | 
				
			||||||
 | 
						{
 | 
				
			||||||
 | 
							return branchName;
 | 
				
			||||||
 | 
						}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						void setBranchName( const std::wstring & branchName )
 | 
				
			||||||
 | 
						{
 | 
				
			||||||
 | 
							this->branchName = branchName;
 | 
				
			||||||
 | 
						}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						std::wstring getOrderNo() const
 | 
				
			||||||
 | 
						{
 | 
				
			||||||
 | 
							return orderNo;
 | 
				
			||||||
 | 
						}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						void setOrderNo( const std::wstring & orderNo )
 | 
				
			||||||
 | 
						{
 | 
				
			||||||
 | 
							this->orderNo = orderNo;
 | 
				
			||||||
 | 
						}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						std::wstring getOrderType() const
 | 
				
			||||||
 | 
						{
 | 
				
			||||||
 | 
							return orderType;
 | 
				
			||||||
 | 
						}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						void setOrderType( const std::wstring & orderType )
 | 
				
			||||||
 | 
						{
 | 
				
			||||||
 | 
							this->orderType = orderType;
 | 
				
			||||||
 | 
						}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						std::wstring getNotifyNo() const
 | 
				
			||||||
 | 
						{
 | 
				
			||||||
 | 
							return notifyNo;
 | 
				
			||||||
 | 
						}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						void setNotifyNo( const std::wstring & notifyNo )
 | 
				
			||||||
 | 
						{
 | 
				
			||||||
 | 
							this->notifyNo = notifyNo;
 | 
				
			||||||
 | 
						}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						std::wstring getDamageArea() const
 | 
				
			||||||
 | 
						{
 | 
				
			||||||
 | 
							return damageArea;
 | 
				
			||||||
 | 
						}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						void setDamageArea( const std::wstring & damageArea )
 | 
				
			||||||
 | 
						{
 | 
				
			||||||
 | 
							this->damageArea = damageArea;
 | 
				
			||||||
 | 
						}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						std::wstring getDamageDate() const
 | 
				
			||||||
 | 
						{
 | 
				
			||||||
 | 
							return damageDate;
 | 
				
			||||||
 | 
						}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						void setDamageDate( const std::wstring & damageDate )
 | 
				
			||||||
 | 
						{
 | 
				
			||||||
 | 
							this->damageDate = damageDate;
 | 
				
			||||||
 | 
						}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						std::wstring getGeneratingDate() const
 | 
				
			||||||
 | 
						{
 | 
				
			||||||
 | 
							return generatingDate;
 | 
				
			||||||
 | 
						}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						void setGeneratingDate( const std::wstring & generatingDate )
 | 
				
			||||||
 | 
						{
 | 
				
			||||||
 | 
							this->generatingDate = generatingDate;
 | 
				
			||||||
 | 
						}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						std::wstring getPolicyNo() const
 | 
				
			||||||
 | 
						{
 | 
				
			||||||
 | 
							return policyNo;
 | 
				
			||||||
 | 
						}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						void setPolicyNo( const std::wstring & policyNo )
 | 
				
			||||||
 | 
						{
 | 
				
			||||||
 | 
							this->policyNo = policyNo;
 | 
				
			||||||
 | 
						}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						std::wstring getPolicyNoJqx() const
 | 
				
			||||||
 | 
						{
 | 
				
			||||||
 | 
							return policyNoJQX;
 | 
				
			||||||
 | 
						}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						void setPolicyNoJqx( const std::wstring & policyNoJqx )
 | 
				
			||||||
 | 
						{
 | 
				
			||||||
 | 
							policyNoJQX = policyNoJqx;
 | 
				
			||||||
 | 
						}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						std::wstring getPlateNumber() const
 | 
				
			||||||
 | 
						{
 | 
				
			||||||
 | 
							return plateNumber;
 | 
				
			||||||
 | 
						}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						void setPlateNumber( const std::wstring & plateNumber )
 | 
				
			||||||
 | 
						{
 | 
				
			||||||
 | 
							this->plateNumber = plateNumber;
 | 
				
			||||||
 | 
						}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						std::wstring getBrandName() const
 | 
				
			||||||
 | 
						{
 | 
				
			||||||
 | 
							return brandName;
 | 
				
			||||||
 | 
						}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						void setBrandName( const std::wstring & brandName )
 | 
				
			||||||
 | 
						{
 | 
				
			||||||
 | 
							this->brandName = brandName;
 | 
				
			||||||
 | 
						}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						std::wstring getIsInsuranceObject() const
 | 
				
			||||||
 | 
						{
 | 
				
			||||||
 | 
							return isInsuranceObject;
 | 
				
			||||||
 | 
						}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						void setIsInsuranceObject( const std::wstring & isInsuranceObject )
 | 
				
			||||||
 | 
						{
 | 
				
			||||||
 | 
							this->isInsuranceObject = isInsuranceObject;
 | 
				
			||||||
 | 
						}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						std::wstring getIsSuccess() const
 | 
				
			||||||
 | 
						{
 | 
				
			||||||
 | 
							return isSuccess;
 | 
				
			||||||
 | 
						}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						void setIsSuccess( const std::wstring & isSuccess )
 | 
				
			||||||
 | 
						{
 | 
				
			||||||
 | 
							this->isSuccess = isSuccess;
 | 
				
			||||||
 | 
						}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						std::wstring getRecommandDealerCode() const
 | 
				
			||||||
 | 
						{
 | 
				
			||||||
 | 
							return recommandDealerCode;
 | 
				
			||||||
 | 
						}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						void setRecommandDealerCode( const std::wstring & recommandDealerCode )
 | 
				
			||||||
 | 
						{
 | 
				
			||||||
 | 
							this->recommandDealerCode = recommandDealerCode;
 | 
				
			||||||
 | 
						}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						std::wstring getRecommandDealerName() const
 | 
				
			||||||
 | 
						{
 | 
				
			||||||
 | 
							return recommandDealerName;
 | 
				
			||||||
 | 
						}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						void setRecommandDealerName( const std::wstring & recommandDealerName )
 | 
				
			||||||
 | 
						{
 | 
				
			||||||
 | 
							this->recommandDealerName = recommandDealerName;
 | 
				
			||||||
 | 
						}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						std::wstring getRecommandDealerCodeInNotify() const
 | 
				
			||||||
 | 
						{
 | 
				
			||||||
 | 
							return recommandDealerCodeInNotify;
 | 
				
			||||||
 | 
						}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						void setRecommandDealerCodeInNotify( const std::wstring & recommandDealerCodeInNotify )
 | 
				
			||||||
 | 
						{
 | 
				
			||||||
 | 
							this->recommandDealerCodeInNotify = recommandDealerCodeInNotify;
 | 
				
			||||||
 | 
						}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						std::wstring getRecommandDealerNameInNotify() const
 | 
				
			||||||
 | 
						{
 | 
				
			||||||
 | 
							return recommandDealerNameInNotify;
 | 
				
			||||||
 | 
						}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						void setRecommandDealerNameInNotify( const std::wstring & recommandDealerNameInNotify )
 | 
				
			||||||
 | 
						{
 | 
				
			||||||
 | 
							this->recommandDealerNameInNotify = recommandDealerNameInNotify;
 | 
				
			||||||
 | 
						}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						std::wstring getRecommandDealerNameInSurvey() const
 | 
				
			||||||
 | 
						{
 | 
				
			||||||
 | 
							return recommandDealerNameInSurvey;
 | 
				
			||||||
 | 
						}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						void setRecommandDealerNameInSurvey( const std::wstring & recommandDealerNameInSurvey )
 | 
				
			||||||
 | 
						{
 | 
				
			||||||
 | 
							this->recommandDealerNameInSurvey = recommandDealerNameInSurvey;
 | 
				
			||||||
 | 
						}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						std::wstring getAgentName() const
 | 
				
			||||||
 | 
						{
 | 
				
			||||||
 | 
							return agentName;
 | 
				
			||||||
 | 
						}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						void setAgentName( const std::wstring & agentName )
 | 
				
			||||||
 | 
						{
 | 
				
			||||||
 | 
							this->agentName = agentName;
 | 
				
			||||||
 | 
						}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						std::wstring getSurveyor() const
 | 
				
			||||||
 | 
						{
 | 
				
			||||||
 | 
							return surveyor;
 | 
				
			||||||
 | 
						}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						void setSurveyor( const std::wstring & surveyor )
 | 
				
			||||||
 | 
						{
 | 
				
			||||||
 | 
							this->surveyor = surveyor;
 | 
				
			||||||
 | 
						}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						std::wstring getCheckDate() const
 | 
				
			||||||
 | 
						{
 | 
				
			||||||
 | 
							return checkDate;
 | 
				
			||||||
 | 
						}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						void setCheckDate( const std::wstring & checkDate )
 | 
				
			||||||
 | 
						{
 | 
				
			||||||
 | 
							this->checkDate = checkDate;
 | 
				
			||||||
 | 
						}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						std::wstring getRepairingStartDate() const
 | 
				
			||||||
 | 
						{
 | 
				
			||||||
 | 
							return repairingStartDate;
 | 
				
			||||||
 | 
						}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						void setRepairingStartDate( const std::wstring & repairingStartDate )
 | 
				
			||||||
 | 
						{
 | 
				
			||||||
 | 
							this->repairingStartDate = repairingStartDate;
 | 
				
			||||||
 | 
						}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						std::wstring getRepairingFinishDate() const
 | 
				
			||||||
 | 
						{
 | 
				
			||||||
 | 
							return repairingFinishDate;
 | 
				
			||||||
 | 
						}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						void setRepairingFinishDate( const std::wstring & repairingFinishDate )
 | 
				
			||||||
 | 
						{
 | 
				
			||||||
 | 
							this->repairingFinishDate = repairingFinishDate;
 | 
				
			||||||
 | 
						}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						std::wstring getStatus() const
 | 
				
			||||||
 | 
						{
 | 
				
			||||||
 | 
							return status;
 | 
				
			||||||
 | 
						}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						void setStatus( const std::wstring & status )
 | 
				
			||||||
 | 
						{
 | 
				
			||||||
 | 
							this->status = status;
 | 
				
			||||||
 | 
						}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						std::wstring getLostItemId() const
 | 
				
			||||||
 | 
						{
 | 
				
			||||||
 | 
							return lostItemID;
 | 
				
			||||||
 | 
						}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						void setLostItemId( const std::wstring & lostItemId )
 | 
				
			||||||
 | 
						{
 | 
				
			||||||
 | 
							lostItemID = lostItemId;
 | 
				
			||||||
 | 
						}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						std::wstring getSurveyorRecommandStatus() const
 | 
				
			||||||
 | 
						{
 | 
				
			||||||
 | 
							return surveyorRecommandStatus;
 | 
				
			||||||
 | 
						}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						void setSurveyorRecommandStatus( const std::wstring & surveyorRecommandStatus )
 | 
				
			||||||
 | 
						{
 | 
				
			||||||
 | 
							this->surveyorRecommandStatus = surveyorRecommandStatus;
 | 
				
			||||||
 | 
						}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
private:
 | 
					private:
 | 
				
			||||||
	std::wstring branchName;
 | 
						std::wstring branchName;
 | 
				
			||||||
	orderNo;
 | 
						std::wstring orderNo;
 | 
				
			||||||
	orderType;
 | 
						std::wstring orderType;
 | 
				
			||||||
	
 | 
						std::wstring notifyNo;
 | 
				
			||||||
 | 
						std::wstring damageArea;
 | 
				
			||||||
 | 
						std::wstring damageDate;
 | 
				
			||||||
 | 
						std::wstring generatingDate;
 | 
				
			||||||
 | 
						std::wstring policyNo;
 | 
				
			||||||
 | 
						std::wstring policyNoJQX;
 | 
				
			||||||
 | 
						std::wstring plateNumber;
 | 
				
			||||||
 | 
						std::wstring brandName;
 | 
				
			||||||
 | 
						std::wstring isInsuranceObject;
 | 
				
			||||||
 | 
						std::wstring isSuccess;
 | 
				
			||||||
 | 
						std::wstring recommandDealerCode;
 | 
				
			||||||
 | 
						std::wstring recommandDealerName;
 | 
				
			||||||
 | 
						std::wstring recommandDealerCodeInNotify;
 | 
				
			||||||
 | 
						std::wstring recommandDealerNameInNotify;
 | 
				
			||||||
 | 
						std::wstring recommandDealerNameInSurvey;
 | 
				
			||||||
 | 
						std::wstring agentName;
 | 
				
			||||||
 | 
						std::wstring surveyor; //查勘员
 | 
				
			||||||
 | 
						std::wstring checkDate;
 | 
				
			||||||
 | 
						std::wstring repairingStartDate;
 | 
				
			||||||
 | 
						std::wstring repairingFinishDate;
 | 
				
			||||||
 | 
						std::wstring status;
 | 
				
			||||||
 | 
						std::wstring lostItemID;
 | 
				
			||||||
 | 
						std::wstring surveyorRecommandStatus;
 | 
				
			||||||
};
 | 
					};
 | 
				
			||||||
							
								
								
									
										25
									
								
								代码/cpp/car_dealer_util/source/system/system_util.cpp
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										25
									
								
								代码/cpp/car_dealer_util/source/system/system_util.cpp
									
									
									
									
									
										Normal file
									
								
							@@ -0,0 +1,25 @@
 | 
				
			|||||||
 | 
					
 | 
				
			||||||
 | 
					#include "system_util.h"
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					using namespace std;
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					const unsigned int BUFFER_SIZE = 1024;
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					std::wstring getUserName()
 | 
				
			||||||
 | 
					{
 | 
				
			||||||
 | 
						wstring userName;
 | 
				
			||||||
 | 
						wchar_t szUserName[BUFFER_SIZE];
 | 
				
			||||||
 | 
						DWORD userNameBufferSize = BUFFER_SIZE;
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						if ( GetUserNameW( szUserName, &userNameBufferSize ) == false )
 | 
				
			||||||
 | 
						{
 | 
				
			||||||
 | 
							throw runtime_error("获取操作系统用户名失败!");
 | 
				
			||||||
 | 
						}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						if ( userNameBufferSize != 0 )
 | 
				
			||||||
 | 
						{
 | 
				
			||||||
 | 
							userName = szUserName;
 | 
				
			||||||
 | 
						}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						return userName;
 | 
				
			||||||
 | 
					}
 | 
				
			||||||
							
								
								
									
										8
									
								
								代码/cpp/car_dealer_util/source/system/system_util.h
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										8
									
								
								代码/cpp/car_dealer_util/source/system/system_util.h
									
									
									
									
									
										Normal file
									
								
							@@ -0,0 +1,8 @@
 | 
				
			|||||||
 | 
					
 | 
				
			||||||
 | 
					#pragma once
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					#include <windows.h>
 | 
				
			||||||
 | 
					#include <string>
 | 
				
			||||||
 | 
					#include <stdexcept>
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					std::wstring getUserName();
 | 
				
			||||||
@@ -1,11 +1,14 @@
 | 
				
			|||||||
#include <vector>
 | 
					#include <vector>
 | 
				
			||||||
#include <string>
 | 
					#include <string>
 | 
				
			||||||
 | 
					#include <QtWidgets/QMessageBox>
 | 
				
			||||||
#include "test.h"
 | 
					#include "test.h"
 | 
				
			||||||
#include "../data/DataManipulation/Excel/LoadFromExcel.h"
 | 
					#include "../data/DataManipulation/Excel/LoadFromExcel.h"
 | 
				
			||||||
 | 
					#include "../system/system_util.h"
 | 
				
			||||||
 | 
					
 | 
				
			||||||
using namespace std;
 | 
					using namespace std;
 | 
				
			||||||
 | 
					
 | 
				
			||||||
void excelTest();
 | 
					void excelTest();
 | 
				
			||||||
 | 
					void test_username();
 | 
				
			||||||
 | 
					
 | 
				
			||||||
void test()
 | 
					void test()
 | 
				
			||||||
{
 | 
					{
 | 
				
			||||||
@@ -16,11 +19,20 @@ void excelTest()
 | 
				
			|||||||
{
 | 
					{
 | 
				
			||||||
	vector<CarDealerScheme>      schemeVector;
 | 
						vector<CarDealerScheme>      schemeVector;
 | 
				
			||||||
	vector<CarDealerAchievement> achievementsVector;
 | 
						vector<CarDealerAchievement> achievementsVector;
 | 
				
			||||||
 | 
						vector<RepairOrder> repairOrderVector;
 | 
				
			||||||
	
 | 
						
 | 
				
			||||||
	wstring filePath = L"D:/develop/projects_win/2019/car_dealer_util/数据/PC端导入模板(客户经理版).xlsx";
 | 
						wstring filePath = L"D:/develop/projects_win/2019/car_dealer_util/数据/345517_1.xls";
 | 
				
			||||||
 | 
					
 | 
				
			||||||
	//LoadCarDealerSchemeFromXlsx(filePath, 0, 1, schemeVector);
 | 
						//LoadCarDealerSchemeFromXlsx(filePath, 0, 1, schemeVector);
 | 
				
			||||||
	LoadCarDealerAchievementFromXlsx( filePath, 0, 1, achievementsVector );
 | 
						//LoadCarDealerAchievementFromXlsx( filePath, 0, 1, achievementsVector );
 | 
				
			||||||
 | 
						LoadRepairOrderFromXls(filePath, 0, 1, repairOrderVector);
 | 
				
			||||||
 | 
					
 | 
				
			||||||
	return;
 | 
						return;
 | 
				
			||||||
}
 | 
					}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					void test_username()
 | 
				
			||||||
 | 
					{
 | 
				
			||||||
 | 
						wstring userName = getUserName();
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						QMessageBox::information(nullptr, "测试", QString::fromStdWString(userName));
 | 
				
			||||||
 | 
					}
 | 
				
			||||||
							
								
								
									
										
											BIN
										
									
								
								数据/345517_1.xls
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										
											BIN
										
									
								
								数据/345517_1.xls
									
									
									
									
									
										Normal file
									
								
							
										
											Binary file not shown.
										
									
								
							
							
								
								
									
										
											BIN
										
									
								
								数据/送返修工单/345517_1.xls
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										
											BIN
										
									
								
								数据/送返修工单/345517_1.xls
									
									
									
									
									
										Normal file
									
								
							
										
											Binary file not shown.
										
									
								
							
		Reference in New Issue
	
	Block a user