瀏覽代碼

黑名单查询

腾讯ocr渠道不签约
yangteng 3 月之前
父節點
當前提交
43d77be64a

+ 7
- 0
pages.json 查看文件

"enablePullDownRefresh": false "enablePullDownRefresh": false
} }
}, },
{
"path": "blacklist-query/addCar",
"style": {
"navigationBarTitleText": "新增车辆",
"enablePullDownRefresh": false
}
},
{ {
"path": "cancell-refund/cancell-refund", "path": "cancell-refund/cancell-refund",
"style": { "style": {

+ 6
- 6
pages/bluetooth/bluetooth.vue 查看文件

switch (prefixName) { switch (prefixName) {
case "ETC": case "ETC":
if (name.split("-")[1] == "KC" || name.split("-")[1].indexOf('C') > 0 || name.split("-")[1].indexOf('K') > 0) { if (name.split("-")[1] == "KC" || name.split("-")[1].indexOf('C') > 0 || name.split("-")[1].indexOf('K') > 0) {
_name = "前装-科畅";
_name = "科畅";
console.log("前装-科畅") console.log("前装-科畅")
} else if (name.split("-")[1] == "JL") { } else if (name.split("-")[1] == "JL") {
_name = "前装-聚力"; //共用
_name = "聚力"; //共用
} else if (name.split("-")[1] == "WJ") { } else if (name.split("-")[1] == "WJ") {
_name = "前装-万集"; //共用
_name = "万集"; //共用
} else if (name.split("-")[1] == "JY") { } else if (name.split("-")[1] == "JY") {
_name = "前装-金溢";
_name = "金溢";
}else if (name.split("-")[1] == "ATS") { }else if (name.split("-")[1] == "ATS") {
_name = "前装-埃特斯";
_name = "埃特斯";
}else if (name.split("-")[1] == "MC") { }else if (name.split("-")[1] == "MC") {
_name = "前装-铭创";
_name = "铭创";
} }
break; break;
case "WJ": case "WJ":

+ 114
- 0
subpackage/after-sale/blacklist-query/addCar.vue 查看文件

<template>
<view class="content">
<view class="list-item" v-for="(item,index) in state.tableData">
<view><text>卡号:</text><text>{{item.cardId}}</text></view>
<view><text>下黑时间:</text><text>{{item.creationTime}}</text></view>
<view v-if="item.reasonIn"><text>下黑原因:</text><text>{{item.reasonIn}}</text></view>
<view><text>黑名单类型:</text><text>{{item.typeC}}</text></view>
<view><text>状态:</text><text>{{item.status == '1'?'在黑':'已反白'}}</text></view>
</view>
<view class="no" v-if="state.tableData.length==0">暂无黑名单</view>
</view>
</template>

<script setup lang="ts">
import { reactive } from "vue";
import { onLoad } from "@dcloudio/uni-app";
import {cardBlackQuery } from "@/utils/network/api.js";
import {requestNew } from "@/utils/network/request.js";
import {getItem } from "@/utils/storage";
const state = reactive({
vehiclePlate: "",
vehiclePlateColor: "",
tableData: [],
blackStatus: [],
cardId:""
});
onLoad((option : any) => {
console.log("option", option)
let black = getItem('key')['BLACKLIST_TYPE'];
for (var k = 0; k < black.length; k++) {
let obj = {};
obj['value'] = black[k]['code']
obj['text'] = black[k]['name']
state.blackStatus.push(obj)
}
console.log("black", state.blackStatus)
state.vehiclePlate = option.vehiclePlate;
state.vehiclePlateColor = option.vehiclePlateColor;
state.cardId = option.cardId;
list()
})
const list = () => {
const options = {
type: 2,
data: {
"vehiclePlate": state.vehiclePlate,
"vehiclePlateColor": state.vehiclePlateColor,
'cardId':state.cardId
},
method: 'POST',
showLoading: true,
}
requestNew(cardBlackQuery, options).then((res) => {
console.log("res==",res.data)
const data = res;
const getData = data.data;
const newData = []
// 只要在黑的 和 1 2 3不展示
// LOSS("卡挂失",1){},
// HANG_WITHOUT_CARD("无卡挂起",2){},
// CANCEL_WITHOUT_CARD("无卡注销",3){},
// OVERDRAW("账户透支",4){},
// AGENCY_BLACK("合作机构黑名单",5){},
// VEHICLE_TYPE_NOTMATCH("车型不符",6){},
// CARD_BALANCE_INSUFFICIENT("储值卡余额不足",7){},
for (var i = 0; i < getData.length; i++) {
// if (getData[i]['status'] == 1 && (getData[i]['type'] == 4 || getData[i]['type'] == 5 || getData[i]['type'] == 6 || getData[i]['type'] == 7)) {
if (getData[i]['status'] == 1) {
newData.push(getData[i])
}
}
for (var i = 0; i < newData.length; i++) {
for (var m = 0; m < state.blackStatus.length; m++) {
if (newData[i]['type'] == state.blackStatus[m]['value']) {
newData[i]['typeC'] = state.blackStatus[m]['text']
break;
}
}
}
state.tableData = newData
console.log("圈存金额查询2", data)
})
}
</script>

<style scoped>
.content {
padding-bottom: 20rpx;
background-color: #EEF7F7;
padding-top: 20rpx;
min-height: 100vh;
}

.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: 10rpx;
width: 94%;
}

.no {
text-align: center;
padding-top: 100rpx;
}
</style>

+ 21
- 2
subpackage/after-sale/rescind-carId/rescind-carId-select-details.vue 查看文件

</template> </template>


<script setup lang="ts"> <script setup lang="ts">
import { reactive,ref } from "vue";
import { reactive} from "vue";
import {releasePlateaView} from "@/utils/network/api.js";
import {requestNew} from "@/utils/network/request.js";
import { onLoad } from "@dcloudio/uni-app";

const leftIcon = { const leftIcon = {
height: '100%', height: '100%',
width: '8rpx', width: '8rpx',
vehiclePlateColorStr:"",//车牌颜色中文 vehiclePlateColorStr:"",//车牌颜色中文
}, },
}) })
onLoad((option) => {
details(option.orderNo)
});
const details = (orderNo) => {
const options = {
type: 2,
data: {
orderNo
},
method: "POST",
showLoading: true,
};
requestNew(releasePlateaView, options).then((res) => {
console.log("列表详情",res)
});
};
</script> </script>


<style lang="scss" scoped> <style lang="scss" scoped>

+ 21
- 6
subpackage/after-sale/rescind-carId/rescind-carId-select-list.vue 查看文件

<template> <template>
<view class="list" @click="goDetails"> <view class="list" @click="goDetails">
<image class="car" src="/static/image/myx.png" mode=""></image>
<image class="car" :src='`${$imgUrl}issuance/car.png`' mode=""></image>
<view class="content"> <view class="content">
<view class="content-top"> <view class="content-top">
<text class="vehiclePlate">贵A12345</text> <text class="vehiclePlate">贵A12345</text>
</view> </view>
<view class="content-time">申请时间:2025年02月21日</view> <view class="content-time">申请时间:2025年02月21日</view>
</view> </view>
<image class="arrow" src="/static/image/myx.png" mode=""></image>
<image class="arrow" :src='`${$imgUrl}issuance/arrow.png`' mode=""></image>
</view> </view>
<view class="list" @click="goDetails"> <view class="list" @click="goDetails">
<image class="car" src="/static/image/myx.png" mode=""></image> <image class="car" src="/static/image/myx.png" mode=""></image>


<script setup lang="ts"> <script setup lang="ts">
import {navTo} from "@/utils/utils"; import {navTo} from "@/utils/utils";
import {
ref
} from "vue";
import {releasePlateaList} from "@/utils/network/api.js";
import {ref} from "vue";
import {requestNew} from "@/utils/network/request.js";
import { onLoad } from "@dcloudio/uni-app";
onLoad(() => {
list()
});
const list = () => {
const options = {
type: 2,
data: {},
method: "POST",
showLoading: true,
};
requestNew(releasePlateaList, options).then((res) => {
console.log("列表",res)
});
};
const goDetails = () => { const goDetails = () => {
navTo(`/subpackage/after-sale/rescind-carId/rescind-carId-select-details`) navTo(`/subpackage/after-sale/rescind-carId/rescind-carId-select-details`)
} }

+ 5
- 2
subpackage/after-sale/work-order/add-work-list.vue 查看文件



</view> </view>
</view> </view>
<image class="add" :src="`${$imgUrl}etcadd.png`" mode=""></image>
<image class="add" :src="`${$imgUrl}etcadd.png`" mode="" @click="add()"></image>
</template> </template>


<script setup lang="ts"> <script setup lang="ts">

import {navTo} from "@/utils/utils";
const add=()=>{
navTo(`/subpackage/after-sale/work-order/add-work-order`)
}
</script> </script>


<style lang="scss" scoped> <style lang="scss" scoped>

+ 115
- 18
subpackage/after-sale/work-order/add-work-order.vue 查看文件

</u-form-item> </u-form-item>
<u-form-item label="姓名" :left-icon='`${$imgUrl}issuance/point-form.png`' :left-icon-style='leftIcon' <u-form-item label="姓名" :left-icon='`${$imgUrl}issuance/point-form.png`' :left-icon-style='leftIcon'
borderBottom> borderBottom>
<u-input placeholder='请输入姓名' type="idcard" v-model="state.form.name" maxlength="18"
<u-input placeholder='请输入姓名' type="idcard" v-model="state.form.customerName" maxlength="18"
inputAlign="right" /> inputAlign="right" />
</u-form-item> </u-form-item>
<u-form-item label="联系方式" :left-icon='`${$imgUrl}issuance/point-form.png`' :left-icon-style='leftIcon' <u-form-item label="联系方式" :left-icon='`${$imgUrl}issuance/point-form.png`' :left-icon-style='leftIcon'
borderBottom> borderBottom>
<u-input placeholder='请输入手机号码' type="number" v-model="state.form.mobile" maxlength="11"
<u-input placeholder='请输入手机号码' type="number" v-model="state.form.customerTel" maxlength="11"
inputAlign="right" /> inputAlign="right" />
</u-form-item> </u-form-item>
</u-form> </u-form>
<u-form label-width="230" :model="state.form" ref="uForm" :label-style='labelStyle' borderBottom> <u-form label-width="230" :model="state.form" ref="uForm" :label-style='labelStyle' borderBottom>
<u-form-item label="工单类型" :left-icon='`${$imgUrl}issuance/point-form.png`' :left-icon-style='leftIcon' <u-form-item label="工单类型" :left-icon='`${$imgUrl}issuance/point-form.png`' :left-icon-style='leftIcon'
borderBottom> borderBottom>
<u-input v-model="state.form.vehiclePlateColorStr" type="select" @click="show1 = true" input-align='right'/>
<u-input v-model="state.form.questionTypeStr" type="select" @click="show2 = true" input-align='right'/>
</u-form-item> </u-form-item>
<u-form-item label="是否ETC用户" :left-icon='`${$imgUrl}issuance/point-form.png`' :left-icon-style='leftIcon' <u-form-item label="是否ETC用户" :left-icon='`${$imgUrl}issuance/point-form.png`' :left-icon-style='leftIcon'
borderBottom> borderBottom>
<u-input v-model="state.form.vehiclePlateColorStr" type="select" @click="show1 = true" input-align='right'/>
<u-input v-model="state.form.etcUserStr" type="select" @click="show3 = true" input-align='right'/>
</u-form-item> </u-form-item>
<u-form-item label="事件发生日期" :left-icon='`${$imgUrl}issuance/point-form.png`' :left-icon-style='leftIcon' <u-form-item label="事件发生日期" :left-icon='`${$imgUrl}issuance/point-form.png`' :left-icon-style='leftIcon'
borderBottom> borderBottom>
<picker mode="date" value="{{state.date}}" bindchange="bindDateChange">
<view class="picker" v-if="!state.date">
<picker mode="date" @change="bindDateChange">
<view class="picker" v-if="!state.form.eventOccurrenceDate">
请选择日期 请选择日期
</view> </view>
<view>
{{state.date}}
<view class="data">
{{state.form.eventOccurrenceDate}}
</view> </view>
</picker> </picker>
</u-form-item> </u-form-item>
<u-form-item label="客户投诉" :left-icon='`${$imgUrl}issuance/point-form.png`' :left-icon-style='leftIcon' <u-form-item label="客户投诉" :left-icon='`${$imgUrl}issuance/point-form.png`' :left-icon-style='leftIcon'
borderBottom> borderBottom>
</u-form-item> </u-form-item>
<textarea style="border: 1rpx dashed rgb(192, 196, 204);min-height: 200rpx; width: 100%;border-radius: 18rpx;padding: 20rpx;box-sizing: border-box;" placeholder="请输入述求" auto-height adjust-position></textarea>
<textarea v-model="state.form.appeal" style="border: 1rpx dashed rgb(192, 196, 204);min-height: 200rpx; width: 100%;border-radius: 18rpx;padding: 20rpx;box-sizing: border-box;" placeholder="请输入述求" auto-height adjust-position></textarea>
<u-form-item label="其他佐证材料" :left-icon='`${$imgUrl}issuance/point-form.png`' :left-icon-style='leftIcon' <u-form-item label="其他佐证材料" :left-icon='`${$imgUrl}issuance/point-form.png`' :left-icon-style='leftIcon'
borderBottom> borderBottom>
<text class="common-word">(不限于图片、文件、不超过5个。)</text> <text class="common-word">(不限于图片、文件、不超过5个。)</text>
</view> </view>
<!-- 选择车牌颜色 --> <!-- 选择车牌颜色 -->
<u-select v-model="show1" :list="state.colorRange" @confirm="changeColor"></u-select> <u-select v-model="show1" :list="state.colorRange" @confirm="changeColor"></u-select>
<!-- 工单类型 -->
<u-select v-model="show2" :list="state.questionTypeRange" @confirm="changeQuestionType"></u-select>
<!-- -->
<u-select v-model="show3" :list="state.etcUserRange" @confirm="changeEtcUser"></u-select>


</template> </template>


<script setup lang="ts"> <script setup lang="ts">
import { navTo} from "@/utils/utils";
import { navTo,msg,uploadFile} from "@/utils/utils";
import { reactive,ref } from "vue"; import { reactive,ref } from "vue";
import carNumberInput from "@/components/car-number-input/car-number-input.vue"; import carNumberInput from "@/components/car-number-input/car-number-input.vue";
import { onLoad } from "@dcloudio/uni-app"; import { onLoad } from "@dcloudio/uni-app";
import { getItem } from "@/utils/storage.ts" import { getItem } from "@/utils/storage.ts"

import {requestNew} from "@/utils/network/request.js";
import {selfServiceUserAdd} from "@/utils/network/api.js";
const labelStyle = { const labelStyle = {
color: "#004576", color: "#004576",
fontSize: "28rpx", fontSize: "28rpx",
'margin-right': '4rpx', 'margin-right': '4rpx',
} }
const show1 = ref(false) const show1 = ref(false)
const show2 = ref(false)
const show3 = ref(false)
const state = reactive({ const state = reactive({
form: { form: {
name: "",
mobile: "",
customerName: "",
customerTel: "",
vehiclePlate: "", vehiclePlate: "",
vehiclePlateColor: "", vehiclePlateColor: "",
vehiclePlateColorStr:"",//车牌颜色中文 vehiclePlateColorStr:"",//车牌颜色中文
questionType:"",
questionTypeStr:"",
etcUser:"",
etcUserStr:"",
eventOccurrenceDate:"",//2016-09-01 00:00:00
appeal:"",
supportingMaterialsUrl:"",
supportingMaterialsUrlShow:[]
}, },
colorRange: [], colorRange: [],
date: '',//2016-09-01
questionTypeRange:[
{value: 1, label: "工单1"},
{value: 2, label: "工单2"},
],
etcUserRange:[
{value: 1, label: "是"},
{value: 0, label: "否"},
],
}) })
onLoad((option : any) => { onLoad((option : any) => {
let getColor = getItem('key')['VEHICLE_COLOR_TYPE']; let getColor = getItem('key')['VEHICLE_COLOR_TYPE'];
state.form.vehiclePlateColorStr = item[0].label state.form.vehiclePlateColorStr = item[0].label
console.log(item) console.log(item)
} }
const bindDateChange=(e) =>{
const changeQuestionType = (item) => {
state.form.questionType = item[0].value
state.form.questionTypeStr = item[0].label
console.log(item)
}
const changeEtcUser = (item) => {
state.form.etcUser = item[0].value
state.form.etcUserStr = item[0].label
console.log(item)
}
const bindDateChange=(e)=>{
console.log('picker发送选择改变,携带值为', e.detail.value) console.log('picker发送选择改变,携带值为', e.detail.value)
state.date= e.detail.value
state.form.eventOccurrenceDate= e.detail.value+" 00:00:00"
} }
const savaHandle = () => { const savaHandle = () => {
navTo(`/subpackage/after-sale/rescind-carId/rescind-carId-select`)
if(!state.form.vehiclePlate){
msg('请输入车牌号');
return;
}
if(!state.form.vehiclePlateColor){
msg('请选择车牌颜色');
return;
}
if(!state.form.customerName){
msg('请输入姓名');
return;
}
if(!state.form.customerTel){
msg('请输入手机号码');
return;
}
if(!state.form.questionType){
msg('请选择工单类型');
return;
}
if(!state.form.etcUser){
msg('请选择是否ETC用户');
return;
}
if(!state.form.eventOccurrenceDate){
msg('请选择事件发生日期');
return;
}
if(!state.form.appeal){
msg('请输入述求');
return;
}
if(!state.form.supportingMaterialsUrl){
msg('请上传其他佐证材料');
return;
}
state.form.supportingMaterialsUrl=state.form.supportingMaterialsUrlShow.toString()
const options = {
type: 2,
data: {
...state.form
},
method: "POST",
showLoading: true,
};
requestNew(selfServiceUserAdd, options).then((res) => {
console.log("添加成功",res)
});
} }
const addFile=()=>{ const addFile=()=>{
uni.chooseMessageFile({
count: 5,
type: 'all',
success (res) {
// tempFilePath可以作为img标签的src属性显示图片
console.log("res",res)
var files=res.tempFiles
for(var i=0;i<files.length;i++){
uploadFile(files[i]['path'], "", "").then((data) => {
state.form.supportingMaterialsUrlShow.push(data);
console.log("state.form.supportingMaterialsUrlShow",state.form.supportingMaterialsUrlShow)
})
}
}
})
} }
</script> </script>


text-align: right; text-align: right;
color: rgb(192, 196, 204); color: rgb(192, 196, 204);
} }
.data{
text-align: right;
}
.five{ .five{
color: rgb(195,188,157); color: rgb(195,188,157);
} }

+ 7
- 6
subpackage/orders/order_payment.vue 查看文件

const params = encodeURIComponent(JSON.stringify(state.qdSignUrl)) const params = encodeURIComponent(JSON.stringify(state.qdSignUrl))
tools.toUrl(`/subpackage/personal-center/webview?url=` + params) tools.toUrl(`/subpackage/personal-center/webview?url=` + params)
} }
}else{
// 签约
uni.redirectTo({
url:`/subpackage/orders/release-products?orderId=${state.orderId}&orderQuery=${state.orderQuery}`
});
}
}else{ }else{
gotoActiveOrder(getItem('orderQueryActivate')) gotoActiveOrder(getItem('orderQueryActivate'))
} }
}else{
// 签约
uni.redirectTo({
url:`/subpackage/orders/release-products?orderId=${state.orderId}&orderQuery=${state.orderQuery}`
});
}
}else{ }else{
if (state.isValueCard == 1) { if (state.isValueCard == 1) {
// 不签约 // 不签约

+ 5
- 1
utils/network/api.js 查看文件



export const pinCodeUnlock = "/iaw/api/afterSale/order/cardUnBlock" //ASS-卡PIN解锁 export const pinCodeUnlock = "/iaw/api/afterSale/order/cardUnBlock" //ASS-卡PIN解锁
// 解除车牌占用 // 解除车牌占用
export const releasePlateaApply = "/iaw/api/afterSale/releasePlate/apply" //解除车牌占用订单申请
export const releasePlateaApply = "/iaw/api/afterSale/releasePlate/apply" //解除车牌占用订单申请
export const releasePlateaList = "/iaw/api/afterSale/releasePlate/list" //解除车牌占用列表
export const releasePlateaView = "/iaw/api/afterSale/releasePlate/view" //单一订单查询
// 自助工单
export const selfServiceUserAdd = "/iaw/selfService/userAdd" //用户提交 - 新增

Loading…
取消
儲存