summaryrefslogtreecommitdiff
path: root/includes
diff options
context:
space:
mode:
authorLester Caine <lester@lsces.co.uk>2026-06-03 20:39:40 +0100
committerLester Caine <lester@lsces.co.uk>2026-06-03 20:39:40 +0100
commit48b2cf7753d4c83b73453e32c47af38b911be582 (patch)
treebf26e279a9b9f21e748b594d9ed29599cc7d1f9c /includes
parentfcd97be1f1fd1587cc9954adfa84447c4b98d9c9 (diff)
downloadstock-48b2cf7753d4c83b73453e32c47af38b911be582.tar.gz
stock-48b2cf7753d4c83b73453e32c47af38b911be582.tar.bz2
stock-48b2cf7753d4c83b73453e32c47af38b911be582.zip
stock: add Ordered/Received sort and ref_start_date to list_movements
- StockMovement::getList() adds ref_start_date correlated subquery from liberty_xref.start_date on the reference row - event_time sort handled explicitly (lc. prefix needed for Firebird) - list_movements.tpl: Ordered column, sortable Received column, colspan fix Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
Diffstat (limited to 'includes')
-rw-r--r--includes/classes/StockMovement.php16
1 files changed, 12 insertions, 4 deletions
diff --git a/includes/classes/StockMovement.php b/includes/classes/StockMovement.php
index 6e07cbf..ddeab21 100644
--- a/includes/classes/StockMovement.php
+++ b/includes/classes/StockMovement.php
@@ -238,9 +238,14 @@ class StockMovement extends LibertyContent {
$this->getServicesSql( 'content_list_sql_function', $selectSql, $joinSql, $whereSql, $bindVars );
- $orderby = !empty( $pListHash['sort_mode'] )
- ? " ORDER BY ".$this->mDb->convertSortmode( $pListHash['sort_mode'] )
- : ' ORDER BY lc.`last_modified` DESC';
+ $sortMode = $pListHash['sort_mode'] ?? '';
+ $orderby = match( $sortMode ) {
+ 'event_time_asc' => ' ORDER BY lc.event_time ASC',
+ 'event_time_desc' => ' ORDER BY lc.event_time DESC',
+ default => !empty( $sortMode )
+ ? ' ORDER BY '.$this->mDb->convertSortmode( $sortMode )
+ : ' ORDER BY lc.last_modified DESC',
+ };
if( !empty( $whereSql ) ) {
$whereSql = substr_replace( $whereSql, ' WHERE ', 0, 4 );
@@ -267,7 +272,10 @@ class StockMovement extends LibertyContent {
ORDER BY x.`xorder`) AS ref_type,
(SELECT FIRST 1 x.`xkey` FROM `{$X}liberty_xref` x
WHERE x.`content_id` = lc.`content_id` AND x.`item` IN ('REQN','TRANS','ORDER')
- ORDER BY x.`xorder`) AS ref_key
+ ORDER BY x.`xorder`) AS ref_key,
+ (SELECT FIRST 1 x.`start_date` FROM `{$X}liberty_xref` x
+ WHERE x.`content_id` = lc.`content_id` AND x.`item` IN ('REQN','TRANS','ORDER')
+ ORDER BY x.`xorder`) AS ref_start_date
$cmpQtySelect
$selectSql
FROM `{$X}liberty_content` lc