diff --git a/erpnext/__init__.py b/erpnext/__init__.py index 4470592da4d..b689967d5d0 100644 --- a/erpnext/__init__.py +++ b/erpnext/__init__.py @@ -2,7 +2,7 @@ from __future__ import unicode_literals import frappe -__version__ = '7.0.11' +__version__ = '7.0.12' def get_default_company(user=None): '''Get default company for user''' diff --git a/erpnext/accounts/doctype/sales_invoice/pos.py b/erpnext/accounts/doctype/sales_invoice/pos.py index 605bf097f7c..9f64e075d63 100644 --- a/erpnext/accounts/doctype/sales_invoice/pos.py +++ b/erpnext/accounts/doctype/sales_invoice/pos.py @@ -20,7 +20,7 @@ def get_pos_data(): if pos_profile.get('name'): pos_profile = frappe.get_doc('POS Profile', pos_profile.get('name')) else: - frappe.msgprint('' + frappe.msgprint('' + _("Welcome to POS: Create your POS Profile") + ''); update_pos_profile_data(doc, pos_profile) @@ -115,7 +115,7 @@ def get_items(doc, pos_profile): item.actual_qty = frappe.db.get_value('Bin', {'item_code': item.name, 'warehouse': item.default_warehouse}, 'actual_qty') or 0 item.serial_nos = get_serial_nos(item, pos_profile) - item.batch_nos = frappe.db.sql_list("""select name from `tabBatch` where expiry_date > curdate() + item.batch_nos = frappe.db.sql_list("""select name from `tabBatch` where ifnull(expiry_date, '4000-10-10') > curdate() and item = %(item_code)s""", {'item_code': item.item_code}) item_list.append(item) diff --git a/erpnext/accounts/page/pos/pos.js b/erpnext/accounts/page/pos/pos.js index a89f40e0ba7..183010387ce 100644 --- a/erpnext/accounts/page/pos/pos.js +++ b/erpnext/accounts/page/pos/pos.js @@ -423,16 +423,16 @@ erpnext.pos.PointOfSale = erpnext.taxes_and_totals.extend({ if(key){ return $.grep(window.items, function(item){ - if( (item.item_code.toLowerCase().match(key)) || - (item.item_name.toLowerCase().match(key)) || (item.item_group.toLowerCase().match(key)) ){ + if(in_list(item.batch_nos, me.search.$input.val())){ + return me.item_batch_no[item.item_code] = me.search.$input.val() + } else if((item.item_code.toLowerCase().match(key)) || + (item.item_name.toLowerCase().match(key)) || (item.item_group.toLowerCase().match(key))){ return true }else if(item.barcode == me.search.$input.val()){ return item.barcode == me.search.$input.val(); } else if (in_list(Object.keys(item.serial_nos), me.search.$input.val())){ me.item_serial_no[item.item_code] = [me.search.$input.val(), item.serial_nos[me.search.$input.val()]] return true - } else if(in_list(item.batch_nos, me.search.$input.val())){ - return me.item_batch_no[item.item_code] = me.search.$input.val() } }) }else{ diff --git a/erpnext/buying/doctype/quality_inspection/quality_inspection.json b/erpnext/buying/doctype/quality_inspection/quality_inspection.json index ba5396cb501..06246ccf2bf 100644 --- a/erpnext/buying/doctype/quality_inspection/quality_inspection.json +++ b/erpnext/buying/doctype/quality_inspection/quality_inspection.json @@ -3,10 +3,12 @@ "allow_import": 0, "allow_rename": 0, "autoname": "naming_series:", + "beta": 0, "creation": "2013-04-30 13:13:03", "custom": 0, "docstatus": 0, "doctype": "DocType", + "editable_grid": 1, "fields": [ { "allow_on_submit": 0, @@ -16,6 +18,7 @@ "fieldtype": "Select", "hidden": 0, "ignore_user_permissions": 0, + "ignore_xss_filter": 0, "in_filter": 0, "in_list_view": 0, "label": "Series", @@ -24,6 +27,7 @@ "options": "QI-", "permlevel": 0, "print_hide": 0, + "print_hide_if_no_value": 0, "read_only": 0, "report_hide": 0, "reqd": 1, @@ -40,6 +44,7 @@ "fieldtype": "Date", "hidden": 0, "ignore_user_permissions": 0, + "ignore_xss_filter": 0, "in_filter": 1, "in_list_view": 1, "label": "Report Date", @@ -49,6 +54,7 @@ "oldfieldtype": "Date", "permlevel": 0, "print_hide": 0, + "print_hide_if_no_value": 0, "read_only": 0, "report_hide": 0, "reqd": 1, @@ -64,6 +70,7 @@ "fieldtype": "Column Break", "hidden": 0, "ignore_user_permissions": 0, + "ignore_xss_filter": 0, "in_filter": 0, "in_list_view": 0, "length": 0, @@ -71,6 +78,7 @@ "permlevel": 0, "precision": "", "print_hide": 0, + "print_hide_if_no_value": 0, "read_only": 0, "report_hide": 0, "reqd": 0, @@ -86,6 +94,7 @@ "fieldtype": "Select", "hidden": 0, "ignore_user_permissions": 0, + "ignore_xss_filter": 0, "in_filter": 1, "in_list_view": 1, "label": "Inspection Type", @@ -96,6 +105,7 @@ "options": "\nIncoming\nOutgoing\nIn Process", "permlevel": 0, "print_hide": 0, + "print_hide_if_no_value": 0, "read_only": 0, "report_hide": 0, "reqd": 1, @@ -111,6 +121,7 @@ "fieldtype": "Link", "hidden": 0, "ignore_user_permissions": 0, + "ignore_xss_filter": 0, "in_filter": 1, "in_list_view": 0, "label": "Purchase Receipt No", @@ -121,6 +132,7 @@ "options": "Purchase Receipt", "permlevel": 0, "print_hide": 0, + "print_hide_if_no_value": 0, "read_only": 0, "report_hide": 0, "reqd": 0, @@ -136,6 +148,7 @@ "fieldtype": "Link", "hidden": 0, "ignore_user_permissions": 0, + "ignore_xss_filter": 0, "in_filter": 1, "in_list_view": 0, "label": "Delivery Note No", @@ -146,6 +159,7 @@ "options": "Delivery Note", "permlevel": 0, "print_hide": 0, + "print_hide_if_no_value": 0, "read_only": 0, "report_hide": 0, "reqd": 0, @@ -161,6 +175,7 @@ "fieldtype": "Section Break", "hidden": 0, "ignore_user_permissions": 0, + "ignore_xss_filter": 0, "in_filter": 0, "in_list_view": 0, "length": 0, @@ -168,6 +183,7 @@ "permlevel": 0, "precision": "", "print_hide": 0, + "print_hide_if_no_value": 0, "read_only": 0, "report_hide": 0, "reqd": 0, @@ -183,6 +199,7 @@ "fieldtype": "Link", "hidden": 0, "ignore_user_permissions": 0, + "ignore_xss_filter": 0, "in_filter": 1, "in_list_view": 1, "label": "Item Code", @@ -193,6 +210,7 @@ "options": "Item", "permlevel": 0, "print_hide": 0, + "print_hide_if_no_value": 0, "read_only": 0, "report_hide": 0, "reqd": 1, @@ -208,6 +226,7 @@ "fieldtype": "Link", "hidden": 0, "ignore_user_permissions": 0, + "ignore_xss_filter": 0, "in_filter": 0, "in_list_view": 0, "label": "Item Serial No", @@ -218,6 +237,7 @@ "options": "Serial No", "permlevel": 0, "print_hide": 0, + "print_hide_if_no_value": 0, "read_only": 0, "report_hide": 0, "reqd": 0, @@ -233,6 +253,7 @@ "fieldtype": "Link", "hidden": 0, "ignore_user_permissions": 0, + "ignore_xss_filter": 0, "in_filter": 0, "in_list_view": 0, "label": "Batch No", @@ -243,6 +264,7 @@ "options": "Batch", "permlevel": 0, "print_hide": 0, + "print_hide_if_no_value": 0, "read_only": 0, "report_hide": 0, "reqd": 0, @@ -258,6 +280,7 @@ "fieldtype": "Float", "hidden": 0, "ignore_user_permissions": 0, + "ignore_xss_filter": 0, "in_filter": 0, "in_list_view": 0, "label": "Sample Size", @@ -267,6 +290,7 @@ "oldfieldtype": "Currency", "permlevel": 0, "print_hide": 0, + "print_hide_if_no_value": 0, "read_only": 0, "report_hide": 0, "reqd": 1, @@ -282,6 +306,7 @@ "fieldtype": "Column Break", "hidden": 0, "ignore_user_permissions": 0, + "ignore_xss_filter": 0, "in_filter": 0, "in_list_view": 0, "length": 0, @@ -289,6 +314,7 @@ "oldfieldtype": "Column Break", "permlevel": 0, "print_hide": 0, + "print_hide_if_no_value": 0, "read_only": 0, "report_hide": 0, "reqd": 0, @@ -305,6 +331,7 @@ "fieldtype": "Data", "hidden": 0, "ignore_user_permissions": 0, + "ignore_xss_filter": 0, "in_filter": 0, "in_list_view": 0, "label": "Item Name", @@ -313,6 +340,7 @@ "permlevel": 0, "precision": "", "print_hide": 0, + "print_hide_if_no_value": 0, "read_only": 1, "report_hide": 0, "reqd": 0, @@ -328,6 +356,7 @@ "fieldtype": "Small Text", "hidden": 0, "ignore_user_permissions": 0, + "ignore_xss_filter": 0, "in_filter": 1, "in_list_view": 0, "label": "Description", @@ -337,6 +366,7 @@ "oldfieldtype": "Small Text", "permlevel": 0, "print_hide": 0, + "print_hide_if_no_value": 0, "read_only": 0, "report_hide": 0, "reqd": 0, @@ -353,6 +383,7 @@ "fieldtype": "Section Break", "hidden": 0, "ignore_user_permissions": 0, + "ignore_xss_filter": 0, "in_filter": 0, "in_list_view": 0, "length": 0, @@ -360,6 +391,7 @@ "permlevel": 0, "precision": "", "print_hide": 0, + "print_hide_if_no_value": 0, "read_only": 0, "report_hide": 0, "reqd": 0, @@ -376,6 +408,7 @@ "fieldtype": "Link", "hidden": 0, "ignore_user_permissions": 0, + "ignore_xss_filter": 0, "in_filter": 0, "in_list_view": 0, "label": "Inspected By", @@ -386,6 +419,7 @@ "options": "User", "permlevel": 0, "print_hide": 0, + "print_hide_if_no_value": 0, "read_only": 0, "report_hide": 0, "reqd": 1, @@ -401,6 +435,7 @@ "fieldtype": "Data", "hidden": 0, "ignore_user_permissions": 0, + "ignore_xss_filter": 0, "in_filter": 0, "in_list_view": 0, "label": "Verified By", @@ -410,6 +445,7 @@ "oldfieldtype": "Data", "permlevel": 0, "print_hide": 0, + "print_hide_if_no_value": 0, "read_only": 0, "report_hide": 0, "reqd": 0, @@ -425,6 +461,7 @@ "fieldtype": "Column Break", "hidden": 0, "ignore_user_permissions": 0, + "ignore_xss_filter": 0, "in_filter": 0, "in_list_view": 0, "length": 0, @@ -432,6 +469,7 @@ "permlevel": 0, "precision": "", "print_hide": 0, + "print_hide_if_no_value": 0, "read_only": 0, "report_hide": 0, "reqd": 0, @@ -447,6 +485,7 @@ "fieldtype": "Text", "hidden": 0, "ignore_user_permissions": 0, + "ignore_xss_filter": 0, "in_filter": 0, "in_list_view": 0, "label": "Remarks", @@ -456,6 +495,7 @@ "oldfieldtype": "Text", "permlevel": 0, "print_hide": 0, + "print_hide_if_no_value": 0, "read_only": 0, "report_hide": 0, "reqd": 0, @@ -471,6 +511,7 @@ "fieldtype": "Link", "hidden": 0, "ignore_user_permissions": 1, + "ignore_xss_filter": 0, "in_filter": 0, "in_list_view": 0, "label": "Amended From", @@ -481,6 +522,7 @@ "options": "Quality Inspection", "permlevel": 0, "print_hide": 1, + "print_hide_if_no_value": 0, "read_only": 1, "report_hide": 0, "reqd": 0, @@ -496,6 +538,7 @@ "fieldtype": "Section Break", "hidden": 0, "ignore_user_permissions": 0, + "ignore_xss_filter": 0, "in_filter": 0, "in_list_view": 0, "label": "", @@ -505,6 +548,7 @@ "options": "Simple", "permlevel": 0, "print_hide": 0, + "print_hide_if_no_value": 0, "read_only": 0, "report_hide": 0, "reqd": 0, @@ -520,6 +564,7 @@ "fieldtype": "Button", "hidden": 0, "ignore_user_permissions": 0, + "ignore_xss_filter": 0, "in_filter": 0, "in_list_view": 0, "label": "Get Specification Details", @@ -528,6 +573,7 @@ "options": "get_item_specification_details", "permlevel": 0, "print_hide": 0, + "print_hide_if_no_value": 0, "read_only": 0, "report_hide": 0, "reqd": 0, @@ -543,6 +589,7 @@ "fieldtype": "Table", "hidden": 0, "ignore_user_permissions": 0, + "ignore_xss_filter": 0, "in_filter": 0, "in_list_view": 0, "label": "Readings", @@ -553,6 +600,7 @@ "options": "Quality Inspection Reading", "permlevel": 0, "print_hide": 0, + "print_hide_if_no_value": 0, "read_only": 0, "report_hide": 0, "reqd": 0, @@ -565,13 +613,14 @@ "hide_toolbar": 0, "icon": "icon-search", "idx": 1, + "image_view": 0, "in_create": 0, "in_dialog": 0, "is_submittable": 1, "issingle": 0, "istable": 0, "max_attachments": 0, - "modified": "2015-11-16 06:29:54.786379", + "modified": "2016-07-31 11:42:40.498926", "modified_by": "Administrator", "module": "Buying", "name": "Quality Inspection", @@ -598,7 +647,10 @@ "write": 1 } ], + "quick_entry": 0, "read_only": 0, "read_only_onload": 0, - "search_fields": "item_code, report_date, purchase_receipt_no, delivery_note_no" + "search_fields": "item_code, report_date, purchase_receipt_no, delivery_note_no", + "sort_order": "ASC", + "track_seen": 0 } \ No newline at end of file diff --git a/erpnext/config/schools.py b/erpnext/config/schools.py index ad4372b88b8..78688c95a76 100644 --- a/erpnext/config/schools.py +++ b/erpnext/config/schools.py @@ -11,6 +11,10 @@ def get_data(): "type": "doctype", "name": "Student" }, + { + "type": "doctype", + "name": "Student Log" + }, { "type": "doctype", "name": "Student Batch" diff --git a/erpnext/demo/user/stock.py b/erpnext/demo/user/stock.py index 46657fdd68c..c86a11bb530 100644 --- a/erpnext/demo/user/stock.py +++ b/erpnext/demo/user/stock.py @@ -7,6 +7,8 @@ import frappe, random from frappe.desk import query_report from erpnext.stock.stock_ledger import NegativeStockError from erpnext.stock.doctype.serial_no.serial_no import SerialNoRequiredError, SerialNoQtyError +from erpnext.stock.doctype.delivery_note.delivery_note import make_sales_return +from erpnext.stock.doctype.purchase_receipt.purchase_receipt import make_purchase_return def work(): frappe.set_user(frappe.db.get_global('demo_manufacturing_user')) @@ -15,6 +17,8 @@ def work(): make_delivery_note() make_stock_reconciliation() submit_draft_stock_entries() + make_sales_return_records() + make_purchase_return_records() def make_purchase_receipt(): if random.random() < 0.6: @@ -95,3 +99,26 @@ def submit_draft_stock_entries(): OperationsNotCompleteError): frappe.db.rollback() +def make_sales_return_records(): + for data in frappe.get_all('Delivery Note', fields=["name"], filters={"docstatus": 1}): + if random.random() < 0.2: + print "dn" + try: + dn = make_sales_return(data.name) + dn.insert() + dn.submit() + frappe.db.commit() + except Exception, e: + frappe.db.rollback() + +def make_purchase_return_records(): + for data in frappe.get_all('Purchase Receipt', fields=["name"], filters={"docstatus": 1}): + if random.random() < 0.2: + print "purchase" + try: + pr = make_purchase_return(data.name) + pr.insert() + pr.submit() + frappe.db.commit() + except Exception, e: + frappe.db.rollback() diff --git a/erpnext/hr/doctype/deduction_type/README.md b/erpnext/hr/doctype/deduction_type/README.md deleted file mode 100644 index 2a227749357..00000000000 --- a/erpnext/hr/doctype/deduction_type/README.md +++ /dev/null @@ -1,3 +0,0 @@ -Type of salary deduction. - -e.g. Tax paid on behalf of the employee that is deducted from the salary. \ No newline at end of file diff --git a/erpnext/hr/doctype/deduction_type/__init__.py b/erpnext/hr/doctype/deduction_type/__init__.py deleted file mode 100644 index baffc488252..00000000000 --- a/erpnext/hr/doctype/deduction_type/__init__.py +++ /dev/null @@ -1 +0,0 @@ -from __future__ import unicode_literals diff --git a/erpnext/hr/doctype/deduction_type/deduction_type.js b/erpnext/hr/doctype/deduction_type/deduction_type.js deleted file mode 100644 index b1d4ac62c5f..00000000000 --- a/erpnext/hr/doctype/deduction_type/deduction_type.js +++ /dev/null @@ -1,8 +0,0 @@ -// Copyright (c) 2016, Frappe Technologies Pvt. Ltd. and contributors -// For license information, please see license.txt - -frappe.ui.form.on('Deduction Type', { - refresh: function(frm) { - - } -}); diff --git a/erpnext/hr/doctype/deduction_type/deduction_type.json b/erpnext/hr/doctype/deduction_type/deduction_type.json deleted file mode 100644 index 58445706ed5..00000000000 --- a/erpnext/hr/doctype/deduction_type/deduction_type.json +++ /dev/null @@ -1,110 +0,0 @@ -{ - "allow_copy": 0, - "allow_import": 1, - "allow_rename": 1, - "autoname": "field:deduction_name", - "beta": 0, - "creation": "2013-01-22 16:50:30", - "custom": 0, - "docstatus": 0, - "doctype": "DocType", - "document_type": "Setup", - "editable_grid": 0, - "fields": [ - { - "allow_on_submit": 0, - "bold": 0, - "collapsible": 0, - "fieldname": "deduction_name", - "fieldtype": "Data", - "hidden": 0, - "ignore_user_permissions": 0, - "ignore_xss_filter": 0, - "in_filter": 0, - "in_list_view": 1, - "label": "Name", - "length": 0, - "no_copy": 0, - "oldfieldname": "deduction_name", - "oldfieldtype": "Data", - "permlevel": 0, - "print_hide": 0, - "print_hide_if_no_value": 0, - "read_only": 0, - "report_hide": 0, - "reqd": 1, - "search_index": 0, - "set_only_once": 0, - "unique": 0 - }, - { - "allow_on_submit": 0, - "bold": 0, - "collapsible": 0, - "fieldname": "description", - "fieldtype": "Small Text", - "hidden": 0, - "ignore_user_permissions": 0, - "ignore_xss_filter": 0, - "in_filter": 0, - "in_list_view": 1, - "label": "Description", - "length": 0, - "no_copy": 0, - "oldfieldname": "description", - "oldfieldtype": "Small Text", - "permlevel": 0, - "print_hide": 0, - "print_hide_if_no_value": 0, - "read_only": 0, - "report_hide": 0, - "reqd": 0, - "search_index": 0, - "set_only_once": 0, - "unique": 0, - "width": "300px" - } - ], - "hide_heading": 0, - "hide_toolbar": 0, - "icon": "icon-flag", - "idx": 1, - "image_view": 0, - "in_create": 0, - "in_dialog": 0, - "is_submittable": 0, - "issingle": 0, - "istable": 0, - "max_attachments": 0, - "modified": "2016-07-25 05:24:26.194533", - "modified_by": "Administrator", - "module": "HR", - "name": "Deduction Type", - "owner": "Administrator", - "permissions": [ - { - "amend": 0, - "apply_user_permissions": 0, - "cancel": 0, - "create": 1, - "delete": 1, - "email": 1, - "export": 0, - "if_owner": 0, - "import": 0, - "permlevel": 0, - "print": 1, - "read": 1, - "report": 1, - "role": "HR User", - "set_user_permissions": 0, - "share": 1, - "submit": 0, - "write": 1 - } - ], - "quick_entry": 1, - "read_only": 0, - "read_only_onload": 0, - "track_seen": 0 -} \ No newline at end of file diff --git a/erpnext/hr/doctype/deduction_type/deduction_type.py b/erpnext/hr/doctype/deduction_type/deduction_type.py deleted file mode 100644 index d2c8c9f0df9..00000000000 --- a/erpnext/hr/doctype/deduction_type/deduction_type.py +++ /dev/null @@ -1,10 +0,0 @@ -# Copyright (c) 2015, Frappe Technologies Pvt. Ltd. and Contributors -# License: GNU General Public License v3. See license.txt - -from __future__ import unicode_literals -import frappe - -from frappe.model.document import Document - -class DeductionType(Document): - pass \ No newline at end of file diff --git a/erpnext/hr/doctype/deduction_type/test_deduction_type.py b/erpnext/hr/doctype/deduction_type/test_deduction_type.py deleted file mode 100644 index f1d98123661..00000000000 --- a/erpnext/hr/doctype/deduction_type/test_deduction_type.py +++ /dev/null @@ -1,7 +0,0 @@ -# Copyright (c) 2015, Frappe Technologies Pvt. Ltd. and Contributors -# License: GNU General Public License v3. See license.txt -from __future__ import unicode_literals - - -import frappe -test_records = frappe.get_test_records('Deduction Type') \ No newline at end of file diff --git a/erpnext/hr/doctype/deduction_type/test_records.json b/erpnext/hr/doctype/deduction_type/test_records.json deleted file mode 100644 index 25dab0fe160..00000000000 --- a/erpnext/hr/doctype/deduction_type/test_records.json +++ /dev/null @@ -1,10 +0,0 @@ -[ - { - "doctype": "Deduction Type", - "deduction_name": "_Test Professional Tax" - }, - { - "doctype": "Deduction Type", - "deduction_name": "_Test TDS" - } -] \ No newline at end of file diff --git a/erpnext/hr/doctype/department/department.json b/erpnext/hr/doctype/department/department.json index 962b6f7ef24..cd65d17599e 100644 --- a/erpnext/hr/doctype/department/department.json +++ b/erpnext/hr/doctype/department/department.json @@ -75,7 +75,7 @@ "issingle": 0, "istable": 0, "max_attachments": 0, - "modified": "2016-07-25 05:24:26.129542", + "modified": "2016-08-01 12:44:43.338689", "modified_by": "Administrator", "module": "HR", "name": "Department", @@ -100,10 +100,31 @@ "share": 1, "submit": 0, "write": 1 + }, + { + "amend": 0, + "apply_user_permissions": 0, + "cancel": 0, + "create": 1, + "delete": 1, + "email": 1, + "export": 1, + "if_owner": 0, + "import": 0, + "permlevel": 0, + "print": 1, + "read": 1, + "report": 1, + "role": "Academics User", + "set_user_permissions": 0, + "share": 1, + "submit": 0, + "write": 1 } ], "quick_entry": 1, "read_only": 0, "read_only_onload": 0, + "sort_order": "ASC", "track_seen": 0 } \ No newline at end of file diff --git a/erpnext/hr/doctype/earning_type/README.md b/erpnext/hr/doctype/earning_type/README.md deleted file mode 100644 index 50aa1b3bf57..00000000000 --- a/erpnext/hr/doctype/earning_type/README.md +++ /dev/null @@ -1,3 +0,0 @@ -Type of earning that is a part of the salary. - -e.g. basic salary, bonus etc. \ No newline at end of file diff --git a/erpnext/hr/doctype/earning_type/__init__.py b/erpnext/hr/doctype/earning_type/__init__.py deleted file mode 100644 index baffc488252..00000000000 --- a/erpnext/hr/doctype/earning_type/__init__.py +++ /dev/null @@ -1 +0,0 @@ -from __future__ import unicode_literals diff --git a/erpnext/hr/doctype/earning_type/earning_type.json b/erpnext/hr/doctype/earning_type/earning_type.json deleted file mode 100644 index f380b4699b9..00000000000 --- a/erpnext/hr/doctype/earning_type/earning_type.json +++ /dev/null @@ -1,110 +0,0 @@ -{ - "allow_copy": 0, - "allow_import": 1, - "allow_rename": 1, - "autoname": "field:earning_name", - "beta": 0, - "creation": "2013-01-24 11:03:32", - "custom": 0, - "docstatus": 0, - "doctype": "DocType", - "document_type": "Setup", - "editable_grid": 0, - "fields": [ - { - "allow_on_submit": 0, - "bold": 0, - "collapsible": 0, - "fieldname": "earning_name", - "fieldtype": "Data", - "hidden": 0, - "ignore_user_permissions": 0, - "ignore_xss_filter": 0, - "in_filter": 0, - "in_list_view": 1, - "label": "Name", - "length": 0, - "no_copy": 0, - "oldfieldname": "earning_name", - "oldfieldtype": "Data", - "permlevel": 0, - "print_hide": 0, - "print_hide_if_no_value": 0, - "read_only": 0, - "report_hide": 0, - "reqd": 1, - "search_index": 0, - "set_only_once": 0, - "unique": 0 - }, - { - "allow_on_submit": 0, - "bold": 0, - "collapsible": 0, - "fieldname": "description", - "fieldtype": "Small Text", - "hidden": 0, - "ignore_user_permissions": 0, - "ignore_xss_filter": 0, - "in_filter": 0, - "in_list_view": 1, - "label": "Description", - "length": 0, - "no_copy": 0, - "oldfieldname": "description", - "oldfieldtype": "Small Text", - "permlevel": 0, - "print_hide": 0, - "print_hide_if_no_value": 0, - "read_only": 0, - "report_hide": 0, - "reqd": 0, - "search_index": 0, - "set_only_once": 0, - "unique": 0, - "width": "300px" - } - ], - "hide_heading": 0, - "hide_toolbar": 0, - "icon": "icon-flag", - "idx": 1, - "image_view": 0, - "in_create": 0, - "in_dialog": 0, - "is_submittable": 0, - "issingle": 0, - "istable": 0, - "max_attachments": 0, - "modified": "2016-07-25 05:24:26.055240", - "modified_by": "Administrator", - "module": "HR", - "name": "Earning Type", - "owner": "Administrator", - "permissions": [ - { - "amend": 0, - "apply_user_permissions": 0, - "cancel": 0, - "create": 1, - "delete": 1, - "email": 1, - "export": 0, - "if_owner": 0, - "import": 0, - "permlevel": 0, - "print": 1, - "read": 1, - "report": 1, - "role": "HR User", - "set_user_permissions": 0, - "share": 1, - "submit": 0, - "write": 1 - } - ], - "quick_entry": 1, - "read_only": 0, - "read_only_onload": 0, - "track_seen": 0 -} \ No newline at end of file diff --git a/erpnext/hr/doctype/earning_type/earning_type.py b/erpnext/hr/doctype/earning_type/earning_type.py deleted file mode 100644 index d7749898126..00000000000 --- a/erpnext/hr/doctype/earning_type/earning_type.py +++ /dev/null @@ -1,10 +0,0 @@ -# Copyright (c) 2015, Frappe Technologies Pvt. Ltd. and Contributors -# License: GNU General Public License v3. See license.txt - -from __future__ import unicode_literals -import frappe - -from frappe.model.document import Document - -class EarningType(Document): - pass \ No newline at end of file diff --git a/erpnext/hr/doctype/earning_type/test_earning_type.py b/erpnext/hr/doctype/earning_type/test_earning_type.py deleted file mode 100644 index e68a2741ee4..00000000000 --- a/erpnext/hr/doctype/earning_type/test_earning_type.py +++ /dev/null @@ -1,7 +0,0 @@ -# Copyright (c) 2015, Frappe Technologies Pvt. Ltd. and Contributors -# License: GNU General Public License v3. See license.txt -from __future__ import unicode_literals - - -import frappe -test_records = frappe.get_test_records('Earning Type') \ No newline at end of file diff --git a/erpnext/hr/doctype/earning_type/test_records.json b/erpnext/hr/doctype/earning_type/test_records.json deleted file mode 100644 index 659ab520407..00000000000 --- a/erpnext/hr/doctype/earning_type/test_records.json +++ /dev/null @@ -1,12 +0,0 @@ -[ - { - "doctype": "Earning Type", - "earning_name": "_Test Basic Salary", - "taxable": "Yes" - }, - { - "doctype": "Earning Type", - "earning_name": "_Test Allowance", - "taxable": "Yes" - } -] \ No newline at end of file diff --git a/erpnext/hr/doctype/salary_slip/salary_slip.py b/erpnext/hr/doctype/salary_slip/salary_slip.py index f83d1448ec4..3bc7f0e22ea 100644 --- a/erpnext/hr/doctype/salary_slip/salary_slip.py +++ b/erpnext/hr/doctype/salary_slip/salary_slip.py @@ -61,9 +61,8 @@ class SalarySlip(TransactionBase): self.pull_sal_struct(ss_doc) def set_time_sheet(self): - if self.salary_slip_based_on_timesheet and not self.get('timesheets'): + if self.salary_slip_based_on_timesheet: self.set("timesheets", []) - timesheets = frappe.db.sql(""" select * from `tabTimesheet` where employee = %(employee)s and start_date BETWEEN %(start_date)s AND %(end_date)s and (status = 'Submitted' or status = 'Billed')""", {'employee': self.employee, 'start_date': self.start_date, 'end_date': self.end_date}, as_dict=1) diff --git a/erpnext/hr/doctype/salary_slip_deduction/README.md b/erpnext/hr/doctype/salary_slip_deduction/README.md deleted file mode 100644 index d0f2219e83a..00000000000 --- a/erpnext/hr/doctype/salary_slip_deduction/README.md +++ /dev/null @@ -1,5 +0,0 @@ -Deduction detail in parent Salary Slip. - -e.g. - -- Tax paid on employee's behalf \ No newline at end of file diff --git a/erpnext/hr/doctype/salary_slip_deduction/__init__.py b/erpnext/hr/doctype/salary_slip_deduction/__init__.py deleted file mode 100644 index baffc488252..00000000000 --- a/erpnext/hr/doctype/salary_slip_deduction/__init__.py +++ /dev/null @@ -1 +0,0 @@ -from __future__ import unicode_literals diff --git a/erpnext/hr/doctype/salary_slip_deduction/salary_slip_deduction.json b/erpnext/hr/doctype/salary_slip_deduction/salary_slip_deduction.json deleted file mode 100644 index 89a1f21c521..00000000000 --- a/erpnext/hr/doctype/salary_slip_deduction/salary_slip_deduction.json +++ /dev/null @@ -1,140 +0,0 @@ -{ - "allow_copy": 0, - "allow_import": 0, - "allow_rename": 0, - "beta": 0, - "creation": "2013-02-22 01:27:48", - "custom": 0, - "docstatus": 0, - "doctype": "DocType", - "document_type": "Setup", - "editable_grid": 1, - "fields": [ - { - "allow_on_submit": 0, - "bold": 0, - "collapsible": 0, - "fieldname": "deduction_type", - "fieldtype": "Link", - "hidden": 0, - "ignore_user_permissions": 0, - "ignore_xss_filter": 0, - "in_filter": 0, - "in_list_view": 1, - "label": "Type", - "length": 0, - "no_copy": 0, - "oldfieldname": "d_type", - "oldfieldtype": "Data", - "options": "Deduction Type", - "permlevel": 0, - "print_hide": 0, - "print_hide_if_no_value": 0, - "print_width": "200px", - "read_only": 0, - "report_hide": 0, - "reqd": 0, - "search_index": 0, - "set_only_once": 0, - "unique": 0, - "width": "200px" - }, - { - "allow_on_submit": 0, - "bold": 0, - "collapsible": 0, - "fieldname": "d_amount", - "fieldtype": "Currency", - "hidden": 0, - "ignore_user_permissions": 0, - "ignore_xss_filter": 0, - "in_filter": 0, - "in_list_view": 0, - "label": "Default Amount", - "length": 0, - "no_copy": 0, - "oldfieldname": "d_amount", - "oldfieldtype": "Currency", - "options": "Company:company:default_currency", - "permlevel": 0, - "print_hide": 1, - "print_hide_if_no_value": 0, - "read_only": 1, - "report_hide": 0, - "reqd": 0, - "search_index": 0, - "set_only_once": 0, - "unique": 0 - }, - { - "allow_on_submit": 0, - "bold": 0, - "collapsible": 0, - "fieldname": "d_depends_on_lwp", - "fieldtype": "Check", - "hidden": 0, - "ignore_user_permissions": 0, - "ignore_xss_filter": 0, - "in_filter": 0, - "in_list_view": 0, - "label": "Depends on Leave Without Pay", - "length": 0, - "no_copy": 0, - "permlevel": 0, - "print_hide": 1, - "print_hide_if_no_value": 0, - "read_only": 0, - "report_hide": 0, - "reqd": 0, - "search_index": 0, - "set_only_once": 0, - "unique": 0 - }, - { - "allow_on_submit": 0, - "bold": 0, - "collapsible": 0, - "fieldname": "deduction_amount", - "fieldtype": "Currency", - "hidden": 0, - "ignore_user_permissions": 0, - "ignore_xss_filter": 0, - "in_filter": 0, - "in_list_view": 1, - "label": "Amount", - "length": 0, - "no_copy": 0, - "options": "Company:company:default_currency", - "permlevel": 0, - "print_hide": 0, - "print_hide_if_no_value": 0, - "read_only": 0, - "report_hide": 0, - "reqd": 0, - "search_index": 0, - "set_only_once": 0, - "unique": 0 - } - ], - "hide_heading": 0, - "hide_toolbar": 0, - "idx": 1, - "image_view": 0, - "in_create": 0, - "in_dialog": 0, - "is_submittable": 0, - "issingle": 0, - "istable": 1, - "max_attachments": 0, - "modified": "2016-07-11 03:28:07.000106", - "modified_by": "Administrator", - "module": "HR", - "name": "Salary Slip Deduction", - "owner": "Administrator", - "permissions": [], - "quick_entry": 1, - "read_only": 0, - "read_only_onload": 0, - "sort_order": "ASC", - "track_seen": 0 -} \ No newline at end of file diff --git a/erpnext/hr/doctype/salary_slip_deduction/salary_slip_deduction.py b/erpnext/hr/doctype/salary_slip_deduction/salary_slip_deduction.py deleted file mode 100644 index f42c34dd12c..00000000000 --- a/erpnext/hr/doctype/salary_slip_deduction/salary_slip_deduction.py +++ /dev/null @@ -1,10 +0,0 @@ -# Copyright (c) 2015, Frappe Technologies Pvt. Ltd. and Contributors -# License: GNU General Public License v3. See license.txt - -from __future__ import unicode_literals -import frappe - -from frappe.model.document import Document - -class SalarySlipDeduction(Document): - pass \ No newline at end of file diff --git a/erpnext/hr/doctype/salary_slip_earning/README.md b/erpnext/hr/doctype/salary_slip_earning/README.md deleted file mode 100644 index 9da0167f5b9..00000000000 --- a/erpnext/hr/doctype/salary_slip_earning/README.md +++ /dev/null @@ -1,6 +0,0 @@ -Earning detail in parent Salary Slip. - -e.g. - -- Basic Salary -- Performance Bonus diff --git a/erpnext/hr/doctype/salary_slip_earning/__init__.py b/erpnext/hr/doctype/salary_slip_earning/__init__.py deleted file mode 100644 index baffc488252..00000000000 --- a/erpnext/hr/doctype/salary_slip_earning/__init__.py +++ /dev/null @@ -1 +0,0 @@ -from __future__ import unicode_literals diff --git a/erpnext/hr/doctype/salary_slip_earning/salary_slip_earning.json b/erpnext/hr/doctype/salary_slip_earning/salary_slip_earning.json deleted file mode 100644 index 076d009579e..00000000000 --- a/erpnext/hr/doctype/salary_slip_earning/salary_slip_earning.json +++ /dev/null @@ -1,140 +0,0 @@ -{ - "allow_copy": 0, - "allow_import": 0, - "allow_rename": 0, - "beta": 0, - "creation": "2013-02-22 01:27:48", - "custom": 0, - "docstatus": 0, - "doctype": "DocType", - "document_type": "Setup", - "editable_grid": 1, - "fields": [ - { - "allow_on_submit": 0, - "bold": 0, - "collapsible": 0, - "fieldname": "earning_type", - "fieldtype": "Link", - "hidden": 0, - "ignore_user_permissions": 0, - "ignore_xss_filter": 0, - "in_filter": 0, - "in_list_view": 1, - "label": "Type", - "length": 0, - "no_copy": 0, - "oldfieldname": "e_type", - "oldfieldtype": "Data", - "options": "Earning Type", - "permlevel": 0, - "print_hide": 0, - "print_hide_if_no_value": 0, - "print_width": "", - "read_only": 0, - "report_hide": 0, - "reqd": 0, - "search_index": 0, - "set_only_once": 0, - "unique": 0, - "width": "80px" - }, - { - "allow_on_submit": 0, - "bold": 0, - "collapsible": 0, - "fieldname": "e_amount", - "fieldtype": "Currency", - "hidden": 0, - "ignore_user_permissions": 0, - "ignore_xss_filter": 0, - "in_filter": 0, - "in_list_view": 0, - "label": "Default Amount", - "length": 0, - "no_copy": 0, - "oldfieldname": "e_amount", - "oldfieldtype": "Currency", - "options": "Company:company:default_currency", - "permlevel": 0, - "print_hide": 1, - "print_hide_if_no_value": 0, - "read_only": 1, - "report_hide": 0, - "reqd": 0, - "search_index": 0, - "set_only_once": 0, - "unique": 0 - }, - { - "allow_on_submit": 0, - "bold": 0, - "collapsible": 0, - "fieldname": "e_depends_on_lwp", - "fieldtype": "Check", - "hidden": 0, - "ignore_user_permissions": 0, - "ignore_xss_filter": 0, - "in_filter": 0, - "in_list_view": 0, - "label": "Depends on Leave Without Pay", - "length": 0, - "no_copy": 0, - "permlevel": 0, - "print_hide": 1, - "print_hide_if_no_value": 0, - "read_only": 0, - "report_hide": 0, - "reqd": 0, - "search_index": 0, - "set_only_once": 0, - "unique": 0 - }, - { - "allow_on_submit": 0, - "bold": 0, - "collapsible": 0, - "fieldname": "earning_amount", - "fieldtype": "Currency", - "hidden": 0, - "ignore_user_permissions": 0, - "ignore_xss_filter": 0, - "in_filter": 0, - "in_list_view": 1, - "label": "Amount", - "length": 0, - "no_copy": 0, - "options": "Company:company:default_currency", - "permlevel": 0, - "print_hide": 0, - "print_hide_if_no_value": 0, - "read_only": 0, - "report_hide": 0, - "reqd": 0, - "search_index": 0, - "set_only_once": 0, - "unique": 0 - } - ], - "hide_heading": 0, - "hide_toolbar": 0, - "idx": 1, - "image_view": 0, - "in_create": 0, - "in_dialog": 0, - "is_submittable": 0, - "issingle": 0, - "istable": 1, - "max_attachments": 0, - "modified": "2016-07-11 03:28:07.074773", - "modified_by": "Administrator", - "module": "HR", - "name": "Salary Slip Earning", - "owner": "Administrator", - "permissions": [], - "quick_entry": 1, - "read_only": 0, - "read_only_onload": 0, - "sort_order": "ASC", - "track_seen": 0 -} \ No newline at end of file diff --git a/erpnext/hr/doctype/salary_slip_earning/salary_slip_earning.py b/erpnext/hr/doctype/salary_slip_earning/salary_slip_earning.py deleted file mode 100644 index 92e48c2e250..00000000000 --- a/erpnext/hr/doctype/salary_slip_earning/salary_slip_earning.py +++ /dev/null @@ -1,10 +0,0 @@ -# Copyright (c) 2015, Frappe Technologies Pvt. Ltd. and Contributors -# License: GNU General Public License v3. See license.txt - -from __future__ import unicode_literals -import frappe - -from frappe.model.document import Document - -class SalarySlipEarning(Document): - pass \ No newline at end of file diff --git a/erpnext/hr/doctype/salary_structure_deduction/README.md b/erpnext/hr/doctype/salary_structure_deduction/README.md deleted file mode 100644 index 085353910d0..00000000000 --- a/erpnext/hr/doctype/salary_structure_deduction/README.md +++ /dev/null @@ -1 +0,0 @@ -Deduction details in parent Salary Structure. \ No newline at end of file diff --git a/erpnext/hr/doctype/salary_structure_deduction/__init__.py b/erpnext/hr/doctype/salary_structure_deduction/__init__.py deleted file mode 100644 index baffc488252..00000000000 --- a/erpnext/hr/doctype/salary_structure_deduction/__init__.py +++ /dev/null @@ -1 +0,0 @@ -from __future__ import unicode_literals diff --git a/erpnext/hr/doctype/salary_structure_deduction/salary_structure_deduction.json b/erpnext/hr/doctype/salary_structure_deduction/salary_structure_deduction.json deleted file mode 100644 index c3611633437..00000000000 --- a/erpnext/hr/doctype/salary_structure_deduction/salary_structure_deduction.json +++ /dev/null @@ -1,116 +0,0 @@ -{ - "allow_copy": 0, - "allow_import": 0, - "allow_rename": 0, - "beta": 0, - "creation": "2013-02-22 01:27:48", - "custom": 0, - "docstatus": 0, - "doctype": "DocType", - "document_type": "Setup", - "editable_grid": 1, - "fields": [ - { - "allow_on_submit": 0, - "bold": 0, - "collapsible": 0, - "fieldname": "deduction_type", - "fieldtype": "Link", - "hidden": 0, - "ignore_user_permissions": 0, - "ignore_xss_filter": 0, - "in_filter": 0, - "in_list_view": 1, - "label": "Type", - "length": 0, - "no_copy": 0, - "oldfieldname": "d_type", - "oldfieldtype": "Select", - "options": "Deduction Type", - "permlevel": 0, - "print_hide": 0, - "print_hide_if_no_value": 0, - "print_width": "200px", - "read_only": 0, - "report_hide": 0, - "reqd": 1, - "search_index": 0, - "set_only_once": 0, - "unique": 0, - "width": "200px" - }, - { - "allow_on_submit": 0, - "bold": 0, - "collapsible": 0, - "fieldname": "d_modified_amt", - "fieldtype": "Currency", - "hidden": 0, - "ignore_user_permissions": 0, - "ignore_xss_filter": 0, - "in_filter": 0, - "in_list_view": 1, - "label": "Amount", - "length": 0, - "no_copy": 0, - "oldfieldname": "d_modified_amt", - "oldfieldtype": "Currency", - "options": "Company:company:default_currency", - "permlevel": 0, - "print_hide": 0, - "print_hide_if_no_value": 0, - "read_only": 0, - "report_hide": 0, - "reqd": 0, - "search_index": 0, - "set_only_once": 0, - "unique": 0 - }, - { - "allow_on_submit": 0, - "bold": 0, - "collapsible": 0, - "fieldname": "depend_on_lwp", - "fieldtype": "Check", - "hidden": 0, - "ignore_user_permissions": 0, - "ignore_xss_filter": 0, - "in_filter": 0, - "in_list_view": 0, - "label": "Reduce Deduction for Leave Without Pay (LWP)", - "length": 0, - "no_copy": 0, - "oldfieldname": "depend_on_lwp", - "oldfieldtype": "Check", - "permlevel": 0, - "print_hide": 0, - "print_hide_if_no_value": 0, - "read_only": 0, - "report_hide": 0, - "reqd": 0, - "search_index": 0, - "set_only_once": 0, - "unique": 0 - } - ], - "hide_heading": 0, - "hide_toolbar": 0, - "idx": 1, - "image_view": 0, - "in_create": 0, - "in_dialog": 0, - "is_submittable": 0, - "issingle": 0, - "istable": 1, - "max_attachments": 0, - "modified": "2016-07-11 03:28:07.217367", - "modified_by": "Administrator", - "module": "HR", - "name": "Salary Structure Deduction", - "owner": "Administrator", - "permissions": [], - "quick_entry": 1, - "read_only": 0, - "read_only_onload": 0, - "track_seen": 0 -} \ No newline at end of file diff --git a/erpnext/hr/doctype/salary_structure_deduction/salary_structure_deduction.py b/erpnext/hr/doctype/salary_structure_deduction/salary_structure_deduction.py deleted file mode 100644 index 16a67add674..00000000000 --- a/erpnext/hr/doctype/salary_structure_deduction/salary_structure_deduction.py +++ /dev/null @@ -1,10 +0,0 @@ -# Copyright (c) 2015, Frappe Technologies Pvt. Ltd. and Contributors -# License: GNU General Public License v3. See license.txt - -from __future__ import unicode_literals -import frappe - -from frappe.model.document import Document - -class SalaryStructureDeduction(Document): - pass \ No newline at end of file diff --git a/erpnext/hr/doctype/salary_structure_earning/README.md b/erpnext/hr/doctype/salary_structure_earning/README.md deleted file mode 100644 index d495cc4e0e8..00000000000 --- a/erpnext/hr/doctype/salary_structure_earning/README.md +++ /dev/null @@ -1 +0,0 @@ -Earning details in parent Salary Structure. \ No newline at end of file diff --git a/erpnext/hr/doctype/salary_structure_earning/__init__.py b/erpnext/hr/doctype/salary_structure_earning/__init__.py deleted file mode 100644 index baffc488252..00000000000 --- a/erpnext/hr/doctype/salary_structure_earning/__init__.py +++ /dev/null @@ -1 +0,0 @@ -from __future__ import unicode_literals diff --git a/erpnext/hr/doctype/salary_structure_earning/salary_structure_earning.json b/erpnext/hr/doctype/salary_structure_earning/salary_structure_earning.json deleted file mode 100644 index e7e4cf4334b..00000000000 --- a/erpnext/hr/doctype/salary_structure_earning/salary_structure_earning.json +++ /dev/null @@ -1,116 +0,0 @@ -{ - "allow_copy": 0, - "allow_import": 0, - "allow_rename": 0, - "beta": 0, - "creation": "2013-02-22 01:27:48", - "custom": 0, - "docstatus": 0, - "doctype": "DocType", - "editable_grid": 1, - "fields": [ - { - "allow_on_submit": 0, - "bold": 0, - "collapsible": 0, - "fieldname": "earning_type", - "fieldtype": "Link", - "hidden": 0, - "ignore_user_permissions": 0, - "ignore_xss_filter": 0, - "in_filter": 0, - "in_list_view": 1, - "label": "Type", - "length": 0, - "no_copy": 0, - "oldfieldname": "e_type", - "oldfieldtype": "Data", - "options": "Earning Type", - "permlevel": 0, - "print_hide": 0, - "print_hide_if_no_value": 0, - "print_width": "200px", - "read_only": 0, - "report_hide": 0, - "reqd": 1, - "search_index": 0, - "set_only_once": 0, - "unique": 0, - "width": "200px" - }, - { - "allow_on_submit": 0, - "bold": 0, - "collapsible": 0, - "fieldname": "modified_value", - "fieldtype": "Currency", - "hidden": 0, - "ignore_user_permissions": 0, - "ignore_xss_filter": 0, - "in_filter": 0, - "in_list_view": 1, - "label": "Amount", - "length": 0, - "no_copy": 0, - "oldfieldname": "modified_value", - "oldfieldtype": "Currency", - "options": "Company:company:default_currency", - "permlevel": 0, - "print_hide": 0, - "print_hide_if_no_value": 0, - "read_only": 0, - "report_hide": 0, - "reqd": 0, - "search_index": 0, - "set_only_once": 0, - "unique": 0 - }, - { - "allow_on_submit": 0, - "bold": 0, - "collapsible": 0, - "fieldname": "depend_on_lwp", - "fieldtype": "Check", - "hidden": 0, - "ignore_user_permissions": 0, - "ignore_xss_filter": 0, - "in_filter": 0, - "in_list_view": 0, - "label": "Reduce Earning for Leave Without Pay (LWP)", - "length": 0, - "no_copy": 0, - "oldfieldname": "depend_on_lwp", - "oldfieldtype": "Check", - "permlevel": 0, - "print_hide": 0, - "print_hide_if_no_value": 0, - "read_only": 0, - "report_hide": 0, - "reqd": 0, - "search_index": 0, - "set_only_once": 0, - "unique": 0 - } - ], - "hide_heading": 0, - "hide_toolbar": 0, - "idx": 1, - "image_view": 0, - "in_create": 0, - "in_dialog": 0, - "is_submittable": 0, - "issingle": 0, - "istable": 1, - "max_attachments": 0, - "modified": "2016-07-11 03:28:07.283082", - "modified_by": "Administrator", - "module": "HR", - "name": "Salary Structure Earning", - "owner": "Administrator", - "permissions": [], - "quick_entry": 1, - "read_only": 0, - "read_only_onload": 0, - "sort_order": "ASC", - "track_seen": 0 -} \ No newline at end of file diff --git a/erpnext/hr/doctype/salary_structure_earning/salary_structure_earning.py b/erpnext/hr/doctype/salary_structure_earning/salary_structure_earning.py deleted file mode 100644 index d80575b2dd2..00000000000 --- a/erpnext/hr/doctype/salary_structure_earning/salary_structure_earning.py +++ /dev/null @@ -1,10 +0,0 @@ -# Copyright (c) 2015, Frappe Technologies Pvt. Ltd. and Contributors -# License: GNU General Public License v3. See license.txt - -from __future__ import unicode_literals -import frappe - -from frappe.model.document import Document - -class SalaryStructureEarning(Document): - pass \ No newline at end of file diff --git a/erpnext/patches.txt b/erpnext/patches.txt index d7c156d865b..0e5290faeb5 100644 --- a/erpnext/patches.txt +++ b/erpnext/patches.txt @@ -264,7 +264,6 @@ execute:frappe.delete_doc_if_exists("Web Form", "contact") #2016-03-10 erpnext.patches.v6_20x.remove_fiscal_year_from_holiday_list erpnext.patches.v6_24.map_customer_address_to_shipping_address_on_po erpnext.patches.v6_27.fix_recurring_order_status -erpnext.patches.v6_20x.remove_customer_supplier_roles erpnext.patches.v6_20x.update_product_bundle_description erpnext.patches.v7_0.update_party_status erpnext.patches.v7_0.update_item_projected @@ -300,7 +299,9 @@ execute:frappe.delete_doc_if_exists("DocType", "Payment Tool") execute:frappe.delete_doc_if_exists("DocType", "Payment Tool Detail") erpnext.patches.v7_0.setup_account_table_for_expense_claim_type_if_exists erpnext.patches.v7_0.migrate_schools_to_erpnext +erpnext.patches.v6_20x.remove_customer_supplier_roles erpnext.patches.v7_0.remove_administrator_role_in_doctypes erpnext.patches.v7_0.rename_fee_amount_to_fee_component erpnext.patches.v7_0.calculate_total_costing_amount -erpnext.patches.v7_0.fix_nonwarehouse_ledger_gl_entries_for_transactions \ No newline at end of file +erpnext.patches.v7_0.fix_nonwarehouse_ledger_gl_entries_for_transactions +erpnext.patches.v7_0.remove_old_earning_deduction_doctypes \ No newline at end of file diff --git a/erpnext/patches/v7_0/remove_old_earning_deduction_doctypes.py b/erpnext/patches/v7_0/remove_old_earning_deduction_doctypes.py new file mode 100644 index 00000000000..05a2c49461c --- /dev/null +++ b/erpnext/patches/v7_0/remove_old_earning_deduction_doctypes.py @@ -0,0 +1,16 @@ +# Copyright (c) 2013, Web Notes Technologies Pvt. Ltd. and Contributors +# License: GNU General Public License v3. See license.txt + +from __future__ import unicode_literals +import frappe + +def execute(): + if frappe.db.exists("DocType", "Salary Component"): + for dt in ("Salary Structure Earning", "Salary Structure Deduction", "Salary Slip Earning", + "Salary Slip Deduction", "Earning Type", "Deduction Type"): + frappe.delete_doc("DocType", dt) + + + for d in frappe.db.sql("""select name from `tabCustom Field` + where dt in ('Salary Detail', 'Salary Component')"""): + frappe.get_doc("Custom Field", d[0]).save() \ No newline at end of file diff --git a/erpnext/projects/doctype/timesheet/timesheet.js b/erpnext/projects/doctype/timesheet/timesheet.js index f3dfefa7d0c..e2e6459b0a1 100644 --- a/erpnext/projects/doctype/timesheet/timesheet.js +++ b/erpnext/projects/doctype/timesheet/timesheet.js @@ -31,7 +31,6 @@ frappe.ui.form.on("Timesheet", { onload: function(frm){ if (frm.doc.__islocal && frm.doc.time_logs) { - frm.set_value("employee", "") calculate_time_and_amount(frm); } }, diff --git a/erpnext/public/js/controllers/taxes_and_totals.js b/erpnext/public/js/controllers/taxes_and_totals.js index 8405e3d3c99..34c4557813f 100644 --- a/erpnext/public/js/controllers/taxes_and_totals.js +++ b/erpnext/public/js/controllers/taxes_and_totals.js @@ -582,7 +582,7 @@ erpnext.taxes_and_totals = erpnext.payments.extend({ set_default_payment: function(total_amount_to_pay, update_paid_amount){ var me = this; payment_status = true; - if(this.frm.doc.is_pos && (!this.frm.doc.paid_amount || update_paid_amount===undefined || update_paid_amount)){ + if(this.frm.doc.is_pos && (update_paid_amount===undefined || update_paid_amount)){ $.each(this.frm.doc['payments'] || [], function(index, data){ if(data.type == "Cash" && payment_status) { data.amount = total_amount_to_pay; diff --git a/erpnext/public/js/payment/payments.js b/erpnext/public/js/payment/payments.js index 0638b84ffa8..7437f2a648d 100644 --- a/erpnext/public/js/payment/payments.js +++ b/erpnext/public/js/payment/payments.js @@ -57,6 +57,13 @@ erpnext.payments = erpnext.stock.StockController.extend({ currency: me.frm.doc.currency, type: data.type })).appendTo(multimode_payments) + + if (data.type == 'Cash' && data.amount == me.frm.doc.paid_amount) { + me.idx = data.idx; + me.selected_mode = $(me.$body).find(repl("input[idx='%(idx)s']",{'idx': me.idx})); + me.highlight_selected_row(); + me.bind_amount_change_event(); + } }) }else{ $("
No payment mode selected in pos profile
").appendTo(multimode_payments) @@ -90,8 +97,10 @@ erpnext.payments = erpnext.stock.StockController.extend({ bind_payment_mode_keys_event: function(){ var me = this; $(this.$body).find('.pos-payment-row').click(function(){ - me.idx = $(this).attr("idx"); - me.set_outstanding_amount() + if(me.frm.doc.outstanding_amount > 0){ + me.idx = $(this).attr("idx"); + me.set_outstanding_amount() + } }) }, @@ -124,12 +133,16 @@ erpnext.payments = erpnext.stock.StockController.extend({ bind_amount_change_event: function(){ var me = this; - me.selected_mode.change(function(){ + this.selected_mode.change(function(){ me.payment_val = flt($(this).val()) || 0.0; me.selected_mode.val(format_number(me.payment_val, 2)) me.idx = me.selected_mode.attr("idx") me.update_paid_amount() }) + + this.selected_mode.click(function(){ + me.selected_mode.select(); + }) }, clear_amount: function(){ @@ -140,6 +153,7 @@ erpnext.payments = erpnext.stock.StockController.extend({ me.selected_mode = $(me.$body).find(repl("input[idx='%(idx)s']",{'idx': me.idx})); me.payment_val = 0.0; me.selected_mode.val(0.0); + me.highlight_selected_row(); me.update_paid_amount(); }) }, diff --git a/erpnext/public/js/utils.js b/erpnext/public/js/utils.js index 6c5f59a27dc..7330889734c 100644 --- a/erpnext/public/js/utils.js +++ b/erpnext/public/js/utils.js @@ -180,7 +180,7 @@ erpnext.utils.map_current_doc = function(opts) { } frappe.form.link_formatters['Item'] = function(value, doc) { - if(doc.item_name && doc.item_name !== value) { + if(doc && doc.item_name && doc.item_name !== value) { return value + ': ' + doc.item_name; } else { return value; @@ -188,7 +188,7 @@ frappe.form.link_formatters['Item'] = function(value, doc) { } frappe.form.link_formatters['Employee'] = function(value, doc) { - if(doc.employee_name && doc.employee_name !== value) { + if(doc && doc.employee_name && doc.employee_name !== value) { return value + ': ' + doc.employee_name; } else { return value; diff --git a/erpnext/schools/doctype/student/student_dashboard.py b/erpnext/schools/doctype/student/student_dashboard.py index 0c22c7b60fb..82cb7981ec6 100644 --- a/erpnext/schools/doctype/student/student_dashboard.py +++ b/erpnext/schools/doctype/student/student_dashboard.py @@ -6,10 +6,10 @@ data = { 'fieldname': 'student', 'transactions': [ { - 'items': ['Student Group', 'Student Attendance', 'Program Enrollment' ] + 'items': ['Student Log', 'Student Group', 'Student Attendance'] }, { - 'items': ['Fees', 'Examination'] + 'items': ['Program Enrollment', 'Fees', 'Examination'] } ] } \ No newline at end of file diff --git a/erpnext/schools/doctype/student_log/__init__.py b/erpnext/schools/doctype/student_log/__init__.py new file mode 100644 index 00000000000..e69de29bb2d diff --git a/erpnext/hr/doctype/earning_type/earning_type.js b/erpnext/schools/doctype/student_log/student_log.js similarity index 81% rename from erpnext/hr/doctype/earning_type/earning_type.js rename to erpnext/schools/doctype/student_log/student_log.js index 1dd6412b1c2..40e63e9f886 100644 --- a/erpnext/hr/doctype/earning_type/earning_type.js +++ b/erpnext/schools/doctype/student_log/student_log.js @@ -1,7 +1,7 @@ // Copyright (c) 2016, Frappe Technologies Pvt. Ltd. and contributors // For license information, please see license.txt -frappe.ui.form.on('Earning Type', { +frappe.ui.form.on('Student Log', { refresh: function(frm) { } diff --git a/erpnext/schools/doctype/student_log/student_log.json b/erpnext/schools/doctype/student_log/student_log.json new file mode 100644 index 00000000000..4bb5bd611ed --- /dev/null +++ b/erpnext/schools/doctype/student_log/student_log.json @@ -0,0 +1,236 @@ +{ + "allow_copy": 0, + "allow_import": 0, + "allow_rename": 0, + "autoname": "SLog.####", + "beta": 0, + "creation": "2016-07-29 03:27:22.451772", + "custom": 0, + "docstatus": 0, + "doctype": "DocType", + "document_type": "", + "editable_grid": 1, + "fields": [ + { + "allow_on_submit": 0, + "bold": 0, + "collapsible": 0, + "fieldname": "student", + "fieldtype": "Link", + "hidden": 0, + "ignore_user_permissions": 0, + "ignore_xss_filter": 0, + "in_filter": 0, + "in_list_view": 0, + "label": "Student", + "length": 0, + "no_copy": 0, + "options": "Student", + "permlevel": 0, + "precision": "", + "print_hide": 0, + "print_hide_if_no_value": 0, + "read_only": 0, + "report_hide": 0, + "reqd": 1, + "search_index": 0, + "set_only_once": 0, + "unique": 0 + }, + { + "allow_on_submit": 0, + "bold": 0, + "collapsible": 0, + "fieldname": "type", + "fieldtype": "Select", + "hidden": 0, + "ignore_user_permissions": 0, + "ignore_xss_filter": 0, + "in_filter": 0, + "in_list_view": 1, + "label": "Type", + "length": 0, + "no_copy": 0, + "options": "General\nAcademic\nMedical\nAchievement", + "permlevel": 0, + "precision": "", + "print_hide": 0, + "print_hide_if_no_value": 0, + "read_only": 0, + "report_hide": 0, + "reqd": 0, + "search_index": 0, + "set_only_once": 0, + "unique": 0 + }, + { + "allow_on_submit": 0, + "bold": 0, + "collapsible": 0, + "fieldname": "column_break_3", + "fieldtype": "Column Break", + "hidden": 0, + "ignore_user_permissions": 0, + "ignore_xss_filter": 0, + "in_filter": 0, + "in_list_view": 0, + "length": 0, + "no_copy": 0, + "permlevel": 0, + "precision": "", + "print_hide": 0, + "print_hide_if_no_value": 0, + "read_only": 0, + "report_hide": 0, + "reqd": 0, + "search_index": 0, + "set_only_once": 0, + "unique": 0 + }, + { + "allow_on_submit": 0, + "bold": 0, + "collapsible": 0, + "fieldname": "student_name", + "fieldtype": "Read Only", + "hidden": 0, + "ignore_user_permissions": 0, + "ignore_xss_filter": 0, + "in_filter": 0, + "in_list_view": 0, + "label": "Student Name", + "length": 0, + "no_copy": 0, + "options": "student.title", + "permlevel": 0, + "precision": "", + "print_hide": 0, + "print_hide_if_no_value": 0, + "read_only": 0, + "report_hide": 0, + "reqd": 0, + "search_index": 0, + "set_only_once": 0, + "unique": 0 + }, + { + "allow_on_submit": 0, + "bold": 0, + "collapsible": 0, + "fieldname": "date", + "fieldtype": "Date", + "hidden": 0, + "ignore_user_permissions": 0, + "ignore_xss_filter": 0, + "in_filter": 0, + "in_list_view": 1, + "label": "Date", + "length": 0, + "no_copy": 0, + "permlevel": 0, + "precision": "", + "print_hide": 0, + "print_hide_if_no_value": 0, + "read_only": 0, + "report_hide": 0, + "reqd": 0, + "search_index": 0, + "set_only_once": 0, + "unique": 0 + }, + { + "allow_on_submit": 0, + "bold": 0, + "collapsible": 0, + "fieldname": "section_break_5", + "fieldtype": "Section Break", + "hidden": 0, + "ignore_user_permissions": 0, + "ignore_xss_filter": 0, + "in_filter": 0, + "in_list_view": 0, + "length": 0, + "no_copy": 0, + "permlevel": 0, + "precision": "", + "print_hide": 0, + "print_hide_if_no_value": 0, + "read_only": 0, + "report_hide": 0, + "reqd": 0, + "search_index": 0, + "set_only_once": 0, + "unique": 0 + }, + { + "allow_on_submit": 0, + "bold": 0, + "collapsible": 0, + "fieldname": "log", + "fieldtype": "Text Editor", + "hidden": 0, + "ignore_user_permissions": 0, + "ignore_xss_filter": 0, + "in_filter": 0, + "in_list_view": 0, + "label": "Log", + "length": 0, + "no_copy": 0, + "permlevel": 0, + "precision": "", + "print_hide": 0, + "print_hide_if_no_value": 0, + "read_only": 0, + "report_hide": 0, + "reqd": 0, + "search_index": 0, + "set_only_once": 0, + "unique": 0 + } + ], + "hide_heading": 0, + "hide_toolbar": 0, + "idx": 0, + "image_view": 0, + "in_create": 0, + "in_dialog": 0, + "is_submittable": 0, + "issingle": 0, + "istable": 0, + "max_attachments": 0, + "modified": "2016-07-29 07:35:28.623364", + "modified_by": "Administrator", + "module": "Schools", + "name": "Student Log", + "name_case": "", + "owner": "Administrator", + "permissions": [ + { + "amend": 0, + "apply_user_permissions": 0, + "cancel": 0, + "create": 1, + "delete": 1, + "email": 1, + "export": 1, + "if_owner": 0, + "import": 0, + "permlevel": 0, + "print": 1, + "read": 1, + "report": 1, + "role": "Academics User", + "set_user_permissions": 0, + "share": 1, + "submit": 0, + "write": 1 + } + ], + "quick_entry": 0, + "read_only": 0, + "read_only_onload": 0, + "sort_field": "modified", + "sort_order": "DESC", + "title_field": "student_name", + "track_seen": 1 +} \ No newline at end of file diff --git a/erpnext/schools/doctype/student_log/student_log.py b/erpnext/schools/doctype/student_log/student_log.py new file mode 100644 index 00000000000..8b12886863c --- /dev/null +++ b/erpnext/schools/doctype/student_log/student_log.py @@ -0,0 +1,10 @@ +# -*- coding: utf-8 -*- +# Copyright (c) 2015, Frappe Technologies Pvt. Ltd. and contributors +# For license information, please see license.txt + +from __future__ import unicode_literals +import frappe +from frappe.model.document import Document + +class StudentLog(Document): + pass diff --git a/erpnext/schools/doctype/student_log/test_student_log.py b/erpnext/schools/doctype/student_log/test_student_log.py new file mode 100644 index 00000000000..1fe191fe955 --- /dev/null +++ b/erpnext/schools/doctype/student_log/test_student_log.py @@ -0,0 +1,12 @@ +# -*- coding: utf-8 -*- +# Copyright (c) 2015, Frappe Technologies Pvt. Ltd. and Contributors +# See license.txt +from __future__ import unicode_literals + +import frappe +import unittest + +# test_records = frappe.get_test_records('Student Log') + +class TestStudentLog(unittest.TestCase): + pass diff --git a/erpnext/setup/doctype/company/fixtures/india/__init__.py b/erpnext/setup/doctype/company/fixtures/india/__init__.py index a97bf94f56d..2aeec99d460 100644 --- a/erpnext/setup/doctype/company/fixtures/india/__init__.py +++ b/erpnext/setup/doctype/company/fixtures/india/__init__.py @@ -7,9 +7,9 @@ import frappe def install(company): docs = [ - {'doctype': 'Salary Component', 'salary_component': 'Professional Tax', 'description': 'Professional Tax', 'salary_component': 'Professional Tax'}, - {'doctype': 'Salary Component', 'salary_component': 'Provident Fund', 'description': 'Provident fund', 'salary_component': 'Provident Fund'}, - {'doctype': 'Salary Component', 'salary_component': 'House Rent Allowance', 'description': 'House Rent Allowance', 'salary_component': 'House Rent Allowance', 'taxable': 'No'}, + {'doctype': 'Salary Component', 'salary_component': 'Professional Tax', 'description': 'Professional Tax'}, + {'doctype': 'Salary Component', 'salary_component': 'Provident Fund', 'description': 'Provident fund'}, + {'doctype': 'Salary Component', 'salary_component': 'House Rent Allowance', 'description': 'House Rent Allowance'} ] for d in docs: diff --git a/erpnext/setup/setup_wizard/install_fixtures.py b/erpnext/setup/setup_wizard/install_fixtures.py index a0e52dd8e18..23549ff7970 100644 --- a/erpnext/setup/setup_wizard/install_fixtures.py +++ b/erpnext/setup/setup_wizard/install_fixtures.py @@ -27,12 +27,10 @@ def install(country=None): {'doctype': 'Item Group', 'item_group_name': _('Consumable'), 'is_group': 0, 'parent_item_group': _('All Item Groups') }, - # deduction type - {'doctype': 'Deduction Type', 'name': _('Income Tax'), 'description': _('Income Tax'), 'deduction_name': _('Income Tax')}, - - # earning type - {'doctype': 'Earning Type', 'name': _('Basic'), 'description': _('Basic'), 'earning_name': _('Basic'), 'taxable': 'Yes'}, - + # salary component + {'doctype': 'Salary Component', 'salary_component': _('Income Tax'), 'description': _('Income Tax')}, + {'doctype': 'Salary Component', 'salary_component': _('Basic'), 'description': _('Basic')}, + # expense claim type {'doctype': 'Expense Claim Type', 'name': _('Calls'), 'expense_type': _('Calls')}, {'doctype': 'Expense Claim Type', 'name': _('Food'), 'expense_type': _('Food')},