소스 검색

支付退款调试

product
HolyKnightIX 2 년 전
부모
커밋
e2629798f5
10개의 변경된 파일551개의 추가작업 그리고 301개의 파일을 삭제
  1. +39
    -0
      app.js
  2. +4
    -1
      app.json
  3. +55
    -51
      config/config.js
  4. +8
    -0
      ext.json
  5. +10
    -0
      node_modules/.yarn-integrity
  6. +11
    -0
      package.json
  7. +96
    -5
      pages/order/detail/index.js
  8. +174
    -164
      pages/order/detail/index.ttml
  9. +150
    -80
      pages/order/detail/index.ttss
  10. +4
    -0
      yarn.lock

+ 39
- 0
app.js 파일 보기

@@ -73,6 +73,45 @@ App({
})
},

/**
* desc: 主题色配置
* borderRadius:按钮圆角大小,默认 8rpx
* backgroundColor:按钮背景色 + 退款原因选中背景色,默认 #FE2C55
* fontColor:按钮字体颜色,默认 #ffffff
*/
getThemeConfig() {
return {
borderRadius: '8rpx', // string
backgroundColor: '#FE2C55', // string
fontColor: '#ffffff', // string
}
},

/**
* desc: 获取手机号
* params:加密数据
* success:成功回调
* fail: 失败回调
*/
getPhoneNumber({
params,
success,
fail
}) {
const {
iv,
encryptedData
} = params;
// ...
// 开发者服务端解密 encryptedData,得到手机号
// ...
const result = {
phoneNumber: '13580006666',
}
// 回调前端模板
success(result)
},

login() {
console.log('login!');
let that = this;


+ 4
- 1
app.json 파일 보기

@@ -37,7 +37,10 @@
"pages/serviceWebView/serviceWebView",
"pages/liveLsit/liveLsit",
"pages/coupon/confirmation/confirmation",
"pages/coupon/instructions/instructions"
"pages/coupon/instructions/instructions",
"ext://microapp-trade-plugin/order-confirm",
"ext://microapp-trade-plugin/refund-apply",
"ext://microapp-trade-plugin/refund-detail"
],
"window": {
"backgroundTextStyle": "light",


+ 55
- 51
config/config.js 파일 보기

@@ -1,6 +1,6 @@
const extConfig = tt.getExtConfigSync ? tt.getExtConfigSync().extConfig : {}
let weappId = extConfig.weappId;
console.log(extConfig,"configUrls");
console.log(extConfig, "configUrls");
let configUrls = extConfig.attr.configUrl;

var config = {
@@ -9,40 +9,40 @@ var config = {
/**
* 判断小程序是否能有插件
*/
getConfig:"/sysConfig/getByKey",
getConfig: "/sysConfig/getByKey",
/*
*欢乐城首页专题
*/
showList:"/topic/showList",
*欢乐城首页专题
*/
showList: "/topic/showList",
/*
*记录微信订阅
*/
activityDey:"/wxActivity/listStatus",//活动日历日期
activityCalendar:'/wxActivity/list',//活动日历列表
signDey:"/userSign/listStatus",//签到日期列表
continuousDye:"/userSign/signInStatus",//连续签到天数
userSign:"/userSign/signIn",//签到
signRule:"/credit/credit_rules",//签到规则
activityDey: "/wxActivity/listStatus", //活动日历日期
activityCalendar: '/wxActivity/list', //活动日历列表
signDey: "/userSign/listStatus", //签到日期列表
continuousDye: "/userSign/signInStatus", //连续签到天数
userSign: "/userSign/signIn", //签到
signRule: "/credit/credit_rules", //签到规则
wxMsg: '/user/updateMsg',
// 获取服务资质
getAppIcp:"/mall/getAppIcp",
getAppIcp: "/mall/getAppIcp",
/**
* 获取首页按钮
*/
wxCustomizeModule:"/wxCustomizeModule/list",
wxCustomizeModule: "/wxCustomizeModule/list",
/**
* 抖音消息推送获取模板id
*/
templateId: "/wxMsg/ttTemplateList",
//问卷列表
questionnaire :"/wxQuestionOneself/list",
questionnaire: "/wxQuestionOneself/list",
//问卷详情
questionnaireDetail:"/wxQuestionOneself/detailsById",
questionnaireDetail: "/wxQuestionOneself/detailsById",
//提交问卷
submitQuestin:"/wxQuestionOneself/userAdd",
submitQuestin: "/wxQuestionOneself/userAdd",
//投诉建议add
suggest:"/wxOpinion/add",
suggest: "/wxOpinion/add",
/**
* 接口用途:login
*/
@@ -71,31 +71,31 @@ var config = {
listByMerchant: "/wxCouponChannel/listByMerchant",

/**
* 获取券价格与库存
*/
couponPriceAndStock:"/wxCoupon/couponPriceAndStock",
* 获取券价格与库存
*/
couponPriceAndStock: "/wxCoupon/couponPriceAndStock",
/**
* 获取券适用门店List
*/
couponMerchant:"/wxCoupon/couponMerchant",
couponMerchant: "/wxCoupon/couponMerchant",
/**
* 获取券详情
*/
newCouponDetail:'/wxCoupon/couponDetail',
/**
newCouponDetail: '/wxCoupon/couponDetail',
/**
* 优惠券详情
*/
couponDetail: "/wxCoupon/detail",
/**
* 购物车订单详情
*/
goodsDetail:"/order/goodsDetail",
goodsDetail: "/order/goodsDetail",
/**
* 获取直播商品列表的价格和库存
*/
batchCouponPriceAndStock:"/wxCoupon/batchCouponPriceAndStock",
batchCouponPriceAndStock: "/wxCoupon/batchCouponPriceAndStock",
/**
* 优惠券图文混排详情
*/
@@ -130,9 +130,9 @@ var config = {
*/
orderSave: "/order/save",
/**
* 多少量下单
*/
goodsShopCartSave:"/order/goodsShopCartSave",
* 多少量下单
*/
goodsShopCartSave: "/order/goodsShopCartSave",
/**
* 支付订单
*/
@@ -140,7 +140,7 @@ var config = {
/**
* 2.0订单支付
*/
payOrderCreate_2: "/pay/ttcreatev2",
payOrderCreate_2: "/pay/ttcreatev2",

/**
* 订单状态更新
@@ -156,6 +156,10 @@ var config = {
* 订单详情
*/
orderDetail: "/order/detail_v1",
/**
* 订单退款状态
*/
getRefundStatus: "/order/getRefundStatus",
// 券包详情
// orderDetailAll: "/order/detail_v1",
/**
@@ -409,13 +413,13 @@ var config = {
// 获取直播房间回放数据和商品信息
getRoomList: "/live/roomList",
//商城地图
getStoreMap:"/wxMallBuilding/getbuildingfloorlist",
getStoreMap: "/wxMallBuilding/getbuildingfloorlist",
//判断有没有蜂鸟地图
ifFengMap:'/fengniaomap/getConfig',
ifFengMap: '/fengniaomap/getConfig',
//分享小程序二维码
getQrcodeFx:"/user/userinfoQrCode",
getQrcodeFx: "/user/userinfoQrCode",
//添加收货地址
collectSite:"/userBasicInfoAddress/saveOrUpdate",
collectSite: "/userBasicInfoAddress/saveOrUpdate",
//收货地址列表
siteList: "/userBasicInfoAddress/list",
//查询收货地址
@@ -423,49 +427,49 @@ var config = {
//删除收获地址
siteDel: "/userBasicInfoAddress/del",
//确认收货
verify:"/couponOrder/verify",
verify: "/couponOrder/verify",
//全包下订单
couponPackageSave :"/order/couponPackageSave",
couponPackageSave: "/order/couponPackageSave",


//获取动态核销码
dynamicId:"/couponOrder/dynamicId",
dynamicId: "/couponOrder/dynamicId",
/**
* 获取门店资质
*/
certification:"/merchant/findCorp",
certification: "/merchant/findCorp",
/**
* 交易快照
*/
getSnapshot:"/order/getSnapshot",
getSnapshot: "/order/getSnapshot",
/**
* 退款
*/
refund:"/order/refund",
refund: "/order/refund",
/**
* 查询退款详情
*/
getRefund:"/order/getRefund",
getRefund: "/order/getRefund",
/*
*查询Spuid
*/
getSpuid:'/wxCouponChannel/getChannelPoi',
*查询Spuid
*/
getSpuid: '/wxCouponChannel/getChannelPoi',
/**
* 获取支付订单
*/
getchanId:"/couponOrder/getChannelPoi",
getchanId: "/couponOrder/getChannelPoi",
/**
* 获取客服链接
*/
getServiceUrl:"/ttopen/merchantPoi/query_customer_service_url",
*/
getServiceUrl: "/ttopen/merchantPoi/query_customer_service_url",
/**
* 取消订单
*/
orderCancel:"/order/cancel",
orderCancel: "/order/cancel",
/**
* 判断是否支付
*/
continueToPay:"/order/continueToPay",
continueToPay: "/order/continueToPay",
},
weapp: {
AppId: weappId


+ 8
- 0
ext.json 파일 보기

@@ -11,6 +11,14 @@
"navigationBarTextStyle": "black",
"navigationBarBackgroundColor": "#fff"
},
"ttPlugins": {
"dependencies": {
"microapp-trade-plugin": {
"version": "1.1.2",
"isDynamic": true
}
}
},
"extAppid": "tt620e14b3fd30264101",
"extEnable": true,
"directCommit": false,


+ 10
- 0
node_modules/.yarn-integrity 파일 보기

@@ -0,0 +1,10 @@
{
"systemParams": "win32-x64-64",
"modulesFolders": [],
"flags": [],
"linkedModules": [],
"topLevelPatterns": [],
"lockfileEntries": {},
"files": [],
"artifacts": {}
}

+ 11
- 0
package.json 파일 보기

@@ -0,0 +1,11 @@
{
"ttPlugins": {
"dependencies": {

"microapp-trade-plugin": {
"version": "1.1.2",
"isDynamic": true
}
}
}
}

+ 96
- 5
pages/order/detail/index.js 파일 보기

@@ -52,8 +52,24 @@ Page({
contentType: 0,
orderFlag: false, //判断是不是线上配送
tenantId: '',
mallList: []
mallList: [],
imId: "69168503086",
orderStatus: 1,
tenantId: "",
IMorderId: "",
outOrderId: "",
outRefundOrderId: "",
canIUseRefund: false
},

imCallback(e) {
console.log("跳转IM客服成功", e);
},
onimError(e) {
console.log("拉起IM客服失败", e.detail);
},


handleRefund(event) {
const {
status,
@@ -64,7 +80,7 @@ Page({
refundId,
outRefundNo
} = result;
console.log(refundId, outRefundNo);
console.log(refundId, outRefundNo, 'handleRefund');
} else {
const {
errMsg
@@ -72,17 +88,29 @@ Page({
console.log(errMsg);
}
},

applyRefund(event) {
console.log('applyRefund');
const {
orderId
} = event.detail;
const extra = {
orderId
tenantId: this.data.tenantId
}; // 开发者需要透传的参数,可自定义内容
return new Promise(resolve => {
console.log(extra, 'extra');
resolve(extra);
});
},

handleError(event) {
const {
errMsg,
errNo
} = event.detail;
console.log(event, 'err');
},

showId() {
let this_ = this;
if (!this_.data.showIdFalg) {
@@ -145,7 +173,51 @@ Page({
})
},

getOrderStatus(orderId) {
const that = this
Http.get({
url: config.api.getRefundStatus,
data: {
orderId,
mallTenantId: this.data.mallTenantId || ''
}
}).then(res => {
console.log(res, 'res');
const orderStatus = res.data.orderStatus
const outOrderId = res.data.outOrderId
const refundOrderStatus = res.data.refundOrderStatus
const outRefundOrderId = res.data.outRefundOrderId
let status = ''
if (orderStatus == 1) { // 申请退款
status = 1
} else if (orderStatus == 3 || orderStatus == 4 || orderStatus == 5) {

if (refundOrderStatus == 1) { // 退款中
status = 2
} else if (refundOrderStatus == 3) { //退款成功
status = 3
} else if (refundOrderStatus == 4) { //退款失败
status = 4
}

that.setData({
outRefundOrderId: outRefundOrderId
})

} else {
status = 0
}
that.setData({
orderStatus: status,
outOrderId: outOrderId
})
}).catch(err => {
console.log(err, 'err');
})
},

getCouponMerchant() { //获取适用门店
const that = this
Http.get({
url: config.api.orderDetail,
data: {
@@ -154,6 +226,18 @@ Page({
}
}).then(res => {
const couponChannelId = res.data.orders[0].couponChannelId

const orderID = res.data.orders[0].id

that.getOrderStatus(orderID)
const extParam = res.data.extParam || null
if (extParam) {
const obj = JSON.parse(extParam)
that.setData({
IMorderId: obj.order_id,
tenantId: res.data.tenantId,
})
}
Http.get({
url: config.api.couponMerchant,
data: {
@@ -187,7 +271,8 @@ Page({
})
},

goDetail() {
goDetail(e) {
if (e.target.id == "payBtn") return
tt.navigateTo({
url: `/pages/coupon/detail/index?couponChannelId=${this.data.order.couponChannelId}&mallTenantId=${this.data.mallTenantId}`,
success: (res) => {
@@ -691,7 +776,7 @@ Page({
* 生命周期函数--监听页面加载
*/
onLoad: function (options) {
this.getSeUrl()
// this.getSeUrl()
if (options.mallTenantId) {
this.setData({
mallTenantId: options.mallTenantId,
@@ -726,6 +811,12 @@ Page({
showButton: false
})
that.updetail()
if (tt.canIUse("microapp-trade-plugin")) {
that.setData({
canIUseRefund: true
})
console.log(that.data.canIUseRefund, 'canIUseRefund');
}
},
getSeUrl() { //获取客服链接
const openId = tt.getStorageSync('openId');


+ 174
- 164
pages/order/detail/index.ttml 파일 보기

@@ -1,6 +1,17 @@
<!-- <navbar home back text="订单详情"></navbar>
<view style="height:{{navigationBarHeight}} "></view> -->
<view class='order' tt:if="{{showPage}}">

<view tt:if="{{IMorderId}}" class="serviceBOX">
<button class="serviceBox2" open-type="im" data-im-id="{{ imId }}" data-im-type="order"
data-order-id="{{ IMorderId }}" bindim="imCallback" binderror="onimError">
<view class="fuwuLogoBox f">
<image class="itemLogo" src="../../../assets/images/service1.png" />
</view>
</button>
</view>


<view tt:if="{{order.orderStatus==1}}" class='tips'>
<image class='success' src='{{succUrl}}' mode='widthFix'></image>
<view tt:if="{{order.salePrice/100==0}}" class='msg'>
@@ -35,231 +46,230 @@
<text>下单时间:</text>{{createDate}}
</view>

<image class="infoArrow" src="{{chevronUrl}}" mode='widthFix'></image>
<pay-button tt:if="{{orderStatus}}" id='payBtn' class="goRefundPayBtn" order-status="{{orderStatus}}"
order-id="{{outOrderId}}" refund-id="{{outRefundOrderId}}" bind:refund="handleRefund"
bind:applyrefund="applyRefund" bind:error="handleError" />

<view id='payBtn' tt:if="{{!orderStatus}}" class="goRefund">
退款处理中
</view>

<image class="infoArrow" src="{{chevronUrl}}" mode='widthFix'></image>
<view class="goRefund" catchtap="goRefund" data-id="{{order.id}}"
<!-- <view class="goRefund" catchtap="goRefund" data-id="{{order.id}}"
tt:if="{{order.payment!=0&&(order.couponOrderStatus==0||order.couponOrderStatus==3)}}">
{{order.couponOrderStatus==0?'申请退款':'退款进度'}}</view>
<!-- <pay-button
class="goRefund"
order-status="{{1}}"
order-id="ot7122287526357895463"
bind:refund="handleRefund"
bind:applyrefund="applyRefund"
/>
</view> -->
{{order.couponOrderStatus==0?'申请退款':'退款进度'}}</view> -->

</view>
</view>
</view>

<view class="zhuangtai">
<image tt:if="{{order.couponOrderStatus==1}}" src="{{wm01Url}}" mode='widthFix'></image>
<image tt:if="{{order.couponOrderStatus==2}}" src="{{wm02Url}}" mode='widthFix'></image>
<image tt:if="{{order.couponOrderStatus==3}}" src="{{wm03Url}}" mode='widthFix'></image>
<image tt:if="{{order.couponOrderStatus==0&&order.validStatus==0}}" src="{{wm04Url}}" mode='widthFix'></image>
<view class="zhuangtai">
<image tt:if="{{order.couponOrderStatus==1}}" src="{{wm01Url}}" mode='widthFix'></image>
<image tt:if="{{order.couponOrderStatus==2}}" src="{{wm02Url}}" mode='widthFix'></image>
<image tt:if="{{order.couponOrderStatus==3}}" src="{{wm03Url}}" mode='widthFix'></image>
<image tt:if="{{order.couponOrderStatus==0&&order.validStatus==0}}" src="{{wm04Url}}" mode='widthFix'></image>

<view class="panel" tt:if="{{order.couponOrderStatus==0&&order.validStatus!=0}}">
<view class="canWrap">
<canvas canvas-id="qrcode" style="width: 1200rpx; height: 800rpx;" />
</view>
<image src="{{tempFilePath}}" mode="aspectFit" />
<view class="closeRq" tt:if="{{showhieRq}}" bindtap="setRq">
<image class="updataRqCode" mode='widthFix' src="{{upDataRqUrlF}}"></image>
<view class="upDataRq">点一点刷新二维码</view>
</view>
<view class="coedTiem" tt:if="{{!showhieRq&&expiredSeconds>1}}">二维码在
<text style="color:red">{{expiredSeconds}}s</text>
后失效
</view>
<!-- <view class="barnum buy"><text>兑换码:</text>{{code}}</view> -->
<view class="panel" tt:if="{{order.couponOrderStatus==0&&order.validStatus!=0}}">
<view class="canWrap">
<canvas canvas-id="qrcode" style="width: 1200rpx; height: 800rpx;" />
</view>

<image src="{{tempFilePath}}" mode="aspectFit" />
<view class="closeRq" tt:if="{{showhieRq}}" bindtap="setRq">
<image class="updataRqCode" mode='widthFix' src="{{upDataRqUrlF}}"></image>
<view class="upDataRq">点一点刷新二维码</view>
</view>
<view class="coedTiem" tt:if="{{!showhieRq&&expiredSeconds>1}}">二维码在
<text style="color:red">{{expiredSeconds}}s</text>
后失效
</view>
<!-- <view class="barnum buy"><text>兑换码:</text>{{code}}</view> -->
</view>

</view>




<view class='classif'>
<!--
<view class='classif'>
<!--
couponOrderStatus
0 未使用
1 已使用
2 已过期
3 已经退款
-->
<!--
<!--
orderStatus
1
只有支付完成的时
才显示兑换码
-->
<!-- bindtap="powerDrawer" -->
<view tt:if="{{order.orderStatus==1&&order.type!=100&&order.type!=5&&order.type!=51}}"
data-couponOrderStatus="{{order.couponOrderStatus}}" data-title="{{order.title}}"
data-subtitle="{{order.subTitle}}" data-remark="{{order.remark}}" data-quancode="{{order.couponOrderId}}"
data-validstatus="{{order.validStatus}}" class='dhCode'>
<view style="width:86%;clear: both;">
<text class="fl">兑换码:</text>
<text class="fr"
tt:if="{{order.validStatus!=0}}">{{showIdFalg?order.couponOrderId:order.couponOrderIdS}}</text>
<image class="barnumImg" src="../../../assets/images/password.png" bindtap="showId"></image>
</view>
<view>
<!-- <image class="spcode" src="{{spcodeUrl}}" mode='widthFix'></image>
<!-- bindtap="powerDrawer" -->
<view tt:if="{{order.orderStatus==1&&order.type!=100&&order.type!=5&&order.type!=51}}"
data-couponOrderStatus="{{order.couponOrderStatus}}" data-title="{{order.title}}"
data-subtitle="{{order.subTitle}}" data-remark="{{order.remark}}" data-quancode="{{order.couponOrderId}}"
data-validstatus="{{order.validStatus}}" class='dhCode'>
<view style="width:86%;clear: both;">
<text class="fl">兑换码:</text>
<text class="fr" tt:if="{{order.validStatus!=0}}">{{showIdFalg?order.couponOrderId:order.couponOrderIdS}}</text>
<image class="barnumImg" src="../../../assets/images/password.png" bindtap="showId"></image>
</view>
<view>
<!-- <image class="spcode" src="{{spcodeUrl}}" mode='widthFix'></image>
<image class="rArrow" src="{{chevronUrl}}" mode='widthFix'></image> -->
</view>
</view>
</view>

<view class='dhCode' bindtap="goPaySnapshoot" data-id="{{order.id}}"
tt:if="{{(order.orderStatus!=0&&order.orderStatus!=2)}}">
<view style="width:86%;clear: both;">
<text class="fl">交易快照:可作为交易争执的判断依据</text>
<view class='dhCode' bindtap="goPaySnapshoot" data-id="{{order.id}}"
tt:if="{{(order.orderStatus!=0&&order.orderStatus!=2)}}">
<view style="width:86%;clear: both;">
<text class="fl">交易快照:可作为交易争执的判断依据</text>

</view>
<view>
<image class="rArrow" src="{{chevronUrl}}" mode='widthFix'></image>
</view>
</view>
<!-- <view>
<view>
<image class="rArrow" src="{{chevronUrl}}" mode='widthFix'></image>
</view>
</view>
<!-- <view>
<text>下单时间</text>
<text class='fr'>{{createDate}}</text>
</view> -->
<view class='dhCode'>
<text class='bianhao'>订单编号:</text>
<text>{{order.id}}</text>
</view>
<view class='wuliu' tt:if="{{order.type==11}}">
<text class='left'>物流状态:</text>
<text
class="right">{{(order.shippingStatus==10||order.shippingStatus==14)?"待自提":order.shippingStatus==15?"已自提":order.shippingStatus==20?"待发货":order.shippingStatus==24?"待收货":order.shippingStatus==25?"已收货":""}}</text>
</view>
<view class='wuliu' tt:if="{{order.shippingType==2&&order.deliveryInfo}}">
<text class='left'>物流公司:</text>
<text class="right">{{order.deliveryInfo.courierInput}}</text>
</view>
<view class='wuliu' tt:if="{{order.shippingType==2&&order.deliveryInfo}}">
<text class='left'>快递单号:</text>
<view class='dhCode'>
<text class='bianhao'>订单编号:</text>
<text>{{order.id}}</text>
</view>
<view class='wuliu' tt:if="{{order.type==11}}">
<text class='left'>物流状态:</text>
<text
class="right">{{(order.shippingStatus==10||order.shippingStatus==14)?"待自提":order.shippingStatus==15?"已自提":order.shippingStatus==20?"待发货":order.shippingStatus==24?"待收货":order.shippingStatus==25?"已收货":""}}</text>
</view>
<view class='wuliu' tt:if="{{order.shippingType==2&&order.deliveryInfo}}">
<text class='left'>物流公司:</text>
<text class="right">{{order.deliveryInfo.courierInput}}</text>
</view>
<view class='wuliu' tt:if="{{order.shippingType==2&&order.deliveryInfo}}">
<text class='left'>快递单号:</text>

<view class="left">{{order.deliveryInfo.expressageIdInput}}</view>
<view class="left">{{order.deliveryInfo.expressageIdInput}}</view>

<view class="copeCode" bindtap="copeCode" data-text="{{order.deliveryInfo.expressageIdInput}}">复制</view>
<text class="goInquire" bindtap="gokuaidi" data-nu="{{order.deliveryInfo.expressageIdInput}}">查询物流</text>
</view>
<view class="copeCode" bindtap="copeCode" data-text="{{order.deliveryInfo.expressageIdInput}}">复制</view>
<text class="goInquire" bindtap="gokuaidi" data-nu="{{order.deliveryInfo.expressageIdInput}}">查询物流</text>
</view>

<!-- <view>
<!-- <view>
<text tt:if="{{order.type == 8}}">原价</text>
<text tt:if="{{order.type != 8}}">面额</text>
<text class="jine1" tt:if="{{order.unit==0}}">{{order.price/100}}元</text>
<text class="jine1" tt:if="{{order.unit==1}}">{{order.price/100}}小时</text>
</view> -->
<view style="overflow: hidden; padding-left: 5%;padding-right: 5%;height: 96rpx;line-height: 96rpx;">
<text class='left'>实付金额:</text>
<view class='right'>
<text class='RMB'>¥</text>
<text class='jine'>{{order.payment/100}}</text>
</view>
<view style="overflow: hidden; padding-left: 5%;padding-right: 5%;height: 96rpx;line-height: 96rpx;">
<text class='left'>实付金额:</text>
<view class='right'>
<text class='RMB'>¥</text>
<text class='jine'>{{order.payment/100}}</text>
</view>
</view>
<!-- 适用门店 -->
<shop tt:if="{{mallList.length>0}}" mallList="{{mallList}}"></shop>
<vieW class="groupTitleBox">
<view class="groupTitle" tt:if="{{order.itemGroup.length>0}}">团购详情</view>
</vieW>
<view class="groupTextBox" tt:if="{{order.itemGroup.length>0}}" tt:for="{{order.itemGroup}}">
<view class="groupTitleS" tt:if="{{item.group_name}}">{{item.group_name}}</view>
<view class="groupDetailsBox" tt:for="{{item.item_list}}" tt:for-item="itemChi">
<view class="groupTiemBox">
<view class="yuandian"></view>
<view class="groupTiemName">{{itemChi.name}}({{itemChi.count}}份)</view>
<view class="groupTiemPay">¥{{itemChi.price/100}}</view>
</view>
</view>
<!-- 适用门店 -->
<shop tt:if="{{mallList.length>0}}" mallList="{{mallList}}"></shop>
<vieW class="groupTitleBox">
<view class="groupTitle" tt:if="{{order.itemGroup.length>0}}">团购详情</view>
</vieW>
<view class="groupTextBox" tt:if="{{order.itemGroup.length>0}}" tt:for="{{order.itemGroup}}">
<view class="groupTitleS" tt:if="{{item.group_name}}">{{item.group_name}}</view>
<view class="groupDetailsBox" tt:for="{{item.item_list}}" tt:for-item="itemChi">
<view class="groupTiemBox">
<view class="yuandian"></view>
<view class="groupTiemName">{{itemChi.name}}({{itemChi.count}}份)</view>
<view class="groupTiemPay">¥{{itemChi.price/100}}</view>
</view>
</view>
</view>


<view class='notes'>
<view class="notesH">购买须知</view>
<view class="timeText">有效期</view>
<view class="Hchild">• {{order.validStartDate}}至{{order.validEndDate}}</view>
<view class="timeText">可用时间</view>
<view class="Hchild">• 商家营业时间内到店使用</view>
<view class="Hchild" tt:if="{{order.can_no_use_date.weekend}}">• 周末不支持使用</view>
<view class="Hchild" tt:if="{{order.can_no_use_date.HolidaysFlag}}">• 节假日(元旦、春节、清明、劳动节、端午节、中秋节、国庆节、情人节、圣诞节)不支持使用
</view>
<view class='notes'>
<view class="notesH">
购买须知
</view>

<view class="timeText">购买限制</view>
<view class="Hchild">• 每个用户限购{{order.useLimitQuantity}}单</view>
<view class="timeText">有效期</view>
<view class="Hchild">• {{order.validStartDate}}至{{order.validEndDate}}</view>
<view class="timeText">可用时间</view>
<view class="Hchild">• 商家营业时间内到店使用</view>
<view class="Hchild" tt:if="{{order.can_no_use_date.weekend}}">• 周末不支持使用</view>
<view class="Hchild" tt:if="{{order.can_no_use_date.HolidaysFlag}}">• 节假日(元旦、春节、清明、劳动节、端午节、中秋节、国庆节、情人节、圣诞节)不支持使用
</view>

<view class="timeText">预约消费</view>
<view class="Hchild" tt:if="{{!order.subscribeSing}}">• 无需预约,高峰时段可能等位</view>
<view class="Hchild" tt:if="{{order.subscribeSing}}">• {{order.subscribeSing}}</view>
<view class="timeText">购买限制</view>
<view class="Hchild">• 每个用户限购{{order.useLimitQuantity}}单</view>

<view class="timeText" tt:if="{{order.rec_person_num_max}}">适用人数</view>
<view class="Hchild" tt:if="{{order.rec_person_num_max}}">• 该团购劵最多{{order.rec_person_num_max}}人使用</view>
<view class="timeText">预约消费</view>
<view class="Hchild" tt:if="{{!order.subscribeSing}}">• 无需预约,高峰时段可能等位</view>
<view class="Hchild" tt:if="{{order.subscribeSing}}">• {{order.subscribeSing}}</view>

<view class="timeText">温馨提示</view>
<view class="Hchild">• 团购券不支持配送或外卖</view>
<view class="Hchild" tt:if="{{order.pack}}">• 该团购商品{{order.pack=='false'?'不支持':'支持'}}打包</view>
<view class="Hchild" tt:if="{{order.besides}}">• {{order.besides=="false"?'不可以':'可以'}}外带餐食</view>
<view class="timeText" tt:if="{{order.rec_person_num_max}}">适用人数</view>
<view class="Hchild" tt:if="{{order.rec_person_num_max}}">• 该团购劵最多{{order.rec_person_num_max}}人使用</view>

<view class="Hchild" tt:if="{{order.superimposed_discounts}}">•
{{order.superimposed_discounts=="false"?'不可以':'可以'}}享受店内其他优惠</view>
<view class="Hchild" tt:if="{{order.private_room}}">• {{order.private_room=="false"?'不可以使用':'可以使用'}}包间</view>
<view class="timeText">温馨提示</view>
<view class="Hchild">• 团购券不支持配送或外卖</view>
<view class="Hchild" tt:if="{{order.pack}}">• 该团购商品{{order.pack=='false'?'不支持':'支持'}}打包</view>
<view class="Hchild" tt:if="{{order.besides}}">• {{order.besides=="false"?'不可以':'可以'}}外带餐食</view>

<view class="notesH" tt:if="{{order.curLsit}}">使用规则</view>
<view class="Hchild" tt:if="{{order.superimposed_discounts}}">•
{{order.superimposed_discounts=="false"?'不可以':'可以'}}享受店内其他优惠</view>
<view class="Hchild" tt:if="{{order.private_room}}">• {{order.private_room=="false"?'不可以使用':'可以使用'}}包间</view>

<view class="notesH" tt:if="{{order.curLsit}}">使用规则</view>

<view tt:if="{{order.curLsit}}" tt:for="{{order.curLsit}}" tt:key="{{index}}">
<view class="timeText" tt:if="{{item.title!=''}}">{{item.title}}</view>
<text class="Hchild">{{item.content}}</text>
</view>
<view tt:if="{{order.curLsit}}" tt:for="{{order.curLsit}}" tt:key="{{index}}">
<view class="timeText" tt:if="{{item.title!=''}}">{{item.title}}</view>
<text class="Hchild">{{item.content}}</text>
</view>
</view>

<!-- 子券列表 -->
<view class="childList" tt:if="{{order.type==12}}">
<view class="childTitle">礼券:</view>
<view class="childItme" tt:for="{{order.giftCouponList}}" tt:key="{{item}}">

<!-- 子券列表 -->
<view class="childList" tt:if="{{order.type==12}}">
<view class="childTitle">礼券:</view>
<view class="childItme" tt:for="{{order.giftCouponList}}" tt:key="{{item}}">

<view class="chaildDetBox">
<image mode='aspectFill' class="chaildImg" src="{{item.coverImg}}"></image>
<view class="childDataBox">
<view class="orderName">{{item.title}}</view>
<view class="childPriceStr">面额:{{item.priceStr}}元</view>
</view>
<view class="chaildDetBox">
<image mode='aspectFill' class="chaildImg" src="{{item.coverImg}}"></image>
<view class="childDataBox">
<view class="orderName">{{item.title}}</view>
<view class="childPriceStr">面额:{{item.priceStr}}元</view>
</view>
</view>
</view>
<!-- 待付款 显示立即购买的按钮 -->
<view tt:if="{{(order.orderStatus==0&&order.salePrice!=0)||(order.orderStatus==7&&order.salePrice!=0)}}"
class="buy-view app-border-top">
<button bindtap='orderFunc' hover-class='active'
data-couponChannelId="{{orderFlag?order.composeOrderId:order.id}}" disabled='{{showButton}}'
class="{{mouldType!=1?'buy':'buyX'}}">立即支付</button>
</view>
<view class='game' bindtap="gotogame" tt-if="{{showIf&&order.orderStatus!=0}}">
<view class='game-entry'>
<image src="{{newUrl}}" class='gameimg' mode='widthFix'></image>
</view>
</view>
<!-- 待付款 显示立即购买的按钮 -->
<view tt:if="{{(order.orderStatus==0&&order.salePrice!=0)||(order.orderStatus==7&&order.salePrice!=0)}}"
class="buy-view app-border-top">
<button bindtap='orderFunc' hover-class='active' data-couponChannelId="{{orderFlag?order.composeOrderId:order.id}}"
disabled='{{showButton}}' class="{{mouldType!=1?'buy':'buyX'}}">立即支付</button>
</view>
<view class='game' bindtap="gotogame" tt-if="{{showIf&&order.orderStatus!=0}}">
<view class='game-entry'>
<image src="{{newUrl}}" class='gameimg' mode='widthFix'></image>
</view>
<!-- <button type="primary" open-type="share" tt:if="{{order.type == 100 && supportTransfer==1&&cardIf}}" class='support-tansfer'>
</view>
<!-- <button type="primary" open-type="share" tt:if="{{order.type == 100 && supportTransfer==1&&cardIf}}" class='support-tansfer'>
<image src="{{weixinTitle}}" class='share' mode="widthFix"></image>转赠给微信好友</button> -->
<view class="sign"
tt:if="{{order.couponOrderStatus == 0 &&order.type == 11 && order.shippingType == 2 && order.shippingStatus== 24}}"
bindtap="setShow">签收
</view>
<view class="evaluate" bindtap="goEvaluate" tt:if="{{evaluateFlag}}">去评价</view>
<view class="explainText"
tt:if="{{serviceUrl!=''&&(order.orderStatus==1||order.orderStatus==3||order.orderStatus==4||order.orderStatus==5)}}">
对本订单有疑问或纠纷,请点击下方联系抖音官方客服</view>
<view class="serviceBox"
tt:if="{{serviceUrl!=''&&(order.orderStatus==1||order.orderStatus==3||order.orderStatus==4||order.orderStatus==5)}}"
bindtap="goWebView">
<image src="../../../assets/images/service1.png" class="serviceImg"></image>
<view class="serviceText"> 抖音官方客服</view>
</view>

<view class="sign"
tt:if="{{order.couponOrderStatus == 0 &&order.type == 11 && order.shippingType == 2 && order.shippingStatus== 24}}"
bindtap="setShow">签收
</view>
<view class="evaluate" bindtap="goEvaluate" tt:if="{{evaluateFlag}}">去评价</view>
<view class="explainText"
tt:if="{{serviceUrl!=''&&(order.orderStatus==1||order.orderStatus==3||order.orderStatus==4||order.orderStatus==5)}}">
对本订单有疑问或纠纷,请点击下方联系抖音官方客服</view>
<view class="serviceBox"
tt:if="{{serviceUrl!=''&&(order.orderStatus==1||order.orderStatus==3||order.orderStatus==4||order.orderStatus==5)}}"
bindtap="goWebView">
<image src="../../../assets/images/service1.png" class="serviceImg"></image>
<view class="serviceText"> 抖音官方客服</view>
</view>
</view>



+ 150
- 80
pages/order/detail/index.ttss 파일 보기

@@ -7,7 +7,34 @@ button::after {
page {
height: auto !important;
background: #f4f5f9;

}

.serviceBOX {
position: fixed;
top: 50%;
right: 10%;
width: 50rpx;
height: 50rpx;
z-index: 99999;
}

.serviceBox2 {
width: 50rpx;
height: 50rpx;
background-color: #00000000;
margin-top: 20rpx;
}

.fuwuLogoBox {
width: 50rpx;
height: 50rpx;
line-height: 0;
}

.itemLogo {
width: 100%;
height: 100%;
}

.order {
@@ -124,6 +151,7 @@ page {
width: 100%;
position: relative;
}

.infoArrow {
position: absolute;
right: 26rpx;
@@ -187,12 +215,13 @@ page {
padding-right: 5%;
}

.barnumImg{
.barnumImg {
float: left;
height: 40rpx;
width: 40rpx;
margin: 24rpx 20rpx;
margin: 24rpx 20rpx;
}

.classif {
background: #fff;
width: 100%;
@@ -228,7 +257,7 @@ page {
.left {
float: left;
font-size: 26rpx;
color: #a6a6a6;
color: #a6a6a6;
}

.copeCode {
@@ -239,7 +268,7 @@ page {
line-height: 30rpx;
border-radius: 8rpx;
color: #df3502;
border:1rpx #a6a6a6 solid;
border: 1rpx #a6a6a6 solid;
font-size: 28rpx;

}
@@ -250,7 +279,7 @@ page {
padding: 10rpx;
height: 30rpx;
line-height: 30rpx;
border:1rpx #a6a6a6 solid;
border: 1rpx #a6a6a6 solid;
border-radius: 8rpx;
color: #3cc51f;
font-size: 28rpx;
@@ -279,7 +308,8 @@ page {
line-height:94rpx;
} */

.classif > view:nth-child(2), .classif > view:nth-child(3) {
.classif>view:nth-child(2),
.classif>view:nth-child(3) {
position: relative;
height: 94rpx;
line-height: 94rpx;
@@ -290,22 +320,22 @@ page {
/* border-bottom: 1rpx solid #eee; */
}

.classif > view text:nth-child(2) {
.classif>view text:nth-child(2) {
font-size: 28rpx;
/* color: #3c3c3c; */
}

.classif > view text:nth-child(1) {
.classif>view text:nth-child(1) {
font-size: 28rpx;
color: #a6a6a6;
float: left;
}

.classif > view:nth-child(1) {
.classif>view:nth-child(1) {
display: block;
}

.classif > view:nth-child(6) text:nth-child(2) {
.classif>view:nth-child(6) text:nth-child(2) {
color: #666;
}

@@ -361,7 +391,8 @@ page {

.drawer_content {
height: 210px;
overflow-y: scroll; /*超出父盒子高度可滚动*/
overflow-y: scroll;
/*超出父盒子高度可滚动*/
}

.btn_ok {
@@ -495,7 +526,7 @@ radio {
color: #333;
}

.barcode > canvas {
.barcode>canvas {
width: 500rpx;
height: 100rpx;
}
@@ -508,7 +539,7 @@ radio {
align-items: center;
}

.qrcode > canvas {
.qrcode>canvas {
width: 350rpx;
height: 350rpx;
}
@@ -563,6 +594,7 @@ radio {
line-height: 94rpx;
border-radius: 61rpx;
}

.buyX {
background: linear-gradient(180deg, #cc9a60 0%, #dfbf8e 100%);
height: 94rpx;
@@ -573,46 +605,53 @@ radio {
line-height: 94rpx;
border-radius: 61rpx;
}
.salePriceStr{

.salePriceStr {
color: #999;
letter-spacing: 0;
padding-left: 4%;
overflow: hidden;
}
.subTitle{

.subTitle {
font-size: 22rpx;
color: #b8b8b8;
padding-left: 4%;
letter-spacing: 0;
}
.xidanTiem{

.xidanTiem {
padding-left: 4%;
color: #b8b8b8;
letter-spacing: 0;
font-size: 22rpx;
}

.rmb {
color: #d5af67 ;
font-size: 24rpx ;
line-height: 40rpx ;
float: left ;
color: #d5af67;
font-size: 24rpx;
line-height: 40rpx;
float: left;
}

.pri01 {
font-size: 36rpx ;
color: #d5af67 ;
letter-spacing: 0 ;
line-height: 40rpx ;
float: left ;
font-size: 36rpx;
color: #d5af67;
letter-spacing: 0;
line-height: 40rpx;
float: left;
}

.throgh {
text-decoration: line-through ;
margin-left: 10rpx ;
color: #999 ;
height: 32rpx ;
line-height: 45rpx ;
text-decoration: line-through;
margin-left: 10rpx;
color: #999;
height: 32rpx;
line-height: 45rpx;
float: left;
font-size: 26rpx;
}

.active {
opacity: 0.6;
}
@@ -779,15 +818,18 @@ radio {
letter-spacing: 0;
margin-left: 20rpx;
}
.groupTextBox{

.groupTextBox {
background: #fff;
overflow: hidden;
padding-bottom: 10rpx;
}
.groupTitleBox{

.groupTitleBox {
background: #fff;
}
.groupTitle{

.groupTitle {
color: #333;
letter-spacing: 0;
font-size: 30rpx;
@@ -797,7 +839,8 @@ radio {
margin: 0 auto;
font-weight: bold;
}
.groupTitleS{

.groupTitleS {
color: #333;
letter-spacing: 0;
font-size: 28rpx;
@@ -807,25 +850,30 @@ radio {
margin: 0 auto;
/* font-weight: bold; */
}
.groupDetailsBox{

.groupDetailsBox {
width: 90%;
margin: 0 auto;
}
.groupTiemBox{

.groupTiemBox {
color: #333333;
overflow: hidden;
}
.groupTiemName{

.groupTiemName {
float: left;
font-size: 26rpx;
/* color: #a6a6a6; */
}
.groupTiemPay{

.groupTiemPay {
float: right;
font-size: 26rpx;
/* color: #a6a6a6; */
}
.yuandian{

.yuandian {
background-color: #333333;

width: 4rpx;
@@ -834,20 +882,23 @@ radio {
margin: 16rpx 8rpx 0 0;
float: left;
}

.notes {
width: 100%;
background: #fff;
padding-bottom: 30rpx;
}
.notesH{

.notesH {
width: 92%;
font-weight: bold;
font-size: 32rpx;
color: #3c3c3c;
margin: 10rpx auto;
margin: 10rpx auto;
padding-top: 10rpx;
}
.timeText{

.timeText {
color: #333;
letter-spacing: 0;
font-size: 14px;
@@ -856,7 +907,8 @@ radio {
width: 92%;
margin: 10rpx auto;
}
.Hchild{

.Hchild {
width: 92%;
margin: 0 auto;
color: #333;
@@ -866,7 +918,8 @@ radio {
line-height: 21px;
display: block;
}
.notesText{

.notesText {
width: 92%;
margin: 0 auto;
color: #333;
@@ -875,66 +928,80 @@ radio {
letter-spacing: 0;
line-height: 42rpx;
display: block;
}
}


.panel{
.panel {
position: relative;
}

.closeRq{
.closeRq {
position: absolute;
width: 420rpx;
width: 420rpx;
height: 420rpx;
line-height: 420rpx;
text-align: center;
background-color: rgba(0, 0, 0, 0.8);
left: 50%; top: 50%;
transform: translate(-50%, -50%); /* 50%为自身尺寸的一半 */
left: 50%;
top: 50%;
transform: translate(-50%, -50%);
/* 50%为自身尺寸的一半 */
z-index: 10000000;
color: #fff;
font-size: 38rpx;
}
.updataRqCode{

.updataRqCode {
width: 80rpx !important;
height: 80rpx !important;
margin-top: calc(50%-80rpx) !important;
margin-left: calc(50%-80rpx) !important;
display: inline-block !important;
}
.upDataRq{

.upDataRq {
position: absolute;
width: 100%;
text-align: center;
height: 80rpx;
color: #fff ;
color: #fff;
top: 20%;
left: 0;
}
.coedTiem{

.coedTiem {
text-align: center;
/* color: rgba(253,131,45,1); */
margin-bottom: 20rpx;
}
.zhuangtai{

.zhuangtai {
margin-top: 20rpx;
width: 100%;
background-color: #fff;
}
.panel, .zhuangtai image {
width:500rpx;
display:block;
border-radius:10rpx;
margin:0 auto;
padding:0;
z-index:10000;

.panel,
.zhuangtai image {
width: 500rpx;
display: block;
border-radius: 10rpx;
margin: 0 auto;
padding: 0;
z-index: 10000;
overflow: hidden;
}

.panel{
.panel {
position: relative;
}
.goRefund{

.goRefundPayBtn {
float: right;
margin-right: 26rpx;
}

.goRefund {
border: 1rpx solid #d4a971;
border-radius: 50rpx;
color: #3c3c3c;
@@ -945,40 +1012,43 @@ radio {
margin-right: 26rpx;
}

.evaluate{
.evaluate {
width: 80%;
margin: 20rpx auto;
background-color: #d4a971;
color: #fff;
font-size: 32rpx;
text-align: center;
padding: 10rpx 0 ;
padding: 10rpx 0;
border-radius: 25rpx;
}

.serviceBox{
margin: 40rpx auto;
overflow: hidden;
border: #d4a971 1px solid;
border-radius: 24rpx;
text-align: center;
padding: 6rpx;
font-size: 26rpx;
color: #d4a971;
width: 240rpx;
.serviceBox {
margin: 40rpx auto;
overflow: hidden;
border: #d4a971 1px solid;
border-radius: 24rpx;
text-align: center;
padding: 6rpx;
font-size: 26rpx;
color: #d4a971;
width: 240rpx;
}
.serviceImg{

.serviceImg {
width: 30rpx;
height: 30rpx;
float: left;
margin-left: 20rpx;
margin-top: 6rpx;
}
.serviceText{

.serviceText {
float: left;
margin-left: 10rpx;
}
.explainText{

.explainText {
margin-top: 20rpx;
text-align: center;
font-size: 24rpx;


+ 4
- 0
yarn.lock 파일 보기

@@ -0,0 +1,4 @@
# THIS IS AN AUTOGENERATED FILE. DO NOT EDIT THIS FILE DIRECTLY.
# yarn lockfile v1



불러오는 중...
취소
저장