[buying controller] [fix] use discount_rate instead of discount
diff --git a/controllers/buying_controller.py b/controllers/buying_controller.py
index 9e181bc..4802140 100644
--- a/controllers/buying_controller.py
+++ b/controllers/buying_controller.py
@@ -140,31 +140,28 @@
item.fields[base_field] = flt((flt(item.fields[print_field],
self.precision.item[print_field]) * self.doc.conversion_rate),
self.precision.item[base_field])
-
- for item in self.item_doclist:
- round_floats_in_doc(item, self.precision.item)
+
+ # hack! - cleaned up in _cleanup()
+ if self.doc.doctype != "Purchase Invoice":
+ self.precision.item["rate"] = self.precision.item.purchase_rate
+ for item in self.item_doclist:
# hack! - cleaned up in _cleanup()
if self.doc.doctype != "Purchase Invoice":
item.rate = item.purchase_rate
- self.precision.item.rate = self.precision.item.purchase_rate
- item.discount = item.discount_rate
- self.precision.item.discount = self.precision.item.discount_rate
+ round_floats_in_doc(item, self.precision.item)
- if item.discount == 100:
- if not item.import_ref_rate:
- item.import_ref_rate = item.import_rate
+ if item.discount_rate == 100:
+ item.import_ref_rate = item.import_ref_rate or item.import_rate
item.import_rate = 0
else:
if item.import_ref_rate:
- item.import_rate = flt(item.import_ref_rate *
- (1.0 - (item.discount_rate / 100.0)),
+ item.import_rate = flt(item.import_ref_rate * (1.0 - (item.discount_rate / 100.0)),
self.precision.item.import_rate)
else:
- # assume that print rate and discount are specified
- item.import_ref_rate = flt(item.import_rate /
- (1.0 - (item.discount_rate / 100.0)),
+ # assume that print rate and discount_rate are specified
+ item.import_ref_rate = flt(item.import_rate / (1.0 - (item.discount_rate / 100.0)),
self.precision.item.import_ref_rate)
item.import_amount = flt(item.import_rate * item.qty,
@@ -297,9 +294,6 @@
item.purchase_rate = item.rate
del item.fields["rate"]
- item.discount_rate = item.discount
- del item.fields["discount"]
-
def validate_on_previous_row(self, tax):
"""
validate if a valid row id is mentioned in case of