Commit Graph

85 Commits

Author SHA1 Message Date
cf90f9710c # Geom parcel performance improvement
* refactors parcel calculating, resulting in 1.3-1.6x better performance
* optimizes parcel fetching view
2024-01-17 11:22:21 +01:00
8bcccb4685 # WIP: Performance boost parcel calculation
* improves handling of parcel calculation (speed up by ~30%)
* ToDo: Clean up code
2024-01-16 07:57:29 +01:00
50bd6feb89 # Issue #381
* adds another validity check to SimpleGeomForm (is_size_valid) to make sure the area of the entered geometry is somehow rational (>= 1m²)
* optimizes performance of django command sanitize_db
* extends Geometry model with two new attributes, holding timestamps when a parcel calculation has been started and ended
* finally drops unused update_parcel_wfs in favor of update_parcels in Geometry model
* refactors update_parcel method
* adds geometry buffer fallback in schneider/fetcher.py to avoid emptying of geometries when parcels shall be fetched
* finally removes utils/wfs/spatial.py
* extends GeomParcelsView according to #381
* updates translations
* removes redundant psycopg2-binary requirement
2024-01-09 13:11:04 +01:00
7b3b40f3c9 Mail links
* adds direct object links into mail templates
* refactors transferring app-model identification data from fore- to background (celery) properly
2023-12-11 13:40:32 +01:00
b1e7acc5f4 Municipal calculation to background
* moves municipal names fetching from fore- to background for mail sending
2023-12-11 12:12:19 +01:00
743bb320d7 Object mailing restructred
* restructures object info mail sending
2023-12-11 12:06:33 +01:00
a2389edcc1 Fix for testing 2023-11-21 14:03:38 +01:00
16fd7a3a2c # 349 LANIS link improvements
* replaces 'dumb' link template with LANIS mapinterface support
* adds fallback default LANIS link
2023-10-25 10:04:56 +02:00
9117abd1d8 Unit test user app
* adds unit test for User model and forms
* refactors functions from user_checks.py into User class and drops user_checks.py
2023-09-13 09:49:40 +02:00
d69ea6d7c0 # Unit tests for konova geometry
* adds further unit tests for konova app geometry model
2023-09-12 09:16:10 +02:00
89efc33d75 # Unit test konova app
* adds unit test for konova app models
* drops unused/unnecessary code fragments
* updates translation
2023-09-08 12:47:50 +02:00
7430a239a5 Unit test intervention forms
* adds unit test for new/edit intervention forms
* improves code base for generating new identifiers
2023-08-24 11:47:40 +02:00
02e8d65f02 Unit test EMA model
* adds unit test for EMA model
2023-08-24 10:59:32 +02:00
f22b45b82b # 308 To share info message
* adds needs-to-be-shared info message on entries which are only shared with the current user
2023-03-07 07:17:08 +01:00
b494bee65e # Bugfix
* fixes bug where multipolygon behaved in mapclient as single polygon, making e.g. deleting of single polygons impossible without removing everything
2023-02-23 14:56:49 +01:00
dfa05a98c6 Merge pull request '299_Performance_tweaks' (#302) from 299_Performance_tweaks into master
Reviewed-on: SGD-Nord/konova#302
2023-02-23 10:19:55 +01:00
bf41559c56 #300 Extend mail templates
* extends all relevant mail templates such that municipals of an entry will be shown in the mail
2023-02-23 10:17:45 +01:00
6653269427 # Improve is_shared_with()
* improves central is_shared_with() method of ShareableObjectMixin to run ~30% faster
2023-02-22 09:19:22 +01:00
2d17b9cc65 Merge pull request '#280 Schneider capability' (#281) from 280_Schneider_capability into master
Reviewed-on: SGD-Nord/konova#281
2022-12-22 07:42:39 +01:00
5e48202226 HOTFIX: Migrated revocation
* adds handling for error raising if migrated revocation document missing, due to no existing document at all
2022-12-14 16:36:21 +01:00
c7aa90aa5b #280 Schneider capability
* refactors update_parcels() method in Geometry model to work on Schneider
* old WFS based logic still exists as update_parcels_wfs() in Geometry model to have a fallback. Can be deleted in the future
2022-12-14 12:18:18 +01:00
0b2cf2a0a4 Geometry race condition fix
* fixes race condition for geometry conflict and parcel calculation
* harmonizes empty geometries from None/MultiPolygonEmpty to MultiPolygonEmpty
2022-11-23 13:51:05 +01:00
e06e0e8306 Further fixes
* fixes race condition on geometry conflict calculation if performed in background process
* simplifies access to smaller buffered geometry
* adds mapping of "qm"->"m2" for UnitChoice in API usage for backwards compatibility
2022-11-22 15:38:03 +01:00
14fee4474f #229 Shared users mandatory on admin
* changes mandatory state of users and teams on admin backend to optional (as expected by the model)
* adds team selection to admin backend
2022-11-16 13:27:57 +01:00
e6c0d8b1cf Map client holes fix
* fixes bug where holes in stored geometries would not be rendered properly on initial loading the map client
    * drawback: multiple polygons are treated as a single feature on the map client. Not a real issue but maybe we can find a better solution to this
* quality of life: renders geometry area in m² on detail and report view
2022-10-14 08:02:08 +02:00
6c8227ed17 Map client update
* updates map client to most recent code
* fixes bug on as_feature_collection which led to problems on initial loading in map
2022-10-07 13:56:43 +02:00
c5f8e0c705 Fix geometry conflict message
* fixes bug where geometry conflicts template message has been rendered despite having no active geometry conflict
    * happened in case of existing geometry conflicts related to an as deleted marked entry
2022-09-29 10:29:33 +02:00
9bba982ce5 202 Geometry conflict checking to background
* wraps check_for_conflicts() in celery based method
* fixes bug on InterventionEditForm where geometry's save() has been called twice
2022-09-15 12:12:35 +02:00
a6f7e605e6 Migrations + Cleanup
* adds needed migrations
* refactors forms.py (700+ lines) in main konova app
    * splits into forms/ and forms/modals and single class/topic-files for better maintainability and overview
* fixes bug in main konova app migration which could occur if a certain compensation migration did not run before
2022-08-15 10:50:01 +02:00
8bce8b8e75 Command
* adds new command to be used with cron for periodic checkin of resubmissions
* updates translations
2022-08-15 10:02:07 +02:00
117a4437fe Model
* adds new model and mixin
* adds new functionality for Mailer class for sending resubmission mails
2022-08-15 08:08:15 +02:00
dacfbd0504 Test update
* updates tests for SRID migration
2022-07-13 10:53:45 +02:00
e7031d0bc2 #169 Team delete-restore
* adds restorable delete functionality to Team model
* refactors minor code model parts by introducing DeletableObjectMixin
* only non-deleted Teams can be chosen for sharing
* deleted Teams can be restored using the proper function on the backend admin
* deleted Teams do not provide
* adds migration
2022-05-30 15:38:16 +02:00
1e86a1ce5e #163 Checked icons improvement
* adds a second star icon on currently unchecked but previously checked entries
   --> can be detected easier for another check run
* simplifies some related code parts
* moves some translation string into message_templates.py
* enables session timeout after 60 minutes
* improves comment card layout sizing
* adds/updates translations
2022-05-30 10:26:34 +02:00
4f482595c6 Merge branch 'master' into 138_New_map_client
# Conflicts:
#	konova/models/geometry.py
#	konova/urls.py
#	locale/de/LC_MESSAGES/django.mo
#	locale/de/LC_MESSAGES/django.po
2022-05-25 09:22:15 +02:00
d1dc61cbd7 #160 Parcel number to parcel table
* adds number of all underlying parcels into parcel table
* reworks minor code parts of parcel related logic
* fixes bug where under certain circumstances a parcel would have been added twice to a geometry
* removes unused parcel fetching on intervention detail view
2022-05-11 15:52:29 +02:00
73c61e96f5 #156 Parcel WFS as geojson
* refactors fetching of parcels via wfs from xml to json for easier and faster processing
2022-04-27 12:12:56 +02:00
253b509122 #138 WIP Validity
* adds geometry validity checks for SimpleGeomForm is_valid()
    * shows validity problems on the form if a feature is invalid
* optimizes merging of different features into one MultiPolygon
* further enhances tests
* adds as_feature_collection() method on Geometry model for converting geom MultiPolygon attribute into FeatureCollection json holding each polygon as an own feature -> makes each polygon selectable in new netgis map client
2022-04-20 13:52:52 +02:00
c60afb0391 #138 WIP Improvements
* adds geom back writing to form field in case of invalid geometry, so the invalid geometry will be shown again
* updates tests
* fixes bug where race condition of celery workers could lead to duplicates in parcels (needs migration)
2022-04-20 11:55:03 +02:00
090f6faa4e #140 Block edit on recorded
* adds new modal form content template recorded_no_edit.html
* adds modal content change, such that no data can be edited on any form as long as the entry is recorded -> instead, users are informed on the form, that the recording state prohibits editing
* adds translations
2022-04-19 09:43:36 +02:00
8165540c00 #146 Record-unshare with default
* adds automatic unsharing with default-only users if entry is recorded
2022-04-14 08:37:43 +02:00
60e23d15fc #146 Admins and update_all_parcels.py
* extends admin backend
    * adds found_in_codelists to KonovaCodeAdmin to see where a KonovaCode can be found in
    * improves rendering of after_states and before_states for all AbstractCompensationAdmins
    * adds geometry_id to all major datatype admin backends
    * adds st_area like calculation to geometry admin backend
* update_all_parcels
    * orders geometries by size (small to big) to process smaller geometries first and bigger later
    * adds more output to command for a better overview of what is just going on
2022-04-13 11:42:04 +02:00
1be77e8b22 # 139 Parcel reference improved
* improves frontend layout to display more details on district, municipal and parce group
* improves ordering of parcels
* refactors parcel related models
* improves parcel fetching
* extends and simplifies sanitize_db parcel related code
2022-04-11 10:23:28 +02:00
fe29035158 #101 Team mails
* adds mail templates for shared data actions
* fixes bug where deleted compensations would be used for checking
2022-02-18 15:19:37 +01:00
aa675aa046 #101 Team sharing tests
* adds tests for team sharing
* extends the API for team sharing support
* adds shared_teams property shortcut for ShareableObjectMixin
* adds full support for team-based sharing to all views and functions
* simplifies ShareModalForm
* adds/updates translations
2022-02-18 13:52:27 +01:00
6dac847d22 #101 Team sharing form
* adds team sharing field to share form
* splits sharing logic into user based and teams based
* adds TeamAdmin for admin backend
* adds validity check on Team name -> only unused names shall be valid
2022-02-18 11:02:40 +01:00
e8fae7a6f4 #101 Team settings
* adds first implementation for team managing
2022-02-17 13:13:32 +01:00
9915e6a450 #86 Revocation edit
* adds support for revocation edit
    * revocation document files will be replaced on an edit
2022-02-09 16:02:28 +01:00
591e35a0e2 #86 Parcel-Geometry improvement
* improves the way parcel-geometry relations are stored on the DB
    * instead of a numerical sequence we switched to UUID, so no sequence will run out at anytime (new model: ParcelIntersection)
    * instead of dropping all M2M relations between parcel and geometry on each calculation, we keep the ones that still exist, drop the ones that do not exist and add new ones (if new ones exist)
2022-02-09 09:18:35 +01:00
e3fbe60fce # 86 LANIS link fix
* simplifies creation of LANIS link by refactoring into super class
2022-02-08 17:14:23 +01:00