日頃より弊社サービス「FANSHIP」をご愛顧いただき、誠にありがとうございます。
FANSHIPサポート担当です。
クーポンSDK(iOS)において、特定の条件下でクーポン詳細画面に表示される使用日時が不正となる不具合を確認いたしましたので、以下のとおりご報告いたします。
■ 影響対象のSDK
FANSHIP Coupon SDK for iOS すべてのバージョン
※Android SDK は影響ございません。
■ 影響内容
「クーポン利用上限枚数」に達したクーポンの詳細画面を表示した際、使用日時が 「1970年01月01日 09:00」 と表示されます。
通常、利用上限枚数に達したクーポンは非表示または非活性となり、クーポン詳細画面へは遷移できませんが、 クーポン一覧画面を表示したままの状態で上限に達した場合に限り、詳細画面を表示できてしまうため、本事象が発生します。
(再現手順)
1.クーポン利用上限枚数を設定したクーポンを作成
2.端末Aでクーポン一覧画面を開いたまま待機
3.端末Bで該当クーポンを利用し、利用上限枚数に到達
4.端末Aで該当クーポンをタップし、詳細画面を表示
■ 不具合発覚日
2025年12月26日
■ 暫定対応
以下のソースコードを修正いただくことで、本来の仕様どおり 「有効終了日時」 を表示させることが可能です。
【修正箇所】
CouponDetailViewController.swift
173行目以降
【修正前】
} else if (FanshipCouponUtils.isCouponUsed(coupon)) {
/// 使用済で利用不可
let dateString = FanshipCouponUtils.dateFormatter(coupon.lastUsedDate.intValue, formatter: kDefaultLongFormat)
usableEndDateLabel.text = kLastUserdDatetimeLabel + " " + dateString
【修正後】
} else if (FanshipCouponUtils.isCouponUsed(coupon)) {
/// 使用済で利用不可
let dateString = FanshipCouponUtils.dateFormatter(coupon.usableEndDate.intValue, formatter: kDefaultLongFormat)
usableEndDateLabel.text = kValidTerm + " " + dateString■ 今後の対応方針
暫定対応と同様の修正を反映したSDKを、次回リリースにて提供予定です。
以上となります。
ご迷惑をおかけして大変申し訳ございません。
不明点等がございましたら、お問い合わせいただけますようお願いします。