[FIX]crm: leads/opps merge order, was not the same as before the state removal from...
authorDenis Ledoux <dle@openerp.com>
Wed, 16 Oct 2013 14:48:49 +0000 (16:48 +0200)
committerDenis Ledoux <dle@openerp.com>
Wed, 16 Oct 2013 14:48:49 +0000 (16:48 +0200)
bzr revid: dle@openerp.com-20131016144849-yueclv7xqmk806nz

addons/crm/crm_lead.py

index 9c7908a..a4350e5 100644 (file)
@@ -611,10 +611,12 @@ class crm_lead(format_address, osv.osv):
 
         opportunities = self.browse(cr, uid, ids, context=context)
         sequenced_opps = []
+        # Sorting the leads/opps according to the confidence level of its stage, which relates to the probability of winning it
+        # The confidence level increases with the stage sequence, except when the stage probability is 0.0 (Lost cases)
+        # An Opportunity always has higher confidence level than a lead, unless its stage probability is 0.0
         for opportunity in opportunities:
             sequence = -1
-            # TDE: was "if opportunity.stage_id and opportunity.stage_id.state != 'cancel':"
-            if opportunity.probability == 0 and opportunity.stage_id and opportunity.stage_id.sequence != 1 and opportunity.stage_id.fold:
+            if opportunity.stage_id and opportunity.stage_id.probability != 0 and opportunity.stage_id.sequence != 1:
                 sequence = opportunity.stage_id.sequence
             sequenced_opps.append(((int(sequence != -1 and opportunity.type == 'opportunity'), sequence, -opportunity.id), opportunity))