From dbe32dfea74899012dd796112cececa930d52223 Mon Sep 17 00:00:00 2001 From: "guyga@il.ibm.com" Date: Wed, 10 Jul 2024 17:03:53 +0300 Subject: [PATCH] Add basic UI for testing --- djang/importer/models.py | 66 ++++++++++++++++++++-------------------- djang/importer/views.py | 38 +++++++++++++++++------ 2 files changed, 62 insertions(+), 42 deletions(-) diff --git a/djang/importer/models.py b/djang/importer/models.py index 54e791f..11a8b1e 100644 --- a/djang/importer/models.py +++ b/djang/importer/models.py @@ -23,39 +23,39 @@ class Summary(models.Model): class AssetDetails(models.Model): reports = models.ForeignKey(Reports, on_delete=models.CASCADE) category = models.CharField(max_length=255,null=True) - stock_name = models.CharField(max_length=255) - stock_code = models.CharField(max_length=255,null=True) - issuer_code = models.CharField(max_length=30,null=True) - stock_exchange = models.CharField(max_length=255,null=True) - rating = models.CharField(max_length=10,null=True) - rater = models.CharField(max_length=50,null=True) - purcahse_date = models.DateField(null=True) - average_life_span = models.FloatField(null=True) - currency = models.CharField(max_length=50,null=True) - interest_rate = models.FloatField(null=True) - proceeds = models.FloatField(null=True) - value = models.FloatField(null=True) - exchange_rate = models.FloatField(null=True) - interest_dividend = models.FloatField(null=True) - market_value = models.FloatField(null=True) - percent_of_value = models.FloatField(null=True) - percent_of_asset_channel = models.FloatField(null=True) - percent_of_total_assets = models.FloatField(null=True) - info_provider = models.CharField(max_length=100,null=True) - sector = models.CharField(max_length=100,null=True) - base_asset = models.CharField(max_length=100,null=True) - fair_value = models.FloatField(null=True) - consortium = models.CharField(max_length=4,null=True) - last_valuation_date = models.DateField(null=True) - roi_in_period = models.FloatField(null=True) - estimated_value = models.FloatField(null=True) - address = models.CharField(max_length=255,null=True) - average_interest_rate = models.FloatField(null=True) - asset_type = models.CharField(max_length=255,null=True) - commitment = models.FloatField(null=True) - effective_interest = models.FloatField(null=True) - coordinated_cost = models.FloatField(null=True) - commitment_end_date = models.DateField(null=True) + stock_name = models.CharField(max_length=255, verbose_name="שם ני\"ע") + stock_code = models.CharField(max_length=255,verbose_name="מספר ני\"ע",null=True) + issuer_code = models.CharField(max_length=30,verbose_name="מספר מנפיק",null=True) + stock_exchange = models.CharField(max_length=255,verbose_name="זירת מסחר",null=True) + rating = models.CharField(max_length=10,verbose_name="דירוג",null=True) + rater = models.CharField(max_length=50, verbose_name="שם המדרג",null=True) + purcahse_date = models.DateField(verbose_name="תאריך רכישה",null=True) + average_life_span = models.FloatField(verbose_name="מח\"מ",null=True) + currency = models.CharField(max_length=50,verbose_name="סוג מטבע",null=True) + interest_rate = models.FloatField(verbose_name="שעור ריבית",null=True) + proceeds = models.FloatField(verbose_name="תשואה לפדיון",null=True) + value = models.FloatField(verbose_name="ערך נקוב",null=True) + exchange_rate = models.FloatField(verbose_name="שער",null=True) + interest_dividend = models.FloatField(verbose_name="פדיון ריבית דיבידנד",null=True) + market_value = models.FloatField(verbose_name="שווי שוק",null=True) + percent_of_value = models.FloatField(verbose_name="שעור מערך נקוב",null=True) + percent_of_asset_channel = models.FloatField(verbose_name="שעור מנכסי אפיק ההשקעה",null=True) + percent_of_total_assets = models.FloatField(verbose_name="שעור מנכסי השקעה",null=True) + info_provider = models.CharField(verbose_name="ספק המידע",max_length=100,null=True) + sector = models.CharField(verbose_name="ענף מסחר",max_length=100,null=True) + base_asset = models.CharField(verbose_name="נכס הבסיס",max_length=100,null=True) + fair_value = models.FloatField(verbose_name="שווי הוגן",null=True) + consortium = models.CharField(verbose_name="קונסורציום",max_length=4,null=True) + last_valuation_date = models.DateField(verbose_name="תאריך שערוך אחרון",null=True) + roi_in_period = models.FloatField(verbose_name="שעור תשואה במהלך התקופה",null=True) + estimated_value = models.FloatField(verbose_name="שווי משוערך",null=True) + address = models.CharField(verbose_name="כתובת הנכס",max_length=255,null=True) + average_interest_rate = models.FloatField(verbose_name="שיעור ריבית ממוצע",null=True) + asset_type = models.CharField(verbose_name="אופי הנכס",max_length=255,null=True) + commitment = models.FloatField(verbose_name="סכום ההתחייבות",null=True) + effective_interest = models.FloatField(verbose_name="ריבית אפקטיבית",null=True) + coordinated_cost = models.FloatField(verbose_name="עלות מתואמת",null=True) + commitment_end_date = models.DateField(verbose_name="תאריך סיום ההתחייבות",null=True) class FilesNotIngested(models.Model): file_name = models.CharField(max_length=255) diff --git a/djang/importer/views.py b/djang/importer/views.py index 3b4c0c0..8090bba 100644 --- a/djang/importer/views.py +++ b/djang/importer/views.py @@ -3,12 +3,12 @@ from django.http import HttpResponse root="/" -# Create your views here. + def companies(request): - output = "רשימת החברות:
" + company_list = models.Kupot.objects.values("company").distinct().order_by("company") for k in company_list: - output = output+"" + output = output+"" output = output+"" return HttpResponse(output) @@ -18,7 +18,7 @@ def kupot(request, company_name): company_list = models.Kupot.objects.values().filter(company=company_name) for k in company_list: output = output+"" - output = output+"
" + output = output+"
" return HttpResponse(output) def duchot(request, kupa_id, kupa): @@ -26,13 +26,33 @@ def duchot(request, kupa_id, kupa): report_list = models.Reports.objects.values().filter(kupa_id=kupa_id) for k in report_list: output = output+"" - output = output+"
" + output = output+"
" return HttpResponse(output) -def tabs(request, report_id, report_date): - output = "רשימת טאבים:
" tab_list = models.AssetDetails.objects.values("category").filter(reports_id=report_id).distinct() for k in tab_list: output = output+"" - output = output+"
" + output = output+"
" + return HttpResponse(output) + +def details(request, report_id, tab): + field_list = models.AssetDetails._meta.get_fields() + #list(models.AssetDetails.objects.values().filter(reports_id=report_id).filter(category=tab).values().first().keys()) + output = "" + for f in field_list: + output = output + "" + value_list = models.AssetDetails.objects.values().filter(reports_id=report_id).filter(category=tab).values() + for v in value_list: + output = output+"" + for f in field_list: + if f.name in v and v[f.name] is not None: + output = output + "" + else: + output = output + "" + output = output + "" + output = output+"
"+f.verbose_name+"
"+str(v[f.name])+"

" return HttpResponse(output) \ No newline at end of file