DESKTOP-2IO5MST\huting пре 1 година
родитељ
комит
fda31b07b1

+ 7
- 0
pages.json Прегледај датотеку

"subPackages": [{ "subPackages": [{
"root": "subpackage/after-sale", //售后相关 "root": "subpackage/after-sale", //售后相关
"pages": [{ "pages": [{
"path": "progress-query/progress-query-business-details",
"style": {
"navigationBarTitleText": "业务审核记录详情",
"enablePullDownRefresh": false
}
},
{
"path": "progress-query/progress-query-business", "path": "progress-query/progress-query-business",
"style": { "style": {
"navigationBarTitleText": "业务审核记录", "navigationBarTitleText": "业务审核记录",

+ 12
- 15
pages/recharge/recharge-pay.vue Прегледај датотеку

<image class="photo1" src="../../static/image/icon-back.png" mode="widthFix"></image> <image class="photo1" src="../../static/image/icon-back.png" mode="widthFix"></image>
</view> </view>
</view> </view>
<view class="tips">温馨提示: <text class="red">NFC充值</text>仅支持在<text class="red">安卓手机</text>进行ETC储值卡充值!</view>
<!-- <view>
<view class="tabs">
<view class="tab-tit as-gravity-center-start">充值方式

<u-input @click="state.transWayTypeShow = true" inputAlign="center" v-model="state.transWayName"
type="select" />
</view>
</view>
<view class="btn btn-primary" @click="rechargeAction">立即充值</view>

</view>
<u-select v-model="state.transWayTypeShow" :list="state.transWayTypeList" @confirm="selectConfirm"></u-select> -->
<view class="tips" v-if="source=='WECHAT'">温馨提示: <text class="red">NFC充值</text>仅支持在<text
class="red">安卓手机</text>进行ETC储值卡充值!</view>
</template> </template>


<script setup lang="ts"> <script setup lang="ts">
import { import {
fileURL fileURL
} from "@/datas/fileURL.js"; } from "@/datas/fileURL.js";
import { source } from "@/utils/network/difference";
const datas = require("../../static/etcUtil/datas.js"); const datas = require("../../static/etcUtil/datas.js");
const bluetoothUtil = require("../../static/etcUtil/index.js"); const bluetoothUtil = require("../../static/etcUtil/index.js");
const cmd = require("../../static/etcUtil/cmdConfig.js"); const cmd = require("../../static/etcUtil/cmdConfig.js");


const state = reactive({ const state = reactive({
transWayTypeShow: false, transWayTypeShow: false,
// #ifdef MP-ALIPAY
transWayTypeList: [{
name: "蓝牙",
value: "blu",
}],
// #endif
// #ifdef MP-WEIXIN
transWayTypeList: [{ transWayTypeList: [{
name: "蓝牙", name: "蓝牙",
value: "blu", value: "blu",
}, { }, {
name: "NFC", name: "NFC",
value: "nfc", value: "nfc",
}
],
}],
// #endif
tableIndex: 0, tableIndex: 0,
transWayName: "蓝牙", transWayName: "蓝牙",
transWay: "blu", //“blu”为蓝牙充值方式、“nfc”为NFC充值方式 transWay: "blu", //“blu”为蓝牙充值方式、“nfc”为NFC充值方式

+ 19
- 6
subpackage/after-sale/ETC-product-status-list-query/ETC-product-status-list-query.vue Прегледај датотеку

</view> </view>
<view class="content"> <view class="content">
<view class="list-item" v-for="(item,index) in state.tableData" @click="goDeatls(item)"> <view class="list-item" v-for="(item,index) in state.tableData" @click="goDeatls(item)">
<view><text>产品编号:</text><text>{{item.promoteId}}</text></view>
<view><text>产品名称:</text><text>{{item.promoteName}}</text></view>
<view><text>产品状态:</text><text>{{item.status}}</text></view>
<view><text>产品生效时间:</text><text>{{item.start}}</text></view>
<view><text>产品过期时间:</text><text>{{item.end}}</text></view>
<view><text>产品发行渠道名称:</text><text>{{item.agencyName[0]}}</text></view>
<view>
<view><text>产品编号:</text><text>{{item.promoteId}}</text></view>
<view><text>产品名称:</text><text>{{item.promoteName}}</text></view>
<view><text>产品状态:</text><text>{{item.status}}</text></view>
<view><text>产品生效时间:</text><text>{{item.start}}</text></view>
<view><text>产品过期时间:</text><text>{{item.end}}</text></view>
<view><text>产品发行渠道名称:</text><text>{{item.agencyName[0]}}</text></view>
</view>
<image class="right" src="../../../static/image/icon-back.png" mode=""></image>
</view> </view>
</view> </view>


padding: 12rpx; padding: 12rpx;
box-sizing: border-box; box-sizing: border-box;
background-color: white; background-color: white;
display: flex;
align-items: center;
} }


.list-item>view { .list-item>view {
margin-bottom: 10rpx; margin-bottom: 10rpx;
width: 94%;
} }


.search-content { .search-content {
background: white; background: white;
box-sizing: border-box; box-sizing: border-box;
width: 100%; width: 100%;
z-index: 999999;
} }


.content { .content {
background-color: #EEF7F7; background-color: #EEF7F7;
padding-top: 20rpx; padding-top: 20rpx;
} }

.right {
width: 40rpx;
height: 40rpx;
transform: rotateY(180deg);
}
</style> </style>

+ 93
- 0
subpackage/after-sale/progress-query/progress-query-business-details.vue Прегледај датотеку

<template>
<view class="allContent">
<view class="list-item">
<view><text>车牌号:</text><text>{{state.params['vehiclePlate']}}</text></view>
<view><text>车牌颜色:</text><text>{{state.params['vehiclePlateColorC']}}</text></view>
<view v-if="state.params['cardId']"><text>卡号:</text><text>{{state.params['cardId']}}</text></view>
<view v-if="state.params['obuId']"><text>OBU号:</text><text>{{state.params['obuId']}}</text></view>
<view><text>订单ID:</text><text>{{state.params['orderId']}}</text></view>
<view><text>工单ID:</text><text>{{state.params['workOrderId']}}</text></view>
<view><text>业务类型:</text><text>{{state.params['businessTypeC']}}</text></view>
<view><text>用户名称:</text><text>{{state.params['customerName']}}</text></view>
<view><text>是否逾期:</text><text>{{state.params['over']?'逾期':"未逾期"}}</text>
</view>
<view><text>状态:</text><text>{{state.params['statusC']}}</text></view>
<view><text>申请时间:</text><text>{{state.params['insertTime']}}</text>
</view>
</view>
</view>

</template>

<script setup lang="ts">
import { reactive } from "vue";
import { onLoad } from "@dcloudio/uni-app";
import { ETCProductStatusListQueryDetailsApi } from "@/utils/network/api.js";
import { request } from "@/utils/network/request.js";
import { stringToJson } from "@/utils/network/encryption.js";
const state = reactive({
params: {}, //上一个页面传递过来的参数
promoteName: "", //产品名称
promoteId: "",//产品编号
tableData: [],

});
onLoad((options) => {
state.params = JSON.parse(decodeURIComponent(options.params))
// state.promoteId = state.params.promoteId
console.log("options.promoteId", state.params)
// query();
})
const query = () => {
const options = {
type: 2,
data: {
"promoteId": state.promoteId,
},
method: "POST",
showLoading: true,
};
//调用方式
request(ETCProductStatusListQueryDetailsApi, options).then((res) => {
state.tableData = stringToJson(res.bizContent)
console.log("res", state.tableData)
})
}
</script>

<style scoped>
.allContent {
background-color: #EEF7F7;
height: 100vh;
overflow: hidden;
}

.list-item {
width: 95%;
border-radius: 10rpx;
margin: 30rpx auto;
font-size: 28rpx;
border: 1rpx solid #ccc;
padding: 12rpx;
box-sizing: border-box;
background-color: white;

}

.list-item>view {
margin-bottom: 20rpx;
display: flex;
align-items: center;
}

.list-item>view>text:first-child {
width: 26%;
display: inline-block;
}

.list-item>view>text:last-child {
width: 74%;
display: inline-block;
word-break: break-all;
}
</style>

+ 84
- 84
subpackage/after-sale/progress-query/progress-query-business.vue Прегледај датотеку

<view class="content"> <view class="content">
<view class="top-content"> <view class="top-content">
<view class="item"> <view class="item">
<text>车牌号:</text><input placeholder="请输入车牌号" v-model="state.vehicleIdNum" />
<text>车牌号:</text><input placeholder="请输入车牌号" v-model="state.vehiclePlate" />
</view> </view>
<view class="item"> <view class="item">
<text>车牌颜色:</text> <text>车牌颜色:</text>
<uni-data-select v-model="state.vehiclePlateColor" :localdata="state.vehiclePlateColorArr" <uni-data-select v-model="state.vehiclePlateColor" :localdata="state.vehiclePlateColorArr"
@change="changeColor" :clear="false"></uni-data-select> @change="changeColor" :clear="false"></uni-data-select>
</view> </view>
</view>
<view class="item">
<text>审核状态:</text>
<text style="margin-left: 20rpx;">审核状态:</text>
<view> <view>
<uni-data-select v-model="state.status" :localdata="state.statusArr" @change="changeBusiness"
<uni-data-select v-model="state.status" :localdata="state.statusArr" @change="changeStatus"
:clear="false"></uni-data-select> :clear="false"></uni-data-select>
</view> </view>
</view> </view>




<view class="uni-container"> <view class="uni-container">
<view class="list-item" v-for="(item,index) in state.listData">
<view><text>车牌号:</text><text>{{item.vehiclePlate}}</text></view>
<view><text>车牌颜色:</text><text>{{item.vehiclePlateColorC}}</text></view>
<view><text>状态:</text><text>{{item.statusC}}</text></view>
<view><text>业务类型:</text><text>{{item.businessType}}</text></view>
<view><text>时间:</text><text>{{item.insertTime}}</text></view>
<view class="list-item" v-for="(item,index) in state.listData" @click="go(item)">
<view>
<view><text>车牌号:</text><text>{{item.vehiclePlate}}</text></view>
<view><text>车牌颜色:</text><text>{{item.vehiclePlateColorC}}</text></view>
<view><text>状态:</text><text>{{item.statusC}}</text></view>
<view><text>业务类型:</text><text>{{item.businessTypeC}}</text></view>
<view><text>时间:</text><text>{{item.insertTime}}</text></view>
</view>
<image class="right" src="../../../static/image/icon-back.png" mode=""></image>
</view> </view>
</view> </view>
<view class="bottom-line" v-if="state.flags">我是有底线的~~~</view> <view class="bottom-line" v-if="state.flags">我是有底线的~~~</view>
pageNo: 1, // 当前页 pageNo: 1, // 当前页
total: 0, // 数据总量 total: 0, // 数据总量
flags: false, flags: false,
vehicleIdNum: "",//车牌号
vehiclePlateColor: 0,
status: 0,
statusArr: [
{
value: 'AUDIT',
text: '审核中'
},
{
value: 'FAIL',
text: '未通过'
},
{
value: 'COMPLETE',
text: '已完成'
},
],
vehiclePlateColorArr: [{
value: 0,
text: '蓝色'
},
{
value: 1,
text: '黄色'
},
{
value: 2,
text: '黑色'
},
{
value: 3,
text: '白色'
},
{
value: 4,
text: '渐变绿色'
},
{
value: 5,
text: '黄绿双拼色'
},
{
value: 6,
text: '蓝白渐变色'
},
{
value: 9,
text: '未确定'
},
{
value: 11,
text: '绿色'
},
{
value: 12,
text: '红色'
}
]
vehiclePlate: "",//车牌号
vehiclePlateColor: "",
status: "",
statusArr: [], //AUDIT_STATUS
vehiclePlateColorArr: []


}) })
onLoad((option) => { onLoad((option) => {
// 车牌颜色
let getVehiclePlateColorArr = getItem('key')['VEHICLE_COLOR_TYPE']
for (var k = 0; k < getVehiclePlateColorArr.length; k++) {
let obj2 = {};
obj2['value'] = getVehiclePlateColorArr[k]['code']
obj2['text'] = getVehiclePlateColorArr[k]['name']
state.vehiclePlateColorArr.push(obj2)
}
// 审核状态
let getStatusArr = getItem('key')['AUDIT_STATUS'];
for (var k = 0; k < getStatusArr.length; k++) {
let obj1 = {};
obj1['value'] = getStatusArr[k]['code']
obj1['text'] = getStatusArr[k]['name']
state.statusArr.push(obj1)
}
// 业务类型
let getBusiness = getItem('key')['BUSINESS_TYPE']; let getBusiness = getItem('key')['BUSINESS_TYPE'];
for (var k = 0; k < getBusiness.length; k++) { for (var k = 0; k < getBusiness.length; k++) {
let obj = {}; let obj = {};


search(1) search(1)
}) })

const changeColor = (e) => { const changeColor = (e) => {
console.log("changeColor", e) console.log("changeColor", e)
state.vehiclePlateColor = e
}
const changeStatus = (e) => {
console.log("changeColor", e)
state.status = e
} }
const changeBusiness = (e) => { const changeBusiness = (e) => {
state.businessTypeVal = e state.businessTypeVal = e
state.listData = [] state.listData = []
} }
var data = { var data = {
// vehiclePlate: "",
// vehiclePlateColor: "",
// status: "",
// businessType: "",
// startTime: state.range[0],
// endTime: state.range[1],
vehiclePlate: state.vehiclePlate,
vehiclePlateColor: state.vehiclePlateColor,
status: state.status,
businessType: state.businessTypeVal,
startTime: state.range[0] ? state.range[0] + 'T00:00:00' : state.range[0],
endTime: state.range[1] ? state.range[1] + 'T00:00:00' : state.range[1],
pageNo: state.pageNo, pageNo: state.pageNo,
pageSize: state.pageSize, pageSize: state.pageSize,
// opId: getItem(StorageKeys.OpenId),
}; };
for (var index in data) {
console.log(index, data[index], data[index] == "")
if (data[index].toString() == "") {
delete data[index]
}
}
const options = { const options = {
type: 2, type: 2,
data: data, data: data,
method: "POST", method: "POST",
showLoading: true, showLoading: true,
}; };

request(auditQueryApi, options).then((res) => { request(auditQueryApi, options).then((res) => {
const data = stringToJson(res.bizContent); const data = stringToJson(res.bizContent);
var getData = [...stringToJson(res.bizContent).data, ...state.listData] var getData = [...stringToJson(res.bizContent).data, ...state.listData]
} else if (getData[i]['status'] == 'COMPLETE') { } else if (getData[i]['status'] == 'COMPLETE') {
getData[i]['statusC'] = "已完成" getData[i]['statusC'] = "已完成"
} }

for (var m = 0; m < state.businessRange.length; m++) {
if (getData[i]['businessType'] == state.businessRange[m]['value']) {
getData[i]['businessTypeC'] = state.businessRange[m]['text']
break;
}
}
} }
state.listData = getData state.listData = getData
state.total = data.data.length state.total = data.data.length
state.pageNo++ state.pageNo++
search(2) search(2)
}) })
const go = (item) => {
const params = encodeURIComponent(JSON.stringify(item))
uni.navigateTo({
url: `/subpackage/after-sale/progress-query/progress-query-business-details?params=${params}`
})
}
</script> </script>


<style scoped> <style scoped>
width: 100%; width: 100%;
padding: 0 20rpx 20rpx 20rpx; padding: 0 20rpx 20rpx 20rpx;
box-sizing: border-box; box-sizing: border-box;
z-index: 999999;
} }


.content { .content {


.uni-container { .uni-container {
margin: 50rpx 0; margin: 50rpx 0;
margin-top: 200rpx;
margin-top: 330rpx;
} }


/deep/.uni-table-th, /deep/.uni-table-th,
/deep/.uni-date__x-input, /deep/.uni-date__x-input,
/deep/.uni-select { /deep/.uni-select {
font-size: 13px; font-size: 13px;
height: 28px;
line-height: 28px;
height: 24px;
line-height: 24px;
} }


/deep/.uni-stat__select {
width: 360rpx;
}
/* /deep/.uni-stat__select {
width: 180rpx;
} */


/deep/.uni-select__selector-empty, /deep/.uni-select__selector-empty,
/deep/.uni-select__selector-item { /deep/.uni-select__selector-item {
} }


/deep/.uni-date-x { /deep/.uni-date-x {
height: 68rpx !important;
height: 56rpx !important;
} }


.list-item { .list-item {
padding: 12rpx; padding: 12rpx;
box-sizing: border-box; box-sizing: border-box;
background-color: white; background-color: white;
display: flex;
align-items: center;
} }


.list-item>view { .list-item>view {
margin-bottom: 10rpx; margin-bottom: 10rpx;
width: 90%;
} }


.bottom-line { .bottom-line {
.uni-input { .uni-input {
border: 1rpx solid #ccc; border: 1rpx solid #ccc;
padding: 0 10rpx; padding: 0 10rpx;
height: 28rpx;
line-height: 28rpx;
}

.right {
width: 40rpx;
height: 40rpx;
transform: rotateY(180deg);
} }
</style> </style>

+ 1
- 1
subpackage/after-sale/progress-query/progress-query-tab.vue Прегледај датотеку



<style scoped> <style scoped>
.list { .list {
border-bottom: 1rpx solid #c1c1c1;
border-bottom: 1rpx solid #e5e5e5;
display: flex; display: flex;
padding: 16rpx 20rpx; padding: 16rpx 20rpx;
align-items: center; align-items: center;

Loading…
Откажи
Сачувај