Tyler Matteson | 53a6492 | 2019-01-17 14:04:01 -0500 | [diff] [blame] | 1 | # Copyright (c) 2018, Frappe Technologies Pvt. Ltd. and Contributors |
| 2 | # License: GNU General Public License v3. See license.txt |
| 3 | |
Tyler Matteson | 53a6492 | 2019-01-17 14:04:01 -0500 | [diff] [blame] | 4 | import frappe |
| 5 | from frappe.custom.doctype.custom_field.custom_field import create_custom_fields |
| 6 | |
Ankush Menat | 494bd9e | 2022-03-28 18:52:46 +0530 | [diff] [blame] | 7 | |
Tyler Matteson | 53a6492 | 2019-01-17 14:04:01 -0500 | [diff] [blame] | 8 | def setup(company=None, patch=True): |
Subin Tom | 7004944 | 2021-08-31 18:33:16 +0530 | [diff] [blame] | 9 | # Company independent fixtures should be called only once at the first company setup |
Ankush Menat | 494bd9e | 2022-03-28 18:52:46 +0530 | [diff] [blame] | 10 | if frappe.db.count("Company", {"country": "United States"}) <= 1: |
Subin Tom | 7004944 | 2021-08-31 18:33:16 +0530 | [diff] [blame] | 11 | setup_company_independent_fixtures(patch=patch) |
| 12 | |
Ankush Menat | 494bd9e | 2022-03-28 18:52:46 +0530 | [diff] [blame] | 13 | |
Subin Tom | 7004944 | 2021-08-31 18:33:16 +0530 | [diff] [blame] | 14 | def setup_company_independent_fixtures(company=None, patch=True): |
Tyler Matteson | 53a6492 | 2019-01-17 14:04:01 -0500 | [diff] [blame] | 15 | make_custom_fields() |
| 16 | add_print_formats() |
Tyler Matteson | 53a6492 | 2019-01-17 14:04:01 -0500 | [diff] [blame] | 17 | |
Ankush Menat | 494bd9e | 2022-03-28 18:52:46 +0530 | [diff] [blame] | 18 | |
Deepesh Garg | 9df4532 | 2020-06-11 21:33:43 +0530 | [diff] [blame] | 19 | def make_custom_fields(update=True): |
Tyler Matteson | 53a6492 | 2019-01-17 14:04:01 -0500 | [diff] [blame] | 20 | custom_fields = { |
Ankush Menat | 494bd9e | 2022-03-28 18:52:46 +0530 | [diff] [blame] | 21 | "Supplier": [ |
| 22 | dict( |
| 23 | fieldname="irs_1099", |
| 24 | fieldtype="Check", |
| 25 | insert_after="tax_id", |
| 26 | label="Is IRS 1099 reporting required for supplier?", |
| 27 | ) |
vishdha | d3ec1c1 | 2020-03-24 11:31:41 +0530 | [diff] [blame] | 28 | ], |
Ankush Menat | 494bd9e | 2022-03-28 18:52:46 +0530 | [diff] [blame] | 29 | "Sales Order": [ |
| 30 | dict( |
| 31 | fieldname="exempt_from_sales_tax", |
| 32 | fieldtype="Check", |
| 33 | insert_after="taxes_and_charges", |
| 34 | label="Is customer exempted from sales tax?", |
| 35 | ) |
vishdha | d3ec1c1 | 2020-03-24 11:31:41 +0530 | [diff] [blame] | 36 | ], |
Ankush Menat | 494bd9e | 2022-03-28 18:52:46 +0530 | [diff] [blame] | 37 | "Sales Invoice": [ |
| 38 | dict( |
| 39 | fieldname="exempt_from_sales_tax", |
| 40 | fieldtype="Check", |
| 41 | insert_after="taxes_section", |
| 42 | label="Is customer exempted from sales tax?", |
| 43 | ) |
vishdha | d3ec1c1 | 2020-03-24 11:31:41 +0530 | [diff] [blame] | 44 | ], |
Ankush Menat | 494bd9e | 2022-03-28 18:52:46 +0530 | [diff] [blame] | 45 | "Customer": [ |
| 46 | dict( |
| 47 | fieldname="exempt_from_sales_tax", |
| 48 | fieldtype="Check", |
Nabin Hait | fb7ee30 | 2022-11-09 17:50:36 +0530 | [diff] [blame] | 49 | insert_after="dn_required", |
Ankush Menat | 494bd9e | 2022-03-28 18:52:46 +0530 | [diff] [blame] | 50 | label="Is customer exempted from sales tax?", |
| 51 | ) |
vishdha | d3ec1c1 | 2020-03-24 11:31:41 +0530 | [diff] [blame] | 52 | ], |
Ankush Menat | 494bd9e | 2022-03-28 18:52:46 +0530 | [diff] [blame] | 53 | "Quotation": [ |
| 54 | dict( |
| 55 | fieldname="exempt_from_sales_tax", |
| 56 | fieldtype="Check", |
| 57 | insert_after="taxes_and_charges", |
| 58 | label="Is customer exempted from sales tax?", |
| 59 | ) |
| 60 | ], |
Tyler Matteson | 53a6492 | 2019-01-17 14:04:01 -0500 | [diff] [blame] | 61 | } |
Deepesh Garg | 9df4532 | 2020-06-11 21:33:43 +0530 | [diff] [blame] | 62 | create_custom_fields(custom_fields, update=update) |
Tyler Matteson | 53a6492 | 2019-01-17 14:04:01 -0500 | [diff] [blame] | 63 | |
Ankush Menat | 494bd9e | 2022-03-28 18:52:46 +0530 | [diff] [blame] | 64 | |
Tyler Matteson | 53a6492 | 2019-01-17 14:04:01 -0500 | [diff] [blame] | 65 | def add_print_formats(): |
| 66 | frappe.reload_doc("regional", "print_format", "irs_1099_form") |
barredterra | 1521b31 | 2021-03-03 12:33:48 +0100 | [diff] [blame] | 67 | frappe.db.set_value("Print Format", "IRS 1099 Form", "disabled", 0) |