[fix] naming series refactor patch
This commit is contained in:
parent
24efd19895
commit
a626d967c0
@ -4,6 +4,7 @@
|
|||||||
from __future__ import print_function, unicode_literals
|
from __future__ import print_function, unicode_literals
|
||||||
|
|
||||||
import frappe
|
import frappe
|
||||||
|
from frappe.custom.doctype.property_setter.property_setter import make_property_setter
|
||||||
|
|
||||||
doctype_series_map = {
|
doctype_series_map = {
|
||||||
'Additional Salary': 'HR-ADS-.YY.-.MM.-',
|
'Additional Salary': 'HR-ADS-.YY.-.MM.-',
|
||||||
@ -73,14 +74,27 @@ doctype_series_map = {
|
|||||||
}
|
}
|
||||||
|
|
||||||
def execute():
|
def execute():
|
||||||
|
frappe.db.sql("""
|
||||||
|
update `tabProperty Setter`
|
||||||
|
set name=concat(doc_type, '-', field_name, '-', property)
|
||||||
|
where property='fetch_from'
|
||||||
|
""")
|
||||||
series_to_set = get_series()
|
series_to_set = get_series()
|
||||||
for doctype, opts in series_to_set.items():
|
for doctype, opts in series_to_set.items():
|
||||||
set_series(doctype, opts["options"], opts["default"])
|
set_series(doctype, opts["options"], opts["default"])
|
||||||
|
|
||||||
def set_series(doctype, options, default):
|
def set_series(doctype, options, default):
|
||||||
make_property_setter(doctype, "options", options)
|
def _make_property_setter(property_name, value):
|
||||||
|
property_setter = frappe.db.exists('Property Setter',
|
||||||
|
{'doc_type': doctype, 'field_name': 'naming_series', 'property': property_name})
|
||||||
|
if property_setter:
|
||||||
|
frappe.db.set_value('Property Setter', property_setter, 'value', value)
|
||||||
|
else:
|
||||||
|
make_property_setter(doctype, "naming_series", "options", value, "Text")
|
||||||
|
|
||||||
|
_make_property_setter("options", options)
|
||||||
if default:
|
if default:
|
||||||
make_property_setter(doctype, "default", default)
|
_make_property_setter("default", default)
|
||||||
|
|
||||||
def get_series():
|
def get_series():
|
||||||
series_to_set = {}
|
series_to_set = {}
|
||||||
@ -116,27 +130,3 @@ def get_series_to_preserve(doctype):
|
|||||||
def get_default_series(doctype):
|
def get_default_series(doctype):
|
||||||
default_series = (frappe.get_meta(doctype).get_field("naming_series").default or "")
|
default_series = (frappe.get_meta(doctype).get_field("naming_series").default or "")
|
||||||
return default_series
|
return default_series
|
||||||
|
|
||||||
def make_property_setter(doctype, property_name, value):
|
|
||||||
property_setter = frappe.db.exists('Property Setter',
|
|
||||||
{'doc_type': doctype, 'field_name': 'naming_series', 'property': property_name})
|
|
||||||
if property_setter:
|
|
||||||
frappe.db.set_value('Property Setter', property_setter, 'value', value)
|
|
||||||
else:
|
|
||||||
property_setter = frappe.get_doc({
|
|
||||||
"doctype":"Property Setter",
|
|
||||||
"doctype_or_field": "DocField",
|
|
||||||
"doc_type": doctype,
|
|
||||||
"field_name": 'naming_series',
|
|
||||||
"property": property_name,
|
|
||||||
"value": value,
|
|
||||||
"property_type": "Text"
|
|
||||||
})
|
|
||||||
property_setter.flags.ignore_permissions = True
|
|
||||||
property_setter.flags.validate_fields_for_doctype = True
|
|
||||||
try:
|
|
||||||
property_setter.insert()
|
|
||||||
except frappe.DuplicateEntryError:
|
|
||||||
name = "{0}-{1}-{2}-1".format(doctype, fieldname, property)
|
|
||||||
property_setter.name = name
|
|
||||||
property_setter.insert()
|
|
@ -10,7 +10,6 @@ from frappe import _
|
|||||||
from frappe.model.document import Document
|
from frappe.model.document import Document
|
||||||
from frappe.utils.user import get_user_fullname
|
from frappe.utils.user import get_user_fullname
|
||||||
from frappe.utils import getdate, cstr
|
from frappe.utils import getdate, cstr
|
||||||
from frappe.integrations.doctype.google_maps.google_maps_settings import round_timedelta, format_address
|
|
||||||
|
|
||||||
class DeliveryTrip(Document):
|
class DeliveryTrip(Document):
|
||||||
pass
|
pass
|
||||||
|
Loading…
x
Reference in New Issue
Block a user