快乐的梦鱼 hace 2 semanas
padre
commit
6a48528189
Se han modificado 2 ficheros con 18 adiciones y 14 borrados
  1. 3 0
      src/api/system/ConfigurationApi.ts
  2. 15 14
      src/pages/travel/route/list.vue

+ 3 - 0
src/api/system/ConfigurationApi.ts

@@ -21,6 +21,9 @@ export const CommonConfigurationConfig = {
 export interface IConfigurationItem {
   baseServerUrl: string,
   articleMark: string,
+  routeListImage: string,
+  routeListImageStyle: Record<string, any>,
+  routeListMarginTop: number,
 }
 
 export class ConfigurationApi extends UpdateServerRequestModule<DataModel> {

+ 15 - 14
src/pages/travel/route/list.vue

@@ -1,21 +1,20 @@
 <template>
-  <FlexCol innerClass="nana-travel-route-list">
+  <FlexCol 
+    v-if="appConfiguration"
+    innerClass="nana-travel-route-list" 
+    :innerStyle="{ 
+      backgroundImage: `url('${appConfiguration.routeListImage}')`,
+      ...appConfiguration.routeListImageStyle
+    }"
+  >
     <StatusBarSpace backgroundColor="transparent" />
     <NavBar
       title=""
       leftButton="back"
       backgroundColor="transparent"
-    >
-      <template #center>
-        <Image
-          src="https://mncdn.wenlvti.net/app_static/minnan/images/travel/RouteTitle.png"
-          mode="heightFix"
-          :height="45"
-        />
-      </template>
-    </NavBar>
+    />
     <SimplePageContentLoader :loader="listLoader">
-      <FlexCol backgroundColor="#fdfefe" :gap="30" :radius="35" :padding="40" :margin="[300,0,0,0]">
+      <FlexCol backgroundColor="#fdfefe" :gap="30" :radius="35" :padding="40" :margin="[appConfiguration.routeListMarginTop,0,0,0]">
         <FlexRow justify="space-between">
           <SimpleDropDownPicker v-model="selectedRegion" :columns="regionData.content.value" />
           <!-- <SimpleDropDownPicker v-model="selectedType" :columns="typeData.content.value" /> -->
@@ -78,6 +77,9 @@
 import { onMounted, ref, watch } from 'vue';
 import { navTo } from '@/components/utils/PageAction';
 import { useSimplePageContentLoader } from '@/common/composeabe/SimplePageContentLoader';
+import { useSimpleDataLoader } from '@/common/composeabe/SimpleDataLoader';
+import { waitTimeOut } from '@imengyu/imengyu-utils';
+import { injectAppConfiguration } from '@/api/system/useAppConfiguration';
 import type { GetContentListItem } from '@/api/CommonContent';
 import SimplePageContentLoader from '@/common/components/SimplePageContentLoader.vue';
 import FlexCol from '@/components/layout/FlexCol.vue';
@@ -92,12 +94,12 @@ import Button from '@/components/basic/Button.vue';
 import Tag from '@/components/display/Tag.vue';
 import SearchBar from '@/components/form/SearchBar.vue';
 import SimpleDropDownPicker from '@/common/components/SimpleDropDownPicker.vue';
-import { useSimpleDataLoader } from '@/common/composeabe/SimpleDataLoader';
 import CommonContent, { GetContentListParams } from '@/api/CommonContent';
 import Empty from '@/components/feedback/Empty.vue';
-import { waitTimeOut } from '@imengyu/imengyu-utils';
 import Touchable from '@/components/feedback/Touchable.vue';
 
+const appConfiguration = injectAppConfiguration();
+
 const listLoader = useSimplePageContentLoader(async () => {
   const res = (await TravalContent.getTravalRouteList(
     new GetContentListParams()
@@ -161,7 +163,6 @@ onMounted(async () => {
 
 <style lang="scss">
 .nana-travel-route-list {
-  background-image: url('https://mncdn.wenlvti.net/app_static/minnan/images/travel/RouteHeader.jpg');
   background-size: 100% auto;
   background-position: 0 60rpx;
   background-repeat: no-repeat;