From 24dc7ec489cc2206c69ad26b4c931905ad81bd8a Mon Sep 17 00:00:00 2001 From: zhengyiming <540361168@qq.com> Date: 星期一, 17 二月 2025 14:31:52 +0800 Subject: [PATCH] fix: b端 --- apps/cMiniApp/config/staging.js | 4 apps/cMiniApp/src/pages/home/index.vue | 13 +++- apps/cMiniApp/src/utils/common/localtion.ts | 12 ++++ apps/cMiniApp/src/hooks/task.ts | 11 +++ apps/cMiniApp/src/utils/index.ts | 1 apps/cMiniApp/src/stores/modules/user.ts | 13 +-- apps/cMiniApp/src/subpackages/city/citySelect/citySelect.vue | 49 +++++++++++++++- apps/cMiniApp/src/utils/common/index.ts | 1 apps/bMiniApp/src/hooks/user.ts | 14 ---- apps/bMiniApp/src/stores/modules/user.ts | 16 ++-- apps/bMiniApp/src/utils/common/index.ts | 1 apps/cMiniApp/src/hooks/user.ts | 14 ---- apps/bMiniApp/src/utils/common/localtion.ts | 12 ++++ apps/bMiniApp/src/utils/index.ts | 1 apps/bMiniApp/src/assets/home/icon-logo.png | 0 apps/bMiniApp/src/pages/home/index.vue | 11 +++ 16 files changed, 119 insertions(+), 54 deletions(-) diff --git a/apps/bMiniApp/src/assets/home/icon-logo.png b/apps/bMiniApp/src/assets/home/icon-logo.png index ec03de3..7d4d5f2 100644 --- a/apps/bMiniApp/src/assets/home/icon-logo.png +++ b/apps/bMiniApp/src/assets/home/icon-logo.png Binary files differ diff --git a/apps/bMiniApp/src/hooks/user.ts b/apps/bMiniApp/src/hooks/user.ts index f104353..1f9b943 100644 --- a/apps/bMiniApp/src/hooks/user.ts +++ b/apps/bMiniApp/src/hooks/user.ts @@ -67,20 +67,8 @@ const router = Taro.useRouter(); Taro.useReady(async () => { - let res; - try { - res = await LocationUtils.getLocation(); - } catch (error) {} if (isLogin.value && userStore.firstGetUserDetail) { - userStore.firstGetUserDetail = false; - if (LocationUtils.isProvinceChange(userStore.locationProvince)) { - userStore.resetState(); - } else { - userStore.getCurrentUserInfo(); - } - } - if (res?.result?.ad_info?.city && userStore.firstSetLocation) { - userStore.setLocationCity(res.result.ad_info.city, res.result.ad_info.province); + userStore.getCurrentUserInfo(); } if (needAuth && !isLogin.value) { Taro.navigateTo({ diff --git a/apps/bMiniApp/src/pages/home/index.vue b/apps/bMiniApp/src/pages/home/index.vue index 4c9777e..0d5207e 100644 --- a/apps/bMiniApp/src/pages/home/index.vue +++ b/apps/bMiniApp/src/pages/home/index.vue @@ -8,12 +8,12 @@ <div class="home-header"> <div class="home-searchbar-wrapper"> <div class="city-btn-wrapper"> - <div class="city-btn" @click="goCitySelect"> + <div class="city-btn"> <img :src="IconLocaltion" class="city-btn-icon" /> <div class="city-btn-text">{{ locationCity }}</div> </div> </div> - <div class="reset-localtion">閲嶆柊瀹氫綅</div> + <div class="reset-localtion" @click="resetLocation">閲嶆柊瀹氫綅</div> </div> <div class="home-banner-wrapper"> <nut-swiper :auto-play="3000"> @@ -80,6 +80,7 @@ import HomeQueryMenuView from './HomeQueryMenuView.vue'; import HomeQueryPositionMenuView from './HomeQueryPositionMenuView.vue'; import IconLocaltion from '@/assets/home/icon-localtion.png'; +import { setLocationCity } from '@/utils'; const { locationCity } = useUser(); @@ -150,6 +151,12 @@ url: `${RouterPath.flexJobDetail}?id=${item.id}`, }); } + +async function resetLocation() { + try { + await setLocationCity(); + } catch (error) {} +} </script> <style lang="scss"> diff --git a/apps/bMiniApp/src/stores/modules/user.ts b/apps/bMiniApp/src/stores/modules/user.ts index 7e52ace..9425112 100644 --- a/apps/bMiniApp/src/stores/modules/user.ts +++ b/apps/bMiniApp/src/stores/modules/user.ts @@ -293,14 +293,14 @@ this.locationProvince = provinceName; this.firstSetLocation = false; setStorageLocationCity({ city: cityName, province: provinceName }); - if (LocationUtils.isProvinceChange(provinceName)) { - this.resetState(); - myClient.removeQueries(); - globalEventEmitter.trigger('logout/refresh'); - // myClient.invalidateQueries({ - // queryKey: ['logout/refresh'], - // }); - } + // if (LocationUtils.isProvinceChange(provinceName)) { + // this.resetState(); + // myClient.removeQueries(); + // globalEventEmitter.trigger('logout/refresh'); + // // myClient.invalidateQueries({ + // // queryKey: ['logout/refresh'], + // // }); + // } LocationUtils.currentProvinceName = provinceName; }, }, diff --git a/apps/bMiniApp/src/utils/common/index.ts b/apps/bMiniApp/src/utils/common/index.ts new file mode 100644 index 0000000..8c712ab --- /dev/null +++ b/apps/bMiniApp/src/utils/common/index.ts @@ -0,0 +1 @@ +export * from './localtion'; diff --git a/apps/bMiniApp/src/utils/common/localtion.ts b/apps/bMiniApp/src/utils/common/localtion.ts new file mode 100644 index 0000000..55cdb3c --- /dev/null +++ b/apps/bMiniApp/src/utils/common/localtion.ts @@ -0,0 +1,12 @@ +import { LocationUtils } from '@12333/utils'; +import { useUserStoreWithOut } from '@/stores/modules/user'; + +export async function setLocationCity() { + try { + let res = await LocationUtils.getLocation(); + if (res?.result?.ad_info?.city) { + const userStore = useUserStoreWithOut(); + userStore.setLocationCity(res.result.ad_info.city, res.result.ad_info.province); + } + } catch (error) {} +} diff --git a/apps/bMiniApp/src/utils/index.ts b/apps/bMiniApp/src/utils/index.ts index ccae4b4..b030767 100644 --- a/apps/bMiniApp/src/utils/index.ts +++ b/apps/bMiniApp/src/utils/index.ts @@ -1,2 +1,3 @@ export * from './storage'; export * from './page'; +export * from './common'; diff --git a/apps/cMiniApp/config/staging.js b/apps/cMiniApp/config/staging.js index 0dfad2c..3da68a7 100644 --- a/apps/cMiniApp/config/staging.js +++ b/apps/cMiniApp/config/staging.js @@ -1,7 +1,7 @@ module.exports = { env: { - BASE_URL: '"https://testrlywx.boleyuma.com"', - // BASE_URL: '"https://api.81812333.com"', + // BASE_URL: '"https://testrlywx.boleyuma.com"', + BASE_URL: '"https://api.81812333.com"', BASE_URL_JX: '"https://api.jx818.com"', OSS_URL: '"https://waterdroptest2.oss-cn-hangzhou.aliyuncs.com/"', diff --git a/apps/cMiniApp/src/hooks/task.ts b/apps/cMiniApp/src/hooks/task.ts index 36970be..0082d1d 100644 --- a/apps/cMiniApp/src/hooks/task.ts +++ b/apps/cMiniApp/src/hooks/task.ts @@ -3,13 +3,20 @@ import * as orderServices from '@12333/services/api/Order'; import _ from 'lodash'; import { trim } from '@12333/utils'; +import { MaybeRef } from 'vue'; export enum HomeOrderType { Recommend = 'Recommend', LastShelfTime = 'LastShelfTime', } -export function useTaskList() { +type UseTaskListOptions = { + cityName?: MaybeRef<string>; +}; + +export function useTaskList(options: UseTaskListOptions = {}) { + const { cityName = '' } = options; + const searchValue = ref(''); const queryMenuState = reactive({ @@ -45,7 +52,7 @@ }); }, { - queryKey: ['orderServices/getFrontOrderList', queryState, queryMenuState], + queryKey: ['orderServices/getFrontOrderList', queryState, queryMenuState, cityName], } ); diff --git a/apps/cMiniApp/src/hooks/user.ts b/apps/cMiniApp/src/hooks/user.ts index f104353..1f9b943 100644 --- a/apps/cMiniApp/src/hooks/user.ts +++ b/apps/cMiniApp/src/hooks/user.ts @@ -67,20 +67,8 @@ const router = Taro.useRouter(); Taro.useReady(async () => { - let res; - try { - res = await LocationUtils.getLocation(); - } catch (error) {} if (isLogin.value && userStore.firstGetUserDetail) { - userStore.firstGetUserDetail = false; - if (LocationUtils.isProvinceChange(userStore.locationProvince)) { - userStore.resetState(); - } else { - userStore.getCurrentUserInfo(); - } - } - if (res?.result?.ad_info?.city && userStore.firstSetLocation) { - userStore.setLocationCity(res.result.ad_info.city, res.result.ad_info.province); + userStore.getCurrentUserInfo(); } if (needAuth && !isLogin.value) { Taro.navigateTo({ diff --git a/apps/cMiniApp/src/pages/home/index.vue b/apps/cMiniApp/src/pages/home/index.vue index 8ec5e32..6f60143 100644 --- a/apps/cMiniApp/src/pages/home/index.vue +++ b/apps/cMiniApp/src/pages/home/index.vue @@ -68,7 +68,7 @@ import { useUserStore } from '@/stores/modules/user'; import { RectDown, Location2 } from '@nutui/icons-vue-taro'; import Taro from '@tarojs/taro'; -import { LocationUtils, trim } from '@12333/utils'; +import { setLocationCity } from '@/utils'; import _ from 'lodash'; import IconLogo from '@/assets/home/icon-logo.png'; import { TaskCard, ProTabs, ProTabPane } from '@12333/components'; @@ -79,8 +79,15 @@ const userStore = useUserStore(); -const { searchValue, queryState, handleSearch, infiniteLoadingProps, queryMenuState } = - useTaskList(); +const { searchValue, queryState, handleSearch, infiniteLoadingProps, queryMenuState } = useTaskList( + { cityName: locationCity } +); + +onMounted(async () => { + try { + await setLocationCity(); + } catch (error) {} +}); function goCitySelect() { Taro.navigateTo({ diff --git a/apps/cMiniApp/src/stores/modules/user.ts b/apps/cMiniApp/src/stores/modules/user.ts index 7e52ace..31de28b 100644 --- a/apps/cMiniApp/src/stores/modules/user.ts +++ b/apps/cMiniApp/src/stores/modules/user.ts @@ -293,14 +293,11 @@ this.locationProvince = provinceName; this.firstSetLocation = false; setStorageLocationCity({ city: cityName, province: provinceName }); - if (LocationUtils.isProvinceChange(provinceName)) { - this.resetState(); - myClient.removeQueries(); - globalEventEmitter.trigger('logout/refresh'); - // myClient.invalidateQueries({ - // queryKey: ['logout/refresh'], - // }); - } + // if (LocationUtils.isProvinceChange(provinceName)) { + // this.resetState(); + // myClient.removeQueries(); + // globalEventEmitter.trigger('logout/refresh'); + // } LocationUtils.currentProvinceName = provinceName; }, }, diff --git a/apps/cMiniApp/src/subpackages/city/citySelect/citySelect.vue b/apps/cMiniApp/src/subpackages/city/citySelect/citySelect.vue index 2d20cbc..f5bd9aa 100644 --- a/apps/cMiniApp/src/subpackages/city/citySelect/citySelect.vue +++ b/apps/cMiniApp/src/subpackages/city/citySelect/citySelect.vue @@ -6,10 +6,10 @@ <div class="city-btn-wrapper"> <div class="city-btn"> <img :src="IconLocaltion" class="city-btn-icon" /> - <div class="city-btn-text">{{ locationCity }}</div> + <div class="city-btn-text">褰撳墠瀹氫綅锛歿{ locationCity }}</div> </div> </div> - <div class="reset-localtion">閲嶆柊瀹氫綅</div> + <div class="reset-localtion" @click="resetLocation">閲嶆柊瀹氫綅</div> </div> <Elevator :index-list="elevatorData" :height="'100%'" @click-item="clickItem" /> </ContentView> @@ -24,7 +24,8 @@ import { groupBy, sortBy } from 'lodash'; import { useUserStore } from '@/stores/modules/user'; import { Elevator } from '@12333/components'; -import IconLocaltion from '@/assets/home/icon-localtion.png'; +import IconLocaltion from '@/assets/task/icon-localtion.png'; +import { setLocationCity } from '@/utils'; defineOptions({ name: 'citySelect', @@ -66,12 +67,54 @@ console.log('item: ', item, getAreaByAreaCode(item.parentId).areaName); userStore.setLocationCity(item.name, getAreaByAreaCode(item.parentId).areaName); }; + +async function resetLocation() { + try { + await setLocationCity(); + } catch (error) {} +} </script> <style lang="scss"> @import '@/styles/common.scss'; .citySelect-page-wrapper { + .home-searchbar-wrapper { + padding: 32px 0 28px; + display: flex; + align-items: center; + + .city-btn-wrapper { + flex: 1; + min-width: 0; + + .city-btn { + display: flex; + align-items: center; + padding-right: 36px; + color: boleGetCssVar('text-color', 'primary'); + + .city-btn-icon { + width: 40px; + height: 40px; + } + + .city-btn-text { + @include ellipsis; + margin-left: 12px; + font-size: 30px; + } + } + } + + .reset-localtion { + font-weight: 400; + font-size: 24px; + color: boleGetCssVar('color', 'primary'); + line-height: 28px; + } + } + .current-city { padding: 20px 0; color: boleGetCssVar('text-color', 'primary'); diff --git a/apps/cMiniApp/src/utils/common/index.ts b/apps/cMiniApp/src/utils/common/index.ts new file mode 100644 index 0000000..8c712ab --- /dev/null +++ b/apps/cMiniApp/src/utils/common/index.ts @@ -0,0 +1 @@ +export * from './localtion'; diff --git a/apps/cMiniApp/src/utils/common/localtion.ts b/apps/cMiniApp/src/utils/common/localtion.ts new file mode 100644 index 0000000..55cdb3c --- /dev/null +++ b/apps/cMiniApp/src/utils/common/localtion.ts @@ -0,0 +1,12 @@ +import { LocationUtils } from '@12333/utils'; +import { useUserStoreWithOut } from '@/stores/modules/user'; + +export async function setLocationCity() { + try { + let res = await LocationUtils.getLocation(); + if (res?.result?.ad_info?.city) { + const userStore = useUserStoreWithOut(); + userStore.setLocationCity(res.result.ad_info.city, res.result.ad_info.province); + } + } catch (error) {} +} diff --git a/apps/cMiniApp/src/utils/index.ts b/apps/cMiniApp/src/utils/index.ts index ccae4b4..b030767 100644 --- a/apps/cMiniApp/src/utils/index.ts +++ b/apps/cMiniApp/src/utils/index.ts @@ -1,2 +1,3 @@ export * from './storage'; export * from './page'; +export * from './common'; -- Gitblit v1.9.1