"... in this case we would subject the date to 7 days and ignore the date passed by the form entirely no? ..." Yes
If you want to limit between dates, you have to include it in the SQL.
If you want to give option for the user to select the date range, use the Criteria.
Between the fact that I use google to translate and that I don't have much experience with SQL, it's hard for me to follow your query. But there is a lot of information on the internet about SQL for dates.
Continuing with my example, you might need something like this, with DATE_SUB or DATE_ADD:
from albaranescli alb
and alb.fecha BETWEEN DATE_SUB(CURDATE(), interval 40 day) and CURDATE()