Merge pull request #17703 from rmehta/yeah-form-js
refactor: deprecate old API as per https://github.com/frappe/frappe/pull/7537
This commit is contained in:
commit
2d7993592f
@ -354,9 +354,7 @@ cur_frm.cscript.update_totals = function(doc) {
|
||||
|
||||
cur_frm.cscript.get_balance = function(doc,dt,dn) {
|
||||
cur_frm.cscript.update_totals(doc);
|
||||
return $c_obj(cur_frm.doc, 'get_balance', '', function(r, rt){
|
||||
cur_frm.refresh();
|
||||
});
|
||||
cur_frm.call('get_balance', null, () => { cur_frm.refresh(); });
|
||||
}
|
||||
|
||||
cur_frm.cscript.validate = function(doc,cdt,cdn) {
|
||||
|
@ -55,6 +55,19 @@ def get_data():
|
||||
}
|
||||
]
|
||||
},
|
||||
{
|
||||
"label": _("Maintenance"),
|
||||
"items": [
|
||||
{
|
||||
"type": "doctype",
|
||||
"name": "Maintenance Schedule",
|
||||
},
|
||||
{
|
||||
"type": "doctype",
|
||||
"name": "Maintenance Visit",
|
||||
},
|
||||
]
|
||||
},
|
||||
{
|
||||
"label": _("Reports"),
|
||||
"icon": "fa fa-list",
|
||||
|
@ -115,13 +115,15 @@ erpnext.crm.Opportunity = frappe.ui.form.Controller.extend({
|
||||
if(!this.frm.doc.enquiry_from && this.frm.doc.lead)
|
||||
this.frm.doc.enquiry_from = "Lead";
|
||||
|
||||
if(!this.frm.doc.status)
|
||||
set_multiple(this.frm.doc.doctype, this.frm.doc.name, { status:'Open' });
|
||||
if(!this.frm.doc.company && frappe.defaults.get_user_default("Company"))
|
||||
set_multiple(this.frm.doc.doctype, this.frm.doc.name,
|
||||
{ company:frappe.defaults.get_user_default("Company") });
|
||||
if(!this.frm.doc.currency)
|
||||
set_multiple(this.frm.doc.doctype, this.frm.doc.name, { currency:frappe.defaults.get_user_default("Currency") });
|
||||
if(!this.frm.doc.status) {
|
||||
frm.set_value('status', 'Open');
|
||||
}
|
||||
if(!this.frm.doc.company && frappe.defaults.get_user_default("Company")) {
|
||||
frm.set_value('company', frappe.defaults.get_user_default("Company"));
|
||||
}
|
||||
if(!this.frm.doc.currency) {
|
||||
frm.set_value('currency', frappe.defaults.get_user_default("Currency"));
|
||||
}
|
||||
|
||||
this.setup_queries();
|
||||
},
|
||||
|
@ -1,77 +1,54 @@
|
||||
// Copyright (c) 2015, Frappe Technologies Pvt. Ltd. and Contributors
|
||||
// License: GNU General Public License v3. See license.txt
|
||||
|
||||
cur_frm.add_fetch('employee', 'company', 'company');
|
||||
cur_frm.add_fetch('employee', 'employee_name', 'employee_name');
|
||||
|
||||
cur_frm.cscript.onload = function(doc,cdt,cdn){
|
||||
if(!doc.status)
|
||||
set_multiple(cdt,cdn,{status:'Draft'});
|
||||
if(doc.amended_from && doc.__islocal) {
|
||||
doc.status = "Draft";
|
||||
}
|
||||
}
|
||||
|
||||
cur_frm.cscript.onload_post_render = function(doc,cdt,cdn){
|
||||
if(doc.__islocal && doc.employee==frappe.defaults.get_user_default("Employee")) {
|
||||
cur_frm.set_value("employee", "");
|
||||
cur_frm.set_value("employee_name", "")
|
||||
}
|
||||
}
|
||||
|
||||
cur_frm.cscript.refresh = function(doc,cdt,cdn){
|
||||
|
||||
}
|
||||
|
||||
cur_frm.cscript.kra_template = function(doc, dt, dn) {
|
||||
doc.goals = [];
|
||||
erpnext.utils.map_current_doc({
|
||||
method: "erpnext.hr.doctype.appraisal.appraisal.fetch_appraisal_template",
|
||||
source_name: cur_frm.doc.kra_template,
|
||||
frm: cur_frm
|
||||
});
|
||||
}
|
||||
|
||||
cur_frm.cscript.calculate_total_score = function(doc,cdt,cdn){
|
||||
//return get_server_fields('calculate_total','','',doc,cdt,cdn,1);
|
||||
var val = doc.goals || [];
|
||||
var total =0;
|
||||
for(var i = 0; i<val.length; i++){
|
||||
total = flt(total)+flt(val[i].score_earned)
|
||||
}
|
||||
doc.total_score = flt(total)
|
||||
refresh_field('total_score')
|
||||
}
|
||||
|
||||
cur_frm.cscript.score = function(doc,cdt,cdn){
|
||||
var d = locals[cdt][cdn];
|
||||
if (d.score){
|
||||
if (flt(d.score) > 5) {
|
||||
frappe.msgprint(__("Score must be less than or equal to 5"));
|
||||
d.score = 0;
|
||||
refresh_field('score', d.name, 'goals');
|
||||
frappe.ui.form.on('Appraisal', {
|
||||
setup: function(frm) {
|
||||
frm.add_fetch('employee', 'company', 'company');
|
||||
frm.add_fetch('employee', 'employee_name', 'employee_name');
|
||||
frm.fields_dict.employee.get_query = function(doc,cdt,cdn) {
|
||||
return{ query: "erpnext.controllers.queries.employee_query" }
|
||||
};
|
||||
},
|
||||
onload: function(frm) {
|
||||
if(!frm.doc.status) {
|
||||
frm.set_value('status', 'Draft');
|
||||
}
|
||||
var total = flt(d.per_weightage*d.score)/100;
|
||||
d.score_earned = total.toPrecision(2);
|
||||
refresh_field('score_earned', d.name, 'goals');
|
||||
},
|
||||
kra_template: function(frm) {
|
||||
frm.doc.goals = [];
|
||||
erpnext.utils.map_current_doc({
|
||||
method: "erpnext.hr.doctype.appraisal.appraisal.fetch_appraisal_template",
|
||||
source_name: frm.doc.kra_template,
|
||||
frm: frm
|
||||
});
|
||||
},
|
||||
calculate_total: function(frm) {
|
||||
let goals = frm.doc.goals || [];
|
||||
let total =0;
|
||||
for(let i = 0; i<goals.length; i++){
|
||||
total = flt(total)+flt(goals[i].score_earned)
|
||||
}
|
||||
frm.set_value('total_score', total);
|
||||
}
|
||||
else{
|
||||
d.score_earned = 0;
|
||||
refresh_field('score_earned', d.name, 'goals');
|
||||
}
|
||||
cur_frm.cscript.calculate_total(doc,cdt,cdn);
|
||||
}
|
||||
});
|
||||
|
||||
cur_frm.cscript.calculate_total = function(doc,cdt,cdn){
|
||||
var val = doc.goals || [];
|
||||
var total =0;
|
||||
for(var i = 0; i<val.length; i++){
|
||||
total = flt(total)+flt(val[i].score_earned);
|
||||
frappe.ui.form.on('Appraisal Goal', {
|
||||
score: function(frm, cdt, cdn) {
|
||||
var d = locals[cdt][cdn];
|
||||
if (d.score){
|
||||
if (flt(d.score) > 5) {
|
||||
frappe.msgprint(__("Score must be less than or equal to 5"));
|
||||
d.score = 0;
|
||||
refresh_field('score', d.name, 'goals');
|
||||
}
|
||||
var total = flt(d.per_weightage*d.score)/100;
|
||||
d.score_earned = total.toPrecision(2);
|
||||
refresh_field('score_earned', d.name, 'goals');
|
||||
}
|
||||
else{
|
||||
d.score_earned = 0;
|
||||
refresh_field('score_earned', d.name, 'goals');
|
||||
}
|
||||
frm.trigger('calculate_total');
|
||||
}
|
||||
doc.total_score = flt(total);
|
||||
refresh_field('total_score');
|
||||
}
|
||||
|
||||
cur_frm.fields_dict.employee.get_query = function(doc,cdt,cdn) {
|
||||
return{ query: "erpnext.controllers.queries.employee_query" }
|
||||
}
|
||||
});
|
@ -1,32 +1,15 @@
|
||||
// Copyright (c) 2015, Frappe Technologies Pvt. Ltd. and Contributors
|
||||
// License: GNU General Public License v3. See license.txt
|
||||
|
||||
cur_frm.cscript.onload = function (doc, dt, dn) {
|
||||
if (!doc.posting_date)
|
||||
set_multiple(dt, dn, { posting_date: frappe.datetime.get_today() });
|
||||
if (!doc.leave_transaction_type)
|
||||
set_multiple(dt, dn, { leave_transaction_type: 'Allocation' });
|
||||
}
|
||||
|
||||
cur_frm.cscript.to_date = function (doc, cdt, cdn) {
|
||||
return $c('runserverobj', { 'method': 'to_date_validation', 'docs': doc },
|
||||
function (r, rt) {
|
||||
var doc = locals[cdt][cdn];
|
||||
if (r.message) {
|
||||
frappe.msgprint(__("To date cannot be before from date"));
|
||||
doc.to_date = '';
|
||||
refresh_field('to_date');
|
||||
}
|
||||
}
|
||||
);
|
||||
}
|
||||
|
||||
cur_frm.cscript.allocation_type = function (doc, cdt, cdn) {
|
||||
doc.no_of_days = '';
|
||||
refresh_field('no_of_days');
|
||||
}
|
||||
|
||||
frappe.ui.form.on("Leave Control Panel", {
|
||||
onload: function(frm) {
|
||||
if (!frm.doc.from_date) {
|
||||
frm.set_value('from_date', frappe.datetime.get_today());
|
||||
}
|
||||
},
|
||||
refresh: function(frm) {
|
||||
frm.disable_save();
|
||||
},
|
||||
company: function(frm) {
|
||||
if(frm.doc.company) {
|
||||
frm.set_query("department", function() {
|
||||
@ -37,8 +20,5 @@ frappe.ui.form.on("Leave Control Panel", {
|
||||
};
|
||||
});
|
||||
}
|
||||
},
|
||||
refresh: function(frm) {
|
||||
frm.disable_save();
|
||||
}
|
||||
});
|
@ -1,530 +1,150 @@
|
||||
{
|
||||
"allow_copy": 1,
|
||||
"allow_guest_to_view": 0,
|
||||
"allow_import": 0,
|
||||
"allow_rename": 0,
|
||||
"beta": 0,
|
||||
"creation": "2013-01-10 16:34:15",
|
||||
"custom": 0,
|
||||
"docstatus": 0,
|
||||
"doctype": "DocType",
|
||||
"editable_grid": 0,
|
||||
"allow_copy": 1,
|
||||
"creation": "2013-01-10 16:34:15",
|
||||
"doctype": "DocType",
|
||||
"field_order": [
|
||||
"select_employees_section",
|
||||
"company",
|
||||
"employment_type",
|
||||
"branch",
|
||||
"column_break1",
|
||||
"department",
|
||||
"designation",
|
||||
"employee_grade",
|
||||
"employee",
|
||||
"allocate_leaves_section",
|
||||
"from_date",
|
||||
"to_date",
|
||||
"leave_policy",
|
||||
"leave_type",
|
||||
"carry_forward",
|
||||
"no_of_days",
|
||||
"allocate"
|
||||
],
|
||||
"fields": [
|
||||
{
|
||||
"allow_bulk_edit": 0,
|
||||
"allow_on_submit": 0,
|
||||
"bold": 0,
|
||||
"collapsible": 0,
|
||||
"columns": 0,
|
||||
"fieldname": "company",
|
||||
"fieldtype": "Link",
|
||||
"hidden": 0,
|
||||
"ignore_user_permissions": 0,
|
||||
"ignore_xss_filter": 0,
|
||||
"in_filter": 0,
|
||||
"in_global_search": 0,
|
||||
"in_list_view": 0,
|
||||
"in_standard_filter": 0,
|
||||
"label": "Company",
|
||||
"length": 0,
|
||||
"no_copy": 0,
|
||||
"options": "Company",
|
||||
"permlevel": 0,
|
||||
"precision": "",
|
||||
"print_hide": 0,
|
||||
"print_hide_if_no_value": 0,
|
||||
"read_only": 0,
|
||||
"remember_last_selected_value": 0,
|
||||
"report_hide": 0,
|
||||
"reqd": 0,
|
||||
"search_index": 0,
|
||||
"set_only_once": 0,
|
||||
"translatable": 0,
|
||||
"unique": 0
|
||||
},
|
||||
"fieldname": "company",
|
||||
"fieldtype": "Link",
|
||||
"label": "Company",
|
||||
"options": "Company"
|
||||
},
|
||||
{
|
||||
"allow_bulk_edit": 0,
|
||||
"allow_on_submit": 0,
|
||||
"bold": 0,
|
||||
"collapsible": 0,
|
||||
"columns": 0,
|
||||
"description": "Leave blank if considered for all employee types",
|
||||
"fieldname": "employment_type",
|
||||
"fieldtype": "Link",
|
||||
"hidden": 0,
|
||||
"ignore_user_permissions": 0,
|
||||
"ignore_xss_filter": 0,
|
||||
"in_filter": 0,
|
||||
"in_global_search": 0,
|
||||
"in_list_view": 1,
|
||||
"in_standard_filter": 0,
|
||||
"label": "Employment Type",
|
||||
"length": 0,
|
||||
"no_copy": 0,
|
||||
"options": "Employment Type",
|
||||
"permlevel": 0,
|
||||
"print_hide": 0,
|
||||
"print_hide_if_no_value": 0,
|
||||
"read_only": 0,
|
||||
"remember_last_selected_value": 0,
|
||||
"report_hide": 0,
|
||||
"reqd": 0,
|
||||
"search_index": 0,
|
||||
"set_only_once": 0,
|
||||
"translatable": 0,
|
||||
"unique": 0
|
||||
},
|
||||
"fieldname": "employment_type",
|
||||
"fieldtype": "Link",
|
||||
"in_list_view": 1,
|
||||
"label": "Employment Type (optional)",
|
||||
"options": "Employment Type"
|
||||
},
|
||||
{
|
||||
"allow_bulk_edit": 0,
|
||||
"allow_on_submit": 0,
|
||||
"bold": 0,
|
||||
"collapsible": 0,
|
||||
"columns": 0,
|
||||
"description": "Leave blank if considered for all branches",
|
||||
"fieldname": "branch",
|
||||
"fieldtype": "Link",
|
||||
"hidden": 0,
|
||||
"ignore_user_permissions": 0,
|
||||
"ignore_xss_filter": 0,
|
||||
"in_filter": 0,
|
||||
"in_global_search": 0,
|
||||
"in_list_view": 1,
|
||||
"in_standard_filter": 0,
|
||||
"label": "Branch",
|
||||
"length": 0,
|
||||
"no_copy": 0,
|
||||
"options": "Branch",
|
||||
"permlevel": 0,
|
||||
"print_hide": 0,
|
||||
"print_hide_if_no_value": 0,
|
||||
"read_only": 0,
|
||||
"remember_last_selected_value": 0,
|
||||
"report_hide": 0,
|
||||
"reqd": 0,
|
||||
"search_index": 0,
|
||||
"set_only_once": 0,
|
||||
"translatable": 0,
|
||||
"unique": 0
|
||||
},
|
||||
"fieldname": "branch",
|
||||
"fieldtype": "Link",
|
||||
"in_list_view": 1,
|
||||
"label": "Branch (optional)",
|
||||
"options": "Branch"
|
||||
},
|
||||
{
|
||||
"allow_bulk_edit": 0,
|
||||
"allow_on_submit": 0,
|
||||
"bold": 0,
|
||||
"collapsible": 0,
|
||||
"columns": 0,
|
||||
"description": "Leave blank if considered for all departments",
|
||||
"fieldname": "department",
|
||||
"fieldtype": "Link",
|
||||
"hidden": 0,
|
||||
"ignore_user_permissions": 0,
|
||||
"ignore_xss_filter": 0,
|
||||
"in_filter": 0,
|
||||
"in_global_search": 0,
|
||||
"in_list_view": 1,
|
||||
"in_standard_filter": 0,
|
||||
"label": "Department",
|
||||
"length": 0,
|
||||
"no_copy": 0,
|
||||
"options": "Department",
|
||||
"permlevel": 0,
|
||||
"print_hide": 0,
|
||||
"print_hide_if_no_value": 0,
|
||||
"read_only": 0,
|
||||
"remember_last_selected_value": 0,
|
||||
"report_hide": 0,
|
||||
"reqd": 0,
|
||||
"search_index": 0,
|
||||
"set_only_once": 0,
|
||||
"translatable": 0,
|
||||
"unique": 0
|
||||
},
|
||||
"fieldname": "department",
|
||||
"fieldtype": "Link",
|
||||
"in_list_view": 1,
|
||||
"label": "Department (optional)",
|
||||
"options": "Department"
|
||||
},
|
||||
{
|
||||
"allow_bulk_edit": 0,
|
||||
"allow_on_submit": 0,
|
||||
"bold": 0,
|
||||
"collapsible": 0,
|
||||
"columns": 0,
|
||||
"description": "Leave blank if considered for all designations",
|
||||
"fieldname": "designation",
|
||||
"fieldtype": "Link",
|
||||
"hidden": 0,
|
||||
"ignore_user_permissions": 0,
|
||||
"ignore_xss_filter": 0,
|
||||
"in_filter": 0,
|
||||
"in_global_search": 0,
|
||||
"in_list_view": 1,
|
||||
"in_standard_filter": 0,
|
||||
"label": "Designation",
|
||||
"length": 0,
|
||||
"no_copy": 0,
|
||||
"options": "Designation",
|
||||
"permlevel": 0,
|
||||
"print_hide": 0,
|
||||
"print_hide_if_no_value": 0,
|
||||
"read_only": 0,
|
||||
"remember_last_selected_value": 0,
|
||||
"report_hide": 0,
|
||||
"reqd": 0,
|
||||
"search_index": 0,
|
||||
"set_only_once": 0,
|
||||
"translatable": 0,
|
||||
"unique": 0
|
||||
},
|
||||
"fieldname": "designation",
|
||||
"fieldtype": "Link",
|
||||
"in_list_view": 1,
|
||||
"label": "Designation (optional)",
|
||||
"options": "Designation"
|
||||
},
|
||||
{
|
||||
"allow_bulk_edit": 0,
|
||||
"allow_on_submit": 0,
|
||||
"bold": 0,
|
||||
"collapsible": 0,
|
||||
"columns": 0,
|
||||
"fieldname": "employee_grade",
|
||||
"fieldtype": "Link",
|
||||
"hidden": 0,
|
||||
"ignore_user_permissions": 0,
|
||||
"ignore_xss_filter": 0,
|
||||
"in_filter": 0,
|
||||
"in_global_search": 0,
|
||||
"in_list_view": 0,
|
||||
"in_standard_filter": 0,
|
||||
"label": "Employee Grade",
|
||||
"length": 0,
|
||||
"no_copy": 0,
|
||||
"options": "Employee Grade",
|
||||
"permlevel": 0,
|
||||
"precision": "",
|
||||
"print_hide": 0,
|
||||
"print_hide_if_no_value": 0,
|
||||
"read_only": 0,
|
||||
"remember_last_selected_value": 0,
|
||||
"report_hide": 0,
|
||||
"reqd": 0,
|
||||
"search_index": 0,
|
||||
"set_only_once": 0,
|
||||
"translatable": 0,
|
||||
"unique": 0
|
||||
},
|
||||
"fieldname": "employee_grade",
|
||||
"fieldtype": "Link",
|
||||
"label": "Employee Grade (optional)",
|
||||
"options": "Employee Grade"
|
||||
},
|
||||
{
|
||||
"allow_bulk_edit": 0,
|
||||
"allow_on_submit": 0,
|
||||
"bold": 0,
|
||||
"collapsible": 0,
|
||||
"columns": 0,
|
||||
"fieldname": "employee",
|
||||
"fieldtype": "Link",
|
||||
"hidden": 0,
|
||||
"ignore_user_permissions": 0,
|
||||
"ignore_xss_filter": 0,
|
||||
"in_filter": 0,
|
||||
"in_global_search": 0,
|
||||
"in_list_view": 0,
|
||||
"in_standard_filter": 0,
|
||||
"label": "Employee",
|
||||
"length": 0,
|
||||
"no_copy": 0,
|
||||
"options": "Employee",
|
||||
"permlevel": 0,
|
||||
"precision": "",
|
||||
"print_hide": 0,
|
||||
"print_hide_if_no_value": 0,
|
||||
"read_only": 0,
|
||||
"remember_last_selected_value": 0,
|
||||
"report_hide": 0,
|
||||
"reqd": 0,
|
||||
"search_index": 0,
|
||||
"set_only_once": 0,
|
||||
"translatable": 0,
|
||||
"unique": 0
|
||||
},
|
||||
"fieldname": "employee",
|
||||
"fieldtype": "Link",
|
||||
"label": "Employee (optional)",
|
||||
"options": "Employee"
|
||||
},
|
||||
{
|
||||
"allow_bulk_edit": 0,
|
||||
"allow_on_submit": 0,
|
||||
"bold": 0,
|
||||
"collapsible": 0,
|
||||
"columns": 0,
|
||||
"fieldname": "column_break1",
|
||||
"fieldtype": "Column Break",
|
||||
"hidden": 0,
|
||||
"ignore_user_permissions": 0,
|
||||
"ignore_xss_filter": 0,
|
||||
"in_filter": 0,
|
||||
"in_global_search": 0,
|
||||
"in_list_view": 0,
|
||||
"in_standard_filter": 0,
|
||||
"length": 0,
|
||||
"no_copy": 0,
|
||||
"permlevel": 0,
|
||||
"print_hide": 0,
|
||||
"print_hide_if_no_value": 0,
|
||||
"read_only": 0,
|
||||
"remember_last_selected_value": 0,
|
||||
"report_hide": 0,
|
||||
"reqd": 0,
|
||||
"search_index": 0,
|
||||
"set_only_once": 0,
|
||||
"translatable": 0,
|
||||
"unique": 0,
|
||||
"fieldname": "column_break1",
|
||||
"fieldtype": "Column Break",
|
||||
"width": "50%"
|
||||
},
|
||||
},
|
||||
{
|
||||
"allow_bulk_edit": 0,
|
||||
"allow_on_submit": 0,
|
||||
"bold": 0,
|
||||
"collapsible": 0,
|
||||
"columns": 0,
|
||||
"fieldname": "from_date",
|
||||
"fieldtype": "Date",
|
||||
"hidden": 0,
|
||||
"ignore_user_permissions": 0,
|
||||
"ignore_xss_filter": 0,
|
||||
"in_filter": 0,
|
||||
"in_global_search": 0,
|
||||
"in_list_view": 0,
|
||||
"in_standard_filter": 0,
|
||||
"label": "From Date",
|
||||
"length": 0,
|
||||
"no_copy": 0,
|
||||
"permlevel": 0,
|
||||
"precision": "",
|
||||
"print_hide": 0,
|
||||
"print_hide_if_no_value": 0,
|
||||
"read_only": 0,
|
||||
"remember_last_selected_value": 0,
|
||||
"report_hide": 0,
|
||||
"reqd": 1,
|
||||
"search_index": 0,
|
||||
"set_only_once": 0,
|
||||
"translatable": 0,
|
||||
"unique": 0
|
||||
},
|
||||
"fieldname": "from_date",
|
||||
"fieldtype": "Date",
|
||||
"label": "From Date",
|
||||
"reqd": 1
|
||||
},
|
||||
{
|
||||
"allow_bulk_edit": 0,
|
||||
"allow_on_submit": 0,
|
||||
"bold": 0,
|
||||
"collapsible": 0,
|
||||
"columns": 0,
|
||||
"fieldname": "to_date",
|
||||
"fieldtype": "Date",
|
||||
"hidden": 0,
|
||||
"ignore_user_permissions": 0,
|
||||
"ignore_xss_filter": 0,
|
||||
"in_filter": 0,
|
||||
"in_global_search": 0,
|
||||
"in_list_view": 0,
|
||||
"in_standard_filter": 0,
|
||||
"label": "To Date",
|
||||
"length": 0,
|
||||
"no_copy": 0,
|
||||
"permlevel": 0,
|
||||
"precision": "",
|
||||
"print_hide": 0,
|
||||
"print_hide_if_no_value": 0,
|
||||
"read_only": 0,
|
||||
"remember_last_selected_value": 0,
|
||||
"report_hide": 0,
|
||||
"reqd": 1,
|
||||
"search_index": 0,
|
||||
"set_only_once": 0,
|
||||
"translatable": 0,
|
||||
"unique": 0
|
||||
},
|
||||
"fieldname": "to_date",
|
||||
"fieldtype": "Date",
|
||||
"label": "To Date",
|
||||
"reqd": 1
|
||||
},
|
||||
{
|
||||
"allow_bulk_edit": 0,
|
||||
"allow_on_submit": 0,
|
||||
"bold": 0,
|
||||
"collapsible": 0,
|
||||
"columns": 0,
|
||||
"fieldname": "leave_policy",
|
||||
"fieldtype": "Link",
|
||||
"hidden": 0,
|
||||
"ignore_user_permissions": 0,
|
||||
"ignore_xss_filter": 0,
|
||||
"in_filter": 0,
|
||||
"in_global_search": 0,
|
||||
"in_list_view": 0,
|
||||
"in_standard_filter": 0,
|
||||
"label": "Leave Policy",
|
||||
"length": 0,
|
||||
"no_copy": 0,
|
||||
"options": "Leave Policy",
|
||||
"permlevel": 0,
|
||||
"precision": "",
|
||||
"print_hide": 0,
|
||||
"print_hide_if_no_value": 0,
|
||||
"read_only": 0,
|
||||
"remember_last_selected_value": 0,
|
||||
"report_hide": 0,
|
||||
"reqd": 0,
|
||||
"search_index": 0,
|
||||
"set_only_once": 0,
|
||||
"translatable": 0,
|
||||
"unique": 0
|
||||
},
|
||||
"fieldname": "leave_policy",
|
||||
"fieldtype": "Link",
|
||||
"label": "Leave Policy",
|
||||
"options": "Leave Policy"
|
||||
},
|
||||
{
|
||||
"allow_bulk_edit": 0,
|
||||
"allow_on_submit": 0,
|
||||
"bold": 0,
|
||||
"collapsible": 0,
|
||||
"columns": 0,
|
||||
"fieldname": "leave_type",
|
||||
"fieldtype": "Link",
|
||||
"hidden": 0,
|
||||
"ignore_user_permissions": 0,
|
||||
"ignore_xss_filter": 0,
|
||||
"in_filter": 0,
|
||||
"in_global_search": 0,
|
||||
"in_list_view": 0,
|
||||
"in_standard_filter": 0,
|
||||
"label": "Leave Type",
|
||||
"length": 0,
|
||||
"no_copy": 0,
|
||||
"options": "Leave Type",
|
||||
"permlevel": 0,
|
||||
"print_hide": 0,
|
||||
"print_hide_if_no_value": 0,
|
||||
"read_only": 0,
|
||||
"remember_last_selected_value": 0,
|
||||
"report_hide": 0,
|
||||
"reqd": 0,
|
||||
"search_index": 0,
|
||||
"set_only_once": 0,
|
||||
"translatable": 0,
|
||||
"unique": 0
|
||||
},
|
||||
"fieldname": "leave_type",
|
||||
"fieldtype": "Link",
|
||||
"label": "Leave Type",
|
||||
"options": "Leave Type"
|
||||
},
|
||||
{
|
||||
"allow_bulk_edit": 0,
|
||||
"allow_on_submit": 0,
|
||||
"bold": 0,
|
||||
"collapsible": 0,
|
||||
"columns": 0,
|
||||
"description": "Please select Carry Forward if you also want to include previous fiscal year's balance leaves to this fiscal year",
|
||||
"fieldname": "carry_forward",
|
||||
"fieldtype": "Check",
|
||||
"hidden": 0,
|
||||
"ignore_user_permissions": 0,
|
||||
"ignore_xss_filter": 0,
|
||||
"in_filter": 0,
|
||||
"in_global_search": 0,
|
||||
"in_list_view": 0,
|
||||
"in_standard_filter": 0,
|
||||
"label": "Carry Forward",
|
||||
"length": 0,
|
||||
"no_copy": 0,
|
||||
"permlevel": 0,
|
||||
"print_hide": 0,
|
||||
"print_hide_if_no_value": 0,
|
||||
"read_only": 0,
|
||||
"remember_last_selected_value": 0,
|
||||
"report_hide": 0,
|
||||
"reqd": 0,
|
||||
"search_index": 0,
|
||||
"set_only_once": 0,
|
||||
"translatable": 0,
|
||||
"unique": 0
|
||||
},
|
||||
"default": "0",
|
||||
"description": "Please select Carry Forward if you also want to include previous fiscal year's balance leaves to this fiscal year",
|
||||
"fieldname": "carry_forward",
|
||||
"fieldtype": "Check",
|
||||
"label": "Carry Forward"
|
||||
},
|
||||
{
|
||||
"allow_bulk_edit": 0,
|
||||
"allow_on_submit": 0,
|
||||
"bold": 0,
|
||||
"collapsible": 0,
|
||||
"columns": 0,
|
||||
"fieldname": "no_of_days",
|
||||
"fieldtype": "Float",
|
||||
"hidden": 0,
|
||||
"ignore_user_permissions": 0,
|
||||
"ignore_xss_filter": 0,
|
||||
"in_filter": 0,
|
||||
"in_global_search": 0,
|
||||
"in_list_view": 0,
|
||||
"in_standard_filter": 0,
|
||||
"label": "New Leaves Allocated (In Days)",
|
||||
"length": 0,
|
||||
"no_copy": 0,
|
||||
"permlevel": 0,
|
||||
"print_hide": 0,
|
||||
"print_hide_if_no_value": 0,
|
||||
"read_only": 0,
|
||||
"remember_last_selected_value": 0,
|
||||
"report_hide": 0,
|
||||
"reqd": 1,
|
||||
"search_index": 0,
|
||||
"set_only_once": 0,
|
||||
"translatable": 0,
|
||||
"unique": 0
|
||||
},
|
||||
"fieldname": "no_of_days",
|
||||
"fieldtype": "Float",
|
||||
"label": "New Leaves Allocated (In Days)",
|
||||
"reqd": 1
|
||||
},
|
||||
{
|
||||
"allow_bulk_edit": 0,
|
||||
"allow_on_submit": 0,
|
||||
"bold": 0,
|
||||
"collapsible": 0,
|
||||
"columns": 0,
|
||||
"fieldname": "allocate",
|
||||
"fieldtype": "Button",
|
||||
"hidden": 0,
|
||||
"ignore_user_permissions": 0,
|
||||
"ignore_xss_filter": 0,
|
||||
"in_filter": 0,
|
||||
"in_global_search": 0,
|
||||
"in_list_view": 0,
|
||||
"in_standard_filter": 0,
|
||||
"label": "Allocate",
|
||||
"length": 0,
|
||||
"no_copy": 0,
|
||||
"options": "allocate_leave",
|
||||
"permlevel": 0,
|
||||
"print_hide": 0,
|
||||
"print_hide_if_no_value": 0,
|
||||
"read_only": 0,
|
||||
"remember_last_selected_value": 0,
|
||||
"report_hide": 0,
|
||||
"reqd": 0,
|
||||
"search_index": 0,
|
||||
"set_only_once": 0,
|
||||
"translatable": 0,
|
||||
"unique": 0
|
||||
"fieldname": "allocate",
|
||||
"fieldtype": "Button",
|
||||
"label": "Allocate",
|
||||
"options": "allocate_leave"
|
||||
},
|
||||
{
|
||||
"fieldname": "select_employees_section",
|
||||
"fieldtype": "Section Break",
|
||||
"label": "Select Employees"
|
||||
},
|
||||
{
|
||||
"fieldname": "allocate_leaves_section",
|
||||
"fieldtype": "Section Break",
|
||||
"label": "Allocate Leaves"
|
||||
}
|
||||
],
|
||||
"has_web_view": 0,
|
||||
"hide_heading": 0,
|
||||
"hide_toolbar": 1,
|
||||
"icon": "fa fa-cog",
|
||||
"idx": 1,
|
||||
"image_view": 0,
|
||||
"in_create": 0,
|
||||
"is_submittable": 0,
|
||||
"issingle": 1,
|
||||
"istable": 0,
|
||||
"max_attachments": 0,
|
||||
"modified": "2018-04-13 16:17:15.115389",
|
||||
"modified_by": "Administrator",
|
||||
"module": "HR",
|
||||
"name": "Leave Control Panel",
|
||||
"owner": "Administrator",
|
||||
],
|
||||
"hide_toolbar": 1,
|
||||
"icon": "fa fa-cog",
|
||||
"idx": 1,
|
||||
"issingle": 1,
|
||||
"modified": "2019-05-24 09:41:34.105741",
|
||||
"modified_by": "Administrator",
|
||||
"module": "HR",
|
||||
"name": "Leave Control Panel",
|
||||
"owner": "Administrator",
|
||||
"permissions": [
|
||||
{
|
||||
"amend": 0,
|
||||
"cancel": 0,
|
||||
"create": 1,
|
||||
"delete": 0,
|
||||
"email": 0,
|
||||
"export": 0,
|
||||
"if_owner": 0,
|
||||
"import": 0,
|
||||
"permlevel": 0,
|
||||
"print": 0,
|
||||
"read": 1,
|
||||
"report": 0,
|
||||
"role": "HR User",
|
||||
"set_user_permissions": 0,
|
||||
"share": 0,
|
||||
"submit": 0,
|
||||
"create": 1,
|
||||
"read": 1,
|
||||
"role": "HR User",
|
||||
"write": 1
|
||||
}
|
||||
],
|
||||
"quick_entry": 0,
|
||||
"read_only": 1,
|
||||
"read_only_onload": 0,
|
||||
"show_name_in_global_search": 0,
|
||||
"sort_field": "modified",
|
||||
"sort_order": "DESC",
|
||||
"track_changes": 0,
|
||||
"track_seen": 0
|
||||
],
|
||||
"read_only": 1,
|
||||
"sort_field": "modified",
|
||||
"sort_order": "DESC"
|
||||
}
|
@ -27,10 +27,7 @@ class LeaveControlPanel(Document):
|
||||
for f in ["from_date", "to_date", "leave_type", "no_of_days"]:
|
||||
if not self.get(f):
|
||||
frappe.throw(_("{0} is required").format(self.meta.get_label(f)))
|
||||
|
||||
def to_date_validation(self):
|
||||
if date_diff(self.to_date, self.from_date) <= 0:
|
||||
return "Invalid period"
|
||||
self.validate_from_to_dates('from_date', 'to_date')
|
||||
|
||||
def allocate_leave(self):
|
||||
self.validate_values()
|
||||
|
@ -7,6 +7,18 @@ frappe.ui.form.on('Maintenance Schedule', {
|
||||
setup: function(frm) {
|
||||
frm.set_query('contact_person', erpnext.queries.contact_query);
|
||||
frm.set_query('customer_address', erpnext.queries.address_query);
|
||||
frm.set_query('customer', erpnext.queries.customer);
|
||||
|
||||
frm.add_fetch('item_code', 'item_name', 'item_name');
|
||||
frm.add_fetch('item_code', 'description', 'description');
|
||||
},
|
||||
onload: function(frm) {
|
||||
if (!frm.doc.status) {
|
||||
frm.set_value({status:'Draft'});
|
||||
}
|
||||
if (frm.doc.__islocal) {
|
||||
frm.set_value({transaction_date: frappe.datetime.get_today()});
|
||||
}
|
||||
},
|
||||
customer: function(frm) {
|
||||
erpnext.utils.get_party_details(frm)
|
||||
@ -16,8 +28,14 @@ frappe.ui.form.on('Maintenance Schedule', {
|
||||
},
|
||||
contact_person: function(frm) {
|
||||
erpnext.utils.get_contact_details(frm);
|
||||
},
|
||||
generate_schedule: function(frm) {
|
||||
if (frm.is_new()) {
|
||||
frappe.msgprint(__('Please save first'));
|
||||
} else {
|
||||
frm.call('generate_schedule');
|
||||
}
|
||||
}
|
||||
|
||||
})
|
||||
|
||||
// TODO commonify this code
|
||||
@ -93,30 +111,3 @@ erpnext.maintenance.MaintenanceSchedule = frappe.ui.form.Controller.extend({
|
||||
|
||||
$.extend(cur_frm.cscript, new erpnext.maintenance.MaintenanceSchedule({frm: cur_frm}));
|
||||
|
||||
cur_frm.cscript.onload = function(doc, dt, dn) {
|
||||
if(!doc.status) set_multiple(dt,dn,{status:'Draft'});
|
||||
|
||||
if(doc.__islocal){
|
||||
set_multiple(dt,dn,{transaction_date: frappe.datetime.get_today()});
|
||||
}
|
||||
|
||||
// set add fetch for item_code's item_name and description
|
||||
cur_frm.add_fetch('item_code', 'item_name', 'item_name');
|
||||
cur_frm.add_fetch('item_code', 'description', 'description');
|
||||
|
||||
}
|
||||
|
||||
cur_frm.cscript.generate_schedule = function(doc, cdt, cdn) {
|
||||
if (!doc.__islocal) {
|
||||
return $c('runserverobj', {'method':'generate_schedule', 'docs':doc},
|
||||
function(r, rt) {
|
||||
refresh_field('schedules');
|
||||
});
|
||||
} else {
|
||||
frappe.msgprint(__("Please save the document before generating maintenance schedule"));
|
||||
}
|
||||
}
|
||||
|
||||
cur_frm.fields_dict.customer.get_query = function(doc,cdt,cdn) {
|
||||
return { query: "erpnext.controllers.queries.customer_query" }
|
||||
}
|
||||
|
@ -7,9 +7,18 @@ frappe.ui.form.on('Maintenance Visit', {
|
||||
setup: function(frm) {
|
||||
frm.set_query('contact_person', erpnext.queries.contact_query);
|
||||
frm.set_query('customer_address', erpnext.queries.address_query);
|
||||
frm.set_query('customer', erpnext.queries.customer);
|
||||
},
|
||||
onload: function(frm) {
|
||||
if (!frm.doc.status) {
|
||||
frm.set_value({status:'Draft'});
|
||||
}
|
||||
if (frm.doc.__islocal) {
|
||||
frm.set_value({mntc_date: frappe.datetime.get_today()});
|
||||
}
|
||||
},
|
||||
customer: function(frm) {
|
||||
erpnext.utils.get_party_details(frm)
|
||||
erpnext.utils.get_party_details(frm);
|
||||
},
|
||||
customer_address: function(frm) {
|
||||
erpnext.utils.get_address_display(frm, 'customer_address', 'address_display');
|
||||
@ -79,17 +88,4 @@ erpnext.maintenance.MaintenanceVisit = frappe.ui.form.Controller.extend({
|
||||
},
|
||||
});
|
||||
|
||||
$.extend(cur_frm.cscript, new erpnext.maintenance.MaintenanceVisit({frm: cur_frm}));
|
||||
|
||||
cur_frm.cscript.onload = function(doc, dt, dn) {
|
||||
if(!doc.status) set_multiple(dt,dn,{status:'Draft'});
|
||||
if(doc.__islocal) set_multiple(dt,dn,{mntc_date: frappe.datetime.get_today()});
|
||||
|
||||
// set add fetch for item_code's item_name and description
|
||||
cur_frm.add_fetch('item_code', 'item_name', 'item_name');
|
||||
cur_frm.add_fetch('item_code', 'description', 'description');
|
||||
}
|
||||
|
||||
cur_frm.fields_dict.customer.get_query = function(doc,cdt,cdn) {
|
||||
return {query: "erpnext.controllers.queries.customer_query" }
|
||||
}
|
||||
$.extend(cur_frm.cscript, new erpnext.maintenance.MaintenanceVisit({frm: cur_frm}));
|
@ -198,7 +198,8 @@ frappe.ui.form.on('Production Plan', {
|
||||
},
|
||||
|
||||
download_materials_required: function(frm) {
|
||||
$c_obj_csv(frm.doc, 'download_raw_materials', '', '');
|
||||
let get_template_url = 'erpnext.manufacturing.doctype.production_plan.production_plan.download_raw_materials';
|
||||
open_url_post(frappe.request.url, { cmd: get_template_url, production_plan: frm.doc.name });
|
||||
},
|
||||
|
||||
show_progress: function(frm) {
|
||||
|
@ -5,11 +5,13 @@
|
||||
from __future__ import unicode_literals
|
||||
import frappe, json
|
||||
from frappe import msgprint, _
|
||||
from frappe.model.document import Document
|
||||
from erpnext.manufacturing.doctype.bom.bom import validate_bom_no, get_children
|
||||
from frappe.utils import cstr, flt, cint, nowdate, add_days, comma_and, now_datetime, ceil
|
||||
from erpnext.manufacturing.doctype.work_order.work_order import get_item_details
|
||||
from six import string_types, iteritems
|
||||
|
||||
from frappe.model.document import Document
|
||||
from frappe.utils import cstr, flt, cint, nowdate, add_days, comma_and, now_datetime, ceil
|
||||
from frappe.utils.csvutils import build_csv_response
|
||||
from erpnext.manufacturing.doctype.bom.bom import validate_bom_no, get_children
|
||||
from erpnext.manufacturing.doctype.work_order.work_order import get_item_details
|
||||
from erpnext.setup.doctype.item_group.item_group import get_item_group_defaults
|
||||
|
||||
class ProductionPlan(Document):
|
||||
@ -404,25 +406,29 @@ class ProductionPlan(Document):
|
||||
else :
|
||||
msgprint(_("No material request created"))
|
||||
|
||||
def download_raw_materials(self):
|
||||
item_list = [['Item Code', 'Description', 'Stock UOM', 'Required Qty', 'Warehouse',
|
||||
'projected Qty', 'Actual Qty']]
|
||||
@frappe.whitelist()
|
||||
def download_raw_materials(production_plan):
|
||||
doc = frappe.get_doc('Production Plan', production_plan)
|
||||
doc.check_permission()
|
||||
|
||||
doc = self.as_dict()
|
||||
for d in get_items_for_material_requests(doc, ignore_existing_ordered_qty=True):
|
||||
item_list.append([d.get('item_code'), d.get('description'), d.get('stock_uom'), d.get('quantity'),
|
||||
d.get('warehouse'), d.get('projected_qty'), d.get('actual_qty')])
|
||||
item_list = [['Item Code', 'Description', 'Stock UOM', 'Required Qty', 'Warehouse',
|
||||
'projected Qty', 'Actual Qty']]
|
||||
|
||||
if not self.for_warehouse:
|
||||
row = {'item_code': d.get('item_code')}
|
||||
for bin_dict in get_bin_details(row, self.company, all_warehouse=True):
|
||||
if d.get("warehouse") == bin_dict.get('warehouse'):
|
||||
continue
|
||||
doc = doc.as_dict()
|
||||
for d in get_items_for_material_requests(doc, ignore_existing_ordered_qty=True):
|
||||
item_list.append([d.get('item_code'), d.get('description'), d.get('stock_uom'), d.get('quantity'),
|
||||
d.get('warehouse'), d.get('projected_qty'), d.get('actual_qty')])
|
||||
|
||||
item_list.append(['', '', '', '', bin_dict.get('warehouse'),
|
||||
bin_dict.get('projected_qty'), bin_dict.get('actual_qty')])
|
||||
if not doc.for_warehouse:
|
||||
row = {'item_code': d.get('item_code')}
|
||||
for bin_dict in get_bin_details(row, doc.company, all_warehouse=True):
|
||||
if d.get("warehouse") == bin_dict.get('warehouse'):
|
||||
continue
|
||||
|
||||
return item_list
|
||||
item_list.append(['', '', '', '', bin_dict.get('warehouse'),
|
||||
bin_dict.get('projected_qty'), bin_dict.get('actual_qty')])
|
||||
|
||||
build_csv_response(item_list, doc.name)
|
||||
|
||||
def get_exploded_items(item_details, company, bom_no, include_non_stock_items, planned_qty=1):
|
||||
for d in frappe.db.sql("""select bei.item_code, item.default_bom as bom,
|
||||
|
@ -60,13 +60,6 @@ frappe.ui.form.on("Task", {
|
||||
};
|
||||
},
|
||||
|
||||
project: function(frm) {
|
||||
if(frm.doc.project) {
|
||||
return get_server_fields('get_project_details', '','', frm.doc, frm.doc.doctype,
|
||||
frm.doc.name, 1);
|
||||
}
|
||||
},
|
||||
|
||||
is_group: function (frm) {
|
||||
frappe.call({
|
||||
method: "erpnext.projects.doctype.task.task.check_if_child_exists",
|
||||
|
@ -20,11 +20,6 @@ class Task(NestedSet):
|
||||
def get_feed(self):
|
||||
return '{0}: {1}'.format(_(self.status), self.subject)
|
||||
|
||||
def get_project_details(self):
|
||||
return {
|
||||
"project": self.project
|
||||
}
|
||||
|
||||
def get_customer_details(self):
|
||||
cust = frappe.db.sql("select customer_name from `tabCustomer` where name=%s", self.customer)
|
||||
if cust:
|
||||
|
@ -1,46 +1,36 @@
|
||||
// Copyright (c) 2015, Frappe Technologies Pvt. Ltd. and Contributors
|
||||
// License: GNU General Public License v3. See license.txt
|
||||
|
||||
|
||||
|
||||
frappe.ui.form.on_change("Installation Note", "customer",
|
||||
function(frm) { erpnext.utils.get_party_details(frm); });
|
||||
|
||||
frappe.ui.form.on_change("Installation Note", "customer_address",
|
||||
function(frm) { erpnext.utils.get_address_display(frm); });
|
||||
|
||||
frappe.ui.form.on_change("Installation Note", "contact_person",
|
||||
function(frm) { erpnext.utils.get_contact_details(frm); });
|
||||
|
||||
frappe.provide("erpnext.selling");
|
||||
// TODO commonify this code
|
||||
erpnext.selling.InstallationNote = frappe.ui.form.Controller.extend({
|
||||
onload: function() {
|
||||
if(!this.frm.doc.status) {
|
||||
set_multiple(this.frm.doc.doctype, this.frm.doc.name, { status:'Draft'});
|
||||
}
|
||||
if(this.frm.doc.__islocal) {
|
||||
set_multiple(this.frm.doc.doctype, this.frm.doc.name,
|
||||
{inst_date: frappe.datetime.get_today()});
|
||||
}
|
||||
|
||||
this.setup_queries();
|
||||
},
|
||||
|
||||
setup_queries: function() {
|
||||
var me = this;
|
||||
|
||||
frappe.ui.form.on('Installation Note', {
|
||||
setup: function(frm) {
|
||||
frappe.dynamic_link = {doc: this.frm.doc, fieldname: 'customer', doctype: 'Customer'}
|
||||
frm.set_query('customer_address', erpnext.queries.address_query);
|
||||
this.frm.set_query('contact_person', erpnext.queries.contact_query);
|
||||
|
||||
this.frm.set_query("customer", function() {
|
||||
return {
|
||||
query: "erpnext.controllers.queries.customer_query"
|
||||
}
|
||||
});
|
||||
frm.set_query('contact_person', erpnext.queries.contact_query);
|
||||
frm.set_query('customer', erpnext.queries.customer);
|
||||
},
|
||||
onload: function(frm) {
|
||||
if(!frm.doc.status) {
|
||||
frm.set_value({ status:'Draft'});
|
||||
}
|
||||
if(frm.doc.__islocal) {
|
||||
frm.set_value({inst_date: frappe.datetime.get_today()});
|
||||
}
|
||||
},
|
||||
customer: function(frm) {
|
||||
erpnext.utils.get_party_details(frm);
|
||||
},
|
||||
customer_address: function(frm) {
|
||||
erpnext.utils.get_address_display(frm);
|
||||
},
|
||||
contact_person: function(frm) {
|
||||
erpnext.utils.get_contact_details(frm);
|
||||
}
|
||||
});
|
||||
|
||||
frappe.provide("erpnext.selling");
|
||||
|
||||
// TODO commonify this code
|
||||
erpnext.selling.InstallationNote = frappe.ui.form.Controller.extend({
|
||||
refresh: function() {
|
||||
var me = this;
|
||||
if (this.frm.doc.docstatus===0) {
|
||||
|
@ -573,7 +573,7 @@ erpnext.pos.PointOfSale = class PointOfSale {
|
||||
|
||||
function get_frm(_frm) {
|
||||
const page = $('<div>');
|
||||
const frm = _frm || new _f.Frm(doctype, page, false);
|
||||
const frm = _frm || new frappe.ui.form.Form(doctype, page, false);
|
||||
const name = frappe.model.make_new_doc_and_get_name(doctype, true);
|
||||
frm.refresh(name);
|
||||
frm.doc.items = [];
|
||||
|
@ -3,9 +3,6 @@
|
||||
|
||||
cur_frm.cscript.refresh = function(doc, dt, dn) {
|
||||
doc = locals[dt][dn];
|
||||
var save_msg = __("You must Save the form before proceeding");
|
||||
var err_msg = __("There was an error. One probable reason could be that you haven't saved the form. Please contact support@erpnext.com if the problem persists.")
|
||||
|
||||
cur_frm.add_custom_button(__('View Now'), function() {
|
||||
frappe.call({
|
||||
method: 'erpnext.setup.doctype.email_digest.email_digest.get_digest_msg',
|
||||
@ -23,61 +20,47 @@ cur_frm.cscript.refresh = function(doc, dt, dn) {
|
||||
});
|
||||
}, "fa fa-eye-open", "btn-default");
|
||||
|
||||
if(frappe.session.user==="Administrator") {
|
||||
if (!cur_frm.is_new()) {
|
||||
cur_frm.add_custom_button(__('Send Now'), function() {
|
||||
doc = locals[dt][dn];
|
||||
if(doc.__unsaved != 1) {
|
||||
return $c_obj(doc, 'send', '', function(r, rt) {
|
||||
if(r.exc) {
|
||||
frappe.msgprint(err_msg);
|
||||
console.log(r.exc);
|
||||
} else {
|
||||
//console.log(arguments);
|
||||
frappe.msgprint(__('Message Sent'));
|
||||
}
|
||||
});
|
||||
} else {
|
||||
frappe.msgprint(save_msg);
|
||||
}
|
||||
}, "fa fa-envelope", "btn-default");
|
||||
return cur_frm.call('send', null, (r) => {
|
||||
frappe.show_alert(__('Message Sent'));
|
||||
});
|
||||
});
|
||||
}
|
||||
}
|
||||
};
|
||||
|
||||
cur_frm.cscript.addremove_recipients = function(doc, dt, dn) {
|
||||
// Get user list
|
||||
return $c_obj(doc, 'get_users', '', function(r, rt) {
|
||||
if(r.exc) {
|
||||
frappe.msgprint(r.exc);
|
||||
} else {
|
||||
// Open a dialog and display checkboxes against email addresses
|
||||
doc = locals[dt][dn];
|
||||
var d = new frappe.ui.Dialog({
|
||||
title: __('Add/Remove Recipients'),
|
||||
width: 400
|
||||
});
|
||||
|
||||
$.each(r.user_list, function(i, v) {
|
||||
var fullname = frappe.user.full_name(v.name);
|
||||
if(fullname !== v.name) fullname = fullname + " <" + v.name + ">";
|
||||
return cur_frm.call('get_users', null, function(r) {
|
||||
// Open a dialog and display checkboxes against email addresses
|
||||
doc = locals[dt][dn];
|
||||
var d = new frappe.ui.Dialog({
|
||||
title: __('Add/Remove Recipients'),
|
||||
width: 400
|
||||
});
|
||||
|
||||
if(v.enabled==0) {
|
||||
fullname = repl("<span style='color: red'> %(name)s (" + __("disabled user") + ")</span>", {name: v.name});
|
||||
}
|
||||
$.each(r.user_list, function(i, v) {
|
||||
var fullname = frappe.user.full_name(v.name);
|
||||
if(fullname !== v.name) fullname = fullname + " <" + v.name + ">";
|
||||
|
||||
$('<div class="checkbox"><label>\
|
||||
<input type="checkbox" data-id="' + v.name + '"'+
|
||||
(v.checked ? 'checked' : '') +
|
||||
'> '+ fullname +'</label></div>').appendTo(d.body);
|
||||
});
|
||||
if(v.enabled==0) {
|
||||
fullname = repl("<span style='color: red'> %(name)s (" + __("disabled user") + ")</span>", {name: v.name});
|
||||
}
|
||||
|
||||
// Display add recipients button
|
||||
d.set_primary_action("Update", function() {
|
||||
cur_frm.cscript.add_to_rec_list(doc, d.body, r.user_list.length);
|
||||
});
|
||||
$('<div class="checkbox"><label>\
|
||||
<input type="checkbox" data-id="' + v.name + '"'+
|
||||
(v.checked ? 'checked' : '') +
|
||||
'> '+ fullname +'</label></div>').appendTo(d.body);
|
||||
});
|
||||
|
||||
cur_frm.rec_dialog = d;
|
||||
d.show();
|
||||
}
|
||||
// Display add recipients button
|
||||
d.set_primary_action("Update", function() {
|
||||
cur_frm.cscript.add_to_rec_list(doc, d.body, r.user_list.length);
|
||||
});
|
||||
|
||||
cur_frm.rec_dialog = d;
|
||||
d.show();
|
||||
});
|
||||
}
|
||||
|
||||
|
@ -1,17 +1,15 @@
|
||||
// Copyright (c) 2018, Frappe Technologies Pvt. Ltd. and Contributors
|
||||
// License: GNU General Public License v3. See license.txt
|
||||
|
||||
$.extend(cur_frm.cscript, {
|
||||
onload: function (doc, cdt, cdn) {
|
||||
cur_frm.trigger("get_distance_uoms");
|
||||
frappe.ui.form.on('Global Defaults', {
|
||||
onload: function(frm) {
|
||||
frm.trigger('get_distance_uoms');
|
||||
},
|
||||
|
||||
validate: function (doc, cdt, cdn) {
|
||||
return $c_obj(doc, 'get_defaults', '', function (r, rt) {
|
||||
validate: function(frm) {
|
||||
frm.call('get_defaults', null, r => {
|
||||
frappe.sys_defaults = r.message;
|
||||
});
|
||||
})
|
||||
},
|
||||
|
||||
get_distance_uoms: function (frm) {
|
||||
let units = [];
|
||||
|
||||
@ -27,9 +25,8 @@ $.extend(cur_frm.cscript, {
|
||||
r.message.forEach(row => units.push(row.to_uom));
|
||||
}
|
||||
});
|
||||
|
||||
cur_frm.set_query("default_distance_unit", function (doc) {
|
||||
frm.set_query("default_distance_unit", function () {
|
||||
return { filters: { "name": ["IN", units] } };
|
||||
})
|
||||
});
|
||||
}
|
||||
});
|
||||
|
@ -7,6 +7,23 @@ frappe.ui.form.on("Warranty Claim", {
|
||||
setup: function(frm) {
|
||||
frm.set_query('contact_person', erpnext.queries.contact_query);
|
||||
frm.set_query('customer_address', erpnext.queries.address_query);
|
||||
frm.set_query('customer', erpnext.queries.customer);
|
||||
|
||||
frm.add_fetch('serial_no', 'item_code', 'item_code');
|
||||
frm.add_fetch('serial_no', 'item_name', 'item_name');
|
||||
frm.add_fetch('serial_no', 'description', 'description');
|
||||
frm.add_fetch('serial_no', 'maintenance_status', 'warranty_amc_status');
|
||||
frm.add_fetch('serial_no', 'warranty_expiry_date', 'warranty_expiry_date');
|
||||
frm.add_fetch('serial_no', 'amc_expiry_date', 'amc_expiry_date');
|
||||
frm.add_fetch('serial_no', 'customer', 'customer');
|
||||
frm.add_fetch('serial_no', 'customer_name', 'customer_name');
|
||||
frm.add_fetch('item_code', 'item_name', 'item_name');
|
||||
frm.add_fetch('item_code', 'description', 'description');
|
||||
},
|
||||
onload: function(frm) {
|
||||
if(!frm.doc.status) {
|
||||
frm.set_value('status', 'Open');
|
||||
}
|
||||
},
|
||||
customer: function(frm) {
|
||||
erpnext.utils.get_party_details(frm);
|
||||
@ -40,11 +57,6 @@ erpnext.support.WarrantyClaim = frappe.ui.form.Controller.extend({
|
||||
|
||||
$.extend(cur_frm.cscript, new erpnext.support.WarrantyClaim({frm: cur_frm}));
|
||||
|
||||
cur_frm.cscript.onload = function(doc,cdt,cdn){
|
||||
if(!doc.status)
|
||||
set_multiple(cdt,cdn,{status:'Open'});
|
||||
}
|
||||
|
||||
cur_frm.fields_dict['serial_no'].get_query = function(doc, cdt, cdn) {
|
||||
var cond = [];
|
||||
var filter = [
|
||||
@ -63,17 +75,6 @@ cur_frm.fields_dict['serial_no'].get_query = function(doc, cdt, cdn) {
|
||||
}
|
||||
}
|
||||
|
||||
cur_frm.add_fetch('serial_no', 'item_code', 'item_code');
|
||||
cur_frm.add_fetch('serial_no', 'item_name', 'item_name');
|
||||
cur_frm.add_fetch('serial_no', 'description', 'description');
|
||||
cur_frm.add_fetch('serial_no', 'maintenance_status', 'warranty_amc_status');
|
||||
cur_frm.add_fetch('serial_no', 'warranty_expiry_date', 'warranty_expiry_date');
|
||||
cur_frm.add_fetch('serial_no', 'amc_expiry_date', 'amc_expiry_date');
|
||||
cur_frm.add_fetch('serial_no', 'customer', 'customer');
|
||||
cur_frm.add_fetch('serial_no', 'customer_name', 'customer_name');
|
||||
cur_frm.add_fetch('item_code', 'item_name', 'item_name');
|
||||
cur_frm.add_fetch('item_code', 'description', 'description');
|
||||
|
||||
cur_frm.fields_dict['item_code'].get_query = function(doc, cdt, cdn) {
|
||||
if(doc.serial_no) {
|
||||
return{
|
||||
@ -92,10 +93,4 @@ cur_frm.fields_dict['item_code'].get_query = function(doc, cdt, cdn) {
|
||||
]
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
|
||||
cur_frm.fields_dict.customer.get_query = function(doc,cdt,cdn) {
|
||||
return{ query: "erpnext.controllers.queries.customer_query" } }
|
||||
|
||||
};
|
File diff suppressed because it is too large
Load Diff
Loading…
Reference in New Issue
Block a user