Skip to content

Commit

Permalink
bulk_create does not work to update. exists is supposed to be faster …
Browse files Browse the repository at this point in the history
…then try catch for this. Also remove a bunch of references to old app name ODM2CZOData replace with odm2admin.
  • Loading branch information
Miguel Leon committed Jan 20, 2017
1 parent 2c17f55 commit 64ee08d
Show file tree
Hide file tree
Showing 4 changed files with 55 additions and 55 deletions.
8 changes: 4 additions & 4 deletions odm2admin/NewProcessinglevelForTimeSeries.py
Original file line number Diff line number Diff line change
Expand Up @@ -6,10 +6,10 @@

from datetime import datetime
import warnings
import ODM2CZOData.modelHelpers as modelHelpers
from ODM2CZOData.models import Timeseriesresults
from ODM2CZOData.models import Timeseriesresultvalues
from ODM2CZOData.models import Processinglevels
import odm2admin.modelHelpers as modelHelpers
from odm2admin.models import Timeseriesresults
from odm2admin.models import Timeseriesresultvalues
from odm2admin.models import Processinglevels


# range 0 to 26.7
Expand Down
52 changes: 26 additions & 26 deletions odm2admin/management/commands/ProcessDataLoggerFile.py
Original file line number Diff line number Diff line change
Expand Up @@ -15,14 +15,14 @@
from django.db import transaction
from django.db.models import Min, Max

from ODM2CZOData.models import CvCensorcode
from ODM2CZOData.models import CvQualitycode
from ODM2CZOData.models import Dataloggerfilecolumns
from ODM2CZOData.models import Dataloggerfiles
from ODM2CZOData.models import Extensionproperties
from ODM2CZOData.models import Resultextensionpropertyvalues
from ODM2CZOData.models import Timeseriesresults
from ODM2CZOData.models import Timeseriesresultvalues
from odm2admin.models import CvCensorcode
from odm2admin.models import CvQualitycode
from odm2admin.models import Dataloggerfilecolumns
from odm2admin.models import Dataloggerfiles
from odm2admin.models import Extensionproperties
from odm2admin.models import Resultextensionpropertyvalues
from odm2admin.models import Timeseriesresults
from odm2admin.models import Timeseriesresultvalues

os.environ.setdefault("DJANGO_SETTINGS_MODULE", "templatesAndSettings.settings")

Expand All @@ -49,31 +49,31 @@ def updateStartDateEndDate(results, startdate, enddate):
StartDateProperty = Extensionproperties.objects.get(propertyname__icontains="start date")
EndDateProperty = Extensionproperties.objects.get(propertyname__icontains="end date")
# result = results#.objects.get(resultid=results.resultid.resultid)
repvstart = None
repvend = None
try:
if Resultextensionpropertyvalues.objects.filter(resultid=results.resultid).filter(
propertyid=StartDateProperty).exists() and Resultextensionpropertyvalues.objects.filter(resultid=results.resultid).filter(
propertyid=EndDateProperty).exists():
# raise CommandError(" start date "str(startdate)))
#
repvstart = Resultextensionpropertyvalues.objects.filter(resultid=results.resultid).filter(
propertyid=StartDateProperty) #.update(propertyvalue=startdate)
repvstart.propertyvalue=startdate
Resultextensionpropertyvalues.objects.filter(resultid=results.resultid).filter(
propertyid=StartDateProperty).update(propertyvalue=startdate)
# repvstart.propertyvalue=startdate

repvend = Resultextensionpropertyvalues.objects.filter(resultid=results.resultid).filter(
propertyid=EndDateProperty) #.update(propertyvalue=enddate)
repvend.prepertyvalue = enddate
Resultextensionpropertyvalues.objects.filter(resultid=results.resultid).filter(
propertyid=EndDateProperty).update(propertyvalue=enddate)
# repvend.propertyvalue = enddate

except ObjectDoesNotExist:
else:
# raise CommandError("couldn't find extension property values " +str(repvstart) + "for " +
# str(StartDateProperty + "for" + str(results))
repvstart = Resultextensionpropertyvalues(resultid=results, propertyid=StartDateProperty,
propertyvalue=startdate)
# print(repvstart.propertyvalue)
#repvstart.save()
repvstart.save()
repvend = Resultextensionpropertyvalues(resultid=results, propertyid=EndDateProperty,
propertyvalue=enddate)
# print(repvend.propertyvalue)
#repvend.save()
return repvstart, repvend
repvend.save()
# return repvstart, repvend


class Command(BaseCommand):
Expand Down Expand Up @@ -249,8 +249,8 @@ def handle(self, *args, **options): # (f,fileid, databeginson,columnheaderson,
enddate = Timeseriesresultvalues.objects.filter(resultid=result).annotate(
Max('valuedatetime')). \
order_by('-valuedatetime')[0].valuedatetime.strftime('%Y-%m-%d %H:%M')
repvstart, repvend = updateStartDateEndDate(result, startdate, enddate)
bulkpropertyvals.append(repvstart)
bulkpropertyvals.append(repvend)
#will bulk create or update the property values
Resultextensionpropertyvalues.objects.bulk_create(bulkpropertyvals)
updateStartDateEndDate(result, startdate, enddate) # repvstart, repvend =
# bulkpropertyvals.append(repvstart)
# bulkpropertyvals.append(repvend)
# will bulk create or update the property values
# Resultextensionpropertyvalues.objects.bulk_create(bulkpropertyvals)
46 changes: 23 additions & 23 deletions odm2admin/modelHelpers.py
Original file line number Diff line number Diff line change
Expand Up @@ -13,29 +13,29 @@
from django.db import transaction
from django.db.models import Q

from ODM2CZOData.models import Actions
from ODM2CZOData.models import Annotations
from ODM2CZOData.models import CvAggregationstatistic
from ODM2CZOData.models import CvAnnotationtype
from ODM2CZOData.models import CvCensorcode
from ODM2CZOData.models import CvMedium
from ODM2CZOData.models import CvQualitycode
from ODM2CZOData.models import CvRelationshiptype
from ODM2CZOData.models import CvResulttype
from ODM2CZOData.models import CvStatus
from ODM2CZOData.models import Featureactions
from ODM2CZOData.models import Measurementresults
from ODM2CZOData.models import Measurementresultvalueannotations
from ODM2CZOData.models import Measurementresultvalues
from ODM2CZOData.models import People
from ODM2CZOData.models import Processinglevels
from ODM2CZOData.models import Profileresults
from ODM2CZOData.models import Profileresultvalues
from ODM2CZOData.models import Relatedfeatures
from ODM2CZOData.models import Results
from ODM2CZOData.models import Samplingfeatures
from ODM2CZOData.models import Units
from ODM2CZOData.models import Variables
from odm2admin.models import Actions
from odm2admin.models import Annotations
from odm2admin.models import CvAggregationstatistic
from odm2admin.models import CvAnnotationtype
from odm2admin.models import CvCensorcode
from odm2admin.models import CvMedium
from odm2admin.models import CvQualitycode
from odm2admin.models import CvRelationshiptype
from odm2admin.models import CvResulttype
from odm2admin.models import CvStatus
from odm2admin.models import Featureactions
from odm2admin.models import Measurementresults
from odm2admin.models import Measurementresultvalueannotations
from odm2admin.models import Measurementresultvalues
from odm2admin.models import People
from odm2admin.models import Processinglevels
from odm2admin.models import Profileresults
from odm2admin.models import Profileresultvalues
from odm2admin.models import Relatedfeatures
from odm2admin.models import Results
from odm2admin.models import Samplingfeatures
from odm2admin.models import Units
from odm2admin.models import Variables

__author__ = 'leonmi'

Expand Down
4 changes: 2 additions & 2 deletions soilsIngestionExample/ImportMStoneData.py
Original file line number Diff line number Diff line change
Expand Up @@ -4,8 +4,8 @@
from django.core.wsgi import get_wsgi_application
application = get_wsgi_application()

import ODM2CZOData.modelHelpers as modelHelpers
from ODM2CZOData.models import Actions, Units, Variables
import odm2admin.modelHelpers as modelHelpers
from odm2admin.models import Actions, Units, Variables

__author__ = 'leonmi'

Expand Down

0 comments on commit 64ee08d

Please sign in to comment.