完善实名认证、钱包与打卡点模块 UI 与业务逻辑。

对齐 Android 实名认证流程与审核页、钱包提现/积分兑换界面,优化打卡点列表与详情交互,并补充相关资源、主题 token 与单元测试。

Co-authored-by: Cursor <cursoragent@cursor.com>
This commit is contained in:
2026-07-13 16:28:10 +08:00
parent 07b2b9d459
commit 5138c1c11a
63 changed files with 3101 additions and 745 deletions

View File

@ -0,0 +1,6 @@
{
"info" : {
"author" : "xcode",
"version" : 1
}
}

View File

@ -0,0 +1,5 @@
{
"images" : [{ "filename" : "punch_point_delete.svg", "idiom" : "universal" }],
"info" : { "author" : "xcode", "version" : 1 },
"properties" : { "preserves-vector-representation" : true }
}

View File

@ -0,0 +1 @@
<svg width="16" height="16" viewBox="0 0 16 16" fill="none" xmlns="http://www.w3.org/2000/svg"><path d="M14.208 3.002H11.992C11.98 2.918 11.953 2.834 11.913 2.751L11.367 1.63C11.183 1.251 10.742 1.004 10.253 1.004H5.753C5.264 1.004 4.824 1.251 4.639 1.63L4.092 2.751C4.052 2.835 4.025 2.92 4.011 3.002H1.771C1.341 3.002 .989 3.354 .989 3.784V4.215C.989 4.645 1.341 4.996 1.771 4.996H2.986V14.212C2.986 14.641 3.338 14.993 3.767 14.993H12.199C12.628 14.993 12.98 14.641 12.98 14.212V4.995H14.21C14.639 4.995 14.991 4.643 14.991 4.213V3.782C14.989 3.354 14.638 3.002 14.208 3.002ZM6.031 12.487C6.031 12.766 5.803 12.995 5.524 12.995C5.244 12.995 5.016 12.766 5.016 12.487V6.504C5.016 6.224 5.244 5.996 5.524 5.996C5.803 5.996 6.031 6.224 6.031 6.504V12.487ZM8.546 12.487C8.546 12.766 8.317 12.995 8.038 12.995C7.758 12.995 7.53 12.766 7.53 12.487V6.504C7.53 6.224 7.758 5.996 8.038 5.996C8.317 5.996 8.546 6.224 8.546 6.504V12.487ZM11.049 12.487C11.049 12.766 10.821 12.995 10.541 12.995C10.261 12.995 10.033 12.766 10.033 12.487V6.504C10.033 6.224 10.261 5.996 10.541 5.996C10.821 5.996 11.049 6.224 11.049 6.504V12.487Z" fill="#EF4444"/></svg>

After

Width:  |  Height:  |  Size: 1.1 KiB

View File

@ -0,0 +1,15 @@
{
"images" : [
{
"filename" : "punch_point_dropdown.svg",
"idiom" : "universal"
}
],
"info" : {
"author" : "xcode",
"version" : 1
},
"properties" : {
"preserves-vector-representation" : true
}
}

View File

@ -0,0 +1,3 @@
<svg width="24" height="24" viewBox="0 0 24 24" xmlns="http://www.w3.org/2000/svg">
<path d="M7 10L12 15L17 10H7Z" fill="#4B5563"/>
</svg>

After

Width:  |  Height:  |  Size: 141 B

View File

@ -0,0 +1,15 @@
{
"images" : [
{
"filename" : "punch_point_image_add.svg",
"idiom" : "universal"
}
],
"info" : {
"author" : "xcode",
"version" : 1
},
"properties" : {
"preserves-vector-representation" : true
}
}

View File

@ -0,0 +1,3 @@
<svg width="24" height="24" viewBox="0 0 24 24" xmlns="http://www.w3.org/2000/svg">
<path d="M19 13H13V19H11V13H5V11H11V5H13V11H19V13Z" fill="#B6BECA"/>
</svg>

After

Width:  |  Height:  |  Size: 162 B

View File

@ -0,0 +1,5 @@
{
"images" : [{ "filename" : "punch_point_image_delete.svg", "idiom" : "universal" }],
"info" : { "author" : "xcode", "version" : 1 },
"properties" : { "preserves-vector-representation" : true }
}

View File

@ -0,0 +1 @@
<svg width="24" height="24" viewBox="0 0 24 24" fill="none" xmlns="http://www.w3.org/2000/svg"><circle cx="12" cy="12" r="10" fill="black" fill-opacity=".5"/><path d="M8 8L16 16M16 8L8 16" stroke="white" stroke-width="1.5" stroke-linecap="round"/></svg>

After

Width:  |  Height:  |  Size: 254 B

View File

@ -0,0 +1,5 @@
{
"images" : [{ "filename" : "punch_point_location.svg", "idiom" : "universal" }],
"info" : { "author" : "xcode", "version" : 1 },
"properties" : { "preserves-vector-representation" : true }
}

View File

@ -0,0 +1 @@
<svg width="16" height="16" viewBox="0 0 16 16" fill="none" xmlns="http://www.w3.org/2000/svg"><path d="M8.625 13.695C9.094 13.135 9.667 12.38 10.344 11.431C11.021 10.498 11.628 9.531 12.167 8.53C12.688 7.529 12.965 6.647 13 5.885C12.965 4.494 12.479 3.341 11.542 2.425C10.604 1.508 9.424 1.034 8 1C6.576 1.034 5.396 1.508 4.458 2.425C3.521 3.341 3.035 4.494 3 5.885C3.035 6.647 3.312 7.529 3.833 8.53C4.372 9.531 4.979 10.498 5.656 11.431C6.333 12.38 6.906 13.135 7.375 13.695C7.548 13.898 7.757 14 8 14C8.243 14 8.452 13.898 8.625 13.695ZM8 4.256C8.625 4.273 9.102 4.544 9.432 5.07C9.745 5.613 9.745 6.156 9.432 6.699C9.102 7.225 8.625 7.496 8 7.513C7.375 7.496 6.898 7.225 6.568 6.699C6.255 6.156 6.255 5.613 6.568 5.07C6.898 4.544 7.375 4.273 8 4.256Z" fill="#4B5563"/></svg>

After

Width:  |  Height:  |  Size: 780 B

View File

@ -0,0 +1,5 @@
{
"images" : [{ "filename" : "punch_point_map_location.svg", "idiom" : "universal" }],
"info" : { "author" : "xcode", "version" : 1 },
"properties" : { "preserves-vector-representation" : true }
}

View File

@ -0,0 +1 @@
<svg width="24" height="24" viewBox="0 0 24 24" fill="none" xmlns="http://www.w3.org/2000/svg"><circle cx="12" cy="12" r="7" stroke="#0073FF" stroke-width="1.25"/><circle cx="12" cy="12" r="4" fill="#0073FF"/><path d="M12 3V5M12 19V21M3 12H5M19 12H21" stroke="#0073FF" stroke-width="1.25" stroke-linecap="round"/></svg>

After

Width:  |  Height:  |  Size: 320 B

View File

@ -0,0 +1,5 @@
{
"images" : [{ "filename" : "punch_point_marker.svg", "idiom" : "universal" }],
"info" : { "author" : "xcode", "version" : 1 },
"properties" : { "preserves-vector-representation" : true }
}

View File

@ -0,0 +1 @@
<svg width="24" height="24" viewBox="0 0 24 24" fill="none" xmlns="http://www.w3.org/2000/svg"><path d="M12 1C6.477 1 2 5.477 2 11C2 17.2 8.67 22.2 11.1 23.73C11.65 24.08 12.35 24.08 12.9 23.73C15.33 22.2 22 17.2 22 11C22 5.477 17.523 1 12 1Z" fill="#FF4D4F"/><circle cx="12" cy="10" r="3" fill="#111111"/></svg>

After

Width:  |  Height:  |  Size: 313 B

View File

@ -0,0 +1,5 @@
{
"images" : [{ "filename" : "punch_point_qr.svg", "idiom" : "universal" }],
"info" : { "author" : "xcode", "version" : 1 },
"properties" : { "preserves-vector-representation" : true }
}

View File

@ -0,0 +1 @@
<svg width="16" height="16" viewBox="0 0 16 16" fill="none" xmlns="http://www.w3.org/2000/svg"><path d="M10.692 10.692H12.846V8.538H15V11.769H12.846V12.846H10.692V11.769H8.538V8.538H10.692V10.692ZM1 8.538H7.462V15H1V8.538ZM3.154 10.692V12.846H5.308V10.692H3.154ZM1 1H7.462V7.462H1V1ZM3.154 3.154V5.308H5.308V3.154H3.154ZM8.538 1H15V7.462H8.538V1ZM10.692 3.154V5.308H12.846V3.154H10.692ZM12.846 12.846H15V15H12.846V12.846ZM8.538 12.846H10.692V15H8.538V12.846Z" fill="#4B5563"/></svg>

After

Width:  |  Height:  |  Size: 483 B

View File

@ -0,0 +1,5 @@
{
"images" : [{ "filename" : "punch_point_zoom_in.svg", "idiom" : "universal" }],
"info" : { "author" : "xcode", "version" : 1 },
"properties" : { "preserves-vector-representation" : true }
}

View File

@ -0,0 +1 @@
<svg width="24" height="24" viewBox="0 0 24 24" fill="none" xmlns="http://www.w3.org/2000/svg"><rect x="4" y="10.5" width="16" height="3" rx="1.5" fill="#0073FF"/><rect x="10.5" y="4" width="3" height="16" rx="1.5" fill="#0073FF"/></svg>

After

Width:  |  Height:  |  Size: 238 B

View File

@ -0,0 +1,5 @@
{
"images" : [{ "filename" : "punch_point_zoom_out.svg", "idiom" : "universal" }],
"info" : { "author" : "xcode", "version" : 1 },
"properties" : { "preserves-vector-representation" : true }
}

View File

@ -0,0 +1 @@
<svg width="24" height="24" viewBox="0 0 24 24" fill="none" xmlns="http://www.w3.org/2000/svg"><rect x="4.5" y="10.5" width="16" height="3" rx="1.5" fill="#0073FF"/></svg>

After

Width:  |  Height:  |  Size: 172 B