Skip to content

Commit 766d0a5

Browse files
committed
New Version 1.13.2
- B #145 csv-export of filament was not working
1 parent 104756b commit 766d0a5

File tree

4 files changed

+28
-34
lines changed

4 files changed

+28
-34
lines changed

octoprint_PrintJobHistory/api/PrintJobHistoryAPI.py

+1-1
Original file line numberDiff line numberDiff line change
@@ -527,7 +527,7 @@ def post_csvUpload(self):
527527

528528
return flask.jsonify(started=True)
529529

530-
###################################################################################### EXPORT of PrintHistory.db
530+
###################################################################################### EXPORT of PrintHistory.db - Plugin
531531
# @octoprint.plugin.BlueprintPlugin.route("/exportPrintHistory", methods=["GET"])
532532
def exportPrintHistoryData(self):
533533

octoprint_PrintJobHistory/common/CSVExportImporter.py

+24-30
Original file line numberDiff line numberDiff line change
@@ -233,35 +233,29 @@ def parseAndAssignFieldValue(self, fieldLabel, fieldName, fieldValue, printJobMo
233233

234234
class FilamentCSVFormattorParser:
235235

236-
def formatValue(self, printJob, fieldNames):
237-
238-
if (hasattr(printJob, fieldNames[0]) == False):
239-
return "-"
240-
allFilamentModels = getattr(printJob, fieldNames[0])
241-
if (allFilamentModels is None):
242-
allFilamentModels = printJob.filaments
236+
def formatValue(self, printJob, fieldName):
243237

244-
if (allFilamentModels is None or len(allFilamentModels) == 0):
238+
# only support for total model
239+
totalFilamentModel = printJob.getFilamentModelByToolId("total")
240+
if (totalFilamentModel == None):
245241
return "-"
246-
# only support for one model
247-
filamentModel = allFilamentModels[0]
248-
if (hasattr(filamentModel, fieldNames[1]) == False):
242+
if (hasattr(totalFilamentModel, fieldName) == False):
249243
return "-"
250-
valueToFormat = getattr(filamentModel, fieldNames[1])
244+
valueToFormat = getattr(totalFilamentModel, fieldName)
251245

252246
# append unit to value
253-
if ("usedCost" == fieldNames[1] and valueToFormat != None and valueToFormat != ""):
254-
if (hasattr(filamentModel, "spoolCostUnit") == True and filamentModel.spoolCostUnit != None):
255-
valueToFormat = StringUtils.formatFloatSave(StringUtils.FLOAT_DEFAULT_FORMAT, valueToFormat, "-")
247+
if ("usedCost" == fieldName and valueToFormat != None and valueToFormat != ""):
248+
valueToFormat = StringUtils.formatFloatSave(StringUtils.FLOAT_DEFAULT_FORMAT, valueToFormat, "-")
249+
if (hasattr(totalFilamentModel, "spoolCostUnit") == True and totalFilamentModel.spoolCostUnit != None):
256250
if (valueToFormat != "-"):
257-
if (isinstance(filamentModel.spoolCostUnit, str)):
258-
valueToFormat = valueToFormat + filamentModel.spoolCostUnit
251+
if (isinstance(totalFilamentModel.spoolCostUnit, str)):
252+
valueToFormat = valueToFormat + totalFilamentModel.spoolCostUnit
259253
else:
260-
valueToFormat = valueToFormat + filamentModel.spoolCostUnit.encode("utf-8")
254+
valueToFormat = valueToFormat + totalFilamentModel.spoolCostUnit.encode("utf-8")
261255

262-
if ("usedLength" == fieldNames[1] or
263-
"calculatedLength" == fieldNames[1] or
264-
"usedWeight" == fieldNames[1]):
256+
if ("usedLength" == fieldName or
257+
"calculatedLength" == fieldName or
258+
"usedWeight" == fieldName):
265259

266260
if (valueToFormat != None and valueToFormat != "" and valueToFormat != "-"):
267261
valueToFormat = StringUtils.formatFloatSave(StringUtils.FLOAT_DEFAULT_FORMAT, valueToFormat, "-")
@@ -370,15 +364,15 @@ def parseAndAssignFieldValue(self, fieldLabel, fieldName, fieldValue, printJobMo
370364
COLUMN_HEIGHT: CSVColumn("printedHeight", COLUMN_HEIGHT, "", DefaultCSVFormattorParser()),
371365
COLUMN_NOTE: CSVColumn("noteText", COLUMN_NOTE, "", DefaultCSVFormattorParser()),
372366
COLUMN_TEMPERATURES: CSVColumn("allTemperatures", COLUMN_TEMPERATURES, "", TemperaturCSVFormattorParser()),
373-
COLUMN_SPOOL_VENDOR: CSVColumn(["allFilaments", "vendor"], COLUMN_SPOOL_VENDOR, "", FilamentCSVFormattorParser()),
374-
COLUMN_SPOOL_NAME: CSVColumn(["allFilaments", "spoolName"], COLUMN_SPOOL_NAME, "", FilamentCSVFormattorParser()),
375-
COLUMN_MATERIAL: CSVColumn(["allFilaments", "material"], COLUMN_MATERIAL, "", FilamentCSVFormattorParser()),
376-
COLUMN_DIAMETER: CSVColumn(["allFilaments", "diameter"], COLUMN_DIAMETER, "", FilamentCSVFormattorParser()),
377-
COLUMN_DENSITY: CSVColumn(["allFilaments", "density"], COLUMN_DENSITY, "", FilamentCSVFormattorParser()),
378-
COLUMN_USED_LENGTH: CSVColumn(["allFilaments", "usedLength"], COLUMN_USED_LENGTH, "", FilamentCSVFormattorParser()),
379-
COLUMN_CALCULATED_LENGTH: CSVColumn(["allFilaments", "calculatedLength"], COLUMN_CALCULATED_LENGTH, "", FilamentCSVFormattorParser()),
380-
COLUMN_USED_WEIGHT: CSVColumn(["allFilaments", "usedWeight"], COLUMN_USED_WEIGHT, "", FilamentCSVFormattorParser()),
381-
COLUMN_USED_FILAMENT_COSTS: CSVColumn(["allFilaments", "usedCost"], COLUMN_USED_FILAMENT_COSTS, "", FilamentCSVFormattorParser()),
367+
COLUMN_SPOOL_VENDOR: CSVColumn("vendor", COLUMN_SPOOL_VENDOR, "", FilamentCSVFormattorParser()),
368+
COLUMN_SPOOL_NAME: CSVColumn("spoolName", COLUMN_SPOOL_NAME, "", FilamentCSVFormattorParser()),
369+
COLUMN_MATERIAL: CSVColumn("material", COLUMN_MATERIAL, "", FilamentCSVFormattorParser()),
370+
COLUMN_DIAMETER: CSVColumn("diameter", COLUMN_DIAMETER, "", FilamentCSVFormattorParser()),
371+
COLUMN_DENSITY: CSVColumn("density", COLUMN_DENSITY, "", FilamentCSVFormattorParser()),
372+
COLUMN_USED_LENGTH: CSVColumn("usedLength", COLUMN_USED_LENGTH, "", FilamentCSVFormattorParser()),
373+
COLUMN_CALCULATED_LENGTH: CSVColumn("calculatedLength", COLUMN_CALCULATED_LENGTH, "", FilamentCSVFormattorParser()),
374+
COLUMN_USED_WEIGHT: CSVColumn("usedWeight", COLUMN_USED_WEIGHT, "", FilamentCSVFormattorParser()),
375+
COLUMN_USED_FILAMENT_COSTS: CSVColumn("usedCost", COLUMN_USED_FILAMENT_COSTS, "", FilamentCSVFormattorParser()),
382376
}
383377

384378

octoprint_PrintJobHistory/templates/PrintJobHistory_tab_dialogs.jinja2

+2-2
Original file line numberDiff line numberDiff line change
@@ -310,8 +310,8 @@
310310
<th style="width: 15%" >Tool</th>
311311
<th style="width: 15%" >Spool</th>
312312
<th style="width: 15%" >Material</th>
313-
<th style="width: 15%" >Used [mm]</th>
314-
<th style="width: 15%" >Calculated [mm]</th>
313+
<th style="width: 15%" >Used [m]</th>
314+
<th style="width: 15%" >Calculated [m]</th>
315315
<th style="width: 15%" >Used weight [g]</th>
316316
<th style="width: 10%" >Cost [E]</th>
317317
</tr>

setup.py

+1-1
Original file line numberDiff line numberDiff line change
@@ -14,7 +14,7 @@
1414
plugin_name = "Print Job History"
1515

1616
# The plugin's version. Can be overwritten within OctoPrint's internal data via __plugin_version__ in the plugin module
17-
plugin_version = "1.13.1"
17+
plugin_version = "1.13.2"
1818

1919
# The plugin's description. Can be overwritten within OctoPrint's internal data via __plugin_description__ in the plugin
2020
# module

0 commit comments

Comments
 (0)