business_record.vue 26 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540541542543544545546547548549550551552553554555556557558559560561562563564565566567568569570571572573574575576577578579580581582583584585586587588589590591592593594595596597598599600601602603604605606607608609610611612613614615616617618619620621622623624625626627628629630631632633634635636637638639640641642643644645646647648649650651652653654655656657658659660661662663664665666667668669670671672673674675676677678679680681682683684685686687688689690691692693694695696697698699700701702703704705706707708709710711712713714715716717718719720721722723724725726727728729730731732733734735736737738739740741742743744745746747748749750751752753754755756757758759760761762763764765766767768769770771772773774775776777778779780781
  1. <template>
  2. <div class="body-wrapper">
  3. <el-tabs v-model="activeName">
  4. <el-tab-pane label="停车记录查询" name="停车记录查询">
  5. <el-form class="form-wrapper" :inline="true" :model="formInline1" style="margin-bottom: 20px;">
  6. <el-row>
  7. <el-col :span="6">
  8. <el-form-item label="车场名称: ">
  9. <el-select clearable filterable v-model="formInline1.parkLotId" placeholder="请选择">
  10. <el-option
  11. v-for="(item,index) in carParkingNameOptions"
  12. :key="index"
  13. :label="item.parkName"
  14. :value="item.id" />
  15. </el-select>
  16. </el-form-item>
  17. </el-col>
  18. <el-col :span="6">
  19. <el-form-item label="车牌号: ">
  20. <el-input v-model="formInline1.plateNo" placeholder="请输入"></el-input>
  21. </el-form-item>
  22. </el-col>
  23. <el-col :span="6">
  24. <el-form-item label="车位号: ">
  25. <el-input v-model="formInline1.parkingNo" placeholder="请输入"></el-input>
  26. </el-form-item>
  27. </el-col>
  28. <el-col :span="5">
  29. <el-form-item>
  30. <el-button type="primary" class="query-btn" @click="onSubmit1">查询</el-button>
  31. </el-form-item>
  32. <el-form-item>
  33. <el-button type="success" @click="handleAdd">添加</el-button>
  34. </el-form-item>
  35. </el-col>
  36. </el-row>
  37. </el-form>
  38. <el-table :data="tableData1">
  39. <el-table-column v-for="(item, index) in columns1" :key="index" :label="item.label" :prop="item.key">
  40. </el-table-column>
  41. <el-table-column
  42. label="操作"
  43. width="200">
  44. <template slot-scope="scope" style="display: inline-block">
  45. <el-button type="primary" @click="handleEdit(scope.row)" slot="reference">修改</el-button>
  46. <el-popconfirm title="确定删除吗?" @confirm="deleteRow(scope.row)">
  47. <el-button type="danger" slot="reference">删除</el-button>
  48. </el-popconfirm>
  49. </template>
  50. </el-table-column>
  51. </el-table>
  52. <div class="table-pagination">
  53. <el-pagination layout="prev, pager, next" :total="total1" @current-change="handlePageChange1"
  54. :current-page.sync="pageNum1" :page-size.sync="pageSize1">
  55. </el-pagination>
  56. </div>
  57. <el-dialog
  58. :title="title"
  59. :visible.sync="dialogVisible"
  60. width="45%"
  61. custom-class="audit-dialog">
  62. <div class="form-div">
  63. <el-form ref="formLabelAlign" label-position="left" :rules="rules1" label-width="100px" :model="formLabelAlign">
  64. <el-form-item label="车场名称" prop="parkLotId">
  65. <el-select filterable v-model="formLabelAlign.parkLotId" placeholder="请选择">
  66. <el-option
  67. v-for="(item,index) in carParkingNameOptions"
  68. :key="index"
  69. :label="item.parkName"
  70. :value="item.id" />
  71. </el-select>
  72. </el-form-item>
  73. <el-form-item label="车牌号" prop="plateNo">
  74. <el-input v-model="formLabelAlign.plateNo"></el-input>
  75. </el-form-item>
  76. <el-form-item label="入场时间" prop="inTime">
  77. <el-date-picker
  78. v-model="formLabelAlign.inTime"
  79. type="datetime"
  80. value-format="yyyy-MM-dd HH:mm:ss"
  81. placeholder="选择日期时间">
  82. </el-date-picker>
  83. </el-form-item>
  84. <el-form-item label="离场时间" prop="outTime">
  85. <el-date-picker
  86. v-model="formLabelAlign.outTime"
  87. type="datetime"
  88. value-format="yyyy-MM-dd HH:mm:ss"
  89. placeholder="选择日期时间">
  90. </el-date-picker>
  91. </el-form-item>
  92. <el-form-item label="车位号" prop="parkingNo">
  93. <el-input v-model="formLabelAlign.parkingNo"></el-input>
  94. </el-form-item>
  95. </el-form>
  96. </div>
  97. <span slot="footer" class="dialog-footer">
  98. <el-button @click="dialogVisible = false">取 消</el-button>
  99. <el-button type="primary" @click="handleConfirm">确 定</el-button>
  100. </span>
  101. </el-dialog>
  102. </el-tab-pane>
  103. <el-tab-pane label="停车支付订单" name="停车支付订单">
  104. <el-form class="form-wrapper" :inline="true" :model="formInline2" style="margin-bottom: 20px;">
  105. <el-row>
  106. <el-col :span="8">
  107. <el-form-item label="车场名称: ">
  108. <el-select clearable filterable v-model="formInline2.parkLotId" placeholder="请选择">
  109. <el-option
  110. v-for="(item,index) in carParkingNameOptions"
  111. :key="index"
  112. :label="item.parkName"
  113. :value="item.id" />
  114. </el-select>
  115. </el-form-item>
  116. </el-col>
  117. <el-col :span="8">
  118. <el-form-item label="车牌号: ">
  119. <el-input v-model="formInline2.plateNo" placeholder="请输入"></el-input>
  120. </el-form-item>
  121. </el-col>
  122. <el-col :span="6">
  123. <el-form-item>
  124. <el-button type="primary" class="query-btn" @click="onSubmit2">查询</el-button>
  125. </el-form-item>
  126. <el-form-item>
  127. <el-button type="success" @click="handleAdd2">添加</el-button>
  128. </el-form-item>
  129. </el-col>
  130. </el-row>
  131. </el-form>
  132. <el-table :data="tableData2">
  133. <el-table-column v-for="(item, index) in columns2" :key="index" :label="item.label" :prop="item.key">
  134. </el-table-column>
  135. <el-table-column
  136. label="操作"
  137. width="200">
  138. <template slot-scope="scope" style="display: inline-block">
  139. <el-button type="primary" @click="handleEdit2(scope.row)" slot="reference">修改</el-button>
  140. <el-popconfirm title="确定删除吗?" @confirm="deleteRow2(scope.row)">
  141. <el-button type="danger" slot="reference">删除</el-button>
  142. </el-popconfirm>
  143. </template>
  144. </el-table-column>
  145. </el-table>
  146. <div class="table-pagination">
  147. <el-pagination layout="prev, pager, next" :total="total1" @current-change="handlePageChange2"
  148. :current-page.sync="pageNum2" :page-size.sync="pageSize2">
  149. </el-pagination>
  150. </div>
  151. <el-dialog
  152. :title="title2"
  153. :visible.sync="dialogVisible2"
  154. width="45%"
  155. custom-class="audit-dialog">
  156. <div class="form-div">
  157. <el-form label-position="left" label-width="110px" ref="formLabelAlign2" :rules="rules2" :model="formLabelAlign2">
  158. <el-form-item label="订单号" prop="orderNo">
  159. <el-input v-model="formLabelAlign2.orderNo"></el-input>
  160. </el-form-item>
  161. <el-form-item label="车场名称" prop="parkLotId">
  162. <el-select filterable v-model="formLabelAlign2.parkLotId" placeholder="请选择">
  163. <el-option
  164. v-for="(item,index) in carParkingNameOptions"
  165. :key="index"
  166. :label="item.parkName"
  167. :value="item.id" />
  168. </el-select>
  169. </el-form-item>
  170. <el-form-item label="车牌号" prop="plateNo">
  171. <el-input v-model="formLabelAlign2.plateNo"></el-input>
  172. </el-form-item>
  173. <el-form-item label="支付金额" prop="paymentAmount">
  174. <el-input v-model="formLabelAlign2.paymentAmount"></el-input>
  175. </el-form-item>
  176. <el-form-item label="支付方式" prop="paymentMethod">
  177. <el-select filterable v-model="formLabelAlign2.paymentMethod" placeholder="请选择">
  178. <el-option
  179. v-for="(item,index) in paymentMethodOptions"
  180. :key="index"
  181. :label="item.label"
  182. :value="item.value" />
  183. </el-select>
  184. </el-form-item>
  185. <el-form-item label="支付状态" prop="paymentStatus">
  186. <el-input v-model="formLabelAlign2.paymentStatus"></el-input>
  187. </el-form-item>
  188. <el-form-item label="支付时间" prop="paymentTime">
  189. <el-date-picker
  190. v-model="formLabelAlign2.paymentTime"
  191. type="datetime"
  192. value-format="yyyy-MM-dd HH:mm:ss"
  193. placeholder="选择日期时间">
  194. </el-date-picker>
  195. </el-form-item>
  196. </el-form>
  197. </div>
  198. <span slot="footer" class="dialog-footer">
  199. <el-button @click="dialogVisible2 = false">取 消</el-button>
  200. <el-button type="primary" @click="handleConfirm2">确 定</el-button>
  201. </span>
  202. </el-dialog>
  203. </el-tab-pane>
  204. <el-tab-pane label="停车欠费订单" name="停车欠费订单">
  205. <el-form class="form-wrapper" :inline="true" :model="formInline3" style="margin-bottom: 20px;">
  206. <el-row>
  207. <el-col :span="8">
  208. <el-form-item label="车场名称:">
  209. <el-select clearable filterable v-model="formInline3.parkLotId" placeholder="请选择">
  210. <el-option
  211. v-for="(item,index) in carParkingNameOptions"
  212. :key="index"
  213. :label="item.parkName"
  214. :value="item.id" />
  215. </el-select>
  216. </el-form-item>
  217. </el-col>
  218. <el-col :span="8">
  219. <el-form-item label="车牌号: ">
  220. <el-input v-model="formInline3.plateNo" placeholder="请输入"></el-input>
  221. </el-form-item>
  222. </el-col>
  223. <el-col :span="8">
  224. <el-form-item>
  225. <el-button type="primary" class="query-btn" @click="onSubmit3">查询</el-button>
  226. </el-form-item>
  227. <el-form-item>
  228. <el-button type="success" @click="handleAdd3">添加</el-button>
  229. </el-form-item>
  230. </el-col>
  231. </el-row>
  232. </el-form>
  233. <el-table :data="tableData3">
  234. <el-table-column v-for="(item, index) in columns3" :key="index" :label="item.label" :prop="item.key">
  235. </el-table-column>
  236. <el-table-column
  237. label="操作"
  238. width="200">
  239. <template slot-scope="scope" style="display: inline-block">
  240. <el-button type="primary" @click="handleEdit3(scope.row)" slot="reference">修改</el-button>
  241. <el-popconfirm title="确定删除吗?" @confirm="deleteRow3(scope.row)">
  242. <el-button type="danger" slot="reference">删除</el-button>
  243. </el-popconfirm>
  244. </template>
  245. </el-table-column>
  246. </el-table>
  247. <div class="table-pagination">
  248. <el-pagination layout="prev, pager, next" :total="total3" @current-change="handlePageChange3"
  249. :current-page.sync="pageNum3" :page-size.sync="pageSize3">
  250. </el-pagination>
  251. </div>
  252. <el-dialog
  253. :title="title3"
  254. :visible.sync="dialogVisible3"
  255. width="45%"
  256. custom-class="audit-dialog">
  257. <div class="form-div">
  258. <el-form label-position="left" ref="formLabelAlign3" label-width="100px" :rules="rules3" :model="formLabelAlign3">
  259. <el-form-item label="订单号" prop="orderNo">
  260. <el-input v-model="formLabelAlign3.orderNo"></el-input>
  261. </el-form-item>
  262. <el-form-item label="车场名称" prop="parkLotId">
  263. <el-select filterable v-model="formLabelAlign3.parkLotId" placeholder="请选择">
  264. <el-option
  265. v-for="(item,index) in carParkingNameOptions"
  266. :key="index"
  267. :label="item.parkName"
  268. :value="item.id" />
  269. </el-select>
  270. </el-form-item>
  271. <el-form-item label="车牌号" prop="plateNo">
  272. <el-input v-model="formLabelAlign3.plateNo"></el-input>
  273. </el-form-item>
  274. <el-form-item label="停车时长(h)" prop="parkingDuration">
  275. <el-input v-model="formLabelAlign3.parkingDuration"></el-input>
  276. </el-form-item>
  277. <el-form-item label="欠费金额">
  278. <el-input v-model="formLabelAlign3.arrearsAmount"></el-input>
  279. </el-form-item>
  280. <el-form-item label="支付方式">
  281. <el-input v-model="formLabelAlign3.paymentMethod"></el-input>
  282. </el-form-item>
  283. <el-form-item label="支付状态">
  284. <el-input v-model="formLabelAlign3.paymentStatus"></el-input>
  285. </el-form-item>
  286. <el-form-item label="支付时间">
  287. <el-date-picker
  288. v-model="formLabelAlign3.paymentTime"
  289. type="datetime"
  290. value-format="yyyy-MM-dd HH:mm:ss"
  291. placeholder="选择日期时间">
  292. </el-date-picker>
  293. </el-form-item>
  294. </el-form>
  295. </div>
  296. <span slot="footer" class="dialog-footer">
  297. <el-button @click="dialogVisible3 = false">取 消</el-button>
  298. <el-button type="primary" @click="handleConfirm3">确 定</el-button>
  299. </span>
  300. </el-dialog>
  301. </el-tab-pane>
  302. </el-tabs>
  303. </div>
  304. </template>
  305. <script>
  306. import api_z from "@/api/article_z.js";
  307. import {vehicleNumber, validateInput, validateAmount, validateHour} from '@/util/common'
  308. import options from '@/util/options'
  309. export default {
  310. components: {},
  311. data() {
  312. return {
  313. paymentMethodOptions: options.paymentMethodOptions,
  314. activeName: '停车记录查询',
  315. columns1: [
  316. {
  317. label: '车场名称',
  318. key: 'parkName'
  319. },
  320. {
  321. label: '车牌号',
  322. key: 'plateNo'
  323. },
  324. {
  325. label: '入场时间',
  326. key: 'inTime'
  327. },
  328. {
  329. label: '离场时间',
  330. key: 'outTime'
  331. },
  332. {
  333. label: '车位号',
  334. key: 'parkingNo'
  335. },
  336. ],
  337. tableData1: [{parkLotId: 'sasa'}],
  338. total1: 0,
  339. pageSize1: 10,
  340. pageNum1: 1,
  341. formInline1: {
  342. parkLotId: '',
  343. plateNo: '',
  344. parkingNo: '',
  345. },
  346. carParkingNameValue: '',
  347. carParkingNameOptions: [],
  348. title: '',
  349. dialogVisible: false,
  350. rules1: {
  351. parkLotId: [
  352. { required: true, message: "车场不能为空", trigger: "change" },
  353. ],
  354. plateNo: [
  355. { required: true, message: "车牌号不能为空", trigger: "blur" },
  356. { validator: vehicleNumber, trigger: "blur" },
  357. ],
  358. inTime: [
  359. { required: true, message: "时间不能为空", trigger: "change" },
  360. ],
  361. outTime: [
  362. { required: true, message: "时间不能为空", trigger: "change" },
  363. ],
  364. parkingNo: [
  365. { required: true, message: "车位号不能为空", trigger: "blur" },
  366. { min: 26, max: 26, message: '长度必须为26位', trigger: 'blur' },
  367. { validator: validateInput, trigger: "blur" },
  368. ]
  369. },
  370. formLabelAlign: {
  371. id: '',
  372. parkLotId: '',
  373. plateNo: '',
  374. inTime: '',
  375. outTime: '',
  376. parkingNo: '',
  377. },
  378. columns2: [
  379. {
  380. label: '订单号',
  381. key: 'orderNo'
  382. },
  383. {
  384. label: '车场名称',
  385. key: 'parkName'
  386. },
  387. {
  388. label: '车牌号',
  389. key: 'plateNo'
  390. },
  391. {
  392. label: '支付金额',
  393. key: 'paymentAmount'
  394. },
  395. {
  396. label: '支付方式',
  397. key: 'paymentMethod'
  398. },
  399. {
  400. label: '支付状态',
  401. key: 'paymentStatus'
  402. },
  403. {
  404. label: '支付时间',
  405. key: 'paymentTime'
  406. },
  407. ],
  408. tableData2: [{parkName: 'sasa1'}],
  409. total2: 0,
  410. pageSize2: 10,
  411. pageNum2: 1,
  412. formInline2: {
  413. parkLotId: '',
  414. plateNo: '',
  415. },
  416. title2: '',
  417. dialogVisible2: false,
  418. rules2: {
  419. orderNo: [
  420. { required: true, message: "订单号不能为空", trigger: "blur" },
  421. { validator: validateInput, trigger: "blur" },
  422. ],
  423. parkLotId: [
  424. { required: true, message: "车场不能为空", trigger: "change" },
  425. ],
  426. plateNo: [
  427. { required: true, message: "车牌号不能为空", trigger: "blur" },
  428. { validator: vehicleNumber, trigger: "blur" },
  429. ],
  430. paymentAmount: [
  431. { required: true, message: "支付金额不能为空", trigger: "blur" },
  432. { validator: validateAmount, trigger: "blur" },
  433. ],
  434. paymentMethod: [
  435. { required: true, message: "支付方式", trigger: "change" },
  436. ],
  437. parkingNo: [
  438. { required: true, message: "车位号不能为空", trigger: "blur" },
  439. { min: 26, max: 26, message: '长度必须为26位', trigger: 'blur' },
  440. { validator: validateInput, trigger: "blur" },
  441. ]
  442. },
  443. formLabelAlign2: {
  444. id: '',
  445. orderNo: '',
  446. parkLotId: '',
  447. plateNo: '',
  448. paymentAmount: '',
  449. paymentMethod: '',
  450. paymentStatus: '',
  451. paymentTime: '',
  452. },
  453. columns3: [
  454. {
  455. label: '订单号',
  456. key: 'orderNo'
  457. },
  458. {
  459. label: '车场名称',
  460. key: 'parkName'
  461. },
  462. {
  463. label: '车牌号',
  464. key: 'plateNo'
  465. },
  466. {
  467. label: '停车时长(h)',
  468. key: 'parkingDuration'
  469. },
  470. {
  471. label: '欠费金额',
  472. key: 'arrearsAmount'
  473. },
  474. {
  475. label: '支付方式',
  476. key: 'paymentMethod'
  477. },
  478. {
  479. label: '支付状态',
  480. key: 'paymentStatus'
  481. },
  482. {
  483. label: '支付时间',
  484. key: 'paymentTime'
  485. },
  486. ],
  487. tableData3: [{parkName: 'sasa111'}],
  488. total3: 0,
  489. pageSize3: 10,
  490. pageNum3: 1,
  491. formInline3: {
  492. parkLotId: '',
  493. plateNo: '',
  494. },
  495. title3: '',
  496. dialogVisible3: false,
  497. rules3: {
  498. orderNo: [
  499. { required: true, message: "订单号不能为空", trigger: "blur" },
  500. { validator: validateInput, trigger: "blur" },
  501. ],
  502. parkLotId: [
  503. { required: true, message: "车场不能为空", trigger: "change" },
  504. ],
  505. plateNo: [
  506. { required: true, message: "车牌号不能为空", trigger: "blur" },
  507. { validator: vehicleNumber, trigger: "blur" },
  508. ],
  509. parkingDuration: [
  510. { required: true, message: "停车时长不能为空", trigger: "blur" },
  511. { validator: validateHour, trigger: ["change","blur"] },
  512. ],
  513. arrearsAmount: [
  514. { required: true, message: "欠费金额不能为空", trigger: "blur" },
  515. { validator: validateAmount, trigger: "blur" },
  516. ]
  517. },
  518. formLabelAlign3: {
  519. id: '',
  520. orderNo: '',
  521. parkLotId: '',
  522. plateNo: '',
  523. parkingDuration: '',
  524. arrearsAmount: '',
  525. paymentMethod: '',
  526. paymentStatus: '',
  527. paymentTime: '',
  528. },
  529. }
  530. },
  531. mounted() {
  532. this.getTableData1()
  533. this.getCarParkingName()
  534. this.getTableData2()
  535. this.getTableData3()
  536. },
  537. watch: {},
  538. methods: {
  539. onSubmit1() {
  540. this.pageNum1 = 1
  541. this.getTableData1()
  542. },
  543. handleAdd() {
  544. this.title = '添加'
  545. this.formLabelAlign = {}
  546. this.dialogVisible = true
  547. },
  548. handleEdit(row) {
  549. this.title = '修改'
  550. this.formLabelAlign = {...row}
  551. this.dialogVisible = true
  552. },
  553. deleteRow(record) {
  554. api_z.deleteBusinessRecordInout([{id: record.id}]).then(res => {
  555. if (res.code === 200) {
  556. this.$message({type: 'success', message: '删除成功!'})
  557. this.getTableData1()
  558. }
  559. })
  560. },
  561. handleConfirm() {
  562. this.$refs['formLabelAlign'].validate((valid) => {
  563. if (valid) {
  564. if (this.title === '修改') {
  565. api_z.editBusinessRecordInout({...this.formLabelAlign}).then(res => {
  566. if (res.code === 200) {
  567. this.dialogVisible = false
  568. this.$message({
  569. message: '修改成功!',
  570. type: 'success'
  571. })
  572. this.getTableData1()
  573. }
  574. })
  575. } else {
  576. api_z.addBusinessRecordInout({...this.formLabelAlign}).then(res => {
  577. if (res.code === 200) {
  578. this.dialogVisible = false
  579. this.$message({
  580. message: '添加成功!',
  581. type: 'success'
  582. })
  583. this.getTableData1()
  584. }
  585. })
  586. }
  587. } else {
  588. return false;
  589. }
  590. });
  591. },
  592. //车场
  593. getCarParkingName() {
  594. api_z.querySelectParkListByPage().then(res => {
  595. this.carParkingNameOptions=res.data
  596. })
  597. },
  598. onSubmit2() {
  599. this.pageNum2 = 1
  600. this.getTableData2()
  601. },
  602. handleAdd2() {
  603. this.title2 = '添加'
  604. this.formLabelAlign2 = {}
  605. this.dialogVisible2 = true
  606. },
  607. handleEdit2(row) {
  608. this.title2 = '修改'
  609. this.formLabelAlign2 = {...row}
  610. this.dialogVisible2 = true
  611. },
  612. deleteRow2(record) {
  613. api_z.deleteBusinessRecordPayment([{id: record.id}]).then(res => {
  614. if (res.code === 200) {
  615. this.$message({type: 'success', message: '删除成功!'})
  616. this.getTableData2()
  617. }
  618. })
  619. },
  620. handleConfirm2() {
  621. this.$refs['formLabelAlign2'].validate((valid) => {
  622. if (valid) {
  623. if (this.title2 === '修改') {
  624. api_z.editBusinessRecordPayment({...this.formLabelAlign2}).then(res => {
  625. if (res.code === 200) {
  626. this.dialogVisible2 = false
  627. this.$message({
  628. message: '修改成功!',
  629. type: 'success'
  630. })
  631. this.getTableData2()
  632. }
  633. })
  634. } else {
  635. api_z.addBusinessRecordPayment({...this.formLabelAlign2}).then(res => {
  636. if (res.code === 200) {
  637. this.dialogVisible2 = false
  638. this.$message({
  639. message: '添加成功!',
  640. type: 'success'
  641. })
  642. this.getTableData2()
  643. }
  644. })
  645. }
  646. } else {
  647. return false
  648. }
  649. })
  650. },
  651. onSubmit3() {
  652. this.pageNum3 = 1
  653. this.getTableData3()
  654. },
  655. handleAdd3() {
  656. this.title3 = '添加'
  657. this.formLabelAlign3 = {}
  658. this.dialogVisible3 = true
  659. },
  660. handleEdit3(row) {
  661. this.title3 = '修改'
  662. this.formLabelAlign3 = {...row}
  663. this.dialogVisible3 = true
  664. },
  665. deleteRow3(record) {
  666. api_z.deleteBusinessRecordArrears([{id: record.id}]).then(res => {
  667. if (res.code === 200) {
  668. this.$message({type: 'success', message: '删除成功!'})
  669. this.getTableData3()
  670. }
  671. })
  672. },
  673. handleConfirm3() {
  674. this.$refs['formLabelAlign3'].validate((valid) => {
  675. if (valid) {
  676. if (this.title3 === '修改') {
  677. api_z.editBusinessRecordArrears({...this.formLabelAlign3}).then(res => {
  678. if (res.code === 200) {
  679. this.dialogVisible3 = false
  680. this.$message({
  681. message: '修改成功!',
  682. type: 'success'
  683. })
  684. this.getTableData3()
  685. }
  686. })
  687. } else {
  688. api_z.addBusinessRecordArrears({...this.formLabelAlign3}).then(res => {
  689. if (res.code === 200) {
  690. this.dialogVisible3 = false
  691. this.$message({
  692. message: '添加成功!',
  693. type: 'success'
  694. })
  695. this.getTableData3()
  696. }
  697. })
  698. }
  699. } else {
  700. return false;
  701. }
  702. })
  703. },
  704. handlePageChange1() {
  705. this.getTableData1()
  706. },
  707. getTableData1() {
  708. const {pageNum1, pageSize1} = this
  709. api_z.queryBusinessRecordInoutByPage({current: pageNum1, size: pageSize1, ...this.formInline1}).then(res => {
  710. this.tableData1 = res.data.records || []
  711. this.total1 = res.data.total
  712. })
  713. },
  714. handlePageChange2() {
  715. this.getTableData2()
  716. },
  717. getTableData2() {
  718. const {pageNum2, pageSize2} = this
  719. api_z.queryBusinessRecordPaymentByPage({current: pageNum2, size: pageSize2, ...this.formInline2}).then(res => {
  720. this.tableData2 = res.data.records || []
  721. this.total2 = res.data.total
  722. })
  723. },
  724. handlePageChange3() {
  725. this.getTableData3()
  726. },
  727. getTableData3() {
  728. const {pageNum3, pageSize3} = this
  729. api_z.queryBusinessRecordArrearsByPage({current: pageNum3, size: pageSize3, ...this.formInline3}).then(res => {
  730. this.tableData3 = res.data.records || []
  731. this.total3 = res.data.total
  732. })
  733. },
  734. }
  735. }
  736. </script>
  737. <style lang="scss" scoped>
  738. .body-wrapper {
  739. padding: 20px;
  740. .button-block {
  741. text-align: right;
  742. margin-bottom: 20px;
  743. }
  744. .table-pagination {
  745. text-align: right;
  746. }
  747. .search-card {
  748. margin-bottom: 20px;
  749. text-align: center;
  750. .input-wrapper {
  751. width: 36%;
  752. }
  753. }
  754. .audit-dialog {
  755. .mg-bt {
  756. margin-bottom: 24px;
  757. }
  758. .label {
  759. text-align: right;
  760. }
  761. .form-div {
  762. /deep/ .el-input__inner {
  763. height: 35px;
  764. width: 99%;
  765. border: 1px solid #a6a5a5;
  766. }
  767. }
  768. }
  769. }
  770. </style>