Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

受注編集時に不必要なデータが更新される #4059

Closed
nobuhiko opened this issue Dec 21, 2018 · 8 comments
Closed

受注編集時に不必要なデータが更新される #4059

nobuhiko opened this issue Dec 21, 2018 · 8 comments
Labels
bug:Low good-first-issue Good for newcomers/簡単に修正できそうなもの Status: dev-ready
Milestone

Comments

@nobuhiko
Copy link
Contributor

nobuhiko commented Dec 21, 2018

概要(Overview)

受注編集時に不必要なデータが更新される

期待する内容(Expect) or 要望 (Requirement)

再現手順(Procedure)

環境 (environment)

  • EC-CUBE: 4.x.x

関連情報 (Ref)

src/Eccube/Form/Type/Admin/OrderType.php

    // 会員受注の場合、会員の性別/職業/誕生日をエンティティにコピーする
    if ($Customer = $Order->getCustomer()) {
        $Order->setSex($Customer->getSex());
        $Order->setJob($Customer->getJob());
        $Order->setBirth($Customer->getBirth());
    }
@hiro-t59 hiro-t59 modified the milestones: 4.0.2, 4.0.x Dec 25, 2018
@chihiro-adachi chihiro-adachi modified the milestones: 4.0.x, 4.0.2 Feb 8, 2019
@chihiro-adachi chihiro-adachi added the good-first-issue Good for newcomers/簡単に修正できそうなもの label Feb 8, 2019
@chihiro-adachi chihiro-adachi modified the milestones: 4.0.2, 4.0.3 Feb 27, 2019
@nobuhiko
Copy link
Contributor Author

$Customer->getSex() など値がない時に、システムエラーが発生する

@kazumiiiiiiiiiii
Copy link
Contributor

kazumiiiiiiiiiii commented Aug 15, 2019

@nobuhiko さん、いつもありがとうございます。
こちら、以下の再現方法で検証してみましたが、システムエラーは確認できませんでした。

  1. 会員登録時に「生年月日」「性別」「職業」を未設定のまま登録を行う。
     (dtb_customerを確認。sex_id, job_id, birthがそれぞれNULLの状態)
  2. 商品を登録した会員で購入。
  3. 「管理画面/受注管理」から、2で登録された注文情報を編集し、保存。

こちらのシステムエラーの問題は、すでに解決済みでしょうか?
@nobuhiko さんが確認されている、発生する環境や再現手順などあれば、教えていただけないでしょうか?

または、「受注編集時に不必要なデータが更新される」という仕様の変更してほしいということでしょうか?

@nobuhiko
Copy link
Contributor Author

@kazumiiiiiiiiiii debugモードだとエラーが出ないでしょうか?なにぶんこれを書いたのが2018年だったので、記憶がありません。

@kazumiiiiiiiiiii
Copy link
Contributor

kazumiiiiiiiiiii commented Aug 19, 2019

@nobuhiko ご確認ありがとうございます。

なにぶんこれを書いたのが2018年だったので、記憶がありません。

回答が遅くなり、申し訳ありません。

.envでAPP_ENV=devで実行してみましたが、システムエラーは発生しませんでした。

「受注編集時に不必要なデータが更新される」状態に関しては、仕様として問題があると思うので、4.0.x以降となりますが、修正を行なっていきたいと考えております。

@kazumiiiiiiiiiii kazumiiiiiiiiiii removed the good-first-issue Good for newcomers/簡単に修正できそうなもの label Aug 20, 2019
@kazumiiiiiiiiiii kazumiiiiiiiiiii modified the milestones: 4.0.3, 4.0.x Aug 20, 2019
@kazumiiiiiiiiiii kazumiiiiiiiiiii added the good-first-issue Good for newcomers/簡単に修正できそうなもの label Aug 20, 2019
@okazy okazy removed the good-first-issue Good for newcomers/簡単に修正できそうなもの label Mar 23, 2021
@okazy
Copy link
Contributor

okazy commented Mar 23, 2021

新規受注の場合には必要な処理なので、「受注の性別/職業/誕生日が設定されていなければ情報を更新」にするのがいいかと思います。
認識が間違っていました。一つ下のコメントを参照 (2021/03.24 追記)

// 会員受注の場合、会員の性別/職業/誕生日をエンティティにコピーする
if ($Customer = $Order->getCustomer()) {
$Order->setSex($Customer->getSex());
$Order->setJob($Customer->getJob());
$Order->setBirth($Customer->getBirth());
}

@okazy okazy added the good-first-issue Good for newcomers/簡単に修正できそうなもの label Mar 23, 2021
@okazy
Copy link
Contributor

okazy commented Mar 24, 2021

Issue 検討会より

$Order->getCustomer() が null の場合は非会員購入を表す。
初回受注作成時の判定は $Order->getId() のチェックで行える。

if ($Customer = $Order->getCustomer()) {

@chihiro-adachi
Copy link
Contributor

chihiro-adachi commented Nov 16, 2021

Sex/Job/Birthは、受注の新規登録時かつ会員購入時のみ更新する

@chihiro-adachi
Copy link
Contributor

#4997 で修正しました。

@chihiro-adachi chihiro-adachi modified the milestones: 4.0.x, 4.1.1 Dec 1, 2021
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
bug:Low good-first-issue Good for newcomers/簡単に修正できそうなもの Status: dev-ready
Projects
None yet
Development

No branches or pull requests

5 participants