Class OrderShippedJob

All Implemented Interfaces:
BusinessObject, BusinessProcessor, org.quartz.Job

@DisallowConcurrentExecution public class OrderShippedJob extends AbstractOrderEmailJob
Sends customers emails if their order is in a specific shipped status as defined in settings and last modified is within the previous 24 hours and the tracking number is filled in. This job will only send this for an order 1 time, based on the 'emailType' of 'OrderShippedJob', which is defined in the Settings. This is essential because if an order is modified for any reason, it will get pulled by the query again. Typically, configure this job to run daily. For example, if it runs at 10:30pm, the orders it pulls will be those that were last modified between 10pm the previous day and 11pm today. It goes forwards to the top of the next hour for the endDate and backwards from that 25 hours for the startDate. In this way it should not matter what time of day it's run. Yes, there is some overlap, but again we check to make sure this job only sends the email once. It could be run hourly too, but it will pull orders repeatedly if it is, so it will be less efficient.
Author:
jmcwill, dtobey