ProductOptionプラグイン導入後に管理画面でエラーが発生
今回は下記の2パターンのエラーが発生
どちらも管理画面からの操作です。
1.受注詳細を見る
2.受注のステータスを「キャンセル」に変更
1のエラーは「ORMException in ORMException.php line 259」
これはエラーメッセージ生成しているプログラムだったような・・・
このエラー内容から原因を辿るのは難しいかな。
2のエラーは「FatalErrorException in OrderOptionRepository.php line 71」
$OptionCategory->getId()が取れないor空だよってエラーっぽい
こっちのほうが原因特定しやすそう。
IDが抜けている可能性があるので、DBでデータをたどって行く。
order_idからorder_detail_idを割り出す。
ProductOptionプラグインが原因っぽいので、plg_productoption系のテーブルを探っていく。
order_detail_idからorder_option_idを割り出す(plg_productoption_dtb_order_detail)
order_option_idで検索(plg_productoption_dtb_order_option)
serialカラムのデータ内容を確認
どうやらデータ内容が以前のオプション内容になっているっぽい。
運用途中でオプション内容を変えたのが原因かも。
serialの内容を修正
dtb_shipment_itemからitem_idを抽出
plg_productoption_dtb_shipment_itemを検索するもデータがない
ということでplg_productoption_dtb_shipment_itemにデータ登録(item_id, order_option_id)
これでどうするようになりました。
そして原因1も上記方法で解決できました。