From a2ddd3bec584b6eb91ab8845353fdb40c9b37ebe Mon Sep 17 00:00:00 2001
From: zhangwei <1504152376@qq.com>
Date: 星期一, 02 九月 2024 17:22:17 +0800
Subject: [PATCH] 初步完成
---
src/pages/index/index.vue | 208 ++++++++++++++++++++++++++++++++++-----------------
1 files changed, 138 insertions(+), 70 deletions(-)
diff --git a/src/pages/index/index.vue b/src/pages/index/index.vue
index 6f3f347..7f7bbd0 100644
--- a/src/pages/index/index.vue
+++ b/src/pages/index/index.vue
@@ -1,115 +1,183 @@
<template>
<view class="full-page">
- <scroll-view enable-flex="true">
- <view class="list chuany-flex chuany-flex-direction chuany-align-center c-p-b-30"
- v-if="state.currentIdex==0">
- <view class="content c-p-b-18" v-for="(item,index) in list2" @click='toDetail' :key='item.id'>
- <view class="bgblue c-p-18 chuany-flex chuany-justify-between chuany-font34 chuany-text-bold">
- <text class=''>
- {{item.time}}
- </text>
+ <up-sticky bgColor="#fff">
+ <view class="coreshop-ff c-p-10">
+ <!-- <up-search placeholder="璇风偣鍑婚�夋嫨鏃ユ湡" @clear='clear' @clickIcon='clickTime' @custom='search'
+ v-model="workTime" search-icon="calendar" @search='search'></up-search> -->
+ <up-search placeholder="璇疯緭鍏ュ伐浣滃悕绉�" @clear='clear' @clickIcon='clickTime' @custom='search'
+ v-model="state.orderName" @search='search'></up-search>
+ </view>
+ </up-sticky>
+ <scroll-view enable-flex="true">
+ <view class="list chuany-flex chuany-flex-direction chuany-align-center c-p-b-30 "
+ v-if="listO.orderList&&listO.orderList.length>0">
+ <view class="content c-p-b-18" v-for="(item,index) in listO.orderList" @click='toDetail(item.id)'
+ :key='item.id'>
+ <view
+ class="bgblue c-p-l-18 c-p-r-18 c-p-t-10 c-p-b-10 chuany-flex chuany-justify-between chuany-font30">
+ <view class="chuany-flex chuany-flex-direction">
+ <text class=''>
+ {{$util.formatDate(item.startTime)}}
+ </text>
+ </view>
<text>
- 鎷泏{item.zhaodao}}/{{item.peoplenum}}浜�
+ 鎷泏{item.worderCounted}}/{{item.worderCount}}浜�
</text>
</view>
- <view class="c-p-18 chuany-font44 chuany-text-bold">
- {{item.name}}
+ <view class="c-p-l-18 c-p-b-14 c-p-t-14 c-p-r-18 chuany-font34">
+ {{item.orderName}}
</view>
- <view class="chuany-flex c-p-l-18">
+ <!-- <view class="chuany-flex c-p-l-18">
<up-tag class='c-p-r-14' :text="item" plain v-for="(item,index) in item.tags" :key="index">
</up-tag>
- </view>
+ </view> -->
<view class="chuany-flex chuany-flex-direction">
- <text class='c-p-18'>
- 瑕佹眰锛歿{item.yaoqiu}}
+ <text class='c-p-l-18 c-p-b-14 c-p-r-18 text-69'>
+ 瑕佹眰锛歿{item.demand}}
</text>
- <text class='c-p-l-18 c-p-b-16'>
- 鍦板潃锛歿{item.adress}}
+ <text class='c-p-l-18 c-p-b-14 c-p-r-18 text-69'>
+ 鍦板潃锛歿{item.worderAddress}}
</text>
</view>
<view class='chuany-flex chuany-justify-between c-p-l-18 c-p-r-18'>
<view class="redcla">
<text class="chuany-font40 chuany-text-bold">
- {{item.price}}
+ {{item.workPrice}}
</text>
<text class='chuany-font20'>
- 鍏�/灏忔椂
+ {{item.workerType==0?'鍏�/灏忔椂':'鍏�/浠�'}}
</text>
</view>
- <up-tag text="鍘绘姠娲�" type="warning" shape="circle"></up-tag>
+ <up-tag text="鍘绘姠娲�" type="warning" shape="circle" @click.stop='deliver(item.id)'></up-tag>
<!-- <up-tag text="鍘绘姠娲�" type="warning" shape="circle"></up-tag> -->
</view>
</view>
+ <up-loadmore :status="loadStatus" />
</view>
<view v-else>
- <up-empty mode="order" icon="http://cdn.uviewui.com/uview/empty/order.png">
+ <up-empty text='鏆傛棤' icon="/static/order.png">
</up-empty>
</view>
</scroll-view>
-
+ <fui-date-picker range :show="datePickerShow" type="5" @change="changePicker"
+ @cancel="cancel"></fui-date-picker>
</view>
</template>
<script setup>
import {
+ onLoad,
+ onShow,
+ onReachBottom,
+ onPullDownRefresh
+ } from "@dcloudio/uni-app";
+ import {
reactive,
- ref
+ ref,
+ getCurrentInstance
} from 'vue';
- let state = reactive({
- currentIdex: 0
+ const {
+ $upload,
+ $api,
+ $util,
+ $db
+ } = getCurrentInstance().appContext.config.globalProperties
+
+ let workTime = ref('')
+ let datePickerShow = ref(false)
+ const state = reactive({
+ pageIndex: 1,
+ pageSize: 20,
+ orderName: ''
})
- // 鍒涘缓鍝嶅簲寮忔暟鎹�
- const list1 = reactive([{
- name: '鏂颁换鍔�'
- },
- {
- name: '鎴戠殑璁㈠崟'
- },
- ]);
- const list2 = reactive([{
- id: 1,
- time: '鏄庡ぉ 19:00-23:00',
- name: '涓存椂宸�',
- tags: ['4灏忔椂', '鍙棤缁忛獙', '鎵嬭剼楹诲埄'],
- adress: '姝︿警鍖烘婧閬�4.0km',
- yaoqiu: '涓嶉檺',
- price: 50,
- peoplenum: 3,
- zhaodao: 1
- },
- {
- id: 2,
- time: '鏄庡ぉ 19:00-23:00',
- name: '涓存椂宸�',
- tags: ['4灏忔椂', '鍙棤缁忛獙', '鎵嬭剼楹诲埄'],
- adress: '姝︿警鍖烘婧閬�4.0km',
- price: 50,
- yaoqiu: '涓嶉檺',
- peoplenum: 3,
- zhaodao: 1
- },
- {
- id: 3,
- time: '浠婂ぉ 19:00-23:00',
- name: '鍖呰宸�',
- tags: ['4灏忔椂', '鍙棤缁忛獙', '鎵嬭剼楹诲埄'],
- adress: '姝︿警鍖烘婧閬�4.0km',
- price: 50,
- yaoqiu: '鐢�/18-55宀�',
- peoplenum: 3,
- zhaodao: 1
- },
- ]);
+ let listO = reactive({
+ orderList: []
+ })
+ const search = (index) => {
+ PostListPage()
+ }
+ const changePicker = (val) => {
+ console.log(val);
+ workTime.value = val.startDate.result + '鑷�' + val.endDate.result
+ state.wordStartTime = new Date(val.startDate.result) //宸ヤ綔寮�濮嬫椂闂�
+ state.wordEndTime = new Date(val.endDate.result)
+ }
+ const clear = () => {
+ state.orderName = ''
+ state.wordStartTime = ""
+ state.wordEndTime = ""
+ }
+ const clickTime = () => {
+ datePickerShow.value = !datePickerShow.value
+ }
+ let loadStatus = ref('loadmore')
+ onReachBottom(() => {
+ if (loadStatus.value != 'nomore') {
+ PostListPage();
+ }
+ })
+
+ onPullDownRefresh(() => {
+ state.pageIndex = 1
+ state.pageSize = 20
+ loadStatus.value = 'loadmore'
+ PostListPage();
+ })
+ onLoad(() => {
+ PostListPage()
+ })
+ const PostListPage = (orderStatus) => {
+ let data = {
+ pageIndex: state.pageIndex,
+ pageSize: state.pageSize,
+ }
+ if (orderStatus) {
+ data.orderStatus = orderStatus
+ }
+ if(state.orderName){
+ data.orderName = state.orderName
+ }
+ loadStatus.value = 'loading';
+ $api.PostListPage(data).then(res => {
+ if (res.code == 1) {
+ console.log(res, res.code, '-----------123鈥�');
+ if (state.pageIndex == 1) {
+ listO.orderList = res.data.items
+ } else {
+ listO.orderList.concat(...res.data.items)
+ }
+ console.log(listO.orderList, 'listO.orderList鈥�');
+ // totalPages.value = res.data.totalCount
+ // 鏍规嵁count鏁伴噺鍒ゆ柇鏄惁杩樻湁鏁版嵁
+ if (res.data.totalCount > listO.orderList.length) {
+ loadStatus.value = 'loadmore'
+ state.pageIndex++
+ } else {
+ // 鏁版嵁宸插姞杞藉畬姣�
+ loadStatus.value = 'nomore'
+ }
+ } else {
+ // _that.$refs.uToast.show({ message: res.msg, type: 'error' });
+ }
+ })
+ }
const click = () => {
}
const change = (e) => {
state.currentIdex = e.index
}
- const toDetail = (e) => {
+ const toDetail = (val) => {
uni.navigateTo({
- url: '/pages/detail/detail'
+ url: `/pages/detail/detail?orderid=${val}`
})
+ }
+ const deliver = (val) => {
+ uni.navigateTo({
+ url: `/pages/detail/detail?orderid=${val}`
+ })
+ // $api.saveBaoMing({orderId:e}).then(res => {
+ // })
}
</script>
@@ -119,7 +187,7 @@
}
.content {
- height: 430rpx;
+ min-height: 330rpx;
width: 90%;
background-color: #fff;
border-radius: 20rpx;
--
Gitblit v1.9.1