ts_aimz/pages/shop/betrayGoodsDetail/betrayGoodsDetail.js

271 lines
7.6 KiB
JavaScript

// pages/shop/publishCopyright/publishCopyright.js
import Shop from '../../../net/api/shop'
import {
sImgPrefix
} from '../../../net/mainUrl'
Page({
/**
* 页面的初始数据
*/
data: {
msgHint: '',
msgType: 'info',
msgShow: false,
showType: false,
goodsId: '',
goods: null,
typeNameList: [],
cardTypeName: '',
cityName: '',
leaderType: '',
needRefresh: false,
orderId: '',
order: null,
curTab: 0,
loadingState: 'loading',
pageData: {
page: 1,
rows: 10,
orderId: ''
},
isLoadMore: false,
hasMore: true,
listRefreshTrig: false,
replenlishList: [], //补充资料
kind: 'buy', //用来标识 buy买家 sell卖家
},
/**
* 生命周期函数--监听页面加载
*/
onLoad(options) {
wx.setNavigationBarTitle({
title: '详情',
})
wx.setNavigationBarColor({
frontColor: '#000000', // 必写项,字体颜色仅支持#ffffff和#000000
backgroundColor: '#FFFFFF', // 传递的颜色值,仅支持十六进制颜色
animation: { // 可选项
duration: 500,
timingFunc: 'easeIn'
}
})
const orderId = options.orderId
const kind = options.kind
if (orderId && orderId != '') {
this.setData({
orderId: orderId,
kind: kind,
'pageData.orderId': orderId
})
this.doGetOrderDetail()
} else {
this.setData({
msgHint: '数据有误,请稍后重试',
msgType: 'error',
msgShow: true
})
setTimeout(() => {
wx.navigateBack()
}, 1500);
}
},
onShow() {
if (this.data.needRefresh) {
this.setData({
needRefresh: false
})
this.upPageNeedRefresh()
this.doGetOrderDetail()
}
},
bindChangeTab(e) {
const tabIndex = e.currentTarget.dataset.value
this.setData({
curTab: tabIndex
})
if (this.data.curTab == 2) {
//加载补充资料
this.doRefreshList()
}
},
//加载补充资料
doRefreshList() {
this.setData({
loadingState: 'loading',
listRefreshTrig: true,
replenlishList: [],
isLoadMore: false,
hasMore: true,
'pageData.page': 1
})
this.doGetReplenish(true)
},
//加载更多
doLoadMore() {
const _self = this
if (_self.data.isLoadMore || !_self.data.hasMore) {
return
}
//判断是否有更多
_self.setData({
isLoadMore: true,
'pageData.page': ++_self.data.pageData.page
})
_self.doGetReplenish(false)
},
//获取补充资料
doGetReplenish(isRefresh) {
const _self = this
Shop.doGetReplenishList(_self.data.kind, _self.data.pageData)
.then(res => {
console.log(res)
var status = 'success'
status = res.rows && res.rows.length > 0 ? 'success' : 'empty'
_self.setData({
loadingState: isRefresh ? status : '',
replenlishList: _self.data.replenlishList.concat(res.rows),
isLoadMore: false,
listRefreshTrig: false,
hasMore: _self.data.replenlishList.length < res.total
})
})
.catch(err => {
console.log(err)
_self.setData({
loadingState: 'error',
isLoadMore: false,
hasMore: true,
listRefreshTrig: false
})
})
},
//获取订单详情
doGetOrderDetail() {
wx.showLoading({
title: '加载中...',
})
const _self = this
Shop.doGetOrderDetail(_self.data.orderId)
.then(res => {
wx.hideLoading()
console.log('订单详情', res)
res.goodsDTO.goodsPhoto = sImgPrefix + res.goodsDTO.goodsPhoto
_self.setData({
order: res
})
})
.catch(err => {
wx.hideLoading()
_self.setData({
msgHint: err.msg ? err.msg : '网络错误,请稍后重试',
msgType: 'error',
msgShow: true
})
setTimeout(() => {
wx.navigateBack()
}, 1800);
})
},
//获取商品详情
doPreImg(e) {
wx.previewImage({
urls: [e.currentTarget.dataset.value],
})
},
backPageRefresh() {
let pages = getCurrentPages();
let beforePage = pages[pages.length - 2];
beforePage.setData({
needRefresh: true
})
wx.navigateBack()
},
//取消订单
doCancelOrder() {
wx.showModal({
title: '提示',
content: '您确定要取消该订单吗?',
complete: (res) => {
if (res.confirm) {
this.goCancelOrder()
}
}
})
},
goCancelOrder() {
wx.showLoading({
title: '取消中...',
})
const _self = this
Shop.doCancelOrder(_self.data.orderId)
.then(res => {
wx.hideLoading()
_self.setData({
msgHint: '取消成功',
msgType: 'success',
msgShow: true
})
_self.upPageNeedRefresh()
_self.doGetOrderDetail()
})
.catch(err => {
wx.hideLoading()
_self.setData({
msgHint: err.msg ? err.msg : '网络错误,请稍后重试',
msgType: 'error',
msgShow: true
})
})
},
upPageNeedRefresh() {
let pages = getCurrentPages();
let beforePage = pages[pages.length - 2];
beforePage.setData({
needRefresh: true
})
},
//付款
async doPayOrder() {
try {
const _self = this
wx.showLoading({
title: '付款中...',
});
await Shop.doConfirmOrder(_self.data.orderId);
wx.hideLoading();
this.setData({
msgHint: '购买成功',
msgType: 'success',
msgShow: true
});
setTimeout(() => {
_self.upPageNeedRefresh()
_self.doGetOrderDetail()
}, 1500);
} catch (err) {
wx.hideLoading();
this.setData({
msgHint: err.msg ? err.msg : '网络错误,请稍后重试',
msgType: 'error',
msgShow: true
});
}
},
//填报受让人信息
bindFill() {
wx.navigateTo({
url: '/pages/shop/saveAssigneeInfo/saveAssigneeInfo?orderId=' + this.data.orderId,
})
},
//补充材料
goReplenish(e) {
const item = e.currentTarget.dataset.value
wx.navigateTo({
url: '/pages/shop/reportReplenish/reportReplenish?id=' + item.correctionId,
})
}
})