feat(customer): 新增接待人员选择功能

- 为 ShopDealerApply 模型增加接待人员 ID 和姓名字段
- dealer/customer/add 页面引入 Popup、SearchBar 及图标组件
- 实现接待人员选择弹层及搜索功能
- 表单中新增接待人员展示及清除操作
- 编辑模式下回填接待人员信息
- 提交表单时携带接待人员相关字段

feat(index): 新增首页品牌画册展示组件

- 创建 CatalogShowcase 组件及样式文件
- 展示品牌画册封面及标题说明
- “点击查看”按钮复制链接并提示用户打开浏览器查看
- 在首页主视图添加 CatalogShowcase 组件显示

fix(webview): 优化 webview 页面 URL 获取逻辑

- 使用 useRouter Hook 获取参数替代直接调用 Taro.getCurrentPages
-
This commit is contained in:
2026-04-09 12:24:07 +08:00
parent 5a73d8d8c4
commit 969bc00b53
6 changed files with 357 additions and 4 deletions

View File

@@ -0,0 +1,109 @@
.catalog-showcase {
margin: 16px;
padding: 16px;
background: #ffffff;
border-radius: 12px;
box-shadow: 0 2px 8px rgba(0, 0, 0, 0.06);
}
.catalog-header {
margin-bottom: 16px;
}
.catalog-title-bar {
display: flex;
align-items: center;
gap: 8px;
margin-bottom: 4px;
}
.catalog-icon {
width: 20px;
height: 20px;
color: #3b82f6;
}
.catalog-title {
font-size: 16px;
font-weight: 600;
color: #1f2937;
}
.catalog-subtitle {
font-size: 12px;
color: #6b7280;
margin-left: 28px;
}
.catalog-content {
display: flex;
flex-direction: column;
align-items: center;
gap: 16px;
}
.catalog-preview {
width: 100%;
display: flex;
justify-content: center;
}
.catalog-cover {
width: 140px;
height: 180px;
background: linear-gradient(135deg, #3b82f6 0%, #1d4ed8 100%);
border-radius: 8px;
display: flex;
flex-direction: column;
align-items: center;
justify-content: center;
gap: 8px;
box-shadow: 0 4px 12px rgba(59, 130, 246, 0.3);
}
.cover-icon {
width: 48px;
height: 48px;
color: rgba(255, 255, 255, 0.9);
}
.cover-text {
font-size: 14px;
font-weight: 600;
color: #ffffff;
text-align: center;
padding: 0 12px;
}
.cover-subtext {
font-size: 11px;
color: rgba(255, 255, 255, 0.7);
}
.view-catalog-btn {
width: 100%;
height: 44px;
background: linear-gradient(to right, #3b82f6, #2563eb);
border-radius: 22px;
display: flex;
align-items: center;
justify-content: center;
gap: 6px;
border: none;
&::after {
border: none;
}
.btn-text {
font-size: 15px;
font-weight: 500;
color: #ffffff;
}
.btn-icon {
width: 16px;
height: 16px;
color: #ffffff;
}
}