From f67339ba8ff32589b2cbda0be19db932b4b2b121 Mon Sep 17 00:00:00 2001
From: wupengfei <834520024@qq.com>
Date: 星期四, 13 二月 2025 15:52:54 +0800
Subject: [PATCH] Merge branch 'master' of http://120.26.58.240:8888/r/flexJobMiniApp
---
apps/bMiniApp/config/index.js | 4
apps/bMiniApp/src/assets/tabbar/icon-home.png | 0
apps/cMiniApp/src/pages/home/index.vue | 8
apps/bMiniApp/src/assets/tabbar/icon-home-active.png | 0
apps/bMiniApp/src/constants/router.ts | 1
apps/bMiniApp/src/pages/workbenches/InnerPage.vue | 13 +
apps/bMiniApp/src/custom-tab-bar/index.scss | 8
apps/bMiniApp/src/assets/tabbar/icon-mine.png | 0
apps/bMiniApp/src/app.config.ts | 8
apps/bMiniApp/src/assets/tabbar/icon-mine-active.png | 0
apps/bMiniApp/src/components/Menu/Menu.vue | 8
apps/bMiniApp/src/components/Menu/menu.scss | 4
apps/bMiniApp/src/assets/home/icon-logo.png | 0
apps/cMiniApp/src/pages/home/HomeQueryMenuView.vue | 18 +
apps/bMiniApp/src/pages/home/index.vue | 169 +++++++++++++++++++-
apps/cMiniApp/src/pages/mine/index.vue | 2
apps/bMiniApp/src/assets/tabbar/icon-task.png | 0
apps/bMiniApp/src/constants/tabBar.ts | 1
apps/bMiniApp/src/pages/home/HomeQueryPositionMenuView.vue | 47 +++++
apps/bMiniApp/src/pages/workbenches/workbenches.config.ts | 3
apps/cMiniApp/src/hooks/task.ts | 9
apps/bMiniApp/src/assets/tabbar/icon-task-active.png | 0
/dev/null | 0
apps/bMiniApp/src/pages/home/constants/index.ts | 4
apps/bMiniApp/src/custom-tab-bar/index.tsx | 37 +---
apps/bMiniApp/src/pages/workbenches/workbenches.vue | 13 +
packages/components/src/Card/FlexJobCard.vue | 1
apps/bMiniApp/config/dev.js | 16 +-
apps/bMiniApp/src/pages/home/HomeQueryMenuView.vue | 57 +++++++
29 files changed, 357 insertions(+), 74 deletions(-)
diff --git a/apps/bMiniApp/config/dev.js b/apps/bMiniApp/config/dev.js
index 761ccfb..05b5f02 100644
--- a/apps/bMiniApp/config/dev.js
+++ b/apps/bMiniApp/config/dev.js
@@ -9,14 +9,14 @@
OSS_URL: '"https://waterdroptest2.oss-cn-hangzhou.aliyuncs.com/"',
WEMAP_KEY: 'T2UBZ-N563J-ZCHFF-XDOXN-VCH7S-CJB2T',
},
- plugins: [
- [
- '@tarojs/plugin-mock',
- {
- mocks: mocks,
- },
- ],
- ],
+ // plugins: [
+ // [
+ // '@tarojs/plugin-mock',
+ // {
+ // mocks: mocks,
+ // },
+ // ],
+ // ],
defineConstants: {},
mini: {},
h5: {},
diff --git a/apps/bMiniApp/config/index.js b/apps/bMiniApp/config/index.js
index bb4c8db..49d75a1 100644
--- a/apps/bMiniApp/config/index.js
+++ b/apps/bMiniApp/config/index.js
@@ -106,7 +106,9 @@
},
webpackChain(chain, webpack) {
if (process.env.NODE_ENV === 'development') {
- chain.plugin('analyzer').use(require('webpack-bundle-analyzer').BundleAnalyzerPlugin, []);
+ chain
+ .plugin('analyzer')
+ .use(require('webpack-bundle-analyzer').BundleAnalyzerPlugin, [{ analyzerPort: 8889 }]);
}
chain.plugin('unplugin-auto-import').use(
diff --git a/apps/bMiniApp/src/app.config.ts b/apps/bMiniApp/src/app.config.ts
index 5477fee..f6774a8 100644
--- a/apps/bMiniApp/src/app.config.ts
+++ b/apps/bMiniApp/src/app.config.ts
@@ -1,6 +1,6 @@
export default defineAppConfig({
entryPagePath: 'pages/home/index',
- pages: ['pages/home/index', 'pages/mine/index'],
+ pages: ['pages/home/index', 'pages/mine/index', 'pages/workbenches/workbenches'],
requiredPrivateInfos: ['getLocation'],
permission: {
'scope.userLocation': {
@@ -26,6 +26,12 @@
text: '棣栭〉',
},
{
+ pagePath: 'pages/workbenches/workbenches',
+ iconPath: 'assets/tabbar/icon-task.png',
+ selectedIconPath: 'assets/tabbar/icon-task-active.png',
+ text: '宸ヤ綔鍙�',
+ },
+ {
pagePath: 'pages/mine/index',
iconPath: 'assets/tabbar/icon-mine.png',
selectedIconPath: 'assets/tabbar/icon-mine-active.png',
diff --git a/apps/bMiniApp/src/assets/home/icon-logo.png b/apps/bMiniApp/src/assets/home/icon-logo.png
new file mode 100644
index 0000000..084a4b0
--- /dev/null
+++ b/apps/bMiniApp/src/assets/home/icon-logo.png
Binary files differ
diff --git a/apps/bMiniApp/src/assets/tabbar/icon-follow-active.png b/apps/bMiniApp/src/assets/tabbar/icon-follow-active.png
deleted file mode 100644
index 8935690..0000000
--- a/apps/bMiniApp/src/assets/tabbar/icon-follow-active.png
+++ /dev/null
Binary files differ
diff --git a/apps/bMiniApp/src/assets/tabbar/icon-follow.png b/apps/bMiniApp/src/assets/tabbar/icon-follow.png
deleted file mode 100644
index 1a52d69..0000000
--- a/apps/bMiniApp/src/assets/tabbar/icon-follow.png
+++ /dev/null
Binary files differ
diff --git a/apps/bMiniApp/src/assets/tabbar/icon-friend-active.png b/apps/bMiniApp/src/assets/tabbar/icon-friend-active.png
deleted file mode 100644
index 9c87699..0000000
--- a/apps/bMiniApp/src/assets/tabbar/icon-friend-active.png
+++ /dev/null
Binary files differ
diff --git a/apps/bMiniApp/src/assets/tabbar/icon-friend.png b/apps/bMiniApp/src/assets/tabbar/icon-friend.png
deleted file mode 100644
index e7925dd..0000000
--- a/apps/bMiniApp/src/assets/tabbar/icon-friend.png
+++ /dev/null
Binary files differ
diff --git a/apps/bMiniApp/src/assets/tabbar/icon-home-active.png b/apps/bMiniApp/src/assets/tabbar/icon-home-active.png
index 89b000a..6ac80b1 100644
--- a/apps/bMiniApp/src/assets/tabbar/icon-home-active.png
+++ b/apps/bMiniApp/src/assets/tabbar/icon-home-active.png
Binary files differ
diff --git a/apps/bMiniApp/src/assets/tabbar/icon-home.png b/apps/bMiniApp/src/assets/tabbar/icon-home.png
index 8fcdf1c..76ad785 100644
--- a/apps/bMiniApp/src/assets/tabbar/icon-home.png
+++ b/apps/bMiniApp/src/assets/tabbar/icon-home.png
Binary files differ
diff --git a/apps/bMiniApp/src/assets/tabbar/icon-information-active.png b/apps/bMiniApp/src/assets/tabbar/icon-information-active.png
deleted file mode 100644
index c0d442f..0000000
--- a/apps/bMiniApp/src/assets/tabbar/icon-information-active.png
+++ /dev/null
Binary files differ
diff --git a/apps/bMiniApp/src/assets/tabbar/icon-information.png b/apps/bMiniApp/src/assets/tabbar/icon-information.png
deleted file mode 100644
index bff15c8..0000000
--- a/apps/bMiniApp/src/assets/tabbar/icon-information.png
+++ /dev/null
Binary files differ
diff --git a/apps/bMiniApp/src/assets/tabbar/icon-message-active.png b/apps/bMiniApp/src/assets/tabbar/icon-message-active.png
deleted file mode 100644
index fb4e87d..0000000
--- a/apps/bMiniApp/src/assets/tabbar/icon-message-active.png
+++ /dev/null
Binary files differ
diff --git a/apps/bMiniApp/src/assets/tabbar/icon-message.png b/apps/bMiniApp/src/assets/tabbar/icon-message.png
deleted file mode 100644
index 0635f33..0000000
--- a/apps/bMiniApp/src/assets/tabbar/icon-message.png
+++ /dev/null
Binary files differ
diff --git a/apps/bMiniApp/src/assets/tabbar/icon-mine-active.png b/apps/bMiniApp/src/assets/tabbar/icon-mine-active.png
index ba19ce1..8e174e6 100644
--- a/apps/bMiniApp/src/assets/tabbar/icon-mine-active.png
+++ b/apps/bMiniApp/src/assets/tabbar/icon-mine-active.png
Binary files differ
diff --git a/apps/bMiniApp/src/assets/tabbar/icon-mine.png b/apps/bMiniApp/src/assets/tabbar/icon-mine.png
index dddc254..d399adb 100644
--- a/apps/bMiniApp/src/assets/tabbar/icon-mine.png
+++ b/apps/bMiniApp/src/assets/tabbar/icon-mine.png
Binary files differ
diff --git a/apps/bMiniApp/src/assets/tabbar/icon-product-active.png b/apps/bMiniApp/src/assets/tabbar/icon-product-active.png
deleted file mode 100644
index a5d9e0c..0000000
--- a/apps/bMiniApp/src/assets/tabbar/icon-product-active.png
+++ /dev/null
Binary files differ
diff --git a/apps/bMiniApp/src/assets/tabbar/icon-product.png b/apps/bMiniApp/src/assets/tabbar/icon-product.png
deleted file mode 100644
index 7167f0d..0000000
--- a/apps/bMiniApp/src/assets/tabbar/icon-product.png
+++ /dev/null
Binary files differ
diff --git a/apps/bMiniApp/src/assets/tabbar/icon-task-active.png b/apps/bMiniApp/src/assets/tabbar/icon-task-active.png
new file mode 100644
index 0000000..7f3906a
--- /dev/null
+++ b/apps/bMiniApp/src/assets/tabbar/icon-task-active.png
Binary files differ
diff --git a/apps/bMiniApp/src/assets/tabbar/icon-task.png b/apps/bMiniApp/src/assets/tabbar/icon-task.png
new file mode 100644
index 0000000..b1ce967
--- /dev/null
+++ b/apps/bMiniApp/src/assets/tabbar/icon-task.png
Binary files differ
diff --git a/apps/bMiniApp/src/components/Menu/Menu.vue b/apps/bMiniApp/src/components/Menu/Menu.vue
index 309ad7d..dbf99e6 100644
--- a/apps/bMiniApp/src/components/Menu/Menu.vue
+++ b/apps/bMiniApp/src/components/Menu/Menu.vue
@@ -17,8 +17,8 @@
<view class="nut-menu__title-text">{{ item.renderTitle() }}</view>
<span class="nut-menu__title-icon">
<slot name="icon">
- <RectUp v-if="direction === 'up'" :size="12" />
- <RectDown v-else :size="12" />
+ <TriangleUp v-if="direction === 'up'" :size="12" />
+ <TriangleDown v-else :size="12" />
</slot>
</span>
</view>
@@ -30,7 +30,7 @@
</template>
<script lang="ts">
import Taro, { usePageScroll } from '@tarojs/taro';
-import { RectUp, RectDown } from '@nutui/icons-vue-taro';
+import { RectUp, RectDown, TriangleDown, TriangleUp } from '@nutui/icons-vue-taro';
import { useTaroRect } from 'senin-mini/hooks';
import './menu.scss';
@@ -40,6 +40,8 @@
components: {
RectDown,
RectUp,
+ TriangleDown,
+ TriangleUp,
},
props: {
activeColor: {
diff --git a/apps/bMiniApp/src/components/Menu/menu.scss b/apps/bMiniApp/src/components/Menu/menu.scss
index e8fbe15..4641c59 100644
--- a/apps/bMiniApp/src/components/Menu/menu.scss
+++ b/apps/bMiniApp/src/components/Menu/menu.scss
@@ -4,7 +4,7 @@
color: boleGetCssVar('text-color', 'primary');
.nut-menu__title-icon {
- color: #000;
+ color: boleGetCssVar('text-color', 'secondary');
}
.nut-menu__title.active {
@@ -24,7 +24,7 @@
flex: none;
.nut-menu__title-text {
padding-left: 0;
- font-size: 24rpx;
+ font-size: 26rpx;
color: #000;
}
}
diff --git a/apps/bMiniApp/src/constants/router.ts b/apps/bMiniApp/src/constants/router.ts
index f71ad29..8aa78f5 100644
--- a/apps/bMiniApp/src/constants/router.ts
+++ b/apps/bMiniApp/src/constants/router.ts
@@ -7,6 +7,7 @@
registerForm = '/subpackages/login/registerForm/registerForm',
home = '/pages/home/index',
mine = '/pages/mine/index',
+ workbenches = '/pages/workbenches/workbenches',
editRichContent = '/subpackages/editRichContent/editRichContent',
// userInfo = '/subpackages/setting/userInfo/userInfo',
diff --git a/apps/bMiniApp/src/constants/tabBar.ts b/apps/bMiniApp/src/constants/tabBar.ts
index 405c9bd..977f397 100644
--- a/apps/bMiniApp/src/constants/tabBar.ts
+++ b/apps/bMiniApp/src/constants/tabBar.ts
@@ -1,4 +1,5 @@
export const TabBarPageRouter = {
Home: '/pages/home/index',
+ Workbenches: '/pages/workbenches/workbenches',
Mine: '/pages/mine/index',
};
diff --git a/apps/bMiniApp/src/custom-tab-bar/index.scss b/apps/bMiniApp/src/custom-tab-bar/index.scss
index 8b60f24..d084602 100644
--- a/apps/bMiniApp/src/custom-tab-bar/index.scss
+++ b/apps/bMiniApp/src/custom-tab-bar/index.scss
@@ -43,14 +43,14 @@
}
.bottom-tab-item-icon {
- width: 40px;
- height: 40px;
+ width: 48px;
+ height: 48px;
}
.bottom-tab-item-text {
color: #707070;
- font-size: 20px;
- line-height: 24px;
+ font-size: 24px;
+ line-height: 28px;
}
.bottom-tab-item-badge {
diff --git a/apps/bMiniApp/src/custom-tab-bar/index.tsx b/apps/bMiniApp/src/custom-tab-bar/index.tsx
index fd1eeda..083f636 100644
--- a/apps/bMiniApp/src/custom-tab-bar/index.tsx
+++ b/apps/bMiniApp/src/custom-tab-bar/index.tsx
@@ -117,7 +117,7 @@
}}
>
<TarBarItem
- text={'homeTitle'}
+ text={'棣栭〉'}
icon="../assets/tabbar/icon-home.png"
activeIcon="../assets/tabbar/icon-home-active.png"
pagePath={TabBarPageRouter.Home}
@@ -126,40 +126,25 @@
className="home"
onClick={switchTab}
></TarBarItem>
- {/* <TarBarItem
- text="琛屼笟鍦�"
- icon="../assets/tabbar/icon-friend.png"
- activeIcon="../assets/tabbar/icon-friend-active.png"
- pagePath={TabBarPageRouter.CircleFriend}
- index={1}
- active={system.activeTab === 1}
- className="circleFriend"
- onClick={switchTab}
- ></TarBarItem>
- <div class="bottom-tab-item publish-wrapper" onClick={goPublish}>
- <img class="bottom-tab-item-img-publish" src={IconPublish} />
- <div class="bottom-tab-item-text">鍙戝竷</div>
- </div>
<TarBarItem
- text="娑堟伅"
- icon="../assets/tabbar/icon-message.png"
- activeIcon="../assets/tabbar/icon-message-active.png"
- pagePath={TabBarPageRouter.Message}
- active={system.activeTab === 2}
- className="message"
+ text="宸ヤ綔鍙�"
+ icon="../assets/tabbar/icon-task.png"
+ activeIcon="../assets/tabbar/icon-task-active.png"
+ pagePath={TabBarPageRouter.Workbenches}
+ active={system.activeTab === 1}
+ className="task"
onClick={switchTab}
- index={2}
- badge={(isLogin.value && myMessageCount.value?.unReadCount) ?? 0}
- ></TarBarItem> */}
+ index={1}
+ ></TarBarItem>
<TarBarItem
text="鎴戠殑"
icon="../assets/tabbar/icon-mine.png"
activeIcon="../assets/tabbar/icon-mine-active.png"
pagePath={TabBarPageRouter.Mine}
- active={system.activeTab === 3}
+ active={system.activeTab === 2}
className="mine"
onClick={switchTab}
- index={3}
+ index={2}
></TarBarItem>
</View>
);
diff --git a/apps/bMiniApp/src/pages/home/HomeQueryMenuView.vue b/apps/bMiniApp/src/pages/home/HomeQueryMenuView.vue
new file mode 100644
index 0000000..26a6979
--- /dev/null
+++ b/apps/bMiniApp/src/pages/home/HomeQueryMenuView.vue
@@ -0,0 +1,57 @@
+<template>
+ <QueryMenuView @close="handleReset" @confirm="emit('close')" cancelText="閲嶇疆">
+ <div class="home-query-menu-view">
+ <QueryMenuItem title="缁撶畻鏂瑰紡">
+ <ProRadio v-model="query.gender" :value-enum="GenderText" show-all-btn></ProRadio>
+ </QueryMenuItem>
+ <QueryMenuItem title="鍛樺伐绂忓埄">
+ <ProRadio v-model="query.gender" :value-enum="GenderText" show-all-btn></ProRadio>
+ </QueryMenuItem>
+ <QueryMenuItem title="鎬у埆瑕佹眰">
+ <ProRadio v-model="query.gender" :value-enum="GenderText" show-all-btn></ProRadio>
+ </QueryMenuItem>
+ </div>
+ </QueryMenuView>
+</template>
+
+<script setup lang="ts">
+import { QueryMenuView, QueryMenuItem, ProRadio } from '@12333/components';
+import { GenderText } from '@12333/constants';
+
+defineOptions({
+ name: 'HomeQueryMenuView',
+});
+
+// type Props = {};
+
+// const props = withDefaults(defineProps<Props>(), {});
+
+const emit = defineEmits<{
+ (e: 'reset'): void;
+ (e: 'close'): void;
+}>();
+
+const query = defineModel<{
+ gender: number | string;
+}>('query');
+
+const DefaultQuery = {
+ ...query.value,
+};
+
+function handleReset() {
+ for (const key in DefaultQuery) {
+ query.value[key] = DefaultQuery[key];
+ }
+}
+</script>
+
+<style lang="scss">
+@import '@/styles/common.scss';
+
+.home-query-menu-view {
+ max-height: 400px;
+ padding: 30px;
+ overflow: auto;
+}
+</style>
diff --git a/apps/bMiniApp/src/pages/home/HomeQueryPositionMenuView.vue b/apps/bMiniApp/src/pages/home/HomeQueryPositionMenuView.vue
new file mode 100644
index 0000000..14cb778
--- /dev/null
+++ b/apps/bMiniApp/src/pages/home/HomeQueryPositionMenuView.vue
@@ -0,0 +1,47 @@
+<template>
+ <QueryMenuView @close="handleReset" @confirm="emit('close')" cancelText="閲嶇疆">
+ <div class="home-query-position-menu-view">
+ <PositionSelectView v-model="query.position" />
+ </div>
+ </QueryMenuView>
+</template>
+
+<script setup lang="ts">
+import { QueryMenuView, QueryMenuItem, PositionSelectView } from '@12333/components';
+import { GenderText } from '@12333/constants';
+
+defineOptions({
+ name: 'HomeQueryPositionMenuView',
+});
+
+// type Props = {};
+
+// const props = withDefaults(defineProps<Props>(), {});
+
+const emit = defineEmits<{
+ (e: 'reset'): void;
+ (e: 'close'): void;
+}>();
+
+const query = defineModel<{
+ position: any[];
+}>('query');
+
+const DefaultQuery = {
+ ...query.value,
+};
+
+function handleReset() {
+ for (const key in DefaultQuery) {
+ query.value[key] = DefaultQuery[key];
+ }
+}
+</script>
+
+<style lang="scss">
+@import '@/styles/common.scss';
+
+.home-query-position-menu-view {
+ max-height: 400px;
+}
+</style>
diff --git a/apps/bMiniApp/src/pages/home/constants/index.ts b/apps/bMiniApp/src/pages/home/constants/index.ts
new file mode 100644
index 0000000..ff9bf0b
--- /dev/null
+++ b/apps/bMiniApp/src/pages/home/constants/index.ts
@@ -0,0 +1,4 @@
+export enum HomeOrderType {
+ Recommend = 'Recommend',
+ LastShelfTime = 'LastShelfTime',
+}
diff --git a/apps/bMiniApp/src/pages/home/index.vue b/apps/bMiniApp/src/pages/home/index.vue
index e3d38b0..637899a 100644
--- a/apps/bMiniApp/src/pages/home/index.vue
+++ b/apps/bMiniApp/src/pages/home/index.vue
@@ -1,11 +1,71 @@
<template>
- <PageLayoutWithBg class="index-page-wrapper" :title="'棣栭〉'" :need-auth="false">
+ <PageLayoutWithBg class="index-page-wrapper" :title="''" :need-auth="false">
<template #left>
- <div class="menu-btn-wrapper city-btn" @click="goCitySelect">
- <div class="city-btn-text">{{ locationCity }}</div>
- <RectDown :size="12" />
+ <div class="menu-btn-wrapper menu-logo">
+ <img :src="IconLogo" class="logo" />
</div>
</template>
+ <div class="home-header">
+ <!-- <div class="home-searchbar-wrapper">
+ <div class="searchbar-container">
+ <BlSearchbar
+ v-model.trim="searchValue"
+ placeholder="鎼滅储浠诲姟"
+ @search="handleSearch"
+ @change="handleSearch"
+ ></BlSearchbar>
+ </div>
+ <div class="city-btn" @click="goCitySelect">
+ <img :src="IconLocaltion" class="city-btn-icon" />
+ <div class="city-btn-text">{{ locationCity }}</div>
+ </div>
+ </div> -->
+ <div class="home-banner-wrapper">
+ <nut-swiper :auto-play="3000">
+ <nut-swiper-item v-for="(item, index) in list" :key="index">
+ <img :src="item" class="banner-img" draggable="false" />
+ </nut-swiper-item>
+ </nut-swiper>
+ </div>
+ </div>
+ <ProTabs
+ v-model="queryState.orderType"
+ name="home-tab"
+ :showPaneContent="false"
+ :showSmile="false"
+ class="home-tabs"
+ isTransparent
+ title-gutter="8"
+ title-scroll
+ >
+ <ProTabPane :title="`鎺ㄨ崘`" :pane-key="HomeOrderType.Recommend"></ProTabPane>
+ <ProTabPane :title="`鏈�鏂癭" :pane-key="HomeOrderType.LastShelfTime"></ProTabPane>
+ <template #right>
+ <Menu>
+ <MenuItem title="宀椾綅" ref="selectPositionItem">
+ <HomeQueryPositionMenuView
+ v-model:query="queryPositionState"
+ @close="handleMenuSelectPositionClose"
+ ></HomeQueryPositionMenuView>
+ </MenuItem>
+ <MenuItem title="绛涢��" ref="selectItem">
+ <HomeQueryMenuView
+ v-model:query="queryMenuState"
+ @close="handleMenuSelectClose"
+ ></HomeQueryMenuView>
+ </MenuItem>
+ </Menu>
+ </template>
+ </ProTabs>
+ <InfiniteLoading
+ scrollViewClassName="common-infinite-scroll-list home-list"
+ v-bind="infiniteLoadingProps"
+ :key="queryState.orderType"
+ >
+ <template #renderItem="{ item }">
+ <!-- <TaskCard @click="goTaskDetail(item)" /> -->
+ </template>
+ </InfiniteLoading>
</PageLayoutWithBg>
</template>
@@ -14,30 +74,99 @@
import { useUserStore } from '@/stores/modules/user';
import { RectDown } from '@nutui/icons-vue-taro';
import Taro from '@tarojs/taro';
-import { LocationUtils } from '@12333/utils';
+import { LocationUtils, trim } from '@12333/utils';
+import IconLogo from '@/assets/home/icon-logo.png';
+import { ProTabs, ProTabPane } from '@12333/components';
+import { HomeOrderType } from './constants';
+import { useInfiniteLoading } from '@12333/hooks';
+import { OrderInputType, Gender } from '@12333/constants';
+import * as orderServices from '@12333/services/api/Order';
+import _ from 'lodash';
+import HomeQueryMenuView from './HomeQueryMenuView.vue';
+import HomeQueryPositionMenuView from './HomeQueryPositionMenuView.vue';
+import IconLocaltion from '@/assets/task/icon-localtion.png';
const { locationCity } = useUser();
const userStore = useUserStore();
+
+const queryMenuState = reactive({
+ gender: '' as any as Gender,
+});
+
+const queryPositionState = reactive({
+ position: [],
+});
+
+const queryState = reactive({
+ orderType: HomeOrderType.Recommend,
+});
+
+const { infiniteLoadingProps } = useInfiniteLoading(
+ ({ pageParam }) => {
+ let params: API.FrontOrderListInput = {
+ pageModel: {
+ rows: 20,
+ page: pageParam,
+ orderInput: [
+ queryState.orderType === HomeOrderType.Recommend
+ ? { property: 'isRecommend', order: OrderInputType.Desc }
+ : { property: 'lastShelfTime', order: OrderInputType.Desc },
+ ],
+ },
+ };
+
+ return orderServices.getFrontOrderList(params, {
+ showLoading: false,
+ });
+ },
+ {
+ queryKey: ['orderServices/getFrontOrderList', queryState, queryMenuState, queryPositionState],
+ }
+);
function goCitySelect() {
Taro.navigateTo({
url: RouterPath.citySelect,
});
}
-// onMounted(async () => {
-// if (!isSetMatchMakingIdentity.value) {
-// Taro.navigateTo({
-// url: RouterPath.toggleMatchMakingIdentity,
-// });
-// }
-// });
+
+const list = ref([
+ 'https://storage.360buyimg.com/jdc-article/NutUItaro34.jpg',
+ 'https://storage.360buyimg.com/jdc-article/NutUItaro2.jpg',
+ 'https://storage.360buyimg.com/jdc-article/welcomenutui.jpg',
+ 'https://storage.360buyimg.com/jdc-article/fristfabu.jpg',
+]);
+
+const selectItem = ref();
+const selectPositionItem = ref();
+
+function handleMenuSelectClose() {
+ selectItem.value?.toggle?.();
+}
+
+function handleMenuSelectPositionClose() {
+ selectPositionItem.value?.toggle?.();
+}
</script>
<style lang="scss">
@import '@/styles/common.scss';
.index-page-wrapper {
+ .menu-logo {
+ padding: 0;
+
+ .logo {
+ width: 96px;
+ height: 64px;
+ }
+ }
+
+ .nut-menu__item + .nut-menu__item {
+ margin-left: 24px;
+ }
+
.city-btn {
display: flex;
align-items: center;
@@ -48,5 +177,21 @@
margin-right: 12px;
}
}
+
+ .home-banner-wrapper {
+ .banner-img {
+ width: 100%;
+ height: 260px;
+ object-fit: cover;
+ }
+ }
+
+ .home-header {
+ padding: 0 boleGetCssVar('size', 'body-padding-h');
+ }
+
+ .home-list {
+ @include infiniteLoadingInTabBarPage;
+ }
}
</style>
diff --git a/apps/bMiniApp/src/pages/workbenches/InnerPage.vue b/apps/bMiniApp/src/pages/workbenches/InnerPage.vue
new file mode 100644
index 0000000..77f18e3
--- /dev/null
+++ b/apps/bMiniApp/src/pages/workbenches/InnerPage.vue
@@ -0,0 +1,13 @@
+<template>
+ <div>InnerPage</div>
+</template>
+
+<script setup lang="ts">
+defineOptions({
+ name: 'InnerPage',
+});
+</script>
+
+<style lang="scss">
+@import '@/styles/common.scss';
+</style>
diff --git a/apps/bMiniApp/src/pages/workbenches/workbenches.config.ts b/apps/bMiniApp/src/pages/workbenches/workbenches.config.ts
new file mode 100644
index 0000000..305fdb1
--- /dev/null
+++ b/apps/bMiniApp/src/pages/workbenches/workbenches.config.ts
@@ -0,0 +1,3 @@
+export default definePageConfig({
+ disableScroll: true,
+});
diff --git a/apps/bMiniApp/src/pages/workbenches/workbenches.vue b/apps/bMiniApp/src/pages/workbenches/workbenches.vue
new file mode 100644
index 0000000..086b9fd
--- /dev/null
+++ b/apps/bMiniApp/src/pages/workbenches/workbenches.vue
@@ -0,0 +1,13 @@
+<template>
+ <PageLayoutWithBg class="workbenches-page-wrapper" title="宸ヤ綔鍙�">
+ <InnerPage />
+ </PageLayoutWithBg>
+</template>
+
+<script setup lang="ts">
+import InnerPage from './InnerPage.vue';
+
+defineOptions({
+ name: 'workbenches',
+});
+</script>
diff --git a/apps/cMiniApp/src/hooks/task.ts b/apps/cMiniApp/src/hooks/task.ts
index 38b1733..36970be 100644
--- a/apps/cMiniApp/src/hooks/task.ts
+++ b/apps/cMiniApp/src/hooks/task.ts
@@ -12,15 +12,14 @@
export function useTaskList() {
const searchValue = ref('');
- const DefaultQueryState = {
+ const queryMenuState = reactive({
gender: '' as any as Gender,
- };
+ });
const queryState = reactive({
searchValueTrim: '',
orderType: HomeOrderType.Recommend,
companyId: '',
- ...DefaultQueryState,
});
const handleSearch = _.debounce(function () {
@@ -46,14 +45,14 @@
});
},
{
- queryKey: ['orderServices/getFrontOrderList', queryState],
+ queryKey: ['orderServices/getFrontOrderList', queryState, queryMenuState],
}
);
return {
searchValue,
queryState,
- DefaultQueryState,
+ queryMenuState,
handleSearch,
infiniteLoadingProps,
};
diff --git a/apps/cMiniApp/src/pages/home/HomeQueryMenuView.vue b/apps/cMiniApp/src/pages/home/HomeQueryMenuView.vue
index 3a181c1..26a6979 100644
--- a/apps/cMiniApp/src/pages/home/HomeQueryMenuView.vue
+++ b/apps/cMiniApp/src/pages/home/HomeQueryMenuView.vue
@@ -2,13 +2,13 @@
<QueryMenuView @close="handleReset" @confirm="emit('close')" cancelText="閲嶇疆">
<div class="home-query-menu-view">
<QueryMenuItem title="缁撶畻鏂瑰紡">
- <ProRadio v-model="gender" :value-enum="GenderText" show-all-btn></ProRadio>
+ <ProRadio v-model="query.gender" :value-enum="GenderText" show-all-btn></ProRadio>
</QueryMenuItem>
<QueryMenuItem title="鍛樺伐绂忓埄">
- <ProRadio v-model="gender" :value-enum="GenderText" show-all-btn></ProRadio>
+ <ProRadio v-model="query.gender" :value-enum="GenderText" show-all-btn></ProRadio>
</QueryMenuItem>
<QueryMenuItem title="鎬у埆瑕佹眰">
- <ProRadio v-model="gender" :value-enum="GenderText" show-all-btn></ProRadio>
+ <ProRadio v-model="query.gender" :value-enum="GenderText" show-all-btn></ProRadio>
</QueryMenuItem>
</div>
</QueryMenuView>
@@ -31,10 +31,18 @@
(e: 'close'): void;
}>();
-const gender = defineModel<number | string>('gender');
+const query = defineModel<{
+ gender: number | string;
+}>('query');
+
+const DefaultQuery = {
+ ...query.value,
+};
function handleReset() {
- emit('reset');
+ for (const key in DefaultQuery) {
+ query.value[key] = DefaultQuery[key];
+ }
}
</script>
diff --git a/apps/cMiniApp/src/pages/home/index.vue b/apps/cMiniApp/src/pages/home/index.vue
index a627853..8ec5e32 100644
--- a/apps/cMiniApp/src/pages/home/index.vue
+++ b/apps/cMiniApp/src/pages/home/index.vue
@@ -44,9 +44,8 @@
<Menu>
<MenuItem title="绛涢��" ref="selectItem">
<HomeQueryMenuView
- v-model:gender="queryState.gender"
+ v-model:query="queryMenuState"
@close="handleMenuSelectClose"
- @reset="handleMenuSelectReset"
></HomeQueryMenuView>
</MenuItem>
</Menu>
@@ -80,7 +79,7 @@
const userStore = useUserStore();
-const { searchValue, queryState, handleSearch, infiniteLoadingProps, DefaultQueryState } =
+const { searchValue, queryState, handleSearch, infiniteLoadingProps, queryMenuState } =
useTaskList();
function goCitySelect() {
@@ -100,9 +99,6 @@
function handleMenuSelectClose() {
selectItem.value?.toggle?.();
-}
-function handleMenuSelectReset() {
- Object.assign(queryState, { ...DefaultQueryState });
}
function goTaskDetail(item: API.FrontOrderList) {
diff --git a/apps/cMiniApp/src/pages/mine/index.vue b/apps/cMiniApp/src/pages/mine/index.vue
index e93c6c9..b1746f9 100644
--- a/apps/cMiniApp/src/pages/mine/index.vue
+++ b/apps/cMiniApp/src/pages/mine/index.vue
@@ -82,7 +82,7 @@
<ListItem :icon="IconCollect" title="鎴戞敹钘忕殑浠诲姟" @click="goMineCollectTask"></ListItem>
<ListItem :icon="IconAgreement" title="鍗忚绛剧害" @click="goMineAgreementSign"></ListItem>
<ListItem :icon="IconSetting" title="璁剧疆" @click="goSetting"></ListItem>
- <ListItem :icon="IconRecruit" title="鎴戣鎷涗汉/鐢ㄤ汉" @click="goSetting"></ListItem>
+ <!-- <ListItem :icon="IconRecruit" title="鎴戣鎷涗汉/鐢ㄤ汉" @click="goSetting"></ListItem> -->
</List>
</ContentScrollView>
</PageLayoutWithBg>
diff --git a/packages/components/src/Card/FlexJobCard.vue b/packages/components/src/Card/FlexJobCard.vue
index 9f30459..6218572 100644
--- a/packages/components/src/Card/FlexJobCard.vue
+++ b/packages/components/src/Card/FlexJobCard.vue
@@ -169,6 +169,7 @@
.flexJob-card-footer-right {
--nut-button-default-font-size: 24px;
--nut-button-default-height: 52px;
+ --nut-button-default-line-height: 49px;
}
}
}
--
Gitblit v1.9.1