Browse Source

报价列表 修改报价 bug

devlop
邓雄飞 4 years ago
parent
commit
a0cbce5aef
3 changed files with 67 additions and 6 deletions
  1. 31
      pages/my-offer/index.vue
  2. 5
      pages/quotation-details/index.vue
  3. 37
      utils/index.js

31
pages/my-offer/index.vue

@ -11,7 +11,9 @@
<view v-for="(items, index) in orderData" :key="index" @click="myPriceInfo(items)">
<view class="list-border list-title-line">
<text class="list-title">{{ items.belongEnterpriseName }}</text>
<text class="list-title-Subtitle">{{ controlItems[items.orderStatus - 1] }}</text>
<text class="list-title-Subtitle" :style="{ color: controlItems[items.replyStatus] == '已过期' ? '#888888' : '#FF5368' }">
{{ controlItems[items.replyStatus] }}
</text>
</view>
<view class="list-border list-info-line" v-for="(item, index) in items.itemList" :key="index">
<view class="list-info" :class="index === items.itemList.length ? 'list-border' : ''">
@ -27,7 +29,7 @@
</view>
<view class="list-border list-bottom-contant">
<view>
<text class="list-time">{{ items.deliveryDay }}</text>
<text class="list-time">{{ transformTime(items.replyTime) }}</text>
</view>
<view class="">
<text class="list-title-Subtitle">¥{{ items.totalPrice }}</text>
@ -44,6 +46,7 @@ import { back, go2 } from '@/utils/hook.js'
import uGap from '@/components/u-gap/u-gap.vue'
import scrollList from '@/components/scroll-list/scroll-list.vue'
import { getMyReplyList } from '@/apis/trade.js'
import { difTime } from '@/utils/index'
export default {
// props: {
// queryOrderData: {
@ -63,7 +66,12 @@ export default {
},
orderData: [],
controlCurrent: 0,
controlItems: ['待付款', '待发货', '待收货', '已完成', '已关闭'],
controlItems: {
30128: '待报价',
30130: '已报价',
30139: '已下单',
30102: '已过期'
},
orderOption: {
size: 10,
auto: true,
@ -79,7 +87,6 @@ export default {
}
}
},
filters: {},
watch: {
orderParams: {
handler(val) {
@ -97,6 +104,22 @@ export default {
this.getMyReplyListQuery()
},
methods: {
transformTime(time) {
if (!time) {
return '-'
}
const { day, hours, minutes, seconds } = difTime(new Date(), time)
if (day > 0) {
return `${day}天前`
}
if (hours > 0) {
return `${hours}小时前`
}
if (minutes > 0) {
return `${minutes}分钟前`
}
return `${seconds}秒前`
},
back,
//
getMyReplyListQuery() {

5
pages/quotation-details/index.vue

@ -4,7 +4,7 @@
<uni-nav-bar left-icon="back" @clickLeft="back" statusBar fixed title="">
<view class="submit-title">报价详情</view>
<view slot="left"></view>
<view slot="right" class="edit-price" v-if="upDataObj.replyStatus !== 30102" @click="editPrice()">修改报价</view>
<view slot="right" class="edit-price" v-if="![30139, 30102].includes(upDataObj.replyStatus)" @click="editPrice()">修改报价</view>
</uni-nav-bar>
</view>
<view class="submit-main">
@ -124,7 +124,8 @@ export default {
deliveryArea: '广东省/广州市/天河区',
deliveryDay: '2021/12/29 12:30',
enquiryValidTime: [12, 11, 10],
itemList: []
itemList: [],
replyStatus: 30102
}
}
},

37
utils/index.js

@ -160,3 +160,40 @@ export const makeSocket = async ({ pageInfo = '', retry = false }) => {
export function round(number, precision) {
return Math.round(+number + 'e' + precision) / Math.pow(10, precision)
}
/**
* {beyond:是否超出目标时间,day:,hours:小时,minutes:分钟,seconds:秒钟}
* @param time 计算时间
* @param target 对照时间
* @returns 时间差对象
*/
export const difTime = (time, target) => {
let begin = new Date(time).getTime()
// 兼容ios时间
let end = new Date(target.replace(/-/g, '/')).getTime()
let beyond = begin < end ? false : true
let diff = Math.abs(begin - end)
// 计算天数
let day = Math.floor(diff / (24 * 3600 * 1000))
day != day ? (day = 0) : ''
diff = diff % (24 * 3600 * 1000)
// 计算小时数
let hours = Math.floor(diff / (3600 * 1000))
hours != hours ? (hours = 0) : ''
diff = diff % (3600 * 1000)
// 计算分钟数
let minutes = Math.floor(diff / (60 * 1000))
minutes != minutes ? (minutes = 0) : ''
diff = diff % (60 * 1000)
// 计算秒数
let seconds = Math.floor(diff / 1000)
seconds != seconds ? (seconds = 0) : ''
diff = diff % 1000
return {
beyond,
day,
hours,
minutes,
seconds
}
}
Loading…
Cancel
Save