Commit 0f3ec50b authored by 郭志伟's avatar 郭志伟

fix:联调

parent b00b233a
......@@ -109,4 +109,10 @@ strong {
.text-14();
margin-bottom: @padding-xs;
}
}
.cr-dialog--header {
padding: @padding-xl;
&--isolated {
padding-bottom: 0;
}
}
\ No newline at end of file
......@@ -31,15 +31,13 @@
@cell-clear-color: @gray-4;
@field-label-width: 75px;
@dialog-width: 290px;
@dialog-font-size: 14px;
@dialog-border-radius: @border-radius-lg;
@dialog-message-font-size: 16px;
@dialog-has-title-message-text-color: @text-color;
@dialog-confirm-button-text-color: @red;
@dialog-has-title-message-text-color: @text-grey;
@navbar-default-height: @nav-bar-height;
@picker-toolbar-padding: @padding-unit - 2 @padding-md;
@picker-font-size: 14px;
@tabs-nav-background-color: @background-color;
\ No newline at end of file
@tabs-nav-background-color: @background-color;
@loading-text-color: @white;
\ No newline at end of file
......@@ -15,7 +15,7 @@
/>
<div class="center-phone__list" :class="{ show: inputBlur }">
<div
v-for="(item, index) in list"
v-for="(item, index) in historyPhoneNoList"
:key="index"
class="center-phone__list-item"
@click="selectPhone(item)"
......@@ -32,8 +32,10 @@ import { phoneFormat, phoneTrim, checkPhoneFormat } from '@/service/utils.servic
const { getPhoneHome } = api;
export default {
props: {
userPhoneInfo: Object,
list: Array
userPhoneInfo: {
type: Object,
default: () => {}
}
},
data() {
return {
......@@ -46,6 +48,9 @@ export default {
isDefaultphone: function() {
return this.phoneNo === this.userPhoneInfo?.phoneNo;
},
historyPhoneNoList() {
return this.userPhoneInfo?.historyPhoneNoList || [];
},
phoneNo: function() {
return phoneTrim(this.rechargeTel);
}
......
......@@ -51,7 +51,12 @@
}
}
&__info {
&-right {
margin-left: auto;
color: @red !important;
}
&-item {
display: flex;
padding: 8px 0;
color: @text-grey;
.text-13();
......
......@@ -46,6 +46,7 @@
<div class="Od__item Od__info">
<div class="Od__info-item">
订单编号:<span>{{ orderInfo.orderDetail.orderNo || '' }}</span>
<span class="Od__info-right" @click="copyPwd(orderNo)">复制</span>
</div>
<div class="Od__info-item">
下单时间:<span>{{ orderInfo.orderDetail.orderTime || '' }}</span>
......@@ -115,12 +116,10 @@
再次购买
</cr-button>
</div>
<cancel-popup v-model="showCancelPopup" :order-info="currentOrder" />
</div>
</template>
<script>
import ListItem from '../orderList/components/ListItem.vue';
import CancelPopup from '../orderList/components/CancelPopup.vue';
import { setClipboardData } from '@/service/utils.service';
import orderApi from '@/api/order.api';
import img11 from '@/assets/images/order/11.png';
......@@ -138,11 +137,11 @@ const orderStatusImgs = {
export default {
name: 'OrderDetail',
components: {
ListItem,
CancelPopup
ListItem
},
data() {
return {
orderNo: '',
orderInfo: {
feeInfo: {},
orderDetail: {},
......@@ -151,8 +150,7 @@ export default {
skuList: [],
payDetail: {},
orderNo: ''
},
showCancelPopup: false
}
};
},
computed: {
......@@ -185,10 +183,29 @@ export default {
'https://www.sobot.com/chat/h5/v2/index.html?sysnum=84ed0ad93caa47b0a9d1600824546b35&source=2';
},
openCancelPopup() {
this.showCancelPopup = true;
this.$dialog({
title: '取消订单',
message: '您真的要取消吗?',
confirmButtonText: '仍要取消',
cancelButtonText: '留下商品',
onConfirm: () => {
this.handleRadioSubmit();
}
});
},
async handleRadioSubmit() {
const [res] = await orderApi.orderCancel({
orderNo: this.currentOrder.orderNo,
cancelReason: '不想买了',
cancelReasonType: 4
});
if (res) {
this.$toast('已取消');
this.$set(this.orderInfo.orderStatusInfo, `orderStatus`, 51);
this.$set(this.orderInfo.orderStatusInfo, `orderStatusText`, '交易关闭');
}
},
toPay() {
console.log(this.currentOrder.orderNo);
this.$router.push({ path: '/pay', query: { orderNo: this.orderNo } });
},
toGoods() {
......@@ -201,7 +218,7 @@ export default {
},
copyPwd(item) {
setClipboardData({
data: `${item.cardPassword}`,
data: '' + item,
success: () => {
this.$toast.success('已复制');
}
......
......@@ -72,7 +72,7 @@ export default {
},
computed: {
reason() {
return this.reasonList.find(item => item.cancelReasonType === this.reasonList);
return this.reasonList.find(item => item.cancelReasonType === this.reasonType);
}
},
watch: {
......
......@@ -18,7 +18,7 @@
<div class="Ol__foot">
<div class="Ol__foot-settle">
<span>总价¥{{ item.totalFee }}</span>
<span>优惠¥{{ item.reduceFee }}</span>
<span v-if="item.reduceFee">优惠¥{{ item.reduceFee }}</span>
<span>
实付款<strong>¥{{ item.originalFee }}</strong>
</span>
......@@ -30,7 +30,7 @@
plain
type="default"
shape="circle"
@click.stop="onOptionClick(item, 'cancel')"
@click.stop="onOptionClick(item, index, 'cancel')"
>
取消订单
</cr-button>
......@@ -40,7 +40,7 @@
plain
type="primary"
shape="circle"
@click.stop="onOptionClick(item, 'pay')"
@click.stop="onOptionClick(item, index, 'pay')"
>
付款
</cr-button>
......@@ -50,7 +50,7 @@
plain
type="default"
shape="circle"
@click.stop="onOptionClick(item, 'notify')"
@click.stop="onOptionClick(item, index, 'notify')"
>
提醒发货
</cr-button>
......@@ -60,7 +60,7 @@
plain
type="primary"
shape="circle"
@click.stop="onOptionClick(item, 'again')"
@click.stop="onOptionClick(item, index, 'again')"
>
再次购买
</cr-button>
......@@ -119,8 +119,8 @@ export default {
onLoad() {
this.$emit(EVENT_LOADING);
},
onOptionClick(orderInfo, eventType) {
this.$emit(EVENT_CLICK, { orderInfo, eventType });
onOptionClick(orderInfo, index, eventType) {
this.$emit(EVENT_CLICK, { orderInfo: { ...orderInfo, index }, eventType });
},
toHome() {
this.$router.replace({ path: '/home' });
......
......@@ -12,26 +12,26 @@
<div v-if="it.count" class="Ol__body-row">
<span class="Ol__body-count">{{ it.count }}</span>
</div>
<div v-if="it.virtualChargeAttrs" class="Ol__body-skus">
<div v-if="it.virtualChargeAttrs.account" class="Ol__body-sku">
<div v-if="it.virtualRechargeAttrs" class="Ol__body-skus">
<div v-if="it.virtualRechargeAttrs.account" class="Ol__body-sku">
<span>充值帐户:</span>
<span class="Ol__body-val">{{ it.virtualChargeAttrs.account }}</span>
<span class="Ol__body-val">{{ it.virtualRechargeAttrs.account }}</span>
</div>
<div v-if="it.virtualChargeAttrs.registrationLocation" class="Ol__body-sku">
<div v-if="it.virtualRechargeAttrs.registrationLocation" class="Ol__body-sku">
<span>归属地:</span>
<span class="Ol__body-val">{{ it.virtualChargeAttrs.account }}</span>
<span class="Ol__body-val">{{ it.virtualRechargeAttrs.registrationLocation }}</span>
</div>
<div v-if="it.virtualChargeAttrs.cardNo" class="Ol__body-sku">
<div v-if="it.virtualRechargeAttrs.cardNo" class="Ol__body-sku">
<span>卡号:</span>
<span class="Ol__body-val">{{ it.virtualChargeAttrs.cardNo }}</span>
<span class="Ol__body-val">{{ it.virtualRechargeAttrs.cardNo }}</span>
</div>
<div v-if="it.virtualChargeAttrs.cardPassword" class="Ol__body-sku">
<div v-if="it.virtualRechargeAttrs.cardPassword" class="Ol__body-sku">
<span>卡密:</span>
<span class="Ol__body-val">{{ it.virtualChargeAttrs.cardPassword }}</span>
<span class="Ol__body-val">{{ it.virtualRechargeAttrs.cardPassword }}</span>
<a
v-if="props.showCopy"
href="javascript:;"
@click="parent.copyPwd(it.virtualChargeAttrs)"
@click="parent.copyPwd(it.virtualRechargeAttrs.cardPassword)"
>
复制
</a>
......
......@@ -11,14 +11,12 @@
/>
</cr-tab>
</cr-tabs>
<cancel-popup v-model="showCancelPopup" :order-info="currentOrder" />
</div>
</template>
<script>
import orderApi from '@/api/order.api';
import List from './components/List';
import { isApp } from '@/service/validation.service';
import CancelPopup from './components/CancelPopup';
const commonParams = {
loading: false,
finished: false,
......@@ -29,13 +27,11 @@ const commonParams = {
export default {
name: 'OrderList',
components: {
List,
CancelPopup
List
},
data() {
return {
isApp,
showCancelPopup: false,
currentTab: 0,
navList: [
{
......@@ -94,13 +90,11 @@ export default {
this.toGoods();
break;
default:
this.currentItems = {};
this.currentOrder = {};
break;
}
},
orderCancelPopup() {
this.showCancelPopup = true;
},
toPay() {
this.$router.push({ path: '/pay', query: { orderNo: this.currentOrder.orderNo } });
},
......@@ -113,6 +107,33 @@ export default {
setNavListData(key, val) {
this.$set(this.navList[this.currentTab], key, val);
},
orderCancelPopup() {
this.$dialog({
title: '取消订单',
message: '您真的要取消吗?',
confirmButtonText: '仍要取消',
cancelButtonText: '留下商品',
onConfirm: () => {
this.handleRadioSubmit();
}
});
},
async handleRadioSubmit() {
const [res] = await orderApi.orderCancel({
orderNo: this.currentOrder.orderNo,
cancelReason: '不想买了',
cancelReasonType: 4
});
if (res) {
this.$toast('已取消');
this.$set(this.navList[this.currentTab].list[this.currentOrder.index], `orderStatus`, 51);
this.$set(
this.navList[this.currentTab].list[this.currentOrder.index],
`orderStatusText`,
'交易关闭'
);
}
},
async getList() {
let { finished, page, pageSize, list, state: orderStatus } = this.navList[this.currentTab];
if (finished) return;
......
......@@ -44,11 +44,11 @@
</template>
<script>
// import { registeredEvents } from '@/utils/sa';
const payTypeE = [
'PD_YXMMAEC_UserClickCashierSelectXiangHuaCardPay',
'PD_YXMMAEC_UserClickCashierSelectWechatPay'
];
const payTypeMiniAppE = ['c_cashierselectxianghuacardpay', 'c_cashierselectwechatpay'];
// const payTypeE = [
// 'PD_YXMMAEC_UserClickCashierSelectXiangHuaCardPay',
// 'PD_YXMMAEC_UserClickCashierSelectWechatPay'
// ];
// const payTypeMiniAppE = ['c_cashierselectxianghuacardpay', 'c_cashierselectwechatpay'];
export default {
name: 'PayCardItem',
inject: ['payCard', 'pay'],
......
......@@ -8,10 +8,10 @@
:class="{
cheap: item.price - item.salePrice > 0,
active: props.info.skuNo === item.skuNo,
'no-stock': !props.info.hasStock,
'no-stock': !item.hasStock,
nohhird: (index + 1) % 3 !== 0
}"
@click="props.info.hasStock && parent.handleSkuSelected(item, index)"
@click="item.hasStock && parent.handleSkuSelected(item, index)"
>
<div class="Vl__sku-name">
{{ props.threeCol ? item.salePrice : item.skuName }}{{ props.showUnit ? '' : '' }}
......
......@@ -111,13 +111,13 @@ export default {
},
getSkuListDebounce() {
this.showLoading = true;
this.skuList = [];
if (this.skuTimer) clearTimeout(this.skuTimer);
this.skuTimer = setTimeout(() => {
this.getSkuList();
}, 600);
},
async getSkuList() {
this.skuList = [];
const { spuNos, type } = this.spuInfo;
const [res] = await rechargeApi.getSkuList(spuNos, type);
if (res) {
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment