kevin.T 2 hafta önce
ebeveyn
işleme
0344139837

+ 7 - 0
packages/app/src/pages-sub/home/offline-activity/cycling-rankings/index.vue

@@ -9,7 +9,12 @@ import PageHelperEvo from '@/components/page-helper-evo.vue'
 import BottomAppBar from '@/components/bottom-app-bar.vue'
 import { useUserStore } from '@/store'
 import { storeToRefs } from 'pinia'
+import { ComponentExposed } from 'vue-component-type-helpers'
 
+const PageHelperEvoRef = ref<ComponentExposed<typeof PageHelperEvo>>()
+const handleComfirm = () => {
+  PageHelperEvoRef.value?.reload()
+}
 const userStore = useUserStore()
 const { userInfo } = storeToRefs(userStore)
 const current = ref('')
@@ -40,6 +45,7 @@ onShareTimeline(() => ({
       ></wd-img>
       <div class="absolute bottom-50 left-7.25">
         <wd-picker
+          @confirm="handleComfirm"
           v-model="current"
           :columns="[
             { label: '全部', value: '' },
@@ -56,6 +62,7 @@ onShareTimeline(() => ({
       </div>
     </div>
     <PageHelperEvo
+      ref="PageHelperEvoRef"
       class="flex-grow flex flex-col"
       :request="getRidings"
       :is-load-more="false"

+ 33 - 27
packages/app/src/pages-sub/home/schedule/index.vue

@@ -44,17 +44,18 @@ onMounted(async () => {
     <view class="bg-black w-full aspect-[1.26/1]">
       <!--      <ImageEvo :src="currentStudyTour?.bannerUrl"></ImageEvo>-->
       <div
-        class="w-full h-full bg-[length:100%_auto]"
-        :style="{ backgroundImage: `url(${currentStudyTour?.bannerUrl})` }"
-      ></div>
-      <div
-        class="aspect-[4.17/1] bg-gradient-to-t from-black to-black/0 absolute left-0 bottom-0 w-full flex items-center"
+        class="w-full h-100vh bg-[length:100%_auto] bg-top bg-no-repeat"
+        :style="{
+          backgroundImage: `url(${currentStudyTour?.bannerUrl})`,
+          backgroundAttachment: 'fixed',
+        }"
       ></div>
+      <div class="aspect-[4.17/1] absolute left-0 bottom-0 w-full flex items-center"></div>
     </view>
-    <div class="flex-grow bg-white">
-      <view class="flex-grow bg-white relative bottom-4 rounded-t-2xl p-6.5">
+    <div class="flex-grow bg-white rounded-lt-[20px] rounded-tr-[20px] overflow-hidden pt-10px">
+      <view class="flex-grow relative bottom-4 p-6.5">
         <view class="border-b border-black/10 border-b-solid pb-5">
-          <div class="text-black/90 text-2xl font-normal font-['PingFang_SC'] leading-normal">
+          <div class="text-black/85 text-2xl fw-500 font-['PingFang_SC'] leading-normal">
             {{ currentStudyTour?.name }}
           </div>
           <view class="flex mt-5">
@@ -92,10 +93,10 @@ onMounted(async () => {
               >
                 <wd-img width="16" height="16" :src="map"></wd-img>
               </view>
-              <div class="ml-3 text-black/90 text-base font-normal">
+              <div class="ml-3 text-black/90 font-normal">
                 {{ dayjs(item?.travelTime).format('HH:mm') }}
               </div>
-              <div class="ml-10 mt-1 text-black/90 text-base font-normal">
+              <div class="ml-20px text-black/90 font-normal">
                 {{ item.title }}
               </div>
             </view>
@@ -103,28 +104,28 @@ onMounted(async () => {
             <!-- 标题 -->
 
             <!-- 描述 -->
-            <view class="ml-10 mt-2 border-b border-black/10 pb-5">
-              <span class="text-black/60 text-sm font-normal">行程介绍:</span>
-              <span class="text-black/40 text-sm font-normal">
+            <view class="ml-10 mt-2 border-b border-black/10 py-16px">
+              <span class="text-black/60 text-sm font-normal lh-23px">行程介绍:</span>
+              <span class="text-black/40 text-sm font-normal lh-23px">
                 {{ item.travelDesc }}
               </span>
             </view>
 
             <!-- 打卡示例 -->
             <template v-if="item.clockExplainUrl">
-              <view class="flex items-center mt-4 ml-10">
+              <view class="flex items-center ml-10">
                 <wd-img width="16" height="16" :src="camera"></wd-img>
                 <div class="ml-1 text-black/90 text-xs font-normal">打卡示例</div>
               </view>
               <wd-img
                 v-if="(item.clockExplainUrl ?? '') !== ''"
-                width="100%"
-                custom-class="rounded-2xl overflow-hidden mt-4"
+                width="300px"
+                custom-class="rounded-2xl overflow-hidden mt-11px ml-34px h-157px"
                 :src="item.clockExplainUrl"
                 mode="widthFix"
                 enable-preview
               ></wd-img>
-              <div class="mt-2.5 ml-10 text-xs font-normal">
+              <div class="mt-2.5 ml-10 text-black/40 text-xs font-normal">
                 {{ item.clockExplainDesc }}
               </div>
             </template>
@@ -136,16 +137,21 @@ onMounted(async () => {
       <div
         class="p-3.5 bg-white/90 rounded-2xl backdrop-blur-[20px] bottom-4 left-0 right-0 flex items-center justify-between gap-1"
       >
-        <!-- <div class="text-black/40 text-sm font-normal font-['PingFang_SC'] leading-[34px]">
-          发布圈子可得
-        </div>
-        <div class="text-[#ef4343] text-[22px] font-normal font-['D-DIN_Exp'] leading-normal">
-          16000
-        </div>
-        <div class="text-black/40 text-sm font-normal font-['PingFang_SC'] leading-[34px]">
-          积分
-        </div> -->
-        <view class="flex-1"></view>
+        <view
+          class="flex-1 flex items-center"
+          v-if="currentStudyTour.needPointsCount && currentStudyTour.needPointsCount > 0"
+        >
+          <div class="text-black/85 text-sm font-normal font-['PingFang_SC'] leading-[34px]">
+            发布圈子可得
+          </div>
+          <div class="text-[#ef4343] text-[22px] font-normal font-['D-DIN_Exp'] leading-normal">
+            {{ currentStudyTour.needPointsCount }}
+          </div>
+          <div class="text-black/85 text-sm font-normal font-['PingFang_SC'] leading-[34px]">
+            积分
+          </div>
+        </view>
+        <view v-else class="flex-1"></view>
         <view>
           <ButtonEvo size="lg" @click="router.push('/pages-sub/publish/moment/index?circleType=1')">
             发圈子

+ 3 - 3
packages/app/src/pages-sub/mine/homepage/index.vue

@@ -181,9 +181,9 @@ const shareMessage = () => {
       const res: Page.CustomShareContent = {}
       res.title = designerInfo.value?.homePageName
         ? designerInfo.value?.homePageName
-        : userInfo.value?.nickname + ' “${designerInfo.value?.designDesc}”'
+        : memberInfo.value.nickname
       res.imageUrl = designerInfo.value.sharePageUrl
-      res.path = `/pages-sub/mine/homepage/index?id=${userInfo.value?.userId}&isShared=true`
+      res.path = `/pages-sub/mine/homepage/index?id=${id.value}&isShared=true`
       resolve(res)
     }
   })
@@ -198,7 +198,7 @@ onShareAppMessage(shareMessage)
 onShareTimeline(() => ({
   title: designerInfo.value?.homePageName
     ? designerInfo.value?.homePageName
-    : userInfo.value?.nickname + ' “${designerInfo.value?.designDesc}”',
+    : memberInfo.value.nickname,
   imageUrl: designerInfo.value.sharePageUrl,
   query: 'id=' + id.value + '&isShared=true',
 }))

+ 2 - 2
packages/app/src/pages.json

@@ -1,7 +1,7 @@
 {
   "globalStyle": {
     "navigationStyle": "default",
-    "navigationBarTitleText": "筑巢荟",
+    "navigationBarTitleText": "unibest",
     "navigationBarBackgroundColor": "#f8f8f8",
     "navigationBarTextStyle": "black",
     "backgroundColor": "#FFFFFF"
@@ -637,4 +637,4 @@
       }
     }
   ]
-}
+}

+ 22 - 14
packages/merchant/src/pages/agent/designer/archives/award/imgs.vue

@@ -15,21 +15,29 @@ const urls = computed(() => {
     : basicData.value?.imageUrl.split(',')
 })
 const fileList = computed(() => {
-  const imgList =
-    basicData.value?.imageUrl && Array.isArray(basicData.value?.imageUrl)
-      ? basicData.value?.imageUrl
-      : basicData.value?.imageUrl.split(',')
-  return imgList?.map((item: string) => {
-    return { url: item }
-  })
+  let imgList: any[] = []
+  if (basicData.value?.imageUrl) {
+    imgList =
+      basicData.value?.imageUrl && Array.isArray(basicData.value?.imageUrl)
+        ? basicData.value?.imageUrl
+        : basicData.value?.imageUrl.split(',')
+    imgList = imgList.map((item: string) => {
+      return { url: item }
+    })
+  } else {
+    imgList = []
+  }
+  return imgList
 })
 const submitUpload = async () => {
-  // const { id, userId } = basicData.value
-  if (formData.value) {
-    const { code } = await updateDesignerBasicInfo({ userId: id.value, imageUrl: formData.value })
-    if (code === 0) {
-      uni.navigateBack()
-    }
+  const { id: submitId } = basicData.value
+  let data: any = { userId: id.value, imageUrl: formData.value }
+  if (submitId) {
+    data = { userId: id.value, id: submitId, imageUrl: formData.value }
+  }
+  const { code } = await updateDesignerBasicInfo(data)
+  if (code === 0) {
+    uni.navigateBack()
   }
 }
 const handleChange = ({ fileList }) => {
@@ -47,7 +55,7 @@ onLoad((query?: Record<string | 'id', string>) => {
   if (query?.id) {
     id.value = query?.id
     setBasicData()
-    formData.value = basicData.value?.imageUrl
+    formData.value = basicData.value?.imageUrl ?? ''
   }
 })
 </script>