From b4ccdd63e945417f3bd25e584d93a3dd5af1c666 Mon Sep 17 00:00:00 2001 From: xuxueyang <xuxy@fengyuntec.com> Date: 星期二, 08 十月 2024 17:45:38 +0800 Subject: [PATCH] update 测试支付新接口(todo 提交体验版测试) --- pages/order/order.vue | 257 +++++++++++++++++++++++++++++++++++++++++++++----- 1 files changed, 229 insertions(+), 28 deletions(-) diff --git a/pages/order/order.vue b/pages/order/order.vue index 0859686..985d21d 100644 --- a/pages/order/order.vue +++ b/pages/order/order.vue @@ -92,7 +92,86 @@ await this.getList() uni.stopPullDownRefresh() }, + async onShow() { + // 支付回调 + // #ifdef PUB_CUSTOMER_DEV + let options = wx.getEnterOptionsSync(); + if (options.scene == '1038' && options.referrerInfo.appId == 'wxef277996acc166c3') { + // 代表从收银台小程序返回 + let extraData = options.referrerInfo.extraData; + this.$store.dispatch('sign_add', 'order') + this.refreshList() + return + } + // #endif + }, methods: { + + + openbrand(item) { + console.log(item) + //也要判断一下是否重复进入 + //判断堆栈,如果是店铺,就直接返回 + //或者是:从商铺到列表再到详情,再到商铺,这种也不行 + const pages = getCurrentPages(); + console.log('toShopping', pages) + if (pages && pages.length >= 2) { + if (pages[pages.length - 2].route === "sub_pages/customer/shop/shop") { + uni.navigateBack() + return + } + } + if (pages && pages.length >= 3) { + if (pages[pages.length - 3].route === "sub_pages/customer/shop/shop" && + pages[pages.length - 2].route === "sub_pages/customer/trade/list" + ) { + uni.navigateBack({ + delta: 2 + }) + return + } + } + + if (pages.length >= 10) { + //直接强制购物车 + uni.reLaunch({ + url: '/sub_pages/customer/shop/shop?id=' + (item.supplierId || '') + }) + } else { + uni.navigateTo({ + url: '/sub_pages/customer/shop/shop?id=' + (item.supplierId || '') + }) + } + + }, + toFlowerDetail(item) { + uni.navigateTo({ + url: `/sub_pages/customer/trade/detail?id=${item.flowerId}` + }) + }, + getList_after() { + var nowdate = new Date().getTime() - 1000 * 60 * 5 + var change = false + for (var item of this.list) { + if (item.statusBackend === 'PENDING') { + //计算倒计时 + var diff = new Date(item.createTime).getTime() - nowdate + if (diff <= 2000 && true) { + //超过了5分钟 + item.statusBackend = 'CANCEL' + item.statusBackend = '已取消' + item.status = 'CANCEL' + item.statusStr = '已取消' + + item.bctime = '' + change = true + + } + } + } + if (change) + this.$forceUpdate() + }, toDetail(item) { // 订单详情页面 // console.log(' toDetail item', item) @@ -100,10 +179,46 @@ url: '/pages/order/order-detail?id=' + item.id }) }, + + commentButtonClick(item){ + uni.navigateTo({ + url: '/pages/order/comment/order-comment?id='+item.id + }) + }, + + + async copyOrder(item) { + await this.$message.confirm('是否确定再来一单') + // 发送请求 + this.$message.showLoading() + const { + code, + data, + msg + } = await this.$http.request('get', '/api/customer/order/copyOrder', { + params: { + id: item.id, + } + }) + this.$message.hideLoading() + if (code === 0) { + //微信接口 + if (msg && msg != "") { + this.$message.showToast(msg) + } + + } + }, + toDetailSaleInfo(dto, flower) { console.log('flower', dto, flower) uni.navigateTo({ url: '/pages/order/order-detail?showsales=1&id=' + dto.id + '&flowerId=' + flower.id + }) + }, + toOrderItemDetail(item, op, opstr) { + uni.navigateTo({ + url: `/sub_pages/supplier/order-manage/order-manage-settlement-op-detail?opStr=${opstr}&op=${op}&orderItemId=${item.id || item.orderItemId}` }) }, async buttonClick(item, buttontype) { @@ -138,32 +253,47 @@ extraData: { // merchant_id: '1230000109', // merchant_trade_no: '1234323JKHDFE1243252', + // merchant_id: '1661512517', + // merchant_trade_no: item.orderId || item.id || '', transaction_id: item.paymentTrId }, - async success() { + async success(info) { + console.log('确认收货 info success', info) //dosomething - // 发送请求 - tmp.$message.showLoading() - const { - code - } = await tmp.$http.request('get', - '/api/customer/order/receive/confirm', { - params: { - id: item.id, - } - }) - tmp.$message.hideLoading() - if (code === 0) { - tmp.refreshList() + if (info.extraData && info.extraData.status === 'fail') { + tmp.$message.showToast('支付和确认收货需要是同一微信号,请联系实际支付人登录确认') + } else if (info.extraData && info.extraData.status === 'cancel') { + + } else { + + + // 发送请求 + tmp.$message.showLoading() + const { + code + } = await tmp.$http.request('get', + '/api/customer/order/receive/confirm', { + params: { + id: item.id, + } + }) + tmp.$message.hideLoading() + if (code === 0) { + tmp.refreshList() + //刷新积分 + tmp.$store.dispatch('getCurrentInfo') + tmp.$message.showToast('收货成功') + } } }, fail(e) { - //dosomething - console.log('error fail', e) + console.log('确认收货 info error', e) + // console.log('error fail', e) tmp.$message.showToast('收货失败') }, - complete() { + complete(info) { //dosomething + console.log('确认收货 info complete', info) } }); } @@ -204,6 +334,7 @@ if (code === 0) { //微信接口 let that = this + // #ifndef PUB_CUSTOMER_DEV wx.requestPayment({ ...data, async success(res) { @@ -219,6 +350,45 @@ that.$message.showToast('支付失败') } }) + // #endif + // #ifdef PUB_CUSTOMER_DEV + var param = { + // cusid: "平台分配的商户号", + // appid: "平台分配的appid", + // orgid: "平台分配的机构号", + // version: "12", + // trxamt: "1", + // reqsn: "商户唯一订单号", + // notify_url: "服务器异步通知页面路径", + // body: "标题", + // remark: "备注", + // validtime: "订单有效时间", + // limit_pay: "no_credit", + // randomstr: "随机字符串", + // paytype: "W06", + // signtype: "签名方式", + // sign: "签名,参考2.1", + ...data + } + wx.openEmbeddedMiniProgram({ + appId: 'wxef277996acc166c3', + extraData: param + }) + // if (compareVersion(version, '2.26.2') >= 0) { + + // wx.openEmbeddedMiniProgram({ + // appId: 'wxef277996acc166c3', + // extraData: param + // }) + + // } else { + // wx.navigateToMiniProgram({ + // appId: 'wxef277996acc166c3', + // extraData: param + // }) + + // } + // #endif } @@ -284,6 +454,7 @@ if (code === 0) { // this.$store.dispatch('sign_add', 'order') this.refreshList() + } } break @@ -374,21 +545,35 @@ <view class="flower-info m-b-5 m-t-8 br-4" v-for="(item,j) of dto.items" :key="j"> <!-- <view class="line-gray"></view> --> - <view class="supplier-name "> + <view class="supplier-name w-fit m-l-0 m-r-a" @click.stop="openbrand(item)"> <image class="icon-dp br-4" src="/static/common/icon-dp.png"></image> - {{ item.supplierName }} + {{ item.supplierName|| '' }} > </view> <view class="flex m-t-12 flex-wrap-normal"> - <image class="flower-img img100 m-r-6" :src="item.flowerCover" - @click="previewImg(item.flowerCover)"> + <!-- @click="previewImg(item.flowerCover)" --> + <image class="flower-img img100 m-r-6" :src="item.flowerCover" @click.stop="toDetail(dto)"> </image> + <!-- <view class="flex1" @click.stop="toFlowerDetail(item)"> --> <view class="flex1"> + <view class=" flex"> - <view class="title"><span class="level">{{ item.flowerCategory }}</span><span - class="level">{{ item.flowerLevelStr }}</span>{{ item.flowerName }} + <view class="title flex flex1"> + <!-- <span class="level">{{ item.flowerCategory }}</span> --> + <span class="m-r-10" @click.stop="toDetail(dto)">{{ item.flowerName }}</span> + <span class="level" @click.stop="toDetail(dto)">{{ item.flowerLevelStr }}</span> + <view class="m-l-a m-r-10 flex"> + <view class="m-r-10 button-icon" @click="toOrderItemDetail(item,'lack','缺货')" + v-if="item.lackNum"> + 缺货<uni-icons type="right" size="14" color="#ffffff"></uni-icons> + </view> + <view class="m-r-10 button-icon" @click="toOrderItemDetail(item,'reduce','降级')" + v-if="item.reduceNum"> + 降级<uni-icons type="right" size="14" color="#ffffff"></uni-icons> + </view> + </view> </view> </view> - <view class="each-list"> + <view class="each-list" @click.stop="toDetail(dto)"> <view class="each-item"> <view class="label">颜色</view> <view class="value">{{ item.flowerColor || '-' }}</view> @@ -417,10 +602,13 @@ </view> </view> </view> - <view class="line-gray" v-if="dto.statusBackend!=='COMPLETED'&&dto.statusBackend!=='SEND'&&dto.statusBackend=='RECEIVE'"></view> + <view class="line-gray" + v-if="dto.statusBackend!=='COMPLETED'&&dto.statusBackend!=='SEND'&&dto.statusBackend=='RECEIVE'"> + </view> <!-- dtoId:{{dto.id}} --> <!-- flowerId:{{item.id}} --> - <view class="flex buttons" v-if="dto.statusBackend!=='COMPLETED'&&dto.statusBackend!=='SEND'&&dto.statusBackend=='RECEIVE'"> + <view class="flex buttons" + v-if="dto.statusBackend!=='COMPLETED'&&dto.statusBackend!=='SEND'&&dto.statusBackend=='RECEIVE'"> <view class="button button-1 m-l-a m-r-0" @click="toDetailSaleInfo(dto,item)" v-if="dto.statusBackend === 'RECEIVE'"> 申请售后 </view> @@ -449,12 +637,15 @@ <!-- <view class="button button-1 m-l-a m-r-15" @click="toDetailSale(dto)" v-if="dto.statusBackend === 'RECEIVE'"> 申请售后 </view> --> - <view class="button button-0 m-l-a m-r-15" @click="buttonClick(dto,'evaluate')" + <!-- <view class="button button-0 m-l-a m-r-15" @click="buttonClick(dto,'evaluate')" + v-if="dto.statusBackend === 'EVALUATE'"> 评价 + </view> --> + <view class="button button-0 m-l-a m-r-15" @click="commentButtonClick(dto)" v-if="dto.statusBackend === 'EVALUATE'"> 评价 </view> - + <!-- <view class="button button-0 m-l-a m-r-15" @click="copyOrder(dto)">再来一单</view> --> <view class="button button-1 m-l-a m-r-0" @click="toDetail(dto)">查看详情</view> </view> </view> @@ -560,6 +751,7 @@ font-size: 28rpx; color: #000000; line-height: 40rpx; + flex: 1; .level { font-weight: 400; @@ -568,6 +760,13 @@ line-height: 40rpx; margin-right: 20rpx; } + + .button-icon { + color: #fff; + padding-left: 10rpx; + padding-right: 10rpx; + background-color: darkred; + } } .flower-img { @@ -575,6 +774,8 @@ height: 118rpx; min-width: 128rpx; min-height: 118rpx; + + } .each-list { -- Gitblit v1.9.3