Verifyuntasks.vue 70 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980818283848586878889909192939495969798991001011021031041051061071081091101111121131141151161171181191201211221231241251261271281291301311321331341351361371381391401411421431441451461471481491501511521531541551561571581591601611621631641651661671681691701711721731741751761771781791801811821831841851861871881891901911921931941951961971981992002012022032042052062072082092102112122132142152162172182192202212222232242252262272282292302312322332342352362372382392402412422432442452462472482492502512522532542552562572582592602612622632642652662672682692702712722732742752762772782792802812822832842852862872882892902912922932942952962972982993003013023033043053063073083093103113123133143153163173183193203213223233243253263273283293303313323333343353363373383393403413423433443453463473483493503513523533543553563573583593603613623633643653663673683693703713723733743753763773783793803813823833843853863873883893903913923933943953963973983994004014024034044054064074084094104114124134144154164174184194204214224234244254264274284294304314324334344354364374384394404414424434444454464474484494504514524534544554564574584594604614624634644654664674684694704714724734744754764774784794804814824834844854864874884894904914924934944954964974984995005015025035045055065075085095105115125135145155165175185195205215225235245255265275285295305315325335345355365375385395405415425435445455465475485495505515525535545555565575585595605615625635645655665675685695705715725735745755765775785795805815825835845855865875885895905915925935945955965975985996006016026036046056066076086096106116126136146156166176186196206216226236246256266276286296306316326336346356366376386396406416426436446456466476486496506516526536546556566576586596606616626636646656666676686696706716726736746756766776786796806816826836846856866876886896906916926936946956966976986997007017027037047057067077087097107117127137147157167177187197207217227237247257267277287297307317327337347357367377387397407417427437447457467477487497507517527537547557567577587597607617627637647657667677687697707717727737747757767777787797807817827837847857867877887897907917927937947957967977987998008018028038048058068078088098108118128138148158168178188198208218228238248258268278288298308318328338348358368378388398408418428438448458468478488498508518528538548558568578588598608618628638648658668678688698708718728738748758768778788798808818828838848858868878888898908918928938948958968978988999009019029039049059069079089099109119129139149159169179189199209219229239249259269279289299309319329339349359369379389399409419429439449459469479489499509519529539549559569579589599609619629639649659669679689699709719729739749759769779789799809819829839849859869879889899909919929939949959969979989991000100110021003100410051006100710081009101010111012101310141015101610171018101910201021102210231024102510261027102810291030103110321033103410351036103710381039104010411042104310441045104610471048104910501051105210531054105510561057105810591060106110621063106410651066106710681069107010711072107310741075107610771078107910801081108210831084108510861087108810891090109110921093109410951096109710981099110011011102110311041105110611071108110911101111111211131114111511161117111811191120112111221123112411251126112711281129113011311132113311341135113611371138113911401141114211431144114511461147114811491150115111521153115411551156115711581159116011611162116311641165116611671168116911701171117211731174117511761177117811791180118111821183118411851186118711881189119011911192119311941195119611971198119912001201120212031204120512061207120812091210121112121213121412151216121712181219122012211222122312241225122612271228122912301231123212331234123512361237123812391240124112421243124412451246124712481249125012511252125312541255125612571258125912601261126212631264126512661267126812691270127112721273127412751276127712781279128012811282128312841285128612871288128912901291129212931294129512961297129812991300130113021303130413051306130713081309131013111312131313141315131613171318131913201321132213231324132513261327132813291330133113321333133413351336133713381339134013411342134313441345134613471348134913501351135213531354135513561357135813591360136113621363136413651366136713681369137013711372137313741375137613771378137913801381138213831384138513861387138813891390139113921393139413951396139713981399140014011402140314041405140614071408140914101411141214131414141514161417141814191420142114221423142414251426142714281429143014311432143314341435143614371438143914401441144214431444144514461447144814491450145114521453145414551456145714581459146014611462146314641465146614671468146914701471147214731474147514761477147814791480148114821483148414851486148714881489149014911492149314941495149614971498149915001501150215031504150515061507150815091510151115121513151415151516151715181519152015211522152315241525152615271528152915301531153215331534153515361537153815391540154115421543154415451546154715481549155015511552155315541555155615571558155915601561156215631564156515661567156815691570157115721573157415751576157715781579158015811582158315841585158615871588158915901591159215931594159515961597159815991600160116021603160416051606160716081609161016111612161316141615161616171618161916201621162216231624162516261627162816291630163116321633163416351636163716381639164016411642164316441645164616471648164916501651165216531654165516561657165816591660166116621663166416651666166716681669167016711672167316741675167616771678167916801681168216831684168516861687168816891690169116921693169416951696169716981699170017011702170317041705170617071708170917101711171217131714171517161717171817191720172117221723172417251726172717281729173017311732173317341735173617371738173917401741174217431744174517461747174817491750175117521753175417551756175717581759176017611762176317641765176617671768176917701771177217731774177517761777177817791780178117821783178417851786178717881789179017911792179317941795179617971798179918001801180218031804180518061807180818091810181118121813181418151816181718181819182018211822182318241825182618271828182918301831183218331834183518361837183818391840184118421843184418451846184718481849185018511852185318541855185618571858185918601861186218631864186518661867186818691870187118721873187418751876187718781879188018811882188318841885188618871888188918901891189218931894189518961897189818991900190119021903190419051906190719081909191019111912191319141915191619171918191919201921192219231924192519261927192819291930193119321933193419351936193719381939194019411942194319441945194619471948194919501951195219531954195519561957195819591960196119621963196419651966196719681969197019711972197319741975197619771978197919801981198219831984198519861987198819891990199119921993199419951996199719981999200020012002200320042005200620072008200920102011201220132014201520162017201820192020202120222023202420252026202720282029203020312032203320342035203620372038203920402041204220432044204520462047204820492050205120522053205420552056205720582059206020612062206320642065206620672068206920702071207220732074207520762077207820792080208120822083208420852086208720882089209020912092209320942095209620972098209921002101210221032104210521062107210821092110211121122113211421152116211721182119212021212122212321242125212621272128212921302131213221332134213521362137213821392140214121422143214421452146214721482149215021512152215321542155215621572158215921602161216221632164216521662167216821692170217121722173217421752176217721782179218021812182218321842185218621872188218921902191219221932194219521962197219821992200220122022203220422052206220722082209221022112212221322142215221622172218221922202221222222232224222522262227222822292230223122322233223422352236223722382239224022412242
  1. <template>
  2. <div class="page">
  3. <retrievalForm :fields="retrievalFields" @submit="handleFormSubmit" @toggleCollapse="toggleCollapse"
  4. @areaSelectChange="areaSelectChange"></retrievalForm>
  5. <el-table size="small" :data="pageResult" height="590" border v-loading="loading" highlight-current-row
  6. @expand-change="handleRowChange" ref="expandTable" :row-class-name="tableRowColor"
  7. :header-cell-style="{ background: '#F2F7FC', fontWeight: '700', color: '#606266' }">
  8. <el-table-column prop="subOrderId" label="订单号" align="center"></el-table-column>
  9. <el-table-column prop="username" label="业务员工号" align="center">
  10. <template slot-scope="scope">
  11. <span>{{ scope.row.userid }}</span>
  12. </template>
  13. </el-table-column>
  14. <el-table-column prop="username" label="业务员名称" align="center">
  15. <template slot-scope="scope">
  16. <span>{{ scope.row.username }}</span>
  17. </template>
  18. </el-table-column>
  19. <el-table-column prop="managementSource" label="业务来源" align="center">
  20. <template slot-scope="scope">
  21. <el-tag v-if="scope.row.managementSource == '渠道'">渠道</el-tag>
  22. <el-tag v-if="scope.row.managementSource == '个代'" type="success">个代</el-tag>
  23. <el-tag v-if="scope.row.managementSource == '电销'" type="warning">电销</el-tag>
  24. </template>
  25. </el-table-column>
  26. <el-table-column prop="agreementName" label="协议" align="center" width="300">
  27. <template slot-scope="scope">
  28. <span>{{ scope.row.agreementName }} - {{ scope.row.businessDescription }} - {{ scope.row.jobDescription }}</span>
  29. </template>
  30. </el-table-column>
  31. <el-table-column prop="insCompany" label="承保公司" align="center">
  32. <template slot-scope="scope">
  33. <span>{{ scope.row.insCompany ? scope.row.insCompany : '--' }}</span>
  34. </template>
  35. </el-table-column>
  36. <el-table-column prop="dockingPerson" label="对接人" align="center"></el-table-column>
  37. <el-table-column prop="entryStatus" label="录入来源" align="center" width="100">
  38. <template slot-scope="scope">
  39. <el-tag size="mini" v-if="scope.row.entryStatus == '1'" effect="dark">车险录入</el-tag>
  40. <el-tag size="mini" v-if="scope.row.entryStatus == '2'" effect="dark" type="success">代客录单</el-tag>
  41. <el-tag size="mini" v-if="scope.row.entryStatus == '3'" effect="dark" type="warning">外部订单</el-tag>
  42. </template>
  43. </el-table-column>
  44. <el-table-column prop="isExternal" label="外部订单" align="center">
  45. <template slot-scope="scope">
  46. <span>{{ scope.row.isExternal == '1' ? '是' : '否' }}</span>
  47. </template>
  48. </el-table-column>
  49. <el-table-column prop="problemOrder" label="疑问订单" align="center">
  50. <template slot-scope="scope">
  51. <span>{{ scope.row.problemOrder == '1' ? '是' : '否' }}</span>
  52. </template>
  53. </el-table-column>
  54. <el-table-column prop="insCompany" label="合作公司" align="center">
  55. <template slot-scope="scope">
  56. <span>{{ scope.row.partnerCompaniesName ? scope.row.partnerCompaniesName : '--' }}</span>
  57. </template>
  58. </el-table-column>
  59. <el-table-column prop="licenseno" label="车牌号" align="center"></el-table-column>
  60. <el-table-column prop="insuredname" label="被保险人" align="center"></el-table-column>
  61. <el-table-column prop="product" label="投保险种" align="center"></el-table-column>
  62. <el-table-column prop="operatorName" label="录入人" align="center"></el-table-column>
  63. <el-table-column prop="auditStatus" label="状态" align="center">
  64. <template slot-scope="scope">
  65. <el-tag v-if="scope.row.auditStatus == '0'" type="success" size="small">未审核</el-tag>
  66. <el-tag v-if="scope.row.auditStatus == '1'" type="warning" size="small">审核通过</el-tag>
  67. <el-tag v-if="scope.row.auditStatus == '2'" type="danger" size="small">审核驳回</el-tag>
  68. </template>
  69. </el-table-column>
  70. <el-table-column prop="createtime" label="录单日期" align="center"></el-table-column>
  71. <el-table-column prop="signingTime" label="签单时间" align="center"></el-table-column>
  72. <el-table-column prop="payDate" label="支付时间" align="center"></el-table-column>
  73. <el-table-column label="操作" align="center" min-width="170">
  74. <template slot-scope="scope">
  75. <kt-button label="审核" type="text" perms="carInsurance:expenseVerification:pendingReview:review"
  76. @click="OrderDetails(scope.row)" />
  77. <!-- <kt-button label="轨迹" type="text" perms="carInsurance:expenseVerification:pendingReview:trajectory"
  78. @click="trajectory(scope.row)" /> -->
  79. <kt-button label="轨迹" type="text" @click="trajectory(scope.row)" />
  80. <kt-button :label="scope.row.problemOrder == '0' ? '疑问订单' : '取消疑问订单'" type="text"
  81. @click="doubtfulOrders(scope.row)" />
  82. </template>
  83. </el-table-column>
  84. </el-table>
  85. <!-- 分页功能 -->
  86. <div class="block">
  87. <el-pagination @size-change="applyhandleSizeChange" @current-change="applyhandleCurrentChange"
  88. :current-page="pageNum" :page-size="pageSize" :page-sizes="[20, 30, 50, 100]"
  89. layout="total, sizes, prev, pager, next, jumper" :total="totalSize"></el-pagination>
  90. </div>
  91. <!-- 车辆报价新页面 -->
  92. <detailsDialog ref="detailsDialog" :orderInfo="orderInfo" :feeOrderNewVoList="feeOrderNewVoList"
  93. :isrejection="isrejection" @updatedCost="updatedCost" @adusitFUn="adusitFUn" @rejectionFUn="rejectionFUn">
  94. </detailsDialog>
  95. <el-dialog :visible.sync="ddgjdialogVisible" width="430px">
  96. <div slot="title" class="dialog-title">
  97. <span>订单轨迹</span>
  98. </div>
  99. <div style="height: 300px; overflow-y: auto">
  100. <el-steps direction="vertical" :active="trajectoryTable.length - 1" finish-status="success">
  101. <el-step :title="item.desc" :key="item.id" v-for="item in trajectoryTable">
  102. <template slot="description">
  103. <div>保险公司:{{ item.insCompany }} <span style="margin-left:15px">创建用户:{{ item.operator }}</span></div>
  104. <div>创建时间:{{ item.operatorTime }}</div>
  105. <div v-if="item.remark">状态更新:{{ item.remark }}</div>
  106. </template>
  107. </el-step>
  108. </el-steps>
  109. </div>
  110. </el-dialog>
  111. </div>
  112. </template>
  113. <script>
  114. import retrievalForm from "@/components/Form/retrievalForm.vue";
  115. import Cookies from "js-cookie";
  116. import KtButton from "@/views/Core/KtButton";//按钮权限组件
  117. import detailsDialog from "@/views/Core/components/detailsDialogPro.vue";
  118. export default {
  119. components: {
  120. KtButton,
  121. detailsDialog,
  122. retrievalForm
  123. },
  124. data() {
  125. return {
  126. isrejection: false,
  127. ddgjdialogVisible: false,
  128. trajectoryTable: [],
  129. feeOrderNewVoList: {},
  130. isAuditing: {},
  131. oldFeeInfo: [],//原始跟单费用比例
  132. adjustFeeDescInfo: {},//调整费用时使用对象
  133. adjustFeeFlag: false,
  134. queryOrders: "",
  135. value2: "",
  136. optionsStatus: [],
  137. quotedetailsdialogVisible: false,
  138. loading: false,
  139. pageNum: 1,//页数
  140. pageSize: 20,//条数
  141. totalSize: null,//总数
  142. peopleid: "",//工号
  143. pageResult: [],//列表
  144. pageRequest: {
  145. pageNum: 1,
  146. pageSize: 20,
  147. orderStatus: 0,
  148. userId: "",
  149. },
  150. retrievalFields: [
  151. {
  152. name: 'whole',
  153. label: '总机构',
  154. type: 'select',
  155. options: []
  156. },
  157. {
  158. name: 'provinceId',
  159. label: '省机构名称',
  160. type: 'select',
  161. options: []
  162. },
  163. {
  164. name: 'cityId',
  165. label: '市机构名称',
  166. type: 'select',
  167. options: []
  168. },
  169. {
  170. name: 'countyId',
  171. label: '区机构名称',
  172. type: 'select',
  173. options: []
  174. },
  175. {
  176. name: 'houseId',
  177. label: '门店名称',
  178. type: 'select',
  179. options: []
  180. },
  181. // {
  182. // name: 'taskNo',
  183. // label: '任务池号',
  184. // type: 'input',
  185. // },
  186. {
  187. name: 'orderNo',
  188. label: '订单号',
  189. type: 'input',
  190. },
  191. {
  192. name: 'managementSource',
  193. label: '业务来源',
  194. type: 'select',
  195. options: [],
  196. optionsIabel: "dictTag",
  197. optionsValue: "dictValue",
  198. },
  199. {
  200. name: 'companyId',
  201. label: '保险公司',
  202. type: 'select',
  203. options: []
  204. },
  205. {
  206. name: 'insuredName',
  207. label: '被保险人',
  208. type: 'input',
  209. Retained: true,
  210. },
  211. {
  212. name: 'licenseNo',
  213. label: '车牌号',
  214. type: 'input',
  215. Retained: true,
  216. },
  217. {
  218. name: 'frameNo',
  219. label: '车架号',
  220. type: 'input',
  221. Retained: true,
  222. },
  223. {
  224. name: 'engineNo',
  225. label: '发动机号',
  226. type: 'input',
  227. Retained: true,
  228. },
  229. {
  230. name: 'riskCode',
  231. label: '投保险种',
  232. type: 'select',
  233. Retained: true,
  234. options: [],
  235. optionsIabel: "dictTag",
  236. optionsValue: "dictTag",
  237. },
  238. {
  239. name: 'operatorId',
  240. label: '代理人工号',
  241. type: 'input',
  242. Retained: true,
  243. },
  244. {
  245. name: 'operatorName',
  246. label: '代理人姓名',
  247. type: 'input',
  248. Retained: true,
  249. },
  250. {
  251. name: 'auditId',
  252. label: '受理人工号',
  253. type: 'input',
  254. Retained: true,
  255. },
  256. {
  257. name: 'agreeId',
  258. label: '协议选择',
  259. type: 'select',
  260. options: [],
  261. optionsIabel: "agreementName",
  262. },
  263. {
  264. name: 'isExternal',
  265. label: '外部订单',
  266. type: 'select',
  267. optionsIabel: "label",
  268. optionsValue: "value",
  269. options: [
  270. {
  271. label: '是',
  272. value: '1'
  273. }, {
  274. label: '否',
  275. value: '0'
  276. },
  277. ],
  278. },
  279. {
  280. name: 'problemOrder',
  281. label: '疑问订单',
  282. type: 'select',
  283. optionsIabel: "label",
  284. optionsValue: "value",
  285. options: [
  286. {
  287. label: '是',
  288. value: '1'
  289. }, {
  290. label: '否',
  291. value: '0'
  292. },
  293. ],
  294. },
  295. {
  296. name: ["quoteStartDateStr", "quoteEndDateStr"],
  297. label: '报价时间',
  298. type: 'date',
  299. list: 'quoteList'
  300. },
  301. {
  302. name: ["attachStartDateStr", "attachEndDateStr"],
  303. label: '起保时间',
  304. type: 'date',
  305. list: 'attachList'
  306. },
  307. {
  308. name: ["signStartDateStr", "signEndDateStr"],
  309. label: '签单时间',
  310. type: 'date',
  311. list: 'signList'
  312. },
  313. {
  314. name: ["payStartDateStr", "payEndDateStr"],
  315. label: '支付时间',
  316. type: 'date',
  317. list: 'payList'
  318. },
  319. {
  320. name: 'jqPolicyNo',
  321. label: '交强保单号',
  322. type: 'input',
  323. Retained: true,
  324. },
  325. {
  326. name: 'syPolicyNo',
  327. label: '商业保单号',
  328. type: 'input',
  329. Retained: true,
  330. },
  331. {
  332. name: 'noPolicyNo',
  333. label: '非车保单号',
  334. type: 'input',
  335. Retained: true,
  336. },
  337. ],
  338. orderInfo: {
  339. //选中的订单
  340. ownerinfo: {},
  341. carinfo: {},
  342. applyinfo: {},
  343. insureinfo: {},
  344. kindinfo: [],
  345. riskinfo: [],
  346. ownerinfo: {},
  347. extendInfo: {}
  348. },
  349. feeDetailInfo: [],//费用明细信息
  350. inscompany: "", //保险公司名称
  351. licenseNo: "", //车牌号
  352. sumpremium: "", //保费合计
  353. jqpremium: "",//交强
  354. sypremium: "",//商业
  355. taxamount: "",//车船税
  356. jypremium: "",//驾意险
  357. jqstartdate: "",//交强时间
  358. systartdate: "",//商业时间
  359. mobile: "",//投保人手机号
  360. qrcode: null,
  361. userid: "",
  362. institutionOptions: [],
  363. width: document.documentElement.clientWidth,
  364. insAreaCompanyList: [],//子订单list
  365. companyList: [], //保险公司
  366. oldVersionHistory: [],
  367. natureOfVehicleUseoptions: [],
  368. businessVehicleUseoptions: [],
  369. outOfBusinessVehicleUseoptions: [],
  370. vehicleTypeoptions: [],
  371. trafficManagementVehicleTypeoptions: [],
  372. energyTypeoptions: [],
  373. carImageList: [], //车辆影像
  374. ownerImageList: [], //车主影像
  375. policyImageList: [], //投保人影像
  376. insuredImageList: [], //被保人影像
  377. carCheckImageList: [], //验车照影像
  378. oldfileList: [], //电子保单数据
  379. insOrderNo: '', // 子订单号码
  380. }
  381. },
  382. created() {
  383. this.pageRequest.userId = Cookies.get("user");
  384. this.areaqueryList(0, 9, "whole");
  385. this.CompanyList();
  386. this.agrmentlist();
  387. this.$api.insCompany.dicType('productsType').then(res => {
  388. if (res.code == 200) {
  389. this.selectDataMatching(this.retrievalFields, 'riskCode', res.data.ddList);
  390. }
  391. });
  392. this.$api.insCompany.dicType('organizationSource').then(res => {
  393. if (res.code == 200) {
  394. this.selectDataMatching(this.retrievalFields, 'managementSource', res.data.ddList);
  395. }
  396. });
  397. this.getDicType("natureOfVehicleUse");//车辆使用性质
  398. this.getDicType("businessVehicleUse"); //(车辆用途)营业
  399. this.getDicType("outOfBusinessVehicleUse"); //(车辆用途)非营业
  400. this.getDicType("vehicleType"); //车辆种类
  401. this.getDicType("trafficManagementVehicleType"); //车辆类型
  402. this.getDicType("energyType"); //能源种类
  403. },
  404. mounted() {
  405. window.addEventListener('resize', this.getDimensions);
  406. },
  407. unmounted() {
  408. window.removeEventListener('resize', this.getDimensions);
  409. },
  410. methods: {
  411. auditstatusCap(val) {
  412. if (val == "0") {
  413. return "未审核";
  414. }
  415. if (val == "1") {
  416. return "审核通过";
  417. }
  418. if (val == "2") {
  419. return "审核驳回";
  420. }
  421. if (val == "3") {
  422. return "已承保";
  423. }
  424. },
  425. trajectory(row) {
  426. // let a='1797905916021248000'
  427. this.$api.task.getFeeAuditHistory(row.orderno).then((res) => {
  428. if (res.code == 200 && res.data.length > 0) {
  429. this.trajectoryTable = res.data
  430. this.ddgjdialogVisible = true
  431. }
  432. else {
  433. this.$message.error('暂无数据!')
  434. }
  435. });
  436. },
  437. doubtfulOrders(row) {
  438. this.$api.task.markProblemOrder({ subOrder: row.orderno, problemOrder: row.problemOrder == '0' ? '1' : '0' }).then((res) => {
  439. if (res.code == 200) {
  440. this.$message({
  441. message: res.msg || '操作成功',
  442. type: 'success'
  443. });
  444. this.findPage();
  445. }
  446. else {
  447. this.$message.error(res.msg)
  448. }
  449. });
  450. },
  451. //获取机构数据
  452. areaqueryList(level, parentId, filed) {
  453. this.$api.task.queryListByParentId(level, parentId).then((res) => {
  454. this.selectDataMatching(this.retrievalFields, filed, res.data);
  455. });
  456. },
  457. CompanyList() {
  458. this.$api.letter.gainTopList().then((res) => {
  459. this.selectDataMatching(this.retrievalFields, 'companyId', res.data);
  460. })
  461. },
  462. agrmentlist() {
  463. this.$api.task.findPtlAgreementList().then((res) => {
  464. this.selectDataMatching(this.retrievalFields, 'agreeId', res.data);
  465. });
  466. },
  467. getDicType(type) {
  468. this.$api.insCompany.dicType(type).then(res => {
  469. if (res.code == 200) {
  470. this[type + 'options'] = res.data.ddList;
  471. }
  472. })
  473. },
  474. //下拉数据匹配
  475. selectDataMatching(files, name, data) {
  476. files.forEach(filed => {
  477. if (filed.name == name) {
  478. filed.options = data;
  479. }
  480. })
  481. },
  482. areaSelectChange(obj) {
  483. switch (obj.filed) {
  484. case "whole":
  485. this.areaqueryList(1, obj.id, "provinceId");
  486. break;
  487. case "provinceId":
  488. this.areaqueryList(2, obj.id, "cityId");
  489. break;
  490. case "cityId":
  491. this.areaqueryList(3, obj.id, "countyId");
  492. break;
  493. case "countyId":
  494. this.areaqueryList(4, obj.id, "houseId");
  495. break;
  496. default:
  497. }
  498. },
  499. handleFormSubmit(data) {
  500. this.pageRequest.pageNum = 1;
  501. this.pageRequest.pageSize = 20;
  502. let obj = Object.assign(this.pageRequest, data)
  503. this.pageRequest = obj;
  504. this.findPage();
  505. },
  506. toggleCollapse(data) {
  507. this.retrievalFields.map(val => {
  508. if (val.Retained != null) val.Retained = data;
  509. return val;
  510. })
  511. },
  512. updatedCost(data) {
  513. let list = JSON.parse(JSON.stringify(data));
  514. console.log(list)
  515. const exportFee = [];
  516. const entranceFee = [];
  517. list.feeOrder.forEach((item, index) => {
  518. if (index < 3) entranceFee.push(item);
  519. else exportFee.push(item);
  520. });
  521. let params = {
  522. feeId: this.oldVersionHistory.feeId,
  523. feeOrderNewVoOld: this.oldVersionHistory,
  524. feeOrderNewVoNew: {
  525. deptManagerFee: list.deptManagerFee,
  526. entranceFee: entranceFee,
  527. exportFee: exportFee,
  528. }
  529. }
  530. this.$api.task.costsadjust(params).then((res) => {
  531. if (res.code == '200') {
  532. let data = res.data;
  533. let list = [];
  534. data.exportFee.map((val, index) => {
  535. val.type = "出口费用"
  536. return val;
  537. })
  538. data.entranceFee.map((val, index) => {
  539. val.type = "入口费用"
  540. return val;
  541. })
  542. console.log(data)
  543. this.feeOrderNewVoList = {
  544. deptManagerFee: data.deptManagerFee,
  545. list: [...data.entranceFee, ...data.exportFee],
  546. retailFee: data.retailFee
  547. }
  548. this.$message({
  549. type: 'success',
  550. message: res.msg,
  551. });
  552. } else {
  553. this.$message({
  554. type: 'error',
  555. message: res.msg,
  556. });
  557. }
  558. });
  559. },
  560. closeDialog() {
  561. this.adjustFeeFlag = false;
  562. },
  563. // 审核驳回
  564. rejectionFUn() {
  565. this.$prompt('输入驳回原因', '提示', {
  566. confirmButtonText: '确定',
  567. cancelButtonText: '取消',
  568. inputPattern: /^.+$/,
  569. distinguishCancelAndClose: true,
  570. inputErrorMessage: '输入驳回原因!'
  571. }).then(({ value }) => {
  572. let subParam = {
  573. orderNo: this.orderInfo.orderno,
  574. jqCostsProportionStr: this.adjustFeeDescInfo.jqAllFeeRate,
  575. syCostsProportionStr: this.adjustFeeDescInfo.syAllFeeRate,
  576. auditStatus: '2',
  577. updateFlag: this.adjustFeeFlag ? "1" : "0",
  578. rejectinfo: value
  579. }
  580. this.$api.task
  581. .auditFee(subParam)
  582. .then(res => {
  583. if (res.code == 200) {
  584. this.findPage()
  585. this.$message({
  586. message: '操作成功' || res.msg,
  587. type: 'success'
  588. });
  589. this.$refs.detailsDialog.setBackupVisible(false);
  590. }
  591. else {
  592. this.$message.error(res.msg)
  593. }
  594. })
  595. })
  596. },
  597. //审核通过
  598. adusitFUn() {
  599. this.$confirm('是否确认审核?', '提示', {
  600. confirmButtonText: '确定',
  601. cancelButtonText: '取消',
  602. type: 'warning'
  603. }).then(() => {
  604. const loading = this.$loading({
  605. lock: true,
  606. text: '数据加载中,请稍等',
  607. spinner: 'el-icon-loading',
  608. background: 'rgba(0, 0, 0, 0.7)'
  609. });
  610. let subParam = {
  611. orderNo: this.orderInfo.orderno,
  612. insOrderNo: this.orderInfo.insOrderNo,
  613. jqCostsProportionStr: this.adjustFeeDescInfo.jqAllFeeRate,
  614. syCostsProportionStr: this.adjustFeeDescInfo.syAllFeeRate,
  615. auditStatus: '1',
  616. updateFlag: this.adjustFeeFlag ? "1" : "0",
  617. insOrderNo: this.insOrderNo
  618. }
  619. this.$api.task.auditFee(subParam).then((res) => {
  620. if (res.code == 200) {
  621. loading.close();
  622. this.$message({
  623. type: 'success',
  624. message: "审核通过",
  625. });
  626. this.findPage();
  627. // this.quotedetailsdialogVisible = false;
  628. this.$refs.detailsDialog.setBackupVisible(false);
  629. } else {
  630. loading.close();
  631. this.$message.error(res.msg)
  632. }
  633. })
  634. }).catch(() => {
  635. });
  636. },
  637. toChinesNum(num) {
  638. let changeNum = [
  639. "零", "1", "2", "3", "4", "5", "6", "7", "8", "9"
  640. ];
  641. let unit = ["", "0", "00", "000", "0000"];
  642. num = parseInt(num);
  643. let getWan = temp => {
  644. let strArr = temp
  645. .toString()
  646. .split("")
  647. .reverse();
  648. let newNum = "";
  649. let newArr = [];
  650. strArr.forEach((item, index) => {
  651. newArr.unshift(
  652. item === "0" ? changeNum[item] : changeNum[item] + unit[index]
  653. );
  654. });
  655. let numArr = [];
  656. newArr.forEach((m, n) => {
  657. if (m !== "零") numArr.push(n);
  658. });
  659. if (newArr.length > 1) {
  660. newArr.forEach((m, n) => {
  661. if (newArr[newArr.length - 1] === "零") {
  662. if (n <= numArr[numArr.length - 1]) {
  663. newNum += m;
  664. }
  665. } else {
  666. newNum += m;
  667. }
  668. });
  669. } else {
  670. newNum = newArr[0];
  671. }
  672. return newNum;
  673. };
  674. let overWan = Math.floor(num / 10000);
  675. let noWan = num % 10000;
  676. if (noWan.toString().length < 4) {
  677. noWan = "0" + noWan;
  678. }
  679. return overWan ? getWan(overWan) + "万" + getWan(noWan) : getWan(num);
  680. },
  681. //联级选择器触发事件
  682. handleChange(val) {
  683. if (val.length !== 0) {
  684. this.pageRequest.deptId = val.at(-1);
  685. }
  686. else {
  687. this.pageRequest.deptId = ''
  688. }
  689. },
  690. getDimensions() {
  691. this.width = document.documentElement.clientWidth - 350 + 'px';
  692. },
  693. //使用性质
  694. natureOfVehicleUseCap(ele) {
  695. if (this.natureOfVehicleUseoptions.find(item => item.dictValue == ele)) {
  696. return this.natureOfVehicleUseoptions.find((item) => {
  697. return item.dictValue === ele;
  698. }).dictTag;
  699. }
  700. else {
  701. return ''
  702. }
  703. },
  704. //车辆类型
  705. trafficManagementVehicleTypeCap(ele) {
  706. if (this.trafficManagementVehicleTypeoptions.find(item => item.dictValue == ele)) {
  707. return this.trafficManagementVehicleTypeoptions.find((item) => {
  708. return item.dictValue === ele;
  709. }).dictTag;
  710. }
  711. else {
  712. return ''
  713. }
  714. },
  715. //车辆种类
  716. vehicleTypeCap(ele) {
  717. if (this.vehicleTypeoptions.find(item => item.dictValue == ele)) {
  718. return this.vehicleTypeoptions.find((item) => {
  719. return item.dictValue === ele;
  720. }).dictTag;
  721. }
  722. else {
  723. return ''
  724. }
  725. },
  726. //能源种类
  727. energyTypeCap(ele) {
  728. if (this.energyTypeoptions.find(item => item.dictValue == ele)) {
  729. return this.energyTypeoptions.find((item) => {
  730. return item.dictValue === ele;
  731. }).dictTag;
  732. }
  733. else {
  734. return ''
  735. }
  736. },
  737. //车辆用途
  738. outOfBusinessVehicleUseCap(type, ele) {
  739. switch (type) {
  740. case '非营业':
  741. if (this.outOfBusinessVehicleUseoptions.find(item => item.dictValue == ele)) {
  742. return this.outOfBusinessVehicleUseoptions.find((item) => {
  743. return item.dictValue === ele;
  744. }).dictTag;
  745. }
  746. else {
  747. return ''
  748. }
  749. case '营业':
  750. if (this.businessVehicleUseoptions.find(item => item.dictValue == ele)) {
  751. return this.businessVehicleUseoptions.find((item) => {
  752. return item.dictValue === ele;
  753. }).dictTag;
  754. }
  755. else {
  756. return ''
  757. }
  758. default:
  759. }
  760. },
  761. tableRowClassName(row) {
  762. if (row.row.problemOrder === 1) {
  763. return "flagRow";
  764. }
  765. else {
  766. return ''
  767. }
  768. },
  769. //应用详情
  770. OrderDetails(dy) {
  771. console.log(dy)
  772. if (dy.isExternal == 1) {
  773. this.isrejection = true
  774. }
  775. else {
  776. this.isrejection = false
  777. }
  778. this.carImageList = [];
  779. this.ownerImageList = []; //车主影像
  780. this.policyImageList = []; //投保人影像
  781. this.insuredImageList = []; //被保人影像
  782. this.carCheckImageList = []; //验车照影像
  783. let params = {
  784. orderNo: dy.orderno,
  785. }
  786. this.insOrderNo = dy.orderno
  787. this.$api.task.feeDetail(params).then((res) => {
  788. if (res.code == 200) {
  789. res.data.kindinfo.map((ele, index) => {
  790. switch (ele.kindCode) {
  791. case "A":
  792. ele.amount = "投保";
  793. break;
  794. case "D4":
  795. case "SY_FJ_YBW2":
  796. ele.unitAmount = this.toChinesNum(ele.unitAmount);
  797. break;
  798. case "MJ1":
  799. case "MJ2":
  800. case "MJ3":
  801. case "MJ4":
  802. ele.deductibleRate = ele.deductibleRate + "%";
  803. break;
  804. default:
  805. ele.amount = this.toChinesNum(ele.amount);
  806. }
  807. return ele;
  808. });
  809. // 获取影像
  810. this.$api.letter.findByQuoteNo(dy.quoteno).then((resImage) => {
  811. Object.keys(resImage.data).forEach((keys) => {
  812. if (resImage.data[keys]) {
  813. resImage.data[keys].url = resImage.data[keys].url
  814. ? process.env.BASE_URL + resImage.data[keys].url
  815. : null;
  816. switch (keys) {
  817. case "C01":
  818. case "D01":
  819. resImage.data[keys].url
  820. ? this.carImageList.push(resImage.data[keys].url)
  821. : "";
  822. break;
  823. case "C02":
  824. case "D02":
  825. resImage.data[keys].url
  826. ? this.ownerImageList.push(resImage.data[keys].url)
  827. : "";
  828. break;
  829. case "C03":
  830. case "D03":
  831. resImage.data[keys].url
  832. ? this.policyImageList.push(resImage.data[keys].url)
  833. : "";
  834. break;
  835. case "C04":
  836. case "D04":
  837. resImage.data[keys].url
  838. ? this.insuredImageList.push(resImage.data[keys].url)
  839. : "";
  840. break;
  841. case "XC00":
  842. case "GC00":
  843. case "GX00":
  844. resImage.data[keys].url
  845. ? this.carCheckImageList.push(resImage.data[keys].url)
  846. : "";
  847. break;
  848. default:
  849. break;
  850. }
  851. }
  852. });
  853. let obj = {
  854. carImageList: this.carImageList,
  855. ownerImageList: this.ownerImageList,
  856. policyImageList: this.policyImageList,
  857. insuredImageList: this.insuredImageList,
  858. carCheckImageList: this.carCheckImageList
  859. }
  860. this.$refs.detailsDialog.imageFun(obj);
  861. });
  862. if (res.data.feeOrderNewVo && res.data.feeOrderNewVo.exportFee && res.data.feeOrderNewVo.entranceFee) {
  863. let data = JSON.parse(JSON.stringify(res.data.feeOrderNewVo))
  864. this.oldVersionHistory = data;
  865. data.exportFee.map((val, index) => {
  866. val.type = "出口费用"
  867. return val;
  868. })
  869. data.entranceFee.map((val, index) => {
  870. val.type = "入口费用"
  871. return val;
  872. })
  873. this.feeOrderNewVoList = {
  874. deptManagerFee: data.deptManagerFee,
  875. list: [...data.entranceFee, ...data.exportFee],
  876. retailFee: data.retailFee
  877. }
  878. }
  879. res.data.carinfo.carnature = this.natureOfVehicleUseCap(res.data.carinfo.carnature)
  880. res.data.carinfo.cartype = this.trafficManagementVehicleTypeCap(res.data.carinfo.cartype)
  881. res.data.carinfo.cimodelclass = this.vehicleTypeCap(res.data.carinfo.cimodelclass)
  882. res.data.carinfo.energyType = this.energyTypeCap(res.data.carinfo.energyType)
  883. res.data.carinfo.vehicleUse = this.outOfBusinessVehicleUseCap(res.data.carinfo.carnature, res.data.carinfo.vehicleUse)
  884. res.data.source = dy.managementSource;
  885. this.orderInfo = res.data;
  886. this.oldfileList = [];
  887. let businessList = []
  888. let accidentList = []
  889. if (res.data.orderstatus == "3") {
  890. if (res.data.isExternal == 1) {
  891. this.$api.letter
  892. .getPolicyPrintexternalOrder(res.data.id).then(res1 => {
  893. if (res1.code == 200) {
  894. if (res1.data.jqPolicy) {
  895. this.oldfileList.push({
  896. fileTitle: "交强电子保单",
  897. filename: this.orderInfo.jqpolicyno,
  898. fileurl: res1.data.jqPolicy
  899. });
  900. }
  901. if (res1.data.jqSign) {
  902. this.oldfileList.push({
  903. fileTitle: "交强电子标志",
  904. filename: this.orderInfo.jqpolicyno,
  905. fileurl: res1.data.jqSign
  906. });
  907. }
  908. if (res1.data.syPolicy) {
  909. accidentList.push({
  910. fileTitle: "商业电子保单",
  911. filename: this.orderInfo.sypolicyno,
  912. fileurl: res1.data.syPolicy
  913. });
  914. }
  915. if (res1.data.noPolicy) {
  916. accidentList.push({
  917. fileTitle: "驾意险保单",
  918. filename: "驾意险保单",
  919. fileurl: res1.data.noPolicy
  920. });
  921. }
  922. }
  923. else {
  924. this.$message.error(res1.msg)
  925. }
  926. })
  927. }
  928. else {
  929. switch (res.data.inscompany) {
  930. case "永安财险":
  931. if (this.orderInfo.jqpolicyno) {
  932. this.$api.letter
  933. .getPolicyPrint({
  934. companyId: res.data.id,
  935. policytype: "jq",
  936. })
  937. .then((res) => {
  938. //交强保单
  939. if (res.data) {
  940. let result = res.data.replace(/[\r\n]/g, "");
  941. let pdfBase64 = `data:application/pdf;base64,${result}`;
  942. base64ToPath(pdfBase64).then((path) => {
  943. if (path) {
  944. this.oldfileList.push({
  945. fileTitle: "交强电子保单",
  946. filename: this.orderInfo.jqpolicyno,
  947. fileurl: path,
  948. });
  949. }
  950. });
  951. }
  952. });
  953. this.$api.letter
  954. .getPolicyPrint2({
  955. companyId: res.data.id,
  956. policytype: "jq",
  957. })
  958. .then((res) => {
  959. //交强保单
  960. if (res.data) {
  961. let result = res.data.replace(/[\r\n]/g, "");
  962. let pdfBase64 = `data:application/pdf;base64,${result}`;
  963. base64ToPath(pdfBase64).then((path) => {
  964. if (path) {
  965. this.oldfileList.push({
  966. fileTitle: "交强电子标志",
  967. filename: this.orderInfo.jqpolicyno,
  968. fileurl: path,
  969. });
  970. }
  971. });
  972. }
  973. });
  974. }
  975. if (this.orderInfo.sypolicyno) {
  976. this.$api.letter
  977. .getPolicyPrint({
  978. companyId: res.data.id,
  979. policytype: "sy",
  980. })
  981. .then((res) => {
  982. //商业保单
  983. if (res.data) {
  984. let result = res.data.replace(/[\r\n]/g, "");
  985. let pdfBase64 = `data:application/pdf;base64,${result}`;
  986. base64ToPath(pdfBase64).then((path) => {
  987. if (path) {
  988. businessList.push({
  989. fileTitle: "商业电子保单",
  990. filename: this.orderInfo.sypolicyno,
  991. fileurl: path,
  992. });
  993. }
  994. });
  995. }
  996. });
  997. }
  998. break;
  999. case "华泰财险":
  1000. switch (res.data.apiType) {
  1001. case 1:
  1002. if (this.orderInfo.jqpolicyno) {
  1003. this.$api.letter
  1004. .HuataigetPolicyPrint({
  1005. companyId: res.data.id,
  1006. riskCode: "0507",
  1007. type: "2", //2:保单
  1008. })
  1009. .then((res) => {
  1010. if (res.data) {
  1011. if (res.data.jqxPolicyUrl) {
  1012. this.oldfileList.push({
  1013. fileTitle: "交强电子保单",
  1014. filename: this.orderInfo.jqpolicyno,
  1015. fileurl: res.data.jqxPolicyUrl,
  1016. });
  1017. }
  1018. if (res.data.jqxFlagUrl) {
  1019. this.oldfileList.push({
  1020. fileTitle: "交强电子标志",
  1021. filename: this.orderInfo.jqpolicyno,
  1022. fileurl: res.data.jqxFlagUrl,
  1023. });
  1024. }
  1025. } else {
  1026. this.$message.error(res.msg);
  1027. }
  1028. });
  1029. }
  1030. if (this.orderInfo.sypolicyno) {
  1031. this.$api.letter
  1032. .HuataigetPolicyPrint({
  1033. companyId: res.data.id,
  1034. riskCode: "0510",
  1035. type: "2", //2:保单
  1036. })
  1037. .then((res) => {
  1038. if (res.data && res.data.syxPolicyUrl) {
  1039. businessList.push({
  1040. fileTitle: "商业电子保单",
  1041. filename: this.orderInfo.sypolicyno,
  1042. fileurl: res.data.syxPolicyUrl,
  1043. });
  1044. } else {
  1045. this.$message.error(res.msg);
  1046. }
  1047. });
  1048. }
  1049. break;
  1050. case 2:
  1051. if (this.orderInfo.jqpolicyno || this.orderInfo.sypolicyno) {
  1052. this.$api.letter
  1053. .pythongetPolicyPrint({
  1054. subOrderNo: res.data.id
  1055. })
  1056. .then(res => {
  1057. if (res.code == 200 && res.data) {
  1058. if (res.data.jqxPolicyUrl) {
  1059. this.oldfileList.push({
  1060. fileTitle: "交强电子保单",
  1061. filename: this.orderInfo.jqpolicyno,
  1062. fileurl: res.data.jqxPolicyUrl
  1063. });
  1064. }
  1065. if (res.data.jqxFlagUrl) {
  1066. this.oldfileList.push({
  1067. fileTitle: "交强电子标志",
  1068. filename: this.orderInfo.jqpolicyno,
  1069. fileurl: res.data.jqxFlagUrl
  1070. });
  1071. }
  1072. if (res.data.syxPolicyUrl) {
  1073. businessList.push({
  1074. fileTitle: "商业电子保单",
  1075. filename: this.orderInfo.sypolicyno,
  1076. fileurl: res.data.syxPolicyUrl
  1077. });
  1078. }
  1079. if (
  1080. res.data.jyxInfoList &&
  1081. res.data.jyxInfoList.length > 0
  1082. ) {
  1083. res.data.jyxInfoList.forEach(val => {
  1084. accidentList.push({
  1085. fileTitle: "驾意险保单",
  1086. filename: "驾意险保单",
  1087. fileurl: val.jyx_policy_url
  1088. });
  1089. });
  1090. }
  1091. } else {
  1092. this.$message.error(res.msg);
  1093. }
  1094. });
  1095. }
  1096. break;
  1097. }
  1098. break;
  1099. case "中煤财险":
  1100. if (this.orderInfo.jqpolicyno) {
  1101. this.$api.letter
  1102. .ZhongmeigetPolicyPrint({
  1103. companyId: res.data.id,
  1104. riskCode: "0507",
  1105. type: "2", //2:保单
  1106. })
  1107. .then((res) => {
  1108. if (res.data && res.data[0]) {
  1109. this.oldfileList.push({
  1110. fileTitle: "交强电子保单",
  1111. filename: this.orderInfo.jqpolicyno,
  1112. fileurl: res.data[0],
  1113. });
  1114. } else {
  1115. this.$message.error(res.msg);
  1116. }
  1117. });
  1118. this.$api.letter
  1119. .ZhongmeigetPolicyPrint({
  1120. companyId: res.data.id,
  1121. riskCode: "0507",
  1122. type: "1", // 1:标志
  1123. })
  1124. .then((res) => {
  1125. if (res.data && res.data[0]) {
  1126. this.oldfileList.push({
  1127. fileTitle: "交强电子标志",
  1128. filename: this.orderInfo.jqpolicyno,
  1129. fileurl: res.data[0],
  1130. });
  1131. } else {
  1132. this.$message.error(res.msg);
  1133. }
  1134. });
  1135. }
  1136. if (this.orderInfo.sypolicyno) {
  1137. this.$api.letter
  1138. .ZhongmeigetPolicyPrint({
  1139. companyId: res.data.id,
  1140. riskCode: "0510",
  1141. type: "2", //2:保单
  1142. })
  1143. .then((res) => {
  1144. if (res.data && res.data[0]) {
  1145. businessList.push({
  1146. fileTitle: "商业电子保单",
  1147. filename: this.orderInfo.sypolicyno,
  1148. fileurl: res.data[0],
  1149. });
  1150. } else {
  1151. this.$message.error(res.msg);
  1152. }
  1153. });
  1154. }
  1155. if (this.orderInfo.crossInsurance.length > 0) {
  1156. this.orderInfo.crossInsurance.map((ele) => {
  1157. this.$api.letter
  1158. .ZhongmeigetPolicyPrint({
  1159. ridePolicyNo: ele.ridePolicyNo,
  1160. companyId: res.data.id,
  1161. riskCode: "0513",
  1162. type: "2", //2:保单
  1163. })
  1164. .then((res) => {
  1165. if (res.code == 200 && res.data) {
  1166. accidentList.push({
  1167. fileTitle: "驾意险保单",
  1168. filename: this.orderInfo.sypolicyno,
  1169. fileurl: res.data[0],
  1170. });
  1171. } else {
  1172. this.$message.error(res.msg);
  1173. }
  1174. });
  1175. });
  1176. }
  1177. break;
  1178. case "永诚财险":
  1179. if (this.orderInfo.jqpolicyno) {
  1180. this.$api.letter
  1181. .yongchenggetPolicyPrint({
  1182. companyId: res.data.id,
  1183. riskCode: "0507",
  1184. type: "2", //2:保单
  1185. })
  1186. .then((res) => {
  1187. if (res.code == 200 && res.data) {
  1188. if (res.data.jqUrl) {
  1189. this.oldfileList.push({
  1190. fileTitle: "交强电子保单",
  1191. filename: this.orderInfo.jqpolicyno,
  1192. fileurl: res.data.jqUrl,
  1193. });
  1194. }
  1195. if (res.data.jqFlagUrl) {
  1196. this.oldfileList.push({
  1197. fileTitle: "交强电子标志",
  1198. filename: this.orderInfo.jqpolicyno,
  1199. fileurl: res.data.jqFlagUrl,
  1200. });
  1201. }
  1202. } else {
  1203. this.$message.error(res.msg);
  1204. }
  1205. });
  1206. }
  1207. if (this.orderInfo.sypolicyno) {
  1208. this.$api.letter
  1209. .yongchenggetPolicyPrint({
  1210. companyId: res.data.id,
  1211. riskCode: "0510",
  1212. type: "2", //2:保单
  1213. })
  1214. .then((res) => {
  1215. if (res.data && res.data.syUrl) {
  1216. businessList.push({
  1217. fileTitle: "商业电子保单",
  1218. filename: this.orderInfo.sypolicyno,
  1219. fileurl: res.data.syUrl,
  1220. });
  1221. } else {
  1222. this.$message.error(res.msg);
  1223. }
  1224. });
  1225. }
  1226. if (this.orderInfo.crossInsurance.length > 0) {
  1227. this.orderInfo.crossInsurance.map((ele) => {
  1228. this.$api.letter
  1229. .yongchenggetPolicyPrint({
  1230. companyId: res.data.id,
  1231. policyNumber: ele.policyNumber,
  1232. riskCode: "0513",
  1233. type: "2", //2:保单
  1234. })
  1235. .then((res) => {
  1236. if (res.code == 200 && res.data) {
  1237. accidentList.push({
  1238. fileTitle: "驾意险保单",
  1239. filename: ele.policyNumber,
  1240. fileurl: res.data.jyUrl,
  1241. });
  1242. } else {
  1243. this.$message.error(res.msg);
  1244. }
  1245. });
  1246. });
  1247. }
  1248. break;
  1249. case "国任财险":
  1250. if (this.orderInfo.jqpolicyno) {
  1251. this.$api.letter
  1252. .guoRengetPolicyPrint({
  1253. companyId: res.data.id,
  1254. riskCode: "0507",
  1255. type: "2", //2:保单
  1256. })
  1257. .then((res) => {
  1258. if (res.data) {
  1259. this.oldfileList.push({
  1260. fileTitle: "交强电子保单",
  1261. filename: this.orderInfo.jqpolicyno,
  1262. fileurl: res.data,
  1263. });
  1264. } else {
  1265. this.$message.error(res.msg);
  1266. }
  1267. });
  1268. this.$api.letter
  1269. .guoRengetPolicyPrint({
  1270. companyId: res.data.id,
  1271. riskCode: "0507",
  1272. type: "1", //1:标志
  1273. })
  1274. .then((res) => {
  1275. if (res.data) {
  1276. this.oldfileList.push({
  1277. fileTitle: "交强电子标志",
  1278. filename: this.orderInfo.jqpolicyno,
  1279. fileurl: res.data,
  1280. });
  1281. } else {
  1282. this.$message.error(res.msg);
  1283. }
  1284. });
  1285. }
  1286. if (this.orderInfo.sypolicyno) {
  1287. this.$api.letter
  1288. .guoRengetPolicyPrint({
  1289. companyId: res.data.id,
  1290. riskCode: "0510",
  1291. type: "2", //2:保单
  1292. })
  1293. .then((res) => {
  1294. if (res.data) {
  1295. businessList.push({
  1296. fileTitle: "商业电子保单",
  1297. filename: this.orderInfo.sypolicyno,
  1298. fileurl: res.data,
  1299. });
  1300. } else {
  1301. this.$message.error(res.msg);
  1302. }
  1303. });
  1304. }
  1305. if (this.orderInfo.crossInsurance.length > 0) {
  1306. this.orderInfo.crossInsurance.map((ele) => {
  1307. this.$api.letter
  1308. .guoRengetPolicyPrint({
  1309. companyId: res.data.id,
  1310. policyNumber: ele.policyNumber,
  1311. riskCode: "0513",
  1312. type: "2", //2:保单
  1313. })
  1314. .then((res) => {
  1315. if (res.data) {
  1316. accidentList.push({
  1317. fileTitle: "驾意险保单",
  1318. filename: ele.policyNumber,
  1319. fileurl: res.data,
  1320. });
  1321. } else {
  1322. this.$message.error(res.msg);
  1323. }
  1324. });
  1325. });
  1326. }
  1327. break;
  1328. case "紫金财险":
  1329. if (this.orderInfo.jqpolicyno) {
  1330. this.$api.letter
  1331. .zijingetPolicyPrint({
  1332. companyId: res.data.id,
  1333. riskCode: "0507",
  1334. type: "2", //2:保单
  1335. })
  1336. .then((res) => {
  1337. if (res.data) {
  1338. this.oldfileList.push({
  1339. fileTitle: "交强电子保单",
  1340. filename: this.orderInfo.jqpolicyno,
  1341. fileurl: res.data,
  1342. });
  1343. } else {
  1344. this.$message.error(res.msg);
  1345. }
  1346. });
  1347. this.$api.letter
  1348. .zijingetPolicyPrint({
  1349. companyId: res.data.id,
  1350. riskCode: "0507",
  1351. type: "1", //1:标志
  1352. })
  1353. .then((res) => {
  1354. if (res.data) {
  1355. this.oldfileList.push({
  1356. fileTitle: "交强电子标志",
  1357. filename: this.orderInfo.jqpolicyno,
  1358. fileurl: res.data,
  1359. });
  1360. } else {
  1361. this.$message.error(res.msg);
  1362. }
  1363. });
  1364. }
  1365. if (this.orderInfo.sypolicyno) {
  1366. this.$api.letter
  1367. .zijingetPolicyPrint({
  1368. companyId: res.data.id,
  1369. riskCode: "0510",
  1370. type: "2", //2:保单
  1371. })
  1372. .then((res) => {
  1373. if (res.data) {
  1374. businessList.push({
  1375. fileTitle: "商业电子保单",
  1376. filename: this.orderInfo.sypolicyno,
  1377. fileurl: res.data,
  1378. });
  1379. } else {
  1380. this.$message.error(res.msg);
  1381. }
  1382. });
  1383. }
  1384. if (this.orderInfo.crossInsurance.length > 0) {
  1385. this.orderInfo.crossInsurance.map((ele) => {
  1386. this.$api.letter
  1387. .zijingetPolicyPrint({
  1388. companyId: res.data.id,
  1389. policyNumber: ele.policyNumber,
  1390. riskCode: "0513",
  1391. type: "2", //2:保单
  1392. })
  1393. .then((res) => {
  1394. if (res.data) {
  1395. accidentList.push({
  1396. fileTitle: "驾意险保单",
  1397. filename: ele.policyNumber,
  1398. fileurl: res.data,
  1399. });
  1400. } else {
  1401. this.$message.error(res.msg);
  1402. }
  1403. });
  1404. });
  1405. }
  1406. break;
  1407. case "渤海财险":
  1408. if (this.orderInfo.jqpolicyno) {
  1409. this.$api.letter
  1410. .getPolicyPrintboHai({
  1411. companyId: res.data.id,
  1412. })
  1413. .then((res) => {
  1414. if (res.code == 200 && res.data) {
  1415. if (res.data.jqxPolicyUrl) {
  1416. this.oldfileList.push({
  1417. fileTitle: "交强电子保单",
  1418. filename: this.orderInfo.jqpolicyno,
  1419. fileurl: res.data.jqxPolicyUrl,
  1420. });
  1421. }
  1422. if (res.data.jqxFlagUrl) {
  1423. this.oldfileList.push({
  1424. fileTitle: "交强电子标志",
  1425. filename: this.orderInfo.jqpolicyno,
  1426. fileurl: res.data.jqxFlagUrl,
  1427. });
  1428. }
  1429. if (res.data.syxPolicyUrl) {
  1430. businessList.push({
  1431. fileTitle: "商业电子保单",
  1432. filename: this.orderInfo.sypolicyno,
  1433. fileurl: res.data.syxPolicyUrl,
  1434. });
  1435. }
  1436. if (
  1437. res.data.jyxInfoList &&
  1438. res.data.jyxInfoList.length > 0
  1439. ) {
  1440. res.data.jyxInfoList.forEach((val) => {
  1441. accidentList.push({
  1442. fileTitle: "驾意险保单",
  1443. filename: "驾意险保单",
  1444. fileurl: val.jyx_policy_url,
  1445. });
  1446. });
  1447. }
  1448. } else {
  1449. this.$message.error(res.msg);
  1450. }
  1451. });
  1452. }
  1453. break;
  1454. case "恒邦财险":
  1455. case "安盛天平":
  1456. case "中国人寿":
  1457. case "太平财险":
  1458. case "华农财险":
  1459. case "众安财险":
  1460. if (this.orderInfo.jqpolicyno || this.orderInfo.sypolicyno) {
  1461. this.$api.letter
  1462. .pythongetPolicyPrint({
  1463. subOrderNo: res.data.id,
  1464. })
  1465. .then((res) => {
  1466. if (res.code == 200 && res.data) {
  1467. if (res.data.jqxPolicyUrl) {
  1468. this.oldfileList.push({
  1469. fileTitle: "交强电子保单",
  1470. filename: this.orderInfo.jqpolicyno,
  1471. fileurl: res.data.jqxPolicyUrl,
  1472. });
  1473. }
  1474. if (res.data.jqxFlagUrl) {
  1475. this.oldfileList.push({
  1476. fileTitle: "交强电子标志",
  1477. filename: this.orderInfo.jqpolicyno,
  1478. fileurl: res.data.jqxFlagUrl,
  1479. });
  1480. }
  1481. if (res.data.syxPolicyUrl) {
  1482. businessList.push({
  1483. fileTitle: "商业电子保单",
  1484. filename: this.orderInfo.sypolicyno,
  1485. fileurl: res.data.syxPolicyUrl,
  1486. });
  1487. }
  1488. if (
  1489. res.data.jyxInfoList &&
  1490. res.data.jyxInfoList.length > 0
  1491. ) {
  1492. res.data.jyxInfoList.forEach((val) => {
  1493. accidentList.push({
  1494. fileTitle: "驾意险保单",
  1495. filename: "驾意险保单",
  1496. fileurl: val.jyx_policy_url,
  1497. });
  1498. });
  1499. }
  1500. } else {
  1501. this.$message.error(res.msg);
  1502. }
  1503. });
  1504. }
  1505. break;
  1506. case "大家财险":
  1507. if (this.orderInfo.jqpolicyno) {
  1508. this.$api.letter
  1509. .obtainWarranty({
  1510. companyId: res.data.id,
  1511. riskCode: "0507",
  1512. type: "2", //2:保单
  1513. })
  1514. .then((res) => {
  1515. if (res.data) {
  1516. this.oldfileList.push({
  1517. fileTitle: "交强电子保单",
  1518. filename: this.orderInfo.jqpolicyno,
  1519. fileurl: res.data,
  1520. });
  1521. } else {
  1522. this.$message.error(res.msg);
  1523. }
  1524. });
  1525. this.$api.letter
  1526. .obtainWarranty({
  1527. companyId: res.data.id,
  1528. riskCode: "0507",
  1529. type: "1", //1:标志
  1530. })
  1531. .then((res) => {
  1532. if (res.data) {
  1533. this.oldfileList.push({
  1534. fileTitle: "交强电子标志",
  1535. filename: this.orderInfo.jqpolicyno,
  1536. fileurl: res.data,
  1537. });
  1538. } else {
  1539. this.$message.error(res.msg);
  1540. }
  1541. });
  1542. }
  1543. if (this.orderInfo.sypolicyno) {
  1544. this.$api.letter
  1545. .obtainWarranty({
  1546. companyId: res.data.id,
  1547. riskCode: "0510",
  1548. type: "2", //2:保单
  1549. })
  1550. .then((res) => {
  1551. if (res.data) {
  1552. businessList.push({
  1553. fileTitle: "商业电子保单",
  1554. filename: this.orderInfo.sypolicyno,
  1555. fileurl: res.data,
  1556. });
  1557. }
  1558. });
  1559. }
  1560. if (this.orderInfo.crossInsurance.length > 0) {
  1561. this.orderInfo.crossInsurance.map((ele) => {
  1562. this.$api.letter
  1563. .zijingetPolicyPrint({
  1564. companyId: res.data.id,
  1565. policyNumber: ele.policyNumber,
  1566. riskCode: "0513",
  1567. type: "2", //2:保单
  1568. })
  1569. .then((res) => {
  1570. if (res.data) {
  1571. accidentList.push({
  1572. fileTitle: "驾意险保单",
  1573. filename: ele.policyNumber,
  1574. fileurl: res.data,
  1575. });
  1576. } else {
  1577. this.$message.error(res.msg);
  1578. }
  1579. });
  1580. });
  1581. }
  1582. break;
  1583. default:
  1584. }
  1585. }
  1586. let obj = {
  1587. oldfileList: this.oldfileList,
  1588. businessList,
  1589. accidentList
  1590. }
  1591. this.$refs.detailsDialog.warrantyFun(obj);
  1592. }
  1593. this.feeDetailInfo = res.data.orderFeeResult;
  1594. this.oldFeeInfo = res.data.adjustFeeDescVo;
  1595. this.adjustFeeDescInfo = { ...this.oldFeeInfo }
  1596. // this.quotedetailsdialogVisible = true;
  1597. console.log(this.orderInfo)
  1598. this.$refs.detailsDialog.setBackupVisible(true);
  1599. } else {
  1600. this.$message.error("订单获取失败");
  1601. }
  1602. });
  1603. },
  1604. // 设置每页条数
  1605. applyhandleSizeChange(val) {
  1606. this.pageSize = val;
  1607. this.pageNum = 1;
  1608. this.pageRequest.pageNum = 1;
  1609. this.pageRequest.pageSize = val;
  1610. this.findPage();
  1611. },
  1612. // 当前页
  1613. applyhandleCurrentChange(val) {
  1614. this.pageNum = val;
  1615. this.pageRequest.pageNum = val;
  1616. this.findPage();
  1617. },
  1618. handleRowChange(row) {
  1619. if (!row.expanded) {
  1620. this.$api.letter.querySonOrders({ orderNo: row.orderno }).then(res => {
  1621. if (res.code == '200' && res.data.length != 0) {
  1622. this.pageResult.map(item => {
  1623. if (item.orderno === row.orderno) {
  1624. item.insAreaCompanyList = res.data;
  1625. }
  1626. return item;
  1627. })
  1628. row.expanded = !row.expanded;
  1629. this.$refs.expandTable.toggleRowExpansion(row, row.expanded);
  1630. } else {
  1631. this.$message.info("暂无数据");
  1632. }
  1633. })
  1634. } else {
  1635. row.expanded = !row.expanded;
  1636. this.$refs.expandTable.toggleRowExpansion(row, row.expanded);
  1637. }
  1638. },
  1639. //数据
  1640. findPage() {
  1641. this.loading = true;
  1642. this.$api.task.queryPageOrder(this.pageRequest).then((res) => {
  1643. if (res.code == "200") {
  1644. this.loading = false;
  1645. this.pageResult = res.data.content;
  1646. this.pageNum = res.data.pageNum;
  1647. this.totalSize = res.data.totalSize;
  1648. this.pageResult.forEach(val => {
  1649. this.$set(val, "expanded", false);
  1650. });
  1651. } else {
  1652. this.loading = false;
  1653. }
  1654. })
  1655. },
  1656. //查询
  1657. onSubmit() {
  1658. this.pageRequest.pageNum = 1;
  1659. this.pageRequest.pageSize = 20;
  1660. this.findPage();
  1661. },
  1662. //时间js
  1663. monthChange(e) {
  1664. if (e === null) {
  1665. this.pageRequest.startDate = e;
  1666. this.pageRequest.endDate = e;
  1667. } else {
  1668. this.pageRequest.startDate = e[0];
  1669. this.pageRequest.endDate = e[1];
  1670. }
  1671. },
  1672. tableRowColor({ row, rowIndex }) {
  1673. console.log(row.problemOrder);
  1674. if (row.problemOrder == 1) {
  1675. return "blue-row";
  1676. }
  1677. },
  1678. }
  1679. }
  1680. </script>
  1681. <style lang="scss" scoped>
  1682. /deep/ {
  1683. .el-table .row-expand-cover .cell .el-table__expand-icon {
  1684. display: none;
  1685. }
  1686. .el-descriptions__body {
  1687. padding: 10px 50px;
  1688. box-sizing: border-box;
  1689. color: rgb(226, 118, 10);
  1690. }
  1691. .el-descriptions-item__label {
  1692. &:not(.is-bordered-label) {
  1693. color: #333;
  1694. }
  1695. }
  1696. .saomazhifucodeClass .el-dialog__body,
  1697. .saomazhifucodeClass .el-dialog__header {
  1698. padding: 0;
  1699. }
  1700. .el-input.is-disabled .el-input__inner {
  1701. color: #333;
  1702. }
  1703. }
  1704. .ORcodebody {
  1705. width: 100%;
  1706. height: auto;
  1707. box-sizing: border-box;
  1708. }
  1709. .code_title {
  1710. width: 100%;
  1711. height: 50px;
  1712. background-color: #fdcb08;
  1713. justify-content: center;
  1714. }
  1715. .code_title>span {
  1716. font-size: 22px;
  1717. color: #000;
  1718. font-weight: bold;
  1719. }
  1720. .ORcode {
  1721. width: 100%;
  1722. background: #fff;
  1723. height: auto;
  1724. display: flex;
  1725. justify-content: center;
  1726. align-items: center;
  1727. padding: 30px;
  1728. box-sizing: border-box;
  1729. border-bottom: 6px dotted #fdcb08;
  1730. }
  1731. .ORcode>div {
  1732. width: 180px;
  1733. height: 180px;
  1734. border: 1px solid #000;
  1735. border-radius: 5px;
  1736. }
  1737. .ORtitle {
  1738. background: #fff;
  1739. width: 100%;
  1740. padding: 20px;
  1741. box-sizing: border-box;
  1742. border-bottom: 1px solid #f2f2f2;
  1743. }
  1744. .ORtitle>div {
  1745. width: 100%;
  1746. margin: 10px 0;
  1747. font-weight: bold;
  1748. font-size: 14px;
  1749. display: flex;
  1750. align-items: center;
  1751. }
  1752. .ORtitle>div>span:nth-child(1) {
  1753. color: #979797;
  1754. text-align: end;
  1755. width: 150px;
  1756. }
  1757. .ORtitle>div>span:nth-child(2) {
  1758. color: #000;
  1759. margin-left: 10px;
  1760. }
  1761. </style>
  1762. <style scoped>
  1763. #qqq {
  1764. background-color: #111;
  1765. width: 300px;
  1766. height: 300px;
  1767. margin: 0 auto;
  1768. /*水平居中*/
  1769. position: relative;
  1770. }
  1771. #qrCode {
  1772. display: inline-block;
  1773. margin: 0 auto;
  1774. /*水平居中*/
  1775. position: relative;
  1776. top: 15%;
  1777. }
  1778. #qrCode img {
  1779. width: 200px;
  1780. height: 200px;
  1781. background-color: #fff;
  1782. padding: 6px;
  1783. }
  1784. .leftContainer {
  1785. width: 80px;
  1786. position: fixed;
  1787. top: 79px;
  1788. left: 30px;
  1789. }
  1790. .leftContainer .el-col {
  1791. width: 80px;
  1792. height: 80px;
  1793. border-bottom: 1px solid #4d5c6f;
  1794. background: #526176;
  1795. cursor: pointer;
  1796. color: #a6aeb9;
  1797. border-radius: 0;
  1798. }
  1799. .leftContainer .el-col a {
  1800. display: block;
  1801. color: #a6aeb9;
  1802. text-decoration: none;
  1803. }
  1804. .leftContainer .el-col a:hover {
  1805. color: #fff;
  1806. }
  1807. .leftContainer .el-col a.active {
  1808. color: #fff;
  1809. }
  1810. .leftContainer .el-col i {
  1811. font-size: 30px;
  1812. margin: 15px 0px 5px;
  1813. }
  1814. .rightContainer {
  1815. width: calc(100vw - 160px);
  1816. margin-left: 100px;
  1817. }
  1818. .rightContainer .header .el-col {
  1819. font-size: 18px;
  1820. font-weight: bold;
  1821. }
  1822. .rightContainer .bodyTitle {
  1823. height: 40px;
  1824. background: #f3f3f3;
  1825. border: 1px solid #dddddd;
  1826. }
  1827. .rightContainer .bodyTitle>label {
  1828. margin: 0px 15px;
  1829. font-weight: bold;
  1830. }
  1831. .rightContainer #demo2 .body,
  1832. .rightContainer #demo6 .body {
  1833. border: 1px solid #ddd;
  1834. padding: 15px;
  1835. border-top: none;
  1836. }
  1837. .rightContainer .el-card {
  1838. margin-bottom: 15px;
  1839. }
  1840. .body .el-row .el-col label {
  1841. text-align: right;
  1842. width: 80px;
  1843. font-size: 14px;
  1844. width: 100%;
  1845. line-height: 36px;
  1846. display: inline-block;
  1847. box-sizing: border-box;
  1848. }
  1849. .disabledInput {
  1850. width: 80% !important;
  1851. background-color: #f5f7fa;
  1852. text-align: center !important;
  1853. max-width: 200px;
  1854. border: 1px solid #e4e7ed;
  1855. color: #c0c4cc;
  1856. cursor: not-allowed;
  1857. border-radius: 4px;
  1858. box-sizing: border-box;
  1859. padding: 0px 10px;
  1860. height: 36px;
  1861. margin: 20px 10%;
  1862. }
  1863. /* 上传图片样式Start */
  1864. .avatar-uploader .el-upload {
  1865. border: 1px dashed #d9d9d9;
  1866. border-radius: 6px;
  1867. cursor: pointer;
  1868. position: relative;
  1869. overflow: hidden;
  1870. }
  1871. .avatar-uploader .el-upload:hover {
  1872. border-color: #409eff;
  1873. }
  1874. .avatar-uploader-icon {
  1875. font-size: 28px;
  1876. color: #8c939d;
  1877. width: 100px;
  1878. height: 100px;
  1879. line-height: 100px;
  1880. text-align: center;
  1881. border: 1px dashed #d9d9d9;
  1882. }
  1883. .avatar {
  1884. border: 1px dashed #d9d9d9;
  1885. padding: 5px;
  1886. border-radius: 6px;
  1887. width: 100px;
  1888. height: 100px;
  1889. display: block;
  1890. }
  1891. .imageStyle {
  1892. display: inline-block;
  1893. width: 100px;
  1894. height: 100px;
  1895. box-shadow: #ddd 0px 0px 5px;
  1896. margin-right: 20px;
  1897. }
  1898. /* 上传图片样式End */
  1899. .dis {
  1900. display: flex;
  1901. }
  1902. .align {
  1903. align-items: center;
  1904. }
  1905. .jus {
  1906. justify-content: space-between;
  1907. }
  1908. .display {
  1909. display: flex;
  1910. justify-content: center;
  1911. align-items: center;
  1912. padding: 10px;
  1913. box-sizing: border-box;
  1914. }
  1915. .block {
  1916. margin-top: 10px;
  1917. }
  1918. .page {
  1919. padding: 14px;
  1920. box-sizing: border-box;
  1921. }
  1922. .el-select--medium {
  1923. vertical-align: bottom !important;
  1924. }
  1925. .widths {
  1926. width: 220px;
  1927. }
  1928. .demo-table-expand {
  1929. width: 100%;
  1930. height: auto;
  1931. padding: 10px 50px;
  1932. font-size: 14px;
  1933. }
  1934. .demo-table-expand-time {
  1935. width: 600px;
  1936. }
  1937. .demo-table-expand-time>div {
  1938. margin: 0 10px;
  1939. }
  1940. .icon-img {
  1941. display: block;
  1942. width: 30px;
  1943. height: 30px;
  1944. }
  1945. .Enclosure {
  1946. width: 100%;
  1947. background-color: #fff;
  1948. padding: 20px;
  1949. box-sizing: border-box;
  1950. margin-bottom: 15px;
  1951. border-radius: 6px;
  1952. border: 1px solid #ebeef5;
  1953. transition: all 0.2s ease-in-out;
  1954. box-shadow: 0 2px 12px 0 rgba(0, 0, 0, 0.1);
  1955. }
  1956. .headers {
  1957. display: flex;
  1958. align-items: center;
  1959. justify-content: space-between;
  1960. flex-wrap: wrap;
  1961. margin: 5px 0;
  1962. font-weight: bold;
  1963. color: #333;
  1964. }
  1965. /* 内容待定 */
  1966. .headers_Custom>div {
  1967. padding: 20px 40px;
  1968. font-size: 16px;
  1969. }
  1970. .headers_Custom>div>span {
  1971. color: rgb(226, 118, 10);
  1972. }
  1973. .back {
  1974. color: #303133;
  1975. font-weight: 700;
  1976. }
  1977. .u-f-ac {
  1978. -webkit-box-align: center;
  1979. align-items: center;
  1980. /* padding: 10px; */
  1981. }
  1982. .bodyTitle {
  1983. height: 40px;
  1984. background: #f3f3f3;
  1985. border: 1px solid #dddddd;
  1986. line-height: 40px;
  1987. padding: 0 20px;
  1988. box-sizing: border-box;
  1989. }
  1990. .bjdbody {
  1991. width: 100%;
  1992. height: auto;
  1993. background-color: rgb(199, 20, 45);
  1994. padding: 20px 10px 0 10px;
  1995. box-sizing: border-box;
  1996. border-radius: 8px;
  1997. }
  1998. .bjdCarMessage,
  1999. .bjdCarSum {
  2000. width: 100%;
  2001. height: auto;
  2002. background-color: #fff;
  2003. border-radius: 8px;
  2004. margin-bottom: 10px;
  2005. padding-bottom: 10px;
  2006. }
  2007. .bjdfooter {
  2008. border-top: 1px solid #fff;
  2009. padding: 10px;
  2010. box-sizing: border-box;
  2011. color: #fff;
  2012. }
  2013. .bjdCarSum>div {
  2014. width: 100%;
  2015. padding: 15px 20px;
  2016. box-sizing: border-box;
  2017. font-weight: bold;
  2018. color: #000;
  2019. border-bottom: 1px solid #f2f2f2;
  2020. }
  2021. .bjdCarMessage1 {
  2022. height: 80px;
  2023. padding: 16px;
  2024. box-sizing: border-box;
  2025. border-bottom: 1px solid #f2f2f2;
  2026. display: flex;
  2027. align-items: center;
  2028. color: #000;
  2029. }
  2030. .bjdCarMessage1>.f-c>span:nth-child(1) {
  2031. font-size: 18px;
  2032. font-weight: bold;
  2033. }
  2034. .bjdCarMessage1>img,
  2035. .bjdfooter>img {
  2036. margin-right: 30px;
  2037. }
  2038. .bjdCarMessage1 .f-c>span:nth-child(2),
  2039. .bjdCarMessage1 .f-c>span:nth-child(3) {
  2040. font-size: 12px;
  2041. margin-top: 5px;
  2042. }
  2043. .bjdCarMessage2_car>span:nth-child(1) {
  2044. color: #000;
  2045. font-weight: bold;
  2046. }
  2047. .bjdCarMessage2_car>span:nth-child(2) {
  2048. color: #999;
  2049. }
  2050. .bjdCarMessage2>ul>li {
  2051. margin: 20px 0;
  2052. }
  2053. .Risk {
  2054. width: 100%;
  2055. height: auto;
  2056. display: flex;
  2057. flex-direction: column;
  2058. align-items: center;
  2059. font-size: 12px;
  2060. }
  2061. .Risk_title {
  2062. width: 100%;
  2063. height: 40px;
  2064. }
  2065. .Risk_title>div {
  2066. background: rgb(199, 20, 45);
  2067. color: rgb(255, 255, 255);
  2068. height: 100%;
  2069. font-weight: 500;
  2070. width: 33.3%;
  2071. padding: 10px 20px;
  2072. box-sizing: border-box;
  2073. border: #fff solid 1px;
  2074. display: flex;
  2075. justify-content: center;
  2076. align-items: center;
  2077. border-bottom: none;
  2078. }
  2079. .Risk_title>div:nth-child(2) {
  2080. border-left: none;
  2081. border-right: none;
  2082. }
  2083. .Risk_data {
  2084. width: 100%;
  2085. height: 40px;
  2086. }
  2087. .Risk_data>div {
  2088. background: #fbf6f7;
  2089. color: rgb(51, 51, 51);
  2090. height: 100%;
  2091. font-weight: 500;
  2092. width: 33.3%;
  2093. padding: 10px 20px;
  2094. box-sizing: border-box;
  2095. border: #fff solid 1px;
  2096. display: flex;
  2097. justify-content: center;
  2098. align-items: center;
  2099. border-bottom: none;
  2100. }
  2101. .Risk_data>div :nth-child(2) {
  2102. border-left: none;
  2103. border-right: none;
  2104. }
  2105. .Risk_title>div :nth-child(3) {
  2106. border-top-right-radius: 10px;
  2107. }
  2108. .jyxStyle>span {
  2109. display: inline-block;
  2110. text-align: center;
  2111. }
  2112. .FeeEnclosure /deep/ table {
  2113. width: 100% !important;
  2114. }
  2115. .FeeEnclosure /deep/ .cell {
  2116. text-align: center;
  2117. }
  2118. .FeeEnclosure /deep/ .el-table__empty-block {
  2119. width: 100% !important;
  2120. }
  2121. .FeeEnclosure .feeadjust-input {
  2122. width: 35%;
  2123. height: 20px;
  2124. font-size: 13px;
  2125. }
  2126. /deep/ .el-table .el-table__row.blue-row {
  2127. background: #409eff;
  2128. opacity: .8;
  2129. color: #fff;
  2130. }
  2131. /deep/.el-table .el-table__row.blue-row:hover{
  2132. color: #000;
  2133. }
  2134. </style>