ordersList.value[k]['isUseAgain'] = false //不可以再次使用 | ordersList.value[k]['isUseAgain'] = false //不可以再次使用 | ||||
} | } | ||||
} | } | ||||
} | } | ||||
console.log('输出内容222222', ordersList) | |||||
}) | }) | ||||
.catch((err) => { | .catch((err) => { | ||||
console.log(err); | console.log(err); | ||||
uni.$emit('refreshFinish'); | uni.$emit('refreshFinish'); | ||||
} catch (e) { | } catch (e) { | ||||
console.log('输出内容222222', e) | |||||
uni.stopPullDownRefresh(); | uni.stopPullDownRefresh(); | ||||
uni.$emit('refreshFinish'); | uni.$emit('refreshFinish'); |
"subPackages": [{ | "subPackages": [{ | ||||
"root": "subpackage/after-sale", //售后相关 | "root": "subpackage/after-sale", //售后相关 | ||||
"pages": [{ | "pages": [{ | ||||
"path": "add-equity/equity-list", | |||||
"style": { | |||||
"navigationBarTitleText": "购买权益列表", | |||||
"enablePullDownRefresh": false | |||||
} | |||||
}, | |||||
{ | |||||
"path": "add-equity/choice-order", | "path": "add-equity/choice-order", | ||||
"style": { | "style": { | ||||
"navigationBarTitleText": "选择订单", | "navigationBarTitleText": "选择订单", |
v-else>0</text><text class="txt">辆</text></view> | v-else>0</text><text class="txt">辆</text></view> | ||||
<text class="type">车辆</text> | <text class="type">车辆</text> | ||||
</view> | </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)"> | <view class="panel-item" @click="goOrder(0)"> | ||||
<text class="num">{{state.userVehicleInfoSumQueryVo.orderStatus0}}</text> | <text class="num">{{state.userVehicleInfoSumQueryVo.orderStatus0}}</text> | ||||
<text class="type">待办</text> | <text class="type">待办</text> | ||||
</view> | </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> | ||||
<view class="panel-item" v-if="false"> | <view class="panel-item" v-if="false"> | ||||
<view class="panel-text"><text class="num">2555</text><text class="txt">分</text></view> | <view class="panel-text"><text class="num">2555</text><text class="txt">分</text></view> | ||||
import navBar from "../../components/nav-bar/nav-bar2.vue"; | import navBar from "../../components/nav-bar/nav-bar2.vue"; | ||||
import { onLoad, onShow, onPageScroll } from "@dcloudio/uni-app"; | import { onLoad, onShow, onPageScroll } from "@dcloudio/uni-app"; | ||||
import { | import { | ||||
userInfoIndex, selectCarInfo, delCarInfo | |||||
userInfoIndex, selectCarInfo, delCarInfo, showEquityListApi | |||||
} from "@/utils/network/api.js"; | } from "@/utils/network/api.js"; | ||||
import { | import { | ||||
request | request | ||||
orderStatus0: 0 | orderStatus0: 0 | ||||
},//车数量 ,代办数量 | },//车数量 ,代办数量 | ||||
isTrajectory: false, //是否有轨迹 | isTrajectory: false, //是否有轨迹 | ||||
equityNumber: 0, | |||||
}); | }); | ||||
onMounted(() => { | onMounted(() => { | ||||
const res = uni.getMenuButtonBoundingClientRect(); | const res = uni.getMenuButtonBoundingClientRect(); | ||||
console.log("state.data.opId", state.data.opId) | console.log("state.data.opId", state.data.opId) | ||||
if (state.data.opId) { | if (state.data.opId) { | ||||
getUserInfo(); | getUserInfo(); | ||||
showEquityListRequest(); //权益请求 | |||||
} else { | } else { | ||||
state.userVehicleInfoSumQueryVo = { | state.userVehicleInfoSumQueryVo = { | ||||
vehicleSum: 0, | vehicleSum: 0, | ||||
}) | }) | ||||
} | } | ||||
} | } | ||||
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> | </script> | ||||
<style> | <style> | ||||
page { | page { |
<template> | <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" v-for="(item,index) in state.list" :key='index'> | ||||
<!-- <view class="item"> --> | |||||
<view class="title"> | <view class="title"> | ||||
<view> | <view> | ||||
<text><text>{{item.productName}}</text> <text>¥{{item.discountPrice * 0.01}}</text></text> | <text><text>{{item.productName}}</text> <text>¥{{item.discountPrice * 0.01}}</text></text> | ||||
</view> | </view> | ||||
<text class="add" @click="add()">加购</text> | |||||
<text class="add" @click="add(item.equtyId)">加购</text> | |||||
</view> | </view> | ||||
</view> | </view> | ||||
</view> | </view> | ||||
<view v-else> | |||||
<empty title='暂无权益列表' /> | |||||
</view> | |||||
</template> | </template> | ||||
<script setup lang="ts"> | <script setup lang="ts"> | ||||
import empty from "@/components/empty/empty.vue"; | |||||
import { onLoad } from "@dcloudio/uni-app"; | import { onLoad } from "@dcloudio/uni-app"; | ||||
import { reactive } from "vue"; | import { reactive } from "vue"; | ||||
import { equityProductsApi, addEquityListApi } from "@/utils/network/api.js"; | import { equityProductsApi, addEquityListApi } from "@/utils/network/api.js"; | ||||
const options = { | const options = { | ||||
type: 2, | type: 2, | ||||
data: { | data: { | ||||
"pageNo": 10, | |||||
"pageNo": 100, | |||||
"pageSize": 1, | "pageSize": 1, | ||||
}, | }, | ||||
method: 'POST', | method: 'POST', | ||||
console.log("222", data.data) | 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> | </script> | ||||
ref | ref | ||||
} from "vue" | } from "vue" | ||||
import { | import { | ||||
msg, | |||||
navTo | navTo | ||||
} from "@/utils/utils" | } from "@/utils/utils" | ||||
import { | import { | ||||
onLoad, | onLoad, | ||||
} from "@dcloudio/uni-app"; | } from "@dcloudio/uni-app"; | ||||
import { | import { | ||||
orderList | |||||
orderList, addEquityListApi | |||||
} from "@/utils/network/api.js"; | } from "@/utils/network/api.js"; | ||||
import { | import { | ||||
request | request | ||||
const state = reactive({ | const state = reactive({ | ||||
list: [],//车辆list, | list: [],//车辆list, | ||||
equtyId: "",//权益id | |||||
}); | }); | ||||
const flag = ref('0') //默认选择0 | const flag = ref('0') //默认选择0 | ||||
//获取车牌颜色文字 | //获取车牌颜色文字 | ||||
return colors[0].color | return colors[0].color | ||||
} | } | ||||
onLoad((option) => { | onLoad((option) => { | ||||
state.equtyId = option.equtyId | |||||
quanCheckActionTrue().then((item : any) => { | quanCheckActionTrue().then((item : any) => { | ||||
console.log("1", item.data) | console.log("1", item.data) | ||||
state.list = item.data | state.list = item.data | ||||
"vehiclePlate": "", | "vehiclePlate": "", | ||||
"tabIndex": "0", | "tabIndex": "0", | ||||
"pageNo": 1, | "pageNo": 1, | ||||
"pageSize": 10, | |||||
"pageSize": 1000, | |||||
"promotionModes": 1, | "promotionModes": 1, | ||||
"isAfter": true | |||||
"isAfter": true, | |||||
"orderStatus": 1 | |||||
}; | }; | ||||
const options = { | const options = { | ||||
type: 2, | type: 2, | ||||
} | } | ||||
const choose = (i, item) => { | const choose = (i, item) => { | ||||
console.log("item", item) | |||||
flag.value = i | 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> | </script> | ||||
<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> |
export const activationRecordApi = "1be22d30f08a4f10958a4b76dcfae6cf" //查询重新激活记录限制 | export const activationRecordApi = "1be22d30f08a4f10958a4b76dcfae6cf" //查询重新激活记录限制 | ||||
export const submitVehicleApi = "e35daf84891549afabcbf86b4ed7e2e3" //重新激活提交车辆信息 | export const submitVehicleApi = "e35daf84891549afabcbf86b4ed7e2e3" //重新激活提交车辆信息 | ||||
export const getEquityListApi = "a2656146d9c24c86b8ea7aabbe3dbf97" //获取全部加购权益列表 | export const getEquityListApi = "a2656146d9c24c86b8ea7aabbe3dbf97" //获取全部加购权益列表 | ||||
export const addEquityListApi = "783e1feed98740b691f6c49c6d76f7d5" //全部权益列表购买 | |||||
export const addEquityListApi = "783e1feed98740b691f6c49c6d76f7d5" //全部权益列表购买 | |||||
export const showEquityListApi = "2af868adcf2f44ceb7a94c659ba2cee1" //展示权益列表购买 |