Files
bodyshop/hasura/migrations/1654022042838_run_sql_migration/up.sql
2022-05-31 12:38:07 -07:00

39 lines
723 B
PL/PgSQL

CREATE OR REPLACE FUNCTION public.search_inventory (search text)
RETURNS SETOF inventory
LANGUAGE plpgsql
STABLE
AS $function$
BEGIN
IF search = '' THEN
RETURN query
SELECT
*
FROM
inventory;
ELSE
RETURN query
SELECT
*
FROM
inventory i,
billlines bl,
bills b,
vendors v
WHERE
i.billlineid = bl.id
AND bl.billid = b.id
AND b.vendorid = v.id
AND i.line_desc ILIKE '%' || search || '%'
OR b.invoice_number ILIKE '%' || search || '%'
OR v.name ILIKE '%' || search || '%'
ORDER BY
i.line_desc ILIKE '%' || search || '%'
OR NULL,
b.invoice_number ILIKE '%' || search || '%'
OR NULL,
v.name ILIKE '%' || search || '%'
OR NULL;
END IF;
END
$function$;