I want to filter assets in asset movement item based on user's location

// Check if doc.purpose has a value
if (frm.doc.purpose) {
// Get the current user’s location from the user’s doctype
const currentUser = frappe.session.user;
frappe.db.get_list(‘User’, {
filters: {
name: currentUser
},
fields: [‘location’],
limit: 1
}).then((results) => {
if (results && results.length > 0) {
const currentUserLocation = results[0].location;

                        // Filter assets by location
                        filters.location = currentUserLocation;
                    }
                });
            }
        
            return { filters };
        })

This code is showing filter = user’s location,
but not filtering actually

Anyone here who can help me?

Thanks
Shubham

You can try something like this.

frm.set_query("asset", "assets", () => {
	const currentUser = frappe.session.user;
	const userLocation = frappe.get_doc('User', currentUser).location;
	return  {
		filters : {
			status: ["not in", ["Draft"]],
			location: userLocation,
		}
	}
});

did not work, page blank after click on new asset movement

    frm.set_query("asset", "assets", () => {
        const filters = {
            status: ["not in", ["Draft"]],
            // location: frappe.db.get_value('User', frappe.session.user, 'location')
            location: frappe.db.get_single_value('User', frappe.session.user, 'location')

        };

This code is not working either.