Skip to content

Design cloud native supporting API #19

@steveoh

Description

@steveoh

The mapping application requires CRUD operations to support the mapping functionality.

The parent application supplies a key and token to authorize the request. Consider proxying our solution through apigee to handle WRI auth.

Tasks

GET project/{id}

  • Supports the informational request that provides all of the data to populate the project information pane
  • Default project information
  • Spatial features with attributes
  • if editing is allowed by the requester

GET supporting/filters

  • Provides the data for pick lists and options from lookup tables
  • Project status values
  • Feature type values

GET supporting/editing

  • Provides the data to create pick lists for creating new features
  • Point and Line actions
  • Herbicide treatments
  • Feature attributes

GET project/{id}/{featureId}

  • Provide the data to show specific feature data when selected
  • county
  • sage grouse
  • land ownership
  • stream

POST project/{id}/create

  • Support creating new features
  • The project must exist
  • The project must not be cancelled or completed unless the user is an admin
  • The project must allow features unless the user is an admin
  • The user must not be anonymous or public
  • The user must be a project manager, contributor, or admin
  • The input geometry must be valid
  • The input geometry must not overlap features of the same type
  • The spatial intersections must be calculated for the feature
  • The project spatial intersections must be updated
  • The project centroid must be updated

PUT project/{id}

  • Support modifying existing features
  • The project must exist
  • The project must not be cancelled or completed unless the user is an admin
  • The project must allow features unless the user is an admin
  • The user must not be anonymous or public
  • The user must be a project manager, contributor, or admin
  • The input geometry must be valid
  • The input geometry must not overlap features of the same type
  • The spatial intersections must be calculated for the feature
  • The project spatial intersections must be updated
  • The project centroid must be updated

DELETE project/{id}

  • Support deleting existing features
  • The project must exist
  • The project must not be cancelled or completed unless the user is an admin
  • The project must allow features unless the user is an admin
  • The user must not be anonymous or public
  • The user must be a project manager, contributor, or admin
  • The input geometry must be valid
  • The input geometry must not overlap features of the same type
  • The spatial intersections must be calculated for the feature
  • The project spatial intersections must be updated
  • The project centroid must be updated

Metadata

Metadata

Assignees

No one assigned

    Labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions