@@ -160,8 +160,8 @@ export default function useOrderListItem(props) { | |||
ordersList.value[k]['isUseAgain'] = false //不可以再次使用 | |||
} | |||
} | |||
} | |||
console.log('输出内容222222', ordersList) | |||
}) | |||
.catch((err) => { | |||
console.log(err); | |||
@@ -169,7 +169,6 @@ export default function useOrderListItem(props) { | |||
uni.$emit('refreshFinish'); | |||
} catch (e) { | |||
console.log('输出内容222222', e) | |||
uni.stopPullDownRefresh(); | |||
uni.$emit('refreshFinish'); |
@@ -109,6 +109,13 @@ | |||
"subPackages": [{ | |||
"root": "subpackage/after-sale", //售后相关 | |||
"pages": [{ | |||
"path": "add-equity/equity-list", | |||
"style": { | |||
"navigationBarTitleText": "购买权益列表", | |||
"enablePullDownRefresh": false | |||
} | |||
}, | |||
{ | |||
"path": "add-equity/choice-order", | |||
"style": { | |||
"navigationBarTitleText": "选择订单", |
@@ -40,17 +40,13 @@ | |||
v-else>0</text><text class="txt">辆</text></view> | |||
<text class="type">车辆</text> | |||
</view> | |||
<!-- <view class="panel-item" @click="$util.navTo('/subpackage/personal-center/vehicle-information', true)"> | |||
<view class="panel-text"><text class="num">{{state.userVehicleInfoSumQueryVo.vehicleSum}}</text><text class="txt">辆</text></view> | |||
<text class="type">车辆</text> | |||
</view> --> | |||
<view class="panel-item" @click="goOrder(0)"> | |||
<text class="num">{{state.userVehicleInfoSumQueryVo.orderStatus0}}</text> | |||
<text class="type">待办</text> | |||
</view> | |||
<view class="panel-item" v-if="false"> | |||
<view class="panel-text"><text class="num">2</text><text class="txt">张</text></view> | |||
<text class="type">卡券</text> | |||
<view class="panel-item" @click="goEquity()"> | |||
<view class="panel-text"><text class="num">{{state.equityNumber}}</text></view> | |||
<text class="type">权益</text> | |||
</view> | |||
<view class="panel-item" v-if="false"> | |||
<view class="panel-text"><text class="num">2555</text><text class="txt">分</text></view> | |||
@@ -220,7 +216,7 @@ | |||
import navBar from "../../components/nav-bar/nav-bar2.vue"; | |||
import { onLoad, onShow, onPageScroll } from "@dcloudio/uni-app"; | |||
import { | |||
userInfoIndex, selectCarInfo, delCarInfo | |||
userInfoIndex, selectCarInfo, delCarInfo, showEquityListApi | |||
} from "@/utils/network/api.js"; | |||
import { | |||
request | |||
@@ -260,6 +256,7 @@ | |||
orderStatus0: 0 | |||
},//车数量 ,代办数量 | |||
isTrajectory: false, //是否有轨迹 | |||
equityNumber: 0, | |||
}); | |||
onMounted(() => { | |||
const res = uni.getMenuButtonBoundingClientRect(); | |||
@@ -290,6 +287,7 @@ | |||
console.log("state.data.opId", state.data.opId) | |||
if (state.data.opId) { | |||
getUserInfo(); | |||
showEquityListRequest(); //权益请求 | |||
} else { | |||
state.userVehicleInfoSumQueryVo = { | |||
vehicleSum: 0, | |||
@@ -411,6 +409,30 @@ | |||
}) | |||
} | |||
} | |||
const showEquityListRequest = () => { | |||
const options = { | |||
type: 2, | |||
data: { | |||
"openId": getItem(StorageKeys.OpenId), | |||
"pageNo": 100, | |||
"pageSize": 1, | |||
}, | |||
method: 'POST', | |||
showLoading: true, | |||
} | |||
request(showEquityListApi, options).then((res) => { | |||
const data = stringToJson(res.bizContent); | |||
console.log("购买2", data) | |||
state.equityNumber = data.data.length | |||
}) | |||
} | |||
const goEquity = () => { | |||
if (state.equityNumber) { | |||
navTo('/subpackage/after-sale/add-equity/equity-list') | |||
} else { | |||
msg("暂无购买权益记录") | |||
} | |||
} | |||
</script> | |||
<style> | |||
page { |
@@ -1,18 +1,21 @@ | |||
<template> | |||
<view class="content"> | |||
<view class="content" v-if="state.list"> | |||
<view class="item" v-for="(item,index) in state.list" :key='index'> | |||
<!-- <view class="item"> --> | |||
<view class="title"> | |||
<view> | |||
<text><text>{{item.productName}}</text> <text>¥{{item.discountPrice * 0.01}}</text></text> | |||
</view> | |||
<text class="add" @click="add()">加购</text> | |||
<text class="add" @click="add(item.equtyId)">加购</text> | |||
</view> | |||
</view> | |||
</view> | |||
<view v-else> | |||
<empty title='暂无权益列表' /> | |||
</view> | |||
</template> | |||
<script setup lang="ts"> | |||
import empty from "@/components/empty/empty.vue"; | |||
import { onLoad } from "@dcloudio/uni-app"; | |||
import { reactive } from "vue"; | |||
import { equityProductsApi, addEquityListApi } from "@/utils/network/api.js"; | |||
@@ -40,7 +43,7 @@ | |||
const options = { | |||
type: 2, | |||
data: { | |||
"pageNo": 10, | |||
"pageNo": 100, | |||
"pageSize": 1, | |||
}, | |||
method: 'POST', | |||
@@ -52,24 +55,8 @@ | |||
console.log("222", data.data) | |||
}) | |||
} | |||
const add = () => { | |||
navTo('/subpackage/after-sale/add-equity/choice-order', true) | |||
// const options = { | |||
// type: 2, | |||
// data: { | |||
// "type": 1, | |||
// "openId": getItem(StorageKeys.OpenId), | |||
// "orderId": "" | |||
// }, | |||
// method: 'POST', | |||
// showLoading: true, | |||
// } | |||
// request(addEquityListApi, options).then((res) => { | |||
// const data = stringToJson(res.bizContent); | |||
// state.list = data.data | |||
// console.log("加购", data.data) | |||
// }) | |||
const add = (equtyId) => { | |||
navTo(`/subpackage/after-sale/add-equity/choice-order?equtyId=${equtyId}`, true) | |||
} | |||
</script> | |||
@@ -26,13 +26,14 @@ | |||
ref | |||
} from "vue" | |||
import { | |||
msg, | |||
navTo | |||
} from "@/utils/utils" | |||
import { | |||
onLoad, | |||
} from "@dcloudio/uni-app"; | |||
import { | |||
orderList | |||
orderList, addEquityListApi | |||
} from "@/utils/network/api.js"; | |||
import { | |||
request | |||
@@ -50,6 +51,7 @@ | |||
const state = reactive({ | |||
list: [],//车辆list, | |||
equtyId: "",//权益id | |||
}); | |||
const flag = ref('0') //默认选择0 | |||
//获取车牌颜色文字 | |||
@@ -59,6 +61,7 @@ | |||
return colors[0].color | |||
} | |||
onLoad((option) => { | |||
state.equtyId = option.equtyId | |||
quanCheckActionTrue().then((item : any) => { | |||
console.log("1", item.data) | |||
state.list = item.data | |||
@@ -79,9 +82,10 @@ | |||
"vehiclePlate": "", | |||
"tabIndex": "0", | |||
"pageNo": 1, | |||
"pageSize": 10, | |||
"pageSize": 1000, | |||
"promotionModes": 1, | |||
"isAfter": true | |||
"isAfter": true, | |||
"orderStatus": 1 | |||
}; | |||
const options = { | |||
type: 2, | |||
@@ -100,8 +104,65 @@ | |||
} | |||
const choose = (i, item) => { | |||
console.log("item", item) | |||
flag.value = i | |||
navTo(`/pages/recharge/recharge?cardId=${item.cardId}`) | |||
const options = { | |||
type: 2, | |||
data: { | |||
"type": 1, | |||
"openId": getItem(StorageKeys.OpenId), | |||
"orderId": item.orderId, | |||
"equityId": state.equtyId | |||
}, | |||
method: 'POST', | |||
showLoading: true, | |||
} | |||
// 权益购买入参有个属性是type:1,代表查询是否已经买过了权益,返回的数据中hasData:true表示买过了,如果hasData:false表示没买过。type:2,表示购买 | |||
request(addEquityListApi, options).then((res) => { | |||
const data = stringToJson(res.bizContent); | |||
console.log("加购", data.hasData) | |||
if (data.hasData) { | |||
uni.showModal({ | |||
title: '提示', | |||
content: '重复购买此产品', | |||
success: function (res) { | |||
if (res.confirm) { | |||
console.log('用户点击确定'); | |||
chooseBuy(item) | |||
} else if (res.cancel) { | |||
console.log('用户点击取消'); | |||
} | |||
} | |||
}); | |||
} else { | |||
chooseBuy(item) | |||
} | |||
}) | |||
} | |||
const chooseBuy = (item) => { | |||
console.log("item", item) | |||
const options = { | |||
type: 2, | |||
data: { | |||
"type": 2, | |||
"openId": getItem(StorageKeys.OpenId), | |||
"orderId": item.orderId, | |||
"equityId": state.equtyId | |||
}, | |||
method: 'POST', | |||
showLoading: true, | |||
} | |||
// 权益购买入参有个属性是type:1,代表查询是否已经买过了权益,返回的数据中hasData:true表示买过了,如果hasData:false表示没买过。type:2,表示购买 | |||
request(addEquityListApi, options).then((res) => { | |||
const data = stringToJson(res.bizContent); | |||
console.log("购买2", data) | |||
msg("购买成功") | |||
setTimeout(() => { | |||
uni.navigateBack({ | |||
delta: 2 | |||
}) | |||
}, 2000) | |||
}) | |||
} | |||
</script> | |||
@@ -0,0 +1,136 @@ | |||
<template> | |||
<view class="selectCar-box"> | |||
<view v-if="state.list&&state.list.length>0" class="item" v-for="(item,i) in state.list" :key="i"> | |||
<view class="iten-left"> | |||
<view>权益名称:{{item.productName}}</view> | |||
<view>权益金额:{{item.discountPrice * 0.01}}</view> | |||
</view> | |||
</view> | |||
<view style="text-align: center;margin: 20rpx;font-size: 30rpx;" v-if="state.flags">我是有底线的~</view> | |||
<view v-else> | |||
<empty title='暂无权益记录' /> | |||
</view> | |||
</view> | |||
</template> | |||
<script lang="ts" setup> | |||
import empty from "@/components/empty/empty.vue"; | |||
import { | |||
reactive, | |||
ref | |||
} from "vue" | |||
import { | |||
msg, | |||
navTo | |||
} from "@/utils/utils" | |||
import { | |||
onLoad, onReachBottom | |||
} from "@dcloudio/uni-app"; | |||
import { | |||
showEquityListApi | |||
} from "@/utils/network/api.js"; | |||
import { | |||
request | |||
} from "@/utils/network/request.js"; | |||
import { | |||
getItem, | |||
StorageKeys, | |||
} from "@/utils/storage"; | |||
import { | |||
stringToJson | |||
} from "@/utils/network/encryption"; | |||
const state = reactive({ | |||
list: [],//车辆list, | |||
equtyId: "",//权益id | |||
flags: false, | |||
pageSize: 1, | |||
pageNo: 10 | |||
}); | |||
const flag = ref('0') //默认选择0 | |||
onLoad((option) => { | |||
showEquityListRequest() | |||
}); | |||
const showEquityListRequest = () => { | |||
const options = { | |||
type: 2, | |||
data: { | |||
"openId": getItem(StorageKeys.OpenId), | |||
"pageNo": state.pageNo, | |||
"pageSize": state.pageSize, | |||
}, | |||
method: 'POST', | |||
showLoading: true, | |||
} | |||
request(showEquityListApi, options).then((res) => { | |||
const data = stringToJson(res.bizContent); | |||
console.log("购买2", data.data) | |||
state.list = data.data | |||
}) | |||
} | |||
// 触底加载 | |||
onReachBottom(() => { | |||
if (state.list.length < state.pageSize * 10) return state.flags = true | |||
console.log("触底了") | |||
state.pageSize++ | |||
showEquityListRequest() | |||
}) | |||
</script> | |||
<style> | |||
page { | |||
width: 100%; | |||
height: 100%; | |||
background-color: #EEF7F7; | |||
} | |||
</style> | |||
<style lang="scss" scoped> | |||
.selectCar-box { | |||
padding: 30rpx; | |||
.item { | |||
padding: 0 20rpx; | |||
display: flex; | |||
justify-content: space-between; | |||
align-items: center; | |||
height: 130rpx; | |||
background: #FFFFFF; | |||
box-shadow: 0rpx 2rpx 6rpx 0rpx rgba(223, 223, 223, 0.8); | |||
border-radius: 20rpx; | |||
margin-bottom: 30rpx; | |||
.iten-left { | |||
align-items: center; | |||
font-size: 30rpx; | |||
text { | |||
margin-left: 20rpx; | |||
font-size: 32rpx; | |||
font-family: Noto Sans S Chinese; | |||
font-weight: 400; | |||
color: #333333; | |||
} | |||
} | |||
.choose-item { | |||
width: 44rpx; | |||
height: 44rpx; | |||
background: #FFFFFF; | |||
border: 2rpx solid #00B38B; | |||
border-radius: 50%; | |||
margin-right: 20rpx; | |||
display: flex; | |||
justify-content: center; | |||
align-items: center; | |||
box-sizing: content-box; | |||
} | |||
.active { | |||
width: 34rpx; | |||
height: 34rpx; | |||
background: #00B38B; | |||
border-radius: 50%; | |||
} | |||
} | |||
} | |||
</style> |
@@ -269,4 +269,5 @@ export const isSubmitOrderApi = "3cec5ab7db63439186bda5a054c5fab7" //老中台- | |||
export const activationRecordApi = "1be22d30f08a4f10958a4b76dcfae6cf" //查询重新激活记录限制 | |||
export const submitVehicleApi = "e35daf84891549afabcbf86b4ed7e2e3" //重新激活提交车辆信息 | |||
export const getEquityListApi = "a2656146d9c24c86b8ea7aabbe3dbf97" //获取全部加购权益列表 | |||
export const addEquityListApi = "783e1feed98740b691f6c49c6d76f7d5" //全部权益列表购买 | |||
export const addEquityListApi = "783e1feed98740b691f6c49c6d76f7d5" //全部权益列表购买 | |||
export const showEquityListApi = "2af868adcf2f44ceb7a94c659ba2cee1" //展示权益列表购买 |