質問 > 管理機能 > 受注マスター一覧にお届け日の検索、表示を追加したいです。 |
管理機能
スレッド表示 | 新しいものから | 前のトピック | 次のトピック | 下へ |
投稿者 | スレッド |
---|---|
behappy |
投稿日時: 2018/10/27 2:15
対応状況: −−−
|
新米 登録日: 2018/10/27 居住地: 投稿: 2 |
受注マスター一覧にお届け日の検索、表示を追加したいです。 ▼テンプレート
[EC-CUBE] 3.0.15 [OS] Windows Server 2008 R2 Standard Edition [PHP] 5.6.36 [データベース] MySQL 5.6.10 [WEBサーバ] IIS お世話になっております。 いつもありがとうございます。 受注マスター一覧ででお届け日の検索、表示を追加したいです。 お届け日情報はdtb_shippingテーブルのshipping_delivery_dateでorder_idで関係があるので src¥Eccube¥Repository¥OrderRepository.phpのgetQueryBuilderBySearchDataForAdmin()にdtb_shipping.shipping_delivery_dateも取得するように修正を考えました。 SymponyのDoctrineは初めてなので調べながら試してみましたができませんでした。 1. $qb = $this->createQueryBuilder('o'); $qb->addSelect('(select s.shipping_delivery_date from Eccube\\Entity\\Shipping s where s.Order=o.id) as delivery_date'); 2. $qb = $this->createQueryBuilder('o'); $qb ->addSelect('s.shipping_delivery_date') ->innerJoin('Eccube\\Entity\\Shipping','s','WITH','s.Order=o.id'); どちらもですが dtb_shipping.shipping_delivery_dateをShippingのEntityから取得する方法がわかりません。 s.Order s.order_id s.Order.id など全部できませんでした。 大変申し訳ございませんがごアドバイスお願い致します。 |
minori |
投稿日時: 2018/10/30 9:53
対応状況: −−−
|
常連 登録日: 2017/10/12 居住地: 投稿: 40 |
Re: 受注マスター一覧にお届け日の検索、表示を追加したいです。 テーブルの結合は以下のように記述すればできると思います。
上記クエリに検索条件(s.shipping_delivery_date)を 追加してみてください。 お届け日の取得についてですが、 getQueryBuilderBySearchDataForAdminメソッドで 生成したクエリを実行すれば、何も追加しなくても ShippingEntityの情報もすでに取得出来ていると思います。 twigで記述するなら、以下のような書き方で 取得できるはずです。 ※OrderとShippingの関係は一対多なので、添え字が必要です
試してみてください。 |
behappy |
投稿日時: 2018/10/30 11:43
対応状況: 解決済
|
新米 登録日: 2018/10/27 居住地: 投稿: 2 |
Re: 受注マスター一覧にお届け日の検索、表示を追加したいです。 minori様
大変助かりました。 ありがとうございます! ご説明とおりにして対応できました。 検索 --------------------- お届け希望日 --------------------- 一覧表示 --------------------- お届け希望日 お届け時間 お届け先 --------------------- の処理が必要だったので RepositoryのOrderRepository.php -------------------------- $qb ->innerJoin('o.Shippings','s'); $qb ->innerJoin('o.Pref','p'); -------------------------- を更新 検索 -------------------------- andWhere('s.shipping_delivery_date >= :delivery_date_start') ->andWhere('s.shipping_delivery_date < :delivery_date_end') -------------------------- 一覧表示 templateのOrder\index.twig -------------------------- Order.Shippings[0].shipping_delivery_date Order.Shippings[0].shipping_delivery_time OrOrder.Shippings[0].Pref.name -------------------------- の更新して対応できました。 ありがとうございました。 良い一日をお過ごしてください。 |
スレッド表示 | 新しいものから | 前のトピック | 次のトピック | トップ |