mirror of
https://github.com/frappe/erpnext.git
synced 2026-05-31 18:59:08 +00:00
refactor: checkbox to toggle always standalone credit note
(cherry picked from commit 2cefe2a20e)
# Conflicts:
# erpnext/accounts/doctype/sales_invoice/sales_invoice.json
# erpnext/accounts/doctype/sales_invoice/sales_invoice.py
This commit is contained in:
@@ -25,6 +25,7 @@
|
|||||||
"is_consolidated",
|
"is_consolidated",
|
||||||
"is_return",
|
"is_return",
|
||||||
"return_against",
|
"return_against",
|
||||||
|
"update_outstanding_for_self",
|
||||||
"update_billed_amount_in_sales_order",
|
"update_billed_amount_in_sales_order",
|
||||||
"update_billed_amount_in_delivery_note",
|
"update_billed_amount_in_delivery_note",
|
||||||
"is_debit_note",
|
"is_debit_note",
|
||||||
@@ -2161,6 +2162,14 @@
|
|||||||
"fieldtype": "Check",
|
"fieldtype": "Check",
|
||||||
"label": "Don't Create Loyalty Points",
|
"label": "Don't Create Loyalty Points",
|
||||||
"no_copy": 1
|
"no_copy": 1
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"default": "1",
|
||||||
|
"depends_on": "eval: doc.is_return && doc.return_against",
|
||||||
|
"description": "Credit Note will update it's own outstanding amount, even if \"Return Against\" is specified.",
|
||||||
|
"fieldname": "update_outstanding_for_self",
|
||||||
|
"fieldtype": "Check",
|
||||||
|
"label": "Update Outstanding for Self"
|
||||||
}
|
}
|
||||||
],
|
],
|
||||||
"icon": "fa fa-file-text",
|
"icon": "fa fa-file-text",
|
||||||
@@ -2173,7 +2182,11 @@
|
|||||||
"link_fieldname": "consolidated_invoice"
|
"link_fieldname": "consolidated_invoice"
|
||||||
}
|
}
|
||||||
],
|
],
|
||||||
|
<<<<<<< HEAD
|
||||||
"modified": "2024-01-02 17:25:46.027523",
|
"modified": "2024-01-02 17:25:46.027523",
|
||||||
|
=======
|
||||||
|
"modified": "2024-03-11 14:20:34.874192",
|
||||||
|
>>>>>>> 2cefe2a20e (refactor: checkbox to toggle always standalone credit note)
|
||||||
"modified_by": "Administrator",
|
"modified_by": "Administrator",
|
||||||
"module": "Accounts",
|
"module": "Accounts",
|
||||||
"name": "Sales Invoice",
|
"name": "Sales Invoice",
|
||||||
|
|||||||
@@ -49,6 +49,194 @@ form_grid_templates = {"items": "templates/form_grid/item_grid.html"}
|
|||||||
|
|
||||||
|
|
||||||
class SalesInvoice(SellingController):
|
class SalesInvoice(SellingController):
|
||||||
|
<<<<<<< HEAD
|
||||||
|
=======
|
||||||
|
# begin: auto-generated types
|
||||||
|
# This code is auto-generated. Do not modify anything in this block.
|
||||||
|
|
||||||
|
from typing import TYPE_CHECKING
|
||||||
|
|
||||||
|
if TYPE_CHECKING:
|
||||||
|
from frappe.types import DF
|
||||||
|
|
||||||
|
from erpnext.accounts.doctype.payment_schedule.payment_schedule import PaymentSchedule
|
||||||
|
from erpnext.accounts.doctype.pricing_rule_detail.pricing_rule_detail import PricingRuleDetail
|
||||||
|
from erpnext.accounts.doctype.sales_invoice_advance.sales_invoice_advance import (
|
||||||
|
SalesInvoiceAdvance,
|
||||||
|
)
|
||||||
|
from erpnext.accounts.doctype.sales_invoice_item.sales_invoice_item import SalesInvoiceItem
|
||||||
|
from erpnext.accounts.doctype.sales_invoice_payment.sales_invoice_payment import (
|
||||||
|
SalesInvoicePayment,
|
||||||
|
)
|
||||||
|
from erpnext.accounts.doctype.sales_invoice_timesheet.sales_invoice_timesheet import (
|
||||||
|
SalesInvoiceTimesheet,
|
||||||
|
)
|
||||||
|
from erpnext.accounts.doctype.sales_taxes_and_charges.sales_taxes_and_charges import (
|
||||||
|
SalesTaxesandCharges,
|
||||||
|
)
|
||||||
|
from erpnext.selling.doctype.sales_team.sales_team import SalesTeam
|
||||||
|
from erpnext.stock.doctype.packed_item.packed_item import PackedItem
|
||||||
|
|
||||||
|
account_for_change_amount: DF.Link | None
|
||||||
|
additional_discount_account: DF.Link | None
|
||||||
|
additional_discount_percentage: DF.Float
|
||||||
|
address_display: DF.SmallText | None
|
||||||
|
advances: DF.Table[SalesInvoiceAdvance]
|
||||||
|
against_income_account: DF.SmallText | None
|
||||||
|
allocate_advances_automatically: DF.Check
|
||||||
|
amended_from: DF.Link | None
|
||||||
|
amount_eligible_for_commission: DF.Currency
|
||||||
|
apply_discount_on: DF.Literal["", "Grand Total", "Net Total"]
|
||||||
|
auto_repeat: DF.Link | None
|
||||||
|
base_change_amount: DF.Currency
|
||||||
|
base_discount_amount: DF.Currency
|
||||||
|
base_grand_total: DF.Currency
|
||||||
|
base_in_words: DF.SmallText | None
|
||||||
|
base_net_total: DF.Currency
|
||||||
|
base_paid_amount: DF.Currency
|
||||||
|
base_rounded_total: DF.Currency
|
||||||
|
base_rounding_adjustment: DF.Currency
|
||||||
|
base_total: DF.Currency
|
||||||
|
base_total_taxes_and_charges: DF.Currency
|
||||||
|
base_write_off_amount: DF.Currency
|
||||||
|
campaign: DF.Link | None
|
||||||
|
cash_bank_account: DF.Link | None
|
||||||
|
change_amount: DF.Currency
|
||||||
|
commission_rate: DF.Float
|
||||||
|
company: DF.Link
|
||||||
|
company_address: DF.Link | None
|
||||||
|
company_address_display: DF.SmallText | None
|
||||||
|
company_tax_id: DF.Data | None
|
||||||
|
contact_display: DF.SmallText | None
|
||||||
|
contact_email: DF.Data | None
|
||||||
|
contact_mobile: DF.SmallText | None
|
||||||
|
contact_person: DF.Link | None
|
||||||
|
conversion_rate: DF.Float
|
||||||
|
cost_center: DF.Link | None
|
||||||
|
currency: DF.Link
|
||||||
|
customer: DF.Link | None
|
||||||
|
customer_address: DF.Link | None
|
||||||
|
customer_group: DF.Link | None
|
||||||
|
customer_name: DF.SmallText | None
|
||||||
|
debit_to: DF.Link
|
||||||
|
disable_rounded_total: DF.Check
|
||||||
|
discount_amount: DF.Currency
|
||||||
|
dispatch_address: DF.SmallText | None
|
||||||
|
dispatch_address_name: DF.Link | None
|
||||||
|
dont_create_loyalty_points: DF.Check
|
||||||
|
due_date: DF.Date | None
|
||||||
|
from_date: DF.Date | None
|
||||||
|
grand_total: DF.Currency
|
||||||
|
group_same_items: DF.Check
|
||||||
|
ignore_default_payment_terms_template: DF.Check
|
||||||
|
ignore_pricing_rule: DF.Check
|
||||||
|
in_words: DF.SmallText | None
|
||||||
|
incoterm: DF.Link | None
|
||||||
|
inter_company_invoice_reference: DF.Link | None
|
||||||
|
is_cash_or_non_trade_discount: DF.Check
|
||||||
|
is_consolidated: DF.Check
|
||||||
|
is_debit_note: DF.Check
|
||||||
|
is_discounted: DF.Check
|
||||||
|
is_internal_customer: DF.Check
|
||||||
|
is_opening: DF.Literal["No", "Yes"]
|
||||||
|
is_pos: DF.Check
|
||||||
|
is_return: DF.Check
|
||||||
|
items: DF.Table[SalesInvoiceItem]
|
||||||
|
language: DF.Data | None
|
||||||
|
letter_head: DF.Link | None
|
||||||
|
loyalty_amount: DF.Currency
|
||||||
|
loyalty_points: DF.Int
|
||||||
|
loyalty_program: DF.Link | None
|
||||||
|
loyalty_redemption_account: DF.Link | None
|
||||||
|
loyalty_redemption_cost_center: DF.Link | None
|
||||||
|
named_place: DF.Data | None
|
||||||
|
naming_series: DF.Literal["ACC-SINV-.YYYY.-", "ACC-SINV-RET-.YYYY.-"]
|
||||||
|
net_total: DF.Currency
|
||||||
|
only_include_allocated_payments: DF.Check
|
||||||
|
other_charges_calculation: DF.LongText | None
|
||||||
|
outstanding_amount: DF.Currency
|
||||||
|
packed_items: DF.Table[PackedItem]
|
||||||
|
paid_amount: DF.Currency
|
||||||
|
party_account_currency: DF.Link | None
|
||||||
|
payment_schedule: DF.Table[PaymentSchedule]
|
||||||
|
payment_terms_template: DF.Link | None
|
||||||
|
payments: DF.Table[SalesInvoicePayment]
|
||||||
|
plc_conversion_rate: DF.Float
|
||||||
|
po_date: DF.Date | None
|
||||||
|
po_no: DF.Data | None
|
||||||
|
pos_profile: DF.Link | None
|
||||||
|
posting_date: DF.Date
|
||||||
|
posting_time: DF.Time | None
|
||||||
|
price_list_currency: DF.Link
|
||||||
|
pricing_rules: DF.Table[PricingRuleDetail]
|
||||||
|
project: DF.Link | None
|
||||||
|
redeem_loyalty_points: DF.Check
|
||||||
|
remarks: DF.SmallText | None
|
||||||
|
repost_required: DF.Check
|
||||||
|
represents_company: DF.Link | None
|
||||||
|
return_against: DF.Link | None
|
||||||
|
rounded_total: DF.Currency
|
||||||
|
rounding_adjustment: DF.Currency
|
||||||
|
sales_partner: DF.Link | None
|
||||||
|
sales_team: DF.Table[SalesTeam]
|
||||||
|
scan_barcode: DF.Data | None
|
||||||
|
select_print_heading: DF.Link | None
|
||||||
|
selling_price_list: DF.Link
|
||||||
|
set_posting_time: DF.Check
|
||||||
|
set_target_warehouse: DF.Link | None
|
||||||
|
set_warehouse: DF.Link | None
|
||||||
|
shipping_address: DF.SmallText | None
|
||||||
|
shipping_address_name: DF.Link | None
|
||||||
|
shipping_rule: DF.Link | None
|
||||||
|
source: DF.Link | None
|
||||||
|
status: DF.Literal[
|
||||||
|
"",
|
||||||
|
"Draft",
|
||||||
|
"Return",
|
||||||
|
"Credit Note Issued",
|
||||||
|
"Submitted",
|
||||||
|
"Paid",
|
||||||
|
"Partly Paid",
|
||||||
|
"Unpaid",
|
||||||
|
"Unpaid and Discounted",
|
||||||
|
"Partly Paid and Discounted",
|
||||||
|
"Overdue and Discounted",
|
||||||
|
"Overdue",
|
||||||
|
"Cancelled",
|
||||||
|
"Internal Transfer",
|
||||||
|
]
|
||||||
|
subscription: DF.Link | None
|
||||||
|
tax_category: DF.Link | None
|
||||||
|
tax_id: DF.Data | None
|
||||||
|
taxes: DF.Table[SalesTaxesandCharges]
|
||||||
|
taxes_and_charges: DF.Link | None
|
||||||
|
tc_name: DF.Link | None
|
||||||
|
terms: DF.TextEditor | None
|
||||||
|
territory: DF.Link | None
|
||||||
|
timesheets: DF.Table[SalesInvoiceTimesheet]
|
||||||
|
title: DF.Data | None
|
||||||
|
to_date: DF.Date | None
|
||||||
|
total: DF.Currency
|
||||||
|
total_advance: DF.Currency
|
||||||
|
total_billing_amount: DF.Currency
|
||||||
|
total_billing_hours: DF.Float
|
||||||
|
total_commission: DF.Currency
|
||||||
|
total_net_weight: DF.Float
|
||||||
|
total_qty: DF.Float
|
||||||
|
total_taxes_and_charges: DF.Currency
|
||||||
|
unrealized_profit_loss_account: DF.Link | None
|
||||||
|
update_billed_amount_in_delivery_note: DF.Check
|
||||||
|
update_billed_amount_in_sales_order: DF.Check
|
||||||
|
update_outstanding_for_self: DF.Check
|
||||||
|
update_stock: DF.Check
|
||||||
|
use_company_roundoff_cost_center: DF.Check
|
||||||
|
write_off_account: DF.Link | None
|
||||||
|
write_off_amount: DF.Currency
|
||||||
|
write_off_cost_center: DF.Link | None
|
||||||
|
write_off_outstanding_amount_automatically: DF.Check
|
||||||
|
# end: auto-generated types
|
||||||
|
|
||||||
|
>>>>>>> 2cefe2a20e (refactor: checkbox to toggle always standalone credit note)
|
||||||
def __init__(self, *args, **kwargs):
|
def __init__(self, *args, **kwargs):
|
||||||
super(SalesInvoice, self).__init__(*args, **kwargs)
|
super(SalesInvoice, self).__init__(*args, **kwargs)
|
||||||
self.status_updater = [
|
self.status_updater = [
|
||||||
@@ -1072,7 +1260,9 @@ class SalesInvoice(SellingController):
|
|||||||
"debit_in_account_currency": base_grand_total
|
"debit_in_account_currency": base_grand_total
|
||||||
if self.party_account_currency == self.company_currency
|
if self.party_account_currency == self.company_currency
|
||||||
else grand_total,
|
else grand_total,
|
||||||
"against_voucher": self.name,
|
"against_voucher": self.name
|
||||||
|
if self.is_return and self.return_against and self.update_outstanding_for_self
|
||||||
|
else self.return_against,
|
||||||
"against_voucher_type": self.doctype,
|
"against_voucher_type": self.doctype,
|
||||||
"cost_center": self.cost_center,
|
"cost_center": self.cost_center,
|
||||||
"project": self.project,
|
"project": self.project,
|
||||||
|
|||||||
Reference in New Issue
Block a user