From 01c69dbc54b75aef726ccc2cdc94986f7f57e48d Mon Sep 17 00:00:00 2001
From: Jomaro Rodrigues <jomaro.rodrigues@gmail.com>
Date: Sun, 18 Mar 2018 12:53:17 -0300
Subject: [PATCH] =?UTF-8?q?comando=20pra=20execu=C3=A7=C3=A3o=20das=20an?=
 =?UTF-8?q?=C3=A1lises=20por=20linha=20de=20comando?=
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit

---
 src/adega/management/__init__.py          |  0
 src/adega/management/commands/__init__.py |  0
 src/adega/management/commands/analyze.py  | 18 ++++++++++++++++++
 src/script/main.py                        |  3 +++
 src/uploads/admin.py                      |  7 +------
 5 files changed, 22 insertions(+), 6 deletions(-)
 create mode 100644 src/adega/management/__init__.py
 create mode 100644 src/adega/management/commands/__init__.py
 create mode 100644 src/adega/management/commands/analyze.py

diff --git a/src/adega/management/__init__.py b/src/adega/management/__init__.py
new file mode 100644
index 0000000..e69de29
diff --git a/src/adega/management/commands/__init__.py b/src/adega/management/commands/__init__.py
new file mode 100644
index 0000000..e69de29
diff --git a/src/adega/management/commands/analyze.py b/src/adega/management/commands/analyze.py
new file mode 100644
index 0000000..de038c4
--- /dev/null
+++ b/src/adega/management/commands/analyze.py
@@ -0,0 +1,18 @@
+from django.core.management.base import BaseCommand
+from uploads.models import Submission
+
+from script.main import analyze
+
+
+class Command(BaseCommand):
+    help = 'Makes one specific analysis'
+
+    def add_arguments(self, parser):
+        parser.add_argument('submission_id', type=int)
+
+    def handle(self, *args, **options):
+        id = options['submission_id']
+
+        submission = Submission.objects.get(pk=id)
+
+        analyze(submission)
diff --git a/src/script/main.py b/src/script/main.py
index b39411f..fb45fa4 100644
--- a/src/script/main.py
+++ b/src/script/main.py
@@ -15,6 +15,8 @@ def analyze(submission):
 
     build_cache(dataframe)
 
+    submission.processed = True
+
     submission.process_time = round(time.clock() - start_time)
     submission.save()
 
@@ -36,5 +38,6 @@ def main():
     print("--- Tempo de CPU: {} ---".format(cpu_time))
     print("--- Tempo total: {} ---".format(run_time))
 
+
 if __name__ == "__main__":
     main()
diff --git a/src/uploads/admin.py b/src/uploads/admin.py
index f6770b0..99875ae 100644
--- a/src/uploads/admin.py
+++ b/src/uploads/admin.py
@@ -13,11 +13,6 @@ def make_analysis(modeladmin, request, queryset):
             print('analisando: '+str(submission))
             analyze(submission)
 
-            submission.processed = True
-
-            print('salvando')
-            submission.save()
-
             print('OK')
         except:
             print('Análise falhou')
@@ -33,4 +28,4 @@ class SubmissionAdmin(admin.ModelAdmin):
     actions = [make_analysis]
 
 
-admin.site.register(Submission, SubmissionAdmin)
\ No newline at end of file
+admin.site.register(Submission, SubmissionAdmin)
-- 
GitLab