Verifyuntasks.vue 70 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980818283848586878889909192939495969798991001011021031041051061071081091101111121131141151161171181191201211221231241251261271281291301311321331341351361371381391401411421431441451461471481491501511521531541551561571581591601611621631641651661671681691701711721731741751761771781791801811821831841851861871881891901911921931941951961971981992002012022032042052062072082092102112122132142152162172182192202212222232242252262272282292302312322332342352362372382392402412422432442452462472482492502512522532542552562572582592602612622632642652662672682692702712722732742752762772782792802812822832842852862872882892902912922932942952962972982993003013023033043053063073083093103113123133143153163173183193203213223233243253263273283293303313323333343353363373383393403413423433443453463473483493503513523533543553563573583593603613623633643653663673683693703713723733743753763773783793803813823833843853863873883893903913923933943953963973983994004014024034044054064074084094104114124134144154164174184194204214224234244254264274284294304314324334344354364374384394404414424434444454464474484494504514524534544554564574584594604614624634644654664674684694704714724734744754764774784794804814824834844854864874884894904914924934944954964974984995005015025035045055065075085095105115125135145155165175185195205215225235245255265275285295305315325335345355365375385395405415425435445455465475485495505515525535545555565575585595605615625635645655665675685695705715725735745755765775785795805815825835845855865875885895905915925935945955965975985996006016026036046056066076086096106116126136146156166176186196206216226236246256266276286296306316326336346356366376386396406416426436446456466476486496506516526536546556566576586596606616626636646656666676686696706716726736746756766776786796806816826836846856866876886896906916926936946956966976986997007017027037047057067077087097107117127137147157167177187197207217227237247257267277287297307317327337347357367377387397407417427437447457467477487497507517527537547557567577587597607617627637647657667677687697707717727737747757767777787797807817827837847857867877887897907917927937947957967977987998008018028038048058068078088098108118128138148158168178188198208218228238248258268278288298308318328338348358368378388398408418428438448458468478488498508518528538548558568578588598608618628638648658668678688698708718728738748758768778788798808818828838848858868878888898908918928938948958968978988999009019029039049059069079089099109119129139149159169179189199209219229239249259269279289299309319329339349359369379389399409419429439449459469479489499509519529539549559569579589599609619629639649659669679689699709719729739749759769779789799809819829839849859869879889899909919929939949959969979989991000100110021003100410051006100710081009101010111012101310141015101610171018101910201021102210231024102510261027102810291030103110321033103410351036103710381039104010411042104310441045104610471048104910501051105210531054105510561057105810591060106110621063106410651066106710681069107010711072107310741075107610771078107910801081108210831084108510861087108810891090109110921093109410951096109710981099110011011102110311041105110611071108110911101111111211131114111511161117111811191120112111221123112411251126112711281129113011311132113311341135113611371138113911401141114211431144114511461147114811491150115111521153115411551156115711581159116011611162116311641165116611671168116911701171117211731174117511761177117811791180118111821183118411851186118711881189119011911192119311941195119611971198119912001201120212031204120512061207120812091210121112121213121412151216121712181219122012211222122312241225122612271228122912301231123212331234123512361237123812391240124112421243124412451246124712481249125012511252125312541255125612571258125912601261126212631264126512661267126812691270127112721273127412751276127712781279128012811282128312841285128612871288128912901291129212931294129512961297129812991300130113021303130413051306130713081309131013111312131313141315131613171318131913201321132213231324132513261327132813291330133113321333133413351336133713381339134013411342134313441345134613471348134913501351135213531354135513561357135813591360136113621363136413651366136713681369137013711372137313741375137613771378137913801381138213831384138513861387138813891390139113921393139413951396139713981399140014011402140314041405140614071408140914101411141214131414141514161417141814191420142114221423142414251426142714281429143014311432143314341435143614371438143914401441144214431444144514461447144814491450145114521453145414551456145714581459146014611462146314641465146614671468146914701471147214731474147514761477147814791480148114821483148414851486148714881489149014911492149314941495149614971498149915001501150215031504150515061507150815091510151115121513151415151516151715181519152015211522152315241525152615271528152915301531153215331534153515361537153815391540154115421543154415451546154715481549155015511552155315541555155615571558155915601561156215631564156515661567156815691570157115721573157415751576157715781579158015811582158315841585158615871588158915901591159215931594159515961597159815991600160116021603160416051606160716081609161016111612161316141615161616171618161916201621162216231624162516261627162816291630163116321633163416351636163716381639164016411642164316441645164616471648164916501651165216531654165516561657165816591660166116621663166416651666166716681669167016711672167316741675167616771678167916801681168216831684168516861687168816891690169116921693169416951696169716981699170017011702170317041705170617071708170917101711171217131714171517161717171817191720172117221723172417251726172717281729173017311732173317341735173617371738173917401741174217431744174517461747174817491750175117521753175417551756175717581759176017611762176317641765176617671768176917701771177217731774177517761777177817791780178117821783178417851786178717881789179017911792179317941795179617971798179918001801180218031804180518061807180818091810181118121813181418151816181718181819182018211822182318241825182618271828182918301831183218331834183518361837183818391840184118421843184418451846184718481849185018511852185318541855185618571858185918601861186218631864186518661867186818691870187118721873187418751876187718781879188018811882188318841885188618871888188918901891189218931894189518961897189818991900190119021903190419051906190719081909191019111912191319141915191619171918191919201921192219231924192519261927192819291930193119321933193419351936193719381939194019411942194319441945194619471948194919501951195219531954195519561957195819591960196119621963196419651966196719681969197019711972197319741975197619771978197919801981198219831984198519861987198819891990199119921993199419951996199719981999200020012002200320042005200620072008200920102011201220132014201520162017201820192020202120222023202420252026202720282029203020312032203320342035203620372038203920402041204220432044204520462047204820492050205120522053205420552056205720582059206020612062206320642065206620672068206920702071207220732074207520762077207820792080208120822083208420852086208720882089209020912092209320942095209620972098209921002101210221032104210521062107210821092110211121122113211421152116211721182119212021212122212321242125212621272128212921302131213221332134213521362137213821392140214121422143214421452146214721482149215021512152215321542155215621572158215921602161216221632164216521662167216821692170217121722173217421752176217721782179218021812182218321842185218621872188218921902191219221932194219521962197219821992200220122022203220422052206220722082209221022112212221322142215221622172218221922202221222222232224222522262227222822292230223122322233223422352236223722382239224022412242224322442245
  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. if (num == 1500000) {
  639. return 150 + '万'
  640. }
  641. let changeNum = [
  642. "零", "1", "2", "3", "4", "5", "6", "7", "8", "9"
  643. ];
  644. let unit = ["", "0", "00", "000", "0000"];
  645. num = parseInt(num);
  646. let getWan = temp => {
  647. let strArr = temp
  648. .toString()
  649. .split("")
  650. .reverse();
  651. let newNum = "";
  652. let newArr = [];
  653. strArr.forEach((item, index) => {
  654. newArr.unshift(
  655. item === "0" ? changeNum[item] : changeNum[item] + unit[index]
  656. );
  657. });
  658. let numArr = [];
  659. newArr.forEach((m, n) => {
  660. if (m !== "零") numArr.push(n);
  661. });
  662. if (newArr.length > 1) {
  663. newArr.forEach((m, n) => {
  664. if (newArr[newArr.length - 1] === "零") {
  665. if (n <= numArr[numArr.length - 1]) {
  666. newNum += m;
  667. }
  668. } else {
  669. newNum += m;
  670. }
  671. });
  672. } else {
  673. newNum = newArr[0];
  674. }
  675. return newNum;
  676. };
  677. let overWan = Math.floor(num / 10000);
  678. let noWan = num % 10000;
  679. if (noWan.toString().length < 4) {
  680. noWan = "0" + noWan;
  681. }
  682. return overWan ? getWan(overWan) + "万" + getWan(noWan) : getWan(num);
  683. },
  684. //联级选择器触发事件
  685. handleChange(val) {
  686. if (val.length !== 0) {
  687. this.pageRequest.deptId = val.at(-1);
  688. }
  689. else {
  690. this.pageRequest.deptId = ''
  691. }
  692. },
  693. getDimensions() {
  694. this.width = document.documentElement.clientWidth - 350 + 'px';
  695. },
  696. //使用性质
  697. natureOfVehicleUseCap(ele) {
  698. if (this.natureOfVehicleUseoptions.find(item => item.dictValue == ele)) {
  699. return this.natureOfVehicleUseoptions.find((item) => {
  700. return item.dictValue === ele;
  701. }).dictTag;
  702. }
  703. else {
  704. return ''
  705. }
  706. },
  707. //车辆类型
  708. trafficManagementVehicleTypeCap(ele) {
  709. if (this.trafficManagementVehicleTypeoptions.find(item => item.dictValue == ele)) {
  710. return this.trafficManagementVehicleTypeoptions.find((item) => {
  711. return item.dictValue === ele;
  712. }).dictTag;
  713. }
  714. else {
  715. return ''
  716. }
  717. },
  718. //车辆种类
  719. vehicleTypeCap(ele) {
  720. if (this.vehicleTypeoptions.find(item => item.dictValue == ele)) {
  721. return this.vehicleTypeoptions.find((item) => {
  722. return item.dictValue === ele;
  723. }).dictTag;
  724. }
  725. else {
  726. return ''
  727. }
  728. },
  729. //能源种类
  730. energyTypeCap(ele) {
  731. if (this.energyTypeoptions.find(item => item.dictValue == ele)) {
  732. return this.energyTypeoptions.find((item) => {
  733. return item.dictValue === ele;
  734. }).dictTag;
  735. }
  736. else {
  737. return ''
  738. }
  739. },
  740. //车辆用途
  741. outOfBusinessVehicleUseCap(type, ele) {
  742. switch (type) {
  743. case '非营业':
  744. if (this.outOfBusinessVehicleUseoptions.find(item => item.dictValue == ele)) {
  745. return this.outOfBusinessVehicleUseoptions.find((item) => {
  746. return item.dictValue === ele;
  747. }).dictTag;
  748. }
  749. else {
  750. return ''
  751. }
  752. case '营业':
  753. if (this.businessVehicleUseoptions.find(item => item.dictValue == ele)) {
  754. return this.businessVehicleUseoptions.find((item) => {
  755. return item.dictValue === ele;
  756. }).dictTag;
  757. }
  758. else {
  759. return ''
  760. }
  761. default:
  762. }
  763. },
  764. tableRowClassName(row) {
  765. if (row.row.problemOrder === 1) {
  766. return "flagRow";
  767. }
  768. else {
  769. return ''
  770. }
  771. },
  772. //应用详情
  773. OrderDetails(dy) {
  774. console.log(dy)
  775. if (dy.isExternal == 1) {
  776. this.isrejection = true
  777. }
  778. else {
  779. this.isrejection = false
  780. }
  781. this.carImageList = [];
  782. this.ownerImageList = []; //车主影像
  783. this.policyImageList = []; //投保人影像
  784. this.insuredImageList = []; //被保人影像
  785. this.carCheckImageList = []; //验车照影像
  786. let params = {
  787. orderNo: dy.orderno,
  788. }
  789. this.insOrderNo = dy.orderno
  790. this.$api.task.feeDetail(params).then((res) => {
  791. if (res.code == 200) {
  792. res.data.kindinfo.map((ele, index) => {
  793. switch (ele.kindCode) {
  794. case "A":
  795. ele.amount = "投保";
  796. break;
  797. case "D4":
  798. case "SY_FJ_YBW2":
  799. ele.unitAmount = this.toChinesNum(ele.unitAmount);
  800. break;
  801. case "MJ1":
  802. case "MJ2":
  803. case "MJ3":
  804. case "MJ4":
  805. ele.deductibleRate = ele.deductibleRate + "%";
  806. break;
  807. default:
  808. ele.amount = this.toChinesNum(ele.amount);
  809. }
  810. return ele;
  811. });
  812. // 获取影像
  813. this.$api.letter.findByQuoteNo(dy.quoteno).then((resImage) => {
  814. Object.keys(resImage.data).forEach((keys) => {
  815. if (resImage.data[keys]) {
  816. resImage.data[keys].url = resImage.data[keys].url
  817. ? process.env.BASE_URL + resImage.data[keys].url
  818. : null;
  819. switch (keys) {
  820. case "C01":
  821. case "D01":
  822. resImage.data[keys].url
  823. ? this.carImageList.push(resImage.data[keys].url)
  824. : "";
  825. break;
  826. case "C02":
  827. case "D02":
  828. resImage.data[keys].url
  829. ? this.ownerImageList.push(resImage.data[keys].url)
  830. : "";
  831. break;
  832. case "C03":
  833. case "D03":
  834. resImage.data[keys].url
  835. ? this.policyImageList.push(resImage.data[keys].url)
  836. : "";
  837. break;
  838. case "C04":
  839. case "D04":
  840. resImage.data[keys].url
  841. ? this.insuredImageList.push(resImage.data[keys].url)
  842. : "";
  843. break;
  844. case "XC00":
  845. case "GC00":
  846. case "GX00":
  847. resImage.data[keys].url
  848. ? this.carCheckImageList.push(resImage.data[keys].url)
  849. : "";
  850. break;
  851. default:
  852. break;
  853. }
  854. }
  855. });
  856. let obj = {
  857. carImageList: this.carImageList,
  858. ownerImageList: this.ownerImageList,
  859. policyImageList: this.policyImageList,
  860. insuredImageList: this.insuredImageList,
  861. carCheckImageList: this.carCheckImageList
  862. }
  863. this.$refs.detailsDialog.imageFun(obj);
  864. });
  865. if (res.data.feeOrderNewVo && res.data.feeOrderNewVo.exportFee && res.data.feeOrderNewVo.entranceFee) {
  866. let data = JSON.parse(JSON.stringify(res.data.feeOrderNewVo))
  867. this.oldVersionHistory = data;
  868. data.exportFee.map((val, index) => {
  869. val.type = "出口费用"
  870. return val;
  871. })
  872. data.entranceFee.map((val, index) => {
  873. val.type = "入口费用"
  874. return val;
  875. })
  876. this.feeOrderNewVoList = {
  877. deptManagerFee: data.deptManagerFee,
  878. list: [...data.entranceFee, ...data.exportFee],
  879. retailFee: data.retailFee
  880. }
  881. }
  882. res.data.carinfo.carnature = this.natureOfVehicleUseCap(res.data.carinfo.carnature)
  883. res.data.carinfo.cartype = this.trafficManagementVehicleTypeCap(res.data.carinfo.cartype)
  884. res.data.carinfo.cimodelclass = this.vehicleTypeCap(res.data.carinfo.cimodelclass)
  885. res.data.carinfo.energyType = this.energyTypeCap(res.data.carinfo.energyType)
  886. res.data.carinfo.vehicleUse = this.outOfBusinessVehicleUseCap(res.data.carinfo.carnature, res.data.carinfo.vehicleUse)
  887. res.data.source = dy.managementSource;
  888. this.orderInfo = res.data;
  889. this.oldfileList = [];
  890. let businessList = []
  891. let accidentList = []
  892. if (res.data.orderstatus == "3") {
  893. if (res.data.isExternal == 1) {
  894. this.$api.letter
  895. .getPolicyPrintexternalOrder(res.data.id).then(res1 => {
  896. if (res1.code == 200) {
  897. if (res1.data.jqPolicy) {
  898. this.oldfileList.push({
  899. fileTitle: "交强电子保单",
  900. filename: this.orderInfo.jqpolicyno,
  901. fileurl: res1.data.jqPolicy
  902. });
  903. }
  904. if (res1.data.jqSign) {
  905. this.oldfileList.push({
  906. fileTitle: "交强电子标志",
  907. filename: this.orderInfo.jqpolicyno,
  908. fileurl: res1.data.jqSign
  909. });
  910. }
  911. if (res1.data.syPolicy) {
  912. accidentList.push({
  913. fileTitle: "商业电子保单",
  914. filename: this.orderInfo.sypolicyno,
  915. fileurl: res1.data.syPolicy
  916. });
  917. }
  918. if (res1.data.noPolicy) {
  919. accidentList.push({
  920. fileTitle: "驾意险保单",
  921. filename: "驾意险保单",
  922. fileurl: res1.data.noPolicy
  923. });
  924. }
  925. }
  926. else {
  927. this.$message.error(res1.msg)
  928. }
  929. })
  930. }
  931. else {
  932. switch (res.data.inscompany) {
  933. case "永安财险":
  934. if (this.orderInfo.jqpolicyno) {
  935. this.$api.letter
  936. .getPolicyPrint({
  937. companyId: res.data.id,
  938. policytype: "jq",
  939. })
  940. .then((res) => {
  941. //交强保单
  942. if (res.data) {
  943. let result = res.data.replace(/[\r\n]/g, "");
  944. let pdfBase64 = `data:application/pdf;base64,${result}`;
  945. base64ToPath(pdfBase64).then((path) => {
  946. if (path) {
  947. this.oldfileList.push({
  948. fileTitle: "交强电子保单",
  949. filename: this.orderInfo.jqpolicyno,
  950. fileurl: path,
  951. });
  952. }
  953. });
  954. }
  955. });
  956. this.$api.letter
  957. .getPolicyPrint2({
  958. companyId: res.data.id,
  959. policytype: "jq",
  960. })
  961. .then((res) => {
  962. //交强保单
  963. if (res.data) {
  964. let result = res.data.replace(/[\r\n]/g, "");
  965. let pdfBase64 = `data:application/pdf;base64,${result}`;
  966. base64ToPath(pdfBase64).then((path) => {
  967. if (path) {
  968. this.oldfileList.push({
  969. fileTitle: "交强电子标志",
  970. filename: this.orderInfo.jqpolicyno,
  971. fileurl: path,
  972. });
  973. }
  974. });
  975. }
  976. });
  977. }
  978. if (this.orderInfo.sypolicyno) {
  979. this.$api.letter
  980. .getPolicyPrint({
  981. companyId: res.data.id,
  982. policytype: "sy",
  983. })
  984. .then((res) => {
  985. //商业保单
  986. if (res.data) {
  987. let result = res.data.replace(/[\r\n]/g, "");
  988. let pdfBase64 = `data:application/pdf;base64,${result}`;
  989. base64ToPath(pdfBase64).then((path) => {
  990. if (path) {
  991. businessList.push({
  992. fileTitle: "商业电子保单",
  993. filename: this.orderInfo.sypolicyno,
  994. fileurl: path,
  995. });
  996. }
  997. });
  998. }
  999. });
  1000. }
  1001. break;
  1002. case "华泰财险":
  1003. switch (res.data.apiType) {
  1004. case 1:
  1005. if (this.orderInfo.jqpolicyno) {
  1006. this.$api.letter
  1007. .HuataigetPolicyPrint({
  1008. companyId: res.data.id,
  1009. riskCode: "0507",
  1010. type: "2", //2:保单
  1011. })
  1012. .then((res) => {
  1013. if (res.data) {
  1014. if (res.data.jqxPolicyUrl) {
  1015. this.oldfileList.push({
  1016. fileTitle: "交强电子保单",
  1017. filename: this.orderInfo.jqpolicyno,
  1018. fileurl: res.data.jqxPolicyUrl,
  1019. });
  1020. }
  1021. if (res.data.jqxFlagUrl) {
  1022. this.oldfileList.push({
  1023. fileTitle: "交强电子标志",
  1024. filename: this.orderInfo.jqpolicyno,
  1025. fileurl: res.data.jqxFlagUrl,
  1026. });
  1027. }
  1028. } else {
  1029. this.$message.error(res.msg);
  1030. }
  1031. });
  1032. }
  1033. if (this.orderInfo.sypolicyno) {
  1034. this.$api.letter
  1035. .HuataigetPolicyPrint({
  1036. companyId: res.data.id,
  1037. riskCode: "0510",
  1038. type: "2", //2:保单
  1039. })
  1040. .then((res) => {
  1041. if (res.data && res.data.syxPolicyUrl) {
  1042. businessList.push({
  1043. fileTitle: "商业电子保单",
  1044. filename: this.orderInfo.sypolicyno,
  1045. fileurl: res.data.syxPolicyUrl,
  1046. });
  1047. } else {
  1048. this.$message.error(res.msg);
  1049. }
  1050. });
  1051. }
  1052. break;
  1053. case 2:
  1054. if (this.orderInfo.jqpolicyno || this.orderInfo.sypolicyno) {
  1055. this.$api.letter
  1056. .pythongetPolicyPrint({
  1057. subOrderNo: res.data.id
  1058. })
  1059. .then(res => {
  1060. if (res.code == 200 && res.data) {
  1061. if (res.data.jqxPolicyUrl) {
  1062. this.oldfileList.push({
  1063. fileTitle: "交强电子保单",
  1064. filename: this.orderInfo.jqpolicyno,
  1065. fileurl: res.data.jqxPolicyUrl
  1066. });
  1067. }
  1068. if (res.data.jqxFlagUrl) {
  1069. this.oldfileList.push({
  1070. fileTitle: "交强电子标志",
  1071. filename: this.orderInfo.jqpolicyno,
  1072. fileurl: res.data.jqxFlagUrl
  1073. });
  1074. }
  1075. if (res.data.syxPolicyUrl) {
  1076. businessList.push({
  1077. fileTitle: "商业电子保单",
  1078. filename: this.orderInfo.sypolicyno,
  1079. fileurl: res.data.syxPolicyUrl
  1080. });
  1081. }
  1082. if (
  1083. res.data.jyxInfoList &&
  1084. res.data.jyxInfoList.length > 0
  1085. ) {
  1086. res.data.jyxInfoList.forEach(val => {
  1087. accidentList.push({
  1088. fileTitle: "驾意险保单",
  1089. filename: "驾意险保单",
  1090. fileurl: val.jyx_policy_url
  1091. });
  1092. });
  1093. }
  1094. } else {
  1095. this.$message.error(res.msg);
  1096. }
  1097. });
  1098. }
  1099. break;
  1100. }
  1101. break;
  1102. case "中煤财险":
  1103. if (this.orderInfo.jqpolicyno) {
  1104. this.$api.letter
  1105. .ZhongmeigetPolicyPrint({
  1106. companyId: res.data.id,
  1107. riskCode: "0507",
  1108. type: "2", //2:保单
  1109. })
  1110. .then((res) => {
  1111. if (res.data && res.data[0]) {
  1112. this.oldfileList.push({
  1113. fileTitle: "交强电子保单",
  1114. filename: this.orderInfo.jqpolicyno,
  1115. fileurl: res.data[0],
  1116. });
  1117. } else {
  1118. this.$message.error(res.msg);
  1119. }
  1120. });
  1121. this.$api.letter
  1122. .ZhongmeigetPolicyPrint({
  1123. companyId: res.data.id,
  1124. riskCode: "0507",
  1125. type: "1", // 1:标志
  1126. })
  1127. .then((res) => {
  1128. if (res.data && res.data[0]) {
  1129. this.oldfileList.push({
  1130. fileTitle: "交强电子标志",
  1131. filename: this.orderInfo.jqpolicyno,
  1132. fileurl: res.data[0],
  1133. });
  1134. } else {
  1135. this.$message.error(res.msg);
  1136. }
  1137. });
  1138. }
  1139. if (this.orderInfo.sypolicyno) {
  1140. this.$api.letter
  1141. .ZhongmeigetPolicyPrint({
  1142. companyId: res.data.id,
  1143. riskCode: "0510",
  1144. type: "2", //2:保单
  1145. })
  1146. .then((res) => {
  1147. if (res.data && res.data[0]) {
  1148. businessList.push({
  1149. fileTitle: "商业电子保单",
  1150. filename: this.orderInfo.sypolicyno,
  1151. fileurl: res.data[0],
  1152. });
  1153. } else {
  1154. this.$message.error(res.msg);
  1155. }
  1156. });
  1157. }
  1158. if (this.orderInfo.crossInsurance.length > 0) {
  1159. this.orderInfo.crossInsurance.map((ele) => {
  1160. this.$api.letter
  1161. .ZhongmeigetPolicyPrint({
  1162. ridePolicyNo: ele.ridePolicyNo,
  1163. companyId: res.data.id,
  1164. riskCode: "0513",
  1165. type: "2", //2:保单
  1166. })
  1167. .then((res) => {
  1168. if (res.code == 200 && res.data) {
  1169. accidentList.push({
  1170. fileTitle: "驾意险保单",
  1171. filename: this.orderInfo.sypolicyno,
  1172. fileurl: res.data[0],
  1173. });
  1174. } else {
  1175. this.$message.error(res.msg);
  1176. }
  1177. });
  1178. });
  1179. }
  1180. break;
  1181. case "永诚财险":
  1182. if (this.orderInfo.jqpolicyno) {
  1183. this.$api.letter
  1184. .yongchenggetPolicyPrint({
  1185. companyId: res.data.id,
  1186. riskCode: "0507",
  1187. type: "2", //2:保单
  1188. })
  1189. .then((res) => {
  1190. if (res.code == 200 && res.data) {
  1191. if (res.data.jqUrl) {
  1192. this.oldfileList.push({
  1193. fileTitle: "交强电子保单",
  1194. filename: this.orderInfo.jqpolicyno,
  1195. fileurl: res.data.jqUrl,
  1196. });
  1197. }
  1198. if (res.data.jqFlagUrl) {
  1199. this.oldfileList.push({
  1200. fileTitle: "交强电子标志",
  1201. filename: this.orderInfo.jqpolicyno,
  1202. fileurl: res.data.jqFlagUrl,
  1203. });
  1204. }
  1205. } else {
  1206. this.$message.error(res.msg);
  1207. }
  1208. });
  1209. }
  1210. if (this.orderInfo.sypolicyno) {
  1211. this.$api.letter
  1212. .yongchenggetPolicyPrint({
  1213. companyId: res.data.id,
  1214. riskCode: "0510",
  1215. type: "2", //2:保单
  1216. })
  1217. .then((res) => {
  1218. if (res.data && res.data.syUrl) {
  1219. businessList.push({
  1220. fileTitle: "商业电子保单",
  1221. filename: this.orderInfo.sypolicyno,
  1222. fileurl: res.data.syUrl,
  1223. });
  1224. } else {
  1225. this.$message.error(res.msg);
  1226. }
  1227. });
  1228. }
  1229. if (this.orderInfo.crossInsurance.length > 0) {
  1230. this.orderInfo.crossInsurance.map((ele) => {
  1231. this.$api.letter
  1232. .yongchenggetPolicyPrint({
  1233. companyId: res.data.id,
  1234. policyNumber: ele.policyNumber,
  1235. riskCode: "0513",
  1236. type: "2", //2:保单
  1237. })
  1238. .then((res) => {
  1239. if (res.code == 200 && res.data) {
  1240. accidentList.push({
  1241. fileTitle: "驾意险保单",
  1242. filename: ele.policyNumber,
  1243. fileurl: res.data.jyUrl,
  1244. });
  1245. } else {
  1246. this.$message.error(res.msg);
  1247. }
  1248. });
  1249. });
  1250. }
  1251. break;
  1252. case "国任财险":
  1253. if (this.orderInfo.jqpolicyno) {
  1254. this.$api.letter
  1255. .guoRengetPolicyPrint({
  1256. companyId: res.data.id,
  1257. riskCode: "0507",
  1258. type: "2", //2:保单
  1259. })
  1260. .then((res) => {
  1261. if (res.data) {
  1262. this.oldfileList.push({
  1263. fileTitle: "交强电子保单",
  1264. filename: this.orderInfo.jqpolicyno,
  1265. fileurl: res.data,
  1266. });
  1267. } else {
  1268. this.$message.error(res.msg);
  1269. }
  1270. });
  1271. this.$api.letter
  1272. .guoRengetPolicyPrint({
  1273. companyId: res.data.id,
  1274. riskCode: "0507",
  1275. type: "1", //1:标志
  1276. })
  1277. .then((res) => {
  1278. if (res.data) {
  1279. this.oldfileList.push({
  1280. fileTitle: "交强电子标志",
  1281. filename: this.orderInfo.jqpolicyno,
  1282. fileurl: res.data,
  1283. });
  1284. } else {
  1285. this.$message.error(res.msg);
  1286. }
  1287. });
  1288. }
  1289. if (this.orderInfo.sypolicyno) {
  1290. this.$api.letter
  1291. .guoRengetPolicyPrint({
  1292. companyId: res.data.id,
  1293. riskCode: "0510",
  1294. type: "2", //2:保单
  1295. })
  1296. .then((res) => {
  1297. if (res.data) {
  1298. businessList.push({
  1299. fileTitle: "商业电子保单",
  1300. filename: this.orderInfo.sypolicyno,
  1301. fileurl: res.data,
  1302. });
  1303. } else {
  1304. this.$message.error(res.msg);
  1305. }
  1306. });
  1307. }
  1308. if (this.orderInfo.crossInsurance.length > 0) {
  1309. this.orderInfo.crossInsurance.map((ele) => {
  1310. this.$api.letter
  1311. .guoRengetPolicyPrint({
  1312. companyId: res.data.id,
  1313. policyNumber: ele.policyNumber,
  1314. riskCode: "0513",
  1315. type: "2", //2:保单
  1316. })
  1317. .then((res) => {
  1318. if (res.data) {
  1319. accidentList.push({
  1320. fileTitle: "驾意险保单",
  1321. filename: ele.policyNumber,
  1322. fileurl: res.data,
  1323. });
  1324. } else {
  1325. this.$message.error(res.msg);
  1326. }
  1327. });
  1328. });
  1329. }
  1330. break;
  1331. case "紫金财险":
  1332. if (this.orderInfo.jqpolicyno) {
  1333. this.$api.letter
  1334. .zijingetPolicyPrint({
  1335. companyId: res.data.id,
  1336. riskCode: "0507",
  1337. type: "2", //2:保单
  1338. })
  1339. .then((res) => {
  1340. if (res.data) {
  1341. this.oldfileList.push({
  1342. fileTitle: "交强电子保单",
  1343. filename: this.orderInfo.jqpolicyno,
  1344. fileurl: res.data,
  1345. });
  1346. } else {
  1347. this.$message.error(res.msg);
  1348. }
  1349. });
  1350. this.$api.letter
  1351. .zijingetPolicyPrint({
  1352. companyId: res.data.id,
  1353. riskCode: "0507",
  1354. type: "1", //1:标志
  1355. })
  1356. .then((res) => {
  1357. if (res.data) {
  1358. this.oldfileList.push({
  1359. fileTitle: "交强电子标志",
  1360. filename: this.orderInfo.jqpolicyno,
  1361. fileurl: res.data,
  1362. });
  1363. } else {
  1364. this.$message.error(res.msg);
  1365. }
  1366. });
  1367. }
  1368. if (this.orderInfo.sypolicyno) {
  1369. this.$api.letter
  1370. .zijingetPolicyPrint({
  1371. companyId: res.data.id,
  1372. riskCode: "0510",
  1373. type: "2", //2:保单
  1374. })
  1375. .then((res) => {
  1376. if (res.data) {
  1377. businessList.push({
  1378. fileTitle: "商业电子保单",
  1379. filename: this.orderInfo.sypolicyno,
  1380. fileurl: res.data,
  1381. });
  1382. } else {
  1383. this.$message.error(res.msg);
  1384. }
  1385. });
  1386. }
  1387. if (this.orderInfo.crossInsurance.length > 0) {
  1388. this.orderInfo.crossInsurance.map((ele) => {
  1389. this.$api.letter
  1390. .zijingetPolicyPrint({
  1391. companyId: res.data.id,
  1392. policyNumber: ele.policyNumber,
  1393. riskCode: "0513",
  1394. type: "2", //2:保单
  1395. })
  1396. .then((res) => {
  1397. if (res.data) {
  1398. accidentList.push({
  1399. fileTitle: "驾意险保单",
  1400. filename: ele.policyNumber,
  1401. fileurl: res.data,
  1402. });
  1403. } else {
  1404. this.$message.error(res.msg);
  1405. }
  1406. });
  1407. });
  1408. }
  1409. break;
  1410. case "渤海财险":
  1411. if (this.orderInfo.jqpolicyno) {
  1412. this.$api.letter
  1413. .getPolicyPrintboHai({
  1414. companyId: res.data.id,
  1415. })
  1416. .then((res) => {
  1417. if (res.code == 200 && res.data) {
  1418. if (res.data.jqxPolicyUrl) {
  1419. this.oldfileList.push({
  1420. fileTitle: "交强电子保单",
  1421. filename: this.orderInfo.jqpolicyno,
  1422. fileurl: res.data.jqxPolicyUrl,
  1423. });
  1424. }
  1425. if (res.data.jqxFlagUrl) {
  1426. this.oldfileList.push({
  1427. fileTitle: "交强电子标志",
  1428. filename: this.orderInfo.jqpolicyno,
  1429. fileurl: res.data.jqxFlagUrl,
  1430. });
  1431. }
  1432. if (res.data.syxPolicyUrl) {
  1433. businessList.push({
  1434. fileTitle: "商业电子保单",
  1435. filename: this.orderInfo.sypolicyno,
  1436. fileurl: res.data.syxPolicyUrl,
  1437. });
  1438. }
  1439. if (
  1440. res.data.jyxInfoList &&
  1441. res.data.jyxInfoList.length > 0
  1442. ) {
  1443. res.data.jyxInfoList.forEach((val) => {
  1444. accidentList.push({
  1445. fileTitle: "驾意险保单",
  1446. filename: "驾意险保单",
  1447. fileurl: val.jyx_policy_url,
  1448. });
  1449. });
  1450. }
  1451. } else {
  1452. this.$message.error(res.msg);
  1453. }
  1454. });
  1455. }
  1456. break;
  1457. case "恒邦财险":
  1458. case "安盛天平":
  1459. case "中国人寿":
  1460. case "太平财险":
  1461. case "华农财险":
  1462. case "众安财险":
  1463. if (this.orderInfo.jqpolicyno || this.orderInfo.sypolicyno) {
  1464. this.$api.letter
  1465. .pythongetPolicyPrint({
  1466. subOrderNo: res.data.id,
  1467. })
  1468. .then((res) => {
  1469. if (res.code == 200 && res.data) {
  1470. if (res.data.jqxPolicyUrl) {
  1471. this.oldfileList.push({
  1472. fileTitle: "交强电子保单",
  1473. filename: this.orderInfo.jqpolicyno,
  1474. fileurl: res.data.jqxPolicyUrl,
  1475. });
  1476. }
  1477. if (res.data.jqxFlagUrl) {
  1478. this.oldfileList.push({
  1479. fileTitle: "交强电子标志",
  1480. filename: this.orderInfo.jqpolicyno,
  1481. fileurl: res.data.jqxFlagUrl,
  1482. });
  1483. }
  1484. if (res.data.syxPolicyUrl) {
  1485. businessList.push({
  1486. fileTitle: "商业电子保单",
  1487. filename: this.orderInfo.sypolicyno,
  1488. fileurl: res.data.syxPolicyUrl,
  1489. });
  1490. }
  1491. if (
  1492. res.data.jyxInfoList &&
  1493. res.data.jyxInfoList.length > 0
  1494. ) {
  1495. res.data.jyxInfoList.forEach((val) => {
  1496. accidentList.push({
  1497. fileTitle: "驾意险保单",
  1498. filename: "驾意险保单",
  1499. fileurl: val.jyx_policy_url,
  1500. });
  1501. });
  1502. }
  1503. } else {
  1504. this.$message.error(res.msg);
  1505. }
  1506. });
  1507. }
  1508. break;
  1509. case "大家财险":
  1510. if (this.orderInfo.jqpolicyno) {
  1511. this.$api.letter
  1512. .obtainWarranty({
  1513. companyId: res.data.id,
  1514. riskCode: "0507",
  1515. type: "2", //2:保单
  1516. })
  1517. .then((res) => {
  1518. if (res.data) {
  1519. this.oldfileList.push({
  1520. fileTitle: "交强电子保单",
  1521. filename: this.orderInfo.jqpolicyno,
  1522. fileurl: res.data,
  1523. });
  1524. } else {
  1525. this.$message.error(res.msg);
  1526. }
  1527. });
  1528. this.$api.letter
  1529. .obtainWarranty({
  1530. companyId: res.data.id,
  1531. riskCode: "0507",
  1532. type: "1", //1:标志
  1533. })
  1534. .then((res) => {
  1535. if (res.data) {
  1536. this.oldfileList.push({
  1537. fileTitle: "交强电子标志",
  1538. filename: this.orderInfo.jqpolicyno,
  1539. fileurl: res.data,
  1540. });
  1541. } else {
  1542. this.$message.error(res.msg);
  1543. }
  1544. });
  1545. }
  1546. if (this.orderInfo.sypolicyno) {
  1547. this.$api.letter
  1548. .obtainWarranty({
  1549. companyId: res.data.id,
  1550. riskCode: "0510",
  1551. type: "2", //2:保单
  1552. })
  1553. .then((res) => {
  1554. if (res.data) {
  1555. businessList.push({
  1556. fileTitle: "商业电子保单",
  1557. filename: this.orderInfo.sypolicyno,
  1558. fileurl: res.data,
  1559. });
  1560. }
  1561. });
  1562. }
  1563. if (this.orderInfo.crossInsurance.length > 0) {
  1564. this.orderInfo.crossInsurance.map((ele) => {
  1565. this.$api.letter
  1566. .zijingetPolicyPrint({
  1567. companyId: res.data.id,
  1568. policyNumber: ele.policyNumber,
  1569. riskCode: "0513",
  1570. type: "2", //2:保单
  1571. })
  1572. .then((res) => {
  1573. if (res.data) {
  1574. accidentList.push({
  1575. fileTitle: "驾意险保单",
  1576. filename: ele.policyNumber,
  1577. fileurl: res.data,
  1578. });
  1579. } else {
  1580. this.$message.error(res.msg);
  1581. }
  1582. });
  1583. });
  1584. }
  1585. break;
  1586. default:
  1587. }
  1588. }
  1589. let obj = {
  1590. oldfileList: this.oldfileList,
  1591. businessList,
  1592. accidentList
  1593. }
  1594. this.$refs.detailsDialog.warrantyFun(obj);
  1595. }
  1596. this.feeDetailInfo = res.data.orderFeeResult;
  1597. this.oldFeeInfo = res.data.adjustFeeDescVo;
  1598. this.adjustFeeDescInfo = { ...this.oldFeeInfo }
  1599. // this.quotedetailsdialogVisible = true;
  1600. console.log(this.orderInfo)
  1601. this.$refs.detailsDialog.setBackupVisible(true);
  1602. } else {
  1603. this.$message.error("订单获取失败");
  1604. }
  1605. });
  1606. },
  1607. // 设置每页条数
  1608. applyhandleSizeChange(val) {
  1609. this.pageSize = val;
  1610. this.pageNum = 1;
  1611. this.pageRequest.pageNum = 1;
  1612. this.pageRequest.pageSize = val;
  1613. this.findPage();
  1614. },
  1615. // 当前页
  1616. applyhandleCurrentChange(val) {
  1617. this.pageNum = val;
  1618. this.pageRequest.pageNum = val;
  1619. this.findPage();
  1620. },
  1621. handleRowChange(row) {
  1622. if (!row.expanded) {
  1623. this.$api.letter.querySonOrders({ orderNo: row.orderno }).then(res => {
  1624. if (res.code == '200' && res.data.length != 0) {
  1625. this.pageResult.map(item => {
  1626. if (item.orderno === row.orderno) {
  1627. item.insAreaCompanyList = res.data;
  1628. }
  1629. return item;
  1630. })
  1631. row.expanded = !row.expanded;
  1632. this.$refs.expandTable.toggleRowExpansion(row, row.expanded);
  1633. } else {
  1634. this.$message.info("暂无数据");
  1635. }
  1636. })
  1637. } else {
  1638. row.expanded = !row.expanded;
  1639. this.$refs.expandTable.toggleRowExpansion(row, row.expanded);
  1640. }
  1641. },
  1642. //数据
  1643. findPage() {
  1644. this.loading = true;
  1645. this.$api.task.queryPageOrder(this.pageRequest).then((res) => {
  1646. if (res.code == "200") {
  1647. this.loading = false;
  1648. this.pageResult = res.data.content;
  1649. this.pageNum = res.data.pageNum;
  1650. this.totalSize = res.data.totalSize;
  1651. this.pageResult.forEach(val => {
  1652. this.$set(val, "expanded", false);
  1653. });
  1654. } else {
  1655. this.loading = false;
  1656. }
  1657. })
  1658. },
  1659. //查询
  1660. onSubmit() {
  1661. this.pageRequest.pageNum = 1;
  1662. this.pageRequest.pageSize = 20;
  1663. this.findPage();
  1664. },
  1665. //时间js
  1666. monthChange(e) {
  1667. if (e === null) {
  1668. this.pageRequest.startDate = e;
  1669. this.pageRequest.endDate = e;
  1670. } else {
  1671. this.pageRequest.startDate = e[0];
  1672. this.pageRequest.endDate = e[1];
  1673. }
  1674. },
  1675. tableRowColor({ row, rowIndex }) {
  1676. console.log(row.problemOrder);
  1677. if (row.problemOrder == 1) {
  1678. return "blue-row";
  1679. }
  1680. },
  1681. }
  1682. }
  1683. </script>
  1684. <style lang="scss" scoped>
  1685. /deep/ {
  1686. .el-table .row-expand-cover .cell .el-table__expand-icon {
  1687. display: none;
  1688. }
  1689. .el-descriptions__body {
  1690. padding: 10px 50px;
  1691. box-sizing: border-box;
  1692. color: rgb(226, 118, 10);
  1693. }
  1694. .el-descriptions-item__label {
  1695. &:not(.is-bordered-label) {
  1696. color: #333;
  1697. }
  1698. }
  1699. .saomazhifucodeClass .el-dialog__body,
  1700. .saomazhifucodeClass .el-dialog__header {
  1701. padding: 0;
  1702. }
  1703. .el-input.is-disabled .el-input__inner {
  1704. color: #333;
  1705. }
  1706. }
  1707. .ORcodebody {
  1708. width: 100%;
  1709. height: auto;
  1710. box-sizing: border-box;
  1711. }
  1712. .code_title {
  1713. width: 100%;
  1714. height: 50px;
  1715. background-color: #fdcb08;
  1716. justify-content: center;
  1717. }
  1718. .code_title>span {
  1719. font-size: 22px;
  1720. color: #000;
  1721. font-weight: bold;
  1722. }
  1723. .ORcode {
  1724. width: 100%;
  1725. background: #fff;
  1726. height: auto;
  1727. display: flex;
  1728. justify-content: center;
  1729. align-items: center;
  1730. padding: 30px;
  1731. box-sizing: border-box;
  1732. border-bottom: 6px dotted #fdcb08;
  1733. }
  1734. .ORcode>div {
  1735. width: 180px;
  1736. height: 180px;
  1737. border: 1px solid #000;
  1738. border-radius: 5px;
  1739. }
  1740. .ORtitle {
  1741. background: #fff;
  1742. width: 100%;
  1743. padding: 20px;
  1744. box-sizing: border-box;
  1745. border-bottom: 1px solid #f2f2f2;
  1746. }
  1747. .ORtitle>div {
  1748. width: 100%;
  1749. margin: 10px 0;
  1750. font-weight: bold;
  1751. font-size: 14px;
  1752. display: flex;
  1753. align-items: center;
  1754. }
  1755. .ORtitle>div>span:nth-child(1) {
  1756. color: #979797;
  1757. text-align: end;
  1758. width: 150px;
  1759. }
  1760. .ORtitle>div>span:nth-child(2) {
  1761. color: #000;
  1762. margin-left: 10px;
  1763. }
  1764. </style>
  1765. <style scoped>
  1766. #qqq {
  1767. background-color: #111;
  1768. width: 300px;
  1769. height: 300px;
  1770. margin: 0 auto;
  1771. /*水平居中*/
  1772. position: relative;
  1773. }
  1774. #qrCode {
  1775. display: inline-block;
  1776. margin: 0 auto;
  1777. /*水平居中*/
  1778. position: relative;
  1779. top: 15%;
  1780. }
  1781. #qrCode img {
  1782. width: 200px;
  1783. height: 200px;
  1784. background-color: #fff;
  1785. padding: 6px;
  1786. }
  1787. .leftContainer {
  1788. width: 80px;
  1789. position: fixed;
  1790. top: 79px;
  1791. left: 30px;
  1792. }
  1793. .leftContainer .el-col {
  1794. width: 80px;
  1795. height: 80px;
  1796. border-bottom: 1px solid #4d5c6f;
  1797. background: #526176;
  1798. cursor: pointer;
  1799. color: #a6aeb9;
  1800. border-radius: 0;
  1801. }
  1802. .leftContainer .el-col a {
  1803. display: block;
  1804. color: #a6aeb9;
  1805. text-decoration: none;
  1806. }
  1807. .leftContainer .el-col a:hover {
  1808. color: #fff;
  1809. }
  1810. .leftContainer .el-col a.active {
  1811. color: #fff;
  1812. }
  1813. .leftContainer .el-col i {
  1814. font-size: 30px;
  1815. margin: 15px 0px 5px;
  1816. }
  1817. .rightContainer {
  1818. width: calc(100vw - 160px);
  1819. margin-left: 100px;
  1820. }
  1821. .rightContainer .header .el-col {
  1822. font-size: 18px;
  1823. font-weight: bold;
  1824. }
  1825. .rightContainer .bodyTitle {
  1826. height: 40px;
  1827. background: #f3f3f3;
  1828. border: 1px solid #dddddd;
  1829. }
  1830. .rightContainer .bodyTitle>label {
  1831. margin: 0px 15px;
  1832. font-weight: bold;
  1833. }
  1834. .rightContainer #demo2 .body,
  1835. .rightContainer #demo6 .body {
  1836. border: 1px solid #ddd;
  1837. padding: 15px;
  1838. border-top: none;
  1839. }
  1840. .rightContainer .el-card {
  1841. margin-bottom: 15px;
  1842. }
  1843. .body .el-row .el-col label {
  1844. text-align: right;
  1845. width: 80px;
  1846. font-size: 14px;
  1847. width: 100%;
  1848. line-height: 36px;
  1849. display: inline-block;
  1850. box-sizing: border-box;
  1851. }
  1852. .disabledInput {
  1853. width: 80% !important;
  1854. background-color: #f5f7fa;
  1855. text-align: center !important;
  1856. max-width: 200px;
  1857. border: 1px solid #e4e7ed;
  1858. color: #c0c4cc;
  1859. cursor: not-allowed;
  1860. border-radius: 4px;
  1861. box-sizing: border-box;
  1862. padding: 0px 10px;
  1863. height: 36px;
  1864. margin: 20px 10%;
  1865. }
  1866. /* 上传图片样式Start */
  1867. .avatar-uploader .el-upload {
  1868. border: 1px dashed #d9d9d9;
  1869. border-radius: 6px;
  1870. cursor: pointer;
  1871. position: relative;
  1872. overflow: hidden;
  1873. }
  1874. .avatar-uploader .el-upload:hover {
  1875. border-color: #409eff;
  1876. }
  1877. .avatar-uploader-icon {
  1878. font-size: 28px;
  1879. color: #8c939d;
  1880. width: 100px;
  1881. height: 100px;
  1882. line-height: 100px;
  1883. text-align: center;
  1884. border: 1px dashed #d9d9d9;
  1885. }
  1886. .avatar {
  1887. border: 1px dashed #d9d9d9;
  1888. padding: 5px;
  1889. border-radius: 6px;
  1890. width: 100px;
  1891. height: 100px;
  1892. display: block;
  1893. }
  1894. .imageStyle {
  1895. display: inline-block;
  1896. width: 100px;
  1897. height: 100px;
  1898. box-shadow: #ddd 0px 0px 5px;
  1899. margin-right: 20px;
  1900. }
  1901. /* 上传图片样式End */
  1902. .dis {
  1903. display: flex;
  1904. }
  1905. .align {
  1906. align-items: center;
  1907. }
  1908. .jus {
  1909. justify-content: space-between;
  1910. }
  1911. .display {
  1912. display: flex;
  1913. justify-content: center;
  1914. align-items: center;
  1915. padding: 10px;
  1916. box-sizing: border-box;
  1917. }
  1918. .block {
  1919. margin-top: 10px;
  1920. }
  1921. .page {
  1922. padding: 14px;
  1923. box-sizing: border-box;
  1924. }
  1925. .el-select--medium {
  1926. vertical-align: bottom !important;
  1927. }
  1928. .widths {
  1929. width: 220px;
  1930. }
  1931. .demo-table-expand {
  1932. width: 100%;
  1933. height: auto;
  1934. padding: 10px 50px;
  1935. font-size: 14px;
  1936. }
  1937. .demo-table-expand-time {
  1938. width: 600px;
  1939. }
  1940. .demo-table-expand-time>div {
  1941. margin: 0 10px;
  1942. }
  1943. .icon-img {
  1944. display: block;
  1945. width: 30px;
  1946. height: 30px;
  1947. }
  1948. .Enclosure {
  1949. width: 100%;
  1950. background-color: #fff;
  1951. padding: 20px;
  1952. box-sizing: border-box;
  1953. margin-bottom: 15px;
  1954. border-radius: 6px;
  1955. border: 1px solid #ebeef5;
  1956. transition: all 0.2s ease-in-out;
  1957. box-shadow: 0 2px 12px 0 rgba(0, 0, 0, 0.1);
  1958. }
  1959. .headers {
  1960. display: flex;
  1961. align-items: center;
  1962. justify-content: space-between;
  1963. flex-wrap: wrap;
  1964. margin: 5px 0;
  1965. font-weight: bold;
  1966. color: #333;
  1967. }
  1968. /* 内容待定 */
  1969. .headers_Custom>div {
  1970. padding: 20px 40px;
  1971. font-size: 16px;
  1972. }
  1973. .headers_Custom>div>span {
  1974. color: rgb(226, 118, 10);
  1975. }
  1976. .back {
  1977. color: #303133;
  1978. font-weight: 700;
  1979. }
  1980. .u-f-ac {
  1981. -webkit-box-align: center;
  1982. align-items: center;
  1983. /* padding: 10px; */
  1984. }
  1985. .bodyTitle {
  1986. height: 40px;
  1987. background: #f3f3f3;
  1988. border: 1px solid #dddddd;
  1989. line-height: 40px;
  1990. padding: 0 20px;
  1991. box-sizing: border-box;
  1992. }
  1993. .bjdbody {
  1994. width: 100%;
  1995. height: auto;
  1996. background-color: rgb(199, 20, 45);
  1997. padding: 20px 10px 0 10px;
  1998. box-sizing: border-box;
  1999. border-radius: 8px;
  2000. }
  2001. .bjdCarMessage,
  2002. .bjdCarSum {
  2003. width: 100%;
  2004. height: auto;
  2005. background-color: #fff;
  2006. border-radius: 8px;
  2007. margin-bottom: 10px;
  2008. padding-bottom: 10px;
  2009. }
  2010. .bjdfooter {
  2011. border-top: 1px solid #fff;
  2012. padding: 10px;
  2013. box-sizing: border-box;
  2014. color: #fff;
  2015. }
  2016. .bjdCarSum>div {
  2017. width: 100%;
  2018. padding: 15px 20px;
  2019. box-sizing: border-box;
  2020. font-weight: bold;
  2021. color: #000;
  2022. border-bottom: 1px solid #f2f2f2;
  2023. }
  2024. .bjdCarMessage1 {
  2025. height: 80px;
  2026. padding: 16px;
  2027. box-sizing: border-box;
  2028. border-bottom: 1px solid #f2f2f2;
  2029. display: flex;
  2030. align-items: center;
  2031. color: #000;
  2032. }
  2033. .bjdCarMessage1>.f-c>span:nth-child(1) {
  2034. font-size: 18px;
  2035. font-weight: bold;
  2036. }
  2037. .bjdCarMessage1>img,
  2038. .bjdfooter>img {
  2039. margin-right: 30px;
  2040. }
  2041. .bjdCarMessage1 .f-c>span:nth-child(2),
  2042. .bjdCarMessage1 .f-c>span:nth-child(3) {
  2043. font-size: 12px;
  2044. margin-top: 5px;
  2045. }
  2046. .bjdCarMessage2_car>span:nth-child(1) {
  2047. color: #000;
  2048. font-weight: bold;
  2049. }
  2050. .bjdCarMessage2_car>span:nth-child(2) {
  2051. color: #999;
  2052. }
  2053. .bjdCarMessage2>ul>li {
  2054. margin: 20px 0;
  2055. }
  2056. .Risk {
  2057. width: 100%;
  2058. height: auto;
  2059. display: flex;
  2060. flex-direction: column;
  2061. align-items: center;
  2062. font-size: 12px;
  2063. }
  2064. .Risk_title {
  2065. width: 100%;
  2066. height: 40px;
  2067. }
  2068. .Risk_title>div {
  2069. background: rgb(199, 20, 45);
  2070. color: rgb(255, 255, 255);
  2071. height: 100%;
  2072. font-weight: 500;
  2073. width: 33.3%;
  2074. padding: 10px 20px;
  2075. box-sizing: border-box;
  2076. border: #fff solid 1px;
  2077. display: flex;
  2078. justify-content: center;
  2079. align-items: center;
  2080. border-bottom: none;
  2081. }
  2082. .Risk_title>div:nth-child(2) {
  2083. border-left: none;
  2084. border-right: none;
  2085. }
  2086. .Risk_data {
  2087. width: 100%;
  2088. height: 40px;
  2089. }
  2090. .Risk_data>div {
  2091. background: #fbf6f7;
  2092. color: rgb(51, 51, 51);
  2093. height: 100%;
  2094. font-weight: 500;
  2095. width: 33.3%;
  2096. padding: 10px 20px;
  2097. box-sizing: border-box;
  2098. border: #fff solid 1px;
  2099. display: flex;
  2100. justify-content: center;
  2101. align-items: center;
  2102. border-bottom: none;
  2103. }
  2104. .Risk_data>div :nth-child(2) {
  2105. border-left: none;
  2106. border-right: none;
  2107. }
  2108. .Risk_title>div :nth-child(3) {
  2109. border-top-right-radius: 10px;
  2110. }
  2111. .jyxStyle>span {
  2112. display: inline-block;
  2113. text-align: center;
  2114. }
  2115. .FeeEnclosure /deep/ table {
  2116. width: 100% !important;
  2117. }
  2118. .FeeEnclosure /deep/ .cell {
  2119. text-align: center;
  2120. }
  2121. .FeeEnclosure /deep/ .el-table__empty-block {
  2122. width: 100% !important;
  2123. }
  2124. .FeeEnclosure .feeadjust-input {
  2125. width: 35%;
  2126. height: 20px;
  2127. font-size: 13px;
  2128. }
  2129. /deep/ .el-table .el-table__row.blue-row {
  2130. background: #409eff;
  2131. opacity: .8;
  2132. color: #fff;
  2133. }
  2134. /deep/.el-table .el-table__row.blue-row:hover{
  2135. color: #000;
  2136. }
  2137. </style>