Parcourir la source

替换接口

master
yangteng il y a 7 mois
Parent
révision
bc92e4951b
29 fichiers modifiés avec 94 ajouts et 922 suppressions
  1. 2
    2
      composables/order/useOrderSkip.ts
  2. 3
    3
      login/forget-pwd-step2.vue
  3. 1
    7
      pages.json
  4. 2
    11
      pages/index/index.vue
  5. 5
    15
      pages/service/service.vue
  6. 3
    3
      pages/user/user.vue
  7. 2
    1
      subpackage/after-sale/blacklist-query/list.vue
  8. 1
    1
      subpackage/after-sale/deviceInfo/deviceInfo.vue
  9. 3
    4
      subpackage/after-sale/month-statement/month-statement-query-list.vue
  10. 1
    1
      subpackage/after-sale/progress-query/progress-query-business-details.vue
  11. 4
    4
      subpackage/after-sale/refund-order-balance/select-car.vue
  12. 4
    5
      subpackage/after-sale/refundPage-selectCar.vue
  13. 1
    1
      subpackage/after-sale/replace-equipment/form-huanhuo.vue
  14. 1
    1
      subpackage/after-sale/replace-equipment/form.vue
  15. 2
    2
      subpackage/after-sale/replace-equipment/order-confirm-receipt.vue
  16. 5
    7
      subpackage/after-sale/replace-equipment/verification-huanhuo.vue
  17. 6
    7
      subpackage/after-sale/replace-equipment/verification.vue
  18. 0
    820
      subpackage/orders/changeInformation.vue
  19. 3
    4
      subpackage/orders/invoiceApply/invoice-content.vue
  20. 3
    4
      subpackage/orders/invoiceApply/invoice-header-list.vue
  21. 5
    1
      subpackage/orders/invoiceApply/invoiceList.vue
  22. 3
    3
      subpackage/orders/opening-account-people.vue
  23. 4
    4
      subpackage/orders/order-details-new.vue
  24. 5
    5
      subpackage/personal-center/search/etcFlowingWater.vue
  25. 2
    2
      subpackage/personal-center/setting/change-phone-code.vue
  26. 1
    1
      subpackage/personal-center/setting/personal-information/user-change-list.vue
  27. 6
    0
      subpackage/service/equityList/equityList.vue
  28. 1
    1
      utils/network/api.js
  29. 15
    2
      utils/network/request.js

+ 2
- 2
composables/order/useOrderSkip.ts Voir le fichier

@@ -230,10 +230,10 @@ export default function useOrderSkip() {
} else {
//跳转到车辆信息变更界面
// #ifdef MP-ALIPAY
navTo(`/subpackage/orders/release-products?orderId=${orderInfo.orderId}`);
navTo(`/subpackage/orders/release-products?orderId=${orderInfo.orderId?orderInfo.orderId:orderInfo.orderNo}`);
// #endif
// #ifdef MP-WEIXIN
navTo(`/subpackage/orders/release-products?orderId=${orderInfo.orderId}&&id=${orderInfo.id}&&clientFee=${orderInfo.amount}`);
navTo(`/subpackage/orders/release-products?orderId=${orderInfo.orderId?orderInfo.orderId:orderInfo.orderNo}&&id=${orderInfo.id}&&clientFee=${orderInfo.amount}`);
// #endif
}
}

+ 3
- 3
login/forget-pwd-step2.vue Voir le fichier

@@ -137,10 +137,10 @@
const options = {
type: 2,
data: {
newPassword: state.password,
affirmNewPassword: state.affirmPassword,
password: state.password,
affirmPassword: state.affirmPassword,
mobile: phone.value,
code: code.value,
verificationCode: code.value,
},
method: "POST",
showLoading: true,

+ 1
- 7
pages.json Voir le fichier

@@ -695,7 +695,7 @@
{
"path": "replace-equipment/order-payment",
"style": {
"navigationBarTitleText": "更换ETC设备-支付",
"navigationBarTitleText": "支付",
"enablePullDownRefresh": false
}
},
@@ -982,12 +982,6 @@
}
}
},
{
"path": "changeInformation",
"style": {
"navigationBarTitleText": "修改资料"
}
},
{
"path": "signUserAgreement",
"style": {

+ 2
- 11
pages/index/index.vue Voir le fichier

@@ -35,7 +35,7 @@
</view>


<view class="notice" :style="{'--bgimg':`url(${fileURL}image/newHome/tongzhi.png)`}">
<view class="notice" v-if="state.notice != '无'" :style="{'--bgimg':`url(${fileURL}image/newHome/tongzhi.png)`}" >
<view class="l-img">
<image :src="`${fileURL}image/newHome/tongzhi-l.png`" class='img' mode="aspectFit"></image>
</view>
@@ -395,9 +395,7 @@
});
// 页面初次渲染完成时触发
onReady(() => {
// setTimeout(() => {
quanKeyAction()
// }, 5000)
})

onMounted(() => {
@@ -452,9 +450,7 @@
.then((res) => {
let data = res
state.notice=data.text
// state.noticeList.push(data.text)
// state.noticeList = [data.text || '暂无公告', '平明送客楚山孤',]
console.log(data, state.noticeList, '公告');
console.log(data, state.notice, '公告',state.notice=='无');
})
.catch((err) => {
console.log(err, '错误');
@@ -770,11 +766,6 @@
height: 180rpx;
width: 690rpx;
margin: 24rpx 30rpx 0;
// background-image: url(https://qtzl.etcjz.cn/default-bucket/image/newHome/phone.png);
// background-size: 100% 100%;
// background-repeat: no-repeat;
// padding: 35rpx 0 0 52rpx;
// background: #FFFFFF;
border-radius: 12rpx;
overflow: hidden;


+ 5
- 15
pages/service/service.vue Voir le fichier

@@ -1,6 +1,5 @@
<template>
<view class="wrapper">
<!-- <navBar title="九州ETC" bgColor="#01243A" fontColor='#fff' :backImgWhite='true'></navBar> -->
<view class="search-box">
<image :src="`${$imgUrl}service/icon-search.png`" class="icon" mode="aspectFill" @click="search()"></image>
<input class="search" placeholder="请输入业务名称" v-model="state.searchVal" @confirm="search()" />
@@ -14,17 +13,6 @@
</view>
</view>
<view class="right">
<!-- <view class="right-content">
<block v-if="menuShow.list.length > 0">
<view v-for="(item,index) in menuShow.list[tableSelectIndex].children" :key='index' class="item-box"
@click="toNext(item.link)">
<view class="item bg-blue" :style="{ '--background': bgBlue }">
<image :src="`${fileURLList}${item.iconPath}`" mode="aspectFill" />
</view>
<view class="text">{{item.name}}</view>
</view>
</block>
</view> -->
<rightListVue class="rightListVue" :menuList='menuShow.list[tableSelectIndex].children'
v-if="menuShow.list.length > 0" />
</view>
@@ -33,14 +21,13 @@
</template>
<script lang="ts" setup>
import { source } from "@/utils/network/difference";
import navBar from "@/components/nav-bar/nav-bar.vue";
import rightListVue from "./components/rightList.vue";
import {
ref,
reactive,
} from "vue";
import {
onShow
onLoad
} from "@dcloudio/uni-app";
import {
fileURL, fileURLList
@@ -73,7 +60,7 @@
searchVal: '', //input输入值
newArr: []
});
onShow(() => {
onLoad(() => {
console.log("1")
if (!hasLogin()) {
console.log("2")
@@ -83,8 +70,11 @@
});
}, '温馨提示', true, '去登录');
} else {
tableSelectIndex.value=0
console.log("请求")
console.log(tableSelectIndex.value,'111')
queryMenuConfigAction().then((val : any) => {
console.log("列表",val)
menu.list = val.menuList ? val.menuList : [],
menu.list = deepClone(menu.list)
state.newArr = deepClone(menu.list);

+ 3
- 3
pages/user/user.vue Voir le fichier

@@ -166,10 +166,10 @@
<text class="no">{{item.vehiclePlate}}</text>
<text class="color" :style="{ background: item.showColor}">{{item.color}}</text>
</view>
<view class="card-no">卡号:{{item.cardId}}</view>
<view class="card-no">签号:{{item.obuId}}</view>
<view class="card-no" v-if="item.cardId">卡号:{{item.cardId}}</view>
<view class="card-no" v-if="item.obuId">签号:{{item.obuId}}</view>
</view>
<view class="btn-unbind" @click="del(item.vehicleId)">解除绑定</view>
<!-- <view class="btn-unbind" @click="del(item.vehicleId)">解除绑定</view> -->
</view>
<view @click="$util.navTo('/subpackage/personal-center/setting/car-information/car-create', true)"
class='add-related' :style="{'--bgimg':`url(${$imgUrl}myImage/guanlianbg.png)`}">

+ 2
- 1
subpackage/after-sale/blacklist-query/list.vue Voir le fichier

@@ -51,8 +51,9 @@
showLoading: true,
}
requestNew(cardBlackQuery, options).then((res) => {
console.log("res==",res.data)
const data = res;
const getData = data.blackCards;
const getData = data.data;
const newData = []
// 只要在黑的 和 1 2 3不展示
// LOSS("卡挂失",1){},

+ 1
- 1
subpackage/after-sale/deviceInfo/deviceInfo.vue Voir le fichier

@@ -416,7 +416,7 @@
const back = () => {
uni.$emit("refreshOrder");
uni.switchTab({
url: "/pages/order/order"
url: "/pages/index/index"
})
}


+ 3
- 4
subpackage/after-sale/month-statement/month-statement-query-list.vue Voir le fichier

@@ -37,8 +37,7 @@
import { reactive } from "vue";
import { onLoad} from "@dcloudio/uni-app";
import {getUserMsg,monthlyStatementQuery } from "@/utils/network/api.js";
import { stringToJson } from "@/utils/network/encryption";
import { request, requestNew } from "@/utils/network/request.js";
import {requestNew } from "@/utils/network/request.js";
import { getItem } from "@/utils/storage";
import { getVehiclePlateColor } from "@/datas/vehiclePlateColor";
import { msg, navTo } from "@/utils/utils";
@@ -70,8 +69,8 @@
method: "POST",
showLoading: true,
};
request(getUserMsg, options).then((res) => {
const data = stringToJson(res.bizContent);
requestNew(getUserMsg, options).then((res) => {
const data = res;
console.log(data, "用户信息");
state.customerIdNum = data.customerIdNum
});

+ 1
- 1
subpackage/after-sale/progress-query/progress-query-business-details.vue Voir le fichier

@@ -21,7 +21,7 @@
<view class="btn btn-primary" @click="activateSH(state.params)">去激活</view>
</view>
<!-- 注销 待支付 取消订单 -->
<view class="btn btn-primary" v-if="state.params['orderStep']=='WAIT_PAY' && state.params['orderType']=='SIGNOUT'" @click="signout()">取消</view>
<view class="btn btn-primary" v-if="state.params['orderStep']=='WAIT_PAY' && state.params['orderType']=='SIGNOUT'" @click="signout(state.params['orderNo'])">取消</view>
</view>
</view>
</view>

+ 4
- 4
subpackage/after-sale/refund-order-balance/select-car.vue Voir le fichier

@@ -40,7 +40,7 @@
import {queryRefund, getUserMsg
} from "@/utils/network/api.js";
import {
request
request,requestNew
} from "@/utils/network/request.js";
import {
getItem
@@ -77,9 +77,9 @@
method: "POST",
showLoading: true,
};
request(getUserMsg, options).then((res) => {
const data = stringToJson(res.bizContent);
console.log("通过opneId查询用户信息", stringToJson(res.bizContent))
requestNew(getUserMsg, options).then((res) => {
const data = res;
console.log("通过opneId查询用户信息", res)
state.customerIdNum = data.customerIdNum;
queryRefundAction().then((item : any) => {
state.list = item.data

+ 4
- 5
subpackage/after-sale/refundPage-selectCar.vue Voir le fichier

@@ -34,11 +34,10 @@
getUserMsg, queryRefund
} from "@/utils/network/api.js";
import {
request
request,requestNew
} from "@/utils/network/request.js";
import {
getItem,
StorageKeys,
} from "@/utils/storage";
import {
stringToJson
@@ -64,9 +63,9 @@
method: "POST",
showLoading: true,
};
request(getUserMsg, options).then((res) => {
const data = stringToJson(res.bizContent);
console.log("通过opneId查询用户信息", stringToJson(res.bizContent))
requestNew(getUserMsg, options).then((res) => {
const data = res;
console.log("通过opneId查询用户信息",res)
state.customerIdNum = data.customerIdNum;
queryRefundAction().then((item : any) => {
state.list = item.data

+ 1
- 1
subpackage/after-sale/replace-equipment/form-huanhuo.vue Voir le fichier

@@ -242,7 +242,7 @@
params.msg = option.msg == "undefined" ? "" : option.msg
params.cardExpire = option.cardExpire == "undefined" ? "" : option.cardExpire
params.obuExpire = option.obuExpire == "undefined" ? "" : option.obuExpire
if (option.damageMode == "1") {
if (option.damageMode == "ARTIFICIAL") {
var data = {
name: "寄回",
val: "1",

+ 1
- 1
subpackage/after-sale/replace-equipment/form.vue Voir le fichier

@@ -243,7 +243,7 @@
params.msg = option.msg == "undefined" ? "" : option.msg
params.cardExpire = option.cardExpire == "undefined" ? "" : option.cardExpire
params.obuExpire = option.obuExpire == "undefined" ? "" : option.obuExpire
if (option.damageMode == "1") {
if (option.damageMode == "ARTIFICIAL") {
var data = {
name: "寄回",
val: "1",

+ 2
- 2
subpackage/after-sale/replace-equipment/order-confirm-receipt.vue Voir le fichier

@@ -105,8 +105,8 @@
state.list[0].value = state.orderInfo.orderNo;
state.list[1].value = state.orderInfo.vehiclePlate;
state.list[2].value = state.orderInfo.orderStepStr;
state.list[3].value = state.orderInfo.cardId ? state.orderInfo.cardId : "";
state.list[4].value = state.orderInfo.obuId ? state.orderInfo.obuId : "";
state.list[3].value = state.orderInfo.newCardId ? state.orderInfo.newCardId : "";
state.list[4].value = state.orderInfo.newObuId ? state.orderInfo.newObuId : "";
});
};


+ 5
- 7
subpackage/after-sale/replace-equipment/verification-huanhuo.vue Voir le fichier

@@ -66,13 +66,11 @@
import {
onReady,
onLoad,
onShow,
} from "@dcloudio/uni-app";
import {requestNew} from "@/utils/network/request.js";
import {
sendMessage,
changeCardObuExchangeApply,
changeCardObuFillQuery
changeCardObuExchangeApply
} from "@/utils/network/api.js";
import {
msg
@@ -88,7 +86,7 @@
})
// 表单数据
const form = reactive({
damageMode: "0",
damageMode: "ARTIFICIAL",
damageModeName: '人为损坏',
applyType: '1',
applyTypeName: '卡',
@@ -129,11 +127,11 @@
// 单选数据列表
const radiolist2 = reactive([{
name: "人为损坏",
val: "1",
val: "ARTIFICIAL",
},
{
name: "自然损坏",
val: "2",
val: "NATURAL",
}
]);

@@ -201,7 +199,7 @@
const typeChange = (e : any) => {
console.log(e);
form.damageMode = e.detail.value
if (e.detail.value == 2) {
if (e.detail.value == 'NATURAL') {
state.isPicture = true
} else {
state.isPicture = false

+ 6
- 7
subpackage/after-sale/replace-equipment/verification.vue Voir le fichier

@@ -88,8 +88,7 @@
})
// 表单数据
const form = reactive({
damageMode: "0",
damageModeName: '人为损坏',
damageMode: "ARTIFICIAL",
applyType: 'EXCHANGE_CARD',
applyTypeName: '卡',
mobile: "",
@@ -128,11 +127,11 @@
// 单选数据列表
const radiolist2 = reactive([{
name: "人为损坏",
val: "1",
val: "ARTIFICIAL",
},
{
name: "自然损坏",
val: "2",
val: "NATURAL",
}
]);

@@ -203,7 +202,7 @@
const typeChange = (e : any) => {
console.log(e);
form.damageMode = e.detail.value
if (e.detail.value == 2) {
if (e.detail.value == 'NATURAL') {
state.isPicture = true
} else {
state.isPicture = false
@@ -259,7 +258,7 @@

//申请
const queryCckChangejzCardAction = () => {
if (form.damageMode == "2") {
if (form.damageMode == "NATURAL") {
if (state.imageList.length == 0) {
msg('请上传图片');
return;
@@ -295,7 +294,7 @@
const toPage = () => {
console.log("sdkchkdscn", apply.data)
console.log("form.damageMode", form.damageMode,form.applyType)
if(form.damageMode==1){
if(form.damageMode=='ARTIFICIAL'){
let money=0
if(form.applyType=='EXCHANGE_CARD'){
money=20

+ 0
- 820
subpackage/orders/changeInformation.vue Voir le fichier

@@ -1,820 +0,0 @@
<template>
<view class="content-wrap">
<view @click="tabChange(true)">
<view :class="state.isMyPeopple ? 'big' : 'nomal'"> 本人车辆 </view>
<view :class="state.isMyPeopple ? 'tip' : ''"> </view>
</view>
<view @click="tabChange(false)" style="margin-left: 60rpx" class="" v-if="state.isEnableOther">
<view :class="state.isMyPeopple ? 'nomal' : 'big'"> 他人车辆 </view>
<view :class="state.isMyPeopple ? '' : 'tip'"> </view>
</view>
</view>
<view v-if="state.isMyPeopple" class="content">
<view class="item-tips">
<view class="title"> 上传后请核对识别信息 </view>
<view class="tip"> 如有错误请及时手动修改 </view>
</view>
<view class="picture-wrapper" @click="takePhotoMode('1','my')">
<view class="bg">
<view class="">
<view class="name"> 人像面 </view>
<view class="value"> 上传身份证的人像面 </view>
<view class="tip">
<view class="tip-value"> 拍摄规范 </view>
</view>
</view>
<image v-if="!state.form.userPosImgUrl" class="icon" :src="`${$imgUrl}applyCard/renxiang.png`">
</image>
<image v-else class="icon" :src="strReplace(state.form.userPosImgUrl)"></image>
</view>
</view>
<view class="picture-wrapper" @click="takePhotoMode('2','my')">
<view class="bg">
<view class="">
<view class="name"> 国徽面 </view>
<view class="value"> 上传身份证的国徽面 </view>
<view class="tip">
<view class="tip-value"> 拍摄规范 </view>
</view>
</view>
<image v-if="!state.form.userNegImgUrl" class="icon" :src="`${$imgUrl}applyCard/guohui.png`">
</image>
<image v-else class="icon" :src="strReplace(state.form.userNegImgUrl)"></image>
</view>
</view>
<view class="shibie-wrapper">
<view class="title"> 识别内容如下 </view>
<u-form label-width="230" :model="state.form" ref="uForm">
<u-form-item label="姓名">
<u-input v-model="state.form.userName" placeholder='请输入姓名' :disabled="state.isEnableOCRData"
maxlength="20" @input="replaceInput" />
</u-form-item>
<u-form-item label="身份证号">
<u-input placeholder='请输入身份证' type="idcard" v-model="state.form.userIdNum"
:disabled="state.isEnableOCRData" maxlength="18" />
</u-form-item>
<u-form-item label="地址">
<u-input placeholder='请输入地址' height='38' type='textarea' :autoHeight='true'
v-model="state.form.address" :disabled="state.isEnableOCRData" maxlength="100" />
</u-form-item>
<u-form-item label="联系方式">
<u-input placeholder='请输入联系方式' type="number" v-model="state.form.tel" maxlength="11" />
</u-form-item>
</u-form>
</view>

<view class="green-tip">
如识别信息有误,请手动修改,确认无误后,点击下一步!
</view>

<view class="action">
<button type="default" class="button" @click="savaHandle()">
下一步
</button>
</view>
</view>

<view v-else class="content">
<view class="title"> 车主信息 </view>
<view class="item-tips">
<view class="title"> 上传后请核对识别信息 </view>
<view class="tip"> 如有错误请及时手动修改 </view>
</view>
<view class="picture-wrapper" @click="takePhotoMode('1','my')">
<view class="bg">
<view class="">
<view class="name"> 人像面 </view>
<view class="value"> 上传身份证的人像面 </view>
<view class="tip">
<view class="tip-value"> 拍摄规范 </view>
</view>
</view>
<image v-if="!state.form.userPosImgUrl" class="icon" :src="`${$imgUrl}applyCard/renxiang.png`">
</image>
<image v-else class="icon" :src="strReplace(state.form.userPosImgUrl)"></image>
</view>
</view>
<view class="picture-wrapper" @click="takePhotoMode('2','my')">
<view class="bg">
<view class="">
<view class="name"> 国徽面 </view>
<view class="value"> 上传身份证的国徽面 </view>
<view class="tip">
<view class="tip-value"> 拍摄规范 </view>
</view>
</view>
<image v-if="!state.form.userNegImgUrl" class="icon" :src="`${$imgUrl}applyCard/guohui.png`">
</image>
<image v-else class="icon" :src="strReplace(state.form.userNegImgUrl)"></image>
</view>
</view>

<view class="shibie-wrapper">
<view class="title"> 识别内容如下 </view>
<u-form label-width="200" :model="state.form" ref="uForm">
<u-form-item label="姓名">
<u-input inputAlign="right" placeholder='请输入姓名' v-model="state.form.userName"
:disabled="state.isEnableOCRData" maxlength="20" />
</u-form-item>
<!-- <u-form-item label="性别">
<u-input inputAlign="right" placeholder='请选择性别' v-model="state.form.gender" type="select" />
</u-form-item> -->
<u-form-item label="身份证号">
<u-input inputAlign="right" placeholder='请输入身份证号' v-model="state.form.userIdNum"
:disabled="state.isEnableOCRData" type="idcard" />
</u-form-item>
<u-form-item label="联系方式">
<u-input inputAlign="right" placeholder='请输入联系方式' v-model="state.form.tel" maxlength="11" />
</u-form-item>
</u-form>
</view>
<view style="margin-top: 30rpx" class="title"> 代办人信息 </view>
<view class="item-tips">
<view class="title"> 上传后请核对识别信息 </view>
<view class="tip"> 如有错误请及时手动修改 </view>
</view>
<view class="picture-wrapper" @click="takePhotoMode('1','other')">
<view class="bg">
<view class="">
<view class="name"> 人像面 </view>
<view class="value"> 上传身份证的人像面 </view>
<view class="tip">
<view class="tip-value"> 拍摄规范 </view>
</view>
</view>
<image v-if="!state.form.agentPosImgUrl" class="icon" :src="`${$imgUrl}applyCard/renxiang.png`">
</image>
<image v-else class="icon" :src="strReplace(state.form.agentPosImgUrl)"></image>
</view>
</view>
<view class="picture-wrapper" @click="takePhotoMode('2','other')">
<view class="bg">
<view class="">
<view class="name"> 国徽面 </view>
<view class="value"> 上传身份证的国徽面 </view>
<view class="tip">
<view class="tip-value"> 拍摄规范 </view>
</view>
</view>
<image v-if="!state.form.agentNegImgUrl" class="icon" :src="`${$imgUrl}applyCard/guohui.png`">
</image>
<image v-else class="icon" :src="strReplace(state.form.agentNegImgUrl)"></image>
</view>
</view>
<view class="picture-wrapper" @click="cardFileImageUpdate()" v-if='state.isEnableBook'>
<view class="bg">
<view class="">
<view class="name"> 委托书 </view>
<view class="value"> 上传文字清晰的委托书 </view>
<view class="tip">
<view class="tip-value"> 拍摄规范 </view>
</view>
</view>
<image v-if="!state.form.proxyUrl" class="icon" :src="`${$imgUrl}applyCard/weituoshu.png`">
</image>
<image v-else class="icon" :src="strReplace(state.form.proxyUrl)"></image>
</view>
</view>
<view class="shibie-wrapper">
<view class="title"> 识别内容如下 </view>
<u-form label-width="200" :model="state.form" ref="uForm">
<u-form-item label="经办人姓名">
<u-input inputAlign="right" placeholder='请输入经办人姓名' v-model="state.form.agentName"
:disabled="state.isEnableOCRData" maxlength="20" />
</u-form-item>
<u-form-item label="身份证号">
<u-input inputAlign="right" placeholder='请输入身份证号' v-model="state.form.agentIdNum"
:disabled="state.isEnableOCRData" maxlength="18" type="idcard" />
</u-form-item>
<u-form-item label="联系方式">
<u-input inputAlign="right" placeholder='请输入联系方式' v-model="state.form.agentTel" type="number"
maxlength="11" />
</u-form-item>
</u-form>
</view>

<view class="green-tip">
如识别信息有误,请手动修改,确认无误后,点击下一步!
</view>

<view class="action">
<button type="default" class="button" @click="savaHandle()">
下一步
</button>
</view>
</view>
<u-select mode="single-column" :list="state.genderList" v-model="state.genderShow" @confirm="genderSelectConfirm">
</u-select>
<view class="choice-takePhoto-wrap" v-if="state.isTakePhotoModeShow" @click="cancle">
<view class="choice-takePhoto">
<view @click.stop="takePhoto(state.choiceIndex)" style="border-radius: 20rpx 20rpx 0 0;">拍照</view>
<view @click.stop="xiangce(state.choiceIndex)">从手机相册选择</view>
<view @click.stop="cancle">取消</view>
</view>
</view>

<viewfinder v-if="state.phoneType" :phoneType="state.phoneType" :images="state.images"
:showStartPhoto="state.showImg" @confirmReturn="confirmReturn" @camera="camera"></viewfinder>
</template>

<script setup lang="ts">
import viewfinder from "../../components/viewfinder.vue"
import navBgCar from "./components/nav-bg-car3";
import {
reactive,
ref,
} from "vue";
import {
msg,
checkStr,
strReplace,
uploadFile
} from "@/utils/utils";
import {
onLoad,
onPageScroll,
} from "@dcloudio/uni-app";
import {
etcUserCardInfoSubmit,
fileUpload,
registerFull,
getUserMsg,idCardOcr,userUpload
} from "@/utils/network/api.js";

import {
request, requestNew
} from "@/utils/network/request.js";

import {
stringToJson
} from "@/utils/network/encryption";
import {
setItem,
getItem,
} from "@/utils/storage";
import {
getCodeName
} from "@/datas/queryKey.js";
import navBar from "@/components/nav-bar/nav-bar2.vue";
const scrollTop = ref(0)
const state = reactive({
showImg: true,
isMy: "",//自己办理 他人办理
phoneType: 0, // 1 身份证正面 2 身份证反面 3行驶证正面 4行驶证反面
choiceIndex: 1, // 1 身份证正面 2 身份证反面
isTakePhotoModeShow: false, //选择拍照方式是否出来
images: '',
genderList: [{
value: '男',
label: '男'
},
{
value: '女',
label: '女'
}
],
form: {
orderId: "", //订单ID
userName: "", //开户人姓名
userIdType: "101", //用户证件类型 101//身份证
userIdNum: "", //用户证件号码
userPosImgUrl: "", //身份证正面
userNegImgUrl: "", //身份证反面
tel: "", //开户人手机号
address: "", //开户人地址
sceneType: "", //用户协议支撑服务场景(发行服务机构和用户签订的协议)
channelId: "", //渠道id
gender: "",
customerIdVld: "",
agentName: "",
agentGender: "",
agentTel: '',
agentPhone: "",
agentIdType: "101",
agentIdNum: "",
agentPosImgUrl: "",
agentNegImgUrl: "",
proxyUrl: "",
agentAddress: "",
agentIdVld: '',
opId: '',
orderSource: 'WECHAT',
},

genderShow: false,
orderId: "",
vehiclePlateColor: undefined,
isMyPeopple: true,
isSign: '',
type: 1,
isEnableOther: true, //小程序是否支持他人办理
isEnableBook: true, //他人办理时是否上传委托书
isEnableInfo: true, //小程序信息带出
isEnableOCRData: true, //允许修改OCR识别出来的数据
});
const userGenderAction = () => {
state.genderShow = true;
};

const genderSelectConfirm = (e) => {
state.form.gender = ''
e.map((val, index) => {
state.form.gender = val.label;
})
};

const camera = () => {
state.phoneType = 0
}

const savaHandle = () => {
if (!checkStr(state.form.userIdNum, 'card')) {
msg('请输入正确身份证');
return;
}
if (!checkStr(state.form.tel, 'mobile')) {
msg('请输入正确手机号');
return;
}

//如果未登录||新用户
if (!getItem('openId')) {
let data = {
userType: "PERSONAL",
idNum: state.form.userIdNum,
idType: state.form.userIdType,
mobile: state.form.tel,
userName: state.form.userName,
gender: state.form.gender == '男' ? 'MALE' : 'FEMALE',
certifyChannel: "BAIDUOCR",
address: state.form.address,
agentIdNum: state.form.agentIdNum,
agentIdType: state.form.agentIdType,
agentName: state.form.agentName,
department: "",
userIdImgUrl: state.form.userPosImgUrl,
userIdImgBase64: "",
}
const options = {
type: 2,
data: data,
method: "POST",
showLoading: true,
};
requestNew(registerFull, options).then((res) => {
let result = res;
if (result.accessToken && result.openId) {
setItem('token', result.accessToken)
setItem('openId', result.openId)

state.form.opId = result.openId;
let data = state.form;
const options = {
type: 2,
data: data,
method: "POST",
showLoading: true,
};
requestNew(userUpload, options).then((res) => {
console.log(res);
uni.redirectTo({
url: `/subpackage/orders/car-release?orderId=${state.orderId}&vehiclePlateColor=${state.vehiclePlateColor}&type=${state.type}&isSign=${state.isSign}`,
});
});
}
})

} else {
// 已经登录
let data = state.form;
const options = {
type: 2,
data: data,
method: "POST",
showLoading: true,
};
requestNew(userUpload, options).then((res) => {
console.log(res);
uni.redirectTo({
url: `/subpackage/orders/car-release?orderId=${state.orderId}&vehiclePlateColor=${state.vehiclePlateColor}&type=${state.type}&isSign=${state.isSign}`,
});
});
}
};
const cardFileImageUpdate = () => {
uni.chooseImage({
count: 1, //只能选取一张照片
sizeType: ["original", "compressed"], //可以指定是原图还是压缩图,默认二者都有
sourceType: ["camera", "album"], //从相册选择
success: function (res) {
uploadFile(res.tempFilePaths[0], "", "").then((data) => {
state.form.proxyUrl = data;
})
},
});
};

//tab切换
const tabChange = (val : any) => {
state.isTakePhotoModeShow = false
if (val) {
state.isMyPeopple = true;
} else {
state.isMyPeopple = false;
}
state.form = {
orderId: state.orderId, //订单ID
userName: "", //开户人姓名
userIdType: "101", //用户证件类型 101//身份证
userIdNum: "", //用户证件号码
userPosImgUrl: "", //身份证正面
userNegImgUrl: "", //身份证反面
tel: "", //开户人手机号
address: "", //开户人地址
sceneType: "", //用户协议支撑服务场景(发行服务机构和用户签订的协议)
channelId: "", //渠道id
gender: "",
customerIdVld: "",
agentName: "",
agentGender: "",
agentTel: '',
agentPhone: "",
agentIdType: "101",
agentIdNum: "",
agentPosImgUrl: "",
agentNegImgUrl: "",
proxyUrl: "",
agentAddress: "",
agentIdVld: '',
};
};
onLoad((option : any) => {
state.form.orderId = option.orderId;
state.orderId = option.orderId;
state.vehiclePlateColor = option.vehiclePlateColor;
state.form.opId = getItem('openId') ? getItem('openId') : '';
state.isSign = option.isSign;
state.type = option.type;
//state.fromOrder = option.fromOrder //是否来自订单-修改资料
getGlobalParam(); //全局配置数据
console.log("option", option)
});

//监听页面滚动
onPageScroll((e) => {
scrollTop.value = e.scrollTop;
});
const replaceInput = (event) => {
console.log("event", event)
const screeningStr = /[^\u4E00-\u9FA5]/g; //想禁止什么类型,在这里替换正则就可以了
if (screeningStr.test(event)) {
setTimeout(() => {
state.form.userName = event.replace(screeningStr, '');
}, 100)
} else {
setTimeout(() => {
state.form.userName = event;
}, 100)
}
console.log("event.replace(screeningStr, '')", event.replace(screeningStr, ''), event, state.form.userName)
}

const getGlobalParam = () => {
const data = getItem('globalParam')
console.log("全局配置数据", getCodeName('IS_ENABLE', data.miniSupportOther), getCodeName('IS_ENABLE', data.otherUploadProxy), getCodeName('IS_ENABLE', data.miniInfoShow), getCodeName('IS_ENABLE', data.changeOCRData))
// 小程序是否支持他人办理
if (getCodeName('IS_ENABLE', data.miniSupportOther) == '启用') {
state.isEnableOther = true;
} else {
state.isEnableOther = false;
}
// 他人办理时是否上传委托书
if (getCodeName('IS_ENABLE', data.otherUploadProxy) == '启用') {
state.isEnableBook = true;
} else {
state.isEnableBook = false;
}
// 小程序信息带出
if (getCodeName('IS_ENABLE', data.miniInfoShow) == '启用') {
state.isEnableInfo = true;
uni.showModal({
// title: '提示',
content: '是否允许带出用户信息',
success: function (res) {
if (res.confirm) {
console.log('用户点击确定');
queryUserMsg() //通过opneId查询用户信息
} else if (res.cancel) {
console.log('用户点击取消');
}
}
});
} else {
state.isEnableInfo = false;
}
// 允许修改OCR识别出来的数据
if (getCodeName('IS_ENABLE', data.changeOCRData) == '启用') {
state.isEnableOCRData = false;
} else {
state.isEnableOCRData = true;
}

}
// 通过opneId查询用户信息
const queryUserMsg = () => {
const options = {
type: 2,
data: {
"openId": getItem('openId')
},
method: "POST",
showLoading: true,
};
request(getUserMsg, options).then((res) => {
console.log("通过opneId查询用户信息", stringToJson(res.bizContent))
const data = stringToJson(res.bizContent);
state.form.userPosImgUrl = data.customerPosImgUrl;
state.form.userNegImgUrl = data.customerNegImgUrl;
state.form.userName = data.customerName;
state.form.userIdNum = data.customerIdNum;
state.form.address = data.customerAddress;
state.form.tel = data.customerTel;
})
}
const takePhotoMode = (index, isMy) => {
console.log("index", index, isMy)
state.isTakePhotoModeShow = true
state.choiceIndex = index
state.isMy = isMy
}
const xiangce = (val) => {
console.log("val", val)
var imageType = val;
uni.chooseImage({
count: 1, //只能选取一张照片
sizeType: ["original", "compressed"], //可以指定是原图还是压缩图,默认二者都有
sourceType: ["album"], //从相册选择
success: function (res) {
state.showImg = false
state.images = res.tempFilePaths[0]
state.phoneType = state.choiceIndex
state.isTakePhotoModeShow = false
console.log("tempFilePaths[0].startsWith('file://')", res.tempFilePaths[0], res.tempFilePaths[0].startsWith('file://'))

},
})
}
const takePhoto = (val) => {
state.showImg = true
console.log("拍照", val)
state.phoneType = val;
}
const confirmReturn = (val) => {
state.phoneType = 0
state.isTakePhotoModeShow = false
var imageType = state.choiceIndex;
console.log("图片地址val", val.tempImagePath)
uploadFile(val.tempImagePath, imageType, idCardOcr).then((data) => {
console.log("身份证上传", data)
if (state.isMy == "my") {
if (state.choiceIndex == "1") {
state.form.userName = data.name;
state.form.gender = data.gender;
state.form.userIdNum = data.idno;
state.form.userPosImgUrl = data.imageUrl;
state.form.address = data.address;
} else {
state.form.customerIdVld = data.enddate;
state.form.userNegImgUrl = data.imageUrl;
}
state.isTakePhotoModeShow = false
} else {
if (state.choiceIndex == "1") {
state.form.agentName = data.name;
state.form.agentGender = data.gender;
state.form.agentIdNum = data.idno;
state.form.agentPosImgUrl = data.imageUrl;
state.form.agentAddress = data.address;
} else {
console.log("state.isMy", state.isMy, state.choiceIndex, state.choiceIndex == "1", data)
state.form.agentIdVld = data.enddate;
state.form.agentNegImgUrl = data.imageUrl;
}
state.isTakePhotoModeShow = false
}
})
}
const cancle = () => {
state.isTakePhotoModeShow = false
}
</script>

<style lang="scss" scoped>
.title {
font-size: 35rpx;
font-family: Microsoft YaHei;
font-weight: 400;
color: #000000;
line-height: 80rpx;
margin-bottom: 10rpx;
}

.content-wrap {
position: relative;
margin-top: -50rpx;
padding: 0rpx 30rpx;
display: flex;

.big {
font-size: 30rpx;
font-family: Microsoft YaHei;
font-weight: 400;
color: #333333;
line-height: 24rpx;
}

.nomal {
font-size: 26rpx;
font-family: Microsoft YaHei;
font-weight: 400;
color: #666666;
line-height: 24rpx;
}

.tip {
margin-top: -5px;
width: 117rpx;
height: 16rpx;
background: #00b38b;
opacity: 0.3;
}
}

.content {
padding: 50rpx 30rpx 50rpx 30rpx;

.action {
padding-left: 20rpx;
padding-right: 20rpx;
padding-bottom: 30rpx;

.button {
height: 80rpx;
background: linear-gradient(-90deg, #43a1e0 0%, #13e7c1 100%);
border-radius: 40rpx;
font-size: 32rpx;
font-weight: 400;
color: #ffffff;
line-height: 80rpx;
}
}

.item-tips {
.title {
font-size: 30rpx;
font-family: Microsoft YaHei;
font-weight: 400;
color: #000000;
line-height: 24rpx;
}

.tip {
margin-top: 16rpx;
font-size: 24rpx;
font-family: Microsoft YaHei;
font-weight: 400;
color: #999999;
line-height: 24rpx;
}
}

.picture-wrapper {
margin-top: 40rpx;

.bg {
background: #ffffff;
box-shadow: 0rpx 4rpx 13rpx 3rpx rgba(223, 223, 223, 0.8);
border-radius: 20rpx;
padding: 40rpx;
display: flex;
// align-items: center;
justify-content: space-between;

.name {
font-size: 34rpx;
font-family: Microsoft YaHei;
font-weight: 400;
color: #000000;
line-height: 34rpx;
}

.value {
margin-top: 20rpx;
font-size: 24rpx;
font-family: Microsoft YaHei;
font-weight: 400;
color: #999999;
line-height: 24rpx;
}

.tip {
margin-top: 20rpx;
text-align: center;
width: 110rpx;
height: 40rpx;
background: rgba(33, 190, 177, 0.2);
border-radius: 6rpx;

.tip-value {
font-size: 20rpx;
font-family: Microsoft YaHei;
font-weight: 400;
color: #0a8f8a;
line-height: 40rpx;
opacity: 1;
}
}
}

.icon {
width: 294rpx;
height: 188rpx;
}
}

.shibie-wrapper {
margin-top: 60rpx;

.title {
font-size: 30rpx;
font-family: Microsoft YaHei;
font-weight: 400;
color: #000000;
line-height: 30rpx;
}
}

.buchong-wrapper {
margin-top: 60rpx;

.title {
font-size: 30rpx;
font-family: Microsoft YaHei;
font-weight: 400;
color: #000000;
line-height: 30rpx;
}
}

.green-tip {
margin-top: 50rpx;
font-size: 24rpx;
font-family: Microsoft YaHei;
font-weight: 400;
color: #00b38b;
line-height: 24rpx;
margin-bottom: 60rpx;
}
}

.choice-takePhoto {
position: absolute;
bottom: 0;
background-color: white;
width: 100%;
border-radius: 20rpx 20rpx 0 0;
}

.choice-takePhoto>view:first-child {
text-align: center;
height: 80rpx;
line-height: 80rpx;
border-bottom: 1rpx solid rgba(127, 127, 127, 0.3);
background-color: white;
}

.choice-takePhoto>view:last-child {
text-align: center;
height: 80rpx;
line-height: 80rpx;
border-top: 6rpx solid rgba(127, 127, 127, 0.1);
background-color: white;
}

.choice-takePhoto>view {
text-align: center;
height: 80rpx;
line-height: 80rpx;
background-color: white;
}

.choice-takePhoto-wrap {
width: 100%;
height: 100vh;
background-color: rgba(127, 127, 127, 0.2);
position: fixed;
left: 0;
top: 0;
z-index: 11111;
}
</style>

+ 3
- 4
subpackage/orders/invoiceApply/invoice-content.vue Voir le fichier

@@ -75,8 +75,7 @@
import { reactive, ref } from "vue";
import { onLoad, onReachBottom} from "@dcloudio/uni-app";
import { billQueryProductOrder, getUserMsg, passageFlowingWaterOrderPageQuery } from "@/utils/network/api.js";
import { stringToJson } from "@/utils/network/encryption";
import { request, requestNew } from "@/utils/network/request.js";
import {requestNew } from "@/utils/network/request.js";
import {
getItem
} from "@/utils/storage";
@@ -126,8 +125,8 @@
method: "POST",
showLoading: true,
};
request(getUserMsg, options).then((res) => {
const data = stringToJson(res.bizContent);
requestNew(getUserMsg, options).then((res) => {
const data = res;
console.log(data, "用户信息");
state.userMobile = data.customerTel
state.customerIdNum = data.customerIdNum

+ 3
- 4
subpackage/orders/invoiceApply/invoice-header-list.vue Voir le fichier

@@ -45,8 +45,7 @@
navTo,
} from "@/utils/utils";
import { billRaiseSelect, getUserMsg } from "@/utils/network/api.js";
import { stringToJson } from "@/utils/network/encryption";
import { request,requestNew } from "@/utils/network/request.js";
import { requestNew } from "@/utils/network/request.js";
import {
getItem
} from "@/utils/storage";
@@ -83,8 +82,8 @@
method: "POST",
showLoading: true,
};
request(getUserMsg, options).then((res) => {
const data = stringToJson(res.bizContent);
requestNew(getUserMsg, options).then((res) => {
const data = res;
console.log(data, "用户信息");
form.userMobile = data.customerTel
queryList()

+ 5
- 1
subpackage/orders/invoiceApply/invoiceList.vue Voir le fichier

@@ -93,6 +93,7 @@
if (val == 1) {
state.pageNumber = 1
}
console.log("state.data",state.data)
if (state.pageNumber == 1 && state.data.length > 0) {
state.data = []
}
@@ -110,7 +111,10 @@
};
requestNew(billQueryBill, options).then((res) => {
const data = res;
state.data = data.invoices
// 有数据才赋值
if(Boolean(data.invoices)){
state.data = data.invoices
}
console.log(data, "通行");
});
}

+ 3
- 3
subpackage/orders/opening-account-people.vue Voir le fichier

@@ -532,9 +532,9 @@
method: "POST",
showLoading: true,
};
request(getUserMsg, options).then((res) => {
console.log("通过opneId查询用户信息", stringToJson(res.bizContent))
const data = stringToJson(res.bizContent);
requestNew(getUserMsg, options).then((res) => {
console.log("通过opneId查询用户信息",res)
const data = res;
state.form.userPosImgUrl = data.customerPosImgUrl;
state.form.userNegImgUrl = data.customerNegImgUrl;
state.form.userName = data.customerName;

+ 4
- 4
subpackage/orders/order-details-new.vue Voir le fichier

@@ -176,12 +176,12 @@
<view class="d-row">
<text class="d-label">快递单号:</text>
<text
class="d-value">{{state.orderInfo.trackingNumber ?state.orderInfo.trackingNumber: ''}}</text>
class="d-value">{{state.orderInfo.orderInfoExt?state.orderInfo.orderInfoExt.trackingNumber: ''}}</text>
</view>
<view class="d-row">
<text class="d-label">物流公司:</text>
<text
class="d-value">{{getCodeName('快递物流公司',state.orderInfo.courierCompany) ?getCodeName('快递物流公司',state.orderInfo.courierCompany): ''}}</text>
class="d-value">{{state.orderInfo.orderInfoExt?getCodeName('快递物流公司',state.orderInfo.orderInfoExt.courierCompany): ''}}</text>
</view>

</view>
@@ -232,12 +232,12 @@
<view class="d-row">
<text class="d-label">快递单号:</text>
<text
class="d-value">{{state.orderInfo.trackingNumber ?state.orderInfo.trackingNumber: ''}}</text>
class="d-value">{{state.orderInfo.orderInfoExt ?state.orderInfo.orderInfoExt.trackingNumber: ''}}</text>
</view>
<view class="d-row">
<text class="d-label">物流公司:</text>
<text
class="d-value">{{getCodeName('快递物流公司',state.orderInfo.courierCompany) ?getCodeName('快递物流公司',state.orderInfo.courierCompany): ''}}</text>
class="d-value">{{state.orderInfo.orderInfoExt?getCodeName('快递物流公司',state.orderInfo.orderInfoExt.courierCompany): ''}}</text>
</view>

</view>

+ 5
- 5
subpackage/personal-center/search/etcFlowingWater.vue Voir le fichier

@@ -142,7 +142,6 @@
index:0
})
onLoad((option) => {
state.cardId = option.cardId;
state.handleDate = option.handleDate;
state.vehicleId = option.vehicleId;
console.log("月结单111", state.handleDate)
@@ -177,11 +176,12 @@ const changeCardId = (e) => {
};
requestNew(cardinformationquery, options).then((res) => {
console.log("152", res)
let result =res;
for (var k = 0; k < result.data.length; k++) {
state.cardIdRange.push(result.data[k]['cardId'])
let result =res.result;
for (var k = 0; k < result.length; k++) {
state.cardIdRange.push(result[k]['cardId'])
}
console.log(result.data);
state.cardId = state.cardIdRange[0];
console.log(result);
})
}
function getDaysInMonth(year, month) {

+ 2
- 2
subpackage/personal-center/setting/change-phone-code.vue Voir le fichier

@@ -99,8 +99,8 @@
const options = {
type: 2,
data: {
mobile: phone.value,
verificationCode: code.value
newMobile: phone.value,
newMobileCode: code.value
},
method: "POST",
showLoading: true,

+ 1
- 1
subpackage/personal-center/setting/personal-information/user-change-list.vue Voir le fichier

@@ -1,6 +1,6 @@
<template>
<view v-for="(item,index) in state.customerInfoList" @click="change(item.customerId,item.userType)">
<view class="content">{{item.agentName}}</view>
<view class="content">{{item.agentName?item.agentName:item.customerName}}</view>
</view>
</template>
<script setup lang="ts">

+ 6
- 0
subpackage/service/equityList/equityList.vue Voir le fichier

@@ -11,6 +11,7 @@
</view>
</view>
</view>
<view v-if="listData.length==0" class="no">暂无数据</view>
</template>
<script setup lang='ts'>
import { reactive } from "vue";
@@ -261,4 +262,9 @@
color: #fff;
display: inline-block;
}
.no{
text-align: center;
margin: 40rpx auto;
font-size: 28rpx;
}
</style>

+ 1
- 1
utils/network/api.js Voir le fichier

@@ -194,7 +194,6 @@ export const addEvaluation = "64ed1fdff3b44138ba30d183b613bc7f" //满意度评
export const satisfactionEvaluation = "746b5e0375b8474eb3e133b8c79586d8" //满意度评价-分页查询
export const judageSalesman = "35744a8e282a42ddbc63814303e9e441" //判断是否有业务员
export const judageQuanProduct = "fe71273c1a394eaa999825afe7daa59b" //判断是否有权益产品
export const getUserMsg = "c4a499a2a63042b9a2d4e88fc77d3fc0" //通过opneId查询用户信息

// 单位账户充值
export const accountLogin = "308679d555fa47da84876a8aeaee40a4" //单位账户登录
@@ -315,6 +314,7 @@ export const obuFileDataDecrypt= "/iaw/ass/issueBase/obuFileDataDecrypt" //OBU
export const updateShippingAddress= "/iaw/issue/order/updateShippingAddress" //订单修改收货地址
export const vehicleInfoQuery= "/iaw/app/issue/vehicleInfo/query" //获取车辆信息
export const etcQyList = "/iaw/sign/signChannelQuery"; // 统一会员平台可签约渠道列表查询接口
export const getUserMsg = "/iaw/api/userInfoQuery/queryIdNum" //通过opneId查询用户信息
// 业务审核进度查询
export const generalAuditQuery= "/iaw/api/afterSale/generalAudit/query" //业务审核查询
export const generalAuditListVehicle= "/iaw/api/afterSale/generalAudit/listVehicle" //业务审核查询车辆列表

+ 15
- 2
utils/network/request.js Voir le fichier

@@ -339,7 +339,7 @@ export function requestNew(code, options = {}, start = false) {
opId: getItem(StorageKeys.OpenId),
orderSource:'WECHAT'
}
options.url = envs[process.env.NODE_ENV].baseUrl+'/ndev' + code
options.url = envs[process.env.NODE_ENV].baseUrl+'/prod' + code
//默认json数据格式提交`
let contentType = 'application/json'

@@ -356,7 +356,7 @@ export function requestNew(code, options = {}, start = false) {

//设置请求超时时间
options.timeout = 60000
console.log("getItem(StorageKeys.Token)",getItem(StorageKeys.Token))
options.header = {
'content-type': contentType,
'Access-Token': getItem(StorageKeys.Token)
@@ -406,6 +406,19 @@ export function requestNew(code, options = {}, start = false) {
console.log("token刷新", data);
requestNew(code, options, true)
})
}else if(res.data.code == 403001 || res.data.code == 403004){
// 会详细列出具体字段的错误信息。
uni.showModal({
title: '提示',
content: res.data.message,
success: function(res) {
if (res.confirm) {
console.log('用户点击确定2');
} else if (res.cancel) {
console.log('用户点击取消2');
}
}
});
}else{
uni.showModal({
title: '提示',

Chargement…
Annuler
Enregistrer