2227 lines
73 KiB
JSON
2227 lines
73 KiB
JSON
{
|
|
"mode": "window",
|
|
"window": {
|
|
"start": "2025-07-01T00:00:00+08:00",
|
|
"end": "2026-01-29T23:00:00+08:00",
|
|
"segments": 1
|
|
},
|
|
"windows": [
|
|
{
|
|
"mode": "window",
|
|
"window": {
|
|
"start": "2025-07-01T00:00:00+08:00",
|
|
"end": "2026-01-29T23:00:00+08:00",
|
|
"label": "segment_1",
|
|
"granularity": "window"
|
|
},
|
|
"api_to_ods": {
|
|
"window_split_unit": "none",
|
|
"window_compensation_hours": 0,
|
|
"start": "2025-07-01T00:00:00+08:00",
|
|
"end": "2026-01-29T23:00:00+08:00",
|
|
"cutoff": null,
|
|
"window_days": 212,
|
|
"window_hours": 0,
|
|
"page_size": 200,
|
|
"chunk_size": 500,
|
|
"sample_limit": 50,
|
|
"compare_content": true,
|
|
"content_sample_limit": 50,
|
|
"store_id": 2790685415443269,
|
|
"base_url": "https://pc.ficoo.vip/apiprod/admin/v1/",
|
|
"results": [
|
|
{
|
|
"task_code": "ODS_ASSISTANT_ACCOUNT",
|
|
"table": "billiards_ods.assistant_accounts_master",
|
|
"endpoint": "/PersonnelManagement/SearchAssistantInfo",
|
|
"pk_columns": [
|
|
"id"
|
|
],
|
|
"records": 138,
|
|
"records_with_pk": 138,
|
|
"missing": 0,
|
|
"missing_samples": [],
|
|
"mismatch": 0,
|
|
"mismatch_samples": [],
|
|
"pages": 2,
|
|
"skipped_missing_pk": 0,
|
|
"errors": 0,
|
|
"error_detail": null,
|
|
"compare_content": true,
|
|
"content_hash_supported": true
|
|
},
|
|
{
|
|
"task_code": "ODS_SETTLEMENT_RECORDS",
|
|
"table": "billiards_ods.settlement_records",
|
|
"endpoint": "/Site/GetAllOrderSettleList",
|
|
"pk_columns": [
|
|
"id"
|
|
],
|
|
"records": 21517,
|
|
"records_with_pk": 21517,
|
|
"missing": 0,
|
|
"missing_samples": [],
|
|
"mismatch": 1414,
|
|
"mismatch_samples": [
|
|
{
|
|
"id": 3049693993911621,
|
|
"content_hash": "9f772f6b67992140c11a3edfd4280daf41943b81deee248567e57eef496b677a"
|
|
},
|
|
{
|
|
"id": 3049687290709893,
|
|
"content_hash": "8184f3c5939bac17cc1ca3c7bab38e9d41845a02f7c35254751af88c1732f798"
|
|
},
|
|
{
|
|
"id": 3049677155829061,
|
|
"content_hash": "0f3f46d2fe7bc58599b820f185d9427ef3ac5bb33ee6d48069663891d2226bd1"
|
|
},
|
|
{
|
|
"id": 3049675185374533,
|
|
"content_hash": "008bb915b905c95a4450199feaacc7d42522e4d56eae17696e96d94d34a3ddc0"
|
|
},
|
|
{
|
|
"id": 3049667688630149,
|
|
"content_hash": "3ab493d8f6e5f303f271f6d861a13efa79769984e42fd68cd532c594b85c7920"
|
|
},
|
|
{
|
|
"id": 3049666963637573,
|
|
"content_hash": "252cd7ace58aa07331331b52832fe56a5f444ba664cad0950d6d8af6b10807ac"
|
|
},
|
|
{
|
|
"id": 3049659193771333,
|
|
"content_hash": "b8da694790a7d29a6a366cde1dc48cb5432debda36d978c7137a4138ac2eb67e"
|
|
},
|
|
{
|
|
"id": 3049652151338309,
|
|
"content_hash": "cd81f391cf96431eb7680e08c3ead92d4fe09f4dfef15c100704c5aa58836ede"
|
|
},
|
|
{
|
|
"id": 3049651460162885,
|
|
"content_hash": "ad9968864c822f87790c548162a318ed676b5768195d106911621d03f4dad87c"
|
|
},
|
|
{
|
|
"id": 3049650087413637,
|
|
"content_hash": "613c5a822e133cf0841b893ae00699cdaee11a05ec79dfddf7619198f82abe3f"
|
|
},
|
|
{
|
|
"id": 3049648237200709,
|
|
"content_hash": "d900582e6c326729dab1400a7fb6524f547291904e8d50926148f4a1f9e06481"
|
|
},
|
|
{
|
|
"id": 3049643525916357,
|
|
"content_hash": "3884a413e857cb9ef4acbf2aa1851ab510b0f25c7c4bc1148df45425b59f5d7e"
|
|
},
|
|
{
|
|
"id": 3049641004762821,
|
|
"content_hash": "ed493cbfd955d6c94af43baddd92dcc1b23c29f760a9ace8e84bcea69fa098c0"
|
|
},
|
|
{
|
|
"id": 3049630673766149,
|
|
"content_hash": "6dfb5ebb77b3ddc150e4dfc3ad5bdbabd66b48276fa11b049a87adbe93ddf16a"
|
|
},
|
|
{
|
|
"id": 3049624218273669,
|
|
"content_hash": "3dea2089a02bd2452e1ffd962be3140db095412365e9d828b80abe3a7d77f101"
|
|
},
|
|
{
|
|
"id": 3049616331622277,
|
|
"content_hash": "6b3fc091c526c98098b01dba9da6988fff2fc971382f21b5a0b20878301851f3"
|
|
},
|
|
{
|
|
"id": 3049611097736901,
|
|
"content_hash": "95710f0b572ed137621eb1aca919bb975c4ae3c34a74e53b6c08fdf6c6d237e4"
|
|
},
|
|
{
|
|
"id": 3049610645292741,
|
|
"content_hash": "b40ecd1415b8f8bf47ff14f5125219d674cc18c90287590e2ff11bcdf4cca481"
|
|
},
|
|
{
|
|
"id": 3049609302263685,
|
|
"content_hash": "c5ad8c316857bbea598641392514dedf8a77d7f0d03d342fb404726803dfae33"
|
|
},
|
|
{
|
|
"id": 3049604443588485,
|
|
"content_hash": "f70cec0f75df0e066bced00870ee0b0bc4a9f38c2e323b2cb097cfcf99c3ab8e"
|
|
},
|
|
{
|
|
"id": 3049585745823493,
|
|
"content_hash": "b076d76ec229408c8ed5b80b166f9f367706c19465d7122178d70773cb2856bb"
|
|
},
|
|
{
|
|
"id": 3049577520187141,
|
|
"content_hash": "151a87959c8d7f491936405de9ec17901b10537cafd45d1aeeeab274805ede88"
|
|
},
|
|
{
|
|
"id": 3049572749264773,
|
|
"content_hash": "bc27c5a83bfc85b5600d938a94b6c4ca365cba5f6a721c5a0f718a1094d782cb"
|
|
},
|
|
{
|
|
"id": 3049570033305349,
|
|
"content_hash": "ff62cd72a46cfa2d63a604623246de7086dc4e52df3bf8eb959dfa17bccc58a6"
|
|
},
|
|
{
|
|
"id": 3049564231485189,
|
|
"content_hash": "5b7a6bac1199df4d095e107e93042ae741192efa826c8dee6370e2e41bd05a02"
|
|
},
|
|
{
|
|
"id": 3049556197147973,
|
|
"content_hash": "f46ccebbf9343ca244caef29557e2e94d624422fab224e8a1e527b75f49b3b40"
|
|
},
|
|
{
|
|
"id": 3049555436045637,
|
|
"content_hash": "e4b208436d0450fef16f7f348702602ce94a4d537399852e28d6e8e0b1a77356"
|
|
},
|
|
{
|
|
"id": 3049525102298437,
|
|
"content_hash": "e029fd231746cbc833e3e1802e9776a89e47022c685f4744d001ddee94c2fc56"
|
|
},
|
|
{
|
|
"id": 3049505399539461,
|
|
"content_hash": "f24d1429bf16c65bcf54a89841e60de5d76e85cc297960da2e40e0f89091b485"
|
|
},
|
|
{
|
|
"id": 3049489313564421,
|
|
"content_hash": "bf028f166f7016c79716874bf63d8e803c3657bb8bfe482a2c38247635d8c537"
|
|
},
|
|
{
|
|
"id": 3049480004437765,
|
|
"content_hash": "99dc95af93980d6cc2cbda0da7aaead3659ac40cc1581c3f8eee87fcc5418669"
|
|
},
|
|
{
|
|
"id": 3049444425041669,
|
|
"content_hash": "af1df14fb6715e8cd22b427d1229051616be3ef457cdda242b78c5050933faf1"
|
|
},
|
|
{
|
|
"id": 3049435269187333,
|
|
"content_hash": "10bdf29c85c7cb4ef888f86a71949e29c3ce713a68075be26f9442d85ff5f9eb"
|
|
},
|
|
{
|
|
"id": 3049409664124229,
|
|
"content_hash": "ed5116f2ad3b2777a9d512762f8e35ac6ba66070fe05de831e80702868d0a921"
|
|
},
|
|
{
|
|
"id": 3049376012338885,
|
|
"content_hash": "60e5336194019bd96bbb6ab52089955ac5bd21addf8bc85b00b6f3da0994d0ef"
|
|
},
|
|
{
|
|
"id": 3049350366070085,
|
|
"content_hash": "a2fed47f7f10ff89090da0ee99ffb54171a6cc0c85f59dc193cf8c7d69048e0f"
|
|
},
|
|
{
|
|
"id": 3049316448290117,
|
|
"content_hash": "662679c4bce27211bd86afe1bb77288b57cfc0270d23dbce907d2ae61254fdce"
|
|
},
|
|
{
|
|
"id": 3049314064533253,
|
|
"content_hash": "0828ce614791e159be4a156d8e8c3b218c7dbdf1f3b0c021bf02c9ba4ce6a058"
|
|
},
|
|
{
|
|
"id": 3049310935221957,
|
|
"content_hash": "b737bf9195579231d9ded3391f87541c09c18d0244b61a3a93ca6062f89b1813"
|
|
},
|
|
{
|
|
"id": 3048861492757829,
|
|
"content_hash": "63352d296478a6bbe733a9d964c4387dcd8d70cfc6215fc7a154a8e4321441ab"
|
|
},
|
|
{
|
|
"id": 3048840159921477,
|
|
"content_hash": "1f5cd39953ed5660d8481e112e8eedc6d498d793738bda206dd9819af4b3acd7"
|
|
},
|
|
{
|
|
"id": 3048839651444613,
|
|
"content_hash": "c907465b29f37a9f77c3855bf5294eae62488d3b5981b6f7b7df73f4554083c1"
|
|
},
|
|
{
|
|
"id": 3048760090445701,
|
|
"content_hash": "cf6a6b582d379eaf2f995734bbe2dc98761c3141240645ae60266787ade7114b"
|
|
},
|
|
{
|
|
"id": 3048755614156485,
|
|
"content_hash": "d3534c26f95d6aca9b445b47ea8c62cadd8b756ce4a471ac462d5471fefd5ae4"
|
|
},
|
|
{
|
|
"id": 3048747724457285,
|
|
"content_hash": "374b83cee63f0ff4eecec744e1a3403b1c5026d0cc195c98a7573945e873841f"
|
|
},
|
|
{
|
|
"id": 3048744895448965,
|
|
"content_hash": "497c9cee85f5a8e5692baa06fbf9988d6e425768c65ddf0265d889e9beaaa6e4"
|
|
},
|
|
{
|
|
"id": 3048738683684613,
|
|
"content_hash": "b13776a1fa555a23477aa4cbb35e196c6cc93b5b6d3aa1ff5d2b7ef429cf93a7"
|
|
},
|
|
{
|
|
"id": 3048699584055045,
|
|
"content_hash": "d045c0d63bfc2386b4e8bc1589d57fb93ee31f1d9abaaa71a074ea228a362941"
|
|
},
|
|
{
|
|
"id": 3048697132844805,
|
|
"content_hash": "03fa89e4812877afea0015d0b09fe5caae8025d40ff1a78cbca38a5b74483b86"
|
|
},
|
|
{
|
|
"id": 3048672071059205,
|
|
"content_hash": "6cff23966cc3356a2f486777f8d1b29d280c4ce98312c78314a798ad2e38b2e9"
|
|
}
|
|
],
|
|
"pages": 109,
|
|
"skipped_missing_pk": 0,
|
|
"errors": 0,
|
|
"error_detail": null,
|
|
"compare_content": true,
|
|
"content_hash_supported": true
|
|
},
|
|
{
|
|
"task_code": "ODS_TABLE_USE",
|
|
"table": "billiards_ods.table_fee_transactions",
|
|
"endpoint": "/Site/GetSiteTableOrderDetails",
|
|
"pk_columns": [
|
|
"id"
|
|
],
|
|
"records": 10104,
|
|
"records_with_pk": 10104,
|
|
"missing": 0,
|
|
"missing_samples": [],
|
|
"mismatch": 0,
|
|
"mismatch_samples": [],
|
|
"pages": 51,
|
|
"skipped_missing_pk": 0,
|
|
"errors": 0,
|
|
"error_detail": null,
|
|
"compare_content": true,
|
|
"content_hash_supported": true
|
|
},
|
|
{
|
|
"task_code": "ODS_ASSISTANT_LEDGER",
|
|
"table": "billiards_ods.assistant_service_records",
|
|
"endpoint": "/AssistantPerformance/GetOrderAssistantDetails",
|
|
"pk_columns": [
|
|
"id"
|
|
],
|
|
"records": 4529,
|
|
"records_with_pk": 4529,
|
|
"missing": 0,
|
|
"missing_samples": [],
|
|
"mismatch": 0,
|
|
"mismatch_samples": [],
|
|
"pages": 25,
|
|
"skipped_missing_pk": 0,
|
|
"errors": 0,
|
|
"error_detail": null,
|
|
"compare_content": true,
|
|
"content_hash_supported": true
|
|
},
|
|
{
|
|
"task_code": "ODS_ASSISTANT_ABOLISH",
|
|
"table": "billiards_ods.assistant_cancellation_records",
|
|
"endpoint": "/AssistantPerformance/GetAbolitionAssistant",
|
|
"pk_columns": [
|
|
"id"
|
|
],
|
|
"records": 84,
|
|
"records_with_pk": 84,
|
|
"missing": 0,
|
|
"missing_samples": [],
|
|
"mismatch": 0,
|
|
"mismatch_samples": [],
|
|
"pages": 2,
|
|
"skipped_missing_pk": 0,
|
|
"errors": 0,
|
|
"error_detail": null,
|
|
"compare_content": true,
|
|
"content_hash_supported": true
|
|
},
|
|
{
|
|
"task_code": "ODS_STORE_GOODS_SALES",
|
|
"table": "billiards_ods.store_goods_sales_records",
|
|
"endpoint": "/TenantGoods/GetGoodsSalesList",
|
|
"pk_columns": [
|
|
"id"
|
|
],
|
|
"records": 0,
|
|
"records_with_pk": 0,
|
|
"missing": 0,
|
|
"missing_samples": [],
|
|
"mismatch": 0,
|
|
"mismatch_samples": [],
|
|
"pages": 1,
|
|
"skipped_missing_pk": 0,
|
|
"errors": 0,
|
|
"error_detail": null,
|
|
"compare_content": true,
|
|
"content_hash_supported": true
|
|
},
|
|
{
|
|
"task_code": "ODS_PAYMENT",
|
|
"table": "billiards_ods.payment_transactions",
|
|
"endpoint": "/PayLog/GetPayLogListPage",
|
|
"pk_columns": [
|
|
"id"
|
|
],
|
|
"records": 11908,
|
|
"records_with_pk": 11908,
|
|
"missing": 0,
|
|
"missing_samples": [],
|
|
"mismatch": 0,
|
|
"mismatch_samples": [],
|
|
"pages": 60,
|
|
"skipped_missing_pk": 0,
|
|
"errors": 0,
|
|
"error_detail": null,
|
|
"compare_content": true,
|
|
"content_hash_supported": true
|
|
},
|
|
{
|
|
"task_code": "ODS_REFUND",
|
|
"table": "billiards_ods.refund_transactions",
|
|
"endpoint": "/Order/GetRefundPayLogList",
|
|
"pk_columns": [
|
|
"id"
|
|
],
|
|
"records": 39,
|
|
"records_with_pk": 39,
|
|
"missing": 0,
|
|
"missing_samples": [],
|
|
"mismatch": 0,
|
|
"mismatch_samples": [],
|
|
"pages": 1,
|
|
"skipped_missing_pk": 0,
|
|
"errors": 0,
|
|
"error_detail": null,
|
|
"compare_content": true,
|
|
"content_hash_supported": true
|
|
},
|
|
{
|
|
"task_code": "ODS_PLATFORM_COUPON",
|
|
"table": "billiards_ods.platform_coupon_redemption_records",
|
|
"endpoint": "/Promotion/GetOfflineCouponConsumePageList",
|
|
"pk_columns": [
|
|
"id"
|
|
],
|
|
"records": 17277,
|
|
"records_with_pk": 17277,
|
|
"missing": 0,
|
|
"missing_samples": [],
|
|
"mismatch": 0,
|
|
"mismatch_samples": [],
|
|
"pages": 87,
|
|
"skipped_missing_pk": 0,
|
|
"errors": 0,
|
|
"error_detail": null,
|
|
"compare_content": true,
|
|
"content_hash_supported": true
|
|
},
|
|
{
|
|
"task_code": "ODS_MEMBER",
|
|
"table": "billiards_ods.member_profiles",
|
|
"endpoint": "/MemberProfile/GetTenantMemberList",
|
|
"pk_columns": [
|
|
"id"
|
|
],
|
|
"records": 556,
|
|
"records_with_pk": 556,
|
|
"missing": 0,
|
|
"missing_samples": [],
|
|
"mismatch": 0,
|
|
"mismatch_samples": [],
|
|
"pages": 3,
|
|
"skipped_missing_pk": 0,
|
|
"errors": 0,
|
|
"error_detail": null,
|
|
"compare_content": true,
|
|
"content_hash_supported": true
|
|
},
|
|
{
|
|
"task_code": "ODS_MEMBER_CARD",
|
|
"table": "billiards_ods.member_stored_value_cards",
|
|
"endpoint": "/MemberProfile/GetTenantMemberCardList",
|
|
"pk_columns": [
|
|
"id"
|
|
],
|
|
"records": 945,
|
|
"records_with_pk": 945,
|
|
"missing": 0,
|
|
"missing_samples": [],
|
|
"mismatch": 0,
|
|
"mismatch_samples": [],
|
|
"pages": 5,
|
|
"skipped_missing_pk": 0,
|
|
"errors": 0,
|
|
"error_detail": null,
|
|
"compare_content": true,
|
|
"content_hash_supported": true
|
|
},
|
|
{
|
|
"task_code": "ODS_MEMBER_BALANCE",
|
|
"table": "billiards_ods.member_balance_changes",
|
|
"endpoint": "/MemberProfile/GetMemberCardBalanceChange",
|
|
"pk_columns": [
|
|
"id"
|
|
],
|
|
"records": 2501,
|
|
"records_with_pk": 2501,
|
|
"missing": 0,
|
|
"missing_samples": [],
|
|
"mismatch": 0,
|
|
"mismatch_samples": [],
|
|
"pages": 13,
|
|
"skipped_missing_pk": 0,
|
|
"errors": 0,
|
|
"error_detail": null,
|
|
"compare_content": true,
|
|
"content_hash_supported": true
|
|
},
|
|
{
|
|
"task_code": "ODS_RECHARGE_SETTLE",
|
|
"table": "billiards_ods.recharge_settlements",
|
|
"endpoint": "/Site/GetRechargeSettleList",
|
|
"pk_columns": [
|
|
"id"
|
|
],
|
|
"records": 414,
|
|
"records_with_pk": 414,
|
|
"missing": 0,
|
|
"missing_samples": [],
|
|
"mismatch": 0,
|
|
"mismatch_samples": [],
|
|
"pages": 4,
|
|
"skipped_missing_pk": 0,
|
|
"errors": 0,
|
|
"error_detail": null,
|
|
"compare_content": true,
|
|
"content_hash_supported": true
|
|
},
|
|
{
|
|
"task_code": "ODS_GROUP_PACKAGE",
|
|
"table": "billiards_ods.group_buy_packages",
|
|
"endpoint": "/PackageCoupon/QueryPackageCouponList",
|
|
"pk_columns": [
|
|
"id"
|
|
],
|
|
"records": 18,
|
|
"records_with_pk": 18,
|
|
"missing": 0,
|
|
"missing_samples": [],
|
|
"mismatch": 0,
|
|
"mismatch_samples": [],
|
|
"pages": 1,
|
|
"skipped_missing_pk": 0,
|
|
"errors": 0,
|
|
"error_detail": null,
|
|
"compare_content": true,
|
|
"content_hash_supported": true
|
|
},
|
|
{
|
|
"task_code": "ODS_GROUP_BUY_REDEMPTION",
|
|
"table": "billiards_ods.group_buy_redemption_records",
|
|
"endpoint": "/Site/GetSiteTableUseDetails",
|
|
"pk_columns": [
|
|
"id"
|
|
],
|
|
"records": 8230,
|
|
"records_with_pk": 8230,
|
|
"missing": 0,
|
|
"missing_samples": [],
|
|
"mismatch": 0,
|
|
"mismatch_samples": [],
|
|
"pages": 42,
|
|
"skipped_missing_pk": 0,
|
|
"errors": 0,
|
|
"error_detail": null,
|
|
"compare_content": true,
|
|
"content_hash_supported": true
|
|
},
|
|
{
|
|
"task_code": "ODS_INVENTORY_STOCK",
|
|
"table": "billiards_ods.goods_stock_summary",
|
|
"endpoint": "/TenantGoods/GetGoodsStockReport",
|
|
"pk_columns": [
|
|
"sitegoodsid"
|
|
],
|
|
"records": 172,
|
|
"records_with_pk": 172,
|
|
"missing": 0,
|
|
"missing_samples": [],
|
|
"mismatch": 1,
|
|
"mismatch_samples": [
|
|
{
|
|
"sitegoodsid": 2794695801917573,
|
|
"content_hash": "3a668d320cf4ff80b913277ddcd574cbd97cd6cbf59bfa3435253c92a6b52508"
|
|
}
|
|
],
|
|
"pages": 1,
|
|
"skipped_missing_pk": 0,
|
|
"errors": 0,
|
|
"error_detail": null,
|
|
"compare_content": true,
|
|
"content_hash_supported": true
|
|
},
|
|
{
|
|
"task_code": "ODS_INVENTORY_CHANGE",
|
|
"table": "billiards_ods.goods_stock_movements",
|
|
"endpoint": "/GoodsStockManage/QueryGoodsOutboundReceipt",
|
|
"pk_columns": [
|
|
"sitegoodsstockid"
|
|
],
|
|
"records": 28811,
|
|
"records_with_pk": 28811,
|
|
"missing": 0,
|
|
"missing_samples": [],
|
|
"mismatch": 0,
|
|
"mismatch_samples": [],
|
|
"pages": 145,
|
|
"skipped_missing_pk": 0,
|
|
"errors": 0,
|
|
"error_detail": null,
|
|
"compare_content": true,
|
|
"content_hash_supported": true
|
|
},
|
|
{
|
|
"task_code": "ODS_TABLES",
|
|
"table": "billiards_ods.site_tables_master",
|
|
"endpoint": "/Table/GetSiteTables",
|
|
"pk_columns": [
|
|
"id"
|
|
],
|
|
"records": 74,
|
|
"records_with_pk": 74,
|
|
"missing": 0,
|
|
"missing_samples": [],
|
|
"mismatch": 0,
|
|
"mismatch_samples": [],
|
|
"pages": 1,
|
|
"skipped_missing_pk": 0,
|
|
"errors": 0,
|
|
"error_detail": null,
|
|
"compare_content": true,
|
|
"content_hash_supported": true
|
|
},
|
|
{
|
|
"task_code": "ODS_GOODS_CATEGORY",
|
|
"table": "billiards_ods.stock_goods_category_tree",
|
|
"endpoint": "/TenantGoodsCategory/QueryPrimarySecondaryCategory",
|
|
"pk_columns": [
|
|
"id"
|
|
],
|
|
"records": 9,
|
|
"records_with_pk": 9,
|
|
"missing": 0,
|
|
"missing_samples": [],
|
|
"mismatch": 0,
|
|
"mismatch_samples": [],
|
|
"pages": 1,
|
|
"skipped_missing_pk": 0,
|
|
"errors": 0,
|
|
"error_detail": null,
|
|
"compare_content": true,
|
|
"content_hash_supported": true
|
|
},
|
|
{
|
|
"task_code": "ODS_STORE_GOODS",
|
|
"table": "billiards_ods.store_goods_master",
|
|
"endpoint": "/TenantGoods/GetGoodsInventoryList",
|
|
"pk_columns": [
|
|
"id"
|
|
],
|
|
"records": 172,
|
|
"records_with_pk": 172,
|
|
"missing": 0,
|
|
"missing_samples": [],
|
|
"mismatch": 1,
|
|
"mismatch_samples": [
|
|
{
|
|
"id": 2794695801917573,
|
|
"content_hash": "e274058282aaec4d786710db076b6225620fc74de08763643510828c34a485a2"
|
|
}
|
|
],
|
|
"pages": 1,
|
|
"skipped_missing_pk": 0,
|
|
"errors": 0,
|
|
"error_detail": null,
|
|
"compare_content": true,
|
|
"content_hash_supported": true
|
|
},
|
|
{
|
|
"task_code": "ODS_TABLE_FEE_DISCOUNT",
|
|
"table": "billiards_ods.table_fee_discount_records",
|
|
"endpoint": "/Site/GetTaiFeeAdjustList",
|
|
"pk_columns": [
|
|
"id"
|
|
],
|
|
"records": 1782,
|
|
"records_with_pk": 1782,
|
|
"missing": 0,
|
|
"missing_samples": [],
|
|
"mismatch": 0,
|
|
"mismatch_samples": [],
|
|
"pages": 9,
|
|
"skipped_missing_pk": 0,
|
|
"errors": 0,
|
|
"error_detail": null,
|
|
"compare_content": true,
|
|
"content_hash_supported": true
|
|
},
|
|
{
|
|
"task_code": "ODS_TENANT_GOODS",
|
|
"table": "billiards_ods.tenant_goods_master",
|
|
"endpoint": "/TenantGoods/QueryTenantGoods",
|
|
"pk_columns": [
|
|
"id"
|
|
],
|
|
"records": 173,
|
|
"records_with_pk": 173,
|
|
"missing": 0,
|
|
"missing_samples": [],
|
|
"mismatch": 0,
|
|
"mismatch_samples": [],
|
|
"pages": 1,
|
|
"skipped_missing_pk": 0,
|
|
"errors": 0,
|
|
"error_detail": null,
|
|
"compare_content": true,
|
|
"content_hash_supported": true
|
|
},
|
|
{
|
|
"task_code": "ODS_SETTLEMENT_TICKET",
|
|
"table": "billiards_ods.settlement_ticket_details",
|
|
"endpoint": "/Order/GetOrderSettleTicketNew",
|
|
"pk_columns": [
|
|
"ordersettleid"
|
|
],
|
|
"records": 22176,
|
|
"records_with_pk": 0,
|
|
"missing": 0,
|
|
"missing_samples": [],
|
|
"mismatch": 0,
|
|
"mismatch_samples": [],
|
|
"pages": 113,
|
|
"skipped_missing_pk": 22176,
|
|
"errors": 0,
|
|
"error_detail": null,
|
|
"source_endpoint": "/PayLog/GetPayLogListPage"
|
|
}
|
|
],
|
|
"total_missing": 0,
|
|
"total_mismatch": 1416,
|
|
"total_errors": 0,
|
|
"generated_at": "2026-01-31T05:40:58.602950+08:00"
|
|
},
|
|
"ods_to_dwd": {
|
|
"tables": [
|
|
{
|
|
"dwd_table": "billiards_dwd.dwd_settlement_head",
|
|
"ods_table": "billiards_ods.settlement_records",
|
|
"windowed": false,
|
|
"window_col": null,
|
|
"count": {
|
|
"dwd": 23366,
|
|
"ods": 23712,
|
|
"diff": -346
|
|
},
|
|
"amounts": [],
|
|
"mismatch": null,
|
|
"mismatch_samples": [],
|
|
"mismatch_error": "join_keys_or_compare_cols_unavailable"
|
|
},
|
|
{
|
|
"dwd_table": "billiards_dwd.dwd_settlement_head_ex",
|
|
"ods_table": "billiards_ods.settlement_records",
|
|
"windowed": false,
|
|
"window_col": null,
|
|
"count": {
|
|
"dwd": 23366,
|
|
"ods": 23712,
|
|
"diff": -346
|
|
},
|
|
"amounts": [],
|
|
"mismatch": null,
|
|
"mismatch_samples": [],
|
|
"mismatch_error": "join_keys_or_compare_cols_unavailable"
|
|
},
|
|
{
|
|
"dwd_table": "billiards_dwd.dwd_table_fee_log",
|
|
"ods_table": "billiards_ods.table_fee_transactions",
|
|
"windowed": true,
|
|
"window_col": null,
|
|
"count": {
|
|
"dwd": null,
|
|
"ods": null,
|
|
"diff": null
|
|
},
|
|
"amounts": [],
|
|
"mismatch": null,
|
|
"mismatch_samples": [],
|
|
"error": "AttributeError: 'tuple' object has no attribute 'items'"
|
|
},
|
|
{
|
|
"dwd_table": "billiards_dwd.dwd_table_fee_log_ex",
|
|
"ods_table": "billiards_ods.table_fee_transactions",
|
|
"windowed": true,
|
|
"window_col": null,
|
|
"count": {
|
|
"dwd": null,
|
|
"ods": null,
|
|
"diff": null
|
|
},
|
|
"amounts": [],
|
|
"mismatch": null,
|
|
"mismatch_samples": [],
|
|
"error": "AttributeError: 'tuple' object has no attribute 'items'"
|
|
},
|
|
{
|
|
"dwd_table": "billiards_dwd.dwd_table_fee_adjust",
|
|
"ods_table": "billiards_ods.table_fee_discount_records",
|
|
"windowed": false,
|
|
"window_col": null,
|
|
"count": {
|
|
"dwd": 2849,
|
|
"ods": 2943,
|
|
"diff": -94
|
|
},
|
|
"amounts": [
|
|
{
|
|
"column": "ledger_amount",
|
|
"dwd_sum": 329604.44,
|
|
"ods_sum": 348842.08,
|
|
"diff": -19237.640000000014
|
|
}
|
|
],
|
|
"mismatch": 0,
|
|
"mismatch_samples": [],
|
|
"mismatch_error": null
|
|
},
|
|
{
|
|
"dwd_table": "billiards_dwd.dwd_table_fee_adjust_ex",
|
|
"ods_table": "billiards_ods.table_fee_discount_records",
|
|
"windowed": true,
|
|
"window_col": null,
|
|
"count": {
|
|
"dwd": null,
|
|
"ods": null,
|
|
"diff": null
|
|
},
|
|
"amounts": [],
|
|
"mismatch": null,
|
|
"mismatch_samples": [],
|
|
"error": "AttributeError: 'tuple' object has no attribute 'items'"
|
|
},
|
|
{
|
|
"dwd_table": "billiards_dwd.dwd_store_goods_sale",
|
|
"ods_table": "billiards_ods.store_goods_sales_records",
|
|
"windowed": true,
|
|
"window_col": null,
|
|
"count": {
|
|
"dwd": null,
|
|
"ods": null,
|
|
"diff": null
|
|
},
|
|
"amounts": [],
|
|
"mismatch": null,
|
|
"mismatch_samples": [],
|
|
"error": "AttributeError: 'tuple' object has no attribute 'items'"
|
|
},
|
|
{
|
|
"dwd_table": "billiards_dwd.dwd_store_goods_sale_ex",
|
|
"ods_table": "billiards_ods.store_goods_sales_records",
|
|
"windowed": false,
|
|
"window_col": null,
|
|
"count": {
|
|
"dwd": 17563,
|
|
"ods": 17563,
|
|
"diff": 0
|
|
},
|
|
"amounts": [
|
|
{
|
|
"column": "coupon_deduct_money",
|
|
"dwd_sum": 0.0,
|
|
"ods_sum": 0.0,
|
|
"diff": 0.0
|
|
},
|
|
{
|
|
"column": "discount_money",
|
|
"dwd_sum": 21673.2,
|
|
"ods_sum": 21673.2,
|
|
"diff": 0.0
|
|
},
|
|
{
|
|
"column": "member_discount_amount",
|
|
"dwd_sum": 0.0,
|
|
"ods_sum": 0.0,
|
|
"diff": 0.0
|
|
},
|
|
{
|
|
"column": "option_coupon_deduct_money",
|
|
"dwd_sum": 0.0,
|
|
"ods_sum": 0.0,
|
|
"diff": 0.0
|
|
},
|
|
{
|
|
"column": "option_member_discount_money",
|
|
"dwd_sum": 0.0,
|
|
"ods_sum": 0.0,
|
|
"diff": 0.0
|
|
},
|
|
{
|
|
"column": "point_discount_money",
|
|
"dwd_sum": 0.0,
|
|
"ods_sum": 0.0,
|
|
"diff": 0.0
|
|
},
|
|
{
|
|
"column": "point_discount_money_cost",
|
|
"dwd_sum": 0.0,
|
|
"ods_sum": 0.0,
|
|
"diff": 0.0
|
|
},
|
|
{
|
|
"column": "push_money",
|
|
"dwd_sum": 0.0,
|
|
"ods_sum": 0.0,
|
|
"diff": 0.0
|
|
}
|
|
],
|
|
"mismatch": 0,
|
|
"mismatch_samples": [],
|
|
"mismatch_error": null
|
|
},
|
|
{
|
|
"dwd_table": "billiards_dwd.dwd_assistant_service_log",
|
|
"ods_table": "billiards_ods.assistant_service_records",
|
|
"windowed": true,
|
|
"window_col": null,
|
|
"count": {
|
|
"dwd": null,
|
|
"ods": null,
|
|
"diff": null
|
|
},
|
|
"amounts": [],
|
|
"mismatch": null,
|
|
"mismatch_samples": [],
|
|
"error": "AttributeError: 'tuple' object has no attribute 'items'"
|
|
},
|
|
{
|
|
"dwd_table": "billiards_dwd.dwd_assistant_service_log_ex",
|
|
"ods_table": "billiards_ods.assistant_service_records",
|
|
"windowed": true,
|
|
"window_col": null,
|
|
"count": {
|
|
"dwd": null,
|
|
"ods": null,
|
|
"diff": null
|
|
},
|
|
"amounts": [],
|
|
"mismatch": null,
|
|
"mismatch_samples": [],
|
|
"error": "AttributeError: 'tuple' object has no attribute 'items'"
|
|
},
|
|
{
|
|
"dwd_table": "billiards_dwd.dwd_assistant_trash_event",
|
|
"ods_table": "billiards_ods.assistant_cancellation_records",
|
|
"windowed": false,
|
|
"window_col": null,
|
|
"count": {
|
|
"dwd": 98,
|
|
"ods": 100,
|
|
"diff": -2
|
|
},
|
|
"amounts": [],
|
|
"mismatch": null,
|
|
"mismatch_samples": [],
|
|
"mismatch_error": "join_keys_or_compare_cols_unavailable"
|
|
},
|
|
{
|
|
"dwd_table": "billiards_dwd.dwd_assistant_trash_event_ex",
|
|
"ods_table": "billiards_ods.assistant_cancellation_records",
|
|
"windowed": false,
|
|
"window_col": null,
|
|
"count": {
|
|
"dwd": 98,
|
|
"ods": 100,
|
|
"diff": -2
|
|
},
|
|
"amounts": [],
|
|
"mismatch": null,
|
|
"mismatch_samples": [],
|
|
"mismatch_error": "join_keys_or_compare_cols_unavailable"
|
|
},
|
|
{
|
|
"dwd_table": "billiards_dwd.dwd_member_balance_change",
|
|
"ods_table": "billiards_ods.member_balance_changes",
|
|
"windowed": false,
|
|
"window_col": null,
|
|
"count": {
|
|
"dwd": 4745,
|
|
"ods": 4858,
|
|
"diff": -113
|
|
},
|
|
"amounts": [],
|
|
"mismatch": 0,
|
|
"mismatch_samples": [],
|
|
"mismatch_error": null
|
|
},
|
|
{
|
|
"dwd_table": "billiards_dwd.dwd_member_balance_change_ex",
|
|
"ods_table": "billiards_ods.member_balance_changes",
|
|
"windowed": false,
|
|
"window_col": null,
|
|
"count": {
|
|
"dwd": 4745,
|
|
"ods": 4858,
|
|
"diff": -113
|
|
},
|
|
"amounts": [
|
|
{
|
|
"column": "refund_amount",
|
|
"dwd_sum": 0.0,
|
|
"ods_sum": 0.0,
|
|
"diff": 0.0
|
|
}
|
|
],
|
|
"mismatch": 0,
|
|
"mismatch_samples": [],
|
|
"mismatch_error": null
|
|
},
|
|
{
|
|
"dwd_table": "billiards_dwd.dwd_groupbuy_redemption",
|
|
"ods_table": "billiards_ods.group_buy_redemption_records",
|
|
"windowed": true,
|
|
"window_col": null,
|
|
"count": {
|
|
"dwd": null,
|
|
"ods": null,
|
|
"diff": null
|
|
},
|
|
"amounts": [],
|
|
"mismatch": null,
|
|
"mismatch_samples": [],
|
|
"error": "AttributeError: 'tuple' object has no attribute 'items'"
|
|
},
|
|
{
|
|
"dwd_table": "billiards_dwd.dwd_groupbuy_redemption_ex",
|
|
"ods_table": "billiards_ods.group_buy_redemption_records",
|
|
"windowed": false,
|
|
"window_col": null,
|
|
"count": {
|
|
"dwd": 11427,
|
|
"ods": 11735,
|
|
"diff": -308
|
|
},
|
|
"amounts": [
|
|
{
|
|
"column": "assistant_promotion_money",
|
|
"dwd_sum": 7544.8,
|
|
"ods_sum": 7544.8,
|
|
"diff": 0.0
|
|
},
|
|
{
|
|
"column": "assistant_service_promotion_money",
|
|
"dwd_sum": 0.0,
|
|
"ods_sum": 0.0,
|
|
"diff": 0.0
|
|
},
|
|
{
|
|
"column": "goods_promotion_money",
|
|
"dwd_sum": 0.0,
|
|
"ods_sum": 0.0,
|
|
"diff": 0.0
|
|
},
|
|
{
|
|
"column": "recharge_promotion_money",
|
|
"dwd_sum": 0.0,
|
|
"ods_sum": 0.0,
|
|
"diff": 0.0
|
|
},
|
|
{
|
|
"column": "reward_promotion_money",
|
|
"dwd_sum": 0.0,
|
|
"ods_sum": 0.0,
|
|
"diff": 0.0
|
|
},
|
|
{
|
|
"column": "table_service_promotion_money",
|
|
"dwd_sum": 0.0,
|
|
"ods_sum": 0.0,
|
|
"diff": 0.0
|
|
}
|
|
],
|
|
"mismatch": 0,
|
|
"mismatch_samples": [],
|
|
"mismatch_error": null
|
|
},
|
|
{
|
|
"dwd_table": "billiards_dwd.dwd_platform_coupon_redemption",
|
|
"ods_table": "billiards_ods.platform_coupon_redemption_records",
|
|
"windowed": true,
|
|
"window_col": null,
|
|
"count": {
|
|
"dwd": null,
|
|
"ods": null,
|
|
"diff": null
|
|
},
|
|
"amounts": [],
|
|
"mismatch": null,
|
|
"mismatch_samples": [],
|
|
"error": "AttributeError: 'tuple' object has no attribute 'items'"
|
|
},
|
|
{
|
|
"dwd_table": "billiards_dwd.dwd_platform_coupon_redemption_ex",
|
|
"ods_table": "billiards_ods.platform_coupon_redemption_records",
|
|
"windowed": false,
|
|
"window_col": null,
|
|
"count": {
|
|
"dwd": 16977,
|
|
"ods": 17277,
|
|
"diff": -300
|
|
},
|
|
"amounts": [],
|
|
"mismatch": 0,
|
|
"mismatch_samples": [],
|
|
"mismatch_error": null
|
|
},
|
|
{
|
|
"dwd_table": "billiards_dwd.dwd_recharge_order",
|
|
"ods_table": "billiards_ods.recharge_settlements",
|
|
"windowed": false,
|
|
"window_col": null,
|
|
"count": {
|
|
"dwd": 455,
|
|
"ods": 462,
|
|
"diff": -7
|
|
},
|
|
"amounts": [],
|
|
"mismatch": null,
|
|
"mismatch_samples": [],
|
|
"mismatch_error": "join_keys_or_compare_cols_unavailable"
|
|
},
|
|
{
|
|
"dwd_table": "billiards_dwd.dwd_recharge_order_ex",
|
|
"ods_table": "billiards_ods.recharge_settlements",
|
|
"windowed": false,
|
|
"window_col": null,
|
|
"count": {
|
|
"dwd": 455,
|
|
"ods": 462,
|
|
"diff": -7
|
|
},
|
|
"amounts": [],
|
|
"mismatch": null,
|
|
"mismatch_samples": [],
|
|
"mismatch_error": "join_keys_or_compare_cols_unavailable"
|
|
},
|
|
{
|
|
"dwd_table": "billiards_dwd.dwd_payment",
|
|
"ods_table": "billiards_ods.payment_transactions",
|
|
"windowed": true,
|
|
"window_col": null,
|
|
"count": {
|
|
"dwd": null,
|
|
"ods": null,
|
|
"diff": null
|
|
},
|
|
"amounts": [],
|
|
"mismatch": null,
|
|
"mismatch_samples": [],
|
|
"error": "AttributeError: 'tuple' object has no attribute 'items'"
|
|
},
|
|
{
|
|
"dwd_table": "billiards_dwd.dwd_refund",
|
|
"ods_table": "billiards_ods.refund_transactions",
|
|
"windowed": true,
|
|
"window_col": null,
|
|
"count": {
|
|
"dwd": null,
|
|
"ods": null,
|
|
"diff": null
|
|
},
|
|
"amounts": [],
|
|
"mismatch": null,
|
|
"mismatch_samples": [],
|
|
"error": "AttributeError: 'tuple' object has no attribute 'items'"
|
|
},
|
|
{
|
|
"dwd_table": "billiards_dwd.dwd_refund_ex",
|
|
"ods_table": "billiards_ods.refund_transactions",
|
|
"windowed": false,
|
|
"window_col": null,
|
|
"count": {
|
|
"dwd": 45,
|
|
"ods": 46,
|
|
"diff": -1
|
|
},
|
|
"amounts": [
|
|
{
|
|
"column": "balance_frozen_amount",
|
|
"dwd_sum": 0.0,
|
|
"ods_sum": 0.0,
|
|
"diff": 0.0
|
|
},
|
|
{
|
|
"column": "card_frozen_amount",
|
|
"dwd_sum": 0.0,
|
|
"ods_sum": 0.0,
|
|
"diff": 0.0
|
|
},
|
|
{
|
|
"column": "refund_amount",
|
|
"dwd_sum": 0.0,
|
|
"ods_sum": 0.0,
|
|
"diff": 0.0
|
|
},
|
|
{
|
|
"column": "round_amount",
|
|
"dwd_sum": 0.0,
|
|
"ods_sum": 0.0,
|
|
"diff": 0.0
|
|
}
|
|
],
|
|
"mismatch": 0,
|
|
"mismatch_samples": [],
|
|
"mismatch_error": null
|
|
}
|
|
],
|
|
"total_count_diff": -1639,
|
|
"total_mismatch": 118581
|
|
},
|
|
"generated_at": "2026-01-31T05:41:18.992643+08:00"
|
|
}
|
|
],
|
|
"api_to_ods": {
|
|
"total_missing": 0,
|
|
"total_mismatch": 1416,
|
|
"total_errors": 0
|
|
},
|
|
"total_missing": 0,
|
|
"total_mismatch": 1416,
|
|
"total_errors": 0,
|
|
"generated_at": "2026-01-31T05:41:18.992668+08:00",
|
|
"backfill_result": {
|
|
"total_missing": 190,
|
|
"total_mismatch": 1416,
|
|
"backfilled": 1416,
|
|
"errors": 0,
|
|
"details": [
|
|
{
|
|
"task_code": "ODS_SETTLEMENT_RECORDS",
|
|
"missing": 10,
|
|
"mismatch": 1414,
|
|
"backfilled": 1414,
|
|
"error": null
|
|
},
|
|
{
|
|
"task_code": "ODS_ASSISTANT_LEDGER",
|
|
"missing": 1,
|
|
"mismatch": 0,
|
|
"backfilled": 0,
|
|
"error": null
|
|
},
|
|
{
|
|
"task_code": "ODS_INVENTORY_STOCK",
|
|
"missing": 0,
|
|
"mismatch": 1,
|
|
"backfilled": 1,
|
|
"error": null
|
|
},
|
|
{
|
|
"task_code": "ODS_INVENTORY_CHANGE",
|
|
"missing": 179,
|
|
"mismatch": 0,
|
|
"backfilled": 0,
|
|
"error": null
|
|
},
|
|
{
|
|
"task_code": "ODS_STORE_GOODS",
|
|
"missing": 0,
|
|
"mismatch": 1,
|
|
"backfilled": 1,
|
|
"error": null
|
|
}
|
|
]
|
|
},
|
|
"post_check": {
|
|
"mode": "window",
|
|
"window": {
|
|
"start": "2025-07-01T00:00:00+08:00",
|
|
"end": "2026-01-29T23:00:00+08:00",
|
|
"segments": 1
|
|
},
|
|
"windows": [
|
|
{
|
|
"mode": "window",
|
|
"window": {
|
|
"start": "2025-07-01T00:00:00+08:00",
|
|
"end": "2026-01-29T23:00:00+08:00",
|
|
"label": "segment_1",
|
|
"granularity": "window"
|
|
},
|
|
"api_to_ods": {
|
|
"window_split_unit": "none",
|
|
"window_compensation_hours": 0,
|
|
"start": "2025-07-01T00:00:00+08:00",
|
|
"end": "2026-01-29T23:00:00+08:00",
|
|
"cutoff": null,
|
|
"window_days": 212,
|
|
"window_hours": 0,
|
|
"page_size": 200,
|
|
"chunk_size": 500,
|
|
"sample_limit": 50,
|
|
"compare_content": true,
|
|
"content_sample_limit": 50,
|
|
"store_id": 2790685415443269,
|
|
"base_url": "https://pc.ficoo.vip/apiprod/admin/v1/",
|
|
"results": [
|
|
{
|
|
"task_code": "ODS_ASSISTANT_ACCOUNT",
|
|
"table": "billiards_ods.assistant_accounts_master",
|
|
"endpoint": "/PersonnelManagement/SearchAssistantInfo",
|
|
"pk_columns": [
|
|
"id"
|
|
],
|
|
"records": 138,
|
|
"records_with_pk": 138,
|
|
"missing": 0,
|
|
"missing_samples": [],
|
|
"mismatch": 0,
|
|
"mismatch_samples": [],
|
|
"pages": 2,
|
|
"skipped_missing_pk": 0,
|
|
"errors": 0,
|
|
"error_detail": null,
|
|
"compare_content": true,
|
|
"content_hash_supported": true
|
|
},
|
|
{
|
|
"task_code": "ODS_SETTLEMENT_RECORDS",
|
|
"table": "billiards_ods.settlement_records",
|
|
"endpoint": "/Site/GetAllOrderSettleList",
|
|
"pk_columns": [
|
|
"id"
|
|
],
|
|
"records": 21517,
|
|
"records_with_pk": 21517,
|
|
"missing": 0,
|
|
"missing_samples": [],
|
|
"mismatch": 0,
|
|
"mismatch_samples": [],
|
|
"pages": 109,
|
|
"skipped_missing_pk": 0,
|
|
"errors": 0,
|
|
"error_detail": null,
|
|
"compare_content": true,
|
|
"content_hash_supported": true
|
|
},
|
|
{
|
|
"task_code": "ODS_TABLE_USE",
|
|
"table": "billiards_ods.table_fee_transactions",
|
|
"endpoint": "/Site/GetSiteTableOrderDetails",
|
|
"pk_columns": [
|
|
"id"
|
|
],
|
|
"records": 10104,
|
|
"records_with_pk": 10104,
|
|
"missing": 0,
|
|
"missing_samples": [],
|
|
"mismatch": 0,
|
|
"mismatch_samples": [],
|
|
"pages": 51,
|
|
"skipped_missing_pk": 0,
|
|
"errors": 0,
|
|
"error_detail": null,
|
|
"compare_content": true,
|
|
"content_hash_supported": true
|
|
},
|
|
{
|
|
"task_code": "ODS_ASSISTANT_LEDGER",
|
|
"table": "billiards_ods.assistant_service_records",
|
|
"endpoint": "/AssistantPerformance/GetOrderAssistantDetails",
|
|
"pk_columns": [
|
|
"id"
|
|
],
|
|
"records": 4529,
|
|
"records_with_pk": 4529,
|
|
"missing": 0,
|
|
"missing_samples": [],
|
|
"mismatch": 0,
|
|
"mismatch_samples": [],
|
|
"pages": 25,
|
|
"skipped_missing_pk": 0,
|
|
"errors": 0,
|
|
"error_detail": null,
|
|
"compare_content": true,
|
|
"content_hash_supported": true
|
|
},
|
|
{
|
|
"task_code": "ODS_ASSISTANT_ABOLISH",
|
|
"table": "billiards_ods.assistant_cancellation_records",
|
|
"endpoint": "/AssistantPerformance/GetAbolitionAssistant",
|
|
"pk_columns": [
|
|
"id"
|
|
],
|
|
"records": 84,
|
|
"records_with_pk": 84,
|
|
"missing": 0,
|
|
"missing_samples": [],
|
|
"mismatch": 0,
|
|
"mismatch_samples": [],
|
|
"pages": 2,
|
|
"skipped_missing_pk": 0,
|
|
"errors": 0,
|
|
"error_detail": null,
|
|
"compare_content": true,
|
|
"content_hash_supported": true
|
|
},
|
|
{
|
|
"task_code": "ODS_STORE_GOODS_SALES",
|
|
"table": "billiards_ods.store_goods_sales_records",
|
|
"endpoint": "/TenantGoods/GetGoodsSalesList",
|
|
"pk_columns": [
|
|
"id"
|
|
],
|
|
"records": 0,
|
|
"records_with_pk": 0,
|
|
"missing": 0,
|
|
"missing_samples": [],
|
|
"mismatch": 0,
|
|
"mismatch_samples": [],
|
|
"pages": 1,
|
|
"skipped_missing_pk": 0,
|
|
"errors": 0,
|
|
"error_detail": null,
|
|
"compare_content": true,
|
|
"content_hash_supported": true
|
|
},
|
|
{
|
|
"task_code": "ODS_PAYMENT",
|
|
"table": "billiards_ods.payment_transactions",
|
|
"endpoint": "/PayLog/GetPayLogListPage",
|
|
"pk_columns": [
|
|
"id"
|
|
],
|
|
"records": 11908,
|
|
"records_with_pk": 11908,
|
|
"missing": 0,
|
|
"missing_samples": [],
|
|
"mismatch": 0,
|
|
"mismatch_samples": [],
|
|
"pages": 60,
|
|
"skipped_missing_pk": 0,
|
|
"errors": 0,
|
|
"error_detail": null,
|
|
"compare_content": true,
|
|
"content_hash_supported": true
|
|
},
|
|
{
|
|
"task_code": "ODS_REFUND",
|
|
"table": "billiards_ods.refund_transactions",
|
|
"endpoint": "/Order/GetRefundPayLogList",
|
|
"pk_columns": [
|
|
"id"
|
|
],
|
|
"records": 39,
|
|
"records_with_pk": 39,
|
|
"missing": 0,
|
|
"missing_samples": [],
|
|
"mismatch": 0,
|
|
"mismatch_samples": [],
|
|
"pages": 1,
|
|
"skipped_missing_pk": 0,
|
|
"errors": 0,
|
|
"error_detail": null,
|
|
"compare_content": true,
|
|
"content_hash_supported": true
|
|
},
|
|
{
|
|
"task_code": "ODS_PLATFORM_COUPON",
|
|
"table": "billiards_ods.platform_coupon_redemption_records",
|
|
"endpoint": "/Promotion/GetOfflineCouponConsumePageList",
|
|
"pk_columns": [
|
|
"id"
|
|
],
|
|
"records": 17277,
|
|
"records_with_pk": 17277,
|
|
"missing": 0,
|
|
"missing_samples": [],
|
|
"mismatch": 0,
|
|
"mismatch_samples": [],
|
|
"pages": 87,
|
|
"skipped_missing_pk": 0,
|
|
"errors": 0,
|
|
"error_detail": null,
|
|
"compare_content": true,
|
|
"content_hash_supported": true
|
|
},
|
|
{
|
|
"task_code": "ODS_MEMBER",
|
|
"table": "billiards_ods.member_profiles",
|
|
"endpoint": "/MemberProfile/GetTenantMemberList",
|
|
"pk_columns": [
|
|
"id"
|
|
],
|
|
"records": 556,
|
|
"records_with_pk": 556,
|
|
"missing": 0,
|
|
"missing_samples": [],
|
|
"mismatch": 0,
|
|
"mismatch_samples": [],
|
|
"pages": 3,
|
|
"skipped_missing_pk": 0,
|
|
"errors": 0,
|
|
"error_detail": null,
|
|
"compare_content": true,
|
|
"content_hash_supported": true
|
|
},
|
|
{
|
|
"task_code": "ODS_MEMBER_CARD",
|
|
"table": "billiards_ods.member_stored_value_cards",
|
|
"endpoint": "/MemberProfile/GetTenantMemberCardList",
|
|
"pk_columns": [
|
|
"id"
|
|
],
|
|
"records": 945,
|
|
"records_with_pk": 945,
|
|
"missing": 0,
|
|
"missing_samples": [],
|
|
"mismatch": 0,
|
|
"mismatch_samples": [],
|
|
"pages": 5,
|
|
"skipped_missing_pk": 0,
|
|
"errors": 0,
|
|
"error_detail": null,
|
|
"compare_content": true,
|
|
"content_hash_supported": true
|
|
},
|
|
{
|
|
"task_code": "ODS_MEMBER_BALANCE",
|
|
"table": "billiards_ods.member_balance_changes",
|
|
"endpoint": "/MemberProfile/GetMemberCardBalanceChange",
|
|
"pk_columns": [
|
|
"id"
|
|
],
|
|
"records": 2501,
|
|
"records_with_pk": 2501,
|
|
"missing": 0,
|
|
"missing_samples": [],
|
|
"mismatch": 0,
|
|
"mismatch_samples": [],
|
|
"pages": 13,
|
|
"skipped_missing_pk": 0,
|
|
"errors": 0,
|
|
"error_detail": null,
|
|
"compare_content": true,
|
|
"content_hash_supported": true
|
|
},
|
|
{
|
|
"task_code": "ODS_RECHARGE_SETTLE",
|
|
"table": "billiards_ods.recharge_settlements",
|
|
"endpoint": "/Site/GetRechargeSettleList",
|
|
"pk_columns": [
|
|
"id"
|
|
],
|
|
"records": 414,
|
|
"records_with_pk": 414,
|
|
"missing": 0,
|
|
"missing_samples": [],
|
|
"mismatch": 0,
|
|
"mismatch_samples": [],
|
|
"pages": 4,
|
|
"skipped_missing_pk": 0,
|
|
"errors": 0,
|
|
"error_detail": null,
|
|
"compare_content": true,
|
|
"content_hash_supported": true
|
|
},
|
|
{
|
|
"task_code": "ODS_GROUP_PACKAGE",
|
|
"table": "billiards_ods.group_buy_packages",
|
|
"endpoint": "/PackageCoupon/QueryPackageCouponList",
|
|
"pk_columns": [
|
|
"id"
|
|
],
|
|
"records": 18,
|
|
"records_with_pk": 18,
|
|
"missing": 0,
|
|
"missing_samples": [],
|
|
"mismatch": 0,
|
|
"mismatch_samples": [],
|
|
"pages": 1,
|
|
"skipped_missing_pk": 0,
|
|
"errors": 0,
|
|
"error_detail": null,
|
|
"compare_content": true,
|
|
"content_hash_supported": true
|
|
},
|
|
{
|
|
"task_code": "ODS_GROUP_BUY_REDEMPTION",
|
|
"table": "billiards_ods.group_buy_redemption_records",
|
|
"endpoint": "/Site/GetSiteTableUseDetails",
|
|
"pk_columns": [
|
|
"id"
|
|
],
|
|
"records": 8230,
|
|
"records_with_pk": 8230,
|
|
"missing": 0,
|
|
"missing_samples": [],
|
|
"mismatch": 0,
|
|
"mismatch_samples": [],
|
|
"pages": 42,
|
|
"skipped_missing_pk": 0,
|
|
"errors": 0,
|
|
"error_detail": null,
|
|
"compare_content": true,
|
|
"content_hash_supported": true
|
|
},
|
|
{
|
|
"task_code": "ODS_INVENTORY_STOCK",
|
|
"table": "billiards_ods.goods_stock_summary",
|
|
"endpoint": "/TenantGoods/GetGoodsStockReport",
|
|
"pk_columns": [
|
|
"sitegoodsid"
|
|
],
|
|
"records": 172,
|
|
"records_with_pk": 172,
|
|
"missing": 0,
|
|
"missing_samples": [],
|
|
"mismatch": 0,
|
|
"mismatch_samples": [],
|
|
"pages": 1,
|
|
"skipped_missing_pk": 0,
|
|
"errors": 0,
|
|
"error_detail": null,
|
|
"compare_content": true,
|
|
"content_hash_supported": true
|
|
},
|
|
{
|
|
"task_code": "ODS_INVENTORY_CHANGE",
|
|
"table": "billiards_ods.goods_stock_movements",
|
|
"endpoint": "/GoodsStockManage/QueryGoodsOutboundReceipt",
|
|
"pk_columns": [
|
|
"sitegoodsstockid"
|
|
],
|
|
"records": 28811,
|
|
"records_with_pk": 28811,
|
|
"missing": 0,
|
|
"missing_samples": [],
|
|
"mismatch": 0,
|
|
"mismatch_samples": [],
|
|
"pages": 145,
|
|
"skipped_missing_pk": 0,
|
|
"errors": 0,
|
|
"error_detail": null,
|
|
"compare_content": true,
|
|
"content_hash_supported": true
|
|
},
|
|
{
|
|
"task_code": "ODS_TABLES",
|
|
"table": "billiards_ods.site_tables_master",
|
|
"endpoint": "/Table/GetSiteTables",
|
|
"pk_columns": [
|
|
"id"
|
|
],
|
|
"records": 74,
|
|
"records_with_pk": 74,
|
|
"missing": 0,
|
|
"missing_samples": [],
|
|
"mismatch": 0,
|
|
"mismatch_samples": [],
|
|
"pages": 1,
|
|
"skipped_missing_pk": 0,
|
|
"errors": 0,
|
|
"error_detail": null,
|
|
"compare_content": true,
|
|
"content_hash_supported": true
|
|
},
|
|
{
|
|
"task_code": "ODS_GOODS_CATEGORY",
|
|
"table": "billiards_ods.stock_goods_category_tree",
|
|
"endpoint": "/TenantGoodsCategory/QueryPrimarySecondaryCategory",
|
|
"pk_columns": [
|
|
"id"
|
|
],
|
|
"records": 9,
|
|
"records_with_pk": 9,
|
|
"missing": 0,
|
|
"missing_samples": [],
|
|
"mismatch": 0,
|
|
"mismatch_samples": [],
|
|
"pages": 1,
|
|
"skipped_missing_pk": 0,
|
|
"errors": 0,
|
|
"error_detail": null,
|
|
"compare_content": true,
|
|
"content_hash_supported": true
|
|
},
|
|
{
|
|
"task_code": "ODS_STORE_GOODS",
|
|
"table": "billiards_ods.store_goods_master",
|
|
"endpoint": "/TenantGoods/GetGoodsInventoryList",
|
|
"pk_columns": [
|
|
"id"
|
|
],
|
|
"records": 172,
|
|
"records_with_pk": 172,
|
|
"missing": 0,
|
|
"missing_samples": [],
|
|
"mismatch": 0,
|
|
"mismatch_samples": [],
|
|
"pages": 1,
|
|
"skipped_missing_pk": 0,
|
|
"errors": 0,
|
|
"error_detail": null,
|
|
"compare_content": true,
|
|
"content_hash_supported": true
|
|
},
|
|
{
|
|
"task_code": "ODS_TABLE_FEE_DISCOUNT",
|
|
"table": "billiards_ods.table_fee_discount_records",
|
|
"endpoint": "/Site/GetTaiFeeAdjustList",
|
|
"pk_columns": [
|
|
"id"
|
|
],
|
|
"records": 1782,
|
|
"records_with_pk": 1782,
|
|
"missing": 0,
|
|
"missing_samples": [],
|
|
"mismatch": 0,
|
|
"mismatch_samples": [],
|
|
"pages": 9,
|
|
"skipped_missing_pk": 0,
|
|
"errors": 0,
|
|
"error_detail": null,
|
|
"compare_content": true,
|
|
"content_hash_supported": true
|
|
},
|
|
{
|
|
"task_code": "ODS_TENANT_GOODS",
|
|
"table": "billiards_ods.tenant_goods_master",
|
|
"endpoint": "/TenantGoods/QueryTenantGoods",
|
|
"pk_columns": [
|
|
"id"
|
|
],
|
|
"records": 173,
|
|
"records_with_pk": 173,
|
|
"missing": 0,
|
|
"missing_samples": [],
|
|
"mismatch": 0,
|
|
"mismatch_samples": [],
|
|
"pages": 1,
|
|
"skipped_missing_pk": 0,
|
|
"errors": 0,
|
|
"error_detail": null,
|
|
"compare_content": true,
|
|
"content_hash_supported": true
|
|
},
|
|
{
|
|
"task_code": "ODS_SETTLEMENT_TICKET",
|
|
"table": "billiards_ods.settlement_ticket_details",
|
|
"endpoint": "/Order/GetOrderSettleTicketNew",
|
|
"pk_columns": [
|
|
"ordersettleid"
|
|
],
|
|
"records": 22176,
|
|
"records_with_pk": 0,
|
|
"missing": 0,
|
|
"missing_samples": [],
|
|
"mismatch": 0,
|
|
"mismatch_samples": [],
|
|
"pages": 113,
|
|
"skipped_missing_pk": 22176,
|
|
"errors": 0,
|
|
"error_detail": null,
|
|
"source_endpoint": "/PayLog/GetPayLogListPage"
|
|
}
|
|
],
|
|
"total_missing": 0,
|
|
"total_mismatch": 0,
|
|
"total_errors": 0,
|
|
"generated_at": "2026-01-31T06:00:58.194488+08:00"
|
|
},
|
|
"ods_to_dwd": {
|
|
"tables": [
|
|
{
|
|
"dwd_table": "billiards_dwd.dwd_settlement_head",
|
|
"ods_table": "billiards_ods.settlement_records",
|
|
"windowed": false,
|
|
"window_col": null,
|
|
"count": {
|
|
"dwd": 23366,
|
|
"ods": 23712,
|
|
"diff": -346
|
|
},
|
|
"amounts": [],
|
|
"mismatch": null,
|
|
"mismatch_samples": [],
|
|
"mismatch_error": "join_keys_or_compare_cols_unavailable"
|
|
},
|
|
{
|
|
"dwd_table": "billiards_dwd.dwd_settlement_head_ex",
|
|
"ods_table": "billiards_ods.settlement_records",
|
|
"windowed": false,
|
|
"window_col": null,
|
|
"count": {
|
|
"dwd": 23366,
|
|
"ods": 23712,
|
|
"diff": -346
|
|
},
|
|
"amounts": [],
|
|
"mismatch": null,
|
|
"mismatch_samples": [],
|
|
"mismatch_error": "join_keys_or_compare_cols_unavailable"
|
|
},
|
|
{
|
|
"dwd_table": "billiards_dwd.dwd_table_fee_log",
|
|
"ods_table": "billiards_ods.table_fee_transactions",
|
|
"windowed": true,
|
|
"window_col": null,
|
|
"count": {
|
|
"dwd": null,
|
|
"ods": null,
|
|
"diff": null
|
|
},
|
|
"amounts": [],
|
|
"mismatch": null,
|
|
"mismatch_samples": [],
|
|
"error": "AttributeError: 'tuple' object has no attribute 'items'"
|
|
},
|
|
{
|
|
"dwd_table": "billiards_dwd.dwd_table_fee_log_ex",
|
|
"ods_table": "billiards_ods.table_fee_transactions",
|
|
"windowed": true,
|
|
"window_col": null,
|
|
"count": {
|
|
"dwd": null,
|
|
"ods": null,
|
|
"diff": null
|
|
},
|
|
"amounts": [],
|
|
"mismatch": null,
|
|
"mismatch_samples": [],
|
|
"error": "AttributeError: 'tuple' object has no attribute 'items'"
|
|
},
|
|
{
|
|
"dwd_table": "billiards_dwd.dwd_table_fee_adjust",
|
|
"ods_table": "billiards_ods.table_fee_discount_records",
|
|
"windowed": false,
|
|
"window_col": null,
|
|
"count": {
|
|
"dwd": 2849,
|
|
"ods": 2943,
|
|
"diff": -94
|
|
},
|
|
"amounts": [
|
|
{
|
|
"column": "ledger_amount",
|
|
"dwd_sum": 329604.44,
|
|
"ods_sum": 348842.08,
|
|
"diff": -19237.640000000014
|
|
}
|
|
],
|
|
"mismatch": 0,
|
|
"mismatch_samples": [],
|
|
"mismatch_error": null
|
|
},
|
|
{
|
|
"dwd_table": "billiards_dwd.dwd_table_fee_adjust_ex",
|
|
"ods_table": "billiards_ods.table_fee_discount_records",
|
|
"windowed": true,
|
|
"window_col": null,
|
|
"count": {
|
|
"dwd": null,
|
|
"ods": null,
|
|
"diff": null
|
|
},
|
|
"amounts": [],
|
|
"mismatch": null,
|
|
"mismatch_samples": [],
|
|
"error": "AttributeError: 'tuple' object has no attribute 'items'"
|
|
},
|
|
{
|
|
"dwd_table": "billiards_dwd.dwd_store_goods_sale",
|
|
"ods_table": "billiards_ods.store_goods_sales_records",
|
|
"windowed": true,
|
|
"window_col": null,
|
|
"count": {
|
|
"dwd": null,
|
|
"ods": null,
|
|
"diff": null
|
|
},
|
|
"amounts": [],
|
|
"mismatch": null,
|
|
"mismatch_samples": [],
|
|
"error": "AttributeError: 'tuple' object has no attribute 'items'"
|
|
},
|
|
{
|
|
"dwd_table": "billiards_dwd.dwd_store_goods_sale_ex",
|
|
"ods_table": "billiards_ods.store_goods_sales_records",
|
|
"windowed": false,
|
|
"window_col": null,
|
|
"count": {
|
|
"dwd": 17563,
|
|
"ods": 17563,
|
|
"diff": 0
|
|
},
|
|
"amounts": [
|
|
{
|
|
"column": "coupon_deduct_money",
|
|
"dwd_sum": 0.0,
|
|
"ods_sum": 0.0,
|
|
"diff": 0.0
|
|
},
|
|
{
|
|
"column": "discount_money",
|
|
"dwd_sum": 21673.2,
|
|
"ods_sum": 21673.2,
|
|
"diff": 0.0
|
|
},
|
|
{
|
|
"column": "member_discount_amount",
|
|
"dwd_sum": 0.0,
|
|
"ods_sum": 0.0,
|
|
"diff": 0.0
|
|
},
|
|
{
|
|
"column": "option_coupon_deduct_money",
|
|
"dwd_sum": 0.0,
|
|
"ods_sum": 0.0,
|
|
"diff": 0.0
|
|
},
|
|
{
|
|
"column": "option_member_discount_money",
|
|
"dwd_sum": 0.0,
|
|
"ods_sum": 0.0,
|
|
"diff": 0.0
|
|
},
|
|
{
|
|
"column": "point_discount_money",
|
|
"dwd_sum": 0.0,
|
|
"ods_sum": 0.0,
|
|
"diff": 0.0
|
|
},
|
|
{
|
|
"column": "point_discount_money_cost",
|
|
"dwd_sum": 0.0,
|
|
"ods_sum": 0.0,
|
|
"diff": 0.0
|
|
},
|
|
{
|
|
"column": "push_money",
|
|
"dwd_sum": 0.0,
|
|
"ods_sum": 0.0,
|
|
"diff": 0.0
|
|
}
|
|
],
|
|
"mismatch": 0,
|
|
"mismatch_samples": [],
|
|
"mismatch_error": null
|
|
},
|
|
{
|
|
"dwd_table": "billiards_dwd.dwd_assistant_service_log",
|
|
"ods_table": "billiards_ods.assistant_service_records",
|
|
"windowed": true,
|
|
"window_col": null,
|
|
"count": {
|
|
"dwd": null,
|
|
"ods": null,
|
|
"diff": null
|
|
},
|
|
"amounts": [],
|
|
"mismatch": null,
|
|
"mismatch_samples": [],
|
|
"error": "AttributeError: 'tuple' object has no attribute 'items'"
|
|
},
|
|
{
|
|
"dwd_table": "billiards_dwd.dwd_assistant_service_log_ex",
|
|
"ods_table": "billiards_ods.assistant_service_records",
|
|
"windowed": true,
|
|
"window_col": null,
|
|
"count": {
|
|
"dwd": null,
|
|
"ods": null,
|
|
"diff": null
|
|
},
|
|
"amounts": [],
|
|
"mismatch": null,
|
|
"mismatch_samples": [],
|
|
"error": "AttributeError: 'tuple' object has no attribute 'items'"
|
|
},
|
|
{
|
|
"dwd_table": "billiards_dwd.dwd_assistant_trash_event",
|
|
"ods_table": "billiards_ods.assistant_cancellation_records",
|
|
"windowed": false,
|
|
"window_col": null,
|
|
"count": {
|
|
"dwd": 98,
|
|
"ods": 100,
|
|
"diff": -2
|
|
},
|
|
"amounts": [],
|
|
"mismatch": null,
|
|
"mismatch_samples": [],
|
|
"mismatch_error": "join_keys_or_compare_cols_unavailable"
|
|
},
|
|
{
|
|
"dwd_table": "billiards_dwd.dwd_assistant_trash_event_ex",
|
|
"ods_table": "billiards_ods.assistant_cancellation_records",
|
|
"windowed": false,
|
|
"window_col": null,
|
|
"count": {
|
|
"dwd": 98,
|
|
"ods": 100,
|
|
"diff": -2
|
|
},
|
|
"amounts": [],
|
|
"mismatch": null,
|
|
"mismatch_samples": [],
|
|
"mismatch_error": "join_keys_or_compare_cols_unavailable"
|
|
},
|
|
{
|
|
"dwd_table": "billiards_dwd.dwd_member_balance_change",
|
|
"ods_table": "billiards_ods.member_balance_changes",
|
|
"windowed": false,
|
|
"window_col": null,
|
|
"count": {
|
|
"dwd": 4745,
|
|
"ods": 4858,
|
|
"diff": -113
|
|
},
|
|
"amounts": [],
|
|
"mismatch": 0,
|
|
"mismatch_samples": [],
|
|
"mismatch_error": null
|
|
},
|
|
{
|
|
"dwd_table": "billiards_dwd.dwd_member_balance_change_ex",
|
|
"ods_table": "billiards_ods.member_balance_changes",
|
|
"windowed": false,
|
|
"window_col": null,
|
|
"count": {
|
|
"dwd": 4745,
|
|
"ods": 4858,
|
|
"diff": -113
|
|
},
|
|
"amounts": [
|
|
{
|
|
"column": "refund_amount",
|
|
"dwd_sum": 0.0,
|
|
"ods_sum": 0.0,
|
|
"diff": 0.0
|
|
}
|
|
],
|
|
"mismatch": 0,
|
|
"mismatch_samples": [],
|
|
"mismatch_error": null
|
|
},
|
|
{
|
|
"dwd_table": "billiards_dwd.dwd_groupbuy_redemption",
|
|
"ods_table": "billiards_ods.group_buy_redemption_records",
|
|
"windowed": true,
|
|
"window_col": null,
|
|
"count": {
|
|
"dwd": null,
|
|
"ods": null,
|
|
"diff": null
|
|
},
|
|
"amounts": [],
|
|
"mismatch": null,
|
|
"mismatch_samples": [],
|
|
"error": "AttributeError: 'tuple' object has no attribute 'items'"
|
|
},
|
|
{
|
|
"dwd_table": "billiards_dwd.dwd_groupbuy_redemption_ex",
|
|
"ods_table": "billiards_ods.group_buy_redemption_records",
|
|
"windowed": false,
|
|
"window_col": null,
|
|
"count": {
|
|
"dwd": 11427,
|
|
"ods": 11735,
|
|
"diff": -308
|
|
},
|
|
"amounts": [
|
|
{
|
|
"column": "assistant_promotion_money",
|
|
"dwd_sum": 7544.8,
|
|
"ods_sum": 7544.8,
|
|
"diff": 0.0
|
|
},
|
|
{
|
|
"column": "assistant_service_promotion_money",
|
|
"dwd_sum": 0.0,
|
|
"ods_sum": 0.0,
|
|
"diff": 0.0
|
|
},
|
|
{
|
|
"column": "goods_promotion_money",
|
|
"dwd_sum": 0.0,
|
|
"ods_sum": 0.0,
|
|
"diff": 0.0
|
|
},
|
|
{
|
|
"column": "recharge_promotion_money",
|
|
"dwd_sum": 0.0,
|
|
"ods_sum": 0.0,
|
|
"diff": 0.0
|
|
},
|
|
{
|
|
"column": "reward_promotion_money",
|
|
"dwd_sum": 0.0,
|
|
"ods_sum": 0.0,
|
|
"diff": 0.0
|
|
},
|
|
{
|
|
"column": "table_service_promotion_money",
|
|
"dwd_sum": 0.0,
|
|
"ods_sum": 0.0,
|
|
"diff": 0.0
|
|
}
|
|
],
|
|
"mismatch": 0,
|
|
"mismatch_samples": [],
|
|
"mismatch_error": null
|
|
},
|
|
{
|
|
"dwd_table": "billiards_dwd.dwd_platform_coupon_redemption",
|
|
"ods_table": "billiards_ods.platform_coupon_redemption_records",
|
|
"windowed": true,
|
|
"window_col": null,
|
|
"count": {
|
|
"dwd": null,
|
|
"ods": null,
|
|
"diff": null
|
|
},
|
|
"amounts": [],
|
|
"mismatch": null,
|
|
"mismatch_samples": [],
|
|
"error": "AttributeError: 'tuple' object has no attribute 'items'"
|
|
},
|
|
{
|
|
"dwd_table": "billiards_dwd.dwd_platform_coupon_redemption_ex",
|
|
"ods_table": "billiards_ods.platform_coupon_redemption_records",
|
|
"windowed": false,
|
|
"window_col": null,
|
|
"count": {
|
|
"dwd": 16977,
|
|
"ods": 17277,
|
|
"diff": -300
|
|
},
|
|
"amounts": [],
|
|
"mismatch": 0,
|
|
"mismatch_samples": [],
|
|
"mismatch_error": null
|
|
},
|
|
{
|
|
"dwd_table": "billiards_dwd.dwd_recharge_order",
|
|
"ods_table": "billiards_ods.recharge_settlements",
|
|
"windowed": false,
|
|
"window_col": null,
|
|
"count": {
|
|
"dwd": 455,
|
|
"ods": 462,
|
|
"diff": -7
|
|
},
|
|
"amounts": [],
|
|
"mismatch": null,
|
|
"mismatch_samples": [],
|
|
"mismatch_error": "join_keys_or_compare_cols_unavailable"
|
|
},
|
|
{
|
|
"dwd_table": "billiards_dwd.dwd_recharge_order_ex",
|
|
"ods_table": "billiards_ods.recharge_settlements",
|
|
"windowed": false,
|
|
"window_col": null,
|
|
"count": {
|
|
"dwd": 455,
|
|
"ods": 462,
|
|
"diff": -7
|
|
},
|
|
"amounts": [],
|
|
"mismatch": null,
|
|
"mismatch_samples": [],
|
|
"mismatch_error": "join_keys_or_compare_cols_unavailable"
|
|
},
|
|
{
|
|
"dwd_table": "billiards_dwd.dwd_payment",
|
|
"ods_table": "billiards_ods.payment_transactions",
|
|
"windowed": true,
|
|
"window_col": null,
|
|
"count": {
|
|
"dwd": null,
|
|
"ods": null,
|
|
"diff": null
|
|
},
|
|
"amounts": [],
|
|
"mismatch": null,
|
|
"mismatch_samples": [],
|
|
"error": "AttributeError: 'tuple' object has no attribute 'items'"
|
|
},
|
|
{
|
|
"dwd_table": "billiards_dwd.dwd_refund",
|
|
"ods_table": "billiards_ods.refund_transactions",
|
|
"windowed": true,
|
|
"window_col": null,
|
|
"count": {
|
|
"dwd": null,
|
|
"ods": null,
|
|
"diff": null
|
|
},
|
|
"amounts": [],
|
|
"mismatch": null,
|
|
"mismatch_samples": [],
|
|
"error": "AttributeError: 'tuple' object has no attribute 'items'"
|
|
},
|
|
{
|
|
"dwd_table": "billiards_dwd.dwd_refund_ex",
|
|
"ods_table": "billiards_ods.refund_transactions",
|
|
"windowed": false,
|
|
"window_col": null,
|
|
"count": {
|
|
"dwd": 45,
|
|
"ods": 46,
|
|
"diff": -1
|
|
},
|
|
"amounts": [
|
|
{
|
|
"column": "balance_frozen_amount",
|
|
"dwd_sum": 0.0,
|
|
"ods_sum": 0.0,
|
|
"diff": 0.0
|
|
},
|
|
{
|
|
"column": "card_frozen_amount",
|
|
"dwd_sum": 0.0,
|
|
"ods_sum": 0.0,
|
|
"diff": 0.0
|
|
},
|
|
{
|
|
"column": "refund_amount",
|
|
"dwd_sum": 0.0,
|
|
"ods_sum": 0.0,
|
|
"diff": 0.0
|
|
},
|
|
{
|
|
"column": "round_amount",
|
|
"dwd_sum": 0.0,
|
|
"ods_sum": 0.0,
|
|
"diff": 0.0
|
|
}
|
|
],
|
|
"mismatch": 0,
|
|
"mismatch_samples": [],
|
|
"mismatch_error": null
|
|
}
|
|
],
|
|
"total_count_diff": -1639,
|
|
"total_mismatch": 118581
|
|
},
|
|
"generated_at": "2026-01-31T06:01:15.314372+08:00"
|
|
}
|
|
],
|
|
"api_to_ods": {
|
|
"total_missing": 0,
|
|
"total_mismatch": 0,
|
|
"total_errors": 0
|
|
},
|
|
"total_missing": 0,
|
|
"total_mismatch": 0,
|
|
"total_errors": 0,
|
|
"generated_at": "2026-01-31T06:01:15.314392+08:00"
|
|
}
|
|
}
|