|
|
@ -9,24 +9,25 @@ |
|
|
|
<text class="se-fw-6 se-c-black se-fs-30">{{items.title}}</text> |
|
|
|
</view> |
|
|
|
<view class="se-c-orange se-fs-32 se-fw-6"> |
|
|
|
{{items.moneymin}}-{{items.moneymin}}k |
|
|
|
{{items.salaryMin}}-{{items.salaryMax}}k |
|
|
|
</view> |
|
|
|
</view> |
|
|
|
<view class="se-py-10"> |
|
|
|
<text class="se-c-text-sub se-fs-22 se-mr-10 se-py-5 se-px-20 se-br-5 se-bgc-f5" v-if="items.categoryOne_dictText">{{items.categoryOne_dictText}}</text> |
|
|
|
<text class="se-c-text-sub se-fs-22 se-mr-10 se-py-5 se-px-20 se-br-5 se-bgc-f5" v-if="items.categoryTwo_dictText">{{items.categoryTwo_dictText}}</text> |
|
|
|
<text class="se-c-text-sub se-fs-22 se-mr-10 se-py-5 se-px-20 se-br-5 se-bgc-f5" v-if="items.payType_dictText">{{items.payType_dictText}}</text> |
|
|
|
<text class="se-c-text-sub se-fs-22 se-mr-10 se-py-5 se-px-20 se-br-5 se-bgc-f5" v-if="items.industryName">{{items.industryName}}</text> |
|
|
|
<text class="se-c-text-sub se-fs-22 se-mr-10 se-py-5 se-px-20 se-br-5 se-bgc-f5" v-if="items.companyName">{{items.companyName}}</text> |
|
|
|
|
|
|
|
<!-- <text class="se-c-text-sub se-fs-22 se-mr-10 se-py-5 se-px-20 se-br-5 se-bgc-f5">水泥搬运</text> --> |
|
|
|
</view> |
|
|
|
<view class="se-flex se-flex-h-sb"> |
|
|
|
<view class="se-flex"> |
|
|
|
<u-icon class="se-ml-10" name="map"></u-icon> |
|
|
|
<text class="se-c-text-sub se-fs-24 se-pr-10">{{items.distances}}km</text> |
|
|
|
<text class="se-c-text-sub se-fs-24 se-pl-10 se-b-l">{{items.workAddress}}</text> |
|
|
|
<text class="se-c-text-sub se-fs-24 se-pr-10">{{items.latitude,items.longitude | getDistance}}km</text> |
|
|
|
<text class="se-c-text-sub se-fs-24 se-pl-10 se-b-l">{{items.address}}</text> |
|
|
|
</view> |
|
|
|
<view class="se-c-text se-c-text-sub se-fs-24"> |
|
|
|
{{items.createTime | formatTime}} |
|
|
|
</view> |
|
|
|
<!-- <view class="se-c-text se-c-text-sub se-fs-24"> |
|
|
|
09月23日 16:20 |
|
|
|
</view> --> |
|
|
|
<view class="se-flex se-flex-h-c se-py-10 se-px-20 se-br-12 se-fs-22 se-c-orange se-bgc-ffd se-fw-6"> |
|
|
|
<text class="se-ml-5">立即接单</text> |
|
|
|
</view> |
|
|
@ -63,6 +64,65 @@ |
|
|
|
that.rpageNo = that.rpageNo + 1 |
|
|
|
that.onTaskList() |
|
|
|
}, |
|
|
|
filters:{ |
|
|
|
formatTime(time) { |
|
|
|
const timestamp = new Date(time).getTime(); |
|
|
|
const currentTime = new Date().getTime(); |
|
|
|
console.info("currentTime",currentTime) |
|
|
|
const diff = (currentTime - timestamp) / 1000; // 时间差,单位:秒 |
|
|
|
|
|
|
|
// 计算月差,判断是否超过一个月 |
|
|
|
const oneMonthInSeconds = 30 * 24 * 60 * 60; |
|
|
|
if (diff > oneMonthInSeconds) { |
|
|
|
let date = new Date(timestamp); |
|
|
|
let year = date.getFullYear(); |
|
|
|
let month = date.getMonth() + 1; |
|
|
|
let day = date.getDate(); |
|
|
|
|
|
|
|
if (month < 10) month = "0" + month; |
|
|
|
if (day < 10) day = "0" + day; |
|
|
|
|
|
|
|
return `${year}-${month}-${day}`; |
|
|
|
} else { |
|
|
|
// 计算秒、分钟、小时的差值 |
|
|
|
if (diff < 60) { |
|
|
|
return `${Math.floor(diff)}秒钟前`; |
|
|
|
} else if (diff < 60 * 60) { |
|
|
|
return `${Math.floor(diff / 60)}分钟前`; |
|
|
|
} else if (diff < 60 * 60 * 24) { |
|
|
|
return `${Math.floor(diff / 60 / 60)}小时前`; |
|
|
|
} else { |
|
|
|
// 显示天数 |
|
|
|
return `${Math.floor(diff / 60 / 60 / 24)}天前`; |
|
|
|
} |
|
|
|
} |
|
|
|
}, |
|
|
|
formDate(date){ |
|
|
|
return dayjs(date).format("YYYY-MM-DD").fromNow(); |
|
|
|
}, |
|
|
|
getDistance(lat1, lng1) { |
|
|
|
let lng2 = uni.getStorageSync("longitude") |
|
|
|
let lat2 = uni.getStorageSync("latitude") |
|
|
|
if(!lng2 && !lat2){ |
|
|
|
return "请授权" |
|
|
|
} |
|
|
|
const R = 6371; // 地球半径,单位:km |
|
|
|
const radLat1 = (lat1 * Math.PI) / 180; |
|
|
|
const radLat2 = (lat2 * Math.PI) / 180; |
|
|
|
const deltaLat = radLat2 - radLat1; |
|
|
|
const deltaLng = ((lng2 - lng1) * Math.PI) / 180; |
|
|
|
|
|
|
|
const a = |
|
|
|
Math.sin(deltaLat / 2) * Math.sin(deltaLat / 2) + |
|
|
|
Math.cos(radLat1) * |
|
|
|
Math.cos(radLat2) * |
|
|
|
Math.sin(deltaLng / 2) * |
|
|
|
Math.sin(deltaLng / 2); |
|
|
|
|
|
|
|
const c = 2 * Math.atan2(Math.sqrt(a), Math.sqrt(1 - a)); |
|
|
|
return (R * c).toFixed(2); // 返回保留两位小数的公里数 |
|
|
|
} |
|
|
|
}, |
|
|
|
methods:{ |
|
|
|
onTaskList(){ |
|
|
|
taskList({ |
|
|
|