Para este caso, solo se necesita trabajar con la siguiente tabla
Tabla Orders
- id
- created
- finish
- customer_id
- state_id
- user_id
- cuenta_id
los productos de la orden se almacenan en una tabla de paso, entre orders y products.
Con esto puedo agrupar las OT's de cada mes, hasta el dia 20, pero me faltarian las del mes anterior desde el 20 en adelante, y las de todos los meses anteriores que no se encuentren cerradas.
Código:
<?php foreach($orders as $o): ?>
<?php $ano = substr($o['Order']['created'], -10, 4);$mes = substr($o['Order']['created'], -5, 2);$dia = substr($o['Order']['created'], -2, 2);?>
<!-- ENERO -->
<?php if ($mes == 01 && $dia <= 20): ?>
<?php echo $o['Order']['id']; ?>
<?php endif ?>
<!-- FEBRERO -->
<?php if ($mes == 02 && $dia <= 20): ?>
<?php echo $o['Order']['id']; ?>
<?php endif ?>
<!-- MARZO -->
<?php if ($mes == 03 && $dia <= 20): ?>
<?php echo $o['Order']['id']; ?>
<?php endif ?>
<?php endforeach; ?>