Commit Graph
55 Commits
Author SHA1 Message Date
Christophe Simonis 68176d80ad [MERGE] forward port branch saas-14 up to eddefc9948 2017-03-01 16:49:15 +01:00
Denis Vermylen bcc1efac48 [IMP] sale*: improve dashboard computation time
This commit improves crm.team compute methods and adds auto_join on:
payment.transaction: field sale_order_id
sale.order: field order_line

Also move the dashboard_graph_type field in invisible in the kanban view to
avoid triggering the computation of the graph when it's not needed.

DO NOT FORWARD-PORT: a different patch will be made for the master branch
2017-02-10 19:15:35 +01:00
Christophe Simonis a282d4ae7f [MERGE] forward port branch saas-14 up to be9dfb331f 2017-02-10 18:41:06 +01:00
Rohan Patel 3fbaa6c409 [FIX] sale,crm: correct model name, 'sale.config.settings' instead of 'sales.config.settings' 2017-02-07 13:15:23 +01:00
Christophe Simonis fded0065ae [MERGE] forward port branch saas-14 up to 6c4389df41 2017-01-23 14:51:11 +01:00
Denis Vermylen e83a40f38b [FIX] sales_team,*: improve dashboard graph layout
Remove graph title, lower padding, bigger bar charts.

odoo task:
https://www.odoo.com/web#id=30866&view_type=form&model=project.task&menu_id=
2017-01-23 10:55:41 +01:00
Thibault Delavallée eda76ee350 [REF] crm: remove unused field resource calendar on sales team model
It is not used in the code. It is not used as a placeholder or information
field. Thereforelet us remove it.
2017-01-18 10:23:57 +01:00
Fabien Pinckaers b33228cb49 [IMP] *: color index - avoid lots of grey tags on kanban 2017-01-07 23:34:38 -08:00
Denis Vermylen 8509db6485 [IMP] sale,crm: improve sales channel options tooltips 2017-01-04 16:01:10 +01:00
Denis Vermylen (dve) eed8a34686 [IMP] crm_*, sale_*: sales channel dashboard
Functional
        ==========

Sales teams become sales channels. Their dashboard cards now include a graph
displaying customizable data for managers (comparable to those in accounting).

By default, you now have the following sales channels (non-demo):

      Direct Sales      (with installation of crm or sale)

  Sales Channel type: Sales
  Works same as before, what's changed is:
    - their cards display one big button directing to the start of their
      workflow
    - the links on the right-hand side have been reworked, and are only
      displayed when there is at least one item requiring attention.
    - 'More' tab remains unchanged.

      Website           (with installation of website_sale)

  Sales Channel type: Website
  Differences lies in the links displayed in the dashboard card:
    - it displays abandoned carts, awaiting payments and payments to capture
  Default Channel linked to all sales made from the eCommerce.

      Point of Sale     (with installation of sale and point_of_sale
                                              -> auto-installs pos_sale)

  Sales Channel type: Point of Sale
  Linked to pos.configs and their pos.sessions and pos.orders.
    - only links to their linked pos.config dashboard and open sessions
    - can't use opportunities, lead or invoicing and can only display
      pos.order data in the graph.
  Default Channel linked to the default pos.config.

        Technical
        =========

- Add a channel type: sales, pos, website that have different actions/settings
- Add a graphs to the kanban cards in the sales/crm dashboard, configurable in
  the form view in the new dashboard page.
- Rename sales teams to sales channels, rename and add default and demo sales
  channels
- Change dashboard links depending on the channel type and add a related
  computed fields on crm.team
- Rename strings and improve channel form view.
- Leads are now checked by default once activated for 'sales' type channels
- Disable checking "leads" without using "opportunities".
- Hide invoicing and invoicing target depending on channel type.
- Move currency_id to sales_team
2017-01-03 19:04:34 +01:00
Raphael Collet 7543afb070 [IMP] base, *: tighten ir.config_parameter access rights
Add `base.group_system` on existing parameters:
 - `auth_signup.allow_uninvited`,
 - `auth_signup.reset_password`,
 - `auth_signup.template_user_id`,
 - `google_redirect_uri`,
 - `mail.bounce.alias`,
 - `mail.catchall.alias`,
 - `mail.catchall.domain`.
2017-01-03 16:52:49 +01:00
mdi-odoo 33a413eb29 [IMP] sale*: Improve the settings form view 2016-12-30 17:05:08 +01:00
qdp-odoo 4dd27bba34 [REF] base: enhance inheritability
split fields_view_get() and used an abstact mixin class in place of of FormatAddress

[IMP] base: added a m2o field (ir.ui.view) on res.country to decide the layout of the form view to input addresses.
2016-12-28 11:20:47 +01:00
Ravi Gadhia 87e457158e [IMP] crm, website_crm: replace support of activities
crm.lead model now supports activities. Filters have been added to ease
their management. Mail activities replace the old crm.activity model. All code
related to crm.activity is then removed, including views and custom widget.
Standard activities feature is now used widely in Odoo addons and replace
those custom activities.

A small update is required in website_crm_partner_assign. Now the portal user
can only update or create its own activities aka assigned to him. If he has
an activity assigned to him it is displayed in the opportunity website view.
If not editing the opportunity will create a new activity assigned to him.
2016-12-21 10:58:49 +01:00
Christophe Simonis c292202a47 [MERGE] forward port branch 10.0 up to 18456b9 2016-12-09 15:58:39 +01:00
Olivier Dony daff406a22 [FIX] crm: re-introduce fix of b46b0936a8
The new API migration in aa44700dcc
discarded the b46b0936a8 patch,
reintroducing the bug.
2016-12-07 13:00:34 +01:00
Jérome Maes 13f84b9aca [REM] *: remove ir.needaction mixin
ir.needaction_mixin is not used anymore by the webclient.
From 9.0, the concept has changed: this feature is now
available in mail module, with the mail.thread mixin,
and message_neeadction field.

Remove all code handeling needaction bullet and
counter on ir.ui.menu, knowing that since 9.0
webclient does not display the counter anymore.

This code was, thus, useless and some RPC calls
were done for nothing, and adapt accounting
reconcialiation widget.
2016-12-05 11:30:03 +01:00
Christophe Simonis e348330b57 [MERGE] forward port branch 10.0 up to 6a18e31 2016-11-22 17:59:41 +01:00
Jeremy Kersten e94de1484f [FIX] *: make field 'name' from some *.tag model tanslatable 2016-11-22 16:44:25 +01:00
Christophe Simonis e2fcace05e [MERGE] forward port branch 10.0 up to 13dc704 2016-11-17 15:27:29 +01:00
Christophe Simonis dece72d010 [MERGE] forward port branch saas-12 up to ca20038 2016-11-15 13:58:55 +01:00
Jeremy Kersten 6b3b18958d [FIX] crm: merge don't tamper fields constant
Based on odoo/odoo@ec6a6782
This commit fix opw-692280

Override from _merge_data in website_crm_partner_assign add 3 fields to
the list of fields to merge.
Before this commit, 3 fields was added at each merge and so the chatter
become very long with many duplicated field.

Bug introducted by migration new api.
2016-11-14 15:21:02 +01:00
Nicolas Martinelli c544aa298f [FIX] crm: kanban color
Commit 4b2091e8c9 introduces a change in the state color of the kanban
view. However, that doesn't match the description.

opw-693540
2016-11-14 09:14:27 +01:00
dut-odoo 42226de46e [IMP] crm: show lost opportunities to merge with existing opportunities 2016-11-08 11:15:27 +01:00
Rohan Patel 9807547688 [IMP] calendar: add highlighting in dependant modules
Now, calendar event relative to a document (ex:
crm.lead, hr.applicant) are highlighted when
comming from there form view. The mecanism consist
in override the method of the computed field
'is_highlighted'.
2016-11-07 16:08:24 +01:00
Christophe Simonis 8847519621 [MERGE] forward port branch 10.0 up to 0acd63d 2016-10-12 17:10:49 +02:00
dbh 296494aaed [ADD] crm : add website field into lead and opportunity form view for company/customer information 2016-10-12 13:47:05 +02:00
Christophe Simonis 341bea8f88 [MERGE] forward port branch saas-12 up to 43cb4ac 2016-10-10 13:00:05 +02:00
Olivier Dony f9da4970ab [MERGE] Forward-port saas-11 up to eb6b256f99 2016-10-04 01:20:17 +02:00
Thibault Delavallée 458aaca328 [IMP] mail: reimplement grouping of notification recipients
There is now a single method easier to inherit to add specific behavior
for the display of access button as well as actions buttons. All addons
using this mechanism are updated accordingly.
2016-09-23 10:01:41 +02:00
Christophe Simonis 856476d441 [MERGE] forward port branch saas-12 up to b1b700a 2016-09-22 15:23:45 +02:00
Jeremy Kersten 6d8ae0a039 [FIX] crm: fix bug introduced by new api in #aa44700
Before migration:
  'phone': customer and customer.phone or lead.phone,
After migration:
  'phone': customer.phone if customer else self.phone,

So if a customer exists and that it has no phone, the phone
on the lead need to be preserved during convertion in opp.
2016-09-20 12:25:45 +02:00
Martin Trigaux fe0cbf897d [FIX] add missing tag and correct typo
Thanks Transifex reporters
2016-09-19 16:20:30 +02:00
Raphael Collet fa082019a0 [IMP] models: change API of _group_by_full
The dictionary `_group_by_full` is replaced by a field parameter `group_expand`
that is assigned to the method name.  The API of the method has been simplified
as well:

    @api.multi
    def _read_group_stage_ids(self, domain, read_group_order=None, access_rights_uid=None):
        # the stages are given by self.ids (wrong model);
        # read_group_order is the order given to read_group() on self;
        # return stages.name_get(), {stage.id: stage.fold)

    _group_by_full = {'stage_id': _read_group_stage_ids}

is now written:

    stage_id = fields.Many2one(..., group_expand='_read_group_stage_ids')

    @api.model
    def _read_group_stage_ids(self, stages, domain, order):
        # stages is a recordset;
        # order is the order to use on stages' model;
        # return a recordset which is a superset of stages
2016-09-16 17:35:24 +02:00
Martin Trigaux d22676dc07 [FIX] typo 2016-09-07 16:19:39 +02:00
Raphael Collet bf668b64c1 [IMP] all: clean usage of safe_eval
Specifically: do not import `safe_eval` as `eval`, keep it explicit instead.
2016-08-11 15:36:56 +02:00
Jeremy Kersten d8e33e2ced [FIX] crm: remove team_id field from crm_lead_tag model
Now tag are always shared between all saleteams

Courtesy of @antonylesuisse
2016-07-07 17:52:02 +02:00
Jérome Maes 4f48319207 [FIX] crm : activity should not be a default subtype by default
This aims to prevent everybody to follow the activity
subtype. It prevents the default behavior of
mail.message.subtype.
2016-07-04 17:28:06 +02:00
Xavier Morel d9b2f47fb1 [FIX] crm : apparent bug in handle_partner_assignation
Starting from 32fb2f0940 if a lead is
already assigned to a partner instead of returning the already assigned
partner we ignore that, possibly reassign the lead and return either the
new assignment or ``False`` (if not in action=create and no partner_id
was provided).

This seems like an error which passed through and was never noticed as
the method isn't called much and only from wizards.

Either way, revert that. And remove the comment which apparently was
never updated.
2016-07-04 17:28:06 +02:00
Xavier Morel 5b02825194 [FIX] crm : name_get use
In the new API, ``name_get`` doesn't normally lose sort information
anymore: the result of ``search`` (or ``browse(_search)``) is correctly
ordered and ``name_get`` sequentially resolves record names.

Thus the post-facto re-ordering mess should be unnecessary,
``records.name_get()`` will be ordered as ``records`` is.
2016-07-04 17:28:06 +02:00
Xavier Morel 3e2e1d6b90 [IMP] crm : various code cleaning
- try to make better use of recordsets (and recordset APIs)
- remove pointless decorators
- remove redundant ensure_one
- make 'stage_find' a private method returning a recordset
- etc ...
2016-07-04 17:28:06 +02:00
Jérome Maes 4f899f17d4 [IMP] crm : add related fields from subtype to avoid override create method
Using the field inheritance to avoid patching create method. So the
res_model and iternal field are directly related to subtype.
2016-07-04 17:28:05 +02:00
Jérome Maes 1b2ba5707d [IMP] crm : remove try/except from computed fields
Rather adding a group on the view to avoid Access
Error, than adding a try/except catching the
exception for opportunities and mettings count on
partner form view
2016-07-04 17:28:05 +02:00
Jérome Maes 58bd6a848f [IMP] crm : change return values of merge_opportunity method
Since new API works with record, convert the return values from ids
into recordset.
2016-07-04 17:28:05 +02:00
Jérome Maes 1414b3e56e [REF] crm : some code improvements
- remove backward compatibility method `case_mark_won` and `case_mark_lost`
- change signature of `find_stage` method, by setting team_id optional, since
we can get if from `self.team_id`
- remove unused methods in crm_lead.py
- remove unsed code in base_merge_partner.py
- remove unused method in res_partner.py
2016-07-04 17:28:05 +02:00
Ravi Gohil aa44700dcc [MIG] crm : migration to new API
Also adapt code in crm_partner_assign according to migration of crm.lead
2016-07-04 17:28:04 +02:00
Jérome Maes 01886c9990 [FIX] crm, website_crm_partner_assign : fix dependencies due to moved files 2016-07-04 17:28:04 +02:00
Jérome Maes fa7fdc525a [MOV] crm : reoganize module directory and files 2016-07-04 17:28:03 +02:00
qdp-odoo 7a3d63b377 [MERGE] forward port of branch saas-7 up to revision 71d16a369e 2016-03-16 10:27:19 +01:00
Goffin Simon e2b3d50ca9 [FIX] crm: deleting a crm.activity
crm.activity inherits mail.message.subtype with the field subtype_id
Before rendering "chatter.ChatComposer", the internal subtypes are fetched
on model mail.message.subtype(in function "fields_view_get").
But when deleting a crm.activity, the linked mail.message.subtype was not
deleted.

Used case:

When deleting a crm.activity, the activity still appeared in the chatter
if you log an internal note for an opportunity as an employee.

opw:670654
2016-03-14 13:30:21 +01:00