• Sebastien Robin's avatar
    simulation: remove concept of mirror movement (continue) · e8524a08
    Sebastien Robin authored
    Remove broken concept of Mapping Properties that was used on legacy
    simulation. We do not want to use this concept any more, any mapping
    should be done by rule themself. Removing mapping properties leads
    to more generic concepts and much simpler code.
    
    With legacy simulation, in case of returned sale packing list
    (in case we want to invoice in same sale invoice usual sale packing
    list and returned sale packing list) :
    AR (delivering_rule):
      -> SM (source/A, destination/B)
        -> AR (invoicing_rule, having mapped_property mapping
               source to destination and vice versa)
          -> SM (source/A, destination/B) builders and solvers
             where doing sm.getMappedProperty('source') which was equivalent
             to sm.getProperty('destination'), thus the mapping was done
             in live time
    
    Now in such case, we should implement mapping directly at rule level,
    and this should give:
    AR (delivering_rule):
      -> SM (source/A, destination/B)
        -> AR (invoicing_rule, reversing source and destination)
          -> SM (source/B, destination/A) here we directly have properties
             we wish, no need of hacks on builders and solvers
    e8524a08
MovementGroup.py 20.4 KB