Description
opened by wada at 2021-04-13T12:38:41; updated 2024-05-10T17:15:18
概要
レイドイベント終了翌日に期限付きの蒼玉を10,000GOLDに変換する
変換方法
所持している場合:直接ゴールドを付与
プレゼントにある場合:プレゼントをゴールドに変換
未受け取りの報酬の場合:受け取り時にゴールドに変換
処理
ランキング報酬配布前後にスクリプト実行
ローカル
確認時にイベントが終了している必要があるため、レイド開催期間の調整が必要
ENVIRONMENT=develop PF=yamada HTTP_HOST=127.0.0.1 IS_DOCKER=true php event_item_change_gold.inc
開発
ENVIRONMENT=develop PF=yamada php event_item_change_gold.inc
本番
ENVIRONMENT=production PF=yamada php event_item_change_gold.inc
wada change_title at 2021-04-13T12:42:47: レイドイベント終了後に蒼玉をゴールドに変換
【4/16】レイドイベント終了後に蒼玉をゴールドに変換
Comment
#10292 by wada at 2021-04-13T12:49:51; updated 2021-04-13T12:49:51
@iwamoto @kouho
レビューお願いします。
ゴールド変換される箇所は4箇所です。
・所持アイテム
・プレゼント
・討伐済レイドの報酬受け取り
・討伐済チームレイドの報酬受け取り
討伐済レイドの確認をする場合、討伐後に報酬を受け取らずにイベント期間を調整した後で受け取る必要があります。
Comment
#10304 by kouho at 2021-04-13T17:24:46; updated 2021-04-13T17:24:46
@wada
イベント期間終了後に期限付き蒼玉リカバリをプレゼントから受け取ると、
GOLDが増えるわけでもなく消失してしまったように見えます。
また、本番では大丈夫だと思いますが、所持アイテムに期限付き蒼玉リカバリを所持したユーザーがいない状態で変換バッチを実行した場合にmysqlエラーとなりましたのでこちらは一応修正している方が良いかもしれません。
Comment
#10305 by wada at 2021-04-13T17:29:59; updated 2021-04-13T17:29:59
@kouho
蒼玉をプレゼントから受け取った際の挙動について教えてください。
・期限はいつまでか
・GOLD置換前か
・なぜ消失したように見えるか
・アイテム一覧に表示されているか
・GOLD置換はされたか
Comment
#10308 by kouho at 2021-04-13T17:44:45; updated 2021-04-13T18:12:37
@wada
すみません、どうやら勘違いと確認の手順が誤っていたようです。
~~期限付き蒼玉リカバリのIDを間違えていて、
水曜日までと日曜日までどちら両方ともで確認していましたが、
user_itemのitem_noとmaster_itemのitem_noが一致しているわけではないことに気付かず
プレゼントから期限付き蒼玉リカバリ206と207を受け取った後にuser_itemで206と207を探していました。~~
↑
item_noが間違えていたわけではなく、参照しているテーブルが異なっていた
Comment
#10309 by kouho at 2021-04-13T17:55:48; updated 2021-04-13T18:01:17
@wada
度々すみません。僕の勘違いもあったのですが、
所持している期限付きアイテムはuser_itemではなくuser_weekday_limited_itemに入っているため
event_item_change_gold.incスクリプトのhas_item関数とdel_target_item_by_all_user関数を修正する必要があると思います。
Comment
#10311 by kouho at 2021-04-13T18:58:39; updated 2021-04-13T18:58:39
@wada
・討伐済レイドの報酬受け取り
・討伐済チームレイドの報酬受け取り
こちら確認しました。問題ないかと思います。
Comment
#10316 by iwamoto at 2021-04-13T19:57:52; updated 2021-04-13T19:57:52
@wada
レビュー対応行いました。
プレゼントをゴールドに変換は問題ないおもます。
上記で上がっている指摘を除きまして1点修正が必要かと思います。
1.レイドの報酬受け取り
こちらの条件式では期間外に受け取りをした場合、他の期限付きアイテムも10000GOLDに変換されてしまいます。
# Raid-GetMedal.inc(175) / Raid-GetMedalVs.inc(112)
if ($present_item['item_type'] == PresentBoxContent::TYPE_ITEM && WeekdayLimitedItemConfig::get()->isLimitedItem($present_item['item_no'])){
wada assign at 2021-04-14T10:54:47: Not assigned:wada
Comment
#10326 by wada at 2021-04-14T10:57:46; updated 2021-04-14T10:57:46
@iwamoto @kouho
2点修正しました。
・イベント終了後のダメージポイント報酬受け取り時の期限付きアイテム判定
・ゴールド変換バッチの期限付きアイテムテーブルの切り分け
確認お願いします。
Comment
#10328 by iwamoto at 2021-04-14T11:50:10; updated 2021-04-14T11:50:10
@wada
2点の修正を確認しました。
いずれも問題ないと思います。
Comment
#10333 by kouho at 2021-04-14T13:48:52; updated 2021-04-14T13:48:52
@wada
修正確認しました。問題ないかと思います。
kouho add_label at 2021-04-14T16:17:34: 皇甫 LGTM
wada merge at 2021-04-14T18:31:36: 【4/16】レイドイベント終了後に蒼玉をゴールドに変換
wada close at 2021-04-14T18:31:36: Close