Ticket #781 (closed 改善提案: 修正済)

Opened 10 years ago

Last modified 10 years ago

規格のデータベースを木構造に

Reported by: nanasess Owned by: nanasess
Priority: Milestone: EC-CUBE2.11.0
Component: その他 Version: 2.4.3
Keywords: Cc:
修正済み:

Description

現在, 規格1, 2 は総当たりで表示しており, さらに規格を増やそうとした場合などの汎用性に乏しい.

木構造の実装にすれば, 検索速度や, 拡張性など, さまざまな問題が解決すると思われる.

データベースの変更は dtb_products_class あたりに親の ID や, 表示順序のカラムを追加するくらいで実現できるのではないかと思われる

Attachments

商品関連情報.pdf Download (98.0 KB) - added by nanasess 10 years ago.
カラムの順序などを修正

Change History

comment:1 Changed 10 years ago by nanasess

  • Priority changed from to

comment:2 Changed 10 years ago by nanasess

  • Owner changed from somebody to nanasess
  • Status changed from new to assigned

comment:3 Changed 10 years ago by nanasess

  • Milestone changed from EC-CUBE2.x.x to EC-CUBE2.5.0alpha

Changed 10 years ago by nanasess

カラムの順序などを修正

comment:4 Changed 10 years ago by nanasess

version-2_5-dev r18815 で修正をコミットしました.

下記の機能に問題が残っていますので, 引き続きの対応とします

  • モバイルサイトの規格選択
  • 管理画面 -> 受注管理からの商品選択
  • CSV ダウンロード
  • 商品ステータス

開発コミュ関連スレッド  http://xoops.ec-cube.net/modules/newbb/viewtopic.php?viewmode=thread&order=ASC&topic_id=6775&forum=14

comment:5 Changed 10 years ago by nanasess

comment:6 Changed 10 years ago by nanasess

r18820 で規格の無い商品が在庫切れとなってしまうのを修正しました

comment:7 Changed 10 years ago by nanasess

r18829 カートの中身を product_class_id で特定するよう修正しました

comment:8 Changed 10 years ago by nanasess

r18858 受注詳細でも product_class_id を使用するよう修正しました

comment:9 Changed 10 years ago by nanasess

r18862:18863 商品ステータスを対応しました

comment:10 follow-up: ↓ 11 Changed 10 years ago by Seasoft

管理機能「受注管理」で、既存の受注情報を変更しないまま保存した場合にも、不具合があるようです。

▼▼▼ エラーメッセージ ▼▼▼
https://1.eccube.local/ec25d/admin/order/edit.php?

SERVER_ADDR: *
REMOTE_ADDR: *
USER_AGENT: Mozilla/5.0 (Windows; U; Windows NT 5.1; en-US) AppleWebKit/534.7 (KHTML, like Gecko) Chrome/7.0.517.41 Safari/534.7

SQL: SELECT * FROM dtb_order_detail WHERE order_id = ? AND product_id = ? AND classcategory_id1 = ? AND classcategory_id2 = ?   

MDB2 Error: no such field

prepare: [Error message: Unable to create prepared statement handle]
[Last executed query: EXECUTE mdb2_statement_pgsql_137f540846d5a7fc139a621cc2020154425e2871e3 ('1')]
[Native message: ERROR:  column "classcategory_id1" does not exist
LINE 1: ...etail WHERE order_id = $1 AND product_id = $2 AND classcateg...
                                                             ^]


/home/eccube/ec25d/html/admin/order/edit.php 34:LC_Page_Admin_Order_Edit_Ex->process
/home/eccube/ec25d/data/class_extends/page_extends/admin/order/LC_Page_Admin_Order_Edit_Ex.php 56:LC_Page_Admin_Order_Edit->process
/home/eccube/ec25d/data/class/pages/admin/order/LC_Page_Admin_Order_Edit.php 170:LC_Page_Admin_Order_Edit->lfRegistData
/home/eccube/ec25d/data/class/pages/admin/order/LC_Page_Admin_Order_Edit.php 560:SC_Query->select
/home/eccube/ec25d/data/class/SC_Query.php 143:SC_Query->getAll
/home/eccube/ec25d/data/class/SC_Query.php 222:SC_Query->prepare
/home/eccube/ec25d/data/class/SC_Query.php 759:MDB2_Driver_pgsql->prepare
/home/eccube/ec25d/data/module/MDB2/Driver/pgsql.php 965:MDB2_Driver_Common->raiseError
/home/eccube/ec25d/data/module/MDB2.php 1497:PEAR->raiseError
/home/eccube/ec25d/data/module/PEAR.php 557:MDB2_Error->MDB2_Error
/home/eccube/ec25d/data/module/MDB2.php 1009:PEAR_Error->PEAR_Error
▲▲▲ エラーメッセージ ▲▲▲

comment:11 in reply to: ↑ 10 Changed 10 years ago by nanasess

Seasoft への返信

管理機能「受注管理」で、既存の受注情報を変更しないまま保存した場合にも、不具合があるようです。

とり急ぎ, r18872 で受注情報の更新ができるようにしました. 商品追加時の規格のプルダウンが選択できないデグレが発生しているので対応中です.

comment:12 Changed 10 years ago by nanasess

r18872 で発生した規格のプルダウンを修正しました(r18875)

また, フロントの商品一覧表示と同様のロジックを採用し, パフォーマンスを改善しました.

comment:13 Changed 10 years ago by nanasess

r19653 不具合修正 shutta様

comment:14 Changed 10 years ago by nanasess

r19662 で, 以下に対応しました.

  • sfCategory_Countの高速化
  • IN句が長くなり正常に動かない問題を修正

開発合宿 D チームの成果物です

comment:15 follow-up: ↓ 22 Changed 10 years ago by Seasoft

サンプル商品「アイスクリーム」の規格2の出現順序が異常なようです。「選択してください」が一番下にあり、初期選択されていません。(PCサイト商品詳細画面で確認)

comment:16 Changed 10 years ago by Seasoft

商品規格がある商品のポイント付与率の変更がスルーされるようです。

comment:17 Changed 10 years ago by nanasess

comment:18 Changed 10 years ago by yomoro

r19796でスマートフォン版において規格選択ができなくなっていた問題を修正。

comment:19 Changed 10 years ago by yomoro

r19796 でスマートフォン版において規格選択ができなくなっていた問題を修正。

comment:20 follow-up: ↓ 21 Changed 10 years ago by Seasoft

フォーラムにて、samsam1 様から不具合報告あり。r19691 辺りか?(未確認)

http://xoops.ec-cube.net/modules/newbb/viewtopic.php?forum=8&post_id=35573&topic_id=7395#forumpost35573

▼---フォーラム情報--------------------------------------------

投稿者名  : samsam1様
フォーラム名: フロント機能
スレッド名 : カテゴリー表示で
タイトル  :カテゴリー表示で


▼---投稿内容-------------------------------------------------

管理画面の商品管理 > 商品マスタで検索し
アイスクリームの編集をしたらフロント側の商品カテゴリーの所が
食品(1)となってしまいました。
食品(1)をクリックすると
おなべ(1) だけ出てきます。
右側の食品一覧にはちゃんと出てきます。

本来、食品(2)となりクリックした際に
おなべ(1)
お菓子(1)
となるはずだと思うのですが・・・

管理画面側は、>食品>お菓子>アイス で登録してあります。

また、>食品>お菓子 を商品登録時に追加すれば正常になるのですがこういう仕様になったのでしょうか?



############################################################
2.11.0-beta  
OS  CentOS 5.4 x86_64  
DBサーバ  PostgreSQL 8.1.11  
WEBサーバ  Apache2  
PHP  5.1.6 
############################################################

comment:21 in reply to: ↑ 20 Changed 10 years ago by nanasess

  • Status changed from assigned to closed
  • Resolution set to 修正済

Seasoft への返信

フォーラムにて、samsam1 様から不具合報告あり。r19691 辺りか?(未確認)

#928 に引き継ぎますので, こちらは close します

comment:22 in reply to: ↑ 15 Changed 10 years ago by Seasoft

Seasoft への返信

サンプル商品「アイスクリーム」の規格2の出現順序が異常なようです。「選択してください」が一番下にあり、初期選択されていません。(PCサイト商品詳細画面で確認)

クライアント環境依存でした。#929で扱います。

Note: See TracTickets for help on using tickets.