diff --git a/experiment_data/analysis_state/92-new.xlsx b/experiment_data/analysis_state/92-new.xlsx new file mode 100644 index 0000000..9a9d02f Binary files /dev/null and b/experiment_data/analysis_state/92-new.xlsx differ diff --git a/experiment_data/analysis_state/94-new.xlsx b/experiment_data/analysis_state/94-new.xlsx new file mode 100644 index 0000000..5bcf3c8 Binary files /dev/null and b/experiment_data/analysis_state/94-new.xlsx differ diff --git a/src/data/xlsxhandler.cpp b/src/data/xlsxhandler.cpp index 6333ad0..518aa29 100644 --- a/src/data/xlsxhandler.cpp +++ b/src/data/xlsxhandler.cpp @@ -528,6 +528,172 @@ void XlsxHandler::writeAnalysisOperationDetail(QXlsx::Document *xlsx, const int void XlsxHandler::writeSmoothnessFile(const QString filePath) { + if(Global::_curveFileDataVtr.empty()){ + logde<<"curve file data vtr empty..."; + return; + } + + Global::ExperimentInfo& ei = Global::_curveFileDataVtr.first().ei; + + QXlsx::Document xlsx; + xlsx.addSheet("Sheet1"); // 添加一个新的工作表 + + // Write experiment info. + int row = 1; + xlsx.write(row++ , 1, ConFileDataInfo); + + xlsx.write(row , 1, ConSampleName); + QString sampleName = ei.sampleName; + if(sampleName.isEmpty()){ + sampleName = "sample"; + } + xlsx.write(row , 2, sampleName); + row++; + + xlsx.write(row , 1, ConSampleWeight); + QString sampleWeight = ei.sampleWeight; + if(sampleWeight.isEmpty()){ + sampleWeight = "1"; + } + xlsx.write(row , 2, sampleWeight); + + xlsx.write(row , 3, ConUnitMg); + row++; + + xlsx.write(row , 1, ConCrucibleWeight); + xlsx.write(row , 2, 0); + xlsx.write(row , 3, ConUnitMg); + row++; + + xlsx.write(row , 1, Conexperimenter); + QString experimentor = ei.experimentor; + if(experimentor.isEmpty()){ + experimentor = "experimentor"; + } + xlsx.write(row , 2, experimentor); + row++; + + xlsx.write(row , 1, ConDate); + QString date = ei.date; + if(date.isEmpty()){ + date = "20250101"; + } + xlsx.write(row , 2, date); + row++; + + xlsx.write(row , 1, ConMeasureType); + xlsx.write(row , 2, "样品"); + row++; + + int phaseSizeRow = row; + int phaseCount = 0; + xlsx.write(row , 1, ConPhaseSize); + xlsx.write(row , 2, ei.phaseVtr.size()); + row++; + + // Write phase data. + + logde<<"curve file vtr size:"<& phaseVtr = + Global::_curveFileDataVtr.first().phaseTotalVtr; + + int dataSizeRow = 0; +// logde<<"phase vtr size:"<& edVtr = + phaseVtr.at(i).dataVtr; + + // phase data size. + dataSizeRow = row; + xlsx.write(row , 1, ConPhaseDataSize); + xlsx.write(row , 2, edVtr.size()); + row++; + + // logde<<"edVtr size:"<