Draft:Module Partnership management
(Draft page, no need to be translated) This is a draft on how the module "Partnership management" can be designed.
This module can be used to receive request by a company to be a preferred partner. Validate, follow and cancel partnership.
Module Partnership management
The module name and path will be "partnership".
The module add a new table llx_partnership
The module also add a new tab "Partnership" on the record of a thirdparty or a member (depending on setup). So a logged user can make a request and see its partnership status from its own thirdparty or member record.
Setup of module
We choose if the partnership is for a 'thirdparty' or for a 'member' (option named PARTNERSHIP_IS_MANAGED_FOR).
New object Partnership table
Properties:
- rowid autoincrement
- fk_soc ID of thirdparty
- fk_member ID of member
- date_partnership_start
- date_partnership_end
- status Partnershio partnership (0=draft, 1=accepted, 2=refused, 9=canceled)
- date_creat
- fk_user_create
- tms
- fk_user_update
- note_private
- note_publice
- reason_decline
Allow extrafields. (For example, for the Dolibarr foundation: "Github user", "Website")
Menus
- Enabling the module will also add menu entries into thirdparty menu (if PARTNERSHIP_IS_MANAGED_FOR = 'thirdparty') or into member menu (if PARTNERSHIP_IS_MANAGED_FOR = 'member'):
- Partnership - List - New
On the member Tab partnership on a member and thirdparty
Show a form (on record thirdparty if PARTNERSHIP_IS_MANAGED_FOR = 'thirdparty') or on record of member (if PARTNERSHIP_IS_MANAGED_FOR = 'member') to request to be a partner if there is no record into table llx_partnership yet.
If there is already a record, show the status and information of membership. On this tab, e should also have a button "Cancel"
= Card partnership
On the page to show a partnership we have a button
- Send email using templates. The module must add 2 templates of email for type 'partnership': On to say partnership is refused, one to say partnership is accepted.
- Accept -> Set to status ACCEPTED.
- Refuse -> Ask a reason and set to status REFUSED and fill the "reason_decline" field.
- Cancel
- Delete
= On the list of partnership
If PARTNERSHIP_IS_MANAGED_FOR = 'member'n add a column on list of partnership to show the date of membership expiration.
Add a mass action "Send email"
Add a mass action "Cancel"
Permissions
- read (Read partnership table)
- create/modify (Create/modify partnership)
- delete (Delete a partnership)
Note
Module and new managed objects must be generated with modulebuilder.