netbox-contract 2.2.2__tar.gz → 2.2.3__tar.gz

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.
Files changed (73) hide show
  1. {netbox_contract-2.2.2/src/netbox_contract.egg-info → netbox_contract-2.2.3}/PKG-INFO +1 -1
  2. {netbox_contract-2.2.2 → netbox_contract-2.2.3}/pyproject.toml +1 -1
  3. {netbox_contract-2.2.2 → netbox_contract-2.2.3}/src/netbox_contract/__init__.py +1 -1
  4. {netbox_contract-2.2.2 → netbox_contract-2.2.3}/src/netbox_contract/api/serializers.py +1 -1
  5. {netbox_contract-2.2.2 → netbox_contract-2.2.3}/src/netbox_contract/forms.py +10 -2
  6. {netbox_contract-2.2.2 → netbox_contract-2.2.3}/src/netbox_contract/views.py +1 -1
  7. {netbox_contract-2.2.2 → netbox_contract-2.2.3/src/netbox_contract.egg-info}/PKG-INFO +1 -1
  8. {netbox_contract-2.2.2 → netbox_contract-2.2.3}/LICENSE +0 -0
  9. {netbox_contract-2.2.2 → netbox_contract-2.2.3}/MANIFEST.in +0 -0
  10. {netbox_contract-2.2.2 → netbox_contract-2.2.3}/README.md +0 -0
  11. {netbox_contract-2.2.2 → netbox_contract-2.2.3}/setup.cfg +0 -0
  12. {netbox_contract-2.2.2 → netbox_contract-2.2.3}/setup.py +0 -0
  13. {netbox_contract-2.2.2 → netbox_contract-2.2.3}/src/netbox_contract/api/__init__.py +0 -0
  14. {netbox_contract-2.2.2 → netbox_contract-2.2.3}/src/netbox_contract/api/urls.py +0 -0
  15. {netbox_contract-2.2.2 → netbox_contract-2.2.3}/src/netbox_contract/api/views.py +0 -0
  16. {netbox_contract-2.2.2 → netbox_contract-2.2.3}/src/netbox_contract/constants.py +0 -0
  17. {netbox_contract-2.2.2 → netbox_contract-2.2.3}/src/netbox_contract/filtersets.py +0 -0
  18. {netbox_contract-2.2.2 → netbox_contract-2.2.3}/src/netbox_contract/migrations/0001_initial.py +0 -0
  19. {netbox_contract-2.2.2 → netbox_contract-2.2.3}/src/netbox_contract/migrations/0002_alter_contract_circuit_and_more.py +0 -0
  20. {netbox_contract-2.2.2 → netbox_contract-2.2.3}/src/netbox_contract/migrations/0003_alter_contract_custom_field_data_and_more.py +0 -0
  21. {netbox_contract-2.2.2 → netbox_contract-2.2.3}/src/netbox_contract/migrations/0004_contract_currency_invoice_currency.py +0 -0
  22. {netbox_contract-2.2.2 → netbox_contract-2.2.3}/src/netbox_contract/migrations/0005_contract_accounting_dimensions_and_more.py +0 -0
  23. {netbox_contract-2.2.2 → netbox_contract-2.2.3}/src/netbox_contract/migrations/0006_alter_contract_circuit.py +0 -0
  24. {netbox_contract-2.2.2 → netbox_contract-2.2.3}/src/netbox_contract/migrations/0007_invoice_date.py +0 -0
  25. {netbox_contract-2.2.2 → netbox_contract-2.2.3}/src/netbox_contract/migrations/0008_invoice_comments.py +0 -0
  26. {netbox_contract-2.2.2 → netbox_contract-2.2.3}/src/netbox_contract/migrations/0009_contract_external_reference.py +0 -0
  27. {netbox_contract-2.2.2 → netbox_contract-2.2.3}/src/netbox_contract/migrations/0010_invoice_contracts.py +0 -0
  28. {netbox_contract-2.2.2 → netbox_contract-2.2.3}/src/netbox_contract/migrations/0011_auto_20230122_2112.py +0 -0
  29. {netbox_contract-2.2.2 → netbox_contract-2.2.3}/src/netbox_contract/migrations/0012_remove_invoice_contract.py +0 -0
  30. {netbox_contract-2.2.2 → netbox_contract-2.2.3}/src/netbox_contract/migrations/0013_contract_documents_invoice_documents.py +0 -0
  31. {netbox_contract-2.2.2 → netbox_contract-2.2.3}/src/netbox_contract/migrations/0014_contract_end_date.py +0 -0
  32. {netbox_contract-2.2.2 → netbox_contract-2.2.3}/src/netbox_contract/migrations/0015_contractassignement.py +0 -0
  33. {netbox_contract-2.2.2 → netbox_contract-2.2.3}/src/netbox_contract/migrations/0016_contract_parent.py +0 -0
  34. {netbox_contract-2.2.2 → netbox_contract-2.2.3}/src/netbox_contract/migrations/0017_alter_contract_accounting_dimensions.py +0 -0
  35. {netbox_contract-2.2.2 → netbox_contract-2.2.3}/src/netbox_contract/migrations/0018_contract_external_partie_object_id_and_more.py +0 -0
  36. {netbox_contract-2.2.2 → netbox_contract-2.2.3}/src/netbox_contract/migrations/0019_auto_20230924_1813.py +0 -0
  37. {netbox_contract-2.2.2 → netbox_contract-2.2.3}/src/netbox_contract/migrations/0020_alter_contract_external_partie.py +0 -0
  38. {netbox_contract-2.2.2 → netbox_contract-2.2.3}/src/netbox_contract/migrations/0021_alter_contract_external_partie.py +0 -0
  39. {netbox_contract-2.2.2 → netbox_contract-2.2.3}/src/netbox_contract/migrations/0022_alter_contract_internal_partie_alter_contract_parent.py +0 -0
  40. {netbox_contract-2.2.2 → netbox_contract-2.2.3}/src/netbox_contract/migrations/0023_rename_contractassignement_contractassignment_and_more.py +0 -0
  41. {netbox_contract-2.2.2 → netbox_contract-2.2.3}/src/netbox_contract/migrations/0024_remove_contract_external_partie.py +0 -0
  42. {netbox_contract-2.2.2 → netbox_contract-2.2.3}/src/netbox_contract/migrations/0025_remove_contract_circuit_and_more.py +0 -0
  43. {netbox_contract-2.2.2 → netbox_contract-2.2.3}/src/netbox_contract/migrations/0026_auto_20240421_1550.py +0 -0
  44. {netbox_contract-2.2.2 → netbox_contract-2.2.3}/src/netbox_contract/migrations/0027_invoiceline.py +0 -0
  45. {netbox_contract-2.2.2 → netbox_contract-2.2.3}/src/netbox_contract/migrations/0028_invoiceline_accounting_dimensions.py +0 -0
  46. {netbox_contract-2.2.2 → netbox_contract-2.2.3}/src/netbox_contract/migrations/0029_remove_invoiceline_accounting_dimensions_and_more.py +0 -0
  47. {netbox_contract-2.2.2 → netbox_contract-2.2.3}/src/netbox_contract/migrations/0030_alter_invoiceline_accounting_dimensions.py +0 -0
  48. {netbox_contract-2.2.2 → netbox_contract-2.2.3}/src/netbox_contract/migrations/0031_contract_invoice_template_invoice_template.py +0 -0
  49. {netbox_contract-2.2.2 → netbox_contract-2.2.3}/src/netbox_contract/migrations/0032_alter_invoice_period_end_alter_invoice_period_start_and_more.py +0 -0
  50. {netbox_contract-2.2.2 → netbox_contract-2.2.3}/src/netbox_contract/migrations/0033_remove_contract_invoice_template.py +0 -0
  51. {netbox_contract-2.2.2 → netbox_contract-2.2.3}/src/netbox_contract/migrations/0034_contract_yrc_alter_contract_mrc.py +0 -0
  52. {netbox_contract-2.2.2 → netbox_contract-2.2.3}/src/netbox_contract/migrations/0035_accountingdimension_status_and_more.py +0 -0
  53. {netbox_contract-2.2.2 → netbox_contract-2.2.3}/src/netbox_contract/migrations/0036_alter_invoiceline_accounting_dimensions.py +0 -0
  54. {netbox_contract-2.2.2 → netbox_contract-2.2.3}/src/netbox_contract/migrations/__init__.py +0 -0
  55. {netbox_contract-2.2.2 → netbox_contract-2.2.3}/src/netbox_contract/models.py +0 -0
  56. {netbox_contract-2.2.2 → netbox_contract-2.2.3}/src/netbox_contract/navigation.py +0 -0
  57. {netbox_contract-2.2.2 → netbox_contract-2.2.3}/src/netbox_contract/search.py +0 -0
  58. {netbox_contract-2.2.2 → netbox_contract-2.2.3}/src/netbox_contract/tables.py +0 -0
  59. {netbox_contract-2.2.2 → netbox_contract-2.2.3}/src/netbox_contract/template_content.py +0 -0
  60. {netbox_contract-2.2.2 → netbox_contract-2.2.3}/src/netbox_contract/templates/contract_assignments_bottom.html +0 -0
  61. {netbox_contract-2.2.2 → netbox_contract-2.2.3}/src/netbox_contract/templates/contract_list_bottom.html +0 -0
  62. {netbox_contract-2.2.2 → netbox_contract-2.2.3}/src/netbox_contract/templates/netbox_contract/accountingdimension.html +0 -0
  63. {netbox_contract-2.2.2 → netbox_contract-2.2.3}/src/netbox_contract/templates/netbox_contract/contract.html +0 -0
  64. {netbox_contract-2.2.2 → netbox_contract-2.2.3}/src/netbox_contract/templates/netbox_contract/contractassignment.html +0 -0
  65. {netbox_contract-2.2.2 → netbox_contract-2.2.3}/src/netbox_contract/templates/netbox_contract/invoice.html +0 -0
  66. {netbox_contract-2.2.2 → netbox_contract-2.2.3}/src/netbox_contract/templates/netbox_contract/invoiceline.html +0 -0
  67. {netbox_contract-2.2.2 → netbox_contract-2.2.3}/src/netbox_contract/templates/netbox_contract/serviceprovider.html +0 -0
  68. {netbox_contract-2.2.2 → netbox_contract-2.2.3}/src/netbox_contract/urls.py +0 -0
  69. {netbox_contract-2.2.2 → netbox_contract-2.2.3}/src/netbox_contract.egg-info/SOURCES.txt +0 -0
  70. {netbox_contract-2.2.2 → netbox_contract-2.2.3}/src/netbox_contract.egg-info/dependency_links.txt +0 -0
  71. {netbox_contract-2.2.2 → netbox_contract-2.2.3}/src/netbox_contract.egg-info/not-zip-safe +0 -0
  72. {netbox_contract-2.2.2 → netbox_contract-2.2.3}/src/netbox_contract.egg-info/requires.txt +0 -0
  73. {netbox_contract-2.2.2 → netbox_contract-2.2.3}/src/netbox_contract.egg-info/top_level.txt +0 -0
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.1
2
2
  Name: netbox-contract
3
- Version: 2.2.2
3
+ Version: 2.2.3
4
4
  Summary: Contract management plugin for Netbox
5
5
  Author-email: Marc Lebreuil <marc@famillelebreuil.net>
6
6
  Project-URL: Homepage, https://github.com/mlebreuil/netbox-contract
@@ -1,6 +1,6 @@
1
1
  [project]
2
2
  name = "netbox-contract"
3
- version = "2.2.2"
3
+ version = "2.2.3"
4
4
  authors = [
5
5
  { name="Marc Lebreuil", email="marc@famillelebreuil.net" },
6
6
  ]
@@ -5,7 +5,7 @@ class ContractsConfig(PluginConfig):
5
5
  name = 'netbox_contract'
6
6
  verbose_name = 'Netbox contract'
7
7
  description = 'Contract management plugin for Netbox'
8
- version = '2.2.2'
8
+ version = '2.2.3'
9
9
  author = 'Marc Lebreuil'
10
10
  author_email = 'marc@famillelebreuil.net'
11
11
  base_url = 'contracts'
@@ -284,4 +284,4 @@ class AccountingDimensionSerializer(NetBoxModelSerializer):
284
284
  'created',
285
285
  'last_updated',
286
286
  )
287
- brief_fields = ('name', 'value', 'url', 'display')
287
+ brief_fields = ('id', 'name', 'value', 'url', 'display')
@@ -16,6 +16,7 @@ from utilities.forms.fields import (
16
16
  CSVChoiceField,
17
17
  CSVContentTypeField,
18
18
  CSVModelChoiceField,
19
+ CSVModelMultipleChoiceField,
19
20
  DynamicModelChoiceField,
20
21
  DynamicModelMultipleChoiceField,
21
22
  JSONField,
@@ -240,6 +241,10 @@ class ContractBulkEditForm(NetBoxModelBulkEditForm):
240
241
 
241
242
 
242
243
  class InvoiceForm(NetBoxModelForm):
244
+ number = forms.CharField(
245
+ max_length=100,
246
+ help_text='Invoice template name will be overriden to _invoice_template_contract name',
247
+ )
243
248
  contracts = DynamicModelMultipleChoiceField(
244
249
  queryset=Contract.objects.all(), required=False
245
250
  )
@@ -459,7 +464,7 @@ class ContractAssignmentImportForm(NetBoxModelImportForm):
459
464
 
460
465
  class InvoiceLineForm(NetBoxModelForm):
461
466
  invoice = DynamicModelChoiceField(queryset=Invoice.objects.all())
462
- accounting_dimensions = forms.ModelMultipleChoiceField(
467
+ accounting_dimensions = DynamicModelMultipleChoiceField(
463
468
  queryset=AccountingDimension.objects.all(), required=False
464
469
  )
465
470
 
@@ -490,6 +495,9 @@ class InvoiceLineForm(NetBoxModelForm):
490
495
  class InvoiceLineFilterSetForm(NetBoxModelFilterSetForm):
491
496
  model = InvoiceLine
492
497
  invoice = DynamicModelChoiceField(queryset=Invoice.objects.all(), required=False)
498
+ accounting_dimensions = DynamicModelChoiceField(
499
+ queryset=AccountingDimension.objects.all(), required=False
500
+ )
493
501
 
494
502
 
495
503
  class InvoiceLineImportForm(NetBoxModelImportForm):
@@ -498,7 +506,7 @@ class InvoiceLineImportForm(NetBoxModelImportForm):
498
506
  to_field_name='number',
499
507
  help_text='Invoice number',
500
508
  )
501
- accounting_dimensions = CSVModelChoiceField(
509
+ accounting_dimensions = CSVModelMultipleChoiceField(
502
510
  queryset=AccountingDimension.objects.all(),
503
511
  to_field_name='id',
504
512
  help_text='accounting dimension id',
@@ -278,7 +278,7 @@ class InvoiceEditView(generic.ObjectEditView):
278
278
  contract = Contract.objects.get(pk=initial_data['contracts'])
279
279
 
280
280
  try:
281
- last_invoice = contract.invoices.filter(template=False).latest(
281
+ last_invoice = contract.invoices.exclude(template=True).latest(
282
282
  'period_end'
283
283
  )
284
284
  new_period_start = last_invoice.period_end + timedelta(days=1)
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.1
2
2
  Name: netbox-contract
3
- Version: 2.2.2
3
+ Version: 2.2.3
4
4
  Summary: Contract management plugin for Netbox
5
5
  Author-email: Marc Lebreuil <marc@famillelebreuil.net>
6
6
  Project-URL: Homepage, https://github.com/mlebreuil/netbox-contract
File without changes