From ec90cbd7680a6f927cb1cea43f33ab7df6d0864c Mon Sep 17 00:00:00 2001
From: zhangwei <1504152376@qq.com>
Date: 星期二, 11 十一月 2025 09:23:22 +0800
Subject: [PATCH] -
---
src/pages/company/index.vue | 294 +++++++++++++++++++++++++++++++++++++++-------------------
1 files changed, 197 insertions(+), 97 deletions(-)
diff --git a/src/pages/company/index.vue b/src/pages/company/index.vue
index 7dfc312..a35890d 100644
--- a/src/pages/company/index.vue
+++ b/src/pages/company/index.vue
@@ -1,83 +1,139 @@
<template>
- <view class="full-page">
- <up-sticky>
- <view class="coreshop-ff content c-p-10">
- <up-search placeholder="璇风偣鍑婚�夋嫨鏃ユ湡" @clickIcon='clickIcon' v-model="wordDate" search-icon="calendar"
- @custom='PostMyComDakaListPage'></up-search>
- </view>
- <up-subsection :list="list" activeColor="#f9ae3d" @change="sectionChange"></up-subsection>
- </up-sticky>
- <view class="" v-if="viewList&&viewList.length>0">
- <view class="listrecord c-p-18" v-for="item in viewList" :key='item.id'>
- <view class="coreshop-ff chuany-bradius20">
- <view @click='jumpWorkDetail(item)'
- 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">
- <text class=''>
- 鏃ユ湡锛歿{$util.formatDate(item.workDate)}}
- </text>
- </view>
- <view class="c-p-26">
- <view class="chuany-flex chuany-justify-between">
- <text class="chuany-font34 ">
- {{item.orderName}}
+ <view class="full-page" scroll-y using-sticky>
+ <view class="">
+ <up-sticky>
+ <!-- <view class="coreshop-ff content c-p-10">
+ <up-search placeholder="璇风偣鍑婚�夋嫨鎵撳崱鏃ユ湡" @click='clickIcon' disabled v-model="wordDate" search-icon="calendar"
+ @custom='PostMyComDakaListPage'></up-search>
+ </view> -->
+ <view class="coreshop-ff content c-p-l-10 c-p-t-10 c-p-r-10">
+ <!-- <up-input shape="round" class="u-search__content__input"></up-input> -->
+ <up-search placeholder="璇风偣鍑婚�夋嫨鎵撳崱鏃ユ湡" @click='clickIcon' @clear='init' disabled
+ v-model="wordDate" search-icon="calendar" @search='init'
+ :show-action="false"></up-search>
+ <!-- <up-search placeholder="璇疯緭鍏ュ伐浜哄悕瀛�" :show-action="false" v-model="workerUserName"
+ @clear='PostMyComDakaListPage' @search='PostMyComDakaListPage'></up-search> -->
+ </view>
+ <view class="coreshop-ff content c-p-10">
+ <up-search placeholder="璇疯緭鍏ュ伐浜哄悕瀛�" v-model="workerUserName" @custom='init'
+ @clear='init' @search='init'></up-search>
+ <!-- <up-search placeholder="璇风偣鍑婚�夋嫨鎵撳崱鏃ユ湡" @click='clickIcon' @clear='PostMyComDakaListPage' disabled
+ v-model="wordDate" search-icon="calendar" @search='PostMyComDakaListPage'
+ @custom='PostMyComDakaListPage'></up-search> -->
+ </view>
+ <up-subsection :list="list" current='1' activeColor="#f9ae3d" @change="sectionChange"></up-subsection>
+ </up-sticky>
+ <view class="full-page-content c-p-b-100" v-if="viewList&&viewList.length>0">
+ <view class="listrecord c-p-t-28 c-p-l-28 c-p-r-28" v-for="item in viewList" :key='item.id'>
+ <view class="coreshop-ff chuany-bradius20">
+ <view @click='jumpWorkDetail(item)'
+ 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">
+ <text class=''>
+ 鎵撳崱鏃ユ湡锛歿{$util.formatDate(item.workDate)}}
</text>
+ </view>
+ <view class="c-p-18 chuany-font28">
<view class="chuany-flex chuany-justify-between">
- <!-- <text class="c-p-r-20">
-
- </text> -->
- <up-tag class='c-m-r-10' :text="item.isShenPiName" shape="circle" type="success" plain
- plainFill size='mini'></up-tag>
- <!-- <up-tag text="宸茬‘璁�" shape="circle" type="success" plain plainFill size='mini'></up-tag> -->
- </view>
- </view>
- <view class="c-p-t-14">
- 鎵撳崱璁板綍锛歿{item.dakaMingxi}}
- </view>
- <view class="chuany-flex chuany-justify-between chuany-flex-wrap c-p-t-14">
- <text class="chuany-width50">
- 宸ヤ綔鏃堕暱锛歿{item.workTime}}
- </text>
- <view class="chuany-width50">
- <text>
- 鏂瑰紡锛歿{item.workerTypeName}}
+ <text class="chuany-font32">
+ {{item.orderName}}
</text>
- </view>
- <text class="chuany-width50 c-p-t-14">
- 宸ヤ环锛歿{item.workPrice}}{{item.workerType==0?'鍏�/灏忔椂':'鍏�/浠�'}}
- </text>
- <view class="chuany-width50 chuany-flex c-p-t-14" v-if="item.workerType==1">
- <text>
- 鏁伴噺锛�
- </text>
- <up-input v-if="item.isShenPiName!=='宸茬粨绠�'" style="padding: 0;" size='mini'
- border="surround"
- @blur='(val) => {item.todaySalary=$util.roundToTwo(item.workCount*item.workPrice)}'
- v-model="item.workCount"></up-input>
- <text v-else>{{item.workCount}}</text>
- </view>
- <view class="chuany-width50 c-p-t-14">
- <text>
- 褰撴棩宸ヨ祫锛歿{item.todaySalary}}鍏�
- </text>
- </view>
- <view class="chuany-width50 c-p-t-14">
- <view class="chuany-width10">
- <up-button class="button-layout__item" text="纭" size="mini"
- v-if="item.isShenPiName!=='宸茬粨绠�'" @click.stop='saveDakaDetailCompany(item)'
- type="warning"></up-button>
+ <view class="chuany-flex chuany-justify-between">
+ <!-- <text class="c-p-r-20">
+
+ </text> -->
+ <!-- <up-tag class='c-m-r-10' :text="item.isShenPiName" shape="circle" type="success" plain
+ plainFill size='mini'></up-tag> -->
+ <!-- v-if="item.isShenPi!==2" -->
+ <view class="chuany-width10" v-if="item.isShenPiName=='鏈鏍�'||item.isModify">
+ <up-button :text="item.isShenPi!==2?'鏍稿噯宸ヨ祫':'淇敼'" size="mini"
+ :loading='item.isLoading' :loadingText="item.isShenPi!==2?'鏍稿噯涓�':'淇敼涓�'"
+ @tap.stop='saveDakaDetailCompany(item)' type="warning"></up-button>
+ </view>
+ <up-text v-else :type="item.isShenPiName=='鏈鏍�'?'info':'success'"
+ :text="item.isShenPiName" size='14'></up-text>
+
+ <!-- <up-tag text="宸茬‘璁�" shape="circle" type="success" plain plainFill size='mini'></up-tag> -->
</view>
+ </view>
+ <view class="text-69">
+ <view class="c-p-t-8">
+ 濮撳悕锛歿{item.workerUserName}}
+ </view>
+ <view class="c-p-t-8">
+ 鎵撳崱璁板綍锛歿{item.dakaMingxi}}
+ </view>
+ </view>
+
+ <view class="chuany-flex chuany-justify-between chuany-flex-wrap text-69 c-p-t-8">
+ <view class="chuany-width48">
+ <text>
+ 鏂瑰紡锛歿{item.workerTypeName}}
+ </text>
+ </view>
+ <view class="chuany-width48 chuany-flex">
+ <text>
+ 宸ヤ环锛歿{item.workPrice}}{{item.workerType==0?'鍏�/灏忔椂':'鍏�/浠�'}}
+ </text>
+ <!-- <up-input type="digit" v-if="item.isShenPiName!=='宸茬粨绠�'" style="padding: 0;" size='mini'
+ @change='(val) => {item.todaySalary=$util.roundToTwo(item.workTime*item.workPrice)}'
+ border="surround" v-model="item.workPrice"></up-input>
+ <text v-else>{{item.workPrice}}{{item.workerType==0?'鍏�/灏忔椂':'鍏�/浠�'}}</text> -->
+ </view>
+
+ <view class="chuany-width48 chuany-flex c-p-t-8">
+ <text>
+ 鏃堕暱锛�
+ </text>
+ <up-input type="digit"
+ style="padding: 0;" size='mini' v-if="item.workerType!=1 && (item.isShenPi!==2||item.isModify)"
+ @change='(val) => {item.todaySalary=$util.roundToTwo(val*item.workPrice)}'
+ border="surround" v-model="item.workTime"></up-input>
+ <text v-else>{{item.workTime}}</text>
+ </view>
+ <view class="chuany-width48 chuany-flex c-p-t-8" v-if="item.workerType==1">
+ <text>
+ 鏁伴噺锛�
+ </text>
+ <up-input type="digit" style="padding: 0;" size='mini' border="surround"
+ v-if="item.isShenPi!==2||item.isModify"
+ @change='(val) => {item.todaySalary=$util.roundToTwo(val*item.workPrice)}'
+ v-model="item.workCount"></up-input>
+ <text v-else>{{item.workCount}}</text>
+ </view>
+ <view class="chuany-width48 chuany-flex c-p-t-8">
+ <text>
+ 宸ヨ祫锛�
+ </text>
+ <up-input type="digit" style="padding: 0;" size='mini' border="surround"
+ v-model="item.todaySalary" v-if="item.isShenPi!==2||item.isModify"></up-input>
+ <text v-else>{{item.todaySalary}} 鍏�</text>
+ </view>
+ <!-- <view class="chuany-width48 c-p-t-8">
+ <view class="chuany-width10" v-if="item.isShenPi!==2">
+ <up-button class="button-layout__item" :text="item.isShenPi!==2?'鏍稿噯宸ヨ祫':'淇敼'"
+ size="mini" :loading='item.isLoading'
+ :loadingText="item.isShenPi!==2?'鏍稿噯涓�':'淇敼涓�'"
+ @tap.stop='saveDakaDetailCompany(item)' type="warning"></up-button>
+ </view>
+ </view> -->
</view>
</view>
</view>
</view>
+ <up-loadmore :status="loadStatus" />
</view>
- <up-loadmore :status="loadStatus" />
+ <view v-else>
+ <up-empty text='鏆傛棤' icon="/static/order.png">
+ </up-empty>
+ </view>
+ <!-- <fui-date-picker :show="datePickerShow" :value="$util.formatDate(new Date())" type="3" @change="changePicker"
+ @cancel="cancel"></fui-date-picker> -->
+ <fui-date-picker :show="datePickerShow" range :value="$util.formatDate(new Date())" type="3"
+ @change="changePicker" @cancel="cancel"></fui-date-picker>
+ <view class="tabbtns">
+ 鍚堣锛歿{heji}} 鍏�
+ </view>
</view>
- <view v-else>
- <up-empty text='鏆傛棤' icon="/static/order.png">
- </up-empty>
- </view>
- <fui-date-picker :show="datePickerShow" type="3" @change="changePicker" @cancel="cancel"></fui-date-picker>
</view>
</template>
@@ -88,12 +144,16 @@
pageIndex: 1,
pageSize: 20,
wordDate: '',
- isJieSuan: '',
- list: ['鍏ㄩ儴', '鏈粨绠�', '宸茬粨绠�'],
+ isJieSuan: false,
+ workerUserName: '',
+ list: ['鍏ㄩ儴', '鏈鏍�', '宸插鏍�'],
datePickerShow: false,
viewList: [],
+ heji: '',
loadStatus: 'loadmore',
workCount: '', //璁′欢鏁伴噺
+ WordDateStart: '', //宸ヤ綔鏃ユ湡寮�濮�
+ WordDateEnd: '' //宸ヤ綔鏃ユ湡缁撴潫
}
},
onLoad() {
@@ -105,17 +165,36 @@
}
},
onPullDownRefresh() {
- this.pageIndex = 1
- this.pageSize = 20
this.wordDate = ''
- this.isJieSuan = ''
- this.loadStatus = 'loadmore'
- this.PostMyComDakaListPage();
+ this.workerUserName = ''
+ this.init()
+ uni.stopPullDownRefresh();
},
methods: {
+ changeTime(val,item) {
+ item.workTime = val
+ item.todaySalary = this.$util.roundToTwo(item.workTime * item.workPrice)
+ console.log(val,item.todaySalary,item.workTime * item.workPrice);
+ },
+ init() {
+ this.pageIndex = 1
+ this.pageSize = 20
+ this.loadStatus = 'loadmore'
+ this.PostMyComDakaListPage();
+ },
sectionChange(val) {
- this.isJieSuan = val
- this.PostMyComDakaListPage()
+ switch (val) {
+ case 0:
+ this.isJieSuan = null
+ break;
+ case 1:
+ this.isJieSuan = false
+ break;
+ case 2:
+ this.isJieSuan = true
+ break;
+ }
+ this.init()
},
saveDakaDetailCompany(item) {
if (item.workerType == 1 && !item.workCount) {
@@ -133,46 +212,53 @@
if (item.workCount) {
obj.workCount = item.workCount
}
+ item.isLoading = true
+ console.log(item.isShenPiName, 'item.isShenPiName鈥�');
this.$api.saveDakaDetailCompany(obj).then(res => {
if (res.code == 1) {
this.$util.showToast({
- title: '纭鎴愬姛锛�',
+ title: item.isShenPiName == '宸茬粨绠�' ? '淇敼鎴愬姛锛�' : '纭鎴愬姛锛�',
icon: 'success'
})
- this.PostMyComDakaListPage();
+ this.init();
+ } else {
+ this.$util.showToast({
+ title: res.error ? res.error : '澶辫触锛�'
+ })
}
+ item.isLoading = false
})
},
PostMyComDakaListPage() {
let data = {
pageIndex: this.pageIndex,
pageSize: this.pageSize,
+ isJieSuan: this.isJieSuan
}
+ // if (this.wordDate) {
+ // data.wordDate = this.wordDate
+ // }
if (this.wordDate) {
- data.wordDate = this.wordDate
+ data.WordDateStart = this.WordDateStart //宸ヤ綔鏃ユ湡寮�濮�
+ data.WordDateEnd = this.WordDateEnd //宸ヤ綔鏃ユ湡缁撴潫
}
- if (this.isJieSuan) {
- switch (this.isJieSuan) {
- case 0:
- this.isJieSuan = ''
- break;
- case 1:
- this.isJieSuan = false
- break;
- case 2:
- this.isJieSuan = true
- break;
- }
- data.isJieSuan = this.isJieSuan
+ if (this.workerUserName) {
+ data.WorkerUserName = this.workerUserName
}
this.$api.PostMyComDakaListPage(data).then(res => {
if (res.code == 1) {
+ this.heji = res.data.heji
if (this.pageIndex == 1) {
this.viewList = res.data.items
} else {
- this.viewList.concat(...res.data.items)
+ this.viewList = this.viewList.concat(...res.data.items)
}
- console.log(this.viewList, this.viewList.length, 'this.viewList');
+ this.viewList.forEach(item => {
+ item.isLoading = false
+ console.log(this.$util.minutesBetweenDates(item.shenPitime, new Date()));
+ this.$util.minutesBetweenDates(item.shenPitime, new Date()) <= 5 ? item.isModify =
+ true : item.isModify = false
+ })
// totalPages.value = res.data.totalCount
// 鏍规嵁count鏁伴噺鍒ゆ柇鏄惁杩樻湁鏁版嵁
if (res.data.totalCount > this.viewList.length) {
@@ -185,12 +271,26 @@
}
})
},
+ // changePicker(val) {
+ // this.wordDate = val.result
+ // this.datePickerShow = false
+ // },
changePicker(val) {
- this.wordDate = val.result
+ this.wordDate = val.startDate.result + '鑷�' + val.endDate.result
+ this.WordDateStart = new Date(val.startDate.result) //宸ヤ綔鏃ユ湡寮�濮�
+ this.WordDateEnd = new Date(val.endDate.result) //宸ヤ綔鏃ユ湡缁撴潫
+ this.datePickerShow = false
+ this.PostMyComDakaListPage();
+ },
+ cancel() {
+ this.datePickerShow = false
},
clickIcon() {
this.datePickerShow = true
},
+ clickIcon1() {
+ console.log('瑙﹀彂浜唅con浜嬩欢');
+ },
jumpWorkDetail(item) {
uni.navigateTo({
url: `/pages/company/record?id=${item.orderBiddingDetailId}`
--
Gitblit v1.9.1