快乐的梦鱼 дней назад: 4
Родитель
Сommit
aab1d59cdb

+ 2 - 0
src/api/inhert/VillageInfoApi.ts

@@ -62,6 +62,8 @@ export class CommonInfoModel extends DataModel<CommonInfoModel> {
       if (this.longitude && this.latitude) {
         this.lonlat = [this.longitude as number, this.latitude as number];
       }
+      if (this.avatar)
+        this.villageVolunteerAvatar = this.avatar as string;
     };
     this._afterSolveClient = (data) => {
       if (this.cityAddress) {

+ 1 - 1
src/api/light/LightVillageApi.ts

@@ -300,7 +300,7 @@ export class LightVillageApi extends AppServerRequestModule<DataModel> {
       type_text?: string;
       sex_text?: string;
       status_text?: string;
-      image?: string;
+      avatar?: string;
     }[]>('/village/volunteer/getRanklist', '志愿者排行榜', params, undefined, undefined, {
       cacheEnable: true,
       cacheTime: 1000 * 60 * 10, //10min

+ 2 - 1
src/common/components/parts/IndexCommonImageItem.vue

@@ -16,7 +16,7 @@
     <template #footer> 
       <FlexRow v-if="userName || likes" justify="space-between" align="center" :padding="[10,0]" :margin="[10,0,0,0]">
         <FlexRow align="center" :gap="10">
-          <Avatar :url="image" :size="40" />
+          <Avatar :url="userAvatar || image" defaultAvatar="https://xy.wenlvti.net/app_static/images/mine/DefaultAvatar.png" :size="40" />
           <Text :text="userName" :fontSize="24" color="gray" />
         </FlexRow>
         <FlexRow align="center" :gap="10">
@@ -40,6 +40,7 @@ const props = defineProps<{
   title?: string;
   desc?: string;
   userName?: string;
+  userAvatar?: string;
   likes?: number;
   isLike?: boolean;
   defaultImage?: string;

+ 2 - 1
src/pages/home/discover/index.vue

@@ -65,6 +65,7 @@
               <Avatar 
                 :src="good.villageVolunteerAvatar"
                 :size="40"
+                defaultAvatar="https://xy.wenlvti.net/app_static/images/mine/DefaultAvatar.png"
               />
               <Text :text="`发布人: ${good.villageVolunteerName}`" fontConfig="contentText" />
             </FlexRow>
@@ -149,7 +150,7 @@ const villageUserRankListLoader = useSimpleDataLoader(async () => {
   const res = (await LightVillageApi.getVolunteerRankList({ num: 10 }))
     .map((item, i) => ({
       id: item.id,
-      image: item.image ?? '',
+      image: item.avatar ?? '',
       title: item.name,
       rank: i + 1,
       score: item.points,

+ 2 - 1
src/pages/home/index.vue

@@ -167,6 +167,7 @@
             :title="item.title"
             :desc="item.content ?? ''"
             :userName="item.villageVolunteerName ?? ''"
+            :userAvatar="item.villageVolunteerAvatar"
             :likes="0"
             :isLike="false"
             @click="handleGoRecommendDetails(item)"
@@ -288,7 +289,7 @@ const villageUserRankListLoader = useSimpleDataLoader(async () => {
   const res = (await LightVillageApi.getVolunteerRankList({ num: 3 }))
     .map((item, i) => ({
       id: item.id,
-      image: item.image ?? '',
+      image: item.avatar ?? '',
       title: item.name,
       rank: i + 1,
       score: item.points,

+ 1 - 0
src/pages/home/village/goods/detail.vue

@@ -22,6 +22,7 @@
               <Avatar 
                 :src="goodLoader.content.value.villageVolunteerAvatar"
                 :size="40"
+                defaultAvatar="https://xy.wenlvti.net/app_static/images/mine/DefaultAvatar.png"
               />
               <Text :text="`发布人: ${goodLoader.content.value.villageVolunteerName}`" fontConfig="contentText" />
             </FlexRow>

+ 8 - 1
src/pages/home/village/goods/index.vue

@@ -27,6 +27,7 @@
                 <Avatar 
                   :src="good.villageVolunteerAvatar"
                   :size="40"
+                defaultAvatar="https://xy.wenlvti.net/app_static/images/mine/DefaultAvatar.png"
                 />
                 <Text :text="`发布人: ${good.villageVolunteerName}`" fontConfig="contentText" />
               </FlexRow>
@@ -113,16 +114,22 @@ const handleOpen = () => {
   toast('暂未开放,敬请期待!');
 }
 
-onMounted(async () => {
+async function loadVolunteerInfo() {
   await getIsVolunteer();
   canCollect.value = await getCanCollect(querys.value.villageId);
   await goodsLoader.load();
+}
+
+onMounted(() => {
+  loadVolunteerInfo();
 });
 
 defineExpose({
   onPageBack(name: string, param: any) {
     if (param && param.needRefresh)
       goodsLoader.reload();
+    if (name === 'registerDone')
+      loadVolunteerInfo();  
   },
 });
 </script>

+ 1 - 1
src/pages/home/village/introd/card.vue

@@ -404,7 +404,7 @@ const villageUserRankListLoader = useSimpleDataLoader(async () => {
   }))
     .map((item, i) => ({
       id: item.id,
-      image: item.image ?? '',
+      image: item.avatar ?? '',
       title: item.name,
       rank: i + 1,
       score: item.points,

+ 1 - 1
src/pages/home/village/rank/volunteer.vue

@@ -52,7 +52,7 @@ const villageUserRankListLoader = useSimpleDataLoader(async () => {
   }))
     .map((item, i) => ({
       id: item.id,
-      image: item.image ?? '',
+      image: item.avatar ?? '',
       title: item.name,
       rank: i + 1,
       score: item.points,

+ 2 - 0
src/pages/home/village/volunteer/detail.vue

@@ -13,6 +13,7 @@
           <Avatar
             :src="infoLoader.content.value.image"
             :size="200"
+            defaultAvatar="https://xy.wenlvti.net/app_static/images/village/PlaceholderVolunteerNew.png"
           />
           <Width :width="60" />
           <FlexCol gap="gap.md">
@@ -71,6 +72,7 @@
               :size="80"
               :round="false"
               :radius="10"
+              defaultAvatar="https://xy.wenlvti.net/app_static/images/village/PlaceholderVolunteerNew.png"
             />
             <Text :text="item.remark || '没有说明文字!'" fontConfig="contentText" :innerStyle="{ flex: 1 }" />
           </FlexRow>