Ticket #1448 (closed バグ指摘: 修正済)

Opened 9 years ago

Last modified 9 years ago

ダウンロード商品の複製時にダウンロード商品用ファイルを変更すると複製元のファイルが削除される

Reported by: shutta Owned by: shutta
Priority: Milestone: EC-CUBE2.11.3
Component: 管理画面 Version: 2.11.2
Keywords: Cc:
修正済み: yes

Description

コミュニティより転載

ダウンロード商品の複製
 http://xoops.ec-cube.net/modules/newbb/viewtopic.php?topic_id=8684&forum=9

EC-CUBE Ver2.11.2
DBサーバー MySQL 5.5.10 

既出であったならもうしわけありません。

1.管理画面でダウンロード商品を複製する
2.複製したダウンロード商品の「ダウンロード商品用ファイルアップロード 」しファイルを変更する。
3.登録する。

上記作業にて、複製前の商品のファイルが削除されます。
また編集画面にて[ファイルの取り消し]をした場合も、
既存商品も同様のファイルを参照しているので、ダウンロード不可となります。

Change History

comment:1 Changed 9 years ago by shutta

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

comment:2 Changed 9 years ago by shutta

前半の、ダウンロード商品用ファイルを変更した際に、複製元のファイルが削除されてしまうのは、 r21202 にて修正。

後半の、[ファイルの取り消し]した場合に関して、

  1. 管理画面でダウンロード商品を複製する
  2. 「ダウンロード商品用ファイルアップロード」の欄は、何も変更せずに登録する。

上記作業にて、複製元と複製した商品が同じダウンロード商品用ファイルを参照する形で登録される。

このような状態になった場合、どちらかの商品のダウンロード商品用ファイルを「ファイルの取り消し」すると実ファイルが削除されるので、もう一方の商品はファイルがリンク切れした状態になる。

修正するとすれば、なんらかの仕様変更を検討しないといけない気がします。

  1. 商品の複製時には、ダウンロード商品用ファイルアップロードのファイル情報部分は複製せずに、
    新規にアップロードさせる仕様に変える。
  1. 商品の複製時には、ダウンロード商品用ファイルアップロードのファイルを変更しなかった場合には、
    複製元のファイルを別名でコピーして登録する。

どちらの修正が良いだろうか。

comment:3 Changed 9 years ago by shutta

商品画像も複製時に同様なことになるのではないか、挙動を調べてみました。

[商品画像を変更せずに複製した場合]

複製元と同じ画像ファイル名で登録される。
編集で、「画像の取り消し」をして更新してみると、dtb_productsから画像ファイル名が消されるだけで、実ファイルは削除されなかった。 ファイルは消されないので、もう一方の商品の画像はリンク切れにならない。

[商品画像を変更して複製した場合]

複製元と別の画像が登録され、複製元の画像も削除されず正常に登録できた。

更新時や、取り消し処理を比較してみると、

商品画像の取り消し処理では、実ファイルが削除されることはない。 ダウンロード商品用ファイルは、実ファイルが削除される。

と、実ファイルの扱いに違いがありますね。

なので、

  1. ダウンロード商品用ファイルの実ファイルを削除する処理を外してしまう

という案もありなのかなと思います。

comment:4 Changed 9 years ago by shutta

コミュニティーのスレッドの、patapataさんの

「複製」を使うときは、同一商品を作りたいわけじゃなく、既存商品を元に別の商品を作るというケースだと思うので・・・

という意見に同意なので、

r21214 にて、ダウンロード商品の複製時に、「ファイルの取り消し」をすると複製元のファイルが消されてしまうのを修正。 ダウンロード商品の複製時には、複製元のダウンロード商品情報をコピーしないようにして、新規に入力・アップロードさせるようにした。

comment:5 Changed 9 years ago by shutta

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

comment:6 Changed 9 years ago by shutta

  • Status changed from closed to reopened
  • Resolution 修正済 deleted

comment:7 Changed 9 years ago by shutta

  • 修正済み set

comment:8 Changed 9 years ago by h_yoshimoto

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

確認しました。
クローズします。ありがとうございました。

Note: See TracTickets for help on using tickets.