Skip to content

Commit 06a73b6

Browse files
author
stephanie
committed
upate saving functions
1 parent 1d74e2c commit 06a73b6

2 files changed

Lines changed: 29 additions & 19 deletions

File tree

odmtools/controller/frmSeriesSelector.py

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -188,8 +188,8 @@ def OnTableRightDown(self, event):
188188
# TODO @jmeline needs to fix edit, it doesn't unedit when a plot is being edited
189189
self.Bind(wx.EVT_MENU, self.onRightEdit, editItem)
190190
# TODO @jmeline will refresh and clear selected as an enhancement
191-
#self.Bind(wx.EVT_MENU, self.onRightRefresh, popup_menu.Append(popup_series_refresh, 'Refresh'))
192-
#self.Bind(wx.EVT_MENU, self.onRightClearSelected, popup_menu.Append(popup_series_refresh, 'Clear Selected'))
191+
192+
193193

194194
popup_menu.AppendSeparator()
195195
self.Bind(wx.EVT_MENU, self.onRightExData, popup_menu.Append(popup_export_data, 'Export Data'))

odmtools/odmservices/edit_service.py

Lines changed: 27 additions & 17 deletions
Original file line numberDiff line numberDiff line change
@@ -487,6 +487,7 @@ def save(self, result=None):
487487
if not result:
488488
result = self.memDB.series_service.get_series(series_id = values['resultid'][0])
489489
# update result
490+
result.ValueCount = 0
490491
self.updateResult(result)
491492
# upsert values
492493
self.memDB.series_service.upsert(values)
@@ -508,23 +509,38 @@ def saveAppend(self, result, overwrite=True):
508509
# count = overlap calc
509510
count = self.overlapcalc()
510511
# set value count = res.vc+valuecount-count
512+
result.ValueCount = result.ValueCount+ vc -count
511513
# insert values
512514
self.memDB.series_service.upsert_values(values)
513515
# save new annotations
514516
self.add_annotations(self.memDB.annotation_list)
515517
return result
516518

517519

520+
def saveExisting(self, result):
521+
values = self.memdB.df
522+
# get save result
523+
524+
# set in df
525+
values["resultid"]=result.ResultID
526+
527+
# save(values)
528+
self.save(result)
529+
#self.memDB.series_service.upsert_values(values)
530+
531+
return result
532+
518533
def saveAs(self, variable, method, proc_level, action, action_by):
534+
#save as new series
519535
values = self.memDB.df
520536
# get all annotations for series
521537
annolist= self.memDB.series_service.get_annotations_by_result(values["resultid"][0])
522538
annolist['valueid']
523539

524540
# create series
525-
result= self.getResult(variable, method, proc_level)
526-
# update result
527-
self.updateResult(result)
541+
result = self.getResult(variable, method, proc_level)
542+
result.ValueCount = 0
543+
528544
# set in df
529545
values["resultid"] = result.ResultID
530546
# insert values
@@ -538,18 +554,6 @@ def saveAs(self, variable, method, proc_level, action, action_by):
538554

539555
return result
540556

541-
def saveExisting(self, result):
542-
values = self.memdB.df
543-
# get save result
544-
545-
# set in df
546-
values["resultid"]=result.ResultID
547-
# save(values)
548-
self.memDB.series_service.upsert_values(values)
549-
#insert new annotations
550-
self.add_annotations(self.memDB.annotation_list)
551-
return result
552-
553557
def getResult(self, var, meth, proc, action, actionby):
554558

555559
# copy old
@@ -580,18 +584,24 @@ def getResult(self, var, meth, proc, action, actionby):
580584
feature_action.SamplingFeatureID = sampling_feature.SamplingFeatureID
581585
feature_action.SamplingFeatureObj = sampling_feature
582586

583-
# create TimeSeriesResult - this should also contain all of the stuff for the Result
587+
# create TimeSeriesResult - this should also contain all of the stuff for the Result (hopefully the result will actually be of type, TimeSeriesResult)
584588
series = TimeSeriesResults()
585589

586590

587591

588592
return self.updateResult(result)
589593

594+
form = "%Y-%m-%d %H:%M:%S"
590595
def updateResult(self, Result):
596+
form = "%Y-%m-%d %H:%M:%S"
591597
# get pd
592598
values = self.memDB.df
593-
# get result
599+
594600
# update count, dates,
601+
Action = Result.FeatureActionObj.ActionObj
602+
Action.BeginDateTime= datetime.datetime.strptime(str(np.min(values['valuedatetime'])), form)
603+
Action.EndDateTime = datetime.datetime.strptime(str(np.max(values["valuedatetime"])), form)
604+
Result.ValueCount = len(values)
595605
return Result
596606

597607
def overlapcalc(self):

0 commit comments

Comments
 (0)