def _create_payments(self, station): nfe_payments = list(self.payments) # FIXME: receive from frontend method = PaymentMethod.get_by_name(store=self.store, name=u"bill") # FIXME: Select method in frontend and add option to split the payment # in more than one duplicate identifier = Payment.get_temporary_identifier(self.store) if not nfe_payments: payment = method.create_payment( branch=self.purchase_order.branch, station=station, payment_type=Payment.TYPE_OUT, payment_group=self.purchase_order.group, value=self.purchase_order.purchase_total, identifier=identifier) payment.status = u'paid' return payment payments = [] for i, item in enumerate(nfe_payments, start=1): identifier = Payment.get_temporary_identifier(self.store) payment = Payment(store=self.store, branch=self.purchase_order.branch, identifier=identifier, value=item.value, base_value=item.value, due_date=item.due_date, status=Payment.STATUS_PAID, group=self.purchase_order.group, method=method, bill_received=True, payment_type=Payment.TYPE_OUT, station=station) payment.description = method.describe_payment( payment.group, i, len(list(nfe_payments))) item.description = payment.description self.purchase_order.group.add_item(payment) payments.append(payment) return payments