Draft:Module Partnership management

From Dolibarr ERP CRM Wiki
Jump to navigation Jump to search

(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.