Bladeren bron

8/1提交

@dongkboy 10 maanden geleden
bovenliggende
commit
f294dccd7f

+ 1 - 1
config/baseUrl.js

@@ -3,7 +3,7 @@ let h5BaseUrl = "";
 let socketUrl = "";
 if (process.env.NODE_ENV === 'development') {
 	// 开发环境
-	// baseUrl = "http://192.168.0.103:8080"; //屈晨
+	// baseUrl = "http://192.168.0.106:8080"; //屈晨
 	// baseUrl = "https://test.baoxianzhanggui.com/web-api"; //测试
 	// h5BaseUrl = "https://test.baoxianzhanggui.com/h5";
 	// baseUrl = "https://pre.baoxianzhanggui.com/web-api"; //预生产

+ 2 - 2
manifest.json

@@ -7,8 +7,8 @@
 		"sizes": "分辨率,192x192",
 		"src": "图片路径"
 	}],
-	"versionName": "2.4.4",
-	"versionCode": 244,
+	"versionName": "2.4.8",
+	"versionCode": 248,
 	"app-plus": {
 		"error": {
 			"url": "hybrid/html/error.html"

+ 32 - 43
pages.json

@@ -62,6 +62,17 @@
 				}
 			}
 		},
+		{
+			"path": "pages/index/cityIndex",
+			"style": {
+				"navigationStyle": "custom", // 取消本页面的导航栏
+				"app-plus": {
+					"titleNView": false,
+					"scrollIndicator": "none", //隐藏滚动条
+					"bounce": "none" //关闭反弹效果
+				}
+			}
+		},
 		{
 			"path": "pages/register/registerSuccess",
 			"style": {
@@ -414,7 +425,7 @@
 			}
 		},
 		{
-			"path": "pages/tools/policy",
+			"path": "pages/tools/policy/policy",
 			"style": {
 				"navigationBarTitleText": "我的保单",
 				"enablePullDownRefresh": false,
@@ -426,6 +437,26 @@
 				}
 			}
 		},
+		{
+			"path": "pages/tools/policy/subOrders",
+			"style": {
+				"navigationBarTitleText": "查看报价",
+				"app-plus": {
+					"scrollIndicator": "none",
+					"bounce": "none"
+				}
+			}
+		},
+		{
+			"path": "pages/tools/policy/quoteDetail",
+			"style": {
+				"navigationBarTitleText": "报价详情",
+				"navigationBarBackgroundColor": "#0052FF",
+				"navigationBarTextStyle": "white",
+				"enablePullDownRefresh": false
+
+			}
+		},
 		{
 			"path": "pages/tools/coupon/coupon",
 			"style": {
@@ -534,16 +565,6 @@
 					"bounce": "none"
 				}
 			}
-		}, {
-			"path": "pages/orders/orders",
-			"style": {
-				"navigationBarTextStyle": "white",
-				"enablePullDownRefresh": false, //开启下拉刷新
-				"navigationStyle": "custom",
-				"app-plus": {
-					"titleNView": false
-				}
-			}
 		}, {
 			"path": "pages/carInsure1/quoteOffer1",
 			"style": {
@@ -554,16 +575,6 @@
 				}
 			}
 		}, {
-			"path": "pages/orders/subOrders",
-			"style": {
-				"navigationBarTitleText": "查看报价",
-				"app-plus": {
-					"scrollIndicator": "none",
-					"bounce": "none"
-				}
-			}
-		},
-		{
 			"path": "pages/carInsure1/payWay1",
 			"style": {
 				"navigationBarTitleText": "请选择支付方式",
@@ -918,28 +929,6 @@
 
 
 			}
-		}, {
-			"path": "pages/orders/quoteHistory",
-			"style": {
-				"navigationBarTitleText": "报价历史",
-				"enablePullDownRefresh": false
-			}
-
-		}, {
-			"path": "pages/orders/quotation",
-			"style": {
-				"navigationBarTitleText": "报价单",
-				"enablePullDownRefresh": false
-			}
-
-		},
-		{
-			"path": "pages/orders/quotation1",
-			"style": {
-				"navigationBarTitleText": "报价单",
-				"enablePullDownRefresh": false
-			}
-
 		},
 		{
 			"path": "pages/tools/addStaff/codeDownload",

+ 96 - 17
pages/ad/ad.vue

@@ -12,18 +12,22 @@
 					style="width: 15px;height: 15px;" @click="isMuteds"></image>
 
 				<text>丨</text>
-				<!-- #ifdef APP -->
+				<!-- #ifdef APP-PLUS -->
 				<text @click="showAlert">关闭</text>
 				<!-- #endif -->
+				<!-- #ifdef H5 -->
 				<text @click="showAlert1">关闭</text>
+				<!-- #endif -->
 			</view>
 		</view>
 		<view class="" :style="{width:'100%',height:'calc(100% - 45px)',position: 'relative'}">
-			<video id="myVideo" src="../../ad.mp4" autoplay controls :style="{width:'100%',height:'100%'}"
-				:controls="true" @play="startCountdown">
+			<video id="myVideo" :src="videoUrl" autoplay controls :style="{width:'100%',height:'100%'}"
+				:controls="false" @play="startCountdown" :muted="muted" :enable-progress-gesture="false">
 			</video>
 		</view>
-		<u-modal v-model="show" content="暂未获得奖励,是否继续观看视频"></u-modal>
+		<u-modal v-model="show" content="暂未获得奖励,是否继续观看视频" show-cancel-button confirm-text="继续" :show-title="false"
+			:content-style="{fontWeight:'bold'}" :cancel-style="{fontWeight:'bold'}"
+			:confirm-style="{fontWeight:'bold'}" cancel-text="放弃" @confirm="confirm" @cancel="cancel"></u-modal>
 	</view>
 </template>
 
@@ -31,26 +35,46 @@
 	export default {
 		data() {
 			return {
-				countdownTime: 30,
+				countdownTime: 0,
+				videoTimeLength: 0,
 				windowHeight: "",
 				isMuted: true,
 				show: false,
+				videoContext: "",
+				muted: false,
+				videoUrl: "",
+				videoId: "",
+				userId: "",
 			}
 		},
 		onShow() {
 			// 确保视频元素存在
 			this.$nextTick(() => {
-				this.video = document.getElementById('myVideo');
+				this.videoContext = uni.createVideoContext('myVideo', this);
 			});
 		},
-		onLoad() {
+		async onLoad(params) {
+			if (params) {
+				this.userId = params.userId;
+			}
 			const res = uni.getSystemInfoSync();
 			this.windowHeight = res.windowHeight + 'px';
+			this.marketQuery();
 		},
 		methods: {
+
+			confirm() {
+				this.videoContext.play();
+				// 继续倒计时
+				this.startCountdown();
+			},
+			cancel() {
+				this.marketCallback();
+				uni.navigateBack(-1)
+			},
 			isMuteds() {
 				this.isMuted = !this.isMuted;
-				this.video.muted = this.isMuted;
+				this.muted = !this.muted;
 			},
 			startCountdown() {
 				if (this.intervalId) {
@@ -65,18 +89,73 @@
 				}, 1000);
 			},
 			showAlert1() {
-				this.show = true;
+				if (this.countdownTime > 0) {
+					this.videoContext.pause();
+					if (this.intervalId) {
+						clearInterval(this.intervalId);
+					}
+					this.show = true;
+					// 暂停倒计时
+				} else {
+					uni.navigateBack(-1)
+					this.marketCallback();
+				}
 			},
 			showAlert() {
-				// 判断plus对象是否存在
-				if (plus) {
-					// 创建一个提示窗
-					plus.nativeUI.alert('这是一个弹窗', function() {});
+				if (this.countdownTime > 0) {
+					this.videoContext.pause();
+					if (this.intervalId) {
+						clearInterval(this.intervalId);
+					}
+					plus.nativeUI.confirm(
+						"暂未获得奖励,是否继续观看视频。",
+						(e) => {
+							if (e.index === 0) {
+								this.videoContext.play();
+								// 继续倒计时
+								this.startCountdown();
+							} else if (e.index === 1) {
+								uni.navigateBack(-1)
+							}
+						}, {
+							buttons: ["继续", "放弃"]
+						}
+					);
 				} else {
-					// 非App环境的处理逻辑
-					alert('这是一个浏览器的弹窗');
+					uni.navigateBack(-1)
 				}
-			}
+
+			},
+			marketQuery() {
+				uni.request({
+					url: 'http://192.168.0.106:8082/api/advertising/getCompany',
+					method: "POST",
+					data: {
+						userId: this.userId
+					},
+					success: (res) => {
+						this.videoUrl = 'http://192.168.0.106:8082/api/' + res.data.videoUrl;
+						this.countdownTime = res.data.videoTimeLength;
+						this.videoTimeLength = res.data.videoTimeLength;
+						this.videoId = res.data.id;
+					}
+				})
+			},
+			marketCallback() {
+				uni.request({
+					url: 'http://192.168.0.106:8082/api/callback/advertisingCallback',
+					method: "POST",
+					data: {
+						isCatOver: this.countdownTime > 0 ? '0' : '1',
+						catVideoTime: this.videoTimeLength - this.countdownTime,
+						videoId: this.videoId,
+						userId: this.userId,
+					},
+					success: (res) => {
+
+					}
+				})
+			},
 		},
 		beforeDestroy() {
 			if (this.intervalId) {
@@ -93,7 +172,7 @@
 </style>
 <style lang="scss" scoped>
 	.page {
-		padding-top: 20px;
+		padding-top: 40px;
 		background-color: #000;
 	}
 

+ 77 - 24
pages/carInsure2/insureItems.vue

@@ -477,30 +477,83 @@
 						amount: "10000",
 						amountDesc: "1万",
 						amtList: [{
-							"label": "不投保",
-							"value": "0"
-						}, {
-							"label": "1万",
-							"value": "10000"
-						}, {
-							"label": "2万",
-							"value": "20000"
-						}, {
-							"label": "4万",
-							"value": "40000"
-						}, {
-							"label": "5万",
-							"value": "50000"
-						}, {
-							"label": "10万",
-							"value": "100000"
-						}, {
-							"label": "15万",
-							"value": "150000"
-						}, {
-							"label": "20万",
-							"value": "200000"
-						}],
+								label: "不投保",
+								value: "0"
+							},
+							{
+								label: "1万",
+								value: "10000"
+							},
+							{
+								label: "2万",
+								value: "20000"
+							},
+							{
+								label: "3万",
+								value: "30000"
+							},
+							{
+								label: "4万",
+								value: "40000"
+							},
+							{
+								label: "5万",
+								value: "50000"
+							},
+							{
+								label: "6万",
+								value: "60000"
+							},
+							{
+								label: "7万",
+								value: "70000"
+							},
+							{
+								label: "8万",
+								value: "80000"
+							},
+							{
+								label: "9万",
+								value: "90000"
+							},
+							{
+								label: "10万",
+								value: "100000"
+							},
+							{
+								label: "15万",
+								value: "150000"
+							},
+							{
+								label: "20万",
+								value: "200000"
+							},
+							{
+								label: "25万",
+								value: "250000"
+							},
+							{
+								label: "30万",
+								value: "300000"
+							},
+							{
+								label: "35万",
+								value: "350000"
+							},
+							{
+								label: "40万",
+								value: "400000"
+							},
+							{
+								label: "45万",
+								value: "450000"
+							},
+							{
+								label: "50万",
+								value: "500000"
+							},
+
+						],
 						kindCode: "D4",
 						isMainRisk: true,
 						kindName: "乘客责任险",

+ 25 - 23
pages/carInsure2/quote.vue

@@ -2637,7 +2637,11 @@
 			},
 			//获取保险公司列表
 			async commpanyList() {
-				let commpanykad = await this.$http.get('/tax/manager/getAllAgreement');
+				let commpanykad = await this.$http.get('/tax/manager/getAllAgreement', {
+					// kindList: this.kindList,
+					// riskList: this.riskList,
+					// systemType: "2",
+				});
 				commpanykad.data.map(ele => {
 					ele["result"] = {};
 					ele["quoteCode"] = 0;
@@ -2666,28 +2670,17 @@
 						})
 					})
 				}
-				// //险种合并集合
-				const combinedArray = [
-					...this.riskList.map(item => item.riskCode),
-					...this.kindList.map(item => item.kindCode),
-				];
-				commpanykad.data = commpanykad.data.filter(obj => {
-					obj.agreement = obj.agreement.filter(agreementObj => {
-						agreementObj.businessDescription = agreementObj.businessDescription + "(" +
-							agreementObj.jobDescription + ")";
-						// 险种配置为空,则过滤掉该协议
-						if (agreementObj.productsCodes == null) {
-							return true;
-						} else {
-							if (combinedArray.includes('A') && !agreementObj.productsCodes.includes(
-									'A')) {
-								return false;
-							}
-							return agreementObj.productsCodes.some(item => combinedArray.includes(
-								item));
-						}
-					});
-					return obj.agreement.length > 0; // 返回true保留,返回false移除该保险公司
+				// // //险种合并集合
+				// const combinedArray = [
+				// 	...this.riskList.map(item => item.riskCode),
+				// 	...this.kindList.map(item => item.kindCode),
+				// ];
+				commpanykad.data.map(obj => {
+					obj.agreement.map(ele => {
+						ele.businessDescription = ele.businessDescription + "(" +
+							ele.jobDescription + ")";
+						return ele;
+					})
 				});
 				this.totalCompanyList = commpanykad.data;
 			},
@@ -2789,6 +2782,7 @@
 					orderNo: this.orderno,
 					companyId: id,
 					isTaxSource: isTaxSource == 1 ? isTaxSource : null,
+					systemType: '2'
 				};
 				let quote = await this.$http('/order/yongAn/quote', params);
 				if (quote.msg == "重复投保" && quote.code == "501") {
@@ -2849,6 +2843,7 @@
 					companyId: id,
 					agreementId: this.totalCompanyList[num].agreementId,
 					isTaxSource: isTaxSource == 1 ? isTaxSource : null,
+					systemType: '2'
 				};
 
 				let res = await this.$http.post('/order/zhongMeiApi/quote', params);
@@ -2920,6 +2915,7 @@
 					companyId: id,
 					agreementId: this.totalCompanyList[num].agreementId,
 					isTaxSource: isTaxSource == 1 ? isTaxSource : null,
+					systemType: '2'
 				};
 
 				let res = await this.$http.post('/order/boHaiApi/quote', params);
@@ -2996,6 +2992,7 @@
 					renewalCodeSy: this.renewalCodeSy,
 					isTaxSource: isTaxSource == 1 ? isTaxSource : null,
 					agreementId: this.totalCompanyList[num].agreementId,
+					systemType: '2'
 				};
 				let res = await this.$http.post('/api/yongCheng/quote', params);
 				this.totalCompanyList[num].msg = res.msg;
@@ -3045,6 +3042,7 @@
 					agreementId: this.totalCompanyList[num].agreementId,
 					coefficient: this.totalCompanyList[num].coefficient,
 					isTaxSource: isTaxSource == 1 ? isTaxSource : null,
+					systemType: '2'
 				};
 				let res = await this.$http.post('/order/zijin/quote', params);
 				this.totalCompanyList[num].msg = res.msg;
@@ -3127,6 +3125,7 @@
 						.agreementId,
 					isTaxSource: isTaxSource == 1 ? isTaxSource : null,
 					guoRenSpecialAgreementVo: this.guoRenSpecialAgreementVo,
+					systemType: '2'
 				};
 				let res = await this.$http.post('/api/guoRen/quote',
 					params);
@@ -3217,6 +3216,7 @@
 					isTaxSource: isTaxSource == 1 ? isTaxSource : null,
 					agreementId: this.totalCompanyList[num]
 						.agreementId,
+					systemType: '2'
 				};
 				let res = await this.$http.post(`${api}`,
 					params);
@@ -3306,6 +3306,7 @@
 					isTaxSource: isTaxSource == 1 ? isTaxSource : null,
 					agreementId: this.totalCompanyList[num]
 						.agreementId,
+					systemType: '2'
 				};
 				let res = await this.$http.post(
 					`${api}`, params);
@@ -3410,6 +3411,7 @@
 					accidentalDrivingVo: jychecked ? this[
 						ccidenttype +
 						'accidentalDrivingVo'] : {},
+					systemType: '2'
 				};
 				if (id = 'GPIC1000000') {
 					if (companyId) {

+ 1 - 1
pages/carInsure2/quoteDetail.vue

@@ -875,7 +875,7 @@
 				<scroll-view class="scrollBar" scroll-y="true"
 					style="max-height: 300px; padding: 10px 20px; box-sizing: border-box;">
 					<view class="content">
-						<view>{{underwriteMsg}}</view>
+						<rich-text :nodes="underwriteMsg"></rich-text>
 					</view>
 				</scroll-view>
 				<!-- <view class="scrollBar">

+ 56 - 0
pages/index/cityIndex.vue

@@ -0,0 +1,56 @@
+<template>
+	<u-index-list :scrollTop="scrollTop">
+		<view v-for="(item, index) in indexList" :key="index">
+			<u-index-anchor :index="item" />
+			<view class="list-cell">
+				列表1
+			</view>
+			<view class="list-cell">
+				列表2
+			</view>
+			<view class="list-cell">
+				列表3
+			</view>
+		</view>
+	</u-index-list>
+</template>
+
+<script>
+	export default {
+		data() {
+			return {
+				scrollTop: 0,
+				indexList: ["A", "B", "C", "D", "E", "F", "G", "H", "I", "J", "K", "L", "M", "N", "O", "P", "Q", "R", "S",
+					"T", "U",
+					"V", "W", "X", "Y", "Z"
+				]
+			}
+		},
+		onPageScroll(e) {
+			this.scrollTop = e.scrollTop;
+		},
+		onShow() {
+
+		},
+		onLoad() {
+
+		},
+		methods: {
+
+		}
+	}
+</script>
+
+<style lang="scss" scoped>
+	.list-cell {
+		display: flex;
+		box-sizing: border-box;
+		width: 100%;
+		padding: 10px 24rpx;
+		overflow: hidden;
+		color: #323233;
+		font-size: 14px;
+		line-height: 24px;
+		background-color: #fff;
+	}
+</style>

+ 66 - 58
pages/index/index.vue

@@ -8,17 +8,19 @@
 		<!-- 状态栏 -->
 		<view class="status" :style="{position:headerPosition,backgroundColor:bgColor}"></view>
 		<!-- 漂浮头部 -->
-		<view class="header" :style="{position:headerPosition,backgroundColor:bgColor}">
-			<view class="scan">
-				<view class="icon iconfont icon-saoyisao" @tap="scan"></view>
+		<view class="header dis a-c j-s" :style="{position:headerPosition,backgroundColor:bgColor}">
+			<view class="city dis a-c ">
+				<text>{{city}}</text>
+				<view class="icon iconfont icon-sanjiao_fill-"></view>
 			</view>
-			<view class="input">
-				<view class="icon iconfont icon-search"></view>
+
+			<view class="input dis a-c">
+				<view class="icon iconfont icon-saoyisao" @tap="scan"></view>
 				<input disabled placeholder="车险" @tap="toSearch()" />
 			</view>
 			<view class="menu">
 				<image mode="aspectFill" :src="avatar"
-					@click='isShow?navigate({url:"/pages/realname/realname"},"navigateTo",true):""'></image>
+					@click='isShow?navigate({url:"/pages/realname/realname"}," ",true):""'></image>
 			</view>
 		</view>
 		<!-- 公共组件-每个页面必须引入 -->
@@ -73,7 +75,6 @@
 			</view>
 			<view class="loading-text">{{loadingText}}</view>
 		</view>
-
 	</view>
 </template>
 <script>
@@ -95,6 +96,7 @@
 		},
 		data() {
 			return {
+				city: "",
 				avatar: "",
 				xuelishow: false,
 				border: false,
@@ -336,12 +338,10 @@
 			let banner = await this.$http.get('/apps/getCarousel');
 			this.swiperList = banner.data;
 			this.bgColor = this.swiperList[0].color;
+			// #ifdef APP-PLUS
+			// this.getCurrentLocation();
+			// #endif
 		},
-		// async onReady() {
-		// 	this.bgColor = this.swiperList[0].color;
-
-		// },
-		//下拉刷新,需要自己在page.json文件中配置开启页面下拉刷新 "enablePullDownRefresh": true
 		async onPullDownRefresh() {
 			let userInfoRes = await this.$http.get('/user/loginUser')
 			// let userInfoRes = await this.$http.get('/esmUserInternal/findById?id=' + this.userInfo.sysUser.id, {}, {});
@@ -400,9 +400,31 @@
 		// 	}
 		// },
 		methods: {
+			getCurrentLocation() {
+				//获取当前的地理位置
+				let vthis = this;
+				uni.getLocation({
+					type: 'gcj02',
+					geocode: true,
+					success: function(res) {
+						vthis.city = res.address.city;
+						// let address = res.address.province + res.address.city + res.address.district + res
+						// 	.address.street + res.address.poiName;
+					},
+					fail: function(err) {
+						console.log(err);
+
+					}
+				});
+			},
+			citySelection() {
+				uni.navigateTo({
+					url: '/pages/index/cityIndex'
+				})
+			},
 			arr() {
 				uni.navigateTo({
-					url: '/pages/ad/ad'
+					url: '/pages/ad/ad?userId=' + this.userInfo.sysUser.id,
 				})
 			},
 			nameClick() {
@@ -525,13 +547,7 @@
 		}
 	};
 </script>
-<style>
-	.icon {
-		font-size: 50upx;
-		font-style: normal;
-		color: #ffffff;
-	}
-
+<style lang="scss" scoped>
 	.status {
 		width: 100%;
 		height: 0;
@@ -553,65 +569,57 @@
 		top: var(--status-bar-height);
 		/*  #endif  */
 		z-index: 996;
+		padding: 0 10px;
 	}
 
-	.header .scan {
-		width: 100upx;
-		height: 100upx;
-		flex-shrink: 1;
-		display: flex;
-		justify-content: center;
-		align-items: center;
+	.header .city {
+		color: #fff;
+		font-size: 15px;
+
+		.icon {
+			font-size: 10px;
+			margin-left: 5px;
+		}
 	}
 
 	.header .input {
-		width: calc(100% - 200upx);
-		display: flex;
-		justify-content: center;
-		align-items: center;
-		position: relative;
+		width: 70%;
+		background-color: #fff;
+		border-radius: 30px;
+		height: 30px;
+		padding: 10px;
+		box-sizing: border-box;
 	}
 
 	.header .input input {
-		width: calc(100% - 60upx);
-		height: 60upx;
-		background-color: #ffffff;
-		border-radius: 60upx;
-		padding-left: 60upx;
-		font-size: 30upx;
+		// width: calc(100% - 150px);
+		// height: 60upx;
+		// background-color: #ffffff;
+		// border-radius: 60upx;
+		// padding-left: 60upx;
+		// font-size: 30upx;
 	}
 
 	.header .input .icon {
-		width: 60upx;
-		height: 60upx;
-		position: absolute;
 		color: #a18090;
-		z-index: 996;
-		top: 20upx;
-		left: 0;
-		font-size: 40upx;
-		display: flex;
-		justify-content: center;
-		align-items: center;
+		font-size: 18px;
+		margin-right: 10px;
 	}
 
 	.header .menu {
 		background-color: #FFFFFF;
 		border-radius: 50%;
 		box-sizing: border-box;
-		margin: 20upx;
-		width: 60upx;
-		height: 60upx;
-		flex-shrink: 1;
-		display: flex;
-		justify-content: center;
-		align-items: center;
+		width: 30px;
+		height: 30px;
+		padding: 3px;
+		box-sizing: border-box;
 	}
 
 	.header .menu image {
-		width: 50upx;
-		height: 50upx;
-		border-radius: 60upx;
+		width: 100%;
+		height: 100%;
+		border-radius: 50%;
 	}
 
 	/* 占位 */

+ 2 - 1
pages/login/login.vue

@@ -240,6 +240,7 @@
 
 				}
 			})
+			//#ifdef APP-PLUS
 			let args = plus.runtime.arguments;
 			if (args) {
 
@@ -263,7 +264,7 @@
 					})
 				}
 			}
-
+			//#endif
 		},
 		onUnload() {
 			this.closeSQL();

+ 1 - 1
pages/my/my.vue

@@ -250,7 +250,7 @@
 					{
 						icon: 'icon-Frame-6',
 						text: '保单',
-						url: '/pages/tools/policy',
+						url: '/pages/tools/policy/policy',
 					},
 					{
 						icon: 'icon-Frame-7',

+ 0 - 599
pages/orders/orders.vue

@@ -1,599 +0,0 @@
-<template>
-	<view class="parent">
-		<!-- 查询区域Start -->
-		<view class="white flexd "
-			style="box-shadow:rgb(255, 204, 149) 0px 0px 6px 1px;z-index: 99; background:  linear-gradient(to left, #f2994a, #f2c94c);padding-top: 50px;">
-			<view class="search">
-				<u-search v-model="pageRequest.licenseNo" @custom="custom" @search="search" :shape="shape"
-					:clearabled="clearabled" :show-action="showAction" :input-align="inputAlign" @clear="clear"
-					placeholder="车牌号搜索"></u-search>
-			</view>
-			<u-dropdown active-color="#fff" inactive-color="#fff" ref="uDropdown">
-				<u-dropdown-item title="筛选条件">
-					<view class="slot-content1">
-						<view class="dis f-c">
-							<text class="title" style="margin:0 10px;">订单状态</text>
-							<view class="dis  a-c f-wrap" style="margin: 10px;">
-								<view class="status-data" :class="item.value==pageRequest.orderStatus? 'active':''"
-									v-for="(item,index) in statusList" @tap="statusclick(index)" :key="index">
-									{{item.label}}
-								</view>
-							</view>
-						</view>
-						<view class="dis f-c">
-							<text class="title" style="margin:0 10px;">保险公司</text>
-							<view class="dis  a-c f-wrap" style="margin: 10px;">
-								<view class="status-data" :class="item.id==pageRequest.companyId? 'active':''"
-									v-for="(item,index) in esmInsCompanyList" @tap="companystatusclick(item.id)"
-									:key="index">
-									{{item.namesimple}}
-								</view>
-							</view>
-						</view>
-						<view class="dis f-c">
-							<text class="title" style="margin:0 10px;">订单日期</text>
-							<view class="dis  a-c f-wrap" style="margin: 10px;">
-								<view class="status-data" :class="item.value==timespecifications? 'active':''"
-									v-for="(item,index) in dateList" @tap="dateclick(index)" :key="index">
-									{{item.label}}
-								</view>
-								<view class="dis a-c ">
-									<view class="status-data" :class="startShow? 'active' :''" @tap="startShowmethod()">
-										<text v-if="pageRequest.startDate!=''">{{pageRequest.startDate}}</text>
-										<text v-else>{{transformTime()}}</text>
-									</view>
-									<view class="status-data" :class="endShow? 'active' :''" @tap="endShowmethod()">
-										<text v-if="pageRequest.endDate!=''">{{pageRequest.endDate}}</text>
-										<text v-else>{{transformTime()}}</text>
-									</view>
-								</view>
-							</view>
-						</view>
-						<view class="dis j-s a-c" style="margin:10px;">
-							<u-button type="success" size="medium" :hair-line="false" style="width: 45%;"
-								@click="closeDropdown">取消</u-button>
-							<u-button type="warning" size="medium" style="width: 45%;"
-								@click="querysearch">确定</u-button>
-						</view>
-					</view>
-				</u-dropdown-item>
-			</u-dropdown>
-		</view>
-		<view class="search" style="padding-top: 150px;">
-			<view class=" orderItemPane" v-for="(item,index) in pageResult" :key="index" @click="querydetail(item)">
-				<view class="orderItemPane-upper dis j-s a-c search">
-					<view class="dis j-s">
-						<view class="icon iconfont icon-tree-round-car"
-							style="color: rgba(255, 154, 23, 0.57);margin-right: 5px;">
-						</view>
-						<text class="title">{{item.licenseno}}</text>
-					</view>
-					<text class="upper-time moosize">{{item.createtime}}</text>
-
-				</view>
-				<view class="orderItemPane-centre " style="padding: 0 10px;">
-					<view class="status dis j-end">
-						<view v-for="(statusitem,statusindex) in statusList" :key="statusindex">
-							<text v-if="item.orderstatus==statusitem.value"
-								:style="{color:statusitem.color}">{{statusitem.label}}
-								<u-icon name="arrow-right" size="14px"
-									style="margin-left: 5px;color: #999;"></u-icon></text>
-						</view>
-					</view>
-					<view class="dis f-wrap item  ">
-						<text>投保人:{{item.insuredname}}</text>
-						<text>投保险种:{{item.product}}</text>
-						<text v-if="item.orderstatus=='3'">承保公司:{{item.insCompany}}</text>
-						<text>订单号:{{item.orderno}}</text>
-						<text>业务员:{{item.username}}({{item.userid}})</text>
-					</view>
-				</view>
-				<view class="orderItemPane-below dis a-c  j-end search">
-					<u-button type="primary" size="mini" :hair-line="false" :plain="true"
-						@click="quotehistory(item)">报价历史</u-button>
-					<u-button v-if="item.orderstatus!='3'" type="success" size="mini" :hair-line="false" :plain="true"
-						@click="CloseEdit(item.orderno)">编辑</u-button>
-				</view>
-			</view>
-		</view>
-		<o-empty v-if="pageResult.length==0" />
-		<!-- 回到顶部 -->
-		<u-picker v-model="startShow" mode="time" :params="params" @confirm="startconfirm"></u-picker>
-		<u-picker v-model="endShow" mode="time" :params="params" @confirm="endconfirm"></u-picker>
-
-	</view>
-</template>
-
-<script>
-	import {
-		mapState,
-		mapMutations
-	} from "vuex"
-	// import carOrders from "@/components/modules/orders/carOrders.vue";
-	import {
-		watch
-	} from "vue";
-	export default {
-		components: {},
-		watch: {
-			stageIndex(newVal, oldVal) {
-				if (newVal !== oldVal) {
-					this.pageRequest.orderStatus = newVal;
-				}
-			}
-		},
-		data() {
-			return {
-				dwdw: this.$u.color['success'],
-				/* 时间筛选相关 */
-				startShow: false,
-				endShow: false,
-				params: {
-					year: true, //年
-					month: true, //月
-					day: true, //日
-				},
-				/* 时间筛选相关 */
-				pageRequest: { //查询的默认条件
-					companyId: "",
-					orderNo: "",
-					frameNo: "",
-					insuredName: "",
-					licenseNo: "",
-					orderStatus: "",
-					userId: "",
-					deptId: "",
-					endDate: "",
-					startDate: "",
-					pageNum: 1,
-					pageSize: 20,
-				},
-				timespecifications: null,
-				pageResult: [], //列表数据
-				/* 搜索框配置 */
-				shape: 'round',
-				clearabled: true,
-				showAction: true,
-				inputAlign: 'left',
-				/* 搜索框配置 */
-				//状态筛选list
-				statusList: [{
-						label: '报价中',
-						value: 0,
-						color: "#1E9600"
-					},
-					{
-						label: '待核保',
-						value: 1,
-						color: "#f5af19"
-					},
-					{
-						label: '已核保待缴费',
-						value: 2,
-						color: "#f12711"
-					},
-					{
-						label: '已承保',
-						value: 3,
-						color: "#86A8E7"
-					},
-					{
-						label: '核保退回',
-						value: 4,
-						color: "#bdc3c7"
-					}
-				],
-				//日期筛选list
-				dateList: [{
-						label: '全部',
-						value: 0,
-					},
-					{
-						label: '一周内',
-						value: 1,
-					},
-					{
-						label: '一个月内',
-						value: 2,
-					},
-					{
-						label: '三个月内',
-						value: 3,
-					},
-					{
-						label: '六个月内',
-						value: 4,
-					},
-
-				],
-				typeArray: [{
-						label: '车险',
-						value: 0,
-					},
-					{
-						label: '意外险',
-						value: 1,
-					},
-					{
-						label: '寿险',
-						value: 2,
-					}
-				], //订单的类型
-				toTopFlag: false, //显示回到顶部按钮
-				queryLicenseNo: "",
-				queryFrameNo: "",
-				insureMore: false,
-				insureMoreIndex: null,
-				esmInsCompanyList: [],
-
-			}
-		},
-		computed: {
-			...mapState(['userInfo', 'typeIndex', 'stageIndex'])
-		},
-
-		// 页面触底加载
-		onReachBottom() {
-			this.currentPage = this.currentPage + 1;
-			if (this.totalPages >= this.currentPage) {} else {
-				return false;
-			}
-		},
-		// 页面滚动触发
-		onPageScroll(e) { //根据距离顶部距离是否显示回到顶部按钮
-			if (e.scrollTop > 600) { //当距离大于600时显示回到顶部按钮
-				this.toTopFlag = true
-			} else { //当距离小于600时显示回到顶部按钮
-				this.toTopFlag = false
-			}
-		},
-		onShow() {
-			const arr = uni.getStorageSync('historyInfo');
-			if (arr) {
-				uni.removeStorageSync('historyInfo');
-			}
-			this.getOrdersList()
-			this.esmInsCompany()
-		},
-		async onLoad(e) {
-			this.pageRequest.userId = this.userInfo.sysUser.id;
-			this.pageRequest.deptId = this.userInfo.sysUser.deptId;
-			this.getOrdersList()
-
-		},
-		methods: {
-			...mapMutations(['setOrderType', 'setOrderStage']),
-			async getOrdersList() {
-				let res = await this.$http.post('/insurance/order/queryPageOrder', this.pageRequest);
-				if (res.code == '200') {
-					this.pageResult = res.data.content;
-				}
-			},
-			async esmInsCompany() {
-				let commpanykad = await this.$http.get('/insurance/order/getAgreementInsCompany');
-				if (commpanykad.code == '200') {
-					this.esmInsCompanyList = commpanykad.data;
-				}
-			},
-			//展开
-			selectMore(val) {
-				this.insureMore = true;
-				this.insureMoreIndex = val;
-			},
-			packup(val) {
-				this.insureMore = false;
-				this.insureMoreIndex = val;
-			},
-			//取消事件
-			closeDropdown() {
-				this.$refs.uDropdown.close();
-			},
-			//查询事件
-			querysearch() {
-				this.getOrdersList();
-				this.$refs.uDropdown.close();
-			},
-			//状态筛选
-			statusclick(e) {
-				this.pageRequest.orderStatus = e;
-			},
-			//保险公司筛选
-			companystatusclick(e) {
-				this.pageRequest.companyId = e;
-			},
-			startShowmethod() {
-				this.startShow = true;
-				this.timespecifications = null;
-			},
-			endShowmethod() {
-				this.endShow = true;
-				this.timespecifications = null;
-			},
-			//日期筛选
-			dateclick(e) {
-				/* 0:全部  1:一周内 2:一个月内 3:三个月内  4:六个月内*/
-				switch (e) {
-					case 0:
-						this.pageRequest.startDate = "";
-						this.pageRequest.endDate = "";
-						break;
-					case 1:
-						this.pageRequest.startDate = this.transformTime(7);
-						this.pageRequest.endDate = this.transformTime();
-						break;
-					case 2:
-						this.pageRequest.startDate = this.transformTime1(1);
-						this.pageRequest.endDate = this.transformTime();
-						break;
-					case 3:
-						this.pageRequest.startDate = this.transformTime1(3);
-						this.pageRequest.endDate = this.transformTime();
-						break;
-					case 4:
-						this.pageRequest.startDate = this.transformTime1(6);
-						this.pageRequest.endDate = this.transformTime();
-						break;
-					default:
-				}
-				this.timespecifications = e;
-			},
-			startconfirm(e) {
-				this.pageRequest.startDate = e.year + '-' + e.month + '-' + e.day;
-			},
-			endconfirm(e) {
-				this.pageRequest.endDate = e.year + '-' + e.month + '-' + e.day;
-			},
-			//验证车架号
-			isFrameno(str) {
-				let mPattern = /^([0-9A-Z]){17}$/;
-				return mPattern.test(str);
-			},
-			isCarBrand(str) {
-				let mPattern = /^[京津沪渝冀豫云辽黑湘皖鲁新苏浙赣鄂桂甘晋蒙陕吉闽贵粤青藏川宁琼A-Z]{1}[A-Z]{1}[A-Z0-9]{4,5}([A-Z0-9挂学警港澳使领]{1}|应急)$/ ||
-					/^沪[0-9A-Z]{5}$/ || /^陆丰[0-9A-Z]{4}临$/;
-				return mPattern.test(str.trim())
-				// return /^陆丰[0-9A-Z]{4}临$/.test(str.trim())
-			},
-			//查看子订单
-			async querydetail(val) {
-				let params = {
-					orderno: val.orderno,
-					insuredname: val.insuredname,
-					licenseno: val.licenseno,
-					modelcname: val.carinfo.modelcname,
-				}
-				uni.navigateTo({
-					url: `/pages/orders/subOrders?orderno=${JSON.stringify(params)}`
-				})
-			},
-			//报价历史
-			quotehistory(val) {
-				let params = {
-					orderno: val.orderno,
-					insuredname: val.insuredname,
-					licenseno: val.licenseno,
-					modelcname: val.carinfo.modelcname,
-				}
-				uni.navigateTo({
-					url: `/pages/orders/quoteHistory?orderno=${JSON.stringify(params)}`
-				})
-			},
-			//编辑
-			CloseEdit(val) {
-				uni.navigateTo({
-					url: "/pages/carInsure1/quote1?orderno=" + val
-				})
-				// this.navigate({
-				// 	url: '/pages/carInsure1/quote1',
-				// 	success: (res) => {
-				// 		res.eventChannel.emit("acceptData", {
-				// 			carInfo: val.carinfo, //车辆信息
-				// 			ownerInfo: val.ownerinfo, //车主信息
-				// 			policyHolderInfo: val.applyinfo, //
-				// 			insuredPersonInfo: val.insureinfo,
-				// 			riskList: val.risk,
-				// 			kindList: val.king,
-				// 			orderno: val.orderno, //车辆
-				// 			quoteno: val.quoteno, //车主
-				// 			vehicleAndVesselTaxForm: val.vehicleAndVesselTax, //车船税
-
-				// 		})
-				// 	}
-				// }, "navigateTo", true);
-			},
-			//回车搜索事件
-			search(val) {
-				this.getOrdersList();
-			},
-			//搜索按钮事件
-			custom(val) {
-				this.getOrdersList();
-			},
-			//搜索框清除事件
-			clear(val) {
-
-			},
-			//关闭订单后查询
-			closeOrders() {
-				this.totalSize = 0;
-				this.ordersList = []; //获取到的订单列表
-				this.currentPage = 1; //当前的页数
-				this.totalPages = 1; //总共的页数
-			},
-			//当前时间
-			transformTime(day) {
-				var date = new Date();
-				date.setFullYear(date.getFullYear());
-				date.setTime(date.getTime());
-				var strYear = date.getFullYear();
-				var strDay = day ? date.getDate() - day : date.getDate();
-				var strMonth = date.getMonth() + 1;
-				if (strMonth < 10) {
-					strMonth = "0" + strMonth;
-				}
-				if (strDay < 10) {
-					strDay = "0" + strDay;
-				}
-				var datastr = strYear + "-" + strMonth + "-" + strDay;
-				return datastr;
-			},
-			transformTime1(month) {
-				var date = new Date();
-				date.setFullYear(date.getFullYear());
-				date.setTime(date.getTime());
-				var strYear = date.getFullYear();
-				var strDay = date.getDate();
-				var strMonth = month ? (date.getMonth() + 1) - month : date.getMonth() + 1;
-				if (strMonth < 10) {
-					strMonth = "0" + strMonth;
-				}
-				if (strDay < 10) {
-					strDay = "0" + strDay;
-				}
-				var datastr = strYear + "-" + strMonth + "-" + strDay;
-				return datastr;
-			},
-		}
-	}
-</script>
-<style>
-	page {
-		background-color: #f2f2f2;
-	}
-</style>
-<style lang="scss" scoped>
-	@import '@/style/mixin.scss';
-
-	/deep/ uni-tabbar .uni-tabbar-bottom {
-		position: fixed;
-		left: 0;
-		right: 0;
-		bottom: 0;
-	}
-
-	/deep/ .u-action[data-v-1a326067] {
-		color: #FFFFFF;
-	}
-
-	/deep/ .u-dropdown__menu__item__arrow[data-v-01c0c507] uni-text {
-		color: #FFFFFF !important;
-	}
-
-
-
-	.parent {}
-
-
-	.search {
-		padding: 10px;
-
-	}
-
-	.slot-content1 {
-		background-color: #FFFFFF;
-		padding: 24rpx;
-	}
-
-	.title {
-		font-weight: bold;
-		color: #333;
-	}
-
-	.status-data {
-		padding: 4px 10px;
-		box-sizing: border-box;
-		margin: 0 7px 7px 0;
-		font-size: 15px;
-		border: 1px solid #eee;
-		border-radius: 5px;
-		cursor: pointer;
-
-	}
-
-	.active {
-		background: rgba(234, 142, 45, 0.08);
-		color: #ff9556;
-		border: 1px solid rgba(234, 85, 45, 0.01);
-		font-weight: 700;
-	}
-
-	.white {
-		background-color: white;
-	}
-
-	.orderItemPane {
-		background-color: white;
-		width: 100%;
-		height: auto;
-		margin: 10px 0;
-		border-radius: 10px;
-		box-shadow: 0 0 6px 1px #e3e3e3;
-		// padding: 10px 10px 0 10px;
-		cursor: pointer;
-	}
-
-	.orderItemPane .orderItemPane-centre,
-	.orderItemPane .orderItemPane-upper .upper-time,
-	.inscommny-sum>text {
-		color: #999;
-	}
-
-	.orderItemPane-centre .status,
-	.inscommny-sum>text text {
-		color: #ff9000;
-		font-weight: bold;
-	}
-
-	.orderItemPane-centre .item {
-		border-bottom: 1px solid #f2f2f2;
-
-	}
-
-	.orderItemPane-centre .item>text,
-	.inscommny-sum>text {
-		margin: 0 10px 4px 10px;
-		font-size: 14px;
-	}
-
-	.orderItemPane-below {
-		height: auto;
-		border-bottom: 1px solid #f2f2f2;
-
-		&>button {
-			margin-left: 10px;
-		}
-	}
-
-
-	.orderItemPane-extend .extend-button>text {
-		color: #ff9000;
-		font-size: 12px;
-	}
-
-	.orderItemPane-extend {
-		border-bottom-right-radius: 10px;
-		border-bottom-left-radius: 10px;
-	}
-
-	.classes::before {
-		content: "·";
-		color: #ff9000;
-		margin-right: 10px;
-	}
-
-	.flexd {
-		position: fixed;
-		left: 0;
-		right: 0;
-	}
-
-	.moosize {
-		font-size: 12px;
-	}
-
-	.color {
-		color: #ff9000;
-	}
-
-	/* 查询区域End */
-</style>

+ 0 - 517
pages/orders/quotation.vue

@@ -1,517 +0,0 @@
-<template>
-	<view style="background-color: #ea552d;height: 100vh;">
-		<view class="page dis f-c a-c" id="panelcanvas">
-			<view class="Basic-information dis f-c" style="background: bisque;border-radius: 0;">
-				<view class=" dis a-c j-c" style="padding: 4px;">
-					<image :src="logoimg" mode="" style="width: 30px;height: 30px;">
-					</image>
-					<text style="font-weight: bold;margin-left: 6px;">{{dataInfo.inscompany}}报价单</text>
-				</view>
-			</view>
-			<view class="Basic-information dis f-c" style="border-top-right-radius: 0;border-top-left-radius: 0;">
-				<view class="basic-logo dis a-c">
-					<image :src="caricon" mode=""></image>
-					<view class="dis f-c">
-						<text>{{dataInfo.licenseno}}</text>
-						<text>{{carinfo.modelcname}}</text>
-					</view>
-				</view>
-				<view class="basic-data dis f-c">
-					<view class="arrange ">
-						<text>订单号:</text>
-						<text>{{dataInfo.orderno}}</text>
-					</view>
-					<view class="arrange ">
-						<text>车主姓名:</text>
-						<text>{{ownerinfo.name}}</text>
-					</view>
-					<view class="arrange ">
-						<text>投保人姓名:</text>
-						<text>{{applyinfo.name}}</text>
-					</view>
-					<view class="arrange ">
-						<text>被保人姓名:</text>
-						<text>{{insureinfo.name}}</text>
-					</view>
-					<view class="arrange ">
-						<text>发动机号:</text>
-						<text>{{carinfo.engineNo}}</text>
-					</view>
-					<view class="arrange ">
-						<text>车架号:</text>
-						<text>{{carinfo.vinNo}}</text>
-					</view>
-					<view class="arrange ">
-						<text>座位数:</text>
-						<text>{{carinfo.seatCount}}</text>
-					</view>
-					<view class="arrange " v-if="dataInfo.jqstartdate">
-						<text>交强投保时间:</text>
-						<text>{{ dataInfo.jqstartdate }}</text>
-					</view>
-					<view class="arrange " v-if="dataInfo.systartdate">
-						<text>商业投保时间:</text>
-						<text>{{ dataInfo.systartdate }}</text>
-					</view>
-				</view>
-			</view>
-			<view class="Basic-information Circle Circle1" style="padding-bottom: 10px;">
-				<view class="bjdCarSum dis j-s ">
-					<text>应缴金额</text>
-					<text style="color:rgb(255, 30, 7)">¥{{dataInfo.sumpremium}}</text>
-				</view>
-				<view class="bjdCarSum dis j-s " v-if="dataInfo.jqpremium">
-					<text>交强险</text>
-					<text>¥{{dataInfo.jqpremium}}</text>
-				</view>
-				<view class="bjdCarSum dis j-s " v-if="dataInfo.taxamount">
-					<text>车船税</text>
-					<text>¥{{dataInfo.taxamount}}</text>
-				</view>
-				<view class="bjdCarSum dis j-s " v-if="dataInfo.jypremium">
-					<text>驾意险</text>
-					<text>¥{{dataInfo.jypremium}}</text>
-				</view>
-				<view class="bjdCarSum dis j-s " v-if="dataInfo.sypremium">
-					<text>商业险</text>
-					<text>¥{{dataInfo.sypremium}}</text>
-				</view>
-				<view class="bjdCarSum dis j-s " v-if="dataInfo.jqdiscountrate">
-					<text>交强险优惠比例</text>
-					<text>{{dataInfo.jqdiscountrate}}%</text>
-				</view>
-				<view class="bjdCarSum dis j-s " v-if="dataInfo.sydiscountrate">
-					<text>商业险优惠比例</text>
-					<text>{{dataInfo.sydiscountrate}}%</text>
-				</view>
-				<view class="coverage dis j-s f-c" style="border: none;" v-if="dataInfo.sypremium">
-					<view class="coverage-title dis">
-						<view style="">
-							<text>商业险金额</text>
-						</view>
-						<view>
-							<text>保险金额</text>
-						</view>
-						<view>
-							<text>保费</text>
-						</view>
-					</view>
-					<view class="coverage-sum dis j-s" v-for="(item,index) in dataInfo.kindinfo" :key="index">
-						<view style="">
-							<text>{{item.kindName}}</text>
-						</view>
-						<view v-if="['D4', 'SY_FJ_YBW2'].includes(item.kindCode)">
-							<text>{{item.unitAmount}}/座*{{dataInfo.carinfo.seatCount-1}}</text>
-						</view>
-						<view v-else-if="['MJ1', 'MJ2', 'MJ3', 'MJ4'].includes(item.kindCode)">
-							<text>{{item.deductibleRate}}</text>
-						</view>
-						<view v-else-if="['TY1', 'TY2', 'TY3', 'TY4'].includes(item.kindCode)">
-							<text>{{item.serviceTimes}}/次</text>
-						</view>
-						<view v-else>
-							<text>{{item.amount}}</text>
-						</view>
-						<view>
-							<text>¥{{item.coveragePremium}}</text>
-						</view>
-					</view>
-				</view>
-			</view>
-
-
-		</view>
-		<view class="infoBottom d-flex a-center j-center j-sb">
-			<button type="default" class="d-flex a-center j-center" @tap="sendPayCode">发送到微信</button>
-		</view>
-	</view>
-
-	</view>
-</template>
-
-<script>
-	import {
-		pathToBase64,
-		base64ToPath
-	} from '@/common/pdf.js'
-	export default {
-		data() {
-			return {
-				payImg: "",
-				posterUrl: "",
-				caricon: "", //carlogo
-				show: false,
-				companyId: "",
-				dataInfo: {},
-				carinfo: {}, //车辆信息
-				ownerinfo: {}, //车主信息
-				applyinfo: {}, //投保人信息
-				insureinfo: {}, //被保人信息
-
-				logoimg: "",
-			}
-		},
-		async onLoad(options) {
-			this.companyId = options.companyId;
-			let params = {
-				companyId: options.companyId
-			};
-			let res = await this.$http.post('/insurance/order/getByCompanyId', params);
-			var data = res.data;
-			data.kindinfo.map((ele, index) => {
-				switch (ele.kindCode) {
-					case "A":
-						if (ele.amount == 1) {
-							ele.amount = "投保"
-						} else {
-							ele.amount = ele.amount
-						}
-						break;
-					case "D4":
-					case "SY_FJ_YBW2":
-						ele.unitAmount = this.toChinesNum(ele.unitAmount);
-						break;
-					case "MJ1":
-					case "MJ2":
-					case "MJ3":
-					case "MJ4":
-						ele.deductibleRate = ele.deductibleRate + "%";
-						break;
-					default:
-						ele.amount = this.toChinesNum(ele.amount);
-				}
-				return ele;
-			});
-			this.$base.insCompanyList.map(ele => {
-				if (ele.name == data.inscompany) {
-					uni.getImageInfo({
-						src: ele.icon,
-						success: image => {
-							pathToBase64(image.path)
-								.then(base64 => {
-									this.logoimg = base64;
-								})
-								.catch(error => {});
-						},
-						fail: err => {}
-					});
-				}
-				return ele;
-			})
-			this.dataInfo = data;
-			this.carinfo = data.carinfo;
-			this.ownerinfo = data.ownerinfo;
-			this.applyinfo = data.applyinfo;
-			this.insureinfo = data.insureinfo;
-			uni.getImageInfo({
-				src: '../../static/icon/bjdcar.png',
-				success: image => {
-					pathToBase64(image.path)
-						.then(base64 => {
-							this.caricon = base64
-						})
-						.catch(error => {});
-				},
-
-			});
-		},
-		methods: {
-			//本地图片转换成base64
-			turnBase64Image() {
-				this.
-				uni.getImageInfo({
-					src: img,
-					success: image => {
-						pathToBase64(image.path)
-							.then(base64 => {
-								this[key] = base64;
-							})
-							.catch(error => {});
-					},
-					fail: err => {}
-				});
-			},
-			toChinesNum(num) {
-				let overWan = Math.floor(num / 10000);
-				let result = overWan + "万";
-				return result;
-			},
-			//分享图片到微信
-			sendPayCode() {
-				if (this.payImg) {
-					uni.share({
-						provider: "weixin",
-						scene: "WXSceneSession",
-						type: 2,
-						imageUrl: this.payImg
-					})
-				}
-			},
-			//页面截图转路径
-			receiveRenderData(val) {
-				this.posterUrl = val.replace(/[\r\n]/g, ''); // 去除base64位中的空格
-				const imageStr = this.posterUrl;
-				// 将base64转化为临时地址
-				base64ToPath(imageStr).then(path => {
-					this.payImg = path
-				}).catch(error => {});
-			},
-			showLoading() {
-				uni.showLoading({
-					title: '正在生成图片'
-				});
-			},
-
-			hideLoading() {
-				uni.hideLoading();
-			},
-		},
-	}
-</script>
-<script module="canvasImage" lang="renderjs">
-	import html2canvas from 'html2canvas'
-	export default {
-		data() {
-			return {
-
-			}
-		},
-		mounted() {
-			// #ifdef APP-PLUS
-			setTimeout(() => {
-				this.canvasImage.generateImage()
-			}, 1000);
-			// #endif
-
-
-		},
-		methods: {
-			// #ifdef APP-PLUS
-			generateImage() {
-				setTimeout(() => {
-					this.$ownerInstance.callMethod('showLoading')
-					const dom = document.getElementById('panelcanvas') // 需要生成图片内容的 dom 节点
-					html2canvas(dom, {
-						width: dom.clientWidth, //dom 原始宽度
-						height: dom.clientHeight,
-						scrollY: 0, // html2canvas默认绘制视图内的页面,需要把scrollY,scrollX设置为0
-						scrollX: 0,
-						useCORS: true, //支持跨域
-						// allowTaint: false,
-						scale: 2, // 设置生成图片的像素比例,默认是1,如果生成的图片模糊的话可以开启该配置项
-					}).then((canvas) => {
-						// 生成成功
-						this.$ownerInstance.callMethod('hideLoading')
-						this.$ownerInstance.callMethod('receiveRenderData', canvas.toDataURL('image/png'))
-					}).catch(err => {
-						// 生成失败 弹出提示弹窗
-						this.$ownerInstance.callMethod('_errAlert', `【生成图片失败,请重试】${err}`)
-					})
-				}, 300)
-			}
-			// #endif
-		},
-	}
-</script>
-<style lang="scss" scoped>
-	@import '@/style/mixin.scss';
-
-	.page {
-		background-color: rgba(234, 85, 45, 1);
-		padding: 20px 10px 100px 10px;
-		box-sizing: border-box;
-	}
-
-
-	.Basic-information {
-		background-color: white;
-		width: 100%;
-		height: auto;
-
-		.basic-logo {
-			padding: 10px 16px;
-			border-bottom: 1px solid #f2f2f2;
-
-			image {
-				width: 50px;
-				height: 50px;
-				margin-right: 20px;
-			}
-
-			text {
-				font-size: 12px;
-			}
-
-			text:first-child {
-				font-weight: bold;
-				font-size: 18px;
-			}
-		}
-
-		.basic-data {
-			padding: 16px;
-
-			.arrange {
-				margin: 4px 0;
-				font-size: 14px;
-
-				text:first-child {
-					font-weight: bold;
-					margin-right: 5px;
-				}
-
-				text:last-child {
-					color: #606266;
-				}
-
-				&::before {
-					content: "·";
-					color: #606266;
-					margin-right: 10px;
-					font-weight: bold;
-				}
-
-			}
-		}
-
-		.bjdCarSum {
-			padding: 10px 16px;
-			border-bottom: 1px solid #f2f2f2;
-			font-weight: bold;
-			font-size: 14px;
-		}
-
-		.coverage {
-			padding: 10px 16px;
-
-			.coverage-title {
-				width: 100%;
-
-				view:first-child {
-					border-top-left-radius: 8px;
-				}
-
-				view:last-child {
-					border-top-right-radius: 8px;
-				}
-
-				view:nth-child(2) {
-					border-left: none;
-					border-right: none;
-				}
-
-				view {
-					width: 33.33%;
-					text-align: center;
-					background: #ff8f63;
-					color: #fff;
-					padding: 6px 16px;
-					border: 1px solid #fff;
-					font-size: 12px;
-					box-sizing: border-box;
-				}
-
-			}
-
-			.coverage-sum {
-				width: 100%;
-
-				view:nth-child(2) {
-					border-left: none;
-					border-right: none;
-				}
-
-				view {
-					width: 33.33%;
-					text-align: center;
-					font-size: 12px;
-					background-color: #fbf6f7;
-					padding: 6px 16px;
-					border: 1px solid #fff;
-					border-top: none;
-				}
-			}
-		}
-
-	}
-
-	.Circle {
-		position: relative;
-
-		&::before {
-			display: block;
-			content: "";
-			position: absolute;
-			width: 20px;
-			height: 20px;
-			background: rgba(234, 85, 45, 1);
-			top: -10px;
-			left: -10px;
-			border-radius: 50%;
-		}
-
-		&::after {
-			content: "";
-			position: absolute;
-			width: 20px;
-			height: 20px;
-			background: rgba(234, 85, 45, 1);
-			top: -10px;
-			right: -10px;
-			border-radius: 50%;
-		}
-
-	}
-
-	.footer-button {
-		z-index: 9999;
-		margin-top: 20px;
-		position: fixed;
-		bottom: 0;
-		width: 100%;
-		background: white;
-		padding: 10px 20px;
-
-		button {
-			width: 70%;
-			cursor: pointer;
-		}
-	}
-
-	.tip {
-		width: 100%;
-		background-color: #fff;
-		border-radius: 10upx;
-		font-size: 32upx;
-		font-weight: bold;
-		margin: 0 auto;
-		padding: 20px;
-		box-sizing: border-box;
-		position: fixed;
-		bottom: 0;
-	}
-
-	/* 底部的样式Start */
-	.infoBottom {
-		height: 140upx;
-		position: fixed;
-		bottom: 0;
-		left: 0;
-		right: 0;
-		background: #ea552d;
-		border-top: 1upx solid #ea552d;
-		z-index: 99;
-		margin-top: 100px;
-	}
-
-	.infoBottom>button {
-		// font-size: 30upx;
-		background: #fff;
-		color: #333;
-		flex: 1;
-		margin: 0upx 30px;
-		font-weight: bold;
-	}
-
-	/* 底部的样式End */
-</style>

+ 0 - 477
pages/orders/quotation1.vue

@@ -1,477 +0,0 @@
-<template>
-	<view>
-		<view class="page dis f-c a-c" id="panelcanvas">
-			<view class="quotation-header dis a-c">
-				<image :src="caricon" class="image-icon" mode=""></image>
-				<view class="dis f-c j-c">
-					<text>{{dataInfo.licenseno}}</text>
-					<text>{{carinfo.modelcname}}</text>
-				</view>
-			</view>
-			<view class="quotation-data">
-				<view class="circulate-impany dis a-c">
-					<image :src="logoimg" mode="" style="width: 30px;height: 30px;">
-					</image>
-					<text>{{dataInfo.inscompany}}报价单</text>
-				</view>
-				<view class="circulate-data dis a-c">
-					<text>订单号:</text>
-					<text>{{dataInfo.orderno}}</text>
-				</view>
-				<view class="circulate-data dis a-c">
-					<text>车主姓名:</text>
-					<text>{{ownerinfo.name}}</text>
-				</view>
-				<view class="circulate-data dis a-c">
-					<text>投保人姓名:</text>
-					<text>{{applyinfo.name}}</text>
-				</view>
-				<view class="circulate-data dis a-c">
-					<text>被保人姓名:</text>
-					<text>{{insureinfo.name}}</text>
-				</view>
-				<view class="circulate-data dis a-c">
-					<text>发动机号:</text>
-					<text>{{carinfo.engineNo}}</text>
-				</view>
-				<view class="circulate-data dis a-c">
-					<text>车架号:</text>
-					<text>{{carinfo.vinNo}}</text>
-				</view>
-				<view class="circulate-data dis a-c">
-					<text>座位数:</text>
-					<text>{{carinfo.seatCount}}</text>
-				</view>
-				<view class="circulate-data dis a-c " v-if="dataInfo.jqstartdate">
-					<text>交强投保时间:</text>
-					<text>{{ dataInfo.jqstartdate }}</text>
-				</view>
-				<view class="circulate-data dis a-c " v-if="dataInfo.systartdate">
-					<text>商业投保时间:</text>
-					<text>{{ dataInfo.systartdate }}</text>
-				</view>
-				<view class="coverage dis j-s f-c" style="border: none;" v-if="dataInfo.sypremium">
-					<view class="coverage-title dis">
-						<view style=" width: 46%;">
-							<text>商业险金额</text>
-						</view>
-						<view style=" width: 27%;">
-							<text>保险金额</text>
-						</view>
-						<view style=" width: 27%;">
-							<text>保费</text>
-						</view>
-					</view>
-					<view class="coverage-sum dis j-s" v-for="(item,index) in dataInfo.kindinfo" :key="index">
-						<view style=" width: 46%;">
-							<text>{{item.kindName}}</text>
-						</view>
-						<view v-if="['D4', 'SY_FJ_YBW2'].includes(item.kindCode)">
-							<text>{{item.unitAmount}}/座*{{dataInfo.carinfo.seatCount-1}}</text>
-						</view>
-						<view v-else-if="['MJ1', 'MJ2', 'MJ3', 'MJ4'].includes(item.kindCode)">
-							<text>{{item.deductibleRate}}</text>
-						</view>
-						<view v-else-if="['TY1', 'TY2', 'TY3', 'TY4'].includes(item.kindCode)">
-							<text>{{item.serviceTimes}}/次</text>
-						</view>
-						<view v-else>
-							<text>{{item.amount}}</text>
-						</view>
-						<view>
-							<text>¥{{item.coveragePremium}}</text>
-						</view>
-					</view>
-				</view>
-				<view class="circulate-sum dis f-c ">
-					<view class=" dis j-s " v-if="dataInfo.jqpremium">
-						<view>交强险:</view>
-						<view>¥{{dataInfo.jqpremium}}</view>
-					</view>
-					<view class=" dis j-s " v-if="dataInfo.taxamount">
-						<view>车船税:</view>
-						<view>¥{{dataInfo.taxamount}}</view>
-					</view>
-					<view class=" dis j-s " v-if="dataInfo.jypremium">
-						<view>驾意险:</view>
-						<view>¥{{dataInfo.jypremium}}</view>
-					</view>
-					<view class=" dis j-s " v-if="dataInfo.sypremium">
-						<view>商业险:</view>
-						<view>¥{{dataInfo.sypremium}}</view>
-					</view>
-					<view class=" dis j-s " v-if="dataInfo.jqdiscountrate">
-						<view>交强险优惠比例:</view>
-						<view>{{dataInfo.jqdiscountrate}}%</view>
-					</view>
-					<view class=" dis j-s " v-if="dataInfo.sydiscountrate">
-						<view>商业险优惠比例:</view>
-						<view>{{dataInfo.sydiscountrate}}%</view>
-					</view>
-					<view class=" dis j-s ">
-						<view>应缴金额:</view>
-						<view style="color:#2D4D89;font-weight: 600;">¥{{dataInfo.sumpremium}}</view>
-					</view>
-				</view>
-			</view>
-		</view>
-		<view class=" dis a-c j-s" style="padding: 16px;">
-			<u-button type="primary" style="width: 100%;background: #2D4D89;" @click="sendPayCode">发送到微信</u-button>
-			<!-- <button type="default" @tap="sendPayCode">发送到微信</button> -->
-		</view>
-	</view>
-</template>
-
-<script>
-	import {
-		pathToBase64,
-		base64ToPath
-	} from '@/common/pdf.js'
-	export default {
-		data() {
-			return {
-				payImg: "",
-				posterUrl: "",
-				caricon: "", //carlogo
-				show: false,
-				companyId: "",
-				dataInfo: {},
-				carinfo: {}, //车辆信息
-				ownerinfo: {}, //车主信息
-				applyinfo: {}, //投保人信息
-				insureinfo: {}, //被保人信息
-
-				logoimg: "",
-			}
-		},
-		async onLoad(options) {
-			this.companyId = options.companyId;
-			let params = {
-				companyId: options.companyId
-			};
-			let res = await this.$http.post('/insurance/order/getByCompanyId', params);
-			var data = res.data;
-			data.kindinfo.map((ele, index) => {
-				switch (ele.kindCode) {
-					case "A":
-						if (ele.amount == 1) {
-							ele.amount = "投保"
-						} else {
-							ele.amount = ele.amount
-						}
-						break;
-					case "D4":
-					case "SY_FJ_YBW2":
-						ele.unitAmount = this.toChinesNum(ele.unitAmount);
-						break;
-					case "MJ1":
-					case "MJ2":
-					case "MJ3":
-					case "MJ4":
-						ele.deductibleRate = ele.deductibleRate + "%";
-						break;
-					default:
-						ele.amount = this.toChinesNum(ele.amount);
-				}
-				return ele;
-			});
-			this.$base.insCompanyList.map(ele => {
-				if (ele.name == data.inscompany) {
-					uni.getImageInfo({
-						src: ele.icon,
-						success: image => {
-							pathToBase64(image.path)
-								.then(base64 => {
-									this.logoimg = base64;
-								})
-								.catch(error => {});
-						},
-						fail: err => {}
-					});
-				}
-				return ele;
-			})
-			this.dataInfo = data;
-			this.carinfo = data.carinfo;
-			this.ownerinfo = data.ownerinfo;
-			this.applyinfo = data.applyinfo;
-			this.insureinfo = data.insureinfo;
-			uni.getImageInfo({
-				src: '../../static/icon/Group@2x.png',
-				success: image => {
-					pathToBase64(image.path)
-						.then(base64 => {
-							this.caricon = base64
-						})
-						.catch(error => {});
-				},
-
-			});
-		},
-		methods: {
-			//本地图片转换成base64
-			turnBase64Image() {
-				this.
-				uni.getImageInfo({
-					src: img,
-					success: image => {
-						pathToBase64(image.path)
-							.then(base64 => {
-								this[key] = base64;
-							})
-							.catch(error => {});
-					},
-					fail: err => {}
-				});
-			},
-			toChinesNum(num) {
-				let overWan = Math.floor(num / 10000);
-				let result = overWan + "万";
-				return result;
-			},
-			//分享图片到微信
-			sendPayCode() {
-				if (this.payImg) {
-					uni.share({
-						provider: "weixin",
-						scene: "WXSceneSession",
-						type: 2,
-						imageUrl: this.payImg
-					})
-				}
-			},
-			//页面截图转路径
-			receiveRenderData(val) {
-				this.posterUrl = val.replace(/[\r\n]/g, ''); // 去除base64位中的空格
-				const imageStr = this.posterUrl;
-				// 将base64转化为临时地址
-				base64ToPath(imageStr).then(path => {
-					this.payImg = path
-				}).catch(error => {});
-			},
-			showLoading() {
-				uni.showLoading({
-					title: '正在生成图片'
-				});
-			},
-
-			hideLoading() {
-				uni.hideLoading();
-			},
-		},
-	}
-</script>
-<script module="canvasImage" lang="renderjs">
-	import html2canvas from 'html2canvas'
-	export default {
-		data() {
-			return {
-
-			}
-		},
-		mounted() {
-			// #ifdef APP-PLUS
-			setTimeout(() => {
-				this.canvasImage.generateImage()
-			}, 1000);
-			// #endif
-
-
-		},
-		methods: {
-			// #ifdef APP-PLUS
-			generateImage() {
-				setTimeout(() => {
-					this.$ownerInstance.callMethod('showLoading')
-					const dom = document.getElementById('panelcanvas') // 需要生成图片内容的 dom 节点
-					html2canvas(dom, {
-						width: dom.clientWidth, //dom 原始宽度
-						height: dom.clientHeight,
-						scrollY: 0, // html2canvas默认绘制视图内的页面,需要把scrollY,scrollX设置为0
-						scrollX: 0,
-						useCORS: true, //支持跨域
-						// allowTaint: false,
-						scale: 2, // 设置生成图片的像素比例,默认是1,如果生成的图片模糊的话可以开启该配置项
-					}).then((canvas) => {
-						// 生成成功
-						this.$ownerInstance.callMethod('hideLoading')
-						this.$ownerInstance.callMethod('receiveRenderData', canvas.toDataURL('image/png'))
-					}).catch(err => {
-						// 生成失败 弹出提示弹窗
-						this.$ownerInstance.callMethod('_errAlert', `【生成图片失败,请重试】${err}`)
-					})
-				}, 300)
-			}
-			// #endif
-		},
-	}
-</script>
-<style lang="scss" scoped>
-	@import '@/style/mixin.scss';
-
-	.page {
-		padding: 10px 16px;
-		box-sizing: border-box;
-	}
-
-	.image-icon {
-		width: 45px;
-		height: 45px;
-	}
-
-	.quotation-header {
-		width: 100%;
-		height: 60px;
-		background: rgba(45, 77, 137, 0.06);
-		border-radius: 0px 0px 0px 0px;
-		border: 1px dashed rgba(45, 77, 137, 0.2);
-		padding: 10px;
-
-		>view {
-			padding: 10px;
-			margin-left: 25px;
-
-			text:first-child {
-				color: #232832;
-				font-weight: bold;
-				font-size: 14px;
-			}
-		}
-
-	}
-
-	.quotation-data {
-		width: 100%;
-		margin-top: 10px;
-		border: 1px solid #000000;
-
-		.circulate-impany {
-			height: 37px;
-			padding: 8px 6px;
-			background: rgba(45, 77, 137, 0.1);
-			border-bottom: 1px solid #000000;
-			font-weight: 700;
-		}
-
-		.circulate-data {
-			height: 37px;
-			color: #232832;
-			padding: 8px 6px;
-			border-bottom: 1px solid #000000;
-
-			text:first-child {
-				color: #232832;
-				font-weight: bold;
-				font-size: 14px;
-			}
-
-			text:last-child {
-				color: rgba(35, 40, 50, 0.8);
-				font-size: 14px;
-			}
-		}
-
-		.coverage {
-			.coverage-title {
-				width: 100%;
-
-				view:nth-child(1) {
-					border-left: none;
-					border-top: none;
-				}
-
-				view:nth-child(2) {
-					border-top: none;
-					border-left: none;
-					border-right: none;
-				}
-
-				view:nth-child(3) {
-					border-right: none;
-					border-top: none;
-				}
-
-				view {
-					text-align: center;
-					background: #F8F8F8;
-					color: #232832;
-					padding: 6px;
-					border: 1px solid #000;
-					font-size: 12px;
-					box-sizing: border-box;
-				}
-
-			}
-
-			.coverage-sum {
-				width: 100%;
-
-				view:nth-child(1) {
-					border-left: none;
-				}
-
-				view:nth-child(2) {
-					border-left: none;
-					border-right: none;
-					width: 27%;
-				}
-
-				view:nth-child(3) {
-					width: 27%;
-					border-right: none;
-				}
-
-				view {
-					text-align: center;
-					font-size: 12px;
-					background: #F8F8F8;
-					color: #232832;
-					padding: 6px;
-					border: 1px solid #000;
-					border-top: none;
-				}
-			}
-		}
-
-		.circulate-sum {
-			padding: 10px;
-
-			view {
-				view:nth-child(1) {
-					width: 70%;
-					text-align: end;
-				}
-
-				view:nth-child(2) {
-					width: 25%;
-					text-align: start;
-				}
-			}
-		}
-	}
-
-	.infoBottom {
-		height: 140upx;
-		position: fixed;
-		bottom: 0;
-		left: 0;
-		right: 0;
-		background: #ea552d;
-		border-top: 1upx solid #ea552d;
-		z-index: 99;
-		margin-top: 100px;
-	}
-
-	.infoBottom>button {
-		// font-size: 30upx;
-		background: #fff;
-		color: #333;
-		flex: 1;
-		margin: 0upx 30px;
-		font-weight: bold;
-	}
-
-
-
-	/* 底部的样式End */
-</style>

+ 0 - 422
pages/orders/quoteHistory.vue

@@ -1,422 +0,0 @@
-<template>
-	<view>
-		<view class="car-header dis a-c">
-			<view class="icon-radius">
-				<image src="../../static/icon/insurance.png" mode=""></image>
-			</view>
-			<view class="dis f-c head-name">
-				<text>{{licenseno}}</text>
-				<view class="name1">
-					<text style="margin-right: 10px;">{{insuredname}}</text>
-					<text>{{modelcname}}</text>
-				</view>
-			</view>
-		</view>
-		<view class="pdd" style="padding-top: 120px;">
-			<view class="sub-orders " v-for="(item,index) in sublist" :key="index">
-				<view v-if="item.orderstatus==2" class="triangle"></view>
-				<view class="orders-upper dis f-c">
-					<view class="dis a-end j-s">
-						<text class="strong">{{item.inscompany}}</text>
-						<text class="strong">{{item.createtime}}</text>
-					</view>
-				</view>
-				<view class="orders-centre dis f-c strong">
-					<view class="dis j-s a-c">
-						<text>¥{{item.sumpremium}}</text>
-						<view v-for="(statusitem,statusindex) in statusList" :key="statusindex"
-							v-if="item.orderstatus==statusitem.value" :style="{color:statusitem.color}">
-							{{statusitem.label}}
-						</view>
-					</view>
-					<view class="dis" style="font-size: 12px;color: #276D6F;">
-						<text v-if="item.jqpremium">交强险:¥{{item.jqpremium}}</text>
-						<text v-if="item.sypremium">商业险:¥{{item.sypremium}}</text>
-						<text>车船税:¥{{item.taxamount}}</text>
-						<text v-if="item.jypremium">驾意险:¥{{item.jypremium}}</text>
-					</view>
-					<view v-if="item.auditopinion" class="dis f-c" style="font-size: 12px;">
-						<text>审核意见</text>
-						<text>{{item.auditopinion}}</text>
-					</view>
-				</view>
-				<view class="orders-below dis j-end">
-					<u-button
-						v-if="item.orderstatus==2 && ['恒邦财险','安盛天平','中国人寿','众安财险','太平财险','紫金财险','永诚财险','国任财险','大家财险','华泰财险','中煤财险','华农财险'].includes(item.inscompany)"
-						size="mini" type="error" :plain="true" :hair-line="false" shape="circle"
-						@click="queryStatus(item.id,item.inscompany)">查询缴费状态</u-button>
-					<u-button v-if="item.orderstatus==2" size="mini" type="error" :plain="true" :hair-line="false"
-						shape="circle" @click="revokeCode(item.id)">撤销二维码</u-button>
-					<u-button v-if="item.orderstatus==4 && item.inscompany=='华泰财险'" size="mini" type="error"
-						:plain="true" :hair-line="false" shape="circle"
-						@click="underwritingCode(item.id)">核保状态查询</u-button>
-
-					<u-button v-if="item.orderstatus==2" size="mini" type="error" :plain="true" :hair-line="false"
-						shape="circle" @click="Payment(item.id)">付款码</u-button>
-					<u-button size="mini" type="primary" :plain="true" :hair-line="false" shape="circle"
-						@click="detial(item.id)">查看详情</u-button>
-				</view>
-			</view>
-		</view>
-
-
-	</view>
-</template>
-<script>
-	import store from '@/store';
-	import {
-		mapState,
-		mapMutations
-	} from "vuex"
-	export default {
-		data() {
-			return {
-				modelcname: "",
-				orderno: "",
-				insuredname: "",
-				licenseno: "",
-				sublist: [],
-				statusList: [{
-						label: '报价中',
-						value: 0,
-						color: "#1E9600"
-					},
-					{
-						label: '待核保',
-						value: 1,
-						color: "#f5af19"
-					},
-					{
-						label: '已核保待缴费',
-						value: 2,
-						color: "#f12711"
-					},
-					{
-						label: '已承保',
-						value: 3,
-						color: "#7F7FD5"
-					},
-					{
-						label: '核保退回',
-						value: 4,
-						color: "#bdc3c7"
-					}
-				],
-			}
-		},
-		computed: {
-			...mapState(['userInfo']),
-		},
-		onLoad(params) {
-			let item = JSON.parse(params.orderno);
-			this.orderno = item.orderno;
-			this.modelcname = item.modelcname;
-			this.insuredname = item.insuredname;
-			this.licenseno = item.licenseno;
-			this.querylist();
-		},
-		methods: {
-			async querylist() {
-				let params = {
-					orderNo: this.orderno,
-					orderStatus: ""
-				}
-				let res = await this.$http.post('/insurance/order/queryQuoteHistory', params)
-				this.sublist = res.data;
-			},
-			//查看详情
-			detial(id) {
-				uni.navigateTo({
-					url: "/pages/carInsure1/quoteDetail1?companyId=" + id
-				})
-			},
-			//付款码
-			Payment(id) {
-				let pro = this.userInfo.sysUser.managementSource;
-				if (pro == "3") {
-					uni.navigateTo({
-						url: "/pages/carInsure1/payCode2?companyId=" + id
-					})
-				} else {
-					uni.navigateTo({
-						url: "/pages/carInsure1/payCode1?companyId=" + id
-					})
-				}
-
-			},
-			//撤销二维码
-			async revokeCode(id) {
-				let res = await this.$http.post('/order/qrCode/destructionQrCode?areaCompanyId=' + id)
-				if (res.code == '200') {
-					uni.showToast({
-						title: res.msg,
-						icon: 'success',
-						duration: 1000
-					});
-					this.querylist();
-				} else {
-					uni.showToast({
-						title: res.msg,
-						icon: 'none',
-						duration: 1000
-					});
-				}
-			},
-			/** 缴费状态查询 */
-			async queryStatus(id, inscompany) {
-				switch (inscompany) {
-					case "紫金财险":
-						let zjres = await this.$http.post('/order/zijin/getOrderDetail', {
-							companyId: id
-						});
-						if (zjres.code == '200') {
-							uni.showToast({
-								title: zjres.msg,
-								icon: 'none',
-								duration: 2000
-							});
-							this.querylist();
-						} else {
-							uni.showToast({
-								title: zjres.msg,
-								icon: 'error',
-							});
-						}
-						break;
-					case "大家财险":
-						let djres = await this.$http.post('/api/dajia/verifyPayment', {
-							companyId: id
-						});
-						if (djres.code == '200') {
-							uni.showToast({
-								title: djres.msg,
-								icon: 'none',
-								duration: 2000
-							});
-							this.querylist();
-						} else {
-							uni.showToast({
-								title: djres.msg,
-								icon: 'error',
-							});
-						}
-						break;
-					case "华泰财险":
-						let htres = await this.$http.post('/order/huaTaiApi/paymentEnquiry', {
-							companyId: id
-						});
-						if (htres.code == '200') {
-							uni.showToast({
-								title: htres.msg,
-								icon: 'none',
-								duration: 2000
-							});
-							this.querylist();
-						} else {
-							uni.showToast({
-								title: htres.msg,
-								icon: 'error',
-							});
-						}
-						break;
-					case "永诚财险":
-						let ycres = await this.$http.get('/api/yongCheng/orderStatusBySuborderId/' + id);
-						if (ycres.code == '200') {
-							uni.showToast({
-								title: ycres.msg,
-								icon: 'none',
-								duration: 2000
-							});
-							this.querylist();
-						} else {
-							uni.showToast({
-								title: ycres.msg,
-								icon: 'error',
-							});
-						}
-						break;
-					case "国任财险":
-						let grres = await this.$http.post('/api/guoRen/updateOrderInfo', {
-							companyId: id
-						});
-						if (grres.code == '200') {
-							uni.showToast({
-								title: grres.msg,
-								icon: 'none',
-								duration: 2000
-							});
-							this.querylist();
-						} else {
-							uni.showToast({
-								title: grres.msg,
-								icon: 'error',
-							});
-						}
-						break;
-					case "中煤财险":
-						let zmres = await this.$http.post('/order/zhongMeiApi/paymentEnquiry', {
-							companyId: id
-						});
-						if (zmres.code == '200') {
-							uni.showToast({
-								title: zmres.msg,
-								icon: 'none',
-								duration: 2000
-							});
-							this.querylist();
-						} else {
-							uni.showToast({
-								title: zmres.msg,
-								icon: 'error',
-							});
-						}
-						break;
-					default:
-						let pythonres = await this.$http.post('/insurance/crawler/verifyPayment', {
-							subOrderNo: id
-						});
-						if (pythonres.code == '200') {
-							uni.showToast({
-								title: pythonres.msg,
-								icon: 'none',
-								duration: 2000
-							});
-							this.querylist();
-						} else {
-							uni.showToast({
-								title: pythonres.msg,
-								icon: 'error',
-							});
-						}
-						break;
-				}
-			},
-			/** 华泰核保状态查询 */
-			async underwritingCode(id) {
-				let params = {
-					companyId: id,
-				}
-				let res = await this.$http.post('/order/huaTaiApi/auditStatusQuery', params)
-				if (res.code == '200') {
-					uni.showToast({
-						title: res.msg,
-						icon: 'success',
-						duration: 1000
-					});
-					this.querylist();
-				} else {
-					uni.showToast({
-						title: res.msg,
-						icon: 'none',
-						duration: 1000
-					});
-				}
-			},
-
-		}
-	}
-</script>
-<style>
-	page {
-		background: #f2f2f2;
-	}
-</style>
-<style lang="scss" scoped>
-	.triangle {
-		width: 0;
-		height: 0;
-		border-right: 60px solid transparent;
-		border-top: 30px solid #f12711;
-		position: absolute;
-		top: 0;
-		left: 0;
-		border-top-left-radius: 6px;
-	}
-
-	.car-header {
-		width: 100%;
-		height: auto;
-		background: linear-gradient(to right, #ede574, #e1f5c4);
-		padding: 20px;
-		box-sizing: border-box;
-		position: fixed;
-		z-index: 99;
-
-		.icon-radius {
-			width: 70px;
-			height: 70px;
-			background: white;
-			border-radius: 50%;
-			box-shadow: 0 0 4px 1px #999;
-			padding: 12px;
-			margin-right: 20px;
-
-			image {
-				width: 100%;
-				height: 100%;
-			}
-		}
-
-		.head-name {
-			&>text {
-				font-weight: bold;
-				font-size: 20px;
-			}
-
-			.name1 text {
-				font-weight: bold;
-			}
-		}
-	}
-
-	.sub-orders {
-		width: 100%;
-		background: white;
-		border-radius: 6px;
-		padding: 20px;
-		box-shadow: 0 0 4px 1px #dfdfdf;
-		padding-bottom: 0;
-		margin-bottom: 10px;
-		position: relative;
-
-		.orders-upper {
-			view {
-				&>text:first-child {
-					margin-right: 10px;
-				}
-
-				&>text:last-child {
-					font-size: 12px;
-				}
-			}
-		}
-
-		.orders-centre {
-			color: #ff9000;
-			padding: 10px 0;
-			border-bottom: 2px dashed #dfdfdf;
-
-			.dis {
-				& text {
-					margin-right: 5px;
-				}
-			}
-		}
-
-		.orders-below {
-			padding: 10px 0;
-
-			& button {
-				margin-left: 10px;
-			}
-		}
-	}
-
-	.pdd {
-		padding: 10px;
-	}
-
-	.strong {
-		font-weight: bold;
-	}
-</style>

+ 10 - 1
pages/orders1/paymentCode.vue

@@ -203,7 +203,16 @@
 								break;
 							case 2:
 							case '2':
-								this.paycodeimg = res.data.qrCodeUrl;
+								let result = res.data.qrCodeUrl.replace(/[\r\n]/g, "");
+								let imgBase64 = `data:image/png;base64,${result}`;
+								base64ToPath(imgBase64)
+									.then(path => {
+										pathToBase64(path)
+											.then(base64 => {
+												this.paycodeimg = base64;
+											})
+											.catch(error => {});
+									})
 								break;
 						}
 					} else {

+ 10 - 1
pages/orders1/paymentCode1.vue

@@ -172,7 +172,16 @@
 								break;
 							case 2:
 							case '2':
-								this.paycodeimg = res.data.qrCodeUrl;
+								let result = res.data.qrCodeUrl.replace(/[\r\n]/g, "");
+								let imgBase64 = `data:image/png;base64,${result}`;
+								base64ToPath(imgBase64)
+									.then(path => {
+										pathToBase64(path)
+											.then(base64 => {
+												this.paycodeimg = base64;
+											})
+											.catch(error => {});
+									})
 								break;
 						}
 					} else {

+ 1 - 1
pages/orders1/subOrders.vue

@@ -203,7 +203,7 @@
 			//付款码
 			Payment(id, type) {
 				let pro = this.quotationType.themeCode;
-				if (pro == "QD") {
+				if (pro !== "QD") {
 					uni.navigateTo({
 						url: "/pages/orders1/paymentCode?companyId=" + id + '&apiType=' + type,
 					})

+ 1 - 1
pages/tools/policy.vue → pages/tools/policy/policy.vue

@@ -372,7 +372,7 @@
 					modelcname: val.carinfo.modelcname,
 				}
 				uni.navigateTo({
-					url: `/pages/orders1/subOrders?orderno=${JSON.stringify(params)}`
+					url: `/pages/tools/policy/subOrders?orderno=${JSON.stringify(params)}`
 				})
 			},
 			//报价历史

+ 3212 - 0
pages/tools/policy/quoteDetail.vue

@@ -0,0 +1,3212 @@
+<template>
+	<view :style="getHeight">
+		<!-- 公共组件-每个页面必须引入 -->
+		<public-module></public-module>
+		<!-- 头部 -->
+		<view class="" style="width: 100%;
+		height: 210px;
+		background: linear-gradient( 180deg, #0052FF 0%, #F8FAFE 100%);position: absolute;top: 0;">
+		</view>
+		<view class="headers dis f-c j-end">
+			<view class="price dis a-c j-c">
+				<image :src="logoimg" mode="" style="width: 20px;height: 20px;">
+				</image>
+				<text style="font-weight: bold;margin-left: 6px;font-size: 15px;">{{orderInfo.inscompany}}</text>
+			</view>
+			<view
+				style="background-color: #fff;box-shadow: inset rgb(218, 227, 244) 0px 1px 4px 0px;border-radius: 0 0 6px 6px;"
+				class="dis j-c a-c f-c p-2 ">
+				<text style="color: #232832;font-weight: bold;">订单编号:{{orderInfo.orderno}}</text>
+				<text style="color: #232832;font-weight: bold;"
+					v-if="orderInfo.jqpolicyno">交强保单号:{{orderInfo.jqpolicyno}}</text>
+				<text style="color: #232832;font-weight: bold;"
+					v-if="orderInfo.sypolicyno">商业保单号:{{orderInfo.sypolicyno}}</text>
+			</view>
+		</view>
+		<view class="page">
+			<view class="car">
+				<view class="header d-flex a-center j-sb" @tap="showCarInfo = !showCarInfo">
+					<view class="title">车辆信息</view>
+					<view class="adjustPlan d-flex">
+						<view class="icon iconfont"
+							:class="{ 'icon-up-yixuanzhong': showCarInfo, 'icon-down-weixuanzhong': !showCarInfo }"
+							style="font-weight: bold;color: #B3B3B3;">
+						</view>
+					</view>
+				</view>
+				<view class="body" v-if="showCarInfo">
+					<view class="row d-flex a-center j-sb">
+						<view>车牌号</view>
+						<view>{{carInfo.licenseNo}}</view>
+					</view>
+					<view class="row d-flex a-center j-sb">
+						<view>品牌型号</view>
+						<view>{{carInfo.modelcname}}</view>
+					</view>
+					<view class="row d-flex a-center j-sb">
+						<view>车辆识别代码</view>
+						<view>{{carInfo.vinNo}}</view>
+					</view>
+					<view class="row d-flex a-center j-sb">
+						<view>发动机号</view>
+						<view>{{carInfo.engineNo}}</view>
+					</view>
+					<view class="row d-flex a-center j-sb">
+						<view>年款</view>
+						<view>{{carInfo.caryear}}</view>
+					</view>
+					<view class="row d-flex a-center j-sb">
+						<view>座位数</view>
+						<view>{{carInfo.seatCount}}</view>
+					</view>
+					<view class="row d-flex a-center j-sb">
+						<view>整备质量</view>
+						<view>{{carInfo.completeKerbMass}}</view>
+					</view>
+					<view class="row d-flex a-center j-sb" v-if="carInfo.limitLoad">
+						<view>核定载质量</view>
+						<view>{{carInfo.limitLoad}}</view>
+					</view>
+					<view class="row d-flex a-center j-sb">
+						<view>排量</view>
+						<view>{{carInfo.enginedesc}}</view>
+					</view>
+					<view class="row d-flex a-center j-sb">
+						<view>功率</view>
+						<view>{{carInfo.powerScale}}</view>
+					</view>
+					<view class="row d-flex a-center j-sb">
+						<view>新车购置价</view>
+						<view>{{carInfo.purchasePrice}}</view>
+					</view>
+					<view class="row d-flex a-center j-sb">
+						<view>使用性质</view>
+						<view>{{carInfo.carnature}}</view>
+					</view>
+					<view class="row d-flex a-center j-sb">
+						<view>车辆用途</view>
+						<view>{{carInfo.vehicleUse}}</view>
+					</view>
+					<view class="row d-flex a-center j-sb">
+						<view>车辆类型</view>
+						<view>{{carInfo.cartype}}</view>
+					</view>
+					<view class="row d-flex a-center j-sb">
+						<view>车辆种类</view>
+						<view>{{carInfo.cimodelclass}}</view>
+					</view>
+					<view class="row d-flex a-center j-sb">
+						<view>能源种类</view>
+						<view>{{carInfo.energyType}}</view>
+					</view>
+					<view class="row d-flex a-center j-sb">
+						<view>注册日期</view>
+						<view>{{carInfo.registerDate }}</view>
+					</view>
+					<view class="row d-flex a-center j-sb">
+						<view>发证日期</view>
+						<view>{{carInfo.issueDate }}</view>
+					</view>
+					<view class="row d-flex a-center j-sb">
+						<view>是否过户</view>
+						<view>{{carInfo.transferFlag?'是':'否' }}</view>
+					</view>
+					<view class="row d-flex a-center j-sb" v-if="carInfo.transferFlag">
+						<view>转移登记日期</view>
+						<view>{{carInfo.transferDate }}</view>
+					</view>
+					<view class="row d-flex a-center j-sb">
+						<view>商业是否过户</view>
+						<view>{{carInfo.transferFlagBi?'是':'否' }}</view>
+					</view>
+					<view class="row d-flex a-center j-sb">
+						<view>是否脱保</view>
+						<view>{{carInfo.outOfInsurance?'是':'否' }}</view>
+					</view>
+					<view class="row d-flex a-center j-sb">
+						<view>是否二手车</view>
+						<view>{{carInfo.usedCar?'是':'否' }}</view>
+					</view>
+				</view>
+			</view>
+			<view class="car" style="padding: 0;">
+				<view class="header d-flex a-center j-sb " @tap="showOwerInfo = !showOwerInfo" style="padding: 0 10px;">
+					<view class="title">人员信息</view>
+					<view class="adjustPlan d-flex">
+						<view class="icon iconfont "
+							:class="{ 'icon-up-yixuanzhong': showOwerInfo, 'icon-down-weixuanzhong': !showOwerInfo }"
+							style="font-weight: bold;color: #B3B3B3;">
+						</view>
+					</view>
+				</view>
+				<view class="body" v-if="showOwerInfo">
+					<view class="row d-flex a-center j-sb font-weight "
+						style="background-color: #E5ECFA;padding:5px 10px;">
+						<view>车主姓名:</view>
+						<view>{{ownerInfo.name}}</view>
+					</view>
+					<view class="" style="padding: 0 5px;">
+						<view class="row d-flex a-center j-sb">
+							<view>车主身份证号:</view>
+							<view>
+								{{ownerInfo.identifyNumber}}
+							</view>
+						</view>
+						<view class="row d-flex a-center j-sb">
+							<view>手机号:</view>
+							<view>{{ownerInfo.mobile}}</view>
+						</view>
+						<view class="row d-flex a-center j-sb">
+							<view>地址:</view>
+							<view>{{ownerInfo.addr}}</view>
+						</view>
+					</view>
+					<view class="row d-flex a-center j-sb font-weight "
+						style="background-color: #E5ECFA;padding:5px 10px;">
+						<view>投保人姓名:</view>
+						<view>{{policyHolderInfo.name}}</view>
+					</view>
+					<view class="" style="padding: 0 5px;">
+						<view class="row d-flex a-center j-sb">
+							<view>车主身份证号:</view>
+							<view>
+								{{policyHolderInfo.identifyNumber}}
+							</view>
+						</view>
+						<view class="row d-flex a-center j-sb">
+							<view>手机号:</view>
+							<view>{{policyHolderInfo.mobile}}</view>
+						</view>
+						<view class="row d-flex a-center j-sb">
+							<view>地址:</view>
+							<view>{{policyHolderInfo.addr}}</view>
+						</view>
+					</view>
+					<view class="row d-flex a-center j-sb font-weight "
+						style="background-color: #E5ECFA;padding:5px 10px;">
+						<view>被保人姓名:</view>
+						<view>{{insuredPersonInfo.name}}</view>
+					</view>
+					<view class="" style="padding: 0 5px;">
+						<view class="row d-flex a-center j-sb">
+							<view>车主身份证号:</view>
+							<view>
+								{{insuredPersonInfo.identifyNumber}}
+							</view>
+						</view>
+						<view class="row d-flex a-center j-sb">
+							<view>手机号:</view>
+							<view>{{insuredPersonInfo.mobile}}</view>
+						</view>
+						<view class="row d-flex a-center j-sb">
+							<view>地址:</view>
+							<view>{{insuredPersonInfo.addr}}</view>
+						</view>
+					</view>
+				</view>
+			</view>
+			<view class="car">
+				<view class="header d-flex a-center j-sb" @tap="showPolicyHolderInfo = !showPolicyHolderInfo">
+					<view class="title">保费信息</view>
+					<view class="adjustPlan d-flex">
+						<view class="icon iconfont "
+							:class="{ 'icon-up-yixuanzhong': showPolicyHolderInfo, 'icon-down-weixuanzhong': !showPolicyHolderInfo }"
+							style="font-weight: bold;color: #B3B3B3;">
+						</view>
+					</view>
+				</view>
+				<view class="body" v-if="showPolicyHolderInfo">
+					<view class=" dis f-c">
+						<template v-if="orderInfo.jqpremium">
+							<view class="dis a-c j-s " style="color: #232832;font-weight: bold;">
+								<text>交强险:</text>
+								<text>¥{{orderInfo.jqpremium}}</text>
+							</view>
+							<view class="dis f-c ">
+								<text style="color: rgba(35,40,50,0.9);">起保日期:{{orderInfo.jqstartdate}}</text>
+								<text style="color: rgba(35,40,50,0.9);">终保日期:{{orderInfo.jqenddate}}</text>
+							</view>
+							<!-- <view v-if="orderInfo.jqpremium && orderInfo.feeOrderNewVo" class=" d-flex a-center j-c"
+								style="margin-bottom: 5px;">
+								<view class="costDetails">
+									<view class="dis j-s a-c " style="padding: 4px 6px;">
+										<text class="text1">手续费比例:<text
+												class="text2">{{orderInfo.feeOrderNewVo.exportFee[0].superviseCosts}}%</text>
+										</text>
+										<text class="text1">跟单比例:<text
+												class="text2">{{orderInfo.feeOrderNewVo.exportFee[0].otherCostsProportion}}%</text>
+										</text>
+										<text class="text1">总比例:<text
+												class="text2">{{orderInfo.feeOrderNewVo.exportFee[0].totalProportion}}%</text>
+										</text>
+									</view>
+									<view class="dis j-s a-c" style="padding: 4px 6px;">
+										<text class="text1">手续费用:
+											<text class="text2 text2-color"
+												v-if="orderInfo.feeOrderNewVo.exportFee[0].superviseCostsPremiums">¥{{orderInfo.feeOrderNewVo.exportFee[0].superviseCostsPremiums}}</text>
+											<text v-else>0</text>
+										</text>
+										<text class="text1">跟单费用:
+											<text class="text2 text2-color"
+												v-if="orderInfo.feeOrderNewVo.exportFee[0].otherCostsPremiums">¥{{orderInfo.feeOrderNewVo.exportFee[0].otherCostsPremiums}}</text>
+											<text v-else>0</text>
+										</text>
+
+										<text class="text1">总费用:
+											<text class="text2 text2-color"
+												v-if="orderInfo.feeOrderNewVo.exportFee[0].totalAmount">¥{{orderInfo.feeOrderNewVo.exportFee[0].totalAmount}}</text>
+											<text v-else>0</text>
+										</text>
+									</view>
+								</view> 
+							</view>-->
+							<view class="dis f-c"
+								style="background-color: #F9F9F9;border-radius: 10px;padding: 6px;margin-bottom: 5px;">
+								<view class="dis j-s a-c">
+									<text style="color: rgba(35,40,50,0.8)">险别/名称</text>
+									<text style="color: rgba(35,40,50,0.8)">保额</text>
+								</view>
+								<view class="dis j-s a-c" v-for="(item,index) in orderInfo.jqInsuranceType" :key="index"
+									style="margin-top: 6px;">
+									<text>{{item.name}}</text>
+									<text>{{item.amount}}</text>
+								</view>
+							</view>
+						</template>
+						<template v-if="taxAmount">
+							<view class="dis a-c j-s " style="color: #232832;font-weight: bold;">
+								<text>车船税:</text>
+								<text>¥{{taxAmount}}</text>
+							</view>
+							<view class="dis f-c" v-if="orderInfo.taxArrears && orderInfo.taxArrears.length>0">
+								<text>欠税信息</text>
+								<view class="body" style="padding: 10px 5px;">
+									<u-table :th-style="{background:'#ff9000'}">
+										<u-tr>
+											<u-th style="font-size: 20rpx;">当年应缴(元)</u-th>
+											<u-th style="font-size: 20rpx;">去年补缴(元)</u-th>
+											<u-th style="font-size: 20rpx;">滞纳金(元)</u-th>
+											<u-th style="font-size: 20rpx;">总计</u-th>
+										</u-tr>
+										<u-tr v-for="(item,index) in orderInfo.taxArrears" :key="index">
+											<u-td>{{item.dayYearTax}}</u-td>
+											<u-td>{{item.taxDefault}}</u-td>
+											<u-td>{{item.lateFee}}</u-td>
+											<u-td>{{orderInfo.taxamount}}</u-td>
+										</u-tr>
+									</u-table>
+								</view>
+							</view>
+						</template>
+						<template v-if="sypremium">
+							<view class="dis a-c j-s " style="color: #232832;font-weight: bold;">
+								<text>商业险:</text>
+								<text>¥{{sypremium}}</text>
+							</view>
+							<view class="dis f-c ">
+								<text style="color: rgba(35,40,50,0.9);">起保日期:{{orderInfo.systartdate}}</text>
+								<text style="color: rgba(35,40,50,0.9);">终保日期:{{orderInfo.syenddate}}</text>
+							</view>
+							<!-- <view class="costDetails" v-if="sypremium && orderInfo.feeOrderNewVo">
+								<view class="dis j-s a-c " style="border-bottom: 1px solid #f2f2f2;padding: 4px 6px;">
+									<text class="text1">手续费比例:<text
+											class="text2">{{orderInfo.feeOrderNewVo.exportFee[1].superviseCosts}}%</text>
+									</text>
+									<text class="text1">跟单比例:<text
+											class="text2">{{orderInfo.feeOrderNewVo.exportFee[1].otherCostsProportion}}%</text>
+									</text>
+
+									<text class="text1">总比例:<text
+											class="text2">{{orderInfo.feeOrderNewVo.exportFee[1].totalProportion}}%</text>
+									</text>
+								</view>
+								<view class="dis j-s a-c" style="padding: 4px 6px;">
+									<text class="text1">手续费用:
+										<text class="text2 text2-color"
+											v-if="orderInfo.feeOrderNewVo.exportFee[1].superviseCostsPremiums">¥{{orderInfo.feeOrderNewVo.exportFee[1].superviseCostsPremiums}}</text>
+										<text v-else>0</text>
+									</text>
+									<text class="text1">跟单费用:
+										<text class="text2 text2-color"
+											v-if="orderInfo.feeOrderNewVo.exportFee[1].otherCostsPremiums">¥{{orderInfo.feeOrderNewVo.exportFee[1].otherCostsPremiums}}</text>
+										<text v-else>0</text>
+									</text>
+									<text class="text1">总费用:
+										<text class="text2 text2-color"
+											v-if="orderInfo.feeOrderNewVo.exportFee[1].totalAmount">¥{{orderInfo.feeOrderNewVo.exportFee[1].totalAmount}}</text>
+										<text v-else>0</text>
+									</text>
+								</view>
+							</view> -->
+							<view class="kindList mt-1">
+								<view class="dis j-s" style="color: rgba(35,40,50,0.6);font-size: 24rpx;border-bottom: 1px silid
+								 #232832">
+									<view class="dis j-start" style="width: 33.33%;">
+										<text>险别/名称</text>
+									</view>
+									<view class="dis j-c" style="width: 33.33%;">
+										<text>保额</text>
+									</view>
+									<view class="dis j-end" style="width: 33.33%;">
+										<text>保费(元)</text>
+									</view>
+								</view>
+								<block v-for="(item,index) in kindList" :key="index">
+									<template>
+										<view class="kindItem dis">
+											<view class="dis j-start" style="width: 33.33%;">
+												<text>{{item.kindName}}</text>
+											</view>
+											<view class="dis a-c j-c" v-if="['A'].includes(item.kindCode)"
+												style="width: 33.33%;"><text>
+													{{item.amount}}</text>
+											</view>
+											<view class="dis a-c j-c"
+												v-else-if="['D4', 'SY_FJ_YBW2'].includes(item.kindCode)"
+												style="width: 33.33%;">
+												<text>{{toChinesNum(item.unitAmount)}}/座*{{orderInfo.carinfo.seatCount-1}}</text>
+											</view>
+											<view class="dis a-c j-c"
+												v-else-if="['MJ1', 'MJ2', 'MJ3', 'MJ4'].includes(item.kindCode)"
+												style="width: 33.33%;">
+												<text>{{item.deductibleRate}}%</text>
+											</view>
+											<view class="dis a-c j-c" v-else style="width: 33.33%;">
+												<text>{{toChinesNum(item.amount)}}</text>
+											</view>
+											<view class="dis a-c j-end" style="width: 33.33%;">
+												<text v-if="item.coveragePremium">¥{{item.coveragePremium}}</text>
+											</view>
+										</view>
+									</template>
+								</block>
+								<view class="kindItem d-flex a-center j-sb" v-for="(item,index) in roadrescueList"
+									:key="index">
+									<view>{{item.kindName}}</view>
+									<view class="d-flex j-end">{{item.serviceTimes}}次</view>
+								</view>
+							</view>
+						</template>
+						<template v-if="jypremium">
+							<view class="dis a-c j-s " style="color: #232832;font-weight: bold;">
+								<text>附加险:意外险</text>
+								<text>¥{{jypremium}}</text>
+							</view>
+							<!-- <view v-if="jypremium && orderInfo.feeOrderNewVo" class="row d-flex a-center j-c">
+								<view class="costDetails">
+									<view class="dis j-s a-c "
+										style="border-bottom: 1px solid #f2f2f2;padding: 4px 6px;">
+										<text class="text1">手续费比例:<text
+												class="text2">{{orderInfo.feeOrderNewVo.exportFee[2].superviseCosts}}%</text>
+										</text>
+										<text class="text1">跟单比例:<text
+												class="text2">{{orderInfo.feeOrderNewVo.exportFee[2].otherCostsProportion}}%</text>
+										</text>
+
+										<text class="text1">总比例:<text
+												class="text2">{{orderInfo.feeOrderNewVo.exportFee[2].totalProportion}}%</text>
+										</text>
+									</view>
+									<view class="dis j-s a-c" style="padding: 4px 6px;">
+										<text class="text1">手续费用:
+											<text class="text2 text2-color"
+												v-if="orderInfo.feeOrderNewVo.exportFee[2].superviseCostsPremiums">¥{{orderInfo.feeOrderNewVo.exportFee[2].superviseCostsPremiums}}</text>
+											<text v-else>0</text>
+										</text>
+										<text class="text1">跟单费用:
+											<text class="text2 text2-color"
+												v-if="orderInfo.feeOrderNewVo.exportFee[2].otherCostsPremiums">¥{{orderInfo.feeOrderNewVo.exportFee[2].otherCostsPremiums}}</text>
+											<text v-else>0</text>
+										</text>
+										<text class="text1">总费用:
+											<text class="text2 text2-color"
+												v-if="orderInfo.feeOrderNewVo.exportFee[2].totalAmount">¥{{orderInfo.feeOrderNewVo.exportFee[2].totalAmount}}</text>
+											<text v-else>0</text>
+										</text>
+									</view>
+								</view>
+							</view> -->
+							<view class=" dis j-s f-c p-2" v-if="orderInfo.accidentInfo.length>0"
+								style="border: none;background-color: #F9F9F9;border-radius: 10px;">
+								<view class="dis j-s a-c" style="border-bottom: 1px solid #f2f2f2;">
+									<view class="dis j-start" style="width: 50%;">
+										<text style="color: rgba(35,40,50,0.8)">险别/名称</text>
+									</view>
+									<view class="dis j-c" style="width: 25%;">
+										<text style="color: rgba(35,40,50,0.8)">保额</text>
+									</view>
+									<view class="dis j-end" style="width: 25%;">
+										<text style="color: rgba(35,40,50,0.8)">保费(元)</text>
+									</view>
+								</view>
+								<view class="coverage-sum dis j-s" v-for="(item,index) in orderInfo.accidentInfo"
+									:key="index" style="margin-top: 6px;">
+									<view style="width: 50%;" class="dis a-c j-start">
+										<text>{{item.name}}</text>
+									</view>
+									<view style="width: 25%;" class="dis a-c j-c">
+										<text>{{item.amount}}</text>
+									</view>
+									<view style="width: 25%;" class="dis a-c j-c">
+										<text>{{item.premium}}</text>
+									</view>
+								</view>
+							</view>
+						</template>
+
+					</view>
+				</view>
+			</view>
+			<view class="car">
+				<view class="header d-flex a-center j-sb" @tap="showextendInfo = !showextendInfo">
+					<view class="title">保费因素</view>
+					<view class="adjustPlan d-flex">
+						<view class="icon iconfont "
+							:class="{ 'icon-up-yixuanzhong': showextendInfo, 'icon-down-weixuanzhong': !showextendInfo }"
+							style="font-weight: bold;color: #B3B3B3;">
+						</view>
+					</view>
+				</view>
+				<view class="body" v-if="showextendInfo">
+					<view class="row d-flex a-center j-sb">
+						<view>评分</view>
+						<view>{{extendInfo.score?extendInfo.score:"无"}}</view>
+					</view>
+					<view class="row d-flex a-center j-sb">
+						<view>鼎然-车辆风险评分:</view>
+						<view>{{orderInfo.ubiPredictedInfoScore?orderInfo.ubiPredictedInfoScore:"无"}}</view>
+					</view>
+					<view class="row d-flex a-center j-sb">
+						<view>交强评分</view>
+						<view style="color: #ff9000;">{{extendInfo.jqScore?extendInfo.jqScore:"无"}}</view>
+					</view>
+					<view class="row d-flex a-center j-sb">
+						<view>商业评分</view>
+						<view style="color: #ff9000;">{{extendInfo.syScore?extendInfo.syScore:"无"}}</view>
+					</view>
+					<view class="row d-flex a-center j-sb">
+						<view>出险信息</view>
+						<view style="width: 200px;text-align: right;">
+							{{extendInfo.accidentInfoStr?extendInfo.accidentInfoStr:"无"}}
+						</view>
+					</view>
+					<view class="row d-flex a-center j-sb">
+						<view>总赔付率</view>
+						<view>{{extendInfo.lossRation}}</view>
+					</view>
+					<view class="row d-flex a-center j-sb">
+						<view>交强赔付率</view>
+						<view>{{extendInfo.jqLossRation}}</view>
+					</view>
+					<view class="row d-flex a-center j-sb">
+						<view>商业赔付率</view>
+						<view>{{extendInfo.syLossRation}}</view>
+					</view>
+					<view class="row d-flex a-center j-sb">
+						<view>总折扣率</view>
+						<view>{{extendInfo.totalAdjustRate}}</view>
+					</view>
+					<view class="row d-flex a-center j-sb">
+						<view>交强险折扣</view>
+						<view>{{extendInfo.jqAdjustRate}}</view>
+					</view>
+					<view class="row d-flex a-center j-sb">
+						<view>商业险折扣</view>
+						<view>{{extendInfo.syAdjustRate}}</view>
+					</view>
+
+				</view>
+			</view>
+			<view class="car">
+				<view class="header d-flex a-center j-sb" @tap="showCarImageInfo = !showCarImageInfo">
+					<view class="title">影像信息</view>
+					<view class="adjustPlan d-flex">
+						<view class="icon iconfont "
+							:class="{ 'icon-up-yixuanzhong': showCarImageInfo, 'icon-down-weixuanzhong': !showCarImageInfo }"
+							style="font-weight: bold;color: #B3B3B3;">
+						</view>
+					</view>
+				</view>
+				<view class="body" style="padding: 10px 5px;" v-if="showCarImageInfo">
+					<view class="uni-uploader">
+						<view class="uni-uploader-body dis j-s a-c">
+							<view class="uni-uploader__files dis f-c a-c">
+								<text>行驶证主页</text>
+								<block v-for="(image,index) in imgList1" :key="index">
+									<view class="uni-uploader__file">
+										<image class="uni-uploader__img" :src="image.url" :data-src="image.url"
+											@tap="previewImage($event,'imgList1')"></image>
+										<view v-if="orderstatus!=3"
+											class="delImgIcon iconfont icon-cuowu d-flex a-center j-center"
+											@tap="delCheckImage(image,'carImageListId','imgList1')"></view>
+									</view>
+								</block>
+								<view v-if="imgList1.length==0 " class="uni-uploader__input-box"
+									style="box-sizing: border-box;">
+									<view v-if="orderstatus!=3" class="uni-uploader__input"
+										@tap="chooseImage('C01','carImageListId','imgList1')">
+									</view>
+								</view>
+							</view>
+							<view class="uni-uploader__files dis f-c a-c">
+								<text>行驶证副本</text>
+								<block v-for="(image,index) in imgList2" :key="index">
+									<view class="uni-uploader__file">
+										<image class="uni-uploader__img" :src="image.url" :data-src="image.url"
+											@tap="previewImage($event,'imgList2')"></image>
+										<view v-if="orderstatus!=3"
+											class="delImgIcon iconfont icon-cuowu d-flex a-center j-center"
+											@tap="delCheckImage(image,'carImageListId','imgList2')"></view>
+									</view>
+								</block>
+								<view v-if="imgList2.length==0" class="uni-uploader__input-box"
+									style="box-sizing: border-box;">
+									<view v-if="orderstatus!=3" class="uni-uploader__input"
+										@tap="chooseImage('D01','carImageListId','imgList2')">
+									</view>
+								</view>
+							</view>
+						</view>
+					</view>
+					<view class="uni-uploader">
+						<view class="uni-uploader-body dis j-s a-c">
+							<view class="uni-uploader__files dis f-c a-c">
+								<text>车主身份证正面</text>
+								<block v-for="(image,index) in imgList3" :key="index">
+									<view class="uni-uploader__file">
+										<image class="uni-uploader__img" :src="image.url" :data-src="image.url"
+											@tap="previewImage($event,'imgList3')"></image>
+										<view v-if="orderstatus!=3"
+											class="delImgIcon iconfont icon-cuowu d-flex a-center j-center"
+											@tap="delCheckImage(image,'ownerImageListId','imgList3')"></view>
+									</view>
+								</block>
+								<view v-if="imgList3.length==0" class="uni-uploader__input-box"
+									style="box-sizing: border-box;">
+									<view v-if="orderstatus!=3" class="uni-uploader__input"
+										@tap="chooseImage('C02','ownerImageListId','imgList3')"></view>
+								</view>
+							</view>
+							<view class="uni-uploader__files dis f-c a-c">
+								<text>车主身份证反面</text>
+								<block v-for="(image,index) in imgList4" :key="index">
+									<view class="uni-uploader__file">
+										<image class="uni-uploader__img" :src="image.url" :data-src="image.url"
+											@tap="previewImage($event,'imgList4')"></image>
+										<view v-if="orderstatus!=3"
+											class="delImgIcon iconfont icon-cuowu d-flex a-center j-center"
+											@tap="delCheckImage(image,'ownerImageListId','imgList4')"></view>
+									</view>
+								</block>
+								<view v-if="imgList4.length==0" class="uni-uploader__input-box"
+									style="box-sizing: border-box;">
+									<view v-if="orderstatus!=3" class="uni-uploader__input"
+										@tap="chooseImage('D02','ownerImageListId','imgList4')"></view>
+								</view>
+							</view>
+						</view>
+					</view>
+					<view class="uni-uploader">
+						<view class="uni-uploader-body dis j-s a-c">
+							<view class="uni-uploader__files dis f-c a-c">
+								<text>投保人身份证正面</text>
+								<block v-for="(image,index) in imgList5" :key="index">
+									<view class="uni-uploader__file">
+										<image class="uni-uploader__img" :src="image.url" :data-src="image.url"
+											@tap="previewImage($event,'imgList5')"></image>
+										<view v-if="orderstatus!=3"
+											class="delImgIcon iconfont icon-cuowu d-flex a-center j-center"
+											@tap="delCheckImage(image,'policyImageListId','imgList5')"></view>
+									</view>
+								</block>
+								<view v-if="imgList5.length==0" class="uni-uploader__input-box"
+									style="box-sizing: border-box;">
+									<view v-if="orderstatus!=3" class="uni-uploader__input"
+										@tap="chooseImage('C03','policyImageListId','imgList5')"></view>
+								</view>
+							</view>
+							<view class="uni-uploader__files dis f-c a-c">
+								<text>投保人身份证反面</text>
+								<block v-for="(image,index) in imgList6" :key="index">
+									<view class="uni-uploader__file">
+										<image class="uni-uploader__img" :src="image.url" :data-src="image.url"
+											@tap="previewImage($event,'imgList6')"></image>
+										<view v-if="orderstatus!=3"
+											class="delImgIcon iconfont icon-cuowu d-flex a-center j-center"
+											@tap="delCheckImage(image,'policyImageListId','imgList6')"></view>
+									</view>
+								</block>
+								<view v-if="imgList6.length==0" class="uni-uploader__input-box"
+									style="box-sizing: border-box;">
+									<view v-if="orderstatus!=3" class="uni-uploader__input"
+										@tap="chooseImage('D03','policyImageListId','imgList6')"></view>
+								</view>
+							</view>
+						</view>
+					</view>
+					<view class="uni-uploader">
+						<view class="uni-uploader-body dis j-s a-c">
+							<view class="uni-uploader__files dis f-c a-c">
+								<text>被保人身份证正面</text>
+								<block v-for="(image,index) in imgList7" :key="index">
+									<view class="uni-uploader__file">
+										<image class="uni-uploader__img" :src="image.url" :data-src="image.url"
+											@tap="previewImage($event,'imgList7')"></image>
+										<view v-if="orderstatus!=3"
+											class="delImgIcon iconfont icon-cuowu d-flex a-center j-center"
+											@tap="delCheckImage(image,'insuredImageListId','imgList7')"></view>
+									</view>
+								</block>
+								<view v-if="imgList7.length==0" class="uni-uploader__input-box"
+									style="box-sizing: border-box;">
+									<view v-if="orderstatus!=3" class="uni-uploader__input"
+										@tap="chooseImage('C04','insuredImageListId','imgList7')"></view>
+								</view>
+							</view>
+							<view class="uni-uploader__files dis f-c a-c">
+								<text>被保人身份证反面</text>
+								<block v-for="(image,index) in imgList8" :key="index">
+									<view class="uni-uploader__file">
+										<image class="uni-uploader__img" :src="image.url" :data-src="image.url"
+											@tap="previewImage($event,'imgList8')"></image>
+										<view v-if="orderstatus!=3"
+											class="delImgIcon iconfont icon-cuowu d-flex a-center j-center"
+											@tap="delCheckImage(image,'insuredImageListId','imgList8')"></view>
+									</view>
+								</block>
+								<view v-if="imgList8.length==0" class="uni-uploader__input-box"
+									style="box-sizing: border-box;">
+									<view v-if="orderstatus!=3" class="uni-uploader__input"
+										@tap="chooseImage('D04','insuredImageListId','imgList8')"></view>
+								</view>
+							</view>
+						</view>
+					</view>
+					<view class="uni-uploader">
+						<view class="uni-uploader-body dis j-s a-c">
+							<view class="uni-uploader__files dis f-c a-c">
+								<text>新车合格证</text>
+								<block v-for="(image,index) in imgNewCarQualified" :key="index">
+									<view class="uni-uploader__file">
+										<image class="uni-uploader__img" :src="image.url" :data-src="image.url"
+											@tap="previewImage($event,'imgNewCarQualified')"></image>
+										<view class="delImgIcon iconfont icon-cuowu d-flex a-center j-center"
+											@tap="delCheckImage(image,'imgNewCarinvoiceId','imgNewCarQualified')">
+										</view>
+									</view>
+								</block>
+								<view v-if="imgNewCarQualified.length==0" class="uni-uploader__input-box"
+									style="box-sizing: border-box;">
+									<view v-if="orderstatus!=3" class="uni-uploader__input"
+										@tap="chooseImage('XC00','imgNewCarinvoiceId','imgNewCarQualified')"></view>
+								</view>
+							</view>
+							<view class="uni-uploader__files dis f-c a-c">
+								<text>购车发票</text>
+								<block v-for="(image,index) in imgNewCarInvoice" :key="index">
+									<view class="uni-uploader__file">
+										<image class="uni-uploader__img" :src="image.url" :data-src="image.url"
+											@tap="previewImage($event,'imgNewCarInvoice')"></image>
+										<view class="delImgIcon iconfont icon-cuowu d-flex a-center j-center"
+											@tap="delCheckImage(image,'imgNewCarinvoiceId','imgNewCarInvoice')"></view>
+									</view>
+								</block>
+								<view v-if="imgNewCarInvoice.length==0" class="uni-uploader__input-box"
+									style="box-sizing: border-box;">
+									<view v-if="orderstatus!=3" class="uni-uploader__input"
+										@tap="chooseImage('GC00','imgNewCarinvoiceId','imgNewCarInvoice')"></view>
+								</view>
+							</view>
+						</view>
+					</view>
+					<view class="uni-uploader">
+						<view class="uni-uploader-body dis j-s a-c">
+							<view class="uni-uploader__files dis f-c a-c">
+								<text>其他关系证明</text>
+								<block v-for="(image,index) in imgRelationship" :key="index">
+									<view class="uni-uploader__file">
+										<image class="uni-uploader__img" :src="image.url" :data-src="image.url"
+											@tap="previewImage($event,'imgRelationship')"></image>
+										<view class="delImgIcon iconfont icon-cuowu d-flex a-center j-center "
+											@tap="delCheckImage('imgRelationship',index)"></view>
+									</view>
+								</block>
+								<view class="uni-uploader__input-box" style="box-sizing: border-box;">
+									<view v-if="orderstatus!=3" class="uni-uploader__input"
+										@tap="chooseImage('GX00','imgRelationshipid','imgRelationship')"></view>
+								</view>
+							</view>
+						</view>
+					</view>
+				</view>
+			</view>
+			<!-- 特约 -->
+			<view class="car" v-if="['紫金财险','华泰财险'].includes(this.name)">
+				<view class=" header title d-flex a-center j-sb" @tap="showAppoint=!showAppoint">
+					<text style="font-weight: bold;">特约</text>
+					<view class="adjustPlan d-flex">
+						<view class="icon iconfont "
+							:class="{ 'icon-up-yixuanzhong': showAppoint, 'icon-down-weixuanzhong': !showAppoint }"
+							style="font-weight: bold;color: #B3B3B3;">
+						</view>
+					</view>
+				</view>
+				<view class=" dis f-c j-c " v-if="showAppoint"
+					style="background-color: #fff;padding: 8px;border-radius: 6px;">
+					<template v-if="this.name=='紫金财险'">
+						<u-button type="warning" size="mini" style="width: 80px;margin-top: 5px;"
+							@click="ziJinshow=true">特约选择</u-button>
+						<view class="contributing dis f-c" v-for="(ziJinitem,ziJinindex) in ziJinengageList"
+							:key="ziJinindex">
+							<text style="font-size: 14px;">{{ziJinitem.clauseName}}</text>
+							<u-input v-if="ziJinitem.modifyFlag==1" :border="true" v-model="ziJinitem.clauses"
+								size="mini" type="textarea" :custom-style="{fontSize:'12px'}" />
+							<text v-else>{{ziJinitem.clauses}}</text>
+						</view>
+					</template>
+					<template v-if="this.name=='华泰财险'">
+						<u-button type="warning" size="mini" style="width: 80px;margin-top: 5px;"
+							@click="huaTaishow=true">特约选择</u-button>
+						<view class="contributing dis f-c" v-for="(huaTaiitem, huaTaiindex) in huaTaiengageList"
+							:key="huaTaiindex">
+							<text style="font-size: 14px;">{{huaTaiitem.engageTitle}}</text>
+							<u-input v-if="huaTaiitem.modifyFlag==1" :border="true" v-model="huaTaiitem.engageDetail"
+								size="mini" type="textarea" :custom-style="{fontSize:'12px'}" />
+							<text v-else>{{huaTaiitem.engageDetail}}</text>
+						</view>
+					</template>
+				</view>
+			</view>
+			<view class="car">
+				<view class="header d-flex a-center j-sb" @tap="showApplyno = !showApplyno">
+					<view class="title">保单信息</view>
+					<view class="adjustPlan d-flex">
+						<view class="icon iconfont "
+							:class="{ 'icon-up-yixuanzhong': showApplyno, 'icon-down-weixuanzhong': !showApplyno }"
+							style="font-weight: bold;color: #B3B3B3;">
+						</view>
+					</view>
+				</view>
+				<view class="body" v-if="showApplyno">
+					<view class="row d-flex a-center j-sb" v-if="orderInfo.jqpolicyno">
+						<view>交强险保单号:</view>
+						<view>{{orderInfo.jqpolicyno}}</view>
+					</view>
+					<view class="row d-flex a-center j-sb" v-if="orderInfo.sypolicyno">
+						<view>商业险保单号:</view>
+						<view>{{orderInfo.sypolicyno}}</view>
+					</view>
+					<view class="row dis f-c">
+						<view class=" dis a-c j-s" v-for="(policyListitem,policyListindex) in policyList"
+							:key="policyListindex">
+							<view class="left">{{policyListitem.fileTitle}}:{{carInfo.licenseNo}}
+							</view>
+							<view class="right ">
+								<text class="checkButton d-flex a-center j-center"
+									@tap="downloadPolicy(policyListitem.fileurl)">下载</text>
+							</view>
+						</view>
+						<view class="content" v-for="(policyListitem1,policyListindex1) in policyList1"
+							:key="policyListindex1">
+							<view class=" dis a-c j-s">
+								<view class="left">{{policyListitem1.fileTitle}}:{{carInfo.licenseNo}}
+								</view>
+								<view class="right ">
+									<text class="checkButton d-flex a-center j-center"
+										@tap="downloadPolicy(policyListitem1.fileurl)">下载</text>
+								</view>
+							</view>
+						</view>
+					</view>
+				</view>
+			</view>
+		</view>
+		<view class="bottomBtn dis f-c"
+			v-if="orderstatus==0 && routepage!='pages/orders/subOrders' && routepage!='pages/orders/quoteHistory'">
+			<!-- <view class="agree dis a-c ">
+				<u-checkbox v-model="agree" active-color="#FF5600" size="28" @change="agreed"
+					style="display: block;margin-right: 4px;" />
+				我已确认并同意 <text class="tip">保险条款</text> | <text class="tip">投保须知</text> | <text class="tip">隐私条款</text>
+			</view> -->
+			<view class="btnView dis a-c">
+				<view class="btn dis j-start a-c">应付:<text
+						style="font-size: 14px;font-weight: bold;">¥{{sumPermium}}</text> </view>
+				<!-- <view class="btn dis j-c a-c" @tap="toolPopupshow=true">修改</view> -->
+				<view class="btn dis a-c j-c" @tap="submitAudit">确认核保</view>
+			</view>
+		</view>
+		<u-popup v-model="toolPopupshow" mode="bottom" border-radius="10" height="">
+			<view class="tool">
+				<!-- <view class="dis j-c a-c" @click="toCarInfo">修改车辆信息</view> -->
+				<view class="dis j-c a-c" @click="toInsureItems">修改险种配置</view>
+			</view>
+			<view class="cancell dis a-c j-c" @click="toolPopupshow=false">取消</view>
+		</u-popup>
+
+		<u-modal v-model="ziJinshow" title="特约保险"
+			:title-style="{fontWeight: 'bold',borderBottom:'1px solid #f2f2f2',padding:'10px'}"
+			:scroll-height="{height: '300px'}" :confirm-style="{background:'#E6EEFF',color:'#0052FF'}">
+			<view class="slot-content">
+				<u-checkbox-group @change="ziJincontributingChange">
+					<u-checkbox v-model="item.checked" active-color="rgb(255, 153, 0)"
+						v-for="(item, index) in ziJinengageListData" :key="index"
+						:name="item.clauseId">{{item.clauseName}}</u-checkbox>
+				</u-checkbox-group>
+			</view>
+		</u-modal>
+
+		<u-modal v-model="huaTaishow" title="华泰特约选择" :title-style="{fontWeight: 'bold'}"
+			:scroll-height="{height: '300px'}">
+			<view class="slot-content">
+				<u-checkbox-group @change="huaTaicontributingChange">
+					<u-checkbox v-model="item.checked" active-color="rgb(255, 153, 0)"
+						v-for="(item, index) in huaTaiengageListData" :key="index"
+						:name="item.engageCode">{{item.engageTitle}}</u-checkbox>
+				</u-checkbox-group>
+			</view>
+		</u-modal>
+		<u-modal v-model="auditNextShow" content="是否确认提交核保" :show-title="false"
+			:confirm-style="{background:'#0052FF',color:'#fff'}" :mask-close-able='true' @confirm="auditNextconfirm"
+			:show-cancel-button="true">
+
+		</u-modal>
+		<previewImage ref="previewImage" :opacity="0.8" :circular="true" :imgs="previewImgs"></previewImage>
+
+		<u-modal v-model="underwriteShow" :title="underwriteTitle" :title-style="{fontWeight:'bold'}"
+			:confirm-text="confirmText" :cancel-text="cancelText" :confirm-style="{background:'#0052FF',color:'#fff'}"
+			:show-cancel-button="true" @confirm="underwriteconfirm" @cancel="underwritecancel">
+			<view class="slot-content">
+				<scroll-view class="scrollBar" scroll-y="true"
+					style="max-height: 300px; padding: 10px 20px; box-sizing: border-box;">
+					<view class="content">
+						<view>{{underwriteMsg}}</view>
+					</view>
+				</scroll-view>
+				<!-- <view class="scrollBar">
+					<view>{{underwriteMsg}}</view>
+				</view> -->
+			</view>
+		</u-modal>
+	</view>
+</template>
+<script>
+	import {
+		mapState,
+		mapMutations
+	} from "vuex"
+	import {
+		pathToBase64,
+		base64ToPath
+	} from '@/common/pdf.js'
+	import uniPopup from '@/components/uni-popup/uni-popup.vue';
+	import previewImage from '@/components/common/previewImage/previewImage.vue'; //引用插件
+	export default {
+		components: {
+			uniPopup,
+			previewImage
+		},
+		computed: {
+			...mapState(['userInfo', 'token', 'quotationType']),
+			getHeight() {
+				let height = uni.getSystemInfoSync().windowHeight;
+				return `minHeight: ${height}px;`;
+			}
+		},
+		data() {
+			return {
+				//核保提示
+				underwriteShow: false,
+				underwriteTitle: "订单自核成功", //核保状态
+				confirmText: "立即缴费", //核保提示自定义按钮
+				cancelText: "暂不缴费",
+				underwriteMsg: "",
+				//核保提示
+				auditNextShow: false, //核保确认标识
+				auditReturnInfoShow: false, //核保信息返回标识
+				auditReturnInfoContent: "", //核保返回信息
+				modificationFlag: false, //影响修改标识
+				ziJinshow: false, //紫金特约
+				huaTaishow: false, //紫金特约
+				toolPopupshow: false, //底部弹窗
+				agree: false,
+				logoimg: "",
+				companyId: "", //订单号
+				orderInfo: {},
+				licenseNo: "", //车牌号
+				icon: "", //保险公司logo
+				name: "", //保险公司名称
+				carInfo: {}, //车辆信息
+				ownerInfo: {}, //车主信息
+				policyHolderInfo: {}, //投保人信息
+				insuredPersonInfo: {}, //被保人信息
+				riskList: [], //险种大类信息
+				kindList: [], //商业险险别
+				sumPermium: "", //报价金额
+				taxAmount: "", //车船税金额
+				jqpremium: "", //交强险金额
+				sypremium: "", //商业险金额
+
+				orderstatus: "0", //订单状态
+				CIStartDate: "", //交强险日期
+				BIStartDate: "", //商业险日期
+				showCarInfo: false,
+				showextendInfo: false,
+				insureList: [{
+						amount: "0",
+						coveragePremium: "",
+						amtList: [{
+							"label": "投保",
+							"value": "1"
+						}],
+						kindCode: "A",
+						isMainRisk: true,
+						kindName: "机动车损失险"
+					},
+					{
+						amount: "0",
+						coveragePremium: "",
+						amtList: [{
+							"label": "10万",
+							"value": "100000"
+						}, {
+							"label": "15万",
+							"value": "150000"
+						}, {
+							"label": "20万",
+							"value": "200000"
+						}, {
+							"label": "30万",
+							"value": "300000"
+						}, {
+							"label": "50万",
+							"value": "500000"
+						}, {
+							"label": "100万",
+							"value": "1000000"
+						}, {
+							"label": "150万",
+							"value": "1500000"
+						}, {
+							"label": "200万",
+							"value": "2000000"
+						}, {
+							"label": "250万",
+							"value": "2500000"
+						}, {
+							"label": "300万",
+							"value": "3000000"
+						}, {
+							"label": "500万",
+							"value": "5000000"
+						}, {
+							"label": "1000万",
+							"value": "10000000"
+						}],
+						kindCode: "B",
+						isMainRisk: true,
+						kindName: "第三者责任险"
+					},
+					{
+						amount: "0",
+						coveragePremium: "",
+						amtList: [{
+							"label": "1万",
+							"value": "10000"
+						}, {
+							"label": "2万",
+							"value": "20000"
+						}, {
+							"label": "5万",
+							"value": "50000"
+						}, {
+							"label": "10万",
+							"value": "100000"
+						}, {
+							"label": "15万",
+							"value": "150000"
+						}, {
+							"label": "20万",
+							"value": "200000"
+						}],
+						kindCode: "D3",
+						isMainRisk: true,
+						kindName: "司机责任险"
+					},
+					{
+						amount: "0",
+						coveragePremium: "",
+						amtList: [{
+							"label": "1万",
+							"value": "10000"
+						}, {
+							"label": "2万",
+							"value": "20000"
+						}, {
+							"label": "5万",
+							"value": "50000"
+						}, {
+							"label": "10万",
+							"value": "100000"
+						}, {
+							"label": "15万",
+							"value": "150000"
+						}, {
+							"label": "20万",
+							"value": "200000"
+						}],
+						kindCode: "D4",
+						isMainRisk: true,
+						kindName: "乘客责任险"
+					},
+					{
+						amount: "0",
+						coveragePremium: "",
+						amtList: [{
+							"label": "2000",
+							"value": "2000"
+						}, {
+							"label": "5000",
+							"value": "5000"
+						}, {
+							"label": "1万",
+							"value": "10000"
+						}],
+						isMainRisk: false,
+						kindCode: "L",
+						kindName: "车身划痕险",
+						mainRiskCodeList: "A"
+					},
+					{
+						amount: "0",
+						coveragePremium: "",
+						amtList: [{
+							"label": "5%",
+							"value": "5"
+						}, {
+							"label": "10%",
+							"value": "10"
+						}, {
+							"label": "15%",
+							"value": "15"
+						}, {
+							"label": "20%",
+							"value": "20"
+						}],
+						isMainRisk: false,
+						kindCode: "MJ1",
+						kindName: "绝对免赔率特约险(车损)",
+						mainRiskCodeList: "A"
+					},
+					{
+						amount: "0",
+						coveragePremium: "",
+						amtList: [{
+							"label": "5%",
+							"value": "5"
+						}, {
+							"label": "10%",
+							"value": "10"
+						}, {
+							"label": "15%",
+							"value": "15"
+						}, {
+							"label": "20%",
+							"value": "20"
+						}],
+						isMainRisk: false,
+						kindCode: "MJ2",
+						kindName: "绝对免赔率特约险(三者)",
+						mainRiskCodeList: "B"
+					},
+					{
+						amount: "0",
+						coveragePremium: "",
+						amtList: [{
+							"label": "5%",
+							"value": "5"
+						}, {
+							"label": "10%",
+							"value": "10"
+						}, {
+							"label": "15%",
+							"value": "15"
+						}, {
+							"label": "20%",
+							"value": "20"
+						}],
+						isMainRisk: false,
+						kindCode: "MJ3",
+						kindName: "绝对免赔率特约险(司机)",
+						mainRiskCodeList: "D3"
+					},
+					{
+						amount: "0",
+						coveragePremium: "",
+						amtList: [{
+							"label": "5%",
+							"value": "5"
+						}, {
+							"label": "10%",
+							"value": "10"
+						}, {
+							"label": "15%",
+							"value": "15"
+						}, {
+							"label": "20%",
+							"value": "20"
+						}],
+						isMainRisk: false,
+						kindCode: "MJ4",
+						kindName: "绝对免赔率特约险(乘客)",
+						mainRiskCodeList: "D4"
+					},
+					{
+						amount: "0",
+						coveragePremium: "",
+						amtList: [{
+							"label": "投保",
+							"value": "1"
+						}],
+						isMainRisk: false,
+						kindCode: "BD",
+						kindName: "法定节假日限额翻倍险",
+						mainRiskCodeList: "B"
+					},
+					{
+						amount: "0",
+						amountDesc: "不投保",
+						coveragePremium: "",
+						amtList: [{
+								label: "不投保",
+								value: "0"
+							},
+							{
+								label: "1万",
+								value: "10000"
+							},
+							{
+								label: "2万",
+								value: "20000"
+							},
+							{
+								label: "5万",
+								value: "50000"
+							},
+							{
+								label: "10万",
+								value: "100000"
+							}
+						],
+						kindCode: "SY_FJ_YBW1",
+						isMainRisk: false,
+						kindName: "附加医保-三者",
+						desc: "附加医保外医疗费用责任险(机动车第三者责任保险)"
+					},
+					{
+						amount: "0",
+						amountDesc: "不投保",
+						coveragePremium: 0,
+						amtList: [{
+								label: "不投保",
+								value: "0"
+							},
+							{
+								label: "1万",
+								value: "10000"
+							},
+							{
+								label: "2万",
+								value: "20000"
+							},
+							{
+								label: "5万",
+								value: "50000"
+							},
+							{
+								label: "10万",
+								value: "100000"
+							}
+						],
+						kindCode: "SY_FJ_YBW2",
+						isMainRisk: false,
+						kindName: "附加医保-座位险(乘客)",
+						desc: "附加医保外医疗费用责任险(机动车第三者责任保险)"
+					},
+					{
+						amount: "0",
+						amountDesc: "不投保",
+						coveragePremium: 0,
+						amtList: [{
+								label: "不投保",
+								value: "0"
+							},
+							{
+								label: "1万",
+								value: "10000"
+							},
+							{
+								label: "2万",
+								value: "20000"
+							},
+							{
+								label: "5万",
+								value: "50000"
+							},
+							{
+								label: "10万",
+								value: "100000"
+							}
+						],
+						kindCode: "SY_FJ_YBW3",
+						isMainRisk: false,
+						kindName: "附加医保-座位险(司机)",
+						desc: "附加医保外医疗费用责任险(机动车第三者责任保险)"
+					},
+				],
+				vehicleModel: {}, //车型信息
+				showOwerInfo: false, //展示车主信息
+				showPolicyHolderInfo: false, //展示投保人信息
+				showAppoint: false, //展示特约
+				showApplyno: false, //展示投保单号
+				showPolicyno: false, //展示保单号
+				showPolicyFile: false, //展示电子保单
+				showPolicybzFile: false, //展示电子保单
+				policyList: [], //电子保单文件
+				policyList1: [], //电子标志文件
+				showCarImageInfo: false, //显示车辆影像
+				carImageListId: [],
+				ownerImageListId: [],
+				policyImageListId: [],
+				insuredImageListId: [],
+				imgRelationshipid: [],
+				imgNewCarinvoiceId: [],
+				imgList1: [],
+				imgList2: [],
+				imgList3: [],
+				imgList4: [],
+				imgList5: [],
+				imgList6: [],
+				imgList7: [],
+				imgList8: [],
+				imgRelationship: [], //其他证明
+				imgNewCarQualified: [], //合格证
+				imgNewCarInvoice: [], //发票
+				previewImgs: [],
+				dianzibaodan: "",
+				jypremium: "",
+				quoteno: "",
+				extendInfo: {},
+				routepage: "",
+				roadrescueList: [],
+				companyUnderwriting: "",
+				ziJinengageListData: [],
+				ziJinengageList: [],
+				huaTaiengageListData: [],
+				huaTaiengageList: [],
+				natureOfVehicleUseoptions: [],
+				vehicleTypeoptions: [],
+				trafficManagementVehicleTypeoptions: [],
+				energyTypeoptions: [],
+				businessVehicleUseoptions: [],
+				outOfBusinessVehicleUseoptions: [],
+			}
+		},
+		async onLoad(params) {
+			let pages = getCurrentPages(); // 当前页面路由
+			if (pages.length > 1) {
+				let beforePage = pages[pages.length - 2].route; // 上一个页面路由
+				this.routepage = beforePage;
+			}
+			await this.getDicType("businessVehicleUse"); //车辆用途(营业)
+			await this.getDicType("outOfBusinessVehicleUse"); //车辆用途(非营业)
+			await this.getDicType("natureOfVehicleUse"); //车辆性质
+			await this.getDicType("vehicleType"); //车辆种类
+			await this.getDicType("trafficManagementVehicleType"); //车辆类型
+			await this.getDicType("energyType"); //能源种类
+
+			if (!!params.companyId) {
+				this.companyId = params.companyId;
+				let param = {
+					companyId: params.companyId
+				};
+				let res = await this.$http.post('/insurance/order/getByCompanyId', param);
+				if (res.code == 200) {
+					this.icon = "";
+					this.quoteno = res.data.quoteno;
+					this.name = res.data.inscompany;
+					this.carInfo = res.data.carinfo;
+					this.carInfo.carnature = this.dictionaryMatching(this.natureOfVehicleUseoptions,
+						this
+						.carInfo
+						.carnature)
+					this.carInfo.vehicleUse = this.carInfo.carnature == '非营业' ? this.dictionaryMatching(this
+						.outOfBusinessVehicleUseoptions,
+						this
+						.carInfo
+						.vehicleUse) : this.dictionaryMatching(this.businessVehicleUseoptions,
+						this
+						.carInfo
+						.vehicleUse)
+					this.carInfo.cimodelclass = this.dictionaryMatching(this.vehicleTypeoptions,
+						this
+						.carInfo
+						.cimodelclass)
+					this.carInfo.cartype = this.dictionaryMatching(this.trafficManagementVehicleTypeoptions,
+						this
+						.carInfo
+						.cartype)
+					this.carInfo.energyType = this.dictionaryMatching(this.energyTypeoptions,
+						this
+						.carInfo
+						.energyType)
+					this.extendInfo = res.data.extendInfo;
+					this.licenseNo = res.data.licenseno;
+					// if (!!this.carInfo.loanStatus) {
+					// 	this.carInfo.loanStatus = 1;
+					// } else {
+					// 	this.carInfo.loanStatus = 0;
+					// }
+					if (this.carInfo.registerDate) {
+						let year1 = new Date(this.carInfo.registerDate).getFullYear()
+						let month1 = new Date(this.carInfo.registerDate).getMonth() + 1
+						if (month1 < 10) {
+							month1 = '0' + month1;
+						}
+						let day1 = new Date(this.carInfo.registerDate).getDate()
+						if (day1 < 10) {
+							day1 = '0' + day1;
+						}
+						this.carInfo.registerDate = year1 + '-' + month1 + '-' + day1
+					}
+					if (this.carInfo.issueDate) {
+						let year2 = new Date(this.carInfo.issueDate).getFullYear()
+						let month2 = new Date(this.carInfo.issueDate).getMonth() + 1
+						if (month2 < 10) {
+							month2 = '0' + month2;
+						}
+						let day2 = new Date(this.carInfo.issueDate).getDate()
+						if (day2 < 10) {
+							day2 = '0' + day2;
+						}
+						this.carInfo.issueDate = year2 + '-' + month2 + '-' + day2
+					}
+					if (this.carInfo.transferDate) {
+						let year3 = new Date(this.carInfo.transferDate).getFullYear()
+						let month3 = new Date(this.carInfo.transferDate).getMonth() + 1
+						if (month3 < 10) {
+							month3 = '0' + month3;
+						}
+						let day3 = new Date(this.carInfo.transferDate).getDate()
+						if (day3 < 10) {
+							day3 = '0' + day3;
+						}
+						this.carInfo.transferDate = year3 + '-' + month3 + '-' + day3
+					}
+					this.ownerInfo = res.data.ownerinfo;
+					this.policyHolderInfo = res.data.applyinfo;
+					this.insuredPersonInfo = res.data.insureinfo;
+					this.riskList = res.data.riskinfo;
+					this.kindList = res.data.kindinfo;
+					this.sumPermium = res.data.sumpremium;
+					this.taxAmount = res.data.taxamount;
+					this.sypremium = res.data.sypremium;
+					this.jqpremium = res.data.jqpremium;
+					this.jypremium = res.data.jypremium;
+					this.orderstatus = res.data.orderstatus;
+					this.orderInfo = Object.assign({}, res.data)
+					this.roadrescueList = this.kindList.filter((val) => {
+						return ["TY1", "TY2", "TY3", "TY4"].includes(val.kindCode)
+					})
+					this.imageEcho(this.quoteno) // 影像获取完毕
+					switch (this.name) {
+						case "永安财险":
+							this.yonganprint(); //电子保单
+							break;
+						case "中煤财险":
+							this.zhongMeigetPolicyPrint(); //电子保单
+							break;
+						case "恒邦财险":
+						case "安盛天平":
+						case "众安财险":
+						case "中国人寿":
+						case "太平财险":
+						case "华农财险":
+						case "泰康财险":
+							this.pythonprint(); //电子保单
+							break;
+						case "永诚财险":
+							this.yongChenggetPolicyPrint(); //电子保单
+							break;
+						case "紫金财险":
+							this.ziJingetPolicyPrint(); //电子保单
+							break;
+						case "华泰财险":
+							this.huaTaigetPolicyPrint(); //电子保单
+							break;
+						case "国任财险":
+							this.guoRengetPolicyPrint(); //电子保单
+							break;
+						case "大家财险":
+							this.daJiagetPolicyPrint(); //电子保单
+							break;
+						default:
+							this.externalOrder();
+					}
+					this.$base.insCompanyList.map(ele => {
+						if (ele.name == res.data.inscompany) {
+							uni.getImageInfo({
+								src: ele.icon,
+								success: image => {
+									pathToBase64(image.path)
+										.then(base64 => {
+											this.logoimg = base64;
+										})
+										.catch(error => {});
+								},
+								fail: err => {}
+							});
+						}
+						return ele;
+					})
+				}
+				if (this.name == '紫金财险') {
+					let Zijinres = await this.$http.post('/order/zijin/queryClauseData', param);
+					this.ziJinengageListData = Zijinres.data;
+					let data = this.ziJinengageListData.find(val => val.optType == 3)
+					if (data) {
+						this.ziJinengageList.push({
+							clauseCode: data.clauseCode,
+							clauseName: data.clauseName,
+							clauses: data.clauseContent,
+							riskCode: data.riskCode,
+							modifyFlag: data.modifyFlag,
+							optType: data.optType,
+						})
+					}
+
+				}
+				if (this.name == '华泰财险') {
+					let huaTaires = await this.$http.post('/order/huaTaiApi/queryClauseData', param);
+					this.huaTaiengageListData = huaTaires.data;
+					huaTaires.data.map(val => {
+						if (val.optType == '2') {
+							this.huaTaiengageList.push({
+								engageCode: val.engageCode,
+								engageDetail: val.engageDetail,
+								engageTitle: val.engageTitle,
+								riskCode: val.riskCode,
+								modifyFlag: val.modifyFlag,
+							})
+						}
+					})
+				}
+			} else {
+				uni.showModal({
+					showCancel: false,
+					title: "未查询到该订单"
+				})
+			}
+			if (this.orderstatus == '3') {
+				uni.setNavigationBarTitle({
+					title: "订单详情"
+				})
+			}
+		},
+		methods: {
+			...mapMutations(['setOrderStage', 'setOrderType']),
+			underwritecancel() {
+				this.navigate({
+						url: "/pages/orders1/orders"
+					}, "switchTab",
+					true);
+			},
+			underwriteconfirm() {
+				switch (this.underwriteTitle) {
+					case '订单自核成功':
+						if (this.quotationType.themeCode == 'QD') {
+							uni.navigateTo({
+								url: "/pages/orders1/paymentCode?companyId=" +
+									this
+									.companyId + '&apiType=' + this.orderInfo
+									.apiType,
+							})
+						} else {
+							uni.navigateTo({
+								url: "/pages/orders1/paymentCode1?companyId=" +
+									this
+									.companyId + '&apiType=' + this.orderInfo
+									.apiType,
+							})
+						}
+						break;
+					case '核保失败':
+						// uni.navigateBack({
+						// 	delta: 1
+						// });
+						break;
+					case '影像上传失败':
+						break;
+
+				}
+
+			},
+
+			//字典name匹配
+			dictionaryMatching(list, value) {
+				let obj = list.find(val => val.dictValue == value);
+				return obj.dictTag;
+			},
+			async getDicType(type) {
+				let res = await this.$http.get('/sysDict/dictDetails/' + type);
+				if (res.code == 200) {
+					this[type + 'options'] = res.data.ddList;
+					// if (type == "trafficManagementVehicleType") {
+					// 
+					// 	this.carInfo1.cimodelclass = this.dictionaryMatching(this.vehicleTypeoptions,
+					// 		this
+					// 		.carInfo
+					// 		.cimodelclass)
+					// }
+				}
+			},
+			ziJincontributingChange(param) {
+				this.ziJinengageList = [];
+				param.map(val => {
+					let list = this.ziJinengageListData.find(item => item.clauseId == val)
+					this.ziJinengageList.push({
+						clauseCode: list.clauseCode,
+						clauseName: list.clauseName,
+						clauses: list.clauseContent,
+						riskCode: list.riskCode,
+						modifyFlag: list.modifyFlag,
+					})
+				})
+			},
+			huaTaicontributingChange(param) {
+				this.huaTaiengageList = [];
+				param.map(val => {
+					let list = this.huaTaiengageListData.find(item => item.engageCode == val)
+					this.huaTaiengageList.push({
+						engageCode: list.engageCode,
+						engageDetail: list.engageDetail,
+						engageTitle: list.engageTitle,
+						riskCode: list.riskCode,
+						modifyFlag: list.modifyFlag,
+					})
+				})
+			},
+			//阅读并同意协议
+			agreed(e) {
+				this.agree = e.value;
+			},
+			toCarInfo() {
+				this.navigate({
+					url: '/pages/carInsure2/Information',
+					success: (res) => {
+						res.eventChannel.emit(
+							"acceptData", {
+								carInfo: this
+									.carInfo,
+								ownerInfo: this
+									.ownerInfo,
+								policyHolderInfo: this
+									.policyHolderInfo,
+								insuredPersonInfo: this
+									.insuredPersonInfo,
+								riskList: this
+									.riskList,
+								kindList: this
+									.kindList,
+								carInfoPositiveList: this
+									.carInfoPositiveList, //车辆
+								ownerInfoPositiveList: this
+									.ownerInfoPositiveList, //车主
+								policyHolderInfoPositiveList: this
+									.policyHolderInfoPositiveList, //投保
+								insuredPersonInfoPositiveList: this
+									.insuredPersonInfoPositiveList, //被保人
+
+							})
+					}
+				}, "navigateTo", true);
+			},
+			//去选择险种页面
+			toInsureItems() {
+				this.navigate({
+					url: '/pages/carInsure2/insureItems',
+					success: (res) => {
+						res.eventChannel.emit("acceptData", {
+							carInfo: this.carInfo,
+							ownerInfo: this.ownerInfo,
+							policyHolderInfo: this.policyHolderInfo,
+							insuredPersonInfo: this.insuredPersonInfo,
+							riskList: this.riskList,
+							kindList: this.kindList
+						})
+					}
+				}, "navigateTo", true);
+			},
+			//删除图片
+			delCheckImage(param, IdList, srcList) {
+				this[IdList].map((ele, index) => {
+					if (param.imageId === ele.imageId) {
+						this[IdList].splice(index, 1);
+					}
+					return ele;
+				});
+				this[srcList].map((ele, index) => {
+					if (param.imageId === ele.imageId) {
+						this[srcList].splice(index, 1);
+					}
+					return ele;
+				});
+			},
+			//影像查询
+			async imageEcho(quotenos) {
+				let imgres = await this.$http.get('/ins/taskImage/findByQuoteNo?quoteNo=' + quotenos);
+				if (imgres.code == "200") {
+					Object.keys(imgres.data).forEach((keys) => {
+						if (imgres.data[keys].url) {
+							imgres.data[keys].url = this.$base.baseUrl + imgres.data[keys].url;
+							switch (keys) {
+								case 'C01':
+									this.carImageListId.push({
+										imageId: imgres.data[keys].imageId,
+										imageType: imgres.data[keys].imageType,
+									})
+									this.imgList1.push(imgres.data[keys]);
+									break;
+								case 'D01':
+									this.carImageListId.push({
+										imageId: imgres.data[keys].imageId,
+										imageType: imgres.data[keys].imageType,
+									})
+									this.imgList2.push(imgres.data[keys]);
+									break;
+								case 'C02':
+									this.ownerImageListId.push({
+										imageId: imgres.data[keys].imageId,
+										imageType: imgres.data[keys].imageType,
+									})
+									this.imgList3.push(imgres.data[keys]);
+									break;
+								case 'D02':
+									this.ownerImageListId.push({
+										imageId: imgres.data[keys].imageId,
+										imageType: imgres.data[keys].imageType,
+									})
+									this.imgList4.push(imgres.data[keys]);
+									break;
+								case 'C03':
+									this.policyImageListId.push({
+										imageId: imgres.data[keys].imageId,
+										imageType: imgres.data[keys].imageType,
+									})
+									this.imgList5.push(imgres.data[keys]);
+									break;
+								case 'D03':
+									this.policyImageListId.push({
+										imageId: imgres.data[keys].imageId,
+										imageType: imgres.data[keys].imageType,
+									})
+									this.imgList6.push(imgres.data[keys]);
+									break;
+								case 'C04':
+									this.insuredImageListId.push({
+										imageId: imgres.data[keys].imageId,
+										imageType: imgres.data[keys].imageType,
+									})
+									this.imgList7.push(imgres.data[keys]);
+									break;
+								case 'D04':
+									this.insuredImageListId.push({
+										imageId: imgres.data[keys].imageId,
+										imageType: imgres.data[keys].imageType,
+									})
+									this.imgList8.push(imgres.data[keys]);
+									break;
+								default:
+									break;
+							}
+						}
+					});
+				}
+			},
+			async uploadRetry() {
+				const mergedArray = [...this.carImageListId, ...this.ownerImageListId, ...this
+					.policyImageListId, ...this.insuredImageListId, ...this
+					.imgRelationshipid
+				];
+				if (mergedArray.length > 0) {
+					await this.$http.post('/ins/taskImage/uploadImages', {
+						imageList: mergedArray,
+						quoteNo: this.quoteno,
+					})
+				}
+			},
+			async auditNextconfirm() {
+				if (this.modificationFlag) {
+					await this.uploadRetry();
+				}
+				switch (this.name) {
+					case "永安财险":
+						let yaimage = await this.$http.post(
+							'/order/yongAn/submitImage', {
+								companyId: this.companyId
+							});
+						if (yaimage.code == '200') {
+							let yaaudit = await this.$http.post(
+								'/order/yongAn/audit', {
+									companyId: this.companyId,
+									jqappoint: "",
+									syappoint: ""
+								});
+							if (yaaudit.code == '200') {
+								this.underwriteTitle = '订单自核成功';
+								this.cancelText = '暂不缴费';
+								this.confirmText = '立即缴费';
+								this.underwriteShow = true;
+							} else {
+								this.underwriteTitle = '核保失败';
+								this.cancelText = '返回订单';
+								this.confirmText = '关闭';
+								this.underwriteMsg = yaaudit.msg;
+								this.underwriteShow = true;
+							}
+						} else {
+							this.underwriteTitle = '影像上传失败';
+							this.cancelText = '返回订单';
+							this.confirmText = '关闭';
+							this.underwriteMsg = yaimage.msg;
+							this.underwriteShow = true;
+						}
+						break;
+					case "中煤财险":
+						let zmimage = await this.$http.post(
+							'/order/zhongMeiApi/submitImage', {
+								companyId: this.companyId
+							});
+						if (zmimage.code == '200') {
+							let zmaudit = await this.$http.post(
+								'/order/zhongMeiApi/audit', {
+									companyId: this.companyId,
+									jqappoint: "",
+									syappoint: ""
+								});
+							if (zmaudit.code == '200') {
+								this.underwriteTitle = '订单自核成功';
+								this.cancelText = '暂不缴费';
+								this.confirmText = '立即缴费';
+								this.underwriteShow = true;
+							} else {
+								this.underwriteTitle = '核保失败';
+								this.cancelText = '返回订单';
+								this.confirmText = '关闭';
+								this.underwriteMsg = zmaudit.msg;
+								this.underwriteShow = true;
+							}
+						} else {
+							this.underwriteTitle = '影像上传失败';
+							this.cancelText = '返回订单';
+							this.confirmText = '关闭';
+							this.underwriteMsg = zmimage.msg;
+							this.underwriteShow = true;
+						}
+						break;
+					case "永诚财险":
+						let ycimage = await this.$http.post(
+							'/api/yongCheng/uploadImage', {
+								companyId: this.companyId
+							});
+						if (ycimage.code == '200') {
+							let ycaudit = await this.$http.post(
+								'/api/yongCheng/audit', {
+									companyId: this.companyId,
+								});
+							if (ycaudit.code == '200') {
+								this.underwriteTitle = '订单自核成功';
+								this.cancelText = '暂不缴费';
+								this.confirmText = '立即缴费';
+								this.underwriteShow = true;
+							} else {
+								this.underwriteTitle = '核保失败';
+								this.cancelText = '返回订单';
+								this.confirmText = '关闭';
+								this.underwriteMsg = ycaudit.msg;
+								this.underwriteShow = true;
+							}
+						} else {
+							this.underwriteTitle = '影像上传失败';
+							this.cancelText = '返回订单';
+							this.confirmText = '关闭';
+							this.underwriteMsg = ycimage.msg;
+							this.underwriteShow = true;
+						}
+						break;
+					case "国任财险":
+						let grimage = await this.$http.post(
+							'/api/guoRen/uploadImage', {
+								companyId: this.companyId
+							});
+						if (grimage.code == '200') {
+							let graudit = await this.$http.post(
+								'/api/guoRen/audit', {
+									companyId: this.companyId,
+								});
+							if (graudit.code == '200') {
+								this.underwriteTitle = '订单自核成功';
+								this.cancelText = '暂不缴费';
+								this.confirmText = '立即缴费';
+								this.underwriteShow = true;
+							} else {
+								this.underwriteTitle = '核保失败';
+								this.cancelText = '返回订单';
+								this.confirmText = '关闭';
+								this.underwriteMsg = graudit.msg;
+								this.underwriteShow = true;
+							}
+						} else {
+							this.underwriteTitle = '影像上传失败';
+							this.cancelText = '返回订单';
+							this.confirmText = '关闭';
+							this.underwriteMsg = grimage.msg;
+							this.underwriteShow = true;
+						}
+						break;
+					case "大家财险":
+						let djapiImage = this.orderInfo.apiType == "2" ? "/insurance/crawler/submitImage" :
+							"/api/dajia/submitImage";
+						let djimage = await this.$http.post(
+							`${djapiImage}`, {
+								[this.orderInfo.apiType == 2 ? "subOrderNo" : "companyId"]: this.companyId
+							});
+						if (djimage.code == '200') {
+							let djapiAudit = this.orderInfo.apiType == "2" ? "/insurance/crawler/audit" :
+								'/api/dajia/audit';
+							let djaudit = await this.$http.post(
+								`${djapiAudit}`, {
+									[this.orderInfo.apiType == 2 ? "subOrderNo" : "companyId"]: this.companyId,
+								});
+							if (djaudit.code == '200') {
+								this.underwriteTitle = '订单自核成功';
+								this.cancelText = '暂不缴费';
+								this.confirmText = '立即缴费';
+								this.underwriteShow = true;
+							} else {
+								this.underwriteTitle = '核保失败';
+								this.cancelText = '返回订单';
+								this.confirmText = '关闭';
+								this.underwriteMsg = djaudit.msg;
+								this.underwriteShow = true;
+							}
+						} else {
+							this.underwriteTitle = '影像上传失败';
+							this.cancelText = '返回订单';
+							this.confirmText = '关闭';
+							this.underwriteMsg = djimage.msg;
+							this.underwriteShow = true;
+						}
+						break;
+					case "紫金财险":
+						let zjimage = await this.$http.post(
+							'/order/zijin/submitImage', {
+								companyId: this.companyId
+							});
+						if (zjimage.code == '200') {
+							let zjaudit = await this.$http.post(
+								'/order/zijin/audit', {
+									companyId: this.companyId,
+									engageList: this.ziJinengageList,
+								});
+							if (zjaudit.code == '200') {
+								this.underwriteTitle = '订单自核成功';
+								this.cancelText = '暂不缴费';
+								this.confirmText = '立即缴费';
+								this.underwriteShow = true;
+							} else {
+								this.underwriteTitle = '核保失败';
+								this.cancelText = '返回订单';
+								this.confirmText = '关闭';
+								this.underwriteMsg = zjaudit.msg;
+								this.underwriteShow = true;
+							}
+						} else {
+							this.underwriteTitle = '影像上传失败';
+							this.cancelText = '返回订单';
+							this.confirmText = '关闭';
+							this.underwriteMsg = zjimage.msg;
+							this.underwriteShow = true;
+						}
+						break;
+					case "华泰财险":
+						let htapiImage = this.orderInfo.apiType == "2" ? "/insurance/crawler/submitImage" :
+							"/order/huaTaiApi/submitImage";
+						let htimage = await this.$http.post(
+							`${htapiImage}`, {
+								[this.orderInfo.apiType == 2 ? "subOrderNo" : "companyId"]: this.companyId
+							});
+						if (htimage.code == '200') {
+							let htapiAudit = this.orderInfo.apiType == "2" ? "/insurance/crawler/audit" :
+								'/order/huaTaiApi/audit';
+							let htaudit = await this.$http.post(
+								`${htapiAudit}`, {
+									[this.orderInfo.apiType == 2 ? "subOrderNo" : "companyId"]: this.companyId,
+									engageList: this.huaTaiengageList,
+								});
+							if (htaudit.code == '200') {
+								this.underwriteTitle = '订单自核成功';
+								this.cancelText = '暂不缴费';
+								this.confirmText = '立即缴费';
+								this.underwriteShow = true;
+							} else {
+								this.underwriteTitle = '核保失败';
+								this.cancelText = '返回订单';
+								this.confirmText = '关闭';
+								this.underwriteMsg = htaudit.msg;
+								this.underwriteShow = true;
+							}
+						} else {
+							this.underwriteTitle = '影像上传失败';
+							this.cancelText = '返回订单';
+							this.confirmText = '关闭';
+							this.underwriteMsg = htimage.msg;
+							this.underwriteShow = true;
+						}
+						break;
+					case "渤海财险":
+						let bhimage = await this.$http.post(
+							'/order/boHaiApi/submitImage', {
+								companyId: this.companyId
+							});
+						if (bhimage.code == '200') {
+							let bhaudit = await this.$http.post(
+								'/order/boHaiApi/audit', {
+									companyId: this.companyId,
+									jqappoint: "",
+									syappoint: ""
+								});
+							if (bhaudit.code == '200') {
+								this.underwriteTitle = '订单自核成功';
+								this.cancelText = '暂不缴费';
+								this.confirmText = '立即缴费';
+								this.underwriteShow = true;
+							} else {
+								this.underwriteTitle = '核保失败';
+								this.cancelText = '返回订单';
+								this.confirmText = '关闭';
+								this.underwriteMsg = bhaudit.msg;
+								this.underwriteShow = true;
+							}
+						} else {
+							this.underwriteTitle = '影像上传失败';
+							this.cancelText = '返回订单';
+							this.confirmText = '关闭';
+							this.underwriteMsg = bhimage.msg;
+							this.underwriteShow = true;
+						}
+						break;
+					case "恒邦财险":
+					case "安盛天平":
+					case "众安财险":
+					case "中国人寿":
+					case "太平财险":
+					case "华农财险":
+					case "泰康财险":
+						let pythonimage = await this.$http.post(
+							'/insurance/crawler/submitImage', {
+								subOrderNo: this.companyId
+							});
+						if (pythonimage.code == '200') {
+							let pythonaudit = await this.$http.post(
+								'/insurance/crawler/audit', {
+									subOrderNo: this.companyId,
+								});
+							if (pythonaudit.code == '200') {
+								this.underwriteTitle = '订单自核成功';
+								this.cancelText = '暂不缴费';
+								this.confirmText = '立即缴费';
+								this.underwriteShow = true;
+							} else {
+								this.underwriteTitle = '核保失败';
+								this.cancelText = '返回订单';
+								this.confirmText = '关闭';
+								this.underwriteMsg = pythonaudit.msg;
+								this.underwriteShow = true;
+							}
+						} else {
+							this.underwriteTitle = '影像上传失败';
+							this.cancelText = '返回订单';
+							this.confirmText = '关闭';
+							this.underwriteMsg = pythonimage.msg;
+							this.underwriteShow = true;
+						}
+						break;
+				}
+			},
+			// 上传影像并提交核保
+			async submitAudit() {
+				// if (!this.agree) {
+				// 	return uni.showToast({
+				// 		title: '请阅读并同意协议',
+				// 		icon: "none",
+				// 		duration: 2000
+				// 	});
+				// }
+				this.auditNextShow = true;
+			},
+			async chooseImage(type, imageIdList, imgurl) {
+				let [chooseImageErr, chooseImageRes] = await uni.chooseImage({
+					count: 1,
+					sizeType: ['compressed']
+				});
+				chooseImageRes.tempFilePaths.map((ele, index) => {
+					uni.uploadFile({
+						url: this.$base.baseUrl + '/ins/taskImage/uploadFile',
+						filePath: ele,
+						name: "multipartFile",
+						formData: {
+							'type': 'image',
+						},
+						header: {
+							Authorization: this.token,
+						},
+						success: async (imgRes) => {
+							let data = JSON.parse(imgRes.data);
+							data.data.url = this.$base.baseUrl + data.data.url;
+							if (data.code == "200") {
+								if (this[imageIdList].some(v => v.imageType == type)) {
+									this[imageIdList].map(val => {
+										if (val.imageType == type) {
+											val.imageId = data.data.id;
+										}
+									})
+								} else {
+									this[imageIdList].push({
+										imageId: data.data.id,
+										imageType: type,
+									})
+								}
+								this[imgurl].push(data.data)
+								this.modificationFlag = true;
+							}
+						}
+					});
+				})
+			},
+			//影像预览
+			previewImage(e, type) {
+				this.previewImgs = this[type];
+				var current = e.currentTarget.dataset.src;
+				this.$refs.previewImage.open(current); // 传入当前选中的图片地址或序号
+			},
+			//查询电子保单
+			async yonganprint() {
+				this.policyList = [];
+				this.policyList1 = [];
+				let res = await this.$http.post('/order/yongAn/getPolicyPrint', {
+					companyId: this.companyId,
+					policytype: "jq"
+				}); //永安
+				if (res.data) {
+					let result = res.data.replace(/[\r\n]/g, "");
+					let pdfBase64 = `data:application/pdf;base64,${result}`;
+					base64ToPath(pdfBase64)
+						.then(path => {
+							this.policyList.push({
+								fileTitle: "交强电子保单",
+								filename: this.orderInfo.jqpolicyno,
+								fileurl: path,
+							})
+						})
+				}
+				let res1 = await this.$http.post('/order/yongAn/getPolicyPrint2', {
+					companyId: this.companyId,
+					policytype: "jq"
+				}); //永安
+				if (res1.data) {
+					let result = res1.data.replace(/[\r\n]/g, "");
+					let pdfBase64 = `data:application/pdf;base64,${result}`;
+					base64ToPath(pdfBase64)
+						.then(path => {
+							this.policyList1.push({
+								fileTitle: "交强电子标志",
+								filename: this.orderInfo.jqpolicyno,
+								fileurl: path,
+							})
+						})
+				}
+				if (this.orderInfo.sypolicyno) {
+					let res2 = await this.$http.post('/order/yongAn/getPolicyPrint2', {
+						companyId: this.companyId,
+						policytype: "sy"
+					}); //永安
+					if (res2.data) {
+						let result = res1.data.replace(/[\r\n]/g, "");
+						let pdfBase64 = `data:application/pdf;base64,${result}`;
+						base64ToPath(pdfBase64)
+							.then(path => {
+								this.policyList.push({
+									fileTitle: "商业电子保单",
+									filename: this.orderInfo.sypolicyno,
+									fileurl: path,
+								})
+							})
+					}
+				}
+			},
+			async zhongMeigetPolicyPrint() {
+				this.policyList = [];
+				this.policyList1 = [];
+				if (this.orderInfo.jqpolicyno) {
+					let res = await this.$http.post('/order/zhongMeiApi/getPolicyPrint', {
+						companyId: this.companyId,
+						riskCode: "0507",
+						type: '2', //2:保单
+					});
+					if (res.code == '200') {
+						this.policyList.push({
+							fileTitle: "交强电子保单",
+							filename: this.orderInfo.jqpolicyno,
+							fileurl: res.data[0],
+						})
+					}
+					let res1 = await this.$http.post('/order/zhongMeiApi/getPolicyPrint', {
+						companyId: this.companyId,
+						riskCode: "0507",
+						type: '1', //1:标志
+					});
+					if (res1.code == '200') {
+						this.policyList1.push({
+							fileTitle: "交强电子标志",
+							filename: this.orderInfo.jqpolicyno,
+							fileurl: res1.data[0],
+						})
+					}
+				}
+				if (this.orderInfo.sypolicyno) {
+					let res = await this.$http.post('/order/zhongMeiApi/getPolicyPrint', {
+						companyId: this.companyId,
+						riskCode: "0510",
+						type: '2', //2:标志
+					});
+					if (res.code == '200') {
+						this.policyList.push({
+							fileTitle: "商业电子保单",
+							filename: this.orderInfo.sypolicyno,
+							fileurl: res.data[0],
+						})
+					}
+				}
+
+			},
+			async yongChenggetPolicyPrint() {
+				this.policyList = [];
+				this.policyList1 = [];
+				let res = await this.$http.post('/api/yongCheng/getPolicyPrint', {
+					companyId: this.companyId,
+					riskCode: "0507",
+					type: '2', //2:保单
+				}); //永诚财险
+				if (res.code == '200') {
+					this.policyList.push({
+						fileTitle: "交强电子保单",
+						filename: this.orderInfo.jqpolicyno,
+						fileurl: res.data.jqUrl,
+					})
+					if (res.data.jqFlagUrl) {
+						this.policyList1.push({
+							fileTitle: "交强电子标志",
+							filename: this.orderInfo.jqpolicyno,
+							fileurl: res.data.jqFlagUrl,
+						})
+					}
+				}
+				if (this.orderInfo.sypolicyno) {
+					let res = await this.$http.post('/api/yongCheng/getPolicyPrint', {
+						companyId: this.companyId,
+						riskCode: "0510",
+						type: '2', //2:保单
+					}); //永诚财险
+					if (res.code == '200') {
+						this.policyList.push({
+							fileTitle: "商业电子保单",
+							filename: this.orderInfo.sypolicyno,
+							fileurl: res.data.syUrl,
+						});
+					}
+				}
+				if (this.orderInfo.crossInsurance.length > 0) {
+					this.orderInfo.crossInsurance.map(async ele => {
+						let res = await this.$http.post('/api/yongCheng/getPolicyPrint', {
+							companyId: this.companyId,
+							policyNumber: ele.policyNumber,
+							riskCode: "0513",
+							type: '2', //2:保单
+						});
+						if (res.code == '200') {
+							this.policyList.push({
+								fileTitle: "驾意险保单",
+								filename: ele.policyNumber,
+								fileurl: res.data.jyUrl,
+							})
+						}
+					})
+				}
+			},
+			//爬虫电子保单统一调用
+			async pythonprint() {
+				if (this.orderInfo.jqpolicyno || this.orderInfo.sypolicyno) {
+					let params = {
+						subOrderNo: this.companyId,
+					};
+					let res1 = await this.$http.post('/insurance/crawler/getPolicyPrint', params);
+					if (res1.code == '200') {
+						this.policyList = [];
+						this.policyList1 = [];
+						this.policyList.push({
+							fileTitle: "交强电子保单",
+							filename: this.orderInfo.jqpolicyno,
+							fileurl: res1.data.jqxPolicyUrl,
+						})
+						this.policyList1.push({
+							fileTitle: "交强电子标志",
+							filename: this.orderInfo.jqpolicyno,
+							fileurl: res1.data.jqxFlagUrl,
+						})
+						if (res1.data.syxPolicyUrl) {
+							this.policyList.push({
+								fileTitle: "商业电子保单",
+								filename: this.orderInfo.sypolicyno,
+								fileurl: res1.data.syxPolicyUrl,
+							});
+						}
+						if (res1.data.jyxInfoList.length > 0) {
+							res1.data.jyxInfoList.map(ele => {
+								this.policyList.push({
+									fileTitle: "驾意险保单",
+									filename: ele.application,
+									fileurl: ele.jyx_policy_url,
+								});
+								return ele;
+							})
+
+						}
+					}
+				}
+			},
+			async externalOrder() {
+				let res = await this.$http.get('/api/externalOrder/getPolicyPrint?subOrderNo=' + this.companyId);
+				this.policyList = [];
+				this.policyList1 = [];
+				if (res.data.jqPolicy) {
+					this.policyList.push({
+						fileTitle: "交强电子保单",
+						filename: this.orderInfo.jqpolicyno,
+						fileurl: this.$base.baseUrl + res.data.jqPolicy,
+					})
+				}
+				if (res.data.jqSign) {
+					this.policyList1.push({
+						fileTitle: "交强电子标志",
+						filename: this.orderInfo.jqpolicyno,
+						fileurl: this.$base.baseUrl + res.data.jqSign,
+					})
+				}
+
+				if (res.data.syPolicy) {
+					this.policyList.push({
+						fileTitle: "商业电子保单",
+						filename: this.orderInfo.sypolicyno,
+						fileurl: this.$base.baseUrl + res.data.syPolicy,
+					});
+				}
+				if (res.data.noPolicy) {
+					this.policyList.push({
+						fileTitle: "驾意险保单",
+						fileurl: this.$base.baseUrl + res.data.noPolicy,
+					});
+				}
+			},
+			async ziJingetPolicyPrint() {
+				this.policyList = [];
+				this.policyList1 = [];
+				if (this.orderInfo.jqpolicyno) {
+					let res = await this.$http.post('/order/zijin/getPolicyPrint', {
+						companyId: this.companyId,
+						riskCode: "0507",
+						type: '2', //2:保单
+					});
+					if (res.code == '200') {
+						this.policyList.push({
+							fileTitle: "交强电子保单",
+							filename: this.orderInfo.jqpolicyno,
+							fileurl: res.data,
+						})
+					}
+					let res1 = await this.$http.post('/order/zijin/getPolicyPrint', {
+						companyId: this.companyId,
+						riskCode: "0507",
+						type: '1', //1:标志
+					});
+					if (res1.code == '200') {
+						this.policyList1.push({
+							fileTitle: "交强电子标志",
+							filename: this.orderInfo.jqpolicyno,
+							fileurl: res1.data,
+						})
+					}
+				}
+				if (this.orderInfo.sypolicyno) {
+					let res = await this.$http.post('/order/zijin/getPolicyPrint', {
+						companyId: this.companyId,
+						riskCode: "0510",
+						type: '2', //2:标志
+					});
+					if (res.code == '200') {
+						this.policyList.push({
+							fileTitle: "商业电子保单",
+							filename: this.orderInfo.sypolicyno,
+							fileurl: res.data,
+						})
+					}
+				}
+				if (this.orderInfo.crossInsurance.length > 0) {
+					this.orderInfo.crossInsurance.map(async ele => {
+						let res = await this.$http.post('/order/zijin/getPolicyPrint', {
+							companyId: this.companyId,
+							policyNumber: ele.policyNumber,
+							riskCode: "0513",
+							type: '2', //2:保单
+						});
+						if (res.code == '200') {
+							this.policyList.push({
+								fileTitle: "驾意险保单",
+								filename: ele.policyNumber,
+								fileurl: res.data,
+							})
+						}
+					})
+				}
+
+			},
+			async daJiagetPolicyPrint() {
+				let apiType = this.orderInfo.apiType;
+				switch (apiType) {
+					case 1:
+						this.policyList = [];
+						this.policyList1 = [];
+						if (this.orderInfo.jqpolicyno) {
+							let res = await this.$http.post('/api/dajia/obtainWarranty', {
+								companyId: this.companyId,
+								riskCode: "0507",
+								type: '2', //2:保单
+							});
+							if (res.code == '200') {
+
+								this.policyList.push({
+									fileTitle: "交强电子保单",
+									filename: this.orderInfo.jqpolicyno,
+									fileurl: res.data,
+								})
+							}
+							let res1 = await this.$http.post('/api/dajia/obtainWarranty', {
+								companyId: this.companyId,
+								riskCode: "0507",
+								type: '1', //1:标志
+							});
+							if (res1.code == '200') {
+								this.policyList1.push({
+									fileTitle: "交强电子标志",
+									filename: this.orderInfo.jqpolicyno,
+									fileurl: res1.data,
+								})
+							}
+						}
+						if (this.orderInfo.sypolicyno) {
+							let res = await this.$http.post('/api/dajia/obtainWarranty', {
+								companyId: this.companyId,
+								riskCode: "0510",
+								type: '2', //2:标志
+							});
+							if (res.code == '200') {
+								this.policyList.push({
+									fileTitle: "商业电子保单",
+									filename: this.orderInfo.sypolicyno,
+									fileurl: res.data,
+								})
+							}
+						}
+						break;
+					case 2:
+						if (this.orderInfo.jqpolicyno || this.orderInfo.sypolicyno) {
+							let params = {
+								subOrderNo: this.companyId,
+							};
+							let res1 = await this.$http.post('/insurance/crawler/getPolicyPrint', params);
+							if (res1.code == '200') {
+								this.policyList = [];
+								this.policyList1 = [];
+								this.policyList.push({
+									fileTitle: "交强电子保单",
+									filename: this.orderInfo.jqpolicyno,
+									fileurl: res1.data.jqxPolicyUrl,
+								})
+								this.policyList1.push({
+									fileTitle: "交强电子标志",
+									filename: this.orderInfo.jqpolicyno,
+									fileurl: res1.data.jqxFlagUrl,
+								})
+								if (res1.data.syxPolicyUrl) {
+									this.policyList.push({
+										fileTitle: "商业电子保单",
+										filename: this.orderInfo.sypolicyno,
+										fileurl: res1.data.syxPolicyUrl,
+									});
+								}
+								if (res1.data.jyxInfoList.length > 0) {
+									res1.data.jyxInfoList.map(ele => {
+										this.policyList.push({
+											fileTitle: "驾意险保单",
+											filename: ele.application,
+											fileurl: ele.jyx_policy_url,
+										});
+										return ele;
+									})
+
+								}
+							}
+						}
+						break;
+				}
+
+			},
+			async huaTaigetPolicyPrint() {
+				let apiType = this.orderInfo.apiType;
+				switch (apiType) {
+					case 1:
+						if (this.orderInfo.jqpolicyno || this.orderInfo.sypolicyno) {
+							let res = await this.$http.post('/order/huaTaiApi/getPolicyPrint', {
+								companyId: this.companyId,
+								riskCode: "0507",
+							});
+							if (res.code == '200') {
+								this.policyList = [];
+								this.policyList1 = [];
+								this.policyList.push({
+									fileTitle: "交强电子保单",
+									filename: this.orderInfo.jqpolicyno,
+									fileurl: res.data.jqxPolicyUrl,
+								})
+								this.policyList1.push({
+									fileTitle: "交强电子标志",
+									filename: this.orderInfo.jqpolicyno,
+									fileurl: res.data.jqxFlagUrl,
+								})
+								if (res.data.syxPolicyUrl) {
+									this.policyList.push({
+										fileTitle: "商业电子保单",
+										filename: this.orderInfo.sypolicyno,
+										fileurl: res.data.syxPolicyUrl,
+									});
+								}
+							}
+						}
+						break;
+					case 2:
+						if (this.orderInfo.jqpolicyno || this.orderInfo.sypolicyno) {
+							let params = {
+								subOrderNo: this.companyId,
+							};
+							let res1 = await this.$http.post('/insurance/crawler/getPolicyPrint', params);
+							if (res1.code == '200') {
+								this.policyList = [];
+								this.policyList1 = [];
+								this.policyList.push({
+									fileTitle: "交强电子保单",
+									filename: this.orderInfo.jqpolicyno,
+									fileurl: res1.data.jqxPolicyUrl,
+								})
+								this.policyList1.push({
+									fileTitle: "交强电子标志",
+									filename: this.orderInfo.jqpolicyno,
+									fileurl: res1.data.jqxFlagUrl,
+								})
+								if (res1.data.syxPolicyUrl) {
+									this.policyList.push({
+										fileTitle: "商业电子保单",
+										filename: this.orderInfo.sypolicyno,
+										fileurl: res1.data.syxPolicyUrl,
+									});
+								}
+								if (res1.data.jyxInfoList.length > 0) {
+									res1.data.jyxInfoList.map(ele => {
+										this.policyList.push({
+											fileTitle: "驾意险保单",
+											filename: ele.application,
+											fileurl: ele.jyx_policy_url,
+										});
+										return ele;
+									})
+
+								}
+							}
+						}
+						break;
+				}
+			},
+			async guoRengetPolicyPrint() {
+				this.policyList = [];
+				this.policyList1 = [];
+				if (this.orderInfo.jqpolicyno) {
+					let res = await this.$http.post('/api/guoRen/policyPrint', {
+						companyId: this.companyId,
+						riskCode: "0507",
+						type: '2', //2:保单
+					});
+					if (res.code == '200') {
+						this.policyList.push({
+							fileTitle: "交强电子保单",
+							filename: this.orderInfo.jqpolicyno,
+							fileurl: res.data,
+						})
+					}
+					let res1 = await this.$http.post('/api/guoRen/policyPrint', {
+						companyId: this.companyId,
+						riskCode: "0507",
+						type: '1', //1:标志
+					});
+					if (res1.code == '200') {
+						this.policyList1.push({
+							fileTitle: "交强电子标志",
+							filename: this.orderInfo.jqpolicyno,
+							fileurl: res1.data,
+						})
+					}
+				}
+				if (this.orderInfo.sypolicyno) {
+					let res = await this.$http.post('/api/guoRen/policyPrint', {
+						companyId: this.companyId,
+						riskCode: "0510",
+						type: '2', //2:标志
+					});
+					if (res.code == '200') {
+						this.policyList.push({
+							fileTitle: "商业电子保单",
+							filename: this.orderInfo.sypolicyno,
+							fileurl: res.data,
+						})
+					}
+				}
+				if (this.orderInfo.crossInsurance.length > 0) {
+					this.orderInfo.crossInsurance.map(async ele => {
+						let res = await this.$http.post('/api/guoRen/policyPrint', {
+							companyId: this.companyId,
+							policyNumber: ele.policyNumber,
+							riskCode: "0513",
+							type: '2', //2:保单
+						});
+						if (res.code == '200') {
+							this.policyList.push({
+								fileTitle: "驾意险保单",
+								filename: ele.policyNumber,
+								fileurl: res.data,
+							})
+						}
+					})
+				}
+
+			},
+			downloadPolicy(file) {
+				//#ifdef APP-PLUS
+				uni.showLoading({
+					title: '文件下载中'
+				});
+				let index = file.lastIndexOf("\/")
+				let licensename = file.substring(index + 1, file.length)
+				let dtask = plus.downloader.createDownload(file, {
+					filename: "_downloads/" + this.name + '-' + this.insuredPersonInfo.name + '-' + licensename
+				}, function(d, status) {
+					if (status == 200) {
+						uni.hideLoading()
+						//下载成功,d.filename是文件在保存在本地的相对路径,使用下面的API可转为平台绝对路径
+						let fileSaveUrl = plus.io.convertLocalFileSystemURL(d.filename);
+						plus.runtime.openFile(d.filename); //选择软件打开文件
+					} else {
+						uni.hideLoading()
+						//下载失败
+						plus.downloader.clear(); //清除下载任务
+					}
+				})
+
+				dtask.start();
+				//#endif
+				//#ifdef H5
+				var win = window.open();
+				win.document.write(
+					'<body style="margin:0px;"><object data="' +
+					file +
+					'" type="application/pdf" width="100%" height="100%"><iframe src="' +
+					file +
+					'" scrolling="no" width="100%" height="100%" frameborder="0" ></iframe></object></body>'
+				);
+				//#endif
+			},
+			//选择缴费方式
+			openPayWay() {
+				this.navigate({
+					url: "/pages/carInsure/payWay?orderno=" + this.orderno
+				}, 'navigateTo', true)
+			},
+			cancelShare() {
+				this.$refs.showshare.close()
+			},
+			//控制详情的展开和收起
+			controlShow(type) {
+				this[type] = !this[type];
+			},
+			//撤销核保
+			cancelUnderwriting() {
+				uni.showModal({
+					content: '是否确认撤销核保?',
+					success: async (res) => {
+						if (res.confirm) {
+							let param = {
+								"auditid": this.userInfo.sysUser.id, //核保人会员号
+								"auditopinion": '', //核保意见
+								"jqapplyno": "", //交强险投保单号
+								"jqappoint": "", //交强特别约定
+								"jqpolicyno": "", //交强保单号
+								"orderno": this.orderno, //订单号
+								"orderstatus": "0", //订单类型
+								"syapplyno": "", //商业险投保单号
+								"syappoint": "", //商业险特别约定
+								"sypolicyno": "" //商业保单号
+							}
+							let res = await this.$http.post('/insOrder/saveAudit', param);
+							uni.showToast({
+								title: '撤销成功',
+								icon: "none",
+								duration: 2000
+							});
+							setTimeout(() => {
+								this.setOrderStage(0);
+								this.setOrderType(0);
+								this.navigate({
+									url: "/pages/orders1/orders"
+								}, "switchTab", true);
+							}, 2000);
+						} else if (res.cancel) {
+							console.log('用户点击取消');
+						}
+					}
+				});
+			},
+			toChinesNum(num) {
+				let overWan = Math.floor(num / 10000);
+				let result = overWan + "万";
+				return result;
+			},
+		}
+	}
+</script>
+
+<style lang="scss" scoped>
+	@import '@/style/mixin.scss';
+
+	.page {
+		background: #F8FAFE;
+		padding: 0 16px 100px 16px;
+
+	}
+
+	.headers {
+		padding: 16px 16px 0 16px;
+		position: relative;
+
+		.price {
+			width: 100%;
+			height: 40px;
+			background: #FFFFFF;
+			border-radius: 6px 6px 0px 0px;
+		}
+	}
+
+	.header {
+		height: 80upx;
+		position: relative;
+	}
+
+	.header .title {
+		font-size: 30upx;
+		font-weight: bold;
+	}
+
+
+	.welfare {
+		margin-bottom: 20upx;
+		width: 100%;
+		box-sizing: border-box;
+		background: #FFFFFF;
+		border-radius: 20upx;
+	}
+
+	.welfare .body {
+		padding: 0 30upx 30upx;
+		box-sizing: border-box;
+		flex-wrap: wrap;
+	}
+
+	.welfare .body>.welfareItem {
+		width: 320upx;
+		height: 120upx;
+		padding: 10upx 20upx;
+		margin: 20upx 10upx 0upx;
+		border: 1px solid rgba($themeColor, 0.6);
+		box-sizing: border-box;
+		background: rgba($themeColor, 0.4);
+		border-radius: 10upx;
+	}
+
+	.welfare .body>.welfareItem .name {
+		color: $themeColor;
+		font-size: 30upx;
+		width: 210upx;
+		overflow: hidden;
+		text-overflow: ellipsis;
+		white-space: nowrap;
+	}
+
+	.welfare .body>.welfareItem .content {
+		font-size: 24upx;
+		width: 260upx;
+		overflow: hidden;
+		text-overflow: ellipsis;
+		white-space: nowrap;
+	}
+
+
+	/* 报价方案Start */
+	.quotePlan {
+		margin-bottom: 20upx;
+		width: 100%;
+		position: relative;
+	}
+
+	.quotePlan .header .adjustPlan {
+		color: $themeColor;
+	}
+
+	.kindList {
+		background-color: #F9F9F9;
+		padding: 10px;
+		height: auto;
+		width: 100%;
+		border-radius: 10px;
+		font-size: 13px;
+		color: rgba(35, 40, 50, 0.8);
+	}
+
+	.quotePlan .body .insurance {
+		padding-bottom: 20upx;
+	}
+
+	.quotePlan .body .row {
+		padding: 5px;
+		border-bottom: 1px solid #F3F3F3;
+	}
+
+	.quotePlan .body .row:last-child {
+		border: none;
+	}
+
+
+	.quotePlan .body .row .date {
+		color: #A4A4A4;
+		font-size: 22upx;
+	}
+
+	.quotePlan .body .insurance .kindList {
+		background: #F3F3F3;
+		padding: 0 10upx;
+	}
+
+	.addedServices .kindList {
+		background: #F3F3F3;
+		padding: 0 10upx;
+	}
+
+	.quotePlan .body .insurance .kindList .kindItem {
+		padding: 2px 0;
+	}
+
+	.quotePlan .body .insurance .kindList .kindItem>view {
+		font-size: 24upx;
+	}
+
+	.quotePlan .body .insurance .kindList .kindItem>view:nth-of-type(1) {
+		width: 310upx;
+	}
+
+	.quotePlan .body .insurance .kindList .kindItem>view:nth-of-type(2) {
+		width: 170upx;
+	}
+
+	.quotePlan .body .insurance .kindList .kindItem>view:nth-of-type(3) {
+		width: 170upx;
+	}
+
+	.addedServices .kindList .kindItem {
+		height: 65upx;
+	}
+
+	.addedServices .kindList .kindItem>view {
+		font-size: 24upx;
+		padding: 0upx 15upx;
+	}
+
+	/* 报价方案End */
+
+	.car {
+		width: 100%;
+		padding: 0upx 10px 0;
+		background-color: #fff;
+		border-radius: 6px;
+		box-shadow: 0px 4px 10px 0px #DAE3F4;
+		margin-top: 10px;
+		position: relative;
+
+		.body {
+
+
+			.row {
+				padding: 5px;
+				border-bottom: 1px solid #F3F3F3;
+
+
+			}
+
+			.row:last-child {
+				border: none;
+			}
+		}
+	}
+
+	/* 预缴费Start */
+	.advancePaymentTotal {
+		margin-bottom: 20upx;
+		width: 100%;
+		box-sizing: border-box;
+		background: #FFFFFF;
+		border-radius: 20upx;
+	}
+
+	.advancePaymentTotal .body {
+		padding: 0upx 40upx 10upx;
+	}
+
+	.advancePaymentTotal .body .row {
+		height: 80upx;
+		border-bottom: 1px solid #F3F3F3;
+	}
+
+	/* 预缴费End */
+
+	/* 底部按钮Start */
+	.bottomBtn {
+		position: fixed;
+		bottom: 0;
+		left: 0;
+		right: 0;
+		height: auto;
+		z-index: 999;
+		background-color: #fff;
+
+		.agree {
+			padding: 4px 8px;
+			font-size: 22rpx;
+			color: #858585;
+
+			.tip {
+				color: #FF5600;
+				margin: 0upx 10upx;
+			}
+		}
+
+		.btnView {
+			width: 100%;
+			height: 38px;
+			background-color: #fff;
+
+			.btn {
+				height: 100%;
+			}
+
+			.btn:nth-child(1) {
+				width: 50%;
+				background-color: #E6EEFF;
+				color: #0052FF;
+				padding: 8px;
+				font-size: 13px;
+			}
+
+			.btn:nth-child(2) {
+				width: 50%;
+				color: #fff;
+				background-color: #0038AF;
+				font-weight: bold;
+			}
+		}
+	}
+
+	.tool {
+		padding: 10px;
+
+		view {
+			width: 100%;
+			padding: 8px 0;
+			border-bottom: 1px solid #f2f2f2;
+			font-size: 14px;
+			color: #232832;
+		}
+	}
+
+	.cancell {
+		width: 100%;
+		height: 46px;
+		background-color: #E6EEFF;
+		font-size: 16px;
+		color: #0052FF;
+	}
+
+	/* 底部按钮End */
+	.contributing {
+		width: 100%;
+		margin: 4px 0;
+		font-size: 14px;
+
+		text:nth-child(1) {
+			font-weight: bold;
+			color: #ff9000;
+		}
+	}
+
+	/* 人员信息Start */
+	.personInfo,
+	.advancePayment,
+	.imageInfo,
+	.appoint {}
+
+	.personInfo,
+	.advancePayment,
+	.imageInfo,
+	.appoint {
+		.title {
+			height: 80upx;
+			font-size: 15px;
+			box-shadow: inset 0 -3upx 0px #fafafa;
+		}
+
+		.content {
+			padding: 0px 5px 0;
+			background-color: #fff;
+			border-radius: 6px;
+			box-shadow: 0px 4px 10px 0px #DAE3F4;
+		}
+
+		.uni-uploader {
+			padding: 8px;
+			background-color: #fff;
+			border-radius: 6px;
+			height: auto;
+			box-shadow: 0px 4px 10px 0px #DAE3F4;
+
+		}
+	}
+
+	.uni-uploader__file {
+		position: relative;
+	}
+
+	.delImgIcon {
+		width: 40upx;
+		height: 40upx;
+		position: absolute;
+		right: 0upx;
+		top: 0upx;
+		color: #FFFFFF;
+	}
+
+	.showStatus {
+		font-size: 26upx;
+		color: #007AFF;
+	}
+
+	.personInfo .content .row,
+	.advancePayment .content .row {
+		height: 80upx;
+		border-bottom: 1px solid #F9F9F9;
+		flex-wrap: nowrap;
+	}
+
+	.personInfo .content .row .left,
+	.advancePayment .content .row .left {
+		width: 170upx;
+		flex-shrink: 0;
+		font-size: 28upx;
+	}
+
+	.appoint .content .row {
+		height: auto;
+		margin-top: 10upx;
+	}
+
+	.appoint .content .row>view {
+		width: 240upx;
+		flex-shrink: 1;
+		font-size: 28upx;
+	}
+
+	.appoint .content .row>textarea {
+		/* background: #007AFF; */
+		padding: 15upx;
+		box-sizing: border-box;
+		font-size: 26upx;
+		min-height: 160upx;
+		height: 100upx;
+		border: 1px solid #fafafa;
+		/* over */
+	}
+
+	.personInfo .content .row .right,
+	.advancePayment .content .row .right,
+	.appoint .content .row .right {
+		font-size: 28upx;
+	}
+
+	/* 人员信息End */
+
+	.checkButton {
+		font-size: 14px;
+		color: #FF5600;
+	}
+
+
+
+	.uni-popup__wrapper-box {
+		display: block;
+		position: relative;
+	}
+
+	.uni-share {
+		display: flex;
+		flex-direction: column;
+		background-color: #fff;
+		position: fixed;
+		bottom: 0;
+		left: 0;
+		right: 0;
+	}
+
+	.uni-share-title {
+		line-height: 30px;
+		font-size: 12px;
+		padding: 7px 0;
+		text-align: center;
+	}
+
+	.uni-share-content {
+		display: flex;
+		flex-direction: row;
+		flex-wrap: wrap;
+		justify-content: center;
+		padding: 15px;
+	}
+
+	.uni-share-content-box {
+		display: flex;
+		flex-direction: column;
+		align-items: center;
+		width: 100px;
+	}
+
+	.uni-share-content-image {
+		display: flex;
+		flex-direction: row;
+		justify-content: center;
+		align-items: center;
+		width: 30px;
+		height: 30px;
+		overflow: hidden;
+		border-radius: 5px;
+	}
+
+	.uni-share-content-text {
+		font-size: 13px;
+		color: #333;
+		padding-top: 5px;
+		padding-bottom: 10px;
+	}
+
+	.uni-share-btn {
+		height: 45px;
+		line-height: 45px;
+		font-size: 14px;
+		border-top-color: #f5f5f5;
+		border-top-width: 1px;
+		border-top-style: solid;
+		text-align: center;
+		color: #666;
+	}
+
+	uni-image>img {
+		display: block;
+		position: absolute;
+		top: 0;
+		left: 0;
+		opacity: 0;
+	}
+
+	uni-image>div,
+	uni-image>img {
+		width: 100%;
+		height: 100%;
+	}
+
+	.Discount {
+		image {
+			width: 16px;
+			height: 16px;
+		}
+
+		text {
+			font-size: 12px;
+			color: #333333;
+		}
+	}
+
+	.costDetails {
+		width: 100%;
+		height: auto;
+		background: rgba(0, 82, 255, 0.05);
+		border-radius: 10px;
+
+		.text1 {
+			font-size: 22rpx;
+		}
+
+		.text2 {
+			font-size: 24rpx;
+		}
+
+		.text2-color {
+			color: rgba(0, 82, 255, 0.8);
+		}
+
+	}
+
+	/deep/ {
+		.u-th {
+			background-color: #F2F6FF;
+		}
+	}
+</style>

+ 177 - 155
pages/orders/subOrders.vue → pages/tools/policy/subOrders.vue

@@ -1,9 +1,7 @@
 <template>
-	<view @click.native="init">
+	<view @click.native="init" class="page">
 		<view class="car-header dis a-c">
-			<view class="icon-radius">
-				<image src="../../static/icon/insurance.png" mode=""></image>
-			</view>
+			<image src="/static/image/car-insure/Group.png" mode="" style="width: 40px;height: 40px;"></image>
 			<view class="dis f-c head-name">
 				<text>{{licenseno}}</text>
 				<view class="name1">
@@ -12,53 +10,61 @@
 				</view>
 			</view>
 		</view>
-		<view class="pdd" style="padding-top: 120px;">
+		<view class="pdd mt-3">
 			<view class="sub-orders " v-for="(item,index) in sublist" :key="index">
-				<view class="orders-upper dis j-s">
-					<view class="dis a-c">
-						<text class="strong">{{item.inscompany}}</text>
-						<text class="strong" style="color: #ff9000;">( {{item.agreementName}} )</text>
-					</view>
-					<view class="">
-						<text class="strong">{{licenseno}}</text>
+				<view class="status dis a-c j-s">
+					<view v-for="(statusitem, statusindex) in statusList" :key="statusindex" class="dis a-c"
+						style="font-weight: bold;" v-if="item.orderstatus == statusitem.value">
+						<image :src="statusitem.src" mode="" style="width: 22px;height: 22px;margin-right: 5px;">
+						</image>
+						<text :style="{color: statusitem.color}">{{statusitem.label}}</text>
 					</view>
+					<text>¥{{item.sumpremium}}</text>
 				</view>
-				<view class="orders-centre dis f-c  strong">
-					<view class="dis j-s a-c">
-						<text>¥{{item.sumpremium}}</text>
-						<view v-for="(statusitem,statusindex) in statusList" :key="statusindex"
-							v-if="item.orderstatus==statusitem.value" :style="{color:statusitem.color}">
-							{{statusitem.label}}
-						</view>
-					</view>
-					<view class="dis f-wrap" style="font-size: 12px;color: #276D6F;">
-						<text v-if="item.jqpremium">交强险:¥{{item.jqpremium}}</text>
-						<text v-if="item.sypremium">商业险:¥{{item.sypremium}}</text>
-						<text>车船税:¥{{item.taxamount}}</text>
-						<text v-if="item.jypremium">驾意险:¥{{item.jypremium}}</text>
+				<view class="orders-centre">
+					<text>{{item.inscompany}}</text>
+					<text>( {{item.agreementName}} )</text>
+					<view class="sum dis f-wrap">
+						<view v-if="item.jqpremium">交强险:¥{{item.jqpremium}}</view>
+						<view v-if="item.sypremium">商业险:¥{{item.sypremium}}</view>
+						<view>车船税:¥{{item.taxamount}}</view>
+						<view v-if="item.jypremium">驾意险:¥{{item.jypremium}}</view>
 					</view>
 					<view v-if="item.auditopinion" class="dis f-c" style="font-size: 12px;">
 						<text>审核意见</text>
 						<text>{{item.auditopinion}}</text>
 					</view>
 				</view>
-				<view class="orders-below dis j-end">
-					<u-button
-						v-if="item.orderstatus==2 && ['恒邦财险','安盛天平','中国人寿','众安财险','太平财险','紫金财险','永诚财险','国任财险','大家财险','华泰财险','中煤财险','华农财险','渤海财险'].includes(item.inscompany)"
-						size="mini" type="error" shape="circle"
-						@click="queryStatus(item.id,item.inscompany)">查询缴费状态</u-button>
-					<u-button v-if="item.orderstatus==2" size="mini" type="error" shape="circle"
-						@click="Payment(item.id)">二维码</u-button>
-					<u-button v-if="(item.orderstatus==4 || item.orderstatus==1) && item.inscompany=='华泰财险'" size="mini"
-						type="error" shape="circle" @click="huataiunderwriting(item.id)">更新订单</u-button>
-					<u-button
-						v-if="item.orderstatus==1  && ['中煤财险','永诚财险','国任财险','大家财险','渤海财险'].includes(item.inscompany)"
-						size="mini" type="error" shape="circle"
-						@click="underwriting(item.id,item.inscompany)">更新订单</u-button>
-					<u-button size="mini" type="primary" shape="circle" @click="detial(item.id)">查看详情</u-button>
-					<u-button class="arrivalNavigations" size="mini" type="warning" :data-id="item.id" shape="circle"
-						@click.native="Moremethods">更多操作
-						<view class="arrivalNavigation" v-show="item.checked">
+				<view class="orders-below dis f-c">
+					<view class="dis a-c j-end">
+						<u-button
+							v-if="item.orderstatus==2 && ['恒邦财险','安盛天平','中国人寿','众安财险','太平财险','紫金财险','永诚财险','国任财险','大家财险','华泰财险','中煤财险','华农财险','渤海财险','泰康财险'].includes(item.inscompany)"
+							size="mini" :custom-style="{fontSize:'14px'}" type="error" :plain="true"
+							@click="queryStatus(item.id,item)">查询缴费状态</u-button>
+						<u-button v-if="item.orderstatus==2" size="mini" type="error" :custom-style="{fontSize:'14px'}"
+							:plain="true" @click="Payment(item.id,item.apiType)">二维码</u-button>
+						<u-button v-if="item.orderstatus==2 && ['紫金财险'].includes(item.inscompany)" size="mini"
+							type="error" :custom-style="{fontSize:'14px'}" :plain="true"
+							@click="cancelorder(item.id)">撤单</u-button>
+						<u-button v-if="item.orderstatus==2" size="mini" type="primary"
+							:custom-style="{fontSize:'14px'}" :plain="true"
+							@click="revokeCode(item.id)">撤销二维码</u-button>
+					</view>
+					<view class="dis a-c j-end" style="margin-top: 5px;">
+						<u-button v-if="(item.orderstatus==4 || item.orderstatus==1) && item.inscompany=='华泰财险'"
+							size="mini" :custom-style="{fontSize:'14px'}" type="error" :plain="true"
+							@click="huataiunderwriting(item)">更新订单</u-button>
+						<u-button
+							v-if="item.orderstatus==1  && ['中煤财险','永诚财险','国任财险','大家财险','渤海财险','恒邦财险','安盛天平','中国人寿','众安财险','太平财险','华农财险','泰康财险'].includes(item.inscompany)"
+							size="mini" type="error" :plain="true" :custom-style="{fontSize:'14px'}"
+							@click="underwriting(item.id,item.inscompany)">更新订单</u-button>
+						<u-button size="mini" type="primary" :custom-style="{fontSize:'14px',background:'#FF5600'}"
+							@click="bjdpreview(item.id)">报价单</u-button>
+						<u-button size="mini" type="primary" :custom-style="{fontSize:'14px'}"
+							@click="detial(item.id)">查看详情</u-button>
+					</view>
+					<!-- <text class="arrivalNavigations" :data-id="item.id" @tap.stop.prevent="Moremethods">更多
+						<view class="arrivalNavigation" v-if="item.checked">
 							<view class="d4"></view>
 							<view class="sideNavigation">
 								<view class="sideNavigation-btn">
@@ -66,14 +72,14 @@
 									<view v-if="item.orderstatus==2 && ['紫金财险'].includes(item.inscompany)"
 										@click="cancelorder(item.id)">撤单</view>
 									<view v-if="item.orderstatus==2" @click="revokeCode(item.id)">撤销二维码</view>
-									<!-- <view @click="orderTrajectory(item.id)">订单轨迹</view> -->
 								</view>
 							</view>
 						</view>
-					</u-button>
+					</text> -->
 				</view>
 			</view>
 		</view>
+		<o-empty v-if="sublist.length==0" />
 		<!-- <u-popup v-model="trajectoryShow" mode="center" border-radius="8" width="80%">
 			<u-steps mode="number" :list="numList" :current="2" direction="column" style="padding: 20px;"></u-steps>
 		</u-popup> -->
@@ -90,7 +96,6 @@
 			return {
 				show: true,
 				modeClass: 'fade',
-				styles: {},
 				// trajectoryShow: false,
 				// trajectoryList: [],
 				MoreShow: false,
@@ -118,45 +123,41 @@
 				statusList: [{
 						label: '报价中',
 						value: 0,
-						color: "#1E9600"
+						color: "#229805",
+						src: "/static/image/car-insure/state1.png"
 					},
 					{
 						label: '待核保',
 						value: 1,
-						color: "#f5af19"
+						color: "#FF5600",
+						src: "/static/image/car-insure/state2.png"
 					},
 					{
 						label: '已核保待缴费',
 						value: 2,
-						color: "#f12711"
+						color: "#FF0F00",
+						src: "/static/image/car-insure/state3.png"
 					},
 					{
 						label: '已承保',
 						value: 3,
-						color: "#7F7FD5"
+						color: "#0052FF",
+						src: "/static/image/car-insure/state4.png"
 					},
 					{
 						label: '核保退回',
 						value: 4,
-						color: "#bdc3c7"
+						color: "#727272",
+						src: "/static/image/car-insure/state5.png"
 					}
 				],
 			}
 		},
 		computed: {
-			...mapState(['userInfo']),
+			...mapState(['userInfo', 'quotationType']),
 		},
 		onLoad(params) {
-			this.styles = {
-				justifyContent: 'center',
-				alignItems: 'center',
-				width: '100px',
-				height: '100px',
-				borderRadius: '5px',
-				textAlign: 'center',
-				backgroundColor: '#4cd964',
-				boxShadow: '0 0 5px 1px rgba(0,0,0,0.2)'
-			}
+
 			let item = JSON.parse(params.orderno);
 			this.orderno = item.orderno;
 			this.modelcname = item.modelcname;
@@ -193,43 +194,35 @@
 					return val;
 				})
 			},
-			// //订单轨迹
-			// async orderTrajectory(id) {
-			// 	let res = await this.$http.get('/insurance/track/queryBySuborder?suborder=' + id);
-			// 	if (res.code == '200') {
-			// 		this.trajectoryList = res.data;
-			// 		this.trajectoryShow = true;
-			// 	}
-			// },
 			//查看详情
 			detial(id) {
 				uni.navigateTo({
-					url: "/pages/carInsure1/quoteDetail1?companyId=" + id
+					url: "/pages/tools/policy/quoteDetail?companyId=" + id
 				})
 			},
 			//付款码
-			Payment(id) {
-				let pro = this.userInfo.sysUser.managementSource;
-				if (pro == '3') {
+			Payment(id, type) {
+				let pro = this.quotationType.themeCode;
+				if (pro == "QD") {
 					uni.navigateTo({
-						url: "/pages/carInsure1/payCode2?companyId=" + id
+						url: "/pages/orders1/paymentCode?companyId=" + id + '&apiType=' + type,
 					})
 				} else {
 					uni.navigateTo({
-						url: "/pages/carInsure1/payCode1?companyId=" + id
+						url: "/pages/orders1/paymentCode1?companyId=" + id + '&apiType=' + type,
 					})
 				}
 			},
 			//报价单
 			bjdpreview(id) {
-				let pro = this.userInfo.sysUser.managementSource;
-				if (pro == '3') {
+				let pro = this.quotationType.themeCode;
+				if (pro == "QD") {
 					uni.navigateTo({
-						url: "/pages/orders/quotation1?companyId=" + id
+						url: "/pages/orders1/quotation?companyId=" + id
 					})
 				} else {
 					uni.navigateTo({
-						url: "/pages/orders/quotation?companyId=" + id
+						url: "/pages/orders1/quotation1?companyId=" + id
 					})
 				}
 			},
@@ -251,11 +244,13 @@
 					});
 				}
 			},
-			async huataiunderwriting(id) {
+			async huataiunderwriting(item) {
+				let api = item.apiType == '2' ? '/insurance/crawler/auditStatusQuery' :
+					'/order/huaTaiApi/auditStatusQuery';
 				let params = {
-					companyId: id,
+					companyId: item.id,
 				}
-				let res = await this.$http.post('/order/huaTaiApi/auditStatusQuery', params)
+				let res = await this.$http.post(`${api}`, params)
 				if (res.code == '200') {
 					uni.showToast({
 						title: res.msg,
@@ -289,7 +284,7 @@
 						} else {
 							uni.showToast({
 								title: zmres.msg,
-								icon: 'error',
+								icon: 'none',
 							});
 						}
 						break;
@@ -305,7 +300,7 @@
 						} else {
 							uni.showToast({
 								title: ycres.msg,
-								icon: 'error',
+								icon: 'none',
 							});
 						}
 						break;
@@ -323,12 +318,14 @@
 						} else {
 							uni.showToast({
 								title: grres.msg,
-								icon: 'error',
+								icon: 'none',
 							});
 						}
 						break;
 					case "大家财险":
-						let djres = await this.$http.post('/api/dajia/verifyPayment', {
+						let djapi = item.apiType == '2' ? '/insurance/crawler/auditStatusQuery' :
+							'/api/dajia/verifyPayment';
+						let djres = await this.$http.post(`${djapi}`, {
 							companyId: id
 						});
 						if (djres.code == '200') {
@@ -341,7 +338,7 @@
 						} else {
 							uni.showToast({
 								title: djres.msg,
-								icon: 'error',
+								icon: 'none',
 							});
 						}
 						break;
@@ -359,11 +356,27 @@
 						} else {
 							uni.showToast({
 								title: bhres.msg,
-								icon: 'error',
+								icon: 'none',
 							});
 						}
 						break;
 					default:
+						let pythonres = await this.$http.post('/insurance/crawler/auditStatusQuery', {
+							companyId: id
+						});
+						if (pythonres.code == '200') {
+							uni.showToast({
+								title: pythonres.msg,
+								icon: 'none',
+								duration: 2000
+							});
+							this.querylist();
+						} else {
+							uni.showToast({
+								title: pythonres.msg,
+								icon: 'none',
+							});
+						}
 						break;
 				}
 
@@ -383,12 +396,12 @@
 				} else {
 					uni.showToast({
 						title: res.msg,
-						icon: 'error',
+						icon: 'none',
 					});
 				}
 			},
-			async queryStatus(id, inscompany) {
-				switch (inscompany) {
+			async queryStatus(id, item) {
+				switch (item.inscompany) {
 					case "紫金财险":
 						let zjres = await this.$http.post('/order/zijin/getOrderDetail', {
 							companyId: id
@@ -403,13 +416,15 @@
 						} else {
 							uni.showToast({
 								title: zjres.msg,
-								icon: 'error',
+								icon: 'none',
 							});
 						}
 						break;
 					case "大家财险":
-						let djres = await this.$http.post('/api/dajia/verifyPayment', {
-							companyId: id
+						let djapi = item.apiType == '2' ? '/insurance/crawler/verifyPayment' :
+							'/api/dajia/verifyPayment';
+						let djres = await this.$http.post(`${djapi}`, {
+							[item.apiType == 2 ? "subOrderNo" : "companyId"]: id
 						});
 						if (djres.code == '200') {
 							uni.showToast({
@@ -421,13 +436,15 @@
 						} else {
 							uni.showToast({
 								title: djres.msg,
-								icon: 'error',
+								icon: 'none',
 							});
 						}
 						break;
 					case "华泰财险":
-						let htres = await this.$http.post('/order/huaTaiApi/paymentEnquiry', {
-							companyId: id
+						let htapi = item.apiType == '2' ? '/insurance/crawler/verifyPayment' :
+							'/order/huaTaiApi/paymentEnquiry';
+						let htres = await this.$http.post(`${htapi}`, {
+							[item.apiType == 2 ? "subOrderNo" : "companyId"]: id
 						});
 						if (htres.code == '200') {
 							uni.showToast({
@@ -456,7 +473,7 @@
 						} else {
 							uni.showToast({
 								title: ycres.msg,
-								icon: 'error',
+								icon: 'none',
 							});
 						}
 						break;
@@ -474,7 +491,7 @@
 						} else {
 							uni.showToast({
 								title: grres.msg,
-								icon: 'error',
+								icon: 'none',
 							});
 						}
 						break;
@@ -492,7 +509,7 @@
 						} else {
 							uni.showToast({
 								title: zmres.msg,
-								icon: 'error',
+								icon: 'none',
 							});
 						}
 						break;
@@ -510,7 +527,7 @@
 						} else {
 							uni.showToast({
 								title: bhres.msg,
-								icon: 'error',
+								icon: 'none',
 							});
 						}
 						break;
@@ -528,7 +545,7 @@
 						} else {
 							uni.showToast({
 								title: pythonres.msg,
-								icon: 'error',
+								icon: 'none',
 							});
 						}
 						break;
@@ -550,38 +567,34 @@
 	}
 </style>
 <style lang="scss" scoped>
+	.page {
+		min-height: calc(100vh - 44px);
+		background-color: #F8FAFE;
+		padding: 16px 16px 30px 16px;
+	}
+
 	.car-header {
 		width: 100%;
 		height: auto;
-		background: linear-gradient(to right, #ede574, #e1f5c4);
-		padding: 20px;
-		box-sizing: border-box;
-		position: fixed;
-		z-index: 99;
+		background: #FFFFFF;
+		box-shadow: 0px 4px 10px 0px #DAE3F4;
+		border-radius: 6px;
+		padding: 8px 15px;
 
-		.icon-radius {
-			width: 70px;
-			height: 70px;
-			background: white;
-			border-radius: 50%;
-			box-shadow: 0 0 4px 1px #999;
-			padding: 12px;
-			margin-right: 20px;
-
-			image {
-				width: 100%;
-				height: 100%;
-			}
-		}
 
 		.head-name {
+			margin-left: 20px;
+
 			&>text {
 				font-weight: bold;
-				font-size: 20px;
+				font-size: 15px;
+				color: #232832;
 			}
 
 			.name1 text {
+				font-size: 14px;
 				font-weight: bold;
+				color: #333333;
 			}
 		}
 	}
@@ -590,53 +603,63 @@
 		width: 100%;
 		background: white;
 		border-radius: 6px;
-		padding: 20px;
-		box-shadow: 0 0 4px 1px #dfdfdf;
-		padding-bottom: 0;
+		padding: 10px;
+		box-shadow: 0px 4px 10px 0px #DAE3F4;
+		border-radius: 6px;
 		margin-bottom: 10px;
 
-		.orders-upper {
-			view {
-				&>text:first-child {
-					margin-right: 10px;
-				}
+		.status {
+			padding-bottom: 8px;
+			border-bottom: 1px solid #EFEFEF;
 
-				&>text:last-child {
-					font-size: 12px;
-				}
+			>text {
+				color: #FF5600;
+				font-size: 16px;
+				font-weight: bold;
 			}
 		}
 
 		.orders-centre {
-			color: #ff9000;
-			border-bottom: 2px dashed #dfdfdf;
-			padding: 10px 0;
+			padding: 6px 0;
+			border-bottom: 1px solid #EFEFEF;
+
+			>text {
+				font-size: 15px;
+				font-weight: bold;
+				color: #232832;
+			}
 
-			.dis {
-				& text {
-					margin-right: 5px;
+			.sum {
+				view {
+					width: 50%;
+					color: #2D4D89;
+					font-size: 13px;
 				}
 			}
 		}
 
 		.orders-below {
-			padding: 10px 0;
+			padding-top: 10px;
 
-			& button {
-				margin-left: 10px;
+			>view {
+				uni-button {
+					margin-left: 5px;
+				}
 			}
+
 		}
-	}
 
-	.pdd {
-		padding: 10px;
 	}
 
+
 	.strong {
 		font-weight: bold;
 	}
 
 	.arrivalNavigations {
+		font-size: 14px;
+		color: rgba(51, 51, 51, 0.8);
+		margin-right: auto;
 		position: relative;
 	}
 
@@ -644,39 +667,38 @@
 	.arrivalNavigation {
 		width: 250rpx;
 		position: absolute;
-		right: -50px;
+		left: -10px;
 		top: 30px;
 		z-index: 99;
 
 		.sideNavigation {
-			width: 90px;
-			background-color: #999;
-			color: #eee;
+			width: 80px;
+			background-color: #fff;
+			box-shadow: 0px 4px 10px 0px #DAE3F4;
 			border-radius: 10rpx;
 
 			.sideNavigation-btn>view {
 				text-align: center;
-				font-size: 25rpx;
+				font-size: 14px;
+				color: #333333;
 				text-align: center;
 				padding: 6px 0;
-				border-bottom: 1px solid #aeaeae;
+				border-bottom: 1px solid #EFEFEF;
 
 				&:last-child {
 					border: none;
 				}
 			}
-
-
 		}
 
 		.d4 {
 			width: 0;
 			height: 0;
-			margin-left: 52px;
+			margin-left: 22px;
 			margin-top: -20rpx;
 			border-width: 20rpx;
 			border-style: solid;
-			border-color: transparent #999 transparent transparent;
+			border-color: transparent #fff transparent transparent;
 			transform: rotate(90deg);
 			/*顺时针旋转90°*/
 

+ 64 - 4
style/icon.css

@@ -1,10 +1,10 @@
 @font-face {
 	font-family: "iconfont";
 	/* Project id 4439599 */
-	src: url('https://at.alicdn.com/t/c/font_4439599_f66mqv58k59.woff2?t=1714009250079') format('woff2'),
-		url('https://at.alicdn.com/t/c/font_4439599_f66mqv58k59.woff?t=1714009250079') format('woff'),
-		url('https://at.alicdn.com/t/c/font_4439599_f66mqv58k59.ttf?t=1714009250079') format('truetype'),
-		url('https://at.alicdn.com/t/c/font_4439599_f66mqv58k59.svg?t=1714009250079#iconfont') format('svg');
+	src: url('https://at.alicdn.com/t/c/font_4439599_utu5y7tyqy.woff2?t=1721808082143') format('woff2'),
+		url('https://at.alicdn.com/t/c/font_4439599_utu5y7tyqy.woff?t=1721808082143') format('woff'),
+		url('https://at.alicdn.com/t/c/font_4439599_utu5y7tyqy.ttf?t=1721808082143') format('truetype'),
+		url('https://at.alicdn.com/t/c/font_4439599_utu5y7tyqy.svg?t=1721808082143#iconfont') format('svg');
 }
 
 .iconfont {
@@ -15,6 +15,62 @@
 	-moz-osx-font-smoothing: grayscale;
 }
 
+.icon-sanjiao_fill-:before {
+	content: "\e6a0";
+}
+
+.icon-CustomerService:before {
+	content: "\e66d";
+}
+
+.icon-SecurityScan:before {
+	content: "\e667";
+}
+
+.icon-Reconciliation:before {
+	content: "\e668";
+}
+
+.icon-Rocket:before {
+	content: "\e669";
+}
+
+.icon-Contacts:before {
+	content: "\e66a";
+}
+
+.icon-Crown:before {
+	content: "\e66b";
+}
+
+.icon-Read:before {
+	content: "\e66c";
+}
+
+.icon-Partition:before {
+	content: "\e66e";
+}
+
+.icon-iconfanhuishangyiye:before {
+	content: "\e661";
+}
+
+.icon-shouxianxieyidingdan1:before {
+	content: "\e666";
+}
+
+.icon-yiwaixianxieyi:before {
+	content: "\e662";
+}
+
+.icon-chexianxieyi:before {
+	content: "\e663";
+}
+
+.icon-qianbao:before {
+	content: "\e665";
+}
+
 .icon-youjiantou:before {
 	content: "\e6b5";
 }
@@ -327,6 +383,10 @@
 	content: "\e622";
 }
 
+.icon-zhankai-copy:before {
+	content: "\e6bc";
+}
+
 .icon-zhankai:before {
 	content: "\e616";
 }