@@ -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