index.vue 27 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540541542543544545546547548549550551552553554555556557558559560561562563564565566567568569570571572573574575576577578579580581582583584585586587588589590591592593594595596597598599600601602603604605606607608609610611612613614615616617618619620621622623624625626627628629630631632633634635636637638639640641642643644645646647648649650651652653654655656657658659660661662663664665666667668669670671672673674675676677678679680681682683684685686687688689690691692693694695696697698699700701702703704705706707708709710711712713714715716717718719720721722723724725726727728729730731732733734735736737738739740741742743744745746747748749750751752753754755
  1. <template>
  2. <zj-page-container>
  3. <zj-page-fill class="neibuview">
  4. <template v-if="payData.length">
  5. <zj-form-container>
  6. <template v-for="(item, index) in payData">
  7. <zj-form-module
  8. :key="index"
  9. :title="`支付费用${index + 1} 【支付订单号:${item.orderId}】`"
  10. :form-data="payData[index]"
  11. :form-items="
  12. [formItemsL1, formItems(item)][!!~[1, 2, 3].indexOf(workOrderType) ? 0 : workOrderType == 4 ? 1 : 0]
  13. "
  14. >
  15. <div v-if="item.examineStatus === 'FAIL'" style="text-align: right">
  16. <el-button size="mini" type="danger" plain @click="enginMaterialCancelFun(item)">取消申请</el-button>
  17. </div>
  18. </zj-form-module>
  19. </template>
  20. </zj-form-container>
  21. </template>
  22. <el-empty v-else description="暂时没有支付信息"></el-empty>
  23. </zj-page-fill>
  24. </zj-page-container>
  25. </template>
  26. <script>
  27. import { listPageV2 } from '@/api/workOrder/appraise'
  28. import { tableDataParsing } from '@/utils/common.js'
  29. import { changeOrderGetOrderList, enginMaterialDetailWorker, enginMaterialCancel } from '@/api/workOrderPool.js'
  30. import { orderBaseDetail } from '@/api/workOrderPool.js'
  31. import { number } from 'echarts'
  32. export default {
  33. props: {
  34. id: {
  35. type: [String, Number],
  36. default: null
  37. },
  38. workOrderType: {
  39. type: Number,
  40. default: 1 // 1普通工单, 4维保工单
  41. }
  42. },
  43. data() {
  44. return {
  45. payData: [],
  46. orderBaseDetail: {}
  47. }
  48. },
  49. watch: {
  50. id: {
  51. handler(newVal, oldVal) {
  52. this.getxiangqing()
  53. },
  54. deep: true,
  55. immediate: true
  56. }
  57. },
  58. computed: {
  59. formItemsL1() {
  60. return [
  61. {
  62. md: 24,
  63. name: 'slot-component',
  64. formItemAttributes: {
  65. label: '费用信息'
  66. },
  67. render: (h, { props, onInput }) => {
  68. var { formData } = props
  69. return (
  70. <el-descriptions
  71. border
  72. title=""
  73. column={3}
  74. colon={false}
  75. labelStyle={{ width: '11%' }}
  76. contentStyle={{ width: '22.3%' }}
  77. >
  78. <el-descriptions-item label="网点名称">{`(${formData.websitId})${formData.websitName}`}</el-descriptions-item>
  79. <el-descriptions-item label="工单号">{formData.workerOrderId}</el-descriptions-item>
  80. <el-descriptions-item label="工程师编号">
  81. {formData.workerNumber || formData.workerId}
  82. </el-descriptions-item>
  83. <el-descriptions-item label="工程师名称">{formData.workerName}</el-descriptions-item>
  84. <el-descriptions-item label="工程师电话">{formData.workerMobile}</el-descriptions-item>
  85. <el-descriptions-item label="支付方式">
  86. {{ WECHAT: '微信支付', LINE: '线下支付', EXAMINE: '审批' }[formData.payType] || '微信支付'}
  87. </el-descriptions-item>
  88. <el-descriptions-item label="客户名称">{formData.pgOrderBase.userName}</el-descriptions-item>
  89. <el-descriptions-item label="电话号码">{formData.userMobile}</el-descriptions-item>
  90. <el-descriptions-item label="支付状态">
  91. {{ CANCEL: '取消', WAIT: '待支付', PAID: '已支付' }[formData.payStatus]}
  92. </el-descriptions-item>
  93. <el-descriptions-item label="支付总金额">{this.toFixed(formData.totalAmount)}</el-descriptions-item>
  94. <el-descriptions-item label="总手续费">{formData.commissionAmount}</el-descriptions-item>
  95. <el-descriptions-item label="支付时间">{formData.payTime}</el-descriptions-item>
  96. <el-descriptions-item label="分账状态">
  97. {{ WAIT: '待结算', OK: '完成', YC: '异常结算', LINE: '线下结算' }[formData.settlementStatus]}
  98. </el-descriptions-item>
  99. {this?.workOrderType == 4
  100. ? [
  101. <el-descriptions-item label=""></el-descriptions-item>,
  102. <el-descriptions-item label="审批状态">
  103. {{ WAIT: '待审', OK: '审批', FAIL: '驳回', NO: '取消' }[formData.examineStatus] || ''}
  104. </el-descriptions-item>,
  105. <el-descriptions-item label="审批人">{formData.examineName}</el-descriptions-item>,
  106. <el-descriptions-item label="审批时间">{formData.examineTime}</el-descriptions-item>
  107. ]
  108. : null}
  109. </el-descriptions>
  110. )
  111. }
  112. },
  113. {
  114. md: 24,
  115. name: 'slot-component',
  116. formItemAttributes: {
  117. label: '支付明细'
  118. },
  119. render: (h, { props, onInput }) => {
  120. var { formData } = props
  121. return (
  122. <zj-table
  123. columns={[
  124. {
  125. columnAttributes: {
  126. label: '费用名称',
  127. prop: 'goodsName'
  128. }
  129. },
  130. {
  131. columnAttributes: {
  132. label: '单价',
  133. prop: 'goodsAmount'
  134. },
  135. render: (h, { row, column }) => {
  136. return <div>{this.toFixed(row[column.columnAttributes.prop])}</div>
  137. }
  138. },
  139. {
  140. columnAttributes: {
  141. label: '数量',
  142. prop: 'num'
  143. }
  144. },
  145. {
  146. columnAttributes: {
  147. label: '费用金额',
  148. prop: 'totalAmount'
  149. },
  150. render: (h, { row, column }) => {
  151. return <div>{this.toFixed(row[column.columnAttributes.prop])}</div>
  152. }
  153. }
  154. // ...(() => {
  155. // if (!!~[1, 2, 3].indexOf(this?.workOrderType)) {
  156. // return [
  157. // {
  158. // columnAttributes: {
  159. // label: '师傅分账金额',
  160. // prop: 'workerAmount'
  161. // },
  162. // render: (h, { row, column }) => {
  163. // return <div>{this.toFixed(row[column.columnAttributes.prop])}</div>
  164. // }
  165. // },
  166. // {
  167. // columnAttributes: {
  168. // label: '师傅手续费',
  169. // prop: 'workerProceAmount'
  170. // },
  171. // render: (h, { row, column }) => {
  172. // return <div>{this.toFixed(row[column.columnAttributes.prop])}</div>
  173. // }
  174. // },
  175. // {
  176. // columnAttributes: {
  177. // label: '网点分账金额',
  178. // prop: 'websitAmount'
  179. // },
  180. // render: (h, { row, column }) => {
  181. // return <div>{this.toFixed(row[column.columnAttributes.prop])}</div>
  182. // }
  183. // },
  184. // {
  185. // columnAttributes: {
  186. // label: '网点手续费',
  187. // prop: 'websitProceAmount'
  188. // },
  189. // render: (h, { row, column }) => {
  190. // return <div>{this.toFixed(row[column.columnAttributes.prop])}</div>
  191. // }
  192. // }
  193. // ]
  194. // }
  195. // return []
  196. // })()
  197. ]}
  198. table-data={
  199. [formData.workerOrderItems, formData.rpMaterialOrderItems][
  200. !!~[1, 2, 3].indexOf(this?.workOrderType) ? 0 : this?.workOrderType == 4 ? 1 : 0
  201. ]
  202. }
  203. />
  204. )
  205. }
  206. },
  207. {
  208. name: 'el-input',
  209. md: 24,
  210. attributes: { disabled: true, type: 'textarea', placeholder: '' },
  211. formItemAttributes: { label: '备注', prop: 'remark' }
  212. },
  213. {
  214. md: 24,
  215. name: 'slot-component',
  216. formItemAttributes: {
  217. label: '交易记录'
  218. },
  219. render: (h, { props, onInput }) => {
  220. var { formData } = props
  221. return (
  222. <zj-table
  223. columns={[
  224. {
  225. columnAttributes: {
  226. label: 'id',
  227. prop: 'orderId'
  228. }
  229. },
  230. {
  231. columnAttributes: {
  232. label: '交易类型',
  233. prop: 'goodsType'
  234. },
  235. render: (h, { row }) => {
  236. return <div>{{ M: '辅材', P: '配件' }[row.goodsType]}</div>
  237. }
  238. },
  239. {
  240. columnAttributes: {
  241. label: '交易金额',
  242. prop: 'totalAmount'
  243. },
  244. render: (h, { row, column }) => {
  245. return <div>{this.toFixed(row[column.columnAttributes.prop])}</div>
  246. }
  247. },
  248. {
  249. columnAttributes: {
  250. label: '交易状态',
  251. prop: 'payStatus'
  252. },
  253. render: (h, { row }) => {
  254. return <div>{{ CANCEL: '取消', WAIT: '待支付', PAID: '已支付' }[row.payStatus]}</div>
  255. }
  256. },
  257. {
  258. columnAttributes: {
  259. label: '交易时间',
  260. prop: 'payTime'
  261. }
  262. },
  263. {
  264. columnAttributes: {
  265. label: '创建时间',
  266. prop: 'createTime'
  267. }
  268. }
  269. ]}
  270. table-data={[formData]}
  271. />
  272. )
  273. }
  274. },
  275. {
  276. isShow: this.orderBaseDetail.orderType == 'REPAIR',
  277. md: 24,
  278. name: 'slot-component',
  279. formItemAttributes: {
  280. label: '配件信息'
  281. },
  282. render: (h, { props, onInput }) => {
  283. var { formData } = props
  284. return (
  285. <zj-table
  286. columns={[
  287. {
  288. columnAttributes: {
  289. label: '维修标识',
  290. prop: 'repairFlag'
  291. },
  292. render: (h, { row }) => {
  293. return <div>{{ INNER: '保内', OUTSIDE: '保外' }[row.repairFlag]}</div>
  294. }
  295. },
  296. {
  297. columnAttributes: {
  298. label: '旧配件编号',
  299. prop: 'oldPartsNumber'
  300. }
  301. },
  302. {
  303. columnAttributes: {
  304. label: '旧配件名称',
  305. prop: 'oldPartsName'
  306. }
  307. },
  308. {
  309. columnAttributes: {
  310. label: '新配件编号',
  311. prop: 'goodsCode'
  312. }
  313. },
  314. {
  315. columnAttributes: {
  316. label: '新配件名称',
  317. prop: 'goodsName'
  318. }
  319. }
  320. ]}
  321. table-data={formData.workerOrderItems || []}
  322. />
  323. )
  324. }
  325. },
  326. {
  327. md: 24,
  328. name: 'slot-component',
  329. formItemAttributes: {
  330. label: '其它费用表',
  331. 'label-width': '90px'
  332. },
  333. render: (h, { props, onInput }) => {
  334. var { formData } = props
  335. return (
  336. <zj-table
  337. columns={[
  338. {
  339. columnAttributes: {
  340. label: '费用名称',
  341. prop: 'amountName'
  342. },
  343. render: (h, { row, column }) => {
  344. return <div>{this.toFixed(row[column.columnAttributes.prop])}</div>
  345. }
  346. },
  347. {
  348. columnAttributes: {
  349. label: '费用金额',
  350. prop: 'normAmount'
  351. },
  352. render: (h, { row, column }) => {
  353. return <div>{this.toFixed(row[column.columnAttributes.prop])}</div>
  354. }
  355. }
  356. // {
  357. // columnAttributes: {
  358. // label: '师傅分账金额',
  359. // prop: 'sffzje'
  360. // },
  361. // render: (h, { row, column }) => {
  362. // return <div>{this.toFixed(row[column.columnAttributes.prop])}</div>
  363. // }
  364. // },
  365. // {
  366. // columnAttributes: {
  367. // label: '师傅手续费',
  368. // prop: 'sfsxf'
  369. // },
  370. // render: (h, { row, column }) => {
  371. // return <div>{this.toFixed(row[column.columnAttributes.prop])}</div>
  372. // }
  373. // }
  374. ]}
  375. table-data={formData.gengduofeiyong || []}
  376. />
  377. )
  378. }
  379. }
  380. ]
  381. }
  382. },
  383. methods: {
  384. formItems(itemData) {
  385. return [
  386. {
  387. md: 24,
  388. name: 'slot-component',
  389. formItemAttributes: {
  390. label: '基本信息'
  391. },
  392. render: (h, { props, onInput }) => {
  393. var { formData } = props
  394. return (
  395. <el-descriptions
  396. border
  397. title=""
  398. column={2}
  399. colon={false}
  400. labelStyle={{ width: '13%' }}
  401. contentStyle={{ width: '37%' }}
  402. >
  403. <el-descriptions-item label="申请单号">{formData.orderId}</el-descriptions-item>
  404. <el-descriptions-item label="项目名称">{formData.rpProjectRepairName}</el-descriptions-item>
  405. <el-descriptions-item label="工单单号">{formData.workerOrderId}</el-descriptions-item>
  406. <el-descriptions-item label="负责人">{formData.userName}</el-descriptions-item>
  407. <el-descriptions-item label="联系电话">{formData.userMobile}</el-descriptions-item>
  408. <el-descriptions-item label="项目地址">{formData.pgOrderBase.address}</el-descriptions-item>
  409. <el-descriptions-item label="创单人">{formData.pgOrderBase.createBy}</el-descriptions-item>
  410. <el-descriptions-item label="创单人电话">{formData.pgOrderBase.createMobile}</el-descriptions-item>
  411. <el-descriptions-item label="创单时间">{formData.pgOrderBase.createTime}</el-descriptions-item>
  412. <el-descriptions-item label="工单类型">{formData.orderSmallTypeText}</el-descriptions-item>
  413. <el-descriptions-item label="网点名称">{formData.websitName}</el-descriptions-item>
  414. <el-descriptions-item label="申请人">{formData.workerName}</el-descriptions-item>
  415. <el-descriptions-item label="联系电话">{formData.workerMobile}</el-descriptions-item>
  416. <el-descriptions-item label="申请时间">{formData.createTime}</el-descriptions-item>
  417. <el-descriptions-item label="包含全部费用">
  418. {{ YES: '是', NO: '否' }[formData.isAllFee]}
  419. </el-descriptions-item>
  420. {formData.isAllFee == 'NO' || formData.payType == 'WECHAT' || formData.payType == 'LINE' ? (
  421. <el-descriptions-item label="费用支付方式">
  422. {{ EXAMINE: '审批后结算', SITE: '现场支付' }[formData.feePayMethod]}
  423. </el-descriptions-item>
  424. ) : null}
  425. {(formData.isAllFee == 'NO' || formData.payType == 'WECHAT') && formData.feePayMethod == 'EXAMINE'
  426. ? [
  427. <el-descriptions-item label="费用单状态">
  428. {
  429. { WAIT: '待审', OK: '通过', FAIL: '驳回', PAID: '现场支付', NO: '取消', NO_PAID: '未支付' }[
  430. formData.examineStatus
  431. ]
  432. }
  433. </el-descriptions-item>,
  434. <el-descriptions-item label="审批人">{formData.examineName}</el-descriptions-item>,
  435. <el-descriptions-item label="审批时间">{formData.examineTime}</el-descriptions-item>,
  436. <el-descriptions-item label="取消人">{formData.cancelName}</el-descriptions-item>,
  437. <el-descriptions-item label="取消时间">{formData.cancelTime}</el-descriptions-item>
  438. ]
  439. : null}
  440. {formData.payType == 'LINE' && formData.feePayMethod == 'EXAMINE'
  441. ? [
  442. <el-descriptions-item label="结算状态">
  443. {{ WAIT: '待结算', OVER: '已结算' }[formData.status]}
  444. </el-descriptions-item>,
  445. <el-descriptions-item label="结算人">{formData.settleName}</el-descriptions-item>,
  446. <el-descriptions-item label="结算时间">{formData.settleTime}</el-descriptions-item>
  447. ]
  448. : null}
  449. </el-descriptions>
  450. )
  451. }
  452. },
  453. {
  454. md: 24,
  455. name: 'slot-component',
  456. formItemAttributes: {
  457. label: '费用明细'
  458. },
  459. render: (h, { props, onInput }) => {
  460. var { formData } = props
  461. return (
  462. <zj-table
  463. columns={[
  464. {
  465. columnAttributes: {
  466. label: '费用名称',
  467. prop: 'goodsName'
  468. }
  469. },
  470. {
  471. columnAttributes: {
  472. label: '费用类型',
  473. prop: 'chargeType'
  474. },
  475. render: (h, { row, column, index }) => {
  476. return (
  477. <div style="padding-left:10px">
  478. {{ MCC: '辅材物料', ACC: '配件物料', SERV: '服务收费' }[row.chargeType]}
  479. </div>
  480. )
  481. }
  482. },
  483. {
  484. columnAttributes: {
  485. label: '单价',
  486. prop: 'goodsAmount'
  487. },
  488. render: (h, { row, column }) => {
  489. return <div>{this.toFixed(row[column.columnAttributes.prop])}</div>
  490. }
  491. },
  492. {
  493. columnAttributes: {
  494. label: '数量',
  495. prop: 'num'
  496. }
  497. },
  498. {
  499. columnAttributes: {
  500. label: '费用金额',
  501. prop: 'totalAmount'
  502. },
  503. render: (h, { row, column }) => {
  504. return <div>{this.toFixed(row[column.columnAttributes.prop])}</div>
  505. }
  506. }
  507. ]}
  508. table-data={formData.rpMaterialOrderItems}
  509. />
  510. )
  511. }
  512. },
  513. {
  514. md: 8,
  515. isShow: itemData.goodsType == 'M',
  516. name: 'slot-component',
  517. formItemAttributes: {
  518. label: '辅材费用合计'
  519. },
  520. render: (h, { props, onInput }) => {
  521. var { formData } = props
  522. return (
  523. <span>
  524. {[
  525. 0,
  526. 0,
  527. 0,
  528. ...formData.rpMaterialOrderItems
  529. .filter(item => item.chargeType == 'MCC')
  530. .map(item => item.totalAmount)
  531. ]
  532. .reduce(function (prev, curr, idx, arr) {
  533. return prev + curr
  534. })
  535. .toFixed(2)}
  536. </span>
  537. )
  538. }
  539. },
  540. {
  541. md: 8,
  542. isShow: itemData.goodsType == 'P',
  543. name: 'slot-component',
  544. formItemAttributes: {
  545. label: '配件费用合计'
  546. },
  547. render: (h, { props, onInput }) => {
  548. var { formData } = props
  549. return (
  550. <span>
  551. {[
  552. 0,
  553. 0,
  554. 0,
  555. ...formData.rpMaterialOrderItems
  556. .filter(item => item.chargeType == 'ACC')
  557. .map(item => item.totalAmount)
  558. ]
  559. .reduce(function (prev, curr, idx, arr) {
  560. return prev + curr
  561. })
  562. .toFixed(2)}
  563. </span>
  564. )
  565. }
  566. },
  567. {
  568. md: 8,
  569. name: 'slot-component',
  570. formItemAttributes: {
  571. label: '服务收费费用合计'
  572. },
  573. render: (h, { props, onInput }) => {
  574. var { formData } = props
  575. return (
  576. <span>
  577. {[
  578. 0,
  579. 0,
  580. 0,
  581. ...formData.rpMaterialOrderItems
  582. .filter(item => item.chargeType == 'SERV')
  583. .map(item => item.totalAmount)
  584. ]
  585. .reduce(function (prev, curr, idx, arr) {
  586. return prev + curr
  587. })
  588. .toFixed(2)}
  589. </span>
  590. )
  591. }
  592. },
  593. {
  594. md: 8,
  595. name: 'slot-component',
  596. formItemAttributes: {
  597. label: '总金额'
  598. },
  599. render: (h, { props, onInput }) => {
  600. var { formData } = props
  601. return (
  602. <span>
  603. {[0, 0, 0, ...formData.rpMaterialOrderItems.map(item => item.totalAmount)]
  604. .reduce(function (prev, curr, idx, arr) {
  605. return prev + curr
  606. })
  607. .toFixed(2)}
  608. </span>
  609. )
  610. }
  611. },
  612. {
  613. name: 'el-input',
  614. md: 24,
  615. attributes: { disabled: true, type: 'textarea', placeholder: '' },
  616. formItemAttributes: { label: '申请备注', prop: 'remark' }
  617. },
  618. {
  619. md: 24,
  620. isShow: itemData.payType == 'WECHAT',
  621. name: 'slot-component',
  622. formItemAttributes: {
  623. label: '交易记录'
  624. },
  625. render: (h, { props, onInput }) => {
  626. var { formData } = props
  627. return (
  628. <zj-table
  629. columns={[
  630. {
  631. columnAttributes: {
  632. label: 'id',
  633. prop: 'orderId'
  634. }
  635. },
  636. {
  637. columnAttributes: {
  638. label: '交易类型',
  639. prop: 'goodsType'
  640. },
  641. render: (h, { row }) => {
  642. return <div>{{ M: '辅材', P: '配件' }[row.goodsType]}</div>
  643. }
  644. },
  645. {
  646. columnAttributes: {
  647. label: '交易金额',
  648. prop: 'totalAmount'
  649. }
  650. },
  651. {
  652. columnAttributes: {
  653. label: '交易状态',
  654. prop: 'payStatus'
  655. },
  656. render: (h, { row }) => {
  657. return <div>{{ CANCEL: '取消', WAIT: '待支付', PAID: '已支付' }[row.payStatus]}</div>
  658. }
  659. },
  660. {
  661. columnAttributes: {
  662. label: '交易时间',
  663. prop: 'payTime'
  664. }
  665. },
  666. {
  667. columnAttributes: {
  668. label: '创建时间',
  669. prop: 'createTime'
  670. }
  671. }
  672. ]}
  673. table-data={[formData]}
  674. />
  675. )
  676. }
  677. }
  678. ]
  679. },
  680. getxiangqing() {
  681. if (this.id) {
  682. orderBaseDetail({
  683. orderBaseId: this.id
  684. }).then(resData => {
  685. this.orderBaseDetail = resData.data
  686. changeOrderGetOrderList({
  687. id: this.id
  688. }).then(res => {
  689. this.payData = res.data.map(item => {
  690. return {
  691. ...item,
  692. gengduofeiyong: [
  693. {
  694. chargeType: 'SERV',
  695. amountName: '服务费用',
  696. normAmount: item.servicePrice || 0,
  697. sfsxf: Math.ceil((item.servicePrice || 0) * 0.6) / 100,
  698. sffzje: item.servicePrice - Math.ceil((item.servicePrice || 0) * 0.6) / 100
  699. },
  700. {
  701. chargeType: 'SERV',
  702. amountName: '其他费用',
  703. normAmount: item.otherPrice || 0,
  704. sfsxf: Math.ceil((item.otherPrice || 0) * 0.6) / 100,
  705. sffzje: item.otherPrice - Math.ceil((item.otherPrice || 0) * 0.6) / 100
  706. }
  707. ]
  708. }
  709. })
  710. console.log(this.payData)
  711. })
  712. })
  713. }
  714. },
  715. enginMaterialCancelFun(item) {
  716. this.$confirm('是否确认取消申请?', '提示', {
  717. confirmButtonText: '确定',
  718. cancelButtonText: '取消',
  719. type: 'warning'
  720. })
  721. .then(() => {
  722. enginMaterialCancel({
  723. id: item.orderId
  724. }).then(res => {
  725. this.getxiangqing()
  726. })
  727. })
  728. .catch(() => {})
  729. },
  730. toFixed(num = 0) {
  731. return (num || 0).toFixed(2)
  732. }
  733. }
  734. }
  735. </script>
  736. <style lang="scss" scoped>
  737. .neibuview {
  738. box-sizing: border-box;
  739. padding-left: 16px;
  740. ::v-deep & > .zj-page-fill-scroll {
  741. box-sizing: border-box;
  742. padding-right: 16px;
  743. & > div:nth-child(1) {
  744. margin-top: 20px;
  745. }
  746. }
  747. }
  748. </style>