EC-CUBE3.0.xの受注マスターはまだまだ高機能とはいえません。
並び替えができないなどの問題がありますので、今回は受注マスターの並び順変更方法をお知らせします。
受注マスターの並び順はEccube/Repository/OrderRepository.phpのメソッド、getQueryBuilderBySearchDataForAdminによって決まっています。
OrderRepositoryというのはEC-CUBEで受注に関するデータ取得やデータ更新を担っているクラスです。
// Order By $qb->orderBy('o.update_date', 'DESC'); // ① $qb->addorderBy('o.id', 'DESC'); // ②
EC-CUBE3.0.14では、上記のように①更新日順 ②(1が同じ場合は)受注ID の順番で受注マスタの並び順を指定しています。
並び変えたい場合はこのコードを変更してやればOKです。
並び替え方法
それでは、具体的に注文日・発送日・支払い日で並び変える方法です。
下記のように記述してください。
・注文日が新しい順で並び替えたい場合
注文日順での並び替えは当然必要だと思います。
$qb->orderBy('o.order_date', 'DESC'); // 注文日
・発送日が新しい順で並び替えたい場合
$qb->orderBy('o.commit_date', 'DESC'); // 発送日
・支払い日が新しい順で並び替えたい場合
$qb->orderBy('o.payment_date', 'DESC'); // 支払い日
・注文金額が多い順で並び替えたい場合
$qb->orderBy('o.payment_total', 'DESC'); // 支払い金額合計
いかがでしょうか。受注マスターの順番が変更されたと思います。
管理画面が便利になりますのでEC-CUBE3をご利用の方はぜひお試しください。
受注マスターの並び替えができるプラグイン
https://www.ec-cube.net/products/detail.php?product_id=1376
EC-CUBEに関するお問い合わせ
[重要]現在公式にセキュリティサポートが切れていないPHPは8.1以上、MySQLは8.0以上で、対応しているEC-CUBEバージョンは4.2以上です。古いEC-CUBEを使っている方は適切なタイミングでバージョンアップをご検討ください。