This work solves a case study of a transportation company that aims to plan the maximum number of jobs requested by customers that must be performed over a week in order to minimize the cost of assigning such jobs to vehicles. In this specific problem every customer pays for a job which is composed by a set of different operations (representing loading and unloading), which in turn has associated a location and a time window. Once a job is assigned to a vehicle, all operations must be completed by the same vehicle within the specific time window. We have addressed this problem using two approaches. The first approach addresses the problem globally by formulating its constraints and solving it using the Hexaly solver (a black-box optimizer), while the second approach makes a partition of the problem to make the best decision at each step using a matheuristic. To compare the pros and cons of each approach, different scenarios have been considered.