* BREAKING CHANGE: Remove anti-pattern "Project Task" * fix(tests): remove `tasks` from project/test_records.json * fix(tests) * fix(test): test_employee_onboarding.py * fix(tests): test_expense_claim.py * fix(refactor): cleanup project.py validate/update * fix(refactor): cleanup project.py validate/update * fix(test): test_expense_claim * fix(test): test_expense_claim * fix(test): test_expense_claim, try Test Company 4 * Update project.py
		
			
				
	
	
		
			16 lines
		
	
	
		
			720 B
		
	
	
	
		
			Python
		
	
	
	
	
	
			
		
		
	
	
			16 lines
		
	
	
		
			720 B
		
	
	
	
		
			Python
		
	
	
	
	
	
| import frappe
 | |
| 
 | |
| def execute():
 | |
|     frappe.reload_doctype('Task')
 | |
| 
 | |
|     # add "Completed" if customized
 | |
|     for doctype in ('Task'):
 | |
|         property_setter_name = frappe.db.exists('Property Setter', dict(doc_type = doctype, field_name = 'status', property = 'options'))
 | |
|         if property_setter_name:
 | |
|             property_setter = frappe.get_doc('Property Setter', property_setter_name)
 | |
|             if not "Completed" in property_setter.value:
 | |
|                 property_setter.value = property_setter.value + '\nCompleted'
 | |
|                 property_setter.save()
 | |
| 
 | |
|     # renamed default status to Completed as status "Closed" is ambiguous
 | |
|     frappe.db.sql('update tabTask set status = "Completed" where status = "Closed"') |