|
|
@ -32,7 +32,7 @@ export default { |
|
|
|
stadiumList: [], |
|
|
|
curStadium: {}, |
|
|
|
|
|
|
|
writeOffType: '', // 新增核销类型 site(场地订单)/ mall(商城订单) |
|
|
|
writeOffType: '', // 新增核销类型 site(场地订单)/ mall(商城订单)/ dypoi(抖音团购) |
|
|
|
|
|
|
|
} |
|
|
|
}, |
|
|
@ -41,13 +41,12 @@ export default { |
|
|
|
}, |
|
|
|
onLoad(options){ |
|
|
|
this.writeOffType = options.type || ''; |
|
|
|
util.$_once(WRITE_OFF_STORE_NAME, data => { |
|
|
|
util.$_once(WRITE_OFF_STORE_NAME, data => { // 定位门店 |
|
|
|
console.warn(data); |
|
|
|
if(!data)return this.initStore(); |
|
|
|
this.curStadium = data.curStadium; |
|
|
|
this.stadiumList = data.stadiumList; |
|
|
|
}) |
|
|
|
// console.warn(this.brandInfo) |
|
|
|
|
|
|
|
}, |
|
|
|
methods: { |
|
|
@ -63,7 +62,6 @@ export default { |
|
|
|
}catch(err){ |
|
|
|
util.hideLoad(); |
|
|
|
util.showNone('初始化店铺数据失败!'); |
|
|
|
console.warn('加载数据失败!', err); |
|
|
|
} |
|
|
|
}, |
|
|
|
// 获取店铺列表 |
|
|
@ -92,9 +90,8 @@ export default { |
|
|
|
onlyFromCamera: true, |
|
|
|
scanType: 'qrCode', |
|
|
|
success: res=> { |
|
|
|
console.warn('success--->', res); |
|
|
|
if(util.changeLowerCase(res.scanType) !== 'qr_code')return util.showNone('不支持此类型!'); |
|
|
|
console.warn(res.result) |
|
|
|
|
|
|
|
this.analysisOrder({ decrypt_text: res.result }); |
|
|
|
}, |
|
|
|
fail: function(err) { |
|
|
@ -115,12 +112,11 @@ export default { |
|
|
|
|
|
|
|
|
|
|
|
// 核销请求 |
|
|
|
analysisOrder({ verify_code, decrypt_text }){ |
|
|
|
let { curStadium, brandInfo, writeOffType } = this; |
|
|
|
analysisOrder({ verify_code = '', decrypt_text = '' }){ |
|
|
|
let { curStadium, writeOffType } = this; |
|
|
|
if(!verify_code&&!decrypt_text)return; |
|
|
|
|
|
|
|
let _query = { |
|
|
|
brand_id: brandInfo.brand.id, |
|
|
|
brand_id: curStadium.brand_id, |
|
|
|
stadium_id: curStadium.id, |
|
|
|
} |
|
|
|
let _vType = ''; |
|
|
@ -137,8 +133,78 @@ export default { |
|
|
|
|
|
|
|
if(writeOffType == 'site')return this.siteGet({ query: _query, vType: _vType, }); |
|
|
|
if(writeOffType == 'mall')return this.mallGet({ query: _query, vType: _vType, }); |
|
|
|
if(writeOffType == 'dypoi'){ |
|
|
|
let _code = decrypt_text || verify_code; |
|
|
|
return this.dypoiGet({ |
|
|
|
..._query, |
|
|
|
code: _code, |
|
|
|
}); |
|
|
|
} |
|
|
|
}, |
|
|
|
// 抖音团购 |
|
|
|
dypoiGet(query){ |
|
|
|
util.showLoad(); |
|
|
|
servers.get({ |
|
|
|
url: API.writeOff.dyPoiEnterVerifyOrder, |
|
|
|
data: query, |
|
|
|
isDefaultGet: false |
|
|
|
}) |
|
|
|
.then(res=>{ |
|
|
|
util.hideLoad(); |
|
|
|
let { code, data, message } = res?.data || {}; |
|
|
|
if(code!==0)return util.showModal({ |
|
|
|
title: '提示', |
|
|
|
content: message || '查询失败!', |
|
|
|
confirmText: '好的' |
|
|
|
}) |
|
|
|
if(data?.order?.order_no)return util.showModal({ |
|
|
|
title: data?.order?.product_cache?.name || '提示', |
|
|
|
content: '核销数量:1', |
|
|
|
showCancel: true, |
|
|
|
confirmText: '确认核销', |
|
|
|
cancelText: '取消', |
|
|
|
success: res=>{ |
|
|
|
if(res.confirm){ |
|
|
|
this.dypoiConfirm({ ...query }); |
|
|
|
} |
|
|
|
} |
|
|
|
}) |
|
|
|
console.log('订单查询---->', res); |
|
|
|
}) |
|
|
|
.catch(util.hideLoad) |
|
|
|
}, |
|
|
|
dypoiConfirm({ |
|
|
|
stadium_id = '', |
|
|
|
brand_id = '', |
|
|
|
code = '', |
|
|
|
}){ |
|
|
|
util.showLoad(); |
|
|
|
servers.post({ |
|
|
|
url: API.writeOff.dyPoiAssistantVerify, |
|
|
|
data: { |
|
|
|
stadium_id, |
|
|
|
brand_id, |
|
|
|
code, |
|
|
|
}, |
|
|
|
isDefaultGet: false |
|
|
|
}) |
|
|
|
.then(res=>{ |
|
|
|
util.hideLoad(); |
|
|
|
let { code, data, message } = res?.data || {}; |
|
|
|
if(code!==0)return util.showModal({ |
|
|
|
title: '提示', |
|
|
|
content: message || '核销失败!', |
|
|
|
confirmText: '好的' |
|
|
|
}) |
|
|
|
|
|
|
|
util.showModal({ |
|
|
|
title: '提示', |
|
|
|
content: message || '核销成功!', |
|
|
|
confirmText: '关闭' |
|
|
|
}) |
|
|
|
}) |
|
|
|
.catch(util.hideLoad) |
|
|
|
}, |
|
|
|
// 商城订单 |
|
|
|
mallGet({ query = {}, vType = '', }){ |
|
|
|
util.showLoad(); |
|
|
|