quoteRecordDetail.vue 41 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980818283848586878889909192939495969798991001011021031041051061071081091101111121131141151161171181191201211221231241251261271281291301311321331341351361371381391401411421431441451461471481491501511521531541551561571581591601611621631641651661671681691701711721731741751761771781791801811821831841851861871881891901911921931941951961971981992002012022032042052062072082092102112122132142152162172182192202212222232242252262272282292302312322332342352362372382392402412422432442452462472482492502512522532542552562572582592602612622632642652662672682692702712722732742752762772782792802812822832842852862872882892902912922932942952962972982993003013023033043053063073083093103113123133143153163173183193203213223233243253263273283293303313323333343353363373383393403413423433443453463473483493503513523533543553563573583593603613623633643653663673683693703713723733743753763773783793803813823833843853863873883893903913923933943953963973983994004014024034044054064074084094104114124134144154164174184194204214224234244254264274284294304314324334344354364374384394404414424434444454464474484494504514524534544554564574584594604614624634644654664674684694704714724734744754764774784794804814824834844854864874884894904914924934944954964974984995005015025035045055065075085095105115125135145155165175185195205215225235245255265275285295305315325335345355365375385395405415425435445455465475485495505515525535545555565575585595605615625635645655665675685695705715725735745755765775785795805815825835845855865875885895905915925935945955965975985996006016026036046056066076086096106116126136146156166176186196206216226236246256266276286296306316326336346356366376386396406416426436446456466476486496506516526536546556566576586596606616626636646656666676686696706716726736746756766776786796806816826836846856866876886896906916926936946956966976986997007017027037047057067077087097107117127137147157167177187197207217227237247257267277287297307317327337347357367377387397407417427437447457467477487497507517527537547557567577587597607617627637647657667677687697707717727737747757767777787797807817827837847857867877887897907917927937947957967977987998008018028038048058068078088098108118128138148158168178188198208218228238248258268278288298308318328338348358368378388398408418428438448458468478488498508518528538548558568578588598608618628638648658668678688698708718728738748758768778788798808818828838848858868878888898908918928938948958968978988999009019029039049059069079089099109119129139149159169179189199209219229239249259269279289299309319329339349359369379389399409419429439449459469479489499509519529539549559569579589599609619629639649659669679689699709719729739749759769779789799809819829839849859869879889899909919929939949959969979989991000100110021003100410051006100710081009101010111012101310141015101610171018101910201021102210231024102510261027102810291030103110321033103410351036103710381039104010411042104310441045104610471048104910501051105210531054105510561057105810591060106110621063106410651066106710681069107010711072107310741075107610771078107910801081108210831084108510861087108810891090109110921093109410951096109710981099110011011102110311041105110611071108110911101111111211131114111511161117111811191120112111221123112411251126112711281129113011311132113311341135113611371138113911401141114211431144114511461147114811491150115111521153115411551156115711581159116011611162116311641165116611671168116911701171117211731174117511761177117811791180118111821183118411851186118711881189119011911192119311941195119611971198119912001201120212031204120512061207120812091210121112121213121412151216121712181219122012211222122312241225122612271228122912301231123212331234123512361237123812391240124112421243124412451246124712481249125012511252125312541255125612571258125912601261126212631264126512661267126812691270127112721273127412751276127712781279128012811282128312841285128612871288128912901291129212931294129512961297129812991300130113021303130413051306130713081309131013111312131313141315131613171318131913201321132213231324132513261327132813291330133113321333133413351336133713381339134013411342134313441345134613471348134913501351135213531354135513561357135813591360136113621363136413651366136713681369137013711372137313741375137613771378137913801381138213831384138513861387138813891390139113921393139413951396139713981399140014011402140314041405140614071408140914101411141214131414
  1. <template>
  2. <view class="page">
  3. <u-sticky zIndex="999" customNavHeight="0">
  4. <uni-NavBar headerTitle="报价详情" background="#fff" :isSlot="false" :rightSlot="true">
  5. <template #rightSlot>
  6. <!-- #ifndef APP-PLUS -->
  7. <view class="dis f-c a-c mr-3" @click="getWechatCustomer">
  8. <image src="/static/icon/customerService.png" mode="" style="width: 48rpx;height: 48rpx;">
  9. </image>
  10. <text style="font-size: 20rpx;color: #333;">客服</text>
  11. </view>
  12. <view class="dis f-c a-c " @click="share">
  13. <image src="/static/icon/share.png" mode="" style="width: 48rpx;height: 48rpx;"></image>
  14. <text style="font-size: 20rpx;color: #333;">分享</text>
  15. </view>
  16. <!-- #endif -->
  17. </template>
  18. </uni-NavBar>
  19. </u-sticky>
  20. <view class="content">
  21. <view class="transfer dis j-s f-wrap">
  22. <view class="item dis a-c j-s">
  23. <text>是否过户车</text>
  24. <text>{{carInfoVo.transfer?'是':'否'}}</text>
  25. </view>
  26. <view class="item dis a-c j-s">
  27. <text>商业险是否过户</text>
  28. <text>{{carInfoVo.biTransfer?'是':'否'}}</text>
  29. </view>
  30. <view class="item mt-3 dis a-c j-s">
  31. <text>报价车型</text>
  32. <text>{{carInfoVo.engineNo}}/{{carInfoVo.brandName}}/
  33. {{carInfoVo.displacement}}/{{carInfoVo.seatCount}}/{{carInfoVo.purchasePrice}}</text>
  34. </view>
  35. <!-- 额外信息 -->
  36. <view class="Attachment dis a-c j-s mt-3">
  37. <view class="mediaFiles dis f-c " @click="mediaFiles">
  38. <image src="/static/image/car-insure/mediaFiles.png" mode=""></image>
  39. <text class="title">影像资料</text>
  40. <text class="mt-1 smallText ">{{imageVoList.length}}张</text>
  41. </view>
  42. <view class="specialTerms dis f-c " @click="specialTerms">
  43. <image src="/static/image/car-insure/specialTerms.png" mode=""></image>
  44. <text class="title">特别约定</text>
  45. <text class="mt-1 smallText">{{specialTermsText()}}</text>
  46. </view>
  47. </view>
  48. </view>
  49. <!--客户权益 -->
  50. <view class="customerRights" v-if="insFeeOrders && insFeeOrders.availableAmount">
  51. <view class="header dis a-c j-s mb-2">
  52. <text>客户权益</text>
  53. <view class="btn" @click="selectedBenefits">
  54. 选择权益
  55. </view>
  56. </view>
  57. <text class=" customerRights-content">可用{{insFeeOrders.availableAmount}}元购买服务赠送客户</text>
  58. </view>
  59. <view class="view " :class="{ 'collapsed': !isExpanded1 }">
  60. <view class="header-title">基本信息</view>
  61. <view class="items dis f-c " id="basicInfo">
  62. <view class="item dis a-c j-s">
  63. <text>车牌号</text>
  64. <text>{{carInfoVo.licenseNo}}</text>
  65. </view>
  66. <view class="item dis a-c j-s">
  67. <text>车架号</text>
  68. <text>{{carInfoVo.vinNo}}</text>
  69. </view>
  70. <view class="item dis a-c j-s">
  71. <text>品牌型号</text>
  72. <text>{{carInfoVo.brandName}}</text>
  73. </view>
  74. <view class="item dis a-c j-s">
  75. <text>发动机号</text>
  76. <text>{{carInfoVo.engineNo}}</text>
  77. </view>
  78. <view class="item dis a-c j-s">
  79. <text>使用性质</text>
  80. <text>{{carInfoVo.carNatureCode}}</text>
  81. </view>
  82. <view class="item dis a-c j-s">
  83. <text>车辆类型</text>
  84. <text>{{carInfoVo.carTypeCode}} </text>
  85. </view>
  86. <view class="item dis a-c j-s">
  87. <text>车辆用途</text>
  88. <text>{{carInfoVo.vehicleUseCode}} </text>
  89. </view>
  90. <view class="item dis a-c j-s">
  91. <text>车辆种类</text>
  92. <text> {{carInfoVo.carKindCode}}</text>
  93. </view>
  94. <view class="item dis a-c j-s">
  95. <text>能源种类</text>
  96. <text>{{carInfoVo.energyTypeCode}} </text>
  97. </view>
  98. <view class="item dis a-c j-s">
  99. <text>注册日期</text>
  100. <text>{{carInfoVo.registerDate}} </text>
  101. </view>
  102. <view class="item dis a-c j-s">
  103. <text>发证日期</text>
  104. <text> {{carInfoVo.issueDate}}</text>
  105. </view>
  106. <view class="item dis a-c j-s">
  107. <text>是否过户</text>
  108. <text>{{carInfoVo.transfer?'是':'否'}}</text>
  109. </view>
  110. <view class="item dis a-c j-s">
  111. <text>商业险是否过户</text>
  112. <text>{{carInfoVo.biTransfer?'是':'否'}}</text>
  113. </view>
  114. <view class="item dis a-c j-s">
  115. <text>年款</text>
  116. <text> {{carInfoVo.carYear}}</text>
  117. </view>
  118. <view class="item dis a-c j-s">
  119. <text>座位数</text>
  120. <text> {{carInfoVo.seatCount}}座</text>
  121. </view>
  122. <view class="item dis a-c j-s">
  123. <text>整备质量</text>
  124. <text> {{carInfoVo.completeKerbMass}}kg</text>
  125. </view>
  126. <view class="item dis a-c j-s">
  127. <text>排量</text>
  128. <text>{{carInfoVo.displacement}}L</text>
  129. </view>
  130. <view class="item dis a-c j-s">
  131. <text>功率</text>
  132. <text> {{carInfoVo.powerScale}}kw</text>
  133. </view>
  134. <view class="item dis a-c j-s">
  135. <text>新车购置价</text>
  136. <text>{{carInfoVo.purchasePrice}}元 </text>
  137. </view>
  138. <u-gap height="5" bgColor="#F8F8F8"></u-gap>
  139. <!-- 车主信息 -->
  140. <view class="userinfo">
  141. <view class="userinfo-header dis a-c ">
  142. <view class="tag"></view>
  143. <text>车主信息</text>
  144. </view>
  145. <view class="content dis f-c ">
  146. <view class="item dis a-c j-s">
  147. <text>姓名</text>
  148. <text>{{ownersInfo.name}}</text>
  149. </view>
  150. <view class="item dis a-c j-s">
  151. <text>手机号</text>
  152. <text>{{ownersInfo.mobile}}</text>
  153. </view>
  154. <view class="item dis a-c j-s">
  155. <text>证件号</text>
  156. <text>{{ownersInfo.identifyNumber}}</text>
  157. </view>
  158. <view class="item dis a-start j-s">
  159. <text>地址</text>
  160. <text>{{ownersInfo.addr}}</text>
  161. </view>
  162. </view>
  163. </view>
  164. <u-gap height="5" bgColor="#F8F8F8"></u-gap>
  165. <!-- 投保人信息 -->
  166. <view class="userinfo">
  167. <view class="userinfo-header dis a-c ">
  168. <view class="tag"></view>
  169. <text>投保人信息</text>
  170. </view>
  171. <view class="content dis f-c ">
  172. <view class="item dis a-c j-s">
  173. <text>姓名</text>
  174. <text>{{policyHolderInfo.name}}</text>
  175. </view>
  176. <view class="item dis a-c j-s">
  177. <text>手机号</text>
  178. <text>{{policyHolderInfo.mobile}}</text>
  179. </view>
  180. <view class="item dis a-c j-s">
  181. <text>证件号</text>
  182. <text>{{policyHolderInfo.identifyNumber}}</text>
  183. </view>
  184. <view class="item dis a-start j-s">
  185. <text>地址</text>
  186. <text>{{policyHolderInfo.addr}}</text>
  187. </view>
  188. </view>
  189. </view>
  190. <u-gap height="5" bgColor="#F8F8F8"></u-gap>
  191. <!-- 被保人信息 -->
  192. <view class="userinfo">
  193. <view class="userinfo-header dis a-c ">
  194. <view class="tag"></view>
  195. <text>被保人信息</text>
  196. </view>
  197. <view class="content dis f-c ">
  198. <view class="item dis a-c j-s">
  199. <text>姓名</text>
  200. <text>{{insuredPersonInfo.name}}</text>
  201. </view>
  202. <view class="item dis a-c j-s">
  203. <text>手机号</text>
  204. <text>{{insuredPersonInfo.mobile}}</text>
  205. </view>
  206. <view class="item dis a-c j-s">
  207. <text>证件号</text>
  208. <text>{{insuredPersonInfo.identifyNumber}}</text>
  209. </view>
  210. <view class="item dis a-start j-s">
  211. <text>地址</text>
  212. <text>{{insuredPersonInfo.addr}}</text>
  213. </view>
  214. </view>
  215. </view>
  216. </view>
  217. <!-- 查看更多 -->
  218. <view class="loadMore dis a-c j-c" @click="toggleExpand('isExpanded1')"
  219. :style="{position:isExpanded1?'relative':'absolute'}">
  220. <text>查看更多</text>
  221. <image :src="doubleArrowimg" mode="" :style="{transform:`rotate(${isExpanded1?180:0}deg)`}"></image>
  222. </view>
  223. </view>
  224. <!-- 保费因素 -->
  225. <view class="view " :class="{ 'collapsed': !isExpanded2 }">
  226. <view class="header-title"
  227. style="background: linear-gradient( 180deg, #F9F6FF 0%, #FFFFFF 100%);border-color: #E3D5FF;">保费因素
  228. </view>
  229. <view class="items dis f-c " id="premiumFactor">
  230. <view class="item dis a-c j-s" v-if="scoreVo.score">
  231. <text>评分</text>
  232. <text>{{scoreVo.score}}</text>
  233. </view>
  234. <view class="item dis a-c j-s">
  235. <text>交强险系数</text>
  236. <text></text>
  237. </view>
  238. <view class="item dis a-c j-s">
  239. <text class="mr-2">商业险系数</text>
  240. <view class="dis a-c ">
  241. <u--input border="surround"
  242. :customStyle="{background:'rgba(253,233,53,0.05)',borderColor:'#FDE935 !important',padding:'4rpx 18rpx',pointerEvents: 'none',width:'250rpx'}"
  243. v-model="scoreVo.syScore" disabled disabledColor='rgba(253,233,53,0.05)'></u--input>
  244. <view class="colorBlock dis a-c j-c " @tap="updateDiscountShow=true">
  245. <image :src="editimg" mode=""></image>
  246. </view>
  247. </view>
  248. </view>
  249. <view class="item dis a-c j-s" v-if="scoreVo.jqScore">
  250. <text>交强评分</text>
  251. <text>{{scoreVo.jqScore}}</text>
  252. </view>
  253. <view class="item dis a-c j-s" v-if="scoreVo.syScore">
  254. <text>商业评分</text>
  255. <text>{{scoreVo.syScore}}</text>
  256. </view>
  257. <view class="item dis a-start j-s" v-if="scoreVo.ciClaims">
  258. <text>交强出险次数</text>
  259. <text>{{scoreVo.ciClaims}}</text>
  260. </view>
  261. <view class="item dis a-start j-s" v-if="scoreVo.biClaims">
  262. <text>商业出险次数</text>
  263. <text>{{scoreVo.biClaims}}</text>
  264. </view>
  265. <view class="item dis a-start j-s" v-if="scoreVo.lossRation">
  266. <text>总赔付率</text>
  267. <text>{{scoreVo.lossRation}}</text>
  268. </view>
  269. <view class="item dis a-start j-s" v-if="scoreVo.jqLossRation">
  270. <text>交强赔付率</text>
  271. <text>{{scoreVo.jqLossRation}}</text>
  272. </view>
  273. <view class="item dis a-start j-s" v-if="scoreVo.syLossRation">
  274. <text>商业赔付率</text>
  275. <text>{{scoreVo.syLossRation}}</text>
  276. </view>
  277. <view class="item dis a-start j-s">
  278. <text>总折扣率</text>
  279. <text></text>
  280. </view>
  281. <view class="item dis a-start j-s" v-if="costs.ciRatio">
  282. <text>交强折扣</text>
  283. <text>{{costs.ciRatio}}</text>
  284. </view>
  285. <view class="item dis a-start j-s" v-if="costs.biRatio">
  286. <text>商业折扣</text>
  287. <text>{{costs.biRatio}}</text>
  288. </view>
  289. <view class="item dis a-start j-s" v-for="(item,index) in scoreVo.scoreJson" :key="index">
  290. <text>{{item.scoreName}}</text>
  291. <text>{{item.score}}</text>
  292. </view>
  293. </view>
  294. <!-- 查看更多 -->
  295. <view class="loadMore dis a-c j-c" @click="toggleExpand('isExpanded2')"
  296. :style="{position:isExpanded2?'relative':'absolute'}">
  297. <text>查看更多</text>
  298. <image :src="doubleArrowimg" mode="" :style="{transform:`rotate(${isExpanded2?180:0}deg)`}"></image>
  299. </view>
  300. </view>
  301. <!-- 报价方案 -->
  302. <view class="view " :class="{ 'collapsed': !isExpanded3 }">
  303. <view class="header-title"
  304. style="background: linear-gradient( 180deg, #FFF8F8 0%, #FFFFFF 100%);border-color: #FFD9D9;">报价方案
  305. </view>
  306. <view class="items dis f-c " id="quotationScheme">
  307. <view class="item dis a-c j-s">
  308. <text>保费合计</text>
  309. <text class="price">¥{{costs.sumPremium}}</text>
  310. </view>
  311. <view class="item dis a-c j-s" v-if="costs.ciPremium">
  312. <text>交强险</text>
  313. <text>¥{{costs.ciPremium}}</text>
  314. </view>
  315. <view class="item dis a-c j-s" v-if="costs.vvTax">
  316. <view class=" dis a-c ">车船税
  317. <view class="vvTax-Tag ml-1" @click="vvTaxDetailsShow=true">
  318. {{taxRelifFlagName}}
  319. </view>
  320. </view>
  321. <text>¥{{costs.vvTax}}</text>
  322. </view>
  323. <view class="item dis a-start j-s" v-if="costs.biPremium">
  324. <text>商业险</text>
  325. <text>¥{{costs.biPremium}}</text>
  326. </view>
  327. <view class="item dis a-start j-s" v-if="costs.niPremium">
  328. <text>驾意险</text>
  329. <text>¥{{costs.niPremium}}</text>
  330. </view>
  331. <view class="table mb-3" v-if="kindInfoVo.length>0">
  332. <view class="header dis a-c j-s">
  333. <text class="th special">商业险</text>
  334. <text class="th">保额</text>
  335. <text class="th">保费</text>
  336. </view>
  337. <view class="tr dis a-c j-c" v-for="(item,index) in kindInfoVo" :key="index">
  338. <text class="td special">{{item.kindName}}</text>
  339. <text v-if="['A'].includes(item.kindCode)" class="td">投保</text>
  340. <text v-else-if="['D4', 'SY_FJ_YBW2'].includes(item.kindCode)"
  341. class="td">{{convertedValue(item.unitAmount)}}</text>
  342. <text v-else-if="['MJ1', 'MJ2', 'MJ3', 'MJ4'].includes(item.kindCode)"
  343. class="td">{{item.amount}}%</text>
  344. <text v-else-if="['TY1', 'TY2', 'TY3', 'TY4'].includes(item.kindCode)"
  345. class="td">{{item.serviceTimes}}次</text>
  346. <text class="td">{{item.premium?item.premium:'-'}}</text>
  347. </view>
  348. </view>
  349. <view class="table" v-if="accidentalDrivings.length>0">
  350. <view class="header dis a-c j-s">
  351. <text class="th special">驾意险</text>
  352. <text class="th">单价/数量</text>
  353. <text class="th">保费</text>
  354. </view>
  355. <view class="tr dis a-c j-c" v-for="(item,index) in accidentalDrivings" :key="index">
  356. <text class="td special">{{item.productName}}</text>
  357. <text class="td">{{item.quantity}}份</text>
  358. <text class="td">{{item.sumAmount}}</text>
  359. </view>
  360. </view>
  361. </view>
  362. <!-- 查看更多 -->
  363. <view class="loadMore dis a-c j-c" @click="toggleExpand('isExpanded3')"
  364. :style="{position:isExpanded3?'relative':'absolute'}">
  365. <text>查看更多</text>
  366. <image :src="doubleArrowimg" mode="" :style="{transform:`rotate(${isExpanded3?180:0}deg)`}"></image>
  367. </view>
  368. </view>
  369. </view>
  370. <view class="footer">
  371. <!-- 待核保 -->
  372. <view class="orderAction dis a-c j-s ">
  373. <view class=" dis f-c a-c j-c">
  374. <view class=" totalPrice dis a-end ">
  375. <text>¥</text>
  376. <text>{{costs.sumPremium || 0 }}</text>
  377. </view>
  378. <text class="feeEntry" @click="feeEntryInfoShow=true">费用信息</text>
  379. </view>
  380. <view class="dis a-c j-s" v-if="isFromShare!='share'">
  381. <view class="btn btns dis a-c j-c " @click="home">
  382. 投保其他车辆
  383. </view>
  384. <view class="btn dis a-c j-c " @click=" applyUnderwriting">
  385. 申请核保
  386. </view>
  387. </view>
  388. </view>
  389. </view>
  390. <!-- 系数修改弹窗 -->
  391. <uni-Popup :show="updateDiscountShow" @close="updateDiscountShow=false" :closeable="false"
  392. headerTitle="商业险折扣系数修改" overflow="auto" :headerStyle="{fontSize:'36rpx'}" maxHeight="980rpx" mode="center"
  393. width="90%">
  394. <template #content>
  395. <view class="updateDiscount">
  396. <text class="text ">商业险折扣系数和自主定价系数只能修改一个,修改后系统会重新报价,计算修改后的保费</text>
  397. <u-radio-group v-model="updateDiscountSValue" placement="column" class="mt-3 " activeColor="#FDE935"
  398. iconColor='#333'>
  399. <u-radio label="明月几时有" style="align-items: baseline;">
  400. <view class="dis f-c " style="width: 100%;">
  401. <view class="dis a-start input mb-1">
  402. <text>商业险折扣系数</text>
  403. <text>(0.8521252)</text>
  404. </view>
  405. <u--input placeholder="请输入内容" clearable></u--input>
  406. </view>
  407. </u-radio>
  408. <u-radio label="明月几时有" class="mt-3" style="align-items: baseline;">
  409. <view class="dis f-c " style="width: 100%;">
  410. <view class="dis a-c input mb-1">
  411. <text>自主定价系数</text>
  412. <text>(0.8)</text>
  413. </view>
  414. <u--input disabled placeholder="输入1—100的数字" clearable></u--input>
  415. </view>
  416. </u-radio>
  417. </u-radio-group>
  418. <view class="btn dis mt-3">
  419. <u-button class="mr-2" type="primary" shape="circle" :plain="true" text="关闭" color="#DDDDDD"
  420. @click="updateDiscountShow=false" :customStyle="{color:'#333'}"></u-button>
  421. <u-button type="primary" shape="circle" text="确定" color="#FDE935"
  422. :customStyle="{color:'#1f1f1f'}"></u-button>
  423. </view>
  424. </view>
  425. </template>
  426. </uni-Popup>
  427. <!-- 费用信息展示弹窗 -->
  428. <uni-Popup :show="feeEntryInfoShow" @close="feeEntryInfoShow=false" :closeable="false" headerTitle="费用信息"
  429. overflow="auto" :headerStyle="{fontSize:'36rpx'}" maxHeight="980rpx" mode="center" width="90%">
  430. <template #content>
  431. <view class="feeEntryClass" v-if="insFeeOrders">
  432. <view class="dis a-start j-s data-view">
  433. <text class="title">交强险</text>
  434. <view class="dis f-c discount">
  435. <view class="dis a-c ">
  436. <text>保费:</text>
  437. <text class="dis j-end a-c">¥{{insFeeOrders.jqPremium}}</text>
  438. </view>
  439. <view class="dis a-c ">
  440. <text>优惠:</text>
  441. <text class="font-weight dis j-end a-c">¥{{insFeeOrders.jqPayablePremium}}</text>
  442. </view>
  443. </view>
  444. </view>
  445. <view class="dis a-start j-s data-view">
  446. <text class="title">商业险</text>
  447. <view class="dis f-c discount">
  448. <view class="dis a-c ">
  449. <text>保费:</text>
  450. <text class="dis j-end a-c">¥{{insFeeOrders.syPremium}}</text>
  451. </view>
  452. <view class="dis a-c ">
  453. <text>优惠:</text>
  454. <text class="font-weight dis j-end a-c">¥{{insFeeOrders.syPayablePremium}}</text>
  455. </view>
  456. </view>
  457. </view>
  458. <view class="dis a-start j-s data-view">
  459. <text class="title">驾意险</text>
  460. <view class="dis f-c discount">
  461. <view class="dis a-c">
  462. <text>保费:</text>
  463. <text class="dis j-end a-c">¥{{insFeeOrders.jyPremium}}</text>
  464. </view>
  465. <view class="dis a-c ">
  466. <text>优惠:</text>
  467. <text class="font-weight dis j-end a-c">¥{{insFeeOrders.jyPayablePremium}}</text>
  468. </view>
  469. </view>
  470. </view>
  471. <view class="discountTotal dis a-c j-s ">
  472. <text class="name">优惠总计</text>
  473. <text class="sum">¥{{insFeeOrders.totalPayablePremium}}</text>
  474. </view>
  475. <view class="footer-btn dis a-c j-c" @click="feeEntryInfoShow=false">
  476. 关闭
  477. </view>
  478. </view>
  479. </template>
  480. </uni-Popup>
  481. <!-- 车船税信息弹窗 -->
  482. <uni-Popup :show="vvTaxDetailsShow" @close='vvTaxDetailsShow=false' headerTitle="车船税" overflow="auto"
  483. maxHeight="580rpx">
  484. <template #content>
  485. <view class="vvTaxDetails-cell dis f-c ">
  486. <view class="cell-item dis a-c j-s">
  487. <text>车船税</text>
  488. <text>{{taxRelifFlagName}}</text>
  489. </view>
  490. <template>
  491. <view class="cell-item dis a-c j-s"
  492. v-if="vehicleAndVesselTaxVo.taxRelifFlag == 2 || vehicleAndVesselTaxVo.taxRelifFlag == 3">
  493. <text>减免税凭证号</text>
  494. <text>{{vehicleAndVesselTaxVo.extendChar2}}</text>
  495. </view>
  496. <view class="cell-item dis a-c j-s" v-if="vehicleAndVesselTaxVo.taxRelifFlag == 4">
  497. <text>完税凭证号</text>
  498. <text>{{vehicleAndVesselTaxVo.paidFreeCertificate}}</text>
  499. </view>
  500. <view class="cell-item dis a-c j-s"
  501. v-if="vehicleAndVesselTaxVo.taxRelifFlag == 2 || vehicleAndVesselTaxVo.taxRelifFlag == 3">
  502. <text>减免税原因</text>
  503. <text>{{vehicleAndVesselTaxVo.relifReason}}</text>
  504. </view>
  505. <view class="cell-item dis a-c j-s" v-if="vehicleAndVesselTaxVo.taxRelifFlag == 3">
  506. <text>减税比例</text>
  507. <text>{{vehicleAndVesselTaxVo.taxRelief}}</text>
  508. </view>
  509. <view class="cell-item dis a-c j-s" v-if="vehicleAndVesselTaxVo.taxRelifFlag !=1">
  510. <text>税务机关代码</text>
  511. <text>{{vehicleAndVesselTaxVo.taxComCode}}</text>
  512. </view>
  513. <view class="cell-item dis a-c j-s" v-if="vehicleAndVesselTaxVo.taxRelifFlag !=1">
  514. <text>税务机关名称</text>
  515. <text>{{vehicleAndVesselTaxVo.taxComName}}</text>
  516. </view>
  517. <view class="cell-item dis a-c j-s" v-if="vehicleAndVesselTaxVo.taxRelifFlag ==4">
  518. <text>完税凭证填发日期</text>
  519. <text>{{vehicleAndVesselTaxVo.taxDocumentDate}}</text>
  520. </view>
  521. <view class="cell-item dis a-c j-s" v-if="vehicleAndVesselTaxVo.taxRelifFlag ==4">
  522. <text>完税凭证地区</text>
  523. <text>{{vehicleAndVesselTaxVo.taxPaidAreaCode}}</text>
  524. </view>
  525. </template>
  526. </view>
  527. </template>
  528. </uni-Popup>
  529. <!-- 优惠方式弹窗 -->
  530. <uni-Popup :show="discountMethodShow" @close='discountMethodShow=false' headerTitle="选择优惠方式" overflow="auto"
  531. maxHeight="580rpx">
  532. <template #content>
  533. <view class="discountMethod-cell dis f-c " v-if="insFeeOrders && insFeeOrders.availableAmount">
  534. <view class="item dis f-c a-start" @click="selectedBenefits">
  535. <text class="title mb-1">客户权益</text>
  536. <text>当前客户出单后,可赠送客户价值 <text class="price"
  537. v-if="insFeeOrders.availableAmount">{{insFeeOrders.availableAmount}}</text> 的权益礼包</text>
  538. </view>
  539. <view class="item dis f-c a-start" @click="discountMethodShow=false,underwritingShow=true">
  540. <text class="title mb-1">现金优惠</text>
  541. <text>选择为当前客户最多优惠<text class="price"
  542. v-if="insFeeOrders.totalExportPremium">{{insFeeOrders.totalExportPremium}}</text>元</text>
  543. </view>
  544. </view>
  545. </template>
  546. </uni-Popup>
  547. <!-- 确认核保提示 -->
  548. <uni-PopupMessage :show="underwritingShow" @close='underwritingShow=false' @cancelEvent='underwritingShow=false'
  549. @confirmEvent="underwritingEvent">
  550. <template #content>
  551. <view class="dis a-c j-c ">
  552. 是否确认提交核保
  553. </view>
  554. </template>
  555. </uni-PopupMessage>
  556. <!-- 右上角分享功能 -->
  557. <uni-share :show="shareShow" @close="shareShow=false" @weixin="weixin" @userSmsShare="userSmsShare"
  558. @copyLink="copyLink" @saveToAlbum="saveToAlbum" @closeModal="shareShow = false">
  559. </uni-share>
  560. <!-- 自定义加载动画 -->
  561. <u-overlay :show="loadingShow" style="background-color: rgba(255, 255, 255, 0.6);">
  562. <view class="dis f-c a-c j-c " style="height: 100%;">
  563. <u-loading-icon></u-loading-icon>
  564. <text style="color: #909399;" class="mt-1">{{loadingText}}</text>
  565. </view>
  566. </u-overlay>
  567. </view>
  568. </template>
  569. <script>
  570. import {
  571. turnBase64Image,
  572. dictionaryMatch····
  573. } from '@/plugins/utils.js';
  574. import Mixin from './Mixin.js';
  575. export default {
  576. mixins: [Mixin], // 注入 Mixin
  577. data() {
  578. return {
  579. discountMethodShow: false, //选择优惠方式弹窗
  580. feeEntryInfoShow: false, //费用信息弹窗
  581. updateDiscountSValue: "",
  582. insCompanyVo: {}, //保险公司信息
  583. updateDiscountShow: false, //折扣系数修改弹窗
  584. underwritingShow: false, //核保弹窗
  585. loadingShow: false, //加载
  586. loadingText: '加载中', //加载提示文字
  587. shareShow: false, //分享弹窗
  588. doubleArrowimg: "", //箭头图片
  589. editimg: "", //编辑
  590. premiumFactorHeight: 0,
  591. basicInfoHeight: 0,
  592. quotationSchemeHeight: 0,
  593. collapsedHeight: 258,
  594. isExpanded1: false, //展开收起
  595. isExpanded2: false, //展开收起
  596. isExpanded3: false, //展开收起
  597. carInfoVo: {}, //车辆信息
  598. ownersInfo: {}, //车主信息
  599. policyHolderInfo: {}, //投保人信息
  600. insuredPersonInfo: {}, //被保人信息
  601. scoreVo: {}, //保费因素
  602. costs: {}, //报价金额信息
  603. salesmanInfo: {}, //业务员信息
  604. kindInfoVo: [], //商业险险别
  605. accidentalDrivings: [], //驾意险列表
  606. imageVoList: [],
  607. vvTaxDetailsShow: false, //车船税展示弹窗
  608. //车船税form
  609. //字典
  610. car_nature_codeoptions: [], //使用性质
  611. vehicle_use_code01options: [], //营业
  612. vehicle_use_code02options: [], //非营业
  613. car_kind_codeoptions: [], //车辆种类
  614. energy_type_codeoptions: [], //能源类型
  615. car_type_codeoptions: [], //车辆类型
  616. car_tax_codeoptions: [], //车船税类型
  617. taxpayerIdentifieroptions: [], //车船税类型
  618. car_tax_reason_codeoptions: [], //减免税原因
  619. // 影像信息
  620. modificationFlag: false, //影像修改标识
  621. specialInfoVo: [], //已选特约
  622. insFeeOrders: {}, //费用信息
  623. insOrderRightsInfoVo: {}, //权益信息
  624. insOrderRightsInfoDto: null, //权益参数
  625. isFromShare: "",
  626. }
  627. },
  628. onShow() {
  629. console.log(this.insOrderRightsInfoDto);
  630. },
  631. async onLoad(options) {
  632. this.loadingShow = true;
  633. try {
  634. this.isFromShare = options.from;
  635. await this.getDicType("car_tax_code"); //车船税类型
  636. await this.getDicType("taxpayerIdentifier"); //纳税人证件类型
  637. await this.getDicType("car_tax_reason_code"); //减免税原因代码
  638. await this.getDicType("car_nature_code"); //使用性质
  639. await this.getDicType("vehicle_use_code", "01"); //营业
  640. await this.getDicType("vehicle_use_code", "02"); //非营业
  641. await this.getDicType("car_kind_code"); //车辆种类
  642. await this.getDicType("energy_type_code"); //能源类型
  643. await this.getDicType("car_type_code"); //车辆类型
  644. await this.details(options.ordersNo); //详情接口
  645. this.loadingShow = false;
  646. const query = uni.createSelectorQuery();
  647. query.select('#basicInfo').boundingClientRect((rect) => {
  648. this.basicInfoHeight = rect.height; // 获取元素高度
  649. }).exec();
  650. query.select('#premiumFactor').boundingClientRect((rect) => {
  651. this.premiumFactorHeight = rect.height; // 获取元素高度
  652. }).exec()
  653. query.select('#quotationScheme').boundingClientRect((rect) => {
  654. this.quotationSchemeHeight = rect.height; // 获取元素高度
  655. }).exec()
  656. } catch (error) {
  657. this.loadingShow = false;
  658. }
  659. },
  660. async mounted() {
  661. this.doubleArrowimg = await turnBase64Image('/static/image/doubleArrow.png');
  662. this.editimg = await turnBase64Image('/static/icon/edit.png')
  663. },
  664. computed: {
  665. //获取车船税类型
  666. taxRelifFlagName() {
  667. let info = this.car_tax_codeoptions.find(ele => ele.value === this.vehicleAndVesselTaxVo.taxRelifFlag)
  668. return info?.description;
  669. },
  670. //报价年份
  671. quoteYear() {
  672. const year = this.order.createTime.slice(0, 4);
  673. return year;
  674. },
  675. },
  676. methods: {
  677. // 选择权益
  678. selectedBenefits() {
  679. this.discountMethodShow = false;
  680. let params = {
  681. ownersInfo: this.ownersInfo, //车主
  682. policyHolderInfo: this.policyHolderInfo, //投保人
  683. insuredPersonInfo: this.insuredPersonInfo, //被保人
  684. insFeeOrders: this.insFeeOrders, //费用信息
  685. ordersNo: this.ordersNo,
  686. insOrderRightsInfoVo: this.insOrderRightsInfoVo, //权益信息
  687. }
  688. uni.navigateTo({
  689. url: '/pages/reward/customerBenefit?info=' + JSON.stringify(params)
  690. })
  691. },
  692. specialTermsText() {
  693. if (['资金财险', '华泰财险', '国任财险'].includes(this.companyName)) {
  694. return '点击选择'
  695. } else {
  696. return "暂不支持"
  697. }
  698. },
  699. // 补传影像
  700. async uploadRetry() {
  701. const mergedArray = [...this.carImageListId, ...this.ownerImageListId, ...this
  702. .policyHolderImageListId, ...this.insuredPersonImageListId
  703. ];
  704. if (mergedArray.length > 0) {
  705. await this.$http.post('/unify/order/imageSave', {
  706. imageList: mergedArray,
  707. quoteNo: this.quoteNo,
  708. })
  709. }
  710. },
  711. applyUnderwriting() {
  712. if (this.insFeeOrders?.availableAmount && !this.insOrderRightsInfoDto) {
  713. this.discountMethodShow = true;
  714. } else {
  715. this.underwritingShow = true
  716. }
  717. },
  718. //调用核保接口
  719. async underwritingEvent() {
  720. this.underwritingShow = false; //关闭弹窗
  721. this.loadingText = "核保中";
  722. this.loadingShow = true; //加载loading
  723. if (this.modificationFlag) {
  724. // 修改影像后,补传影像
  725. await this.uploadRetry();
  726. }
  727. let images = await this.$http.post('/unify/order/imagesUpload', {
  728. order: {
  729. ordersNo: this.order.ordersNo,
  730. quoteNo: this.order.quoteNo
  731. },
  732. imageVoList: [...this.carImageListId, ...this.ownerImageListId, ...this
  733. .policyHolderImageListId, ...this.insuredPersonImageListId
  734. ]
  735. }); //影像提交保险公司
  736. if (images.code == '200') { //核保
  737. // specialAppointmentsVos=[] 特约
  738. let underwriting = await this.$http.post('/unify/order/underwriting', {
  739. order: {
  740. ordersNo: this.ordersNo,
  741. },
  742. insOrderRightsInfoDto: this.insOrderRightsInfoDto,
  743. });
  744. if (underwriting.code == '200') {
  745. let res = await this.$http.get('/supplementOrder/getOrderDetail?ordersNo=' + this.id);
  746. if (res.code == '200') {
  747. this.orderStatus = res.data.order.orderStatus; //订单状态
  748. // 状态为人工处理跳转页面
  749. if (this.orderStatus == 3) {
  750. uni.navigateTo({
  751. url: '/pages/quote/manualUnderwritingPage?Info=' + JSON.stringify(res
  752. .data),
  753. })
  754. }
  755. }
  756. this.loadingShow = false;
  757. uni.showToast({
  758. icon: 'none',
  759. title: '核保成功'
  760. })
  761. } else {
  762. this.loadingShow = false;
  763. uni.showToast({
  764. icon: 'none',
  765. title: underwriting.msg
  766. })
  767. }
  768. } else {
  769. this.loadingShow = false;
  770. uni.showToast({
  771. icon: 'none',
  772. title: images.msg
  773. })
  774. }
  775. },
  776. //影像资料
  777. mediaFiles() {
  778. uni.navigateTo({
  779. url: "/pages/quote/imageGalleryPage?quoteNo=" + this.quoteNo,
  780. })
  781. },
  782. //特别约定
  783. specialTerms() {
  784. uni.navigateTo({
  785. url: "/pages/quote/specialAgreementPage?companyId=" + this.insCompanyVo.id + '&productId=' +
  786. this.order.productId +
  787. '&specialInfoVo=' + JSON.stringify(this.specialInfoVo),
  788. })
  789. },
  790. //分享微信
  791. weixin() {
  792. uni.share({
  793. provider: "weixin",
  794. scene: "WXSceneSession",
  795. type: 0,
  796. href: this.$base.h5BaseUrl + `/#/pages/quote/quoteRecordDetail?orderno=${this.ordersNo}`,
  797. title: `${this.companyName}${this.quoteYear}年的车险报价`,
  798. summary: `${this.companyName}报价完成,保费:${this.costs.sumPremium}元,点击查看详情`,
  799. imageUrl: "/static/image/zgcx.png",
  800. success: function(res) {
  801. console.log("success:" + JSON.stringify(res));
  802. },
  803. fail: function(err) {
  804. console.log("fail:" + JSON.stringify(err));
  805. }
  806. });
  807. },
  808. //短信分享
  809. userSmsShare() {
  810. var msg = plus.messaging.createMessage(plus.messaging.TYPE_SMS);
  811. msg.to = [this.policyHolderInfo.name]; //投保人手机号
  812. msg.body =
  813. `【${this.salesmanInfo.systemShortName}】尊敬的【${this.carInfoVo.licenseNo}】车主,${this.companyName}${this.quoteYear}年车险报价:${this.costs.sumPremium}元;联系人:${this.salesmanInfo.name} ${this.salesmanInfo.mobile},点击链接查看详情或电话咨询联系人${this.$base.h5BaseUrl + `/#/pages/quote/quoteRecordDetail?orderno=${this.ordersNo}`}`;
  814. plus.messaging.sendMessage(msg);
  815. },
  816. //复制链接
  817. copyLink() {
  818. uni.setClipboardData({
  819. data: this.$base.h5BaseUrl +
  820. `/#/pages/quote/quoteRecordDetail?orderno=${this.ordersNo}`, //要被复制的内容
  821. success: () => { //复制成功的回调函数
  822. uni.showToast({ //提示
  823. icon: 'none',
  824. title: '链接已复制'
  825. })
  826. }
  827. });
  828. },
  829. //数据字典
  830. async getDicType(type, vehicle) {
  831. if (vehicle) {
  832. let res = await this.$http.get(`/dict/get?dictCode=${type}&parentValue=${vehicle}`);
  833. this[type + vehicle + "options"] = res.data;
  834. } else {
  835. let res = await this.$http.get('/dict/get?dictCode=' + type);
  836. this[type + "options"] = res.data;
  837. }
  838. },
  839. //数字格式化
  840. convertedValue(num) {
  841. if (!num) {
  842. return "-";
  843. }
  844. if (num < 10000) {
  845. return num.toString();
  846. } else if (num < 100000000) {
  847. return (Math.floor(num / 10000 * 10) / 10) + '万';
  848. } else {
  849. return (Math.floor(num / 100000000 * 10) / 10) + '亿';
  850. }
  851. },
  852. async details(orderno) {
  853. let res = await this.$http.get('/supplementOrder/getOrderDetail?ordersNo=' + orderno);
  854. if (res.code == 200) {
  855. this.orderStatus = res.data.order.orderStatus; //订单状态
  856. this.companyName = res.data.order.companyName; //保险公司简称
  857. this.insCompanyVo = res.data.insCompanyVo[0]; //保险公司信息
  858. this.ordersNo = res.data.order.ordersNo; //订单号
  859. this.quoteNo = res.data.order.quoteNo; //报价号
  860. this.ciRiskInfoVo = res.data.ciRiskInfoVo; //交强大类
  861. this.biRiskInfoVo = res.data.biRiskInfoVo; //商业大类
  862. this.costs = res.data.costs; //报价金额信息
  863. this.policy = res.data.policy; //保单号信息
  864. this.kindInfoVo = res.data.kindInfoVo; //商业险险别
  865. this.accidentalDrivings = res.data.accidentalDrivings; //驾意险
  866. this.carInfoVo = res.data.carInfoVo; //车辆信息
  867. this.ownersInfo = res.data.ownersInfo; //车主信息
  868. this.policyHolderInfo = res.data.policyHolderInfo; //投保人信息
  869. this.insuredPersonInfo = res.data.insuredPersonInfo; //被保人信息
  870. this.scoreVo = res.data.scoreVo; //保费因素
  871. this.vehicleAndVesselTaxVo = res.data.vehicleAndVesselTaxVo; //车船税信息
  872. this.salesmanInfo = res.data.salesmanInfo; //业务员信息
  873. this.insFeeOrders = res.data.insFeeOrders; //费用信息
  874. this.insOrderRightsInfoVo = res.data.insOrderRightsInfoVo; //权益详情
  875. this.imageVoList = res.data.imageVoList;
  876. this.order = res.data.order;
  877. this.imageEcho(res.data.imageVoList) // 影像获取完毕
  878. // 去掉this.kindInfoVo中的交强险
  879. this.kindInfoVo = this.kindInfoVo.filter(item => item.kindCode != 'J1')
  880. this.carInfoVo.carNatureCode = dictionaryMatch(this.car_nature_codeoptions, res
  881. .data.carInfoVo
  882. .carNatureCode)
  883. if (res.data.carInfoVo.carNatureCode == '01') {
  884. this.carInfoVo.vehicleUseCode = dictionaryMatch(this
  885. .vehicle_use_code01options,
  886. res.data
  887. .carInfoVo
  888. .vehicleUseCode)
  889. } else {
  890. this.carInfoVo.vehicleUseCode = dictionaryMatch(this
  891. .vehicle_use_code02options,
  892. res.data
  893. .carInfoVo
  894. .vehicleUseCode)
  895. }
  896. this.carInfoVo.carTypeCode = dictionaryMatch(this.car_type_codeoptions, res.data
  897. .carInfoVo
  898. .carTypeCode)
  899. this.carInfoVo.carKindCode = dictionaryMatch(this.car_kind_codeoptions, res.data
  900. .carInfoVo
  901. .carKindCode)
  902. this.carInfoVo.energyTypeCode = dictionaryMatch(this.energy_type_codeoptions, res
  903. .data
  904. .carInfoVo
  905. .energyTypeCode)
  906. }
  907. },
  908. //右上角分享
  909. share() {
  910. this.shareShow = true;
  911. },
  912. toggleExpand(name) {
  913. this[name] = !this[name];
  914. },
  915. }
  916. }
  917. </script>
  918. <style lang="scss" scoped>
  919. .page {
  920. height: 100%;
  921. background-color: #F8F8F8;
  922. box-sizing: border-box;
  923. }
  924. .content {
  925. padding: 20rpx 30rpx 186rpx;
  926. box-sizing: border-box;
  927. //过户信息
  928. .transfer {
  929. padding: 30rpx;
  930. box-sizing: border-box;
  931. background: #fff;
  932. border-radius: 20rpx;
  933. .item {
  934. width: 50%;
  935. text:first-child {
  936. width: 80%;
  937. font-size: 28rpx;
  938. color: #666;
  939. }
  940. text:last-child {
  941. width: 20%;
  942. font-size: 28rpx;
  943. color: #333;
  944. }
  945. }
  946. .item:nth-child(3) {
  947. width: 100%;
  948. text:first-child {
  949. width: 25%;
  950. font-size: 28rpx;
  951. color: #666;
  952. }
  953. text:last-child {
  954. width: 75%;
  955. font-size: 28rpx;
  956. color: #333;
  957. }
  958. }
  959. .Attachment {
  960. width: 100%;
  961. >view {
  962. position: relative;
  963. width: 50%;
  964. padding: 16rpx 30rpx;
  965. box-sizing: border-box;
  966. background-color: #1F1F1F;
  967. image {
  968. width: 108rpx;
  969. height: 108rpx;
  970. position: absolute;
  971. top: 0;
  972. right: 0;
  973. }
  974. .title {
  975. font-size: 30rpx;
  976. font-weight: 400;
  977. color: #333;
  978. }
  979. .smallText {
  980. font-size: 24rpx;
  981. color: #999;
  982. }
  983. }
  984. >view:first-child {
  985. background: linear-gradient(180deg, #FFF6EB 0%, #FFFCF3 100%);
  986. border-radius: 15rpx;
  987. margin-right: 18rpx;
  988. }
  989. >view:last-child {
  990. background: linear-gradient(180deg, #E7FDF8 0%, #F6FFFD 100%);
  991. border-radius: 15rpx;
  992. }
  993. }
  994. }
  995. //内容区域
  996. .view {
  997. position: relative;
  998. background-color: #fff;
  999. border-radius: 20rpx;
  1000. overflow: hidden;
  1001. margin-top: 20rpx;
  1002. //头部背景
  1003. .header-title {
  1004. padding: 20rpx;
  1005. box-sizing: border-box;
  1006. background: linear-gradient(180deg, #FFFCEA 0%, #FFFFFF 100%);
  1007. border-radius: 20rpx 20rpx 0 0;
  1008. border-top: 1rpx solid #FFE1A4;
  1009. font-size: 32rpx;
  1010. color: #333;
  1011. font-weight: bold;
  1012. }
  1013. .items {
  1014. padding: 0 20rpx 20rpx;
  1015. box-sizing: border-box;
  1016. .item {
  1017. margin-bottom: 30rpx;
  1018. >:first-child {
  1019. font-size: 30rpx;
  1020. color: #666;
  1021. }
  1022. >:last-child {
  1023. font-size: 30rpx;
  1024. color: #333;
  1025. font-weight: bold;
  1026. }
  1027. }
  1028. .table {
  1029. width: 100%;
  1030. border-radius: 4rpx;
  1031. border: 1rpx solid #FFD9D9;
  1032. .header {
  1033. background-color: #FFF8F8;
  1034. border-radius: 4rpx 4rpx 0 0;
  1035. .th {
  1036. padding: 15rpx;
  1037. box-sizing: border-box;
  1038. text-align: center;
  1039. font-size: 28rpx;
  1040. color: #FF5B45;
  1041. flex: 1;
  1042. }
  1043. .th.special {
  1044. flex: 2;
  1045. }
  1046. }
  1047. .tr {
  1048. .td {
  1049. padding: 15rpx;
  1050. box-sizing: border-box;
  1051. text-align: center;
  1052. font-size: 28rpx;
  1053. flex: 1;
  1054. }
  1055. .td.special {
  1056. flex: 2;
  1057. }
  1058. }
  1059. .tr:nth-child(odd) {
  1060. background-color: #FBFBFB;
  1061. }
  1062. }
  1063. }
  1064. }
  1065. }
  1066. .userinfo {
  1067. margin-top: 24rpx;
  1068. .userinfo-header {
  1069. font-weight: bold;
  1070. font-size: 30rpx;
  1071. color: #333;
  1072. .tag {
  1073. width: 6rpx;
  1074. height: 30rpx;
  1075. background: #FDE935;
  1076. border-radius: 0rpx 6rpx 6rpx 0rpx;
  1077. margin-right: 6rpx;
  1078. }
  1079. }
  1080. .content {
  1081. padding: 20rpx 0;
  1082. box-sizing: border-box;
  1083. .item {
  1084. margin-bottom: 30rpx;
  1085. text:first-child {
  1086. font-size: 30rpx;
  1087. color: #666;
  1088. }
  1089. text:last-child {
  1090. font-size: 30rpx;
  1091. color: #333;
  1092. font-weight: bold;
  1093. width: 75%;
  1094. text-align: right;
  1095. }
  1096. }
  1097. }
  1098. }
  1099. //查看更多
  1100. .loadMore {
  1101. position: absolute;
  1102. bottom: 0;
  1103. left: 0;
  1104. right: 0;
  1105. padding: 20rpx;
  1106. box-sizing: border-box;
  1107. background: linear-gradient(0, #fff 0%, rgba(255, 255, 255, 0.9) 100%);
  1108. text {
  1109. font-size: 28rpx;
  1110. color: #999;
  1111. }
  1112. image {
  1113. width: 24rpx;
  1114. height: 24rpx;
  1115. margin-left: 4rpx;
  1116. transition: transform 0.5s;
  1117. /* 添加过渡效果 */
  1118. }
  1119. }
  1120. //车船税
  1121. .vvTax-Tag {
  1122. padding: 4rpx 20rpx;
  1123. box-sizing: border-box;
  1124. background: #FF5B45;
  1125. border-radius: 20rpx 20rpx 20rpx 20rpx;
  1126. font-size: 26rpx;
  1127. color: #fff;
  1128. line-height: 1.2;
  1129. }
  1130. //默认高度
  1131. .collapsed {
  1132. max-height: 516rpx;
  1133. /* 露出部分的高度 */
  1134. }
  1135. // 车船税弹窗
  1136. .vvTaxDetails-cell {
  1137. padding: 40rpx;
  1138. box-sizing: border-box;
  1139. .cell-item {
  1140. font-size: 30rpx;
  1141. color: #333;
  1142. margin-bottom: 30rpx;
  1143. text:last-child {
  1144. font-weight: bold;
  1145. }
  1146. }
  1147. .cell-item:last-child {
  1148. margin-bottom: 0;
  1149. }
  1150. }
  1151. //底部样式
  1152. .footer {
  1153. position: fixed;
  1154. bottom: 0;
  1155. left: 0;
  1156. right: 0;
  1157. padding: 25rpx 30rpx 55rpx;
  1158. box-sizing: border-box;
  1159. background: linear-gradient(0deg, #FFFFFF 0%, rgba(255, 254, 245, 0.7) 100%);
  1160. border-radius: 0rpx 0rpx 0rpx 0rpx;
  1161. backdrop-filter: blur(12rpx);
  1162. .totalPrice {
  1163. text {
  1164. font-size: 28rpx;
  1165. color: #FF540A;
  1166. font-weight: bold;
  1167. }
  1168. text:last-child {
  1169. font-size: 42rpx;
  1170. font-weight: bold;
  1171. }
  1172. }
  1173. .feeEntry {
  1174. font-size: 24rpx;
  1175. color: #FFAC1D;
  1176. }
  1177. .btn {
  1178. background: #FDE935;
  1179. padding: 25rpx 30rpx;
  1180. box-sizing: border-box;
  1181. border-radius: 58rpx 58rpx 58rpx 58rpx;
  1182. font-size: 30rpx;
  1183. color: #1F1F1F;
  1184. font-weight: bold;
  1185. margin: 0 10rpx;
  1186. }
  1187. //操作按钮特殊样式
  1188. .btns {
  1189. background: rgba(253, 233, 53, 0.2);
  1190. border: 1rpx solid #FDE935;
  1191. padding: 22rpx 30rpx;
  1192. }
  1193. }
  1194. .colorBlock {
  1195. width: 54rpx;
  1196. height: 54rpx;
  1197. background: #FDE935;
  1198. border-radius: 10rpx 10rpx 10rpx 10rpx;
  1199. margin-left: 12rpx;
  1200. image {
  1201. width: 34rpx;
  1202. height: 34rpx;
  1203. }
  1204. }
  1205. // 商业险折扣系数样式
  1206. .updateDiscount {
  1207. padding: 40rpx;
  1208. box-sizing: border-box;
  1209. .text {
  1210. font-size: 28rpx;
  1211. color: #666;
  1212. }
  1213. .input {
  1214. font-size: 32rpx;
  1215. color: #333;
  1216. text:last-child {
  1217. color: #999;
  1218. margin-left: 10rpx;
  1219. }
  1220. }
  1221. .btn {}
  1222. }
  1223. .feeEntryClass {
  1224. padding: 0 40rpx 40rpx;
  1225. box-sizing: border-box;
  1226. .data-view {
  1227. padding: 20rpx 0;
  1228. box-sizing: border-box;
  1229. border-bottom: 1rpx solid #eee;
  1230. .title {
  1231. font-size: 30rpx;
  1232. color: #666;
  1233. }
  1234. .discount {
  1235. >view {
  1236. text:first-child {
  1237. font-size: 28rpx;
  1238. color: #999;
  1239. }
  1240. text:last-child {
  1241. font-size: 30rpx;
  1242. color: #333;
  1243. }
  1244. }
  1245. }
  1246. }
  1247. .discountTotal {
  1248. padding: 20rpx 0;
  1249. box-sizing: border-box;
  1250. .name {
  1251. font-size: 30rpx;
  1252. color: #333;
  1253. }
  1254. .sum {
  1255. font-size: 32rpx;
  1256. color: #FF540A;
  1257. font-weight: bold;
  1258. }
  1259. }
  1260. .footer-btn {
  1261. width: 100%;
  1262. padding: 20rpx;
  1263. box-sizing: border-box;
  1264. background: rgba(253, 233, 53, 0.1);
  1265. border-radius: 45rpx 45rpx 45rpx 45rpx;
  1266. border: 1rpx solid #FDE935;
  1267. margin-top: 20rpx;
  1268. }
  1269. }
  1270. .customerRights {
  1271. padding: 20rpx 30rpx;
  1272. box-sizing: border-box;
  1273. background-color: #fff;
  1274. border-radius: 20rpx;
  1275. margin: 20rpx 0;
  1276. .header {
  1277. text {
  1278. font-size: 34rpx;
  1279. color: #333;
  1280. font-weight: bold;
  1281. }
  1282. .btn {
  1283. padding: 8rpx 20rpx;
  1284. box-sizing: border-box;
  1285. font-size: 28rpx;
  1286. color: #1F1F1F;
  1287. background: #FDE935;
  1288. border-radius: 50rpx 50rpx 50rpx 50rpx;
  1289. }
  1290. }
  1291. .customerRights-content {
  1292. font-size: 28rpx;
  1293. color: #666;
  1294. }
  1295. }
  1296. .discountMethod-cell {
  1297. padding: 14rpx 30rpx 44rpx;
  1298. box-sizing: border-box;
  1299. .item {
  1300. padding: 16rpx 0;
  1301. box-sizing: border-box;
  1302. border-bottom: 1rpx solid #eee;
  1303. .title {
  1304. font-size: 32rpx;
  1305. color: #333;
  1306. font-weight: bold;
  1307. }
  1308. text:last-child {
  1309. font-size: 30rpx;
  1310. color: #666;
  1311. .price {
  1312. font-size: 30rpx;
  1313. color: #FF540A;
  1314. }
  1315. }
  1316. }
  1317. }
  1318. </style>