PR

【4/9】建築イベント開催時新人応援ログインボーナス #4597

kouho opened this at 2026-04-07T11:22:40; closed

Description

opened by kouho at 2026-04-07T11:22:40; updated 2026-04-10T13:40:00

概要

以下の建築イベント期間中の新人応援仕様の実装

  • multiple_loginをCampaignQuestConfigのcallbackを参考に変更
  • 初回ログイン時の累計ログインのカウントにはuser_info.login_countを利用
  • user_info.login_countはゲソてんの特定条件のユーザーデータのみを修正
開催期間				
4月13日(月)	15:00:00	~	4月22日(水)	23:59:59

■新規ユーザへの緩和施策(継続)
・対象:累計ログイン日数90日未満のユーザー
・建築イベント開始日から終了日まで、毎日ログインすると特急時計【期限付き】1個がもらえる。

SQL

ALTER TABLE `multiple_login_bonus`
ADD COLUMN `first_login_count` int(11) DEFAULT NULL
COMMENT 'イベント期間中の初回ログイン時点の累計ログイン数'
AFTER `login_data`;

user_info.login_countの修正

ゲソてんのユーザーのみを対象にuser_info.login_countを正しいものにするように

スタートダッシュログインボーナスで表示されることを踏まえ、修正後のlogin_countが7より上のユーザーのみを対象
周年ログインボーナスなどでヤマダのlogin_countを既存ユーザーは確認している可能性があるため、ゲソてんのみを対象

想定UPDATEクエリ

jr-dbm01 サーバーで直接実行予定

UPDATE jrye.user_info ui
INNER JOIN (
    SELECT
        t.user_no,
        SUM(t.cnt) AS total_cnt
    FROM (
        /* DB1 */
        SELECT
            dl.user_no,
            COUNT(*) AS cnt
        FROM jrye.dau_login dl
        INNER JOIN jrye.user_setting us
            ON us.user_no = dl.user_no
        WHERE
            us.tutorial_fin_time > 0
            AND dl.date >= FROM_UNIXTIME(us.tutorial_fin_time, '%Y-%m-%d')
            AND EXISTS (
                SELECT 1
                FROM jrye.user_platform up
                WHERE up.user_no = dl.user_no
                  AND up.pid = 'gesoten'
            )
        GROUP BY dl.user_no

        UNION ALL

        /* DB2 */
        SELECT
            dl.user_no,
            COUNT(*) AS cnt
        FROM jrye_log.dau_login dl
        INNER JOIN jrye.user_setting us
            ON us.user_no = dl.user_no
        WHERE
            us.tutorial_fin_time > 0
            AND dl.date >= FROM_UNIXTIME(us.tutorial_fin_time, '%Y-%m-%d')
            AND EXISTS (
                SELECT 1
                FROM jrye.user_platform up
                WHERE up.user_no = dl.user_no
                  AND up.pid = 'gesoten'
            )
        GROUP BY dl.user_no
    ) t
    GROUP BY t.user_no
    HAVING SUM(t.cnt) > 7
) x
    ON ui.user_no = x.user_no
SET ui.login_count = x.total_cnt
WHERE COALESCE(ui.login_count, 0) <> COALESCE(x.total_cnt, 0);
kouho change_title at 2026-04-07T13:36:50: [WIP]建築イベント開催時新人応援ログインボーナス 建築イベント開催時新人応援ログインボーナス
kouho change_title at 2026-04-07T13:37:39: 建築イベント開催時新人応援ログインボーナス 【4/10】建築イベント開催時新人応援ログインボーナス
kouho change_title at 2026-04-07T13:38:00: 【4/10】建築イベント開催時新人応援ログインボーナス 【4/9】建築イベント開催時新人応援ログインボーナス

Comment

#45067 by kouho at 2026-04-07T13:38:07; updated 2026-04-07T13:38:07

@wada
レビューお願いいたします

Comment

#45082 by wada at 2026-04-07T15:44:40; updated 2026-04-07T15:44:40

@kouho
イベント番号や日付の更新がpushされていないようです。

wada add_label at 2026-04-07T15:44:43: コメントあり

Comment

#45084 by kouho at 2026-04-07T16:17:44; updated 2026-04-07T16:17:44

@wada
すみません、以下修正プッシュしました。
あわせて、multiple_login_bonusが長くなっているため、configに移動させております。
> イベント番号や日付の更新がpushされていないようです。

Comment

#45094 by wada at 2026-04-08T11:35:21; updated 2026-04-08T11:35:21

@kouho
確認OKです。

wada delete_label at 2026-04-08T11:35:25: コメントあり
wada add_label at 2026-04-08T11:35:26: 和田 LGTM
kouho merge at 2026-04-10T13:40:00: 【4/9】建築イベント開催時新人応援ログインボーナス
kouho close at 2026-04-10T13:40:00: Close

Commit range

base7998012dfb9a4384a1331302e775f604640e289a
headfa93eef09ff53f8eb96074c777f19d21f794b84a
base branchjolly/jr-web:master
head branchjolly/jr-web:multiple_login_newbie

View commits

Commit details are loaded from Git when a dynamic archive server is running, or can be embedded with --include-commits.
Files changed8 filesView patch
statusfile
modifiedDocker_ds/db/sql/jrce2.sql
modifieddatabase/jrye.sql
modifiedlib/SubFunc.inc
addedlib/conf/class/MultipleLoginBonusConfig.class.php
modifiedlib/conf/define_gesoten.inc
modifiedlib/conf/define_y.inc
modifiedlib/models/Banner.php
modifiedlib/public/Main.inc
Patch body is stored as a separate file to keep this page lightweight.