移除 ScenicPromotion 宣传页模块,并隐藏首页 promotion_page 入口。

删除 Mock 模块、图片资源与路由;从常用菜单白名单剔除该权限,后端仍下发时客户端静默忽略。

Co-authored-by: Cursor <cursoragent@cursor.com>
This commit is contained in:
2026-07-03 20:48:37 +08:00
parent 49e997ddba
commit 9df4c4f6e8
56 changed files with 43 additions and 3583 deletions

View File

@ -64,4 +64,4 @@ Home 模块负责登录后的首页工作台,包括当前景区展示、工作
`report_photographer` 已由 `Features/WildPhotographerReport` 接管。
`promotion_page` 已由 `Features/ScenicPromotion` 接管
`promotion_page`(宣传页)已从 iOS 移除;该 URI 列入 `HomeCommonMenuStore.hiddenHomeMenuURIs`,首页与全部功能页均不展示

View File

@ -68,7 +68,6 @@ enum HomeRoute: Hashable {
case travelAlbumEntry
case operatingArea
case pilotCertification
case scenicPromotion
case modulePlaceholder(uri: String, title: String)
}

View File

@ -47,7 +47,6 @@ enum HomeMenuRouter {
"project_edit": "项目管理",
"location_report": "位置上报",
"report_photographer": "举报摄影师",
"promotion_page": "宣传页",
"registration_invitation": "注册邀请",
"store": "店铺管理",
"fly": "飞行管理",
@ -135,8 +134,6 @@ enum HomeMenuRouter {
return .destination(.locationReportHistory)
case "report_photographer":
return .destination(.photographerReport)
case "promotion_page":
return .destination(.scenicPromotion)
case "deposit_order_detail", "deposit_order", "deposit_order_shooting_info":
return .destination(.depositOrders)
case "withdrawal_audit":
@ -223,7 +220,6 @@ enum HomeMenuRouter {
"project_edit",
"location_report",
"report_photographer",
"promotion_page",
"registration_invitation",
"photographer_invite",
"invite_record",
@ -304,8 +300,6 @@ enum HomeMenuRouter {
return "位置上报"
case "report_photographer":
return "举报摄影师"
case "promotion_page":
return "宣传页"
case "pm", "project_edit":
return "项目管理"
case "pm_manager":

View File

@ -31,7 +31,6 @@ struct HomeCommonMenuStore {
"pm",
"location_report",
"report_photographer",
"promotion_page",
"registration_invitation",
"store",
"fly",
@ -45,6 +44,11 @@ struct HomeCommonMenuStore {
"cooperation_order"
]
/// iOS URI使
static let hiddenHomeMenuURIs: Set<String> = [
"promotion_page"
]
private let defaults: UserDefaults
/// UserDefaults
@ -129,9 +133,11 @@ struct HomeCommonMenuStore {
let finalCommon: [String]
if !saved.isEmpty {
finalCommon = saved.filter { availableTopLevelSet.contains($0) }
finalCommon = saved
.filter { availableTopLevelSet.contains($0) }
.filter { !Self.hiddenHomeMenuURIs.contains($0) }
} else {
finalCommon = defaultCommon
finalCommon = defaultCommon.filter { !Self.hiddenHomeMenuURIs.contains($0) }
save(finalCommon, roleCode: roleCode, accountScope: accountScope)
}
@ -216,6 +222,6 @@ struct HomeCommonMenuStore {
/// URI Android
private static func isAndroidHomeMenuURI(_ uri: String) -> Bool {
androidHomeMenuURIs.contains(uri)
androidHomeMenuURIs.contains(uri) && !hiddenHomeMenuURIs.contains(uri)
}
}

View File

@ -80,6 +80,7 @@ final class HomeViewModel: ObservableObject {
var seen = Set<String>()
var deduplicated: [PermissionItem] = []
for item in permissionItems where !item.uri.trimmingCharacters(in: .whitespacesAndNewlines).isEmpty {
guard !HomeCommonMenuStore.hiddenHomeMenuURIs.contains(item.uri) else { continue }
if seen.insert(HomeMenuRouter.menuAliasKey(for: item.uri)).inserted {
deduplicated.append(item)
}

View File

@ -56,8 +56,6 @@ enum HomeIconCatalog {
"mappin.circle.fill"
case "report_photographer":
"shield.fill"
case "promotion_page":
"rectangle.on.rectangle.angled"
case "registration_invitation", "photographer_invite":
"envelope.open.fill"
case "store":

View File

@ -112,8 +112,6 @@ extension HomeRoute {
OperatingAreaView()
case .pilotCertification:
PilotCertificationView()
case .scenicPromotion:
ScenicPromotionView()
case let .modulePlaceholder(uri, title):
HomeMigrationModuleView(title: title, uri: uri)
}