zhuli 1 месяц назад
Родитель
Сommit
6f3cf9a66f
1 измененных файлов с 33 добавлено и 8 удалено
  1. 33 8
      HBuilderProjects/shareDynamic.html

+ 33 - 8
HBuilderProjects/shareDynamic.html

@@ -38,7 +38,7 @@
 			overflow-x: hidden;
 		}
 
-		/* getDeleteFlagById 返回「暂无承载数据」:与 shareIndex 关店态一致,上方提示 + 更多推荐 */
+		/* getOne businessStatus=99 或「暂无承载数据」:隐藏主内容 #dynPageMain,展示关店横幅 + 更多推荐(与 shareIndex 一致) */
 		#dynPageMain {
 			display: block;
 		}
@@ -1437,21 +1437,45 @@
 				});
 		}
 
-		function showDynNoCarryingDataState() {
+		/** 关店横幅 + 更多推荐区显隐(与 shareIndex applyShareIndexClosedMerchantUi 的 banner / content 对应关系一致) */
+		function setShareDynamicClosedSurfaceDom(visible) {
 			var main = document.getElementById('dynPageMain');
 			if (main) {
-				main.style.display = 'none';
+				main.style.display = visible ? 'none' : '';
+				main.setAttribute('aria-hidden', visible ? 'true' : 'false');
 			}
 			var banner = document.getElementById('shareClosedBanner');
 			var recWrap = document.getElementById('shareClosedRecommendWrap');
 			if (banner) {
-				banner.style.display = 'block';
-				banner.setAttribute('aria-hidden', 'false');
+				banner.style.display = visible ? 'block' : 'none';
+				banner.setAttribute('aria-hidden', visible ? 'false' : 'true');
 			}
 			if (recWrap) {
-				recWrap.style.display = 'block';
-				recWrap.setAttribute('aria-hidden', 'false');
+				recWrap.style.display = visible ? 'block' : 'none';
+				recWrap.setAttribute('aria-hidden', visible ? 'false' : 'true');
 			}
+		}
+
+		/**
+		 * store/info/getOne 返回 businessStatus=99:与 shareIndex.html 一致,置 closedMerchantFlag、隐藏 #dynPageMain、
+		 * 展示 #shareClosedBanner / #shareClosedRecommendWrap 并拉更多推荐。
+		 */
+		function applyShareDynamicClosedMerchantUi(closed) {
+			var wasClosed = closedMerchantFlag;
+			closedMerchantFlag = closed;
+			if (closed) {
+				setShareDynamicClosedSurfaceDom(true);
+				if (!wasClosed) {
+					loadDynNoCarryRecommendations();
+				}
+			} else {
+				setShareDynamicClosedSurfaceDom(false);
+				renderShareClosedRecommended([]);
+			}
+		}
+
+		function showDynNoCarryingDataState() {
+			setShareDynamicClosedSurfaceDom(true);
 			loadDynNoCarryRecommendations();
 		}
 
@@ -2175,7 +2199,8 @@
 		function boot() {
 			fetchGetDeleteFlagByIdIfId().then(function (res) {
 				if (isGetOneBusinessStatus99(res)) {
-					closedMerchantFlag = true;
+					applyShareDynamicClosedMerchantUi(true);
+					return;
 				}
 				// if (shouldRedirectToShareCheckInUndefined(res)) {
 				// 	window.location.replace(buildShareCheckInUndefinedHref(res));