from django.core.management.base import BaseCommand, CommandError from datetime import date import datetime from django.utils import timezone import astropy from astropy.io import ascii import pandas as pd import pymysql from sqlalchemy import create_engine from heasarc.models import HeasarcBase from artsurvey.models import ArtSurveySource, ArtSurvey, EnergyBand from srglib.utils import find_counterparts from srgcat.models import SrgDataDump def find_orig_survey(init_version,survey_name,dump_name,slug): name=dump_name+'.'+slug try: survey = ArtSurvey.objects.get(version=init_version) except ArtSurvey.DoesNotExist: print("ArtSurvey not found") #survey = ArtSurvey(version=init_version, name=survey_name) #survey.save() return print("use ArtSurvey {}".format(survey)) try: band = EnergyBand.objects.get(slug=slug) print("use EnergyBand {}".format(band)) except EnergyBand.DoesNotExist: print("EnergyBand not found") return """ copy catalog from this dump """ dump = SrgDataDump.objects.get(name=name) srcs = dump.skymapsource_set.all() for src in srcs: #if not (src.artsurvey_source): try: source = ArtSurveySource.objects.all().filter(survey=survey).filter(band=band).filter(name=src.name) except Exception as e: print("{} {}".format(src,e)) continue if (source.count() > 1): for s in source: print("{} --> {}".format(src,s)) continue if(source.count() == 0): print("{} --> not found".format(src)) continue print("{} {} {}".format(slug,src.name,src.artsurvey_source)) # artsource = ArtSurveySource.objects.create_source(src,survey,band) # artsource.save() class Command(BaseCommand): help = 'Initiates data dase' def handle(self, *args, **options): find_orig_survey(1234.0,'1-4','S1-4','E0') self.stdout.write(self.style.SUCCESS('Done'))