internal issues (#19496)

* fix: user remark mandatory in quick entry but not in form

* fix: preview salary slip btn showing in draft and unsaved states

* minor: removed unecessay comma

* fix: department analytics report showing departments of all companies
This commit is contained in:
Saqib 2019-11-06 14:41:16 +05:30 committed by Nabin Hait
parent 57f2dce682
commit 01c19d3b93
6 changed files with 32 additions and 8 deletions

View File

@ -570,7 +570,7 @@ $.extend(erpnext.journal_entry, {
},
{fieldtype: "Date", fieldname: "posting_date", label: __("Date"), reqd: 1,
default: frm.doc.posting_date},
{fieldtype: "Small Text", fieldname: "user_remark", label: __("User Remark"), reqd: 1},
{fieldtype: "Small Text", fieldname: "user_remark", label: __("User Remark")},
{fieldtype: "Select", fieldname: "naming_series", label: __("Series"), reqd: 1,
options: naming_series_options, default: naming_series_default},
]

View File

@ -46,10 +46,12 @@ frappe.ui.form.on('Salary Structure', {
frm.trigger("toggle_fields");
frm.fields_dict['earnings'].grid.set_column_disp("default_amount", false);
frm.fields_dict['deductions'].grid.set_column_disp("default_amount", false);
frm.add_custom_button(__("Preview Salary Slip"), function() {
frm.trigger('preview_salary_slip');
});
if(frm.doc.docstatus === 1) {
frm.add_custom_button(__("Preview Salary Slip"), function() {
frm.trigger('preview_salary_slip');
});
}
if(frm.doc.docstatus==1) {
frm.add_custom_button(__("Assign Salary Structure"), function() {

View File

@ -169,5 +169,10 @@ def make_salary_slip(source_name, target_doc = None, employee = None, as_print =
@frappe.whitelist()
def get_employees(salary_structure):
employees = frappe.get_list('Salary Structure Assignment',
filters={'salary_structure': salary_structure}, fields=['employee'])
filters={'salary_structure': salary_structure, 'docstatus': 1}, fields=['employee'])
if not employees:
frappe.throw(_("There's no Employee with Salary Structure: {0}. \
Assign {1} to an Employee to preview Salary Slip").format(salary_structure, salary_structure))
return list(set([d.employee for d in employees]))

View File

@ -2,4 +2,14 @@
// For license information, please see license.txt
frappe.query_reports["Department Analytics"] = {
"filters": [
{
"fieldname":"company",
"label": __("Company"),
"fieldtype": "Link",
"options": "Company",
"default": frappe.defaults.get_user_default("Company"),
"reqd": 1
},
]
};

View File

@ -7,6 +7,10 @@ from frappe import _
def execute(filters=None):
if not filters: filters = {}
if not filters["company"]:
frappe.throw(_('{0} is mandatory').format(_('Company')))
columns = get_columns()
employees = get_employees(filters)
departments_result = get_department(filters)
@ -28,6 +32,9 @@ def get_conditions(filters):
conditions = ""
if filters.get("department"): conditions += " and department = '%s'" % \
filters["department"].replace("'", "\\'")
if filters.get("company"): conditions += " and company = '%s'" % \
filters["company"].replace("'", "\\'")
return conditions
def get_employees(filters):
@ -37,7 +44,7 @@ def get_employees(filters):
gender, company from `tabEmployee` where status = 'Active' %s""" % conditions, as_list=1)
def get_department(filters):
return frappe.db.sql("""select name from `tabDepartment`""" , as_list=1)
return frappe.db.sql("""select name from `tabDepartment` where company = %s""", (filters["company"]), as_list=1)
def get_chart_data(departments,employees):
if not departments:

View File

@ -233,7 +233,7 @@ frappe.ui.form.on('Production Plan', {
if (item_wise_qty) {
for (var key in item_wise_qty) {
title += __('Item {0}: {1} qty produced, ', [key, item_wise_qty[key]]);
title += __('Item {0}: {1} qty produced. ', [key, item_wise_qty[key]]);
}
}