Merge pull request #53224 from diptanilsaha/missed_ta

This commit is contained in:
diptanilsaha
2026-03-07 15:23:50 +05:30
committed by GitHub
14 changed files with 23 additions and 22 deletions

View File

@@ -1154,7 +1154,7 @@ def get_irequests_of_payment_request(doc: str | None = None) -> list:
@frappe.whitelist()
def get_available_payment_schedules(reference_doctype, reference_name):
def get_available_payment_schedules(reference_doctype: str, reference_name: str):
ref_doc = frappe.get_doc(reference_doctype, reference_name)
if not hasattr(ref_doc, "payment_schedule") or not ref_doc.payment_schedule:

View File

@@ -7,6 +7,7 @@ import math
import frappe
from frappe import _
from frappe.model.document import Document
from frappe.query_builder.functions import IfNull, Sum
from frappe.utils import (
cint,
@@ -986,7 +987,7 @@ class Asset(AccountsController):
return False
@frappe.whitelist()
def get_depreciation_rate(self, args, on_validate=False):
def get_depreciation_rate(self, args: str | dict | Document, on_validate: bool = False):
if isinstance(args, str):
args = json.loads(args)

View File

@@ -90,7 +90,7 @@ def update_asset_maintenance_log_status():
@frappe.whitelist()
@frappe.validate_and_sanitize_search_inputs
def get_maintenance_tasks(doctype, txt, searchfield, start, page_len, filters):
def get_maintenance_tasks(doctype: str, txt: str, searchfield: str, start: int, page_len: int, filters: dict):
asset_maintenance_tasks = frappe.db.get_values(
"Asset Maintenance Task", {"parent": filters.get("asset_maintenance")}, "maintenance_task"
)

View File

@@ -2130,7 +2130,7 @@ def make_stock_reservation_entries(
@frappe.whitelist()
def cancel_stock_reservation_entries(doc, sre_list):
def cancel_stock_reservation_entries(doc: str | dict, sre_list: str | list):
if isinstance(doc, str):
doc = parse_json(doc)
doc = frappe.get_doc("Work Order", doc.get("name"))

View File

@@ -101,7 +101,7 @@ class ProductBundle(Document):
@frappe.whitelist()
@frappe.validate_and_sanitize_search_inputs
def get_new_item_code(doctype, txt, searchfield, start, page_len, filters):
def get_new_item_code(doctype: str, txt: str, searchfield: str, start: int, page_len: int, filters: dict):
product_bundles = frappe.db.get_list("Product Bundle", {"disabled": 0}, pluck="name")
if not searchfield or searchfield == "name":

View File

@@ -54,7 +54,7 @@ def get_leaderboards():
@frappe.whitelist()
def get_all_customers(date_range, company, field, limit=None):
def get_all_customers(date_range: str, company: str, field: str, limit: int | None = None):
filters = [["docstatus", "=", "1"], ["company", "=", company]]
from_date, to_date = parse_date_range(date_range)
if field == "outstanding_amount":
@@ -89,7 +89,7 @@ def get_all_customers(date_range, company, field, limit=None):
@frappe.whitelist()
def get_all_items(date_range, company, field, limit=None):
def get_all_items(date_range: str, company: str, field: str, limit: int | None = None):
if field in ("available_stock_qty", "available_stock_value"):
sum_field = "actual_qty" if field == "available_stock_qty" else "stock_value"
results = frappe.db.get_all(
@@ -135,7 +135,7 @@ def get_all_items(date_range, company, field, limit=None):
@frappe.whitelist()
def get_all_suppliers(date_range, company, field, limit=None):
def get_all_suppliers(date_range: str, company: str, field: str, limit: int | None = None):
filters = [["docstatus", "=", "1"], ["company", "=", company]]
from_date, to_date = parse_date_range(date_range)
@@ -171,7 +171,7 @@ def get_all_suppliers(date_range, company, field, limit=None):
@frappe.whitelist()
def get_all_sales_partner(date_range, company, field, limit=None):
def get_all_sales_partner(date_range: str, company: str, field: str, limit: int | None = None):
if field == "total_sales_amount":
select_field = "base_net_total"
elif field == "total_commission":
@@ -196,7 +196,7 @@ def get_all_sales_partner(date_range, company, field, limit=None):
@frappe.whitelist()
def get_all_sales_person(date_range, company, field=None, limit=0):
def get_all_sales_person(date_range: str, company: str, field: str | None = None, limit: int | None = None):
filters = [
["docstatus", "=", "1"],
["company", "=", company],

View File

@@ -191,7 +191,7 @@ def auto_fetch_serial_number(
posting_date: str | None = None,
batch_nos: str | list[str] | None = None,
for_doctype: str | None = None,
exclude_sr_nos=None,
exclude_sr_nos: str | None = None,
) -> list[str]:
filters = frappe._dict({"item_code": item_code, "warehouse": warehouse})

View File

@@ -118,7 +118,7 @@ class Issue(Document):
communication.save()
@frappe.whitelist()
def split_issue(self, subject, communication_id):
def split_issue(self, subject: str, communication_id: str):
# Bug: Pressing enter doesn't send subject
from copy import deepcopy

View File

@@ -427,7 +427,7 @@ def get_customer_territory(customer):
@frappe.whitelist()
def get_service_level_agreement_filters(doctype, name, customer=None):
def get_service_level_agreement_filters(doctype: str, name: str, customer: str | None = None):
if not frappe.db.get_single_value("Support Settings", "track_service_level_agreement"):
return
@@ -780,7 +780,7 @@ def get_response_and_resolution_duration(doc):
@frappe.whitelist()
def reset_service_level_agreement(doctype: str, docname: str, reason, user):
def reset_service_level_agreement(doctype: str, docname: str, reason: str, user: str):
if not frappe.db.get_single_value("Support Settings", "allow_resetting_service_level_agreement"):
frappe.throw(_("Allow Resetting Service Level Agreement from Support Settings."))
@@ -1034,7 +1034,7 @@ def get_tz(user):
@frappe.whitelist()
def get_user_time(user, to_string=False):
def get_user_time(user: str, to_string: bool = False):
return get_datetime_str(now_datetime(user)) if to_string else now_datetime(user)

View File

@@ -126,7 +126,7 @@ class CallLog(Document):
@frappe.whitelist()
def add_call_summary_and_call_type(call_log, summary, call_type):
def add_call_summary_and_call_type(call_log: str, summary: str, call_type: str):
doc = frappe.get_doc("Call Log", call_log)
doc.type_of_call = call_type
doc.save()

View File

@@ -65,7 +65,7 @@ def get_tasks(project, start=0, search=None, item_status=None):
@frappe.whitelist()
def get_task_html(project, start=0, item_status=None):
def get_task_html(project: str, start: int = 0, item_status: str | None = None):
return frappe.render_template(
"erpnext/templates/includes/projects/project_tasks.html",
{
@@ -105,7 +105,7 @@ def get_timesheets(project, start=0, search=None):
@frappe.whitelist()
def get_timesheet_html(project, start=0):
def get_timesheet_html(project: str, start: int = 0):
return frappe.render_template(
"erpnext/templates/includes/projects/project_timesheets.html",
{"doc": {"timesheets": get_timesheets(project, start)}},

View File

@@ -23,7 +23,7 @@ def get_context(context):
@frappe.whitelist(allow_guest=True)
def get_help_results_sections(text):
def get_help_results_sections(text: str):
out = []
settings = frappe.get_doc("Support Settings", "Support Settings")

View File

@@ -7,7 +7,7 @@ from frappe.utils import escape_html
@frappe.whitelist(allow_guest=True)
def send_message(sender, message, subject="Website Query"):
def send_message(sender: str, message: str, subject: str = "Website Query"):
from frappe.www.contact import send_message as website_send_message
website_send_message(sender, message, subject)

View File

@@ -42,7 +42,7 @@ def get_timezones():
@frappe.whitelist(allow_guest=True)
def get_appointment_slots(date, timezone):
def get_appointment_slots(date: str, timezone: str):
# Convert query to local timezones
format_string = "%Y-%m-%d %H:%M:%S"
query_start_time = datetime.datetime.strptime(date + " 00:00:00", format_string)
@@ -92,7 +92,7 @@ def get_available_slots_between(query_start_time, query_end_time, settings):
@frappe.whitelist(allow_guest=True)
def create_appointment(date, time, tz, contact):
def create_appointment(date: str, time: str, tz: str, contact: str):
format_string = "%Y-%m-%d %H:%M:%S"
scheduled_time = datetime.datetime.strptime(date + " " + time, format_string)
# Strip tzinfo from datetime objects since it's handled by the doctype