index.vue 25 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540541542543544545546547548549550551552553554555556557558559560561562563564565566567568569570571572573574575576577578579580581582583584585586587588589590591592593594595596597598599600601602603604605606607608609610611612613614615616617618619620621622623624625626627628629630631632633634635636637638639640641642643644645646647648649650651652653654655656657658659660661662663664665666667668669670671672673674675676677678679680681682683684685686687688689690691692693694695696697698699700701702703704705706707708709710711712713714715716717718719720721722723724725726727728729730731732733734735736737738739740741742743744745746747748749750751752753754755756757758759760761762763764765766767768769770771772773774775776777778779780781782783784785786787788789790791792793794795796797798799800801802803804805806807808809810811812813814815816817818819820821822823824825826827828829830831832833834835
  1. <template>
  2. <div>
  3. <basic-container v-if="isShow">
  4. <avue-crud :option="option"
  5. :table-loading="loading"
  6. :data="data"
  7. :page.sync="page"
  8. :permission="permissionList"
  9. :before-open="beforeOpen"
  10. v-model="form"
  11. ref="crud"
  12. id="out-table"
  13. :header-cell-class-name="headerClassName"
  14. @row-update="rowUpdate"
  15. @row-save="rowSave"
  16. @row-del="rowDel"
  17. @search-change="searchChange"
  18. @search-reset="searchReset"
  19. @selection-change="selectionChange"
  20. @current-change="currentChange"
  21. @size-change="sizeChange"
  22. @refresh-change="refreshChange"
  23. @resetColumn="resetColumnTwo('crud', 'option', 'optionBack', 320)"
  24. @saveColumn="saveColumnTwo('crud', 'option', 'optionBack', 320)"
  25. @on-load="onLoad">
  26. <template slot="menuLeft">
  27. <el-button type="success"
  28. size="small"
  29. icon="el-icon-plus"
  30. plain
  31. @click="newbillFun">新建发票申请
  32. </el-button>
  33. <el-button type="danger"
  34. size="small"
  35. icon="el-icon-delete"
  36. plain
  37. @click="handleDelete">一键删除
  38. </el-button>
  39. </template>
  40. <template slot="menu" slot-scope="{row}">
  41. <el-button type="text"
  42. size="small"
  43. @click="editFun(row)">编辑
  44. </el-button>
  45. <!--:disabled="saberUserInfo.role_name.indexOf('允许修改他人业务') == -1?saberUserInfo.user_id != row.createUser:false"-->
  46. <el-button type="text"
  47. size="small"
  48. :disabled="row.status == 3
  49. || (saberUserInfo.role_name.indexOf('admin') == -1?saberUserInfo.role_name.indexOf('允许修改他人业务') == -1?saberUserInfo.user_id != row.createUser:false:false)"
  50. @click="rowDel(row)">删除
  51. </el-button>
  52. </template>
  53. <template slot-scope="scope" slot="stlMode">
  54. <span>{{scope.row.stlMode?'月结':'票结'}}</span>
  55. </template>
  56. <template slot-scope="{ row }" slot="billNo">
  57. <span class="pointerClick"
  58. @click="editFun(row)" >{{row.billNo}}
  59. </span>
  60. </template>
  61. <template slot-scope="{ row }" slot="invoiceDate">
  62. {{row.invoiceDate?row.invoiceDate.slice(0,10):''}}
  63. </template>
  64. </avue-crud>
  65. </basic-container>
  66. <fininvoicesDetails ref="fininvoicesDetails" :editSave="editSave" v-if="!isShow" @goBack="goBack"></fininvoicesDetails>
  67. </div>
  68. </template>
  69. <script>
  70. import {
  71. fininvoicesList,
  72. fininvoicesDetail,
  73. fininvoicesRemove, fininvoicesSubmit
  74. } from "@/api/iosBasicData/fininvoices";
  75. import fininvoicesDetails from "@/views/iosBasicData/fininvoicesApplyfor/fininvoicesDetails.vue";
  76. import {mapGetters} from "vuex";
  77. export default {
  78. components:{ fininvoicesDetails},
  79. data() {
  80. return {
  81. // 详情页面和列表切换
  82. isShow:true,
  83. editSave:false, // 编辑还是保存
  84. form: {},
  85. query: {},
  86. loading: true,
  87. page: {
  88. pageSize: 10,
  89. currentPage: 1,
  90. total: 0
  91. },
  92. selectionList: [],
  93. option:{},
  94. optionBack: {
  95. height:'auto',
  96. calcHeight: 30,
  97. tip: false,
  98. searchShow: true,
  99. searchMenuSpan: 6,
  100. border: true,
  101. index: true,
  102. viewBtn: true,
  103. selection: true,
  104. dialogClickModal: false,
  105. menuWidth:100,
  106. column: [
  107. {
  108. label: "单据编号",
  109. prop: "billNo",
  110. search:true,
  111. rules: [{
  112. required: true,
  113. message: "请输入单据编号",
  114. trigger: "blur"
  115. }],
  116. overHidden:true,
  117. },
  118. {
  119. label: "客户名称",
  120. prop: "corpCnName",
  121. width:"120",
  122. search:true,
  123. overHidden:true,
  124. },
  125. {
  126. label: "发票抬头",
  127. prop: "invCorpCnName",
  128. width:"160",
  129. search:true,
  130. overHidden:true,
  131. },
  132. {
  133. label: "合计本位币(CNY)",
  134. prop: "amountLoc",
  135. width: "120",
  136. overHidden:true,
  137. },
  138. {
  139. label: "单据日期",
  140. prop: "billDate",
  141. rules: [{
  142. required: true,
  143. message: "请输入单据日期",
  144. trigger: "blur"
  145. }],
  146. overHidden:true,
  147. },
  148. {
  149. label: "发票号码",
  150. prop: "invoiceNo",
  151. search:true,
  152. rules: [{
  153. required: true,
  154. message: "请输入发票号码",
  155. trigger: "blur"
  156. }],
  157. overHidden:true,
  158. },
  159. {
  160. label: "单据日期",
  161. prop: "invoiceDate",
  162. overHidden:true,
  163. },
  164. {
  165. label: "单据开始日期",
  166. prop: "invoiceDateStart",
  167. search:true,
  168. overHidden:true,
  169. hide:true,
  170. searchLabelWidth:"100",
  171. type: "date",
  172. format: "yyyy-MM-dd",
  173. valueFormat: "yyyy-MM-dd HH:mm:ss",
  174. },
  175. {
  176. label: "单据结束日期",
  177. prop: "invoiceDateEnd",
  178. search:true,
  179. overHidden:true,
  180. hide:true,
  181. searchLabelWidth:"100",
  182. type: "date",
  183. format: "yyyy-MM-dd",
  184. valueFormat: "yyyy-MM-dd HH:mm:ss",
  185. },
  186. {
  187. label: "原发票号码",
  188. prop: "origInvoiceNo",
  189. width:"120",
  190. overHidden:true,
  191. },
  192. {
  193. label: "税务发票号码",
  194. prop: "taxInvoiceNo",
  195. width:"150",
  196. overHidden:true,
  197. },
  198. {
  199. label: "全电发票",
  200. prop: "invType",
  201. overHidden:true,
  202. },
  203. {
  204. label: "发票类型",
  205. search:true,
  206. prop: "taxType",
  207. width:"160",
  208. overHidden:true,
  209. },
  210. {
  211. label: "税率 %",
  212. prop: "taxRate",
  213. rules: [{
  214. required: true,
  215. message: "请输入税率 %",
  216. trigger: "blur"
  217. }],
  218. overHidden:true,
  219. },
  220. {
  221. label: "结算方式",
  222. prop: "stlMode",
  223. overHidden:true,
  224. },
  225. {
  226. label: "发票币种",
  227. prop: "invCurCode",
  228. rules: [{
  229. required: true,
  230. message: "请输入发票币种",
  231. trigger: "blur"
  232. }],
  233. overHidden:true,
  234. },
  235. {
  236. label: "客户英文名称",
  237. prop: "corpEnName",
  238. width:"120",
  239. overHidden:true,
  240. },
  241. {
  242. label: "开票单位英文名称",
  243. prop: "invCorpEnName",
  244. width:"150",
  245. overHidden:true,
  246. },
  247. {
  248. label: "开票单位税号",
  249. prop: "invCorpTaxNo",
  250. width:"140",
  251. overHidden:true,
  252. },
  253. {
  254. label: "开票单位CNY开户银行",
  255. prop: "invCorpAccountBankCny",
  256. width:"160",
  257. overHidden:true,
  258. },
  259. {
  260. label: "开票单位CNY银行账号",
  261. prop: "invCorpAccountNoCny",
  262. width:"160",
  263. overHidden:true,
  264. },
  265. {
  266. label: "开票单位USD开户银行",
  267. prop: "invCorpAccountBankUsd",
  268. width:"160",
  269. overHidden:true,
  270. },
  271. {
  272. label: "开票单位USD银行账号",
  273. prop: "invCorpAccountNoUsd",
  274. width:"160",
  275. overHidden:true,
  276. },
  277. {
  278. label: "船名/航次",
  279. prop: "vesselVoyno",
  280. width:"100",
  281. overHidden:true,
  282. },
  283. {
  284. label: "开船日",
  285. prop: "etd",
  286. overHidden:true,
  287. },
  288. {
  289. label: "装货港",
  290. prop: "pol",
  291. overHidden:true,
  292. },
  293. {
  294. label: "卸货港",
  295. prop: "pod",
  296. overHidden:true,
  297. },
  298. {
  299. label: "目的地",
  300. prop: "destination",
  301. overHidden:true,
  302. },
  303. {
  304. label: "箱型/箱量",
  305. prop: "containers",
  306. width:"100",
  307. overHidden:true,
  308. },
  309. {
  310. label: "币种",
  311. prop: "curCode",
  312. overHidden:true,
  313. },
  314. {
  315. label: "原汇率",
  316. prop: "exrate",
  317. overHidden:true,
  318. },
  319. {
  320. label: "是否转换为人民币",
  321. prop: "isExchangeToCny",
  322. width:"140",
  323. dicData:[{
  324. label:'否',
  325. value:0
  326. },{
  327. label:'是',
  328. value:1
  329. }],
  330. overHidden:true,
  331. },
  332. {
  333. label: "业务类型",
  334. prop: "businessTypes",
  335. overHidden:true,
  336. },
  337. {
  338. label: "业务单据编号",
  339. prop: "businessNo",
  340. width:"120",
  341. overHidden:true,
  342. },
  343. {
  344. label: "对账单编号",
  345. prop: "checkNo",
  346. width:"120",
  347. overHidden:true,
  348. },
  349. {
  350. label: "MBL NO",
  351. prop: "mblno",
  352. overHidden:true,
  353. },
  354. {
  355. label: "HBL NO",
  356. prop: "hblno",
  357. overHidden:true,
  358. },
  359. {
  360. label: "订舱",
  361. prop: "bookingNo",
  362. overHidden:true,
  363. },
  364. {
  365. label: "中文船名",
  366. prop: "vesselCnName",
  367. overHidden:true,
  368. },
  369. {
  370. label: "英文船名",
  371. prop: "vesselEnName",
  372. overHidden:true,
  373. },
  374. {
  375. label: "航次",
  376. prop: "voyageNo",
  377. overHidden:true,
  378. },
  379. {
  380. label: "财务开始日期",
  381. prop: "accountDateFrom",
  382. width:"100",
  383. overHidden:true,
  384. },
  385. {
  386. label: "财务结束日期",
  387. prop: "accountDateTo",
  388. width:"100",
  389. overHidden:true,
  390. },
  391. {
  392. label: "申请人",
  393. prop: "applicantName",
  394. overHidden:true,
  395. },
  396. {
  397. label: "审核人",
  398. prop: "approverName",
  399. overHidden:true,
  400. },
  401. {
  402. label: "是否代理发票",
  403. prop: "isAgent",
  404. width:"120",
  405. dicData:[{
  406. label:'否',
  407. value:0
  408. },{
  409. label:'是',
  410. value:1
  411. }],
  412. overHidden:true,
  413. },
  414. {
  415. label: "是否DK",
  416. prop: "isDk",
  417. dicData:[{
  418. label:'否',
  419. value:0
  420. },{
  421. label:'是',
  422. value:1
  423. }],
  424. overHidden:true,
  425. },
  426. {
  427. label: "是否RP",
  428. prop: "isRp",
  429. dicData:[{
  430. label:'否',
  431. value:0
  432. },{
  433. label:'是',
  434. value:1
  435. }],
  436. overHidden:true,
  437. },
  438. {
  439. label: "RP名称",
  440. prop: "rpName",
  441. overHidden:true,
  442. },
  443. {
  444. label: "导出日期",
  445. prop: "exportDate",
  446. width: "100",
  447. overHidden:true,
  448. },
  449. {
  450. label: "导出人",
  451. prop: "exportName",
  452. overHidden:true,
  453. },
  454. {
  455. label: "是否导出船名航次",
  456. prop: "isExportVslvoy",
  457. width: "140",
  458. dicData:[{
  459. label:'否',
  460. value:0
  461. },{
  462. label:'是',
  463. value:1
  464. }],
  465. overHidden:true,
  466. },
  467. {
  468. label: "是否导出主单号",
  469. prop: "isExportMblno",
  470. width: "140",
  471. dicData:[{
  472. label:'否',
  473. value:0
  474. },{
  475. label:'是',
  476. value:1
  477. }],
  478. overHidden:true,
  479. },
  480. {
  481. label: "是否导出分单号",
  482. prop: "isExportHblno",
  483. width: "140",
  484. dicData:[{
  485. label:'否',
  486. value:0
  487. },{
  488. label:'是',
  489. value:1
  490. }],
  491. overHidden:true,
  492. },
  493. {
  494. label: "发票本位币(CNY)",
  495. prop: "amountCny",
  496. width: "140",
  497. overHidden:true,
  498. },
  499. {
  500. label: "发票USD",
  501. prop: "amountUsd",
  502. width: "100",
  503. overHidden:true,
  504. },
  505. {
  506. label: "税额(CNY)",
  507. prop: "amountTax",
  508. width: "100",
  509. overHidden:true,
  510. },
  511. {
  512. label: "全电发票备注",
  513. prop: "elecRemarks",
  514. width: "120",
  515. overHidden:true,
  516. },
  517. {
  518. label: "银行进账单出票人名称",
  519. prop: "bankReceiptCorpName",
  520. width: "160",
  521. overHidden:true,
  522. },
  523. {
  524. label: "银行进账单出票银行",
  525. prop: "bankReceiptBankName",
  526. width: "160",
  527. overHidden:true,
  528. },
  529. {
  530. label: "银行进账单出票银行账号",
  531. prop: "bankReceiptAccountNo",
  532. width: "160",
  533. overHidden:true,
  534. },
  535. {
  536. label: "银行进账单票据种类",
  537. prop: "bankReceiptBillType",
  538. width: "160",
  539. overHidden:true,
  540. },
  541. {
  542. label: "银行进账单票据张数",
  543. prop: "bankReceiptBillCount",
  544. width: "160",
  545. overHidden:true,
  546. },
  547. {
  548. label: "银行进账单是否已进账(收款)",
  549. prop: "bankReceiptIsIncome",
  550. width: "180",
  551. overHidden:true,
  552. },
  553. {
  554. label: "备注",
  555. prop: "remarks",
  556. rules: [{
  557. required: true,
  558. message: "请输入备注",
  559. trigger: "blur"
  560. }],
  561. overHidden:true,
  562. },
  563. ]
  564. },
  565. data: [],
  566. saberUserInfo:{}, // 当前登录人个人信息
  567. };
  568. },
  569. watch:{
  570. },
  571. computed: {
  572. ...mapGetters(["permission"]),
  573. permissionList() {
  574. return {
  575. addBtn: this.vaildData(this.permission.fininvoices_add, false),
  576. viewBtn: this.vaildData(this.permission.fininvoices_view, false),
  577. delBtn: this.vaildData(this.permission.fininvoices_delete, false),
  578. editBtn: this.vaildData(this.permission.fininvoices_edit, false)
  579. };
  580. },
  581. ids() {
  582. let ids = [];
  583. this.selectionList.forEach(ele => {
  584. ids.push(ele.id);
  585. });
  586. return ids.join(",");
  587. }
  588. },
  589. async created() {
  590. // 获取当前登录人个人信息
  591. this.saberUserInfo = JSON.parse(localStorage.getItem('saber-userInfo')).content
  592. this.option = await this.getColumnData(this.getColumnName(320), this.optionBack);
  593. },
  594. methods: {
  595. // 新建发票
  596. newbillFun(){
  597. this.isShow = false;
  598. this.editSave = false
  599. },
  600. // 编辑
  601. editFun(row) {
  602. this.isShow = false
  603. this.editSave = true
  604. this.$nextTick(()=>{
  605. this.$refs.fininvoicesDetails.fininvoicesDetailfun(row.id)
  606. })
  607. },
  608. // 详情的返回列表
  609. goBack() {
  610. // 初始化数据
  611. // this.detailData = this.$options.data().detailData;
  612. if (JSON.stringify(this.$route.query) != "{}") {
  613. this.$router.$avueRouter.closeTag();
  614. this.$router.push({
  615. path: "/iosBasicData/fininvoices/index"
  616. });
  617. }
  618. this.isShow = true;
  619. this.onLoad(this.page, this.search);
  620. },
  621. rowSave(row, done, loading) {
  622. fininvoicesSubmit(row).then(() => {
  623. this.onLoad(this.page);
  624. this.$message({
  625. type: "success",
  626. message: "操作成功!"
  627. });
  628. done();
  629. }, error => {
  630. loading();
  631. window.console.log(error);
  632. });
  633. },
  634. rowUpdate(row, index, done, loading) {
  635. fininvoicesSubmit(row).then(() => {
  636. this.onLoad(this.page);
  637. this.$message({
  638. type: "success",
  639. message: "操作成功!"
  640. });
  641. done();
  642. }, error => {
  643. loading();
  644. console.log(error);
  645. });
  646. },
  647. rowDel(row) {
  648. this.$confirm("确定将选择数据删除?", {
  649. confirmButtonText: "确定",
  650. cancelButtonText: "取消",
  651. type: "warning"
  652. })
  653. .then(() => {
  654. return fininvoicesRemove(row.id);
  655. })
  656. .then(() => {
  657. this.onLoad(this.page);
  658. this.$message({
  659. type: "success",
  660. message: "操作成功!"
  661. });
  662. });
  663. },
  664. // 批量删除
  665. handleDelete() {
  666. if (this.selectionList.length === 0) {
  667. this.$message.warning("请选择至少一条数据");
  668. return;
  669. }
  670. // 判断是否可以编辑别人业务 true 就没有权限
  671. if (this.ModifyOthersfun()) return;
  672. // 已经提交请核的提示不让删除
  673. let sumArr = []
  674. const h = this.$createElement
  675. for (let item of this.selectionList) {
  676. if (item.status == 3) {
  677. sumArr.push(h('p', `序号${item.$index + 1}的数据已经确认提交请勿删除`))
  678. }
  679. }
  680. if(sumArr.length != 0) {
  681. this.$confirm('提示', {
  682. message:h('div', sumArr),
  683. confirmButtonText: "确定",
  684. cancelButtonText: "取消",
  685. type: "warning"
  686. })
  687. return;
  688. }
  689. this.$confirm("确定将选择数据删除?", {
  690. confirmButtonText: "确定",
  691. cancelButtonText: "取消",
  692. type: "warning"
  693. })
  694. .then(() => {
  695. return fininvoicesRemove(this.ids);
  696. })
  697. .then(() => {
  698. this.onLoad(this.page);
  699. this.$message({
  700. type: "success",
  701. message: "操作成功!"
  702. });
  703. this.$refs.crud.toggleSelection();
  704. });
  705. },
  706. // 判断是否可以编辑别人业务
  707. ModifyOthersfun(){
  708. let sumArr = []
  709. const h = this.$createElement
  710. // 判断是否有权限
  711. if (this.saberUserInfo.role_name.indexOf('允许修改他人业务') != -1) return false
  712. // 当前登录人和选择的创建人对比是不是一个人
  713. for (let item of this.selectionList) {
  714. if (this.saberUserInfo.user_id != item.createUser) {
  715. sumArr.push(h('p', `你没有"允许修改他人业务"权限,请重新选择数据`))
  716. }
  717. }
  718. if(sumArr.length != 0) {
  719. this.$confirm('提示', {
  720. message:h('div', sumArr),
  721. confirmButtonText: "确定",
  722. cancelButtonText: "取消",
  723. type: "warning"
  724. }).catch(err=>{})
  725. return true
  726. }
  727. },
  728. beforeOpen(done, type) {
  729. if (["edit", "view"].includes(type)) {
  730. fininvoicesDetail(this.form.id).then(res => {
  731. this.form = res.data.data;
  732. });
  733. }
  734. done();
  735. },
  736. searchReset() {
  737. this.query = {};
  738. this.onLoad(this.page);
  739. },
  740. searchChange(params, done) {
  741. this.query = params;
  742. this.page.currentPage = 1;
  743. this.onLoad(this.page, params);
  744. done();
  745. },
  746. selectionChange(list) {
  747. this.selectionList = list;
  748. },
  749. selectionClear() {
  750. this.selectionList = [];
  751. this.$refs.crud.toggleSelection();
  752. },
  753. currentChange(currentPage){
  754. this.page.currentPage = currentPage;
  755. },
  756. sizeChange(pageSize){
  757. this.page.pageSize = pageSize;
  758. },
  759. refreshChange() {
  760. this.onLoad(this.page, this.query);
  761. },
  762. onLoad(page, params = {}) {
  763. this.loading = true;
  764. fininvoicesList(page.currentPage, page.pageSize,
  765. {...Object.assign(params, this.query),type:"申请",billNoFormat:'FPSQ',businessTypeCode:'FPSQ'}).then(res => {
  766. const data = res.data.data;
  767. this.page.total = data.total;
  768. this.data = data.records;
  769. this.loading = false;
  770. this.selectionClear();
  771. });
  772. },
  773. //自定义列保存
  774. async saveColumnTwo(ref, option, optionBack, code) {
  775. /**
  776. * 已定义全局方法,直接使用,saveColumnData保存列数据方法,参数传值(表格名称,当前表格的option数据)
  777. * 已定义全局方法,直接使用,getColumnName方法用来获取枚举值,参数根据自己定义的code值获取中文名
  778. * 一定要执行异步操作,要等接口成功返回,才能执行下一行代码
  779. */
  780. const inSave = await this.saveColumnData(this.getColumnName(code), this[option]);
  781. if (inSave) {
  782. this.$message.success("保存成功");
  783. //关闭窗口
  784. this.$refs[ref].$refs.dialogColumn.columnBox = false;
  785. }
  786. },
  787. //自定义列重置
  788. async resetColumnTwo(ref, option, optionBack, code) {
  789. this[option] = this[optionBack];
  790. const inSave = await this.delColumnData(this.getColumnName(code), this[optionBack]);
  791. if (inSave) {
  792. this.$message.success("重置成功");
  793. this.$refs[ref].$refs.dialogColumn.columnBox = false;
  794. }
  795. },
  796. // 更改表格颜色
  797. headerClassName(tab) {
  798. //颜色间隔
  799. let back = ""
  800. if (tab.columnIndex >= 0 && tab.column.level === 1) {
  801. if (tab.columnIndex % 2 === 0) {
  802. back = "back-one"
  803. } else if (tab.columnIndex % 2 === 1) {
  804. back = "back-two"
  805. }
  806. }
  807. return back;
  808. },
  809. }
  810. };
  811. </script>
  812. <style scoped>
  813. ::v-deep#out-table .back-one {
  814. background: #ecf5ff !important;
  815. text-align: center;
  816. }
  817. ::v-deep#out-table .back-two {
  818. background: #ecf5ff !important;
  819. text-align: center;
  820. }
  821. .pointerClick {
  822. cursor:pointer;
  823. color: #1e9fff;
  824. }
  825. </style>