wbportfolio 1.51.0__py2.py3-none-any.whl → 1.51.2__py2.py3-none-any.whl

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.

Potentially problematic release.


This version of wbportfolio might be problematic. Click here for more details.

Files changed (31) hide show
  1. wbportfolio/analysis/claims.py +9 -13
  2. wbportfolio/factories/portfolio_cash_targets.py +1 -1
  3. wbportfolio/factories/portfolio_swing_pricings.py +1 -1
  4. wbportfolio/locale/de/LC_MESSAGES/django.mo +0 -0
  5. wbportfolio/locale/de/LC_MESSAGES/django.po +51 -52
  6. wbportfolio/locale/en/LC_MESSAGES/django.mo +0 -0
  7. wbportfolio/locale/en/LC_MESSAGES/django.po +195 -0
  8. wbportfolio/locale/fr/LC_MESSAGES/django.mo +0 -0
  9. wbportfolio/locale/fr/LC_MESSAGES/django.po +52 -53
  10. wbportfolio/serializers/products.py +5 -1
  11. wbportfolio/serializers/signals.py +1 -1
  12. wbportfolio/viewsets/adjustments.py +2 -0
  13. wbportfolio/viewsets/configs/buttons/products.py +15 -4
  14. wbportfolio/viewsets/configs/endpoints/__init__.py +1 -1
  15. wbportfolio/viewsets/configs/endpoints/adjustments.py +7 -7
  16. wbportfolio/viewsets/configs/endpoints/assets.py +6 -60
  17. wbportfolio/viewsets/configs/endpoints/claim.py +0 -9
  18. wbportfolio/viewsets/configs/endpoints/esg.py +0 -8
  19. wbportfolio/viewsets/configs/endpoints/fees.py +2 -14
  20. wbportfolio/viewsets/configs/endpoints/portfolio_relationship.py +0 -7
  21. wbportfolio/viewsets/configs/endpoints/portfolios.py +7 -20
  22. wbportfolio/viewsets/configs/endpoints/positions.py +0 -7
  23. wbportfolio/viewsets/configs/endpoints/product_performance.py +1 -8
  24. wbportfolio/viewsets/configs/endpoints/products.py +0 -6
  25. wbportfolio/viewsets/configs/endpoints/trades.py +5 -6
  26. wbportfolio/viewsets/configs/endpoints/transactions.py +1 -10
  27. wbportfolio/viewsets/configs/menu/trades.py +0 -1
  28. {wbportfolio-1.51.0.dist-info → wbportfolio-1.51.2.dist-info}/METADATA +1 -1
  29. {wbportfolio-1.51.0.dist-info → wbportfolio-1.51.2.dist-info}/RECORD +31 -27
  30. {wbportfolio-1.51.0.dist-info → wbportfolio-1.51.2.dist-info}/WHEEL +0 -0
  31. {wbportfolio-1.51.0.dist-info → wbportfolio-1.51.2.dist-info}/licenses/LICENSE +0 -0
@@ -8,190 +8,189 @@ msgid ""
8
8
  msgstr ""
9
9
  "Project-Id-Version: PACKAGE VERSION\n"
10
10
  "Report-Msgid-Bugs-To: \n"
11
- "POT-Creation-Date: 2025-05-20 09:32+0200\n"
12
- "PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
13
- "Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
14
- "Language-Team: LANGUAGE <LL@li.org>\n"
15
- "Language: \n"
11
+ "POT-Creation-Date: 2025-05-30 11:37+0200\n"
12
+ "PO-Revision-Date: 2025-05-30 09:40+0000\n"
13
+ "Language-Team: French (https://app.transifex.com/stainly/teams/171242/fr/)\n"
16
14
  "MIME-Version: 1.0\n"
17
15
  "Content-Type: text/plain; charset=UTF-8\n"
18
16
  "Content-Transfer-Encoding: 8bit\n"
19
- "Plural-Forms: nplurals=2; plural=(n > 1);\n"
20
- #: wbportfolio/contrib/company_portfolio/configs/display.py:25
21
- #: wbportfolio/contrib/company_portfolio/configs/display.py:29
17
+ "Language: fr\n"
18
+ "Plural-Forms: nplurals=3; plural=(n == 0 || n == 1) ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;\n"
19
+
20
+ #: contrib/company_portfolio/configs/display.py:25
21
+ #: contrib/company_portfolio/configs/display.py:29
22
22
  msgid "AUM By Product"
23
23
  msgstr ""
24
24
 
25
- #: wbportfolio/contrib/company_portfolio/configs/display.py:44
26
- #: wbportfolio/contrib/company_portfolio/configs/display.py:48
25
+ #: contrib/company_portfolio/configs/display.py:44
26
+ #: contrib/company_portfolio/configs/display.py:48
27
27
  msgid "AUM"
28
28
  msgstr ""
29
29
 
30
- #: wbportfolio/contrib/company_portfolio/configs/display.py:84
31
- #: wbportfolio/contrib/company_portfolio/configs/display.py:88
30
+ #: contrib/company_portfolio/configs/display.py:84
31
+ #: contrib/company_portfolio/configs/display.py:88
32
32
  msgid "Asset Allocation"
33
33
  msgstr ""
34
34
 
35
- #: wbportfolio/contrib/company_portfolio/configs/display.py:103
36
- #: wbportfolio/contrib/company_portfolio/configs/display.py:107
35
+ #: contrib/company_portfolio/configs/display.py:103
36
+ #: contrib/company_portfolio/configs/display.py:107
37
37
  msgid "Geographic Focus"
38
38
  msgstr ""
39
39
 
40
- #: wbportfolio/contrib/company_portfolio/configs/display.py:124
40
+ #: contrib/company_portfolio/configs/display.py:124
41
41
  msgid "Customer Information"
42
42
  msgstr ""
43
43
 
44
- #: wbportfolio/models/reconciliations/account_reconciliation_lines.py:118
44
+ #: models/reconciliations/account_reconciliation_lines.py:118
45
45
  msgid "The last share price of the product"
46
46
  msgstr ""
47
47
 
48
- #: wbportfolio/models/reconciliations/account_reconciliation_lines.py:127
48
+ #: models/reconciliations/account_reconciliation_lines.py:127
49
49
  msgid "The number of shares computed through the Workbench"
50
50
  msgstr ""
51
51
 
52
- #: wbportfolio/models/reconciliations/account_reconciliation_lines.py:133
52
+ #: models/reconciliations/account_reconciliation_lines.py:133
53
53
  msgid "The nominal value computed through the Workbench"
54
54
  msgstr ""
55
55
 
56
- #: wbportfolio/models/reconciliations/account_reconciliation_lines.py:140
56
+ #: models/reconciliations/account_reconciliation_lines.py:140
57
57
  msgid ""
58
58
  "The number of shares externally provided through the Account holder. "
59
59
  "Initially set to the number of shares computed through the Workbench"
60
60
  msgstr ""
61
61
 
62
- #: wbportfolio/models/reconciliations/account_reconciliation_lines.py:148
62
+ #: models/reconciliations/account_reconciliation_lines.py:148
63
63
  msgid ""
64
64
  "The nominal value externally provided through the Account holder. Initially "
65
65
  "set to the number of shares computed through the Workbench"
66
66
  msgstr ""
67
67
 
68
- #: wbportfolio/models/reconciliations/account_reconciliation_lines.py:155
68
+ #: models/reconciliations/account_reconciliation_lines.py:155
69
69
  msgid "Account Reconciliation (Product)"
70
70
  msgstr ""
71
71
 
72
- #: wbportfolio/models/reconciliations/account_reconciliation_lines.py:156
72
+ #: models/reconciliations/account_reconciliation_lines.py:156
73
73
  msgid "Account Reconciliation (Products)"
74
74
  msgstr ""
75
75
 
76
- #: wbportfolio/models/reconciliations/reconciliations.py:19
76
+ #: models/reconciliations/reconciliations.py:19
77
77
  msgid "Approved By"
78
78
  msgstr ""
79
79
 
80
- #: wbportfolio/models/reconciliations/reconciliations.py:22
80
+ #: models/reconciliations/reconciliations.py:22
81
81
  msgid "Approved Timestamp"
82
82
  msgstr ""
83
83
 
84
- #: wbportfolio/models/transactions/claim.py:338
85
- #: wbportfolio/models/transactions/claim.py:341
86
- #: wbportfolio/models/transactions/claim.py:344
84
+ #: models/transactions/claim.py:338 models/transactions/claim.py:341
85
+ #: models/transactions/claim.py:344
87
86
  msgid "With this status, this has to be provided."
88
87
  msgstr ""
89
88
 
90
- #: wbportfolio/models/transactions/rebalancing.py:81
89
+ #: models/transactions/rebalancing.py:81
91
90
  msgid "Evaluation Frequency"
92
91
  msgstr ""
93
92
 
94
- #: wbportfolio/models/transactions/rebalancing.py:82
93
+ #: models/transactions/rebalancing.py:82
95
94
  msgid "The Evaluation Frequency in RRULE format"
96
95
  msgstr ""
97
96
 
98
- #: wbportfolio/models/transactions/trade_proposals.py:473
97
+ #: models/transactions/trade_proposals.py:480
99
98
  msgid "All trades need to be draft before submitting"
100
99
  msgstr ""
101
100
 
102
- #: wbportfolio/models/transactions/trade_proposals.py:482
101
+ #: models/transactions/trade_proposals.py:489
103
102
  msgid "There is no valid trade on this proposal"
104
103
  msgstr ""
105
104
 
106
- #: wbportfolio/models/transactions/trade_proposals.py:550
105
+ #: models/transactions/trade_proposals.py:557
107
106
  msgid "The portfolio does not allow manual rebalanced"
108
107
  msgstr ""
109
108
 
110
- #: wbportfolio/models/transactions/trade_proposals.py:553
109
+ #: models/transactions/trade_proposals.py:560
111
110
  msgid ""
112
111
  "At least one trade needs to be submitted to be able to approve this proposal"
113
112
  msgstr ""
114
113
 
115
- #: wbportfolio/models/transactions/trade_proposals.py:557
114
+ #: models/transactions/trade_proposals.py:564
116
115
  msgid ""
117
116
  "The portfolio needs to be a model portfolio in order to approve this trade "
118
117
  "proposal manually"
119
118
  msgstr ""
120
119
 
121
- #: wbportfolio/models/transactions/trade_proposals.py:560
120
+ #: models/transactions/trade_proposals.py:567
122
121
  msgid "The pre trades rules did not passed successfully"
123
122
  msgstr ""
124
123
 
125
- #: wbportfolio/models/transactions/trade_proposals.py:592
124
+ #: models/transactions/trade_proposals.py:599
126
125
  msgid ""
127
126
  "At least one trade needs to be submitted to be able to deny this proposal"
128
127
  msgstr ""
129
128
 
130
- #: wbportfolio/models/transactions/trade_proposals.py:671
129
+ #: models/transactions/trade_proposals.py:668
131
130
  msgid ""
132
131
  "The portfolio needs to be a model portfolio in order to revert this trade "
133
132
  "proposal manually"
134
133
  msgstr ""
135
134
 
136
- #: wbportfolio/models/transactions/trades.py:324
135
+ #: models/transactions/trades.py:324
137
136
  msgid "Cannot execute a trade without a valid quote price"
138
137
  msgstr ""
139
138
 
140
- #: wbportfolio/models/transactions/trades.py:327
139
+ #: models/transactions/trades.py:327
141
140
  msgid ""
142
141
  "The portfolio needs to be a model portfolio in order to execute this trade "
143
142
  "manually"
144
143
  msgstr ""
145
144
 
146
- #: wbportfolio/viewsets/configs/display/portfolios.py:105
145
+ #: viewsets/configs/display/portfolios.py:105
147
146
  msgid "Linked Instruments"
148
147
  msgstr ""
149
148
 
150
- #: wbportfolio/viewsets/configs/display/portfolios.py:112
149
+ #: viewsets/configs/display/portfolios.py:112
151
150
  msgid "Dependency Portfolios"
152
151
  msgstr ""
153
152
 
154
- #: wbportfolio/viewsets/configs/display/portfolios.py:119
153
+ #: viewsets/configs/display/portfolios.py:119
155
154
  msgid "Preferred Classification"
156
155
  msgstr ""
157
156
 
158
- #: wbportfolio/viewsets/configs/display/products.py:26
159
- #: wbportfolio/viewsets/configs/display/products.py:156
157
+ #: viewsets/configs/display/products.py:26
158
+ #: viewsets/configs/display/products.py:156
160
159
  msgid "Information"
161
160
  msgstr ""
162
161
 
163
- #: wbportfolio/viewsets/configs/display/products.py:62
162
+ #: viewsets/configs/display/products.py:62
164
163
  msgid "Performance"
165
164
  msgstr ""
166
165
 
167
- #: wbportfolio/viewsets/configs/display/products.py:144
166
+ #: viewsets/configs/display/products.py:144
168
167
  msgid "Classifications"
169
168
  msgstr ""
170
169
 
171
- #: wbportfolio/viewsets/configs/display/products.py:148
170
+ #: viewsets/configs/display/products.py:148
172
171
  msgid "Fees"
173
172
  msgstr ""
174
173
 
175
- #: wbportfolio/viewsets/configs/display/products.py:166
174
+ #: viewsets/configs/display/products.py:166
176
175
  msgid "White Label Customers"
177
176
  msgstr ""
178
177
 
179
- #: wbportfolio/viewsets/configs/display/products.py:170
178
+ #: viewsets/configs/display/products.py:170
180
179
  msgid "Portfolios"
181
180
  msgstr ""
182
181
 
183
- #: wbportfolio/viewsets/configs/display/products.py:173
182
+ #: viewsets/configs/display/products.py:173
184
183
  msgid "Related Instruments"
185
184
  msgstr ""
186
185
 
187
- #: wbportfolio/viewsets/configs/display/products.py:178
186
+ #: viewsets/configs/display/products.py:178
188
187
  msgid "Index"
189
188
  msgstr ""
190
189
 
191
- #: wbportfolio/viewsets/configs/display/products.py:180
190
+ #: viewsets/configs/display/products.py:180
192
191
  msgid "Roles"
193
192
  msgstr ""
194
193
 
195
- #: wbportfolio/viewsets/configs/display/products.py:183
194
+ #: viewsets/configs/display/products.py:183
196
195
  msgid "Preferred Classification per Instrument"
197
196
  msgstr ""
@@ -203,10 +203,14 @@ class ProductModelSerializer(ProductListModelSerializer):
203
203
  product_ct = ContentType.objects.get_for_model(Product)
204
204
  instrument_ct = ContentType.objects.get_for_model(Instrument)
205
205
  portfolio_cd = ContentType.objects.get_for_model(Portfolio)
206
- additional_resources["risk_incidents"] = (
206
+ additional_resources["risk_rules"] = (
207
207
  reverse("wbcompliance:riskrule-list", args=[], request=request)
208
208
  + f"?checked_object_relationships=[({product_ct.id},{instance.id}),({instrument_ct.id},{instance.id}),({portfolio_cd.id},{portfolio.id})]"
209
209
  )
210
+ additional_resources["risk_incidents"] = (
211
+ reverse("wbcompliance:riskincident-list", args=[], request=request)
212
+ + f"?checked_object_relationships=[({product_ct.id},{instance.id}),({instrument_ct.id},{instance.id}),({portfolio_cd.id},{portfolio.id})]"
213
+ )
210
214
  return additional_resources
211
215
 
212
216
  class Meta(ProductListModelSerializer.Meta):
@@ -140,7 +140,7 @@ def claim_adding_additional_resource(sender, serializer, instance, request, user
140
140
  start = current_quarter_date_start()
141
141
  return {
142
142
  "claims": reverse("wbportfolio:entry-claim-list", args=[instance.id], request=request),
143
- "aum": f'{reverse("wbportfolio:aumtable-list", args=[], request=request)}?group_by=PRODUCT&account_owner={instance.id}&date_gte={start:%Y-%m-%d}&date_lte={date.today():%Y-%m-%d}',
143
+ "aum": f'{reverse("wbportfolio:aumtable-list", args=[], request=request)}?group_by=PRODUCT&account_owner={instance.id}&date={start:%Y-%m-%d},{date.today():%Y-%m-%d}',
144
144
  }
145
145
 
146
146
 
@@ -8,6 +8,7 @@ from .configs import (
8
8
  AdjustmentButtonConfig,
9
9
  AdjustmentDisplayConfig,
10
10
  AdjustmentEndpointConfig,
11
+ AdjustmentEquityEndpointConfig,
11
12
  AdjustmentTitleConfig,
12
13
  )
13
14
 
@@ -42,6 +43,7 @@ class AdjustmentEquityModelViewSet(AdjustmentModelViewSet):
42
43
  "status": ["exact"],
43
44
  "last_handler": ["exact"],
44
45
  }
46
+ endpoint_config_class = AdjustmentEquityEndpointConfig
45
47
 
46
48
  def get_queryset(self):
47
49
  return super().get_queryset().filter(instrument=self.kwargs["instrument_id"])
@@ -19,10 +19,21 @@ class ProductButtonConfig(ButtonViewConfig):
19
19
  ),
20
20
  ),
21
21
  *InstrumentButtonViewConfig(self.view, self.request, self.instance).get_custom_instance_buttons(),
22
- bt.WidgetButton(
23
- key="risk_incidents",
24
- label="Risk Incidents",
25
- icon=WBIcon.VIEW.icon,
22
+ bt.DropDownButton(
23
+ label="Risk Management",
24
+ icon=WBIcon.UNFOLD.icon,
25
+ buttons=[
26
+ bt.WidgetButton(
27
+ key="risk_rules",
28
+ label="Rules",
29
+ icon=WBIcon.CONFIGURE.icon,
30
+ ),
31
+ bt.WidgetButton(
32
+ key="risk_incidents",
33
+ label="Incidents",
34
+ icon=WBIcon.WARNING.icon,
35
+ ),
36
+ ],
26
37
  ),
27
38
  }
28
39
 
@@ -1,4 +1,4 @@
1
- from .adjustments import AdjustmentEndpointConfig
1
+ from .adjustments import AdjustmentEndpointConfig, AdjustmentEquityEndpointConfig
2
2
  from .assets import (
3
3
  AssetPositionEndpointConfig,
4
4
  AssetPositionEquityEndpointConfig,
@@ -4,14 +4,14 @@ from wbcore.metadata.configs.endpoints import EndpointViewConfig
4
4
 
5
5
  class AdjustmentEndpointConfig(EndpointViewConfig):
6
6
  def get_endpoint(self, **kwargs):
7
- if instrument_id := self.view.kwargs.get("instrument_id", None):
8
- return reverse("wbportfolio:instrument-adjustment-list", args=[instrument_id], request=self.request)
9
7
  return reverse("wbportfolio:adjustment-list", args=[], request=self.request)
10
8
 
11
- def get_instance_endpoint(self, **kwargs):
12
- if self.view.kwargs.get("pk", None):
13
- return None
14
- return self.get_endpoint(**kwargs)
15
-
16
9
  def get_delete_endpoint(self, **kwargs):
17
10
  return None
11
+
12
+
13
+ class AdjustmentEquityEndpointConfig(AdjustmentEndpointConfig):
14
+ def get_endpoint(self, **kwargs):
15
+ return reverse(
16
+ "wbportfolio:instrument-adjustment-list", args=[self.view.kwargs["instrument_id"]], request=self.request
17
+ )
@@ -6,65 +6,30 @@ class AssetPositionEndpointConfig(EndpointViewConfig):
6
6
  def get_endpoint(self, **kwargs):
7
7
  return None
8
8
 
9
- def get_list_endpoint(self, **kwargs):
10
- return reverse("wbportfolio:assetposition-list", request=self.request)
11
-
12
9
 
13
10
  class AssetPositionPortfolioEndpointConfig(AssetPositionEndpointConfig):
14
- def get_list_endpoint(self, **kwargs):
15
- return reverse(
16
- "wbportfolio:portfolio-asset-list",
17
- args=[self.view.kwargs["portfolio_id"]],
18
- request=self.request,
19
- )
11
+ pass
20
12
 
21
13
 
22
14
  class AssetPositionEquityEndpointConfig(AssetPositionEndpointConfig):
23
- def get_list_endpoint(self, **kwargs):
24
- return reverse(
25
- "wbportfolio:equity-asset-list",
26
- args=[self.view.kwargs["equity_id"]],
27
- request=self.request,
28
- )
15
+ pass
29
16
 
30
17
 
31
18
  class AssetPositionInstrumentEndpointConfig(AssetPositionEndpointConfig):
32
- def get_list_endpoint(self, **kwargs):
33
- return reverse(
34
- "wbportfolio:instrument-asset-list",
35
- args=[self.view.kwargs["instrument_id"]],
36
- request=self.request,
37
- )
19
+ pass
38
20
 
39
21
 
40
22
  class AssetPositionIndexEndpointConfig(AssetPositionEndpointConfig):
41
- def get_list_endpoint(self, **kwargs):
42
- return reverse(
43
- "wbportfolio:index-asset-list",
44
- args=[self.view.kwargs["index_id"]],
45
- request=self.request,
46
- )
23
+ pass
47
24
 
48
25
 
49
26
  class AssetPositionProductGroupEndpointConfig(AssetPositionEndpointConfig):
50
- def get_list_endpoint(self, **kwargs):
51
- return reverse(
52
- "wbportfolio:productgroup-asset-list",
53
- args=[self.view.kwargs["product_group_id"]],
54
- request=self.request,
55
- )
27
+ pass
56
28
 
57
29
 
58
30
  class CashPositionPortfolioEndpointConfig(AssetPositionEndpointConfig):
59
31
  PK_FIELD = "portfolio"
60
32
 
61
- def get_list_endpoint(self, **kwargs):
62
- return reverse(
63
- "wbportfolio:productcashposition-list",
64
- args=[],
65
- request=self.request,
66
- )
67
-
68
33
  def get_instance_endpoint(self, **kwargs):
69
34
  return reverse(
70
35
  "wbportfolio:portfolio-list",
@@ -77,12 +42,7 @@ class CashPositionPortfolioEndpointConfig(AssetPositionEndpointConfig):
77
42
 
78
43
 
79
44
  class ContributorPortfolioChartEndpointConfig(AssetPositionEndpointConfig):
80
- def get_list_endpoint(self, **kwargs):
81
- return reverse(
82
- "wbportfolio:portfolio-contributor-list",
83
- args=[self.view.kwargs["portfolio_id"]],
84
- request=self.request,
85
- )
45
+ pass
86
46
 
87
47
 
88
48
  class AssetPositionUnderlyingInstrumentChartEndpointConfig(EndpointViewConfig):
@@ -104,13 +64,6 @@ class DistributionChartEndpointConfig(EndpointViewConfig):
104
64
 
105
65
 
106
66
  class DistributionTableEndpointConfig(EndpointViewConfig):
107
- def get_list_endpoint(self, **kwargs):
108
- return reverse(
109
- "wbportfolio:portfolio-distributiontable-list",
110
- args=[self.view.kwargs["portfolio_id"]],
111
- request=self.request,
112
- )
113
-
114
67
  def get_endpoint(self, **kwargs):
115
68
  return None
116
69
 
@@ -118,10 +71,3 @@ class DistributionTableEndpointConfig(EndpointViewConfig):
118
71
  class CompositionModelPortfolioPandasEndpointConfig(EndpointViewConfig):
119
72
  def get_endpoint(self, **kwargs):
120
73
  return None
121
-
122
- def get_list_endpoint(self, **kwargs):
123
- return reverse(
124
- "wbportfolio:portfolio-modelcompositionpandas-list",
125
- args=[self.view.kwargs["portfolio_id"]],
126
- request=self.request,
127
- )
@@ -69,9 +69,6 @@ class ConsolidatedTradeSummaryEndpointConfig(EndpointViewConfig):
69
69
  def get_endpoint(self, **kwargs):
70
70
  return None
71
71
 
72
- def get_list_endpoint(self, **kwargs):
73
- return reverse("wbportfolio:aumtable-list", request=self.request)
74
-
75
72
 
76
73
  class ConsolidatedTradeSummaryDistributionChartEndpointConfig(EndpointViewConfig):
77
74
  def get_endpoint(self, **kwargs):
@@ -87,9 +84,6 @@ class ProfitAndLossPandasEndpointConfig(EndpointViewConfig):
87
84
  def get_endpoint(self, **kwargs):
88
85
  return None
89
86
 
90
- def get_list_endpoint(self, **kwargs):
91
- return reverse("wbportfolio:pnltable-list", request=self.request)
92
-
93
87
 
94
88
  class NegativeTermimalAccountPerProductEndpointConfig(EndpointViewConfig):
95
89
  def get_endpoint(self, **kwargs):
@@ -102,6 +96,3 @@ class NegativeTermimalAccountPerProductEndpointConfig(EndpointViewConfig):
102
96
  return (
103
97
  reverse("wbportfolio:claim-list", request=self.request) + "?account={{account_id}}&product={{product_id}}"
104
98
  )
105
-
106
- def get_list_endpoint(self, **kwargs):
107
- return reverse("wbportfolio:negativeaccountproduct-list", request=self.request)
@@ -1,14 +1,6 @@
1
- from rest_framework.reverse import reverse
2
1
  from wbcore.metadata.configs.endpoints import EndpointViewConfig
3
2
 
4
3
 
5
4
  class ESGMetricAggregationPortfolioPandasEndpointConfig(EndpointViewConfig):
6
5
  def get_endpoint(self, **kwargs):
7
6
  return None
8
-
9
- def get_list_endpoint(self, **kwargs):
10
- return reverse(
11
- "wbportfolio:portfolio-esgaggregation-list",
12
- args=[self.view.kwargs["portfolio_id"]],
13
- request=self.request,
14
- )
@@ -1,4 +1,3 @@
1
- from rest_framework.reverse import reverse
2
1
  from wbcore.metadata.configs.endpoints import EndpointViewConfig
3
2
 
4
3
 
@@ -6,21 +5,10 @@ class FeeEndpointConfig(EndpointViewConfig):
6
5
  def get_endpoint(self, **kwargs):
7
6
  return None
8
7
 
9
- def get_list_endpoint(self, **kwargs):
10
- return reverse("wbportfolio:fees-list", args=[], request=self.request)
11
-
12
8
 
13
9
  class FeesPortfolioEndpointConfig(FeeEndpointConfig):
14
- def get_list_endpoint(self, **kwargs):
15
- return reverse(
16
- "wbportfolio:portfolio-fees-list", args=[self.view.kwargs["portfolio_id"]], request=self.request
17
- )
10
+ pass
18
11
 
19
12
 
20
13
  class FeesAggregatedPortfolioPandasEndpointConfig(EndpointViewConfig):
21
- def get_list_endpoint(self, **kwargs):
22
- return reverse(
23
- "wbportfolio:portfolio-feesaggregated-list",
24
- args=[self.view.kwargs["portfolio_id"]],
25
- request=self.request,
26
- )
14
+ pass
@@ -14,10 +14,3 @@ class PortfolioInstrumentPreferredClassificationThroughEndpointConfig(EndpointVi
14
14
  class InstrumentPortfolioThroughPortfolioModelEndpointConfig(EndpointViewConfig):
15
15
  def get_endpoint(self, **kwargs):
16
16
  return None
17
-
18
- def get_list_endpoint(self, **kwargs):
19
- return reverse(
20
- "wbportfolio:portfolio-instrument-list",
21
- args=[self.view.kwargs["portfolio_id"]],
22
- request=self.request,
23
- )
@@ -21,13 +21,6 @@ class PortfolioEndpointConfig(EndpointViewConfig):
21
21
  class PortfolioPortfolioThroughModelEndpointConfig(EndpointViewConfig):
22
22
  PK_FIELD = "dependency_portfolio"
23
23
 
24
- def get_list_endpoint(self, **kwargs):
25
- return reverse(
26
- "wbportfolio:portfolio-dependencyportfolio-list",
27
- args=[self.view.kwargs["portfolio_id"]],
28
- request=self.request,
29
- )
30
-
31
24
  def get_instance_endpoint(self, **kwargs):
32
25
  return reverse(
33
26
  "wbportfolio:portfolio-list",
@@ -37,23 +30,17 @@ class PortfolioPortfolioThroughModelEndpointConfig(EndpointViewConfig):
37
30
 
38
31
  def get_endpoint(self, **kwargs):
39
32
  if self.request.user.is_superuser:
40
- return self.get_list_endpoint(**kwargs)
33
+ return reverse(
34
+ "wbportfolio:portfolio-dependencyportfolio-list",
35
+ args=[self.view.kwargs["portfolio_id"]],
36
+ request=self.request,
37
+ )
41
38
  return None
42
39
 
43
40
 
44
41
  class PortfolioTreeGraphChartEndpointConfig(EndpointViewConfig):
45
- def get_list_endpoint(self, **kwargs):
46
- return reverse(
47
- "wbportfolio:portfolio-treegraphchart-list",
48
- args=[self.view.kwargs["portfolio_id"]],
49
- request=self.request,
50
- )
42
+ pass
51
43
 
52
44
 
53
45
  class TopDownPortfolioCompositionPandasEndpointConfig(EndpointViewConfig):
54
- def get_list_endpoint(self, **kwargs):
55
- return reverse(
56
- "wbportfolio:portfolio-topdowncomposition-list",
57
- args=[self.view.kwargs["portfolio_id"]],
58
- request=self.request,
59
- )
46
+ pass
@@ -1,4 +1,3 @@
1
- from rest_framework.reverse import reverse
2
1
  from wbcore.metadata.configs.endpoints import EndpointViewConfig
3
2
 
4
3
 
@@ -6,13 +5,7 @@ class AssetPositionPandasEndpointConfig(EndpointViewConfig):
6
5
  def get_endpoint(self, **kwargs):
7
6
  return None
8
7
 
9
- def get_list_endpoint(self, **kwargs):
10
- return reverse("wbportfolio:assetpositiongroupby-list", request=self.request)
11
-
12
8
 
13
9
  class AggregatedAssetPositionLiquidityEndpointConfig(EndpointViewConfig):
14
10
  def get_endpoint(self, **kwargs):
15
11
  return None
16
-
17
- def get_list_endpoint(self, **kwargs):
18
- return reverse("wbportfolio:aggregatedassetpositionliquidity-list", request=self.request)
@@ -9,9 +9,6 @@ class PerformancePandasEndpointConfig(EndpointViewConfig):
9
9
  def get_instance_endpoint(self, **kwargs):
10
10
  return reverse("wbportfolio:product-list", request=self.request)
11
11
 
12
- def get_list_endpoint(self, **kwargs):
13
- return reverse("wbportfolio:productperformance-list", request=self.request)
14
-
15
12
 
16
13
  class PerformanceComparisonEndpointConfig(EndpointViewConfig):
17
14
  def get_endpoint(self, **kwargs):
@@ -20,10 +17,6 @@ class PerformanceComparisonEndpointConfig(EndpointViewConfig):
20
17
  def get_instance_endpoint(self, **kwargs):
21
18
  return reverse("wbportfolio:product-list", request=self.request)
22
19
 
23
- def get_list_endpoint(self, **kwargs):
24
- return reverse("wbportfolio:productperformancecomparison-list", request=self.request)
25
-
26
20
 
27
21
  class ProductPerformanceNetNewMoneyEndpointConfig(PerformancePandasEndpointConfig):
28
- def get_list_endpoint(self, **kwargs):
29
- return reverse("wbportfolio:productperformancennmlist-list", request=self.request)
22
+ pass
@@ -6,9 +6,6 @@ class ProductCustomerEndpointConfig(EndpointViewConfig):
6
6
  def get_endpoint(self, **kwargs):
7
7
  return None
8
8
 
9
- def get_list_endpoint(self, **kwargs):
10
- return reverse("wbportfolio:productcustomer-list", request=self.request)
11
-
12
9
 
13
10
  class ProductPerformanceFeesEndpointConfig(EndpointViewConfig):
14
11
  def get_endpoint(self, **kwargs):
@@ -17,9 +14,6 @@ class ProductPerformanceFeesEndpointConfig(EndpointViewConfig):
17
14
  def get_instance_endpoint(self, **kwargs):
18
15
  return reverse("wbportfolio:product-list", request=self.request)
19
16
 
20
- def get_list_endpoint(self, **kwargs):
21
- return reverse("wbportfolio:feesproductperformance-list", request=self.request)
22
-
23
17
 
24
18
  class InstrumentPriceAUMDataEndpointConfig(EndpointViewConfig):
25
19
  def get_endpoint(self, **kwargs):