キンセリのピックアップセールまわりのシステム改良
2017-09-25-1 
[Kndlsl][Programming]
週末のキンセリ改造作業の作業メモです。
主に未来の自分向け。
「キンセリ」のページの「ピックアップ」というコーナーに表示するセールのコントロールシステムを改良。
主な変更点。
ロジックなど。
主に金曜日の作業。
ピックアップ部分だけのページ。確認用。
 主に未来の自分向け。
「キンセリ」のページの「ピックアップ」というコーナーに表示するセールのコントロールシステムを改良。
主な変更点。
- 開始日、終了日だけでなく、開始翌日、終了前日もハイライトするように
 - 開始日、終了日、開始翌日、終了前日は必ずピックアップされるように
 - 表示セール数上限の設定可能に
- ただし、必ずピックアップされるセールは上限無視で表示
 
 - 各セールに付与したスコアによる表示セール選択と表示順序決定
- スコア付き要素をなるべくスコアを考慮しつつ降順にソート
 - 一定時間ごとに表示内容がかなりかわるようになった(変わらないときもある)
 
 
ロジックなど。
- スコア
- ピックアップしたセールごとに指定する
 - 0以上10未満
 - 指定なしだと1
 - 10 は必ず表示することを意味する
 
 - 特殊日
- ピックアップしたセールに設定した掲載期間から日付を計算する
 - スコアとは無関係
 
 - ロジック
- スコア調整
- score 10 未満のとき: score = score x 乱数(0-1)
 - score 10 のとき: score = 10
 
 - score 10 のとき
- 表示セールリストに追加(必ず表示)
 
 - 開始日、終了日、開始翌日、終了前日(特殊日)のとき
- 表示セールリストに追加(必ず表示)
 
 - 表示上限数を超えない場合
- score でソートした上位を上限数まで表示セールリストに追加していく
 
 - 表示セールリストの中身を score で降順にソートして表示
 
 - スコア調整
 
主に金曜日の作業。
- 開催中のセールからいくつか選ぶ
 - 各セールについて
- URLやコメントやセール対象品画像などをHTMLで記述
- liタグで囲む
 
 - 掲載期間も記述
- 掲載期間は複数記述可能
 - 例えば「9月10日0時から11日23時まで」と「13日12時から15日23時まで」
 - (23時まで=23:59まで)
 
 - pickup.txt へ書き込む
 
 - URLやコメントやセール対象品画像などをHTMLで記述
 - 終了したセールを pickup.txt から削除
 
ピックアップ部分だけのページ。確認用。
この記事に言及しているこのブログ内の記事
 
