Add Create Inventory form for properties and tax lots#71
Open
nllong wants to merge 1 commit into
Open
Conversation
Port the legacy AngularJS "Create Inventory" form into a standalone
InventoryCreateComponent at /{properties|taxlots}/create.
- Add InventoryService.createInventory() calling POST
/api/v3/{type}/form_create/ with organization_id + optional
related_view_id, plus request/response types.
- Standalone form: access level / instance / cycle selectors, a
column-rows table with Material autocomplete over all columns,
All Canonical / All Extra Data / Reset / Add Column, profile select,
live validation, confirm dialog, success snackbar + navigation.
- Link property lot_number to taxlot jurisdiction_tax_lot_id; POST
primary then related with related_view_id.
- Wire the create route (before :id) and Create Property / Create Tax
Lot nav entries. All user-facing strings via Transloco.
Co-authored-by: Copilot App <223556219+Copilot@users.noreply.github.com>
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Summary
Ports the legacy AngularJS "Create Inventory" form (create a Property or Tax Lot, optionally linking a related record) into a standalone
InventoryCreateComponentat/{properties|taxlots}/create. Frontend-only — it calls the backendform_createendpoints that already exist inSEED-platform/seed.Changes
InventoryService.createInventory()—POST /api/v3/${type}/form_create/withorganization_id+ optionalrelated_view_id; centralizedErrorServicehandling. NewInventoryFormCreateState/Data+FormCreateResponsetypes.InventoryCreateComponent(standalone) — access level / level instance / cycle selectors; a column-rows table with Material autocomplete over all columns; All Canonical Fields / All Extra Data Fields / Reset / Add Column; column list profile select; live validation (cycle + ALI required, no duplicate display names, ≥1 matching-criteria value per present table); unknown typed names becomeextra_datastring columns.POSTprimary and (if the related record has data)POSTthe related withrelated_view_id. Propertylot_numberis linked to taxlotjurisdiction_tax_lot_id.createroute registered before:id; "Create Property" and "Create Tax Lot" navigation entries.public/i18n/en_US.json.Design note
The legacy post-save "success modal that offers to view the record" is replaced with a success snackbar + automatic navigation to
/{type}/{view_id}(idiomatic SPA). The pre-save confirm dialog is kept. Anullview_id(duplicate/merge) shows an info snackbar and does not navigate.Backend dependency
Requires the
form_createendpoints from SEED-platform/seed#4918 (branch4846-create-property-form). To test, run a backend on that branch and point the dev proxy at it viaSEED_HOSTin.env.Verification
pnpm lint(eslint + prettier + stylelint) andpnpm buildpass.