Files
SVSimServer/SVSim.Bootstrap/Data/seeds/payment-items.json
gamer147 c23c56d46c refactor(bootstrap): migrate payment items to seed file
Lifts ImportPaymentItems out of GlobalsImporter into a dedicated
PaymentItemImporter driven by Data/seeds/payment-items.json. Wired
into Program.cs and SVSimTestFactory.SeedGlobalsAsync after
PracticeOpponentImporter. Drops the prod-capture file in favor of
the extractor pipeline.

Canonical 4-test suite (basic, idempotent, leave-untouched, skip-zero)
keeps the dict-in-sync upsert pattern Task 2 established.

Co-Authored-By: Claude Opus 4.7 <noreply@anthropic.com>
2026-05-26 13:59:50 -04:00

183 lines
5.8 KiB
JSON

[
{
"record_id": 3,
"product_id": 992,
"store_product_id": 99200,
"name": "[b]One-time Deal![/b] 800-crystal set",
"text": "Purchase 800 Crystals",
"price": "7.99",
"charge_crystal_num": 800,
"free_crystal_num": 0,
"purchase_limit": 1,
"special_shop_flag": 0,
"image_name": "thumbnail_crystal_strong",
"start_time": "2018-01-30 04:00:00",
"end_time": "2030-03-01 14:59:59",
"remaining_time": 0,
"is_resale_product": 0,
"resale_start_date": ""
},
{
"record_id": 10,
"product_id": 994,
"store_product_id": 99400,
"name": "[b]Special Offer![/b] 7500-crystal set (3 times per person)",
"text": "Purchase 7500 Crystals",
"price": "79.99",
"charge_crystal_num": 7500,
"free_crystal_num": 0,
"purchase_limit": 3,
"special_shop_flag": 0,
"image_name": "thumbnail_crystal_strong",
"start_time": "2017-06-01 06:00:00",
"end_time": "2030-03-01 14:59:59",
"remaining_time": 0,
"is_resale_product": 0,
"resale_start_date": ""
},
{
"record_id": 19,
"product_id": 989,
"store_product_id": 98900,
"name": "[b]1-Time Deal![/b] 1000-crystal set",
"text": "Purchase 1000 Crystals",
"price": "15.99",
"charge_crystal_num": 1000,
"free_crystal_num": 0,
"purchase_limit": 1,
"special_shop_flag": 0,
"image_name": "thumbnail_crystal_strong",
"start_time": "2026-04-01 02:00:00",
"end_time": "2026-07-01 01:59:59",
"remaining_time": 0,
"is_resale_product": 1,
"resale_start_date": "2026-04-01 02:00:00"
},
{
"record_id": 21,
"product_id": 8,
"store_product_id": 10011,
"name": "60-crystal set",
"text": "Purchase 60 Crystals",
"price": "0.99",
"charge_crystal_num": 60,
"free_crystal_num": 0,
"purchase_limit": 999999999,
"special_shop_flag": 0,
"image_name": "thumbnail_crystal",
"start_time": "2022-10-05 15:00:00",
"end_time": "2030-03-01 14:59:59",
"remaining_time": 0,
"is_resale_product": 0,
"resale_start_date": ""
},
{
"record_id": 24,
"product_id": 9,
"store_product_id": 70011,
"name": "350-crystal set",
"text": "Purchase 350 Crystals",
"price": "5.99",
"charge_crystal_num": 350,
"free_crystal_num": 0,
"purchase_limit": 999999999,
"special_shop_flag": 0,
"image_name": "thumbnail_crystal",
"start_time": "2022-10-05 15:00:00",
"end_time": "2030-03-01 14:59:59",
"remaining_time": 0,
"is_resale_product": 0,
"resale_start_date": ""
},
{
"record_id": 26,
"product_id": 10,
"store_product_id": 30011,
"name": "670-crystal set",
"text": "Purchase 670 Crystals",
"price": "10.99",
"charge_crystal_num": 670,
"free_crystal_num": 0,
"purchase_limit": 999999999,
"special_shop_flag": 0,
"image_name": "thumbnail_crystal",
"start_time": "2022-10-05 15:00:00",
"end_time": "2030-03-01 14:59:59",
"remaining_time": 0,
"is_resale_product": 0,
"resale_start_date": ""
},
{
"record_id": 27,
"product_id": 4,
"store_product_id": 40000,
"name": "1200-crystal set",
"text": "Purchase 1200 Crystals",
"price": "20.99",
"charge_crystal_num": 1200,
"free_crystal_num": 0,
"purchase_limit": 999999999,
"special_shop_flag": 0,
"image_name": "thumbnail_crystal",
"start_time": "2015-03-01 15:00:00",
"end_time": "2030-03-01 14:59:59",
"remaining_time": 0,
"is_resale_product": 0,
"resale_start_date": ""
},
{
"record_id": 28,
"product_id": 5,
"store_product_id": 50000,
"name": "2400-crystal set",
"text": "Purchase 2400 Crystals",
"price": "39.99",
"charge_crystal_num": 2400,
"free_crystal_num": 0,
"purchase_limit": 999999999,
"special_shop_flag": 0,
"image_name": "thumbnail_crystal",
"start_time": "2015-03-01 15:00:00",
"end_time": "2030-03-01 14:59:59",
"remaining_time": 0,
"is_resale_product": 0,
"resale_start_date": ""
},
{
"record_id": 29,
"product_id": 6,
"store_product_id": 60000,
"name": "5000-crystal set",
"text": "Purchase 5000 Crystals",
"price": "79.99",
"charge_crystal_num": 5000,
"free_crystal_num": 0,
"purchase_limit": 999999999,
"special_shop_flag": 0,
"image_name": "thumbnail_crystal",
"start_time": "2015-03-01 15:00:00",
"end_time": "2030-03-01 14:59:59",
"remaining_time": 0,
"is_resale_product": 0,
"resale_start_date": ""
},
{
"record_id": 30,
"product_id": 800,
"store_product_id": 80000,
"name": "1200-crystal and Legendary set",
"text": "Purchase 1200 Crystals and Legendary set",
"price": "20.99",
"charge_crystal_num": 1200,
"free_crystal_num": 0,
"purchase_limit": 3,
"special_shop_flag": 1,
"image_name": "thumbnail_crystal_strong",
"start_time": "2018-01-01 00:00:00",
"end_time": "2019-03-19 16:15:17",
"remaining_time": 604800,
"is_resale_product": 0,
"resale_start_date": ""
}
]