|
@@ -390,12 +390,12 @@ def parse_lieferservice(msg):
|
|
raise Exception('no lieferservice.at confirmation')
|
|
raise Exception('no lieferservice.at confirmation')
|
|
|
|
|
|
order_match = re.search(
|
|
order_match = re.search(
|
|
- ur'Your order \(.+\) at (?P<restaurant>.*)\s+'
|
|
+ ur'(Your order|Ihre Bestellung) \(.+\) (at|bei) (?P<restaurant>.*)\s+'
|
|
- + ur'Your order reference is: (?P<order_id>.*)\s+'
|
|
+ + ur'(Your order reference is|Ihre Bestellnummer lautet): (?P<order_id>.*)\s+'
|
|
+ ur'[\W\w]+'
|
|
+ ur'[\W\w]+'
|
|
- + ur'Your order\s+'
|
|
+ + ur'(Your order|Ihre Bestellung)\s+'
|
|
+ ur'(?P<orders_text>[\W\w]+)'
|
|
+ ur'(?P<orders_text>[\W\w]+)'
|
|
- + ur'Delivery costs:\s+(?P<delivery_costs>.*)\s+',
|
|
+ + ur'(Delivery costs|Lieferung):\s+(?P<delivery_costs>.*)\s+',
|
|
text,
|
|
text,
|
|
re.UNICODE,
|
|
re.UNICODE,
|
|
)
|
|
)
|
|
@@ -414,6 +414,8 @@ def parse_lieferservice(msg):
|
|
order_date
|
|
order_date
|
|
)
|
|
)
|
|
|
|
|
|
|
|
+ restaurant = order_match_groups['restaurant'].strip('"')
|
|
|
|
+
|
|
for article_match in re.finditer(
|
|
for article_match in re.finditer(
|
|
ur'(?P<quantity>\d+)x\s'
|
|
ur'(?P<quantity>\d+)x\s'
|
|
+ ur'(?P<name>.*)\s'
|
|
+ ur'(?P<name>.*)\s'
|
|
@@ -440,12 +442,12 @@ def parse_lieferservice(msg):
|
|
name = name,
|
|
name = name,
|
|
quantity = 1,
|
|
quantity = 1,
|
|
price_brutto = price,
|
|
price_brutto = price,
|
|
- reseller = order_match_groups['restaurant'],
|
|
+ reseller = restaurant,
|
|
- shipper = order_match_groups['restaurant'],
|
|
+ shipper = restaurant,
|
|
))
|
|
))
|
|
|
|
|
|
delivery_costs = order_match_groups['delivery_costs'].strip()
|
|
delivery_costs = order_match_groups['delivery_costs'].strip()
|
|
- assert delivery_costs == 'FREE'
|
|
+ assert delivery_costs in ['FREE', 'GRATIS']
|
|
order.items.append(dingguo.Item(
|
|
order.items.append(dingguo.Item(
|
|
name = u'Delivery',
|
|
name = u'Delivery',
|
|
price_brutto = dingguo.Sum(float('0'.replace(',', '.')), u'EUR'),
|
|
price_brutto = dingguo.Sum(float('0'.replace(',', '.')), u'EUR'),
|