开店第三页银行卡号:只允许数字,最多 19 位;校验仍为 16–19 位。

门店详情 / 开店页:去掉顶栏返回与标题空白,内容上顶,顶部约 12px,与「门店管理」一致。
开店第一页底部:在「下一步」左侧加了「返回」(回门店列表);第 2、3 步仍是「上一步」。
This commit is contained in:
2026-07-22 12:44:12 +08:00
parent 9a550cbaaf
commit 5e33dd9847
3 changed files with 25 additions and 17 deletions
+15 -9
View File
@@ -2,8 +2,6 @@ import { useEffect, useMemo, useRef, useState } from 'react';
import { useNavigate, useSearchParams } from 'react-router-dom'; import { useNavigate, useSearchParams } from 'react-router-dom';
import PageHeader from '@dukang/shared-ui/PageHeader';
import ChinaRegionPicker from '../components/ChinaRegionPicker'; import ChinaRegionPicker from '../components/ChinaRegionPicker';
import OssUploadField from '../components/OssUploadField'; import OssUploadField from '../components/OssUploadField';
@@ -576,11 +574,7 @@ export default function StoreCreatePage() {
return ( return (
<div className="partner-page-sticky"> <div className="partner-page-sticky partner-home--flush-top">
<PageHeader title="录入新门店" onBack={() => navigate('/stores')} />
<nav className="partner-stepper"> <nav className="partner-stepper">
@@ -980,7 +974,15 @@ export default function StoreCreatePage() {
<label> *</label> <label> *</label>
<input className="partner-field-input partner-field-input--block" placeholder="请输入16-19位银行卡号" value={form.bankAccountNo} onChange={(e) => patchForm({ bankAccountNo: e.target.value })} /> <input
className="partner-field-input partner-field-input--block"
inputMode="numeric"
autoComplete="cc-number"
maxLength={19}
placeholder="请输入16-19位银行卡号"
value={form.bankAccountNo}
onChange={(e) => patchForm({ bankAccountNo: e.target.value.replace(/\D/g, '').slice(0, 19) })}
/>
</div> </div>
@@ -1116,7 +1118,11 @@ export default function StoreCreatePage() {
<footer className="partner-sticky-footer"> <footer className="partner-sticky-footer">
{step > 1 && ( {step === 1 ? (
<button type="button" className="partner-btn-outline" onClick={() => navigate('/stores')} disabled={nextDisabled}></button>
) : (
<button type="button" className="partner-btn-outline" onClick={() => goStep(step - 1)} disabled={nextDisabled}></button> <button type="button" className="partner-btn-outline" onClick={() => goStep(step - 1)} disabled={nextDisabled}></button>
@@ -1,6 +1,5 @@
import { useEffect, useState } from 'react'; import { useEffect, useState } from 'react';
import { useNavigate, useParams } from 'react-router-dom'; import { useNavigate, useParams } from 'react-router-dom';
import PageHeader from '@dukang/shared-ui/PageHeader';
import AppImage from '@dukang/shared-ui/AppImage'; import AppImage from '@dukang/shared-ui/AppImage';
import { request } from '../lib/api'; import { request } from '../lib/api';
import { toastSuccess } from '../lib/toast'; import { toastSuccess } from '../lib/toast';
@@ -199,8 +198,7 @@ export default function StoreDetailPage() {
if (loadError) { if (loadError) {
return ( return (
<div className="partner-detail-page"> <div className="partner-detail-page partner-home--flush-top">
<PageHeader title="门店详情" onBack={() => navigate('/stores')} />
<div className="empty">{loadError}</div> <div className="empty">{loadError}</div>
</div> </div>
); );
@@ -222,10 +220,8 @@ export default function StoreDetailPage() {
const canOpen = canPartnerOpenStore(auditStatus); const canOpen = canPartnerOpenStore(auditStatus);
return ( return (
<div className="partner-detail-page"> <div className="partner-detail-page partner-home--flush-top">
<PageHeader title="门店详情" onBack={() => navigate('/stores')} /> <main style={{ padding: '12px 20px 16px' }}>
<main style={{ padding: '16px 20px' }}>
{actionError && <p className="partner-form-error" role="alert" style={{ marginBottom: 12 }}>{actionError}</p>} {actionError && <p className="partner-form-error" role="alert" style={{ marginBottom: 12 }}>{actionError}</p>}
<section className="partner-form-card" style={{ margin: '0 0 16px' }}> <section className="partner-form-card" style={{ margin: '0 0 16px' }}>
+7 -1
View File
@@ -3329,10 +3329,16 @@ body {
} }
.partner-home--flush-top.partner-store-page, .partner-home--flush-top.partner-store-page,
.partner-home--flush-top.partner-center-page { .partner-home--flush-top.partner-center-page,
.partner-home--flush-top.partner-detail-page,
.partner-home--flush-top.partner-page-sticky {
padding-top: 12px; padding-top: 12px;
} }
.partner-home--flush-top.partner-page-sticky .partner-stepper {
padding-top: 4px;
}
.partner-home--flush-top .partner-sticky-filter { .partner-home--flush-top .partner-sticky-filter {
padding-top: 12px; padding-top: 12px;
} }