fix: Set Address via JS and Py files (for API usecases)
This commit is contained in:
		
							parent
							
								
									c32113918e
								
							
						
					
					
						commit
						47852803f0
					
				| @ -140,6 +140,9 @@ frappe.ui.form.on("Dunning", { | |||||||
| 			frm.trigger("conversion_rate"); | 			frm.trigger("conversion_rate"); | ||||||
| 		} | 		} | ||||||
| 	}, | 	}, | ||||||
|  | 	customer: (frm) => { | ||||||
|  | 		erpnext.utils.get_party_details(frm); | ||||||
|  | 	}, | ||||||
| 	conversion_rate: function (frm) { | 	conversion_rate: function (frm) { | ||||||
| 		if (frm.doc.currency === erpnext.get_currency(frm.doc.company)) { | 		if (frm.doc.currency === erpnext.get_currency(frm.doc.company)) { | ||||||
| 			frm.set_value("conversion_rate", 1.0); | 			frm.set_value("conversion_rate", 1.0); | ||||||
|  | |||||||
| @ -11,12 +11,11 @@ | |||||||
| 
 | 
 | ||||||
| 		-> Resolves dunning automatically | 		-> Resolves dunning automatically | ||||||
| """ | """ | ||||||
| from __future__ import unicode_literals |  | ||||||
| 
 |  | ||||||
| import json | import json | ||||||
| 
 | 
 | ||||||
| import frappe | import frappe | ||||||
| from frappe import _ | from frappe import _ | ||||||
|  | from frappe.contacts.doctype.address.address import get_address_display | ||||||
| from frappe.utils import getdate | from frappe.utils import getdate | ||||||
| 
 | 
 | ||||||
| from erpnext.controllers.accounts_controller import AccountsController | from erpnext.controllers.accounts_controller import AccountsController | ||||||
| @ -27,6 +26,7 @@ class Dunning(AccountsController): | |||||||
| 		self.validate_same_currency() | 		self.validate_same_currency() | ||||||
| 		self.validate_overdue_payments() | 		self.validate_overdue_payments() | ||||||
| 		self.validate_totals() | 		self.validate_totals() | ||||||
|  | 		self.set_party_details() | ||||||
| 		self.set_dunning_level() | 		self.set_dunning_level() | ||||||
| 
 | 
 | ||||||
| 	def validate_same_currency(self): | 	def validate_same_currency(self): | ||||||
| @ -56,6 +56,31 @@ class Dunning(AccountsController): | |||||||
| 		self.base_dunning_amount = self.dunning_amount * self.conversion_rate | 		self.base_dunning_amount = self.dunning_amount * self.conversion_rate | ||||||
| 		self.grand_total = self.total_outstanding + self.dunning_amount | 		self.grand_total = self.total_outstanding + self.dunning_amount | ||||||
| 
 | 
 | ||||||
|  | 	def set_party_details(self): | ||||||
|  | 		from erpnext.accounts.party import _get_party_details | ||||||
|  | 
 | ||||||
|  | 		party_details = _get_party_details( | ||||||
|  | 			self.customer, | ||||||
|  | 			ignore_permissions=self.flags.ignore_permissions, | ||||||
|  | 			doctype=self.doctype, | ||||||
|  | 			company=self.company, | ||||||
|  | 			posting_date=self.get("posting_date"), | ||||||
|  | 			fetch_payment_terms_template=False, | ||||||
|  | 			party_address=self.customer_address, | ||||||
|  | 			company_address=self.get("company_address"), | ||||||
|  | 		) | ||||||
|  | 		for field in [ | ||||||
|  | 			"customer_address", | ||||||
|  | 			"address_display", | ||||||
|  | 			"company_address", | ||||||
|  | 			"contact_person", | ||||||
|  | 			"contact_display", | ||||||
|  | 			"contact_mobile", | ||||||
|  | 		]: | ||||||
|  | 			self.set(field, party_details.get(field)) | ||||||
|  | 
 | ||||||
|  | 		self.set("company_address_display", get_address_display(self.company_address)) | ||||||
|  | 
 | ||||||
| 	def set_dunning_level(self): | 	def set_dunning_level(self): | ||||||
| 		for row in self.overdue_payments: | 		for row in self.overdue_payments: | ||||||
| 			past_dunnings = frappe.get_all( | 			past_dunnings = frappe.get_all( | ||||||
|  | |||||||
		Loading…
	
	
			
			x
			
			
		
	
		Reference in New Issue
	
	Block a user