Project

General

Profile

Actions

Task #138

closed

Organization type

Added by Ondřej Kopr over 7 years ago. Updated over 7 years ago.

Status:
Closed
Priority:
Normal
Assignee:
Ondřej Kopr
Category:
Frontend
Target version:
Start date:
09/08/2016
Due date:
% Done:

100%

Estimated time:
Owner:

Description

BE:
  • New table for organization types
  • More roots
  • One organization in more organization types?
  • End points - service, repository
FE:
  • Agenda, Create, Edit, Show (table)
  • Organization tree by types - more tree found good looking solutions.
Actions #1

Updated by Ondřej Kopr over 7 years ago

Update ER diagram:
  • Add new table TreeType with connection to TreNode (renamed table Organization). Connection type 1:M
Actions #2

Updated by Ondřej Kopr over 7 years ago

BE:
  • Create change script: 'V1_00_004__tree-node-type-create.sql'
  • Add new entity 'TreeType' and repository for this entity 'TreeTypeRepository'.
  • Add new rest end point: 'api/treetypes'
  • Rename end point 'organization' to 'treenodes'
  • Change demo data
  • Test via SoapUi
Actions #3

Updated by Ondřej Kopr over 7 years ago

  • % Done changed from 0 to 30
Actions #4

Updated by Ondřej Kopr over 7 years ago

  • % Done changed from 30 to 50
FE:
  • organization rename to Node
  • Add new agenda TreeType with: table, detail
  • New dynamic tab in main menu
BE:
  • Add new privileges 'TREETYPE'. Original privilege 'ORGANIZATION' renamed to 'TREENODE'

for node and type are these paths: 'tree/nodes' and 'tree/types'

Actions #5

Updated by Ondřej Kopr over 7 years ago

  • % Done changed from 50 to 60
FE:
  • Czech localization is finished
  • Component SelectBox was updated with property clearable
  • Add dynamic change when pick some type
BE:
  • Add new endpoint roots for IdmTreeNode
  • Connect excerpt for IdmTreeType
Actions #6

Updated by Ondřej Kopr over 7 years ago

  • Status changed from New to In Progress
  • % Done changed from 60 to 80
BE:
  • To handler (beforeCreate and beforeSave) add check to type
  • new TESTS:
  • to create and update Nodes and Types with different privileges
  • to create two roots in same type
  • to change type
  • change parent to node children
  • Fix tests: testRevisionDetail, testCheckModifier, testCreateRole, testOrganizationControler, testChangeName. Missing type of nodes.
FE:
  • Update required field parent on node detail.
Change script:
  • Update audit tables
  • Init data was moved to app init.
  • Create default type in change script and assigned to all nodes
  • Test step:
  1. Drop database
  2. Checkout master (older version of db)
  3. Start server with flyway (script: V1_00_003__beryl.sql)
  4. Create some record in agenda Organization
  5. Stop server
  6. Checkout newer version (my branch)
  7. Start server (script: V1_00_004__tree-node-type-create.sql)
  8. OK (can create nodes and old nodes (organization) are consistent)

Feedback:
Solution of task #138 is in branch okopr/#138-tree-type-and-nodes. Branch isnt merge to master.
Please check design, review code and run test. Report me any error and problem you found. Thank you.

Actions #7

Updated by Ondřej Kopr over 7 years ago

  • Status changed from In Progress to Needs feedback
  • Assignee changed from Ondřej Kopr to Radek Tomiška
Actions #8

Updated by Ondřej Kopr over 7 years ago

FE:
  • Fix filter search by parent (node agenda)
  • Fix form NodeDetail, SelectBox parent
Actions #9

Updated by Radek Tomiška over 7 years ago

  • Status changed from Needs feedback to In Progress
  • Assignee changed from Radek Tomiška to Ondřej Kopr

I did test and code review:
- change script is nice and works perfectly - maybe we can add not null contraint on tree_type_id column, after filling default value.
- BE - tree type handler for security measures has to be added
- BE - i've merged current master to your branch - if you want , then you can make refactoring to new service structure for node types a nodes controllers
- BE: bug in "organizationRepository.findOneByParentIsNull()" method in init application and int demo data - when i run application twice, then error "javax.persistence.NonUniqueResultException: result returns more than one elements" occurs. I suppose we can have more roots now. "organizationRepository" has to be renamed to (it not exists now :)).
- BE - on delete node with some reference (e.g. from working position), then fk contraint occurs - is ok, but some nicer message will be better (the same when type is deleted etc.).
- FE - when tree node type is chosen, then error with "TypeError: loadedRoot is null"
- FE - when type does not contain a node, then loading is still shown
- FE - little redesign is needed - same padding everywhere, double border
- FE - [history] pushState is deprecated; use push instead

Actions #10

Updated by Ondřej Kopr over 7 years ago

BE:
  • Add contraint NOT NULL to column tree_type_id column. (End change script)
  • Add handler IdmTreeTypeEventHandler with security, UPDATE: remove this handler and implement as service
  • Method findOneByParentIsNull was deleted and refactor. Method was replaced with existing method findRoots(null).
  • Error messages been located.
  • IdmTreeTypeService interface and impl. was created
  • IdmTreeNodeService interface and impl. was created
  • IdmTreeNodeController was updated
  • IdmTreeTypeController was added
FE:
(update FE by install steps)
  • merge master into my branch and resolve conflict
  • Add localization
Actions #11

Updated by Ondřej Kopr over 7 years ago

BE:
  • Clean code
  • Add new filter - TreeNodeFilter - used in quick search
  • Change endpoints treenodes and treetypes to tree/nodes and tree/types
FE:
  • Fix error with "TypeError: loadedRoot is null"
  • Fix showLoading
  • Change pushState to push
  • (pending)Redesign node agenda
Actions #12

Updated by Ondřej Kopr over 7 years ago

  • Status changed from In Progress to Needs feedback
  • Assignee changed from Ondřej Kopr to Radek Tomiška
  • % Done changed from 80 to 90
FE:
  • fix reloading filters on nodes agenda
  • change icons
  • redesign node agenda
  • Add new endpoints to node a type service
BE:
  • Finish with merge
  • Rename endpoints
Feedback:
  • My branch was merged to master
  • Please do review and test changes
  • report me problems
  • thank you
Actions #13

Updated by Radek Tomiška over 7 years ago

  • Status changed from Needs feedback to In Progress
  • Assignee changed from Radek Tomiška to Ondřej Kopr
I've made code review, redesign and refactoring:
  • Panels were moved to details
  • Type in url was removed for existing entity
  • better showloading for nodes list
  • redesign
  • ...
Remaining issues:
  • Filter on node types list doesn't work
  • After your last merge - my redesign changes no NodeTable was lost, please restore them
  • Integration tests don't work
Actions #14

Updated by Ondřej Kopr over 7 years ago

  • Status changed from In Progress to Needs feedback
  • Assignee changed from Ondřej Kopr to Radek Tomiška
  • Filter was fixed
  • Test was repaired
  • Your redesign was bad merged. Now it is fix.
Actions #15

Updated by Radek Tomiška over 7 years ago

  • Category set to Frontend
  • Status changed from Needs feedback to Closed
  • Assignee changed from Radek Tomiška to Ondřej Kopr
  • Target version set to Beryl
  • % Done changed from 90 to 100

It works smoothly now, super.

Actions

Also available in: Atom PDF