parking_order.vue 8.2 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291
  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="8">
  8. <el-form-item label="订单号:">
  9. <el-input v-model="formInline1.orderNo" placeholder="请输入"></el-input>
  10. </el-form-item>
  11. </el-col>
  12. <el-col :span="8">
  13. <el-form-item label="支付日期:">
  14. <el-date-picker
  15. v-model="formInline1.payTime"
  16. type="date"
  17. placeholder="选择日期">
  18. </el-date-picker>
  19. </el-form-item>
  20. </el-col>
  21. <el-col :span="8">
  22. <el-form-item>
  23. <el-button type="primary" class="query-btn" @click="onSubmit1">查询</el-button>
  24. </el-form-item>
  25. </el-col>
  26. </el-row>
  27. </el-form>
  28. <el-table :data="tableData1">
  29. <el-table-column v-for="(item, index) in columns1" :key="index" :label="item.label" :prop="item.key">
  30. </el-table-column>
  31. </el-table>
  32. <div class="table-pagination">
  33. <el-pagination layout="prev, pager, next" :total="total1" @current-change="handlePageChange1"
  34. :current-page.sync="pageNum1" :page-size.sync="pageSize1">
  35. </el-pagination>
  36. </div>
  37. </el-tab-pane>
  38. <el-tab-pane label="欠费订单查询" name="欠费订单查询">
  39. <el-form class="form-wrapper" :inline="true" :model="formInline2" style="margin-bottom: 20px;">
  40. <el-row>
  41. <el-col :span="8">
  42. <el-form-item label="订单号: ">
  43. <el-input v-model="formInline2.orderNo" placeholder="请输入"></el-input>
  44. </el-form-item>
  45. </el-col>
  46. <el-col :span="8">
  47. <el-form-item label="车牌号: ">
  48. <el-input v-model="formInline2.plateNo" placeholder="请输入"></el-input>
  49. </el-form-item>
  50. </el-col>
  51. <el-col :span="8">
  52. <el-form-item>
  53. <el-button type="primary" class="query-btn" @click="onSubmit2">查询</el-button>
  54. </el-form-item>
  55. </el-col>
  56. </el-row>
  57. </el-form>
  58. <el-table :data="tableData2">
  59. <el-table-column v-for="(item, index) in columns2" :key="index" :label="item.label" :prop="item.key">
  60. </el-table-column>
  61. </el-table>
  62. <div class="table-pagination">
  63. <el-pagination layout="prev, pager, next" :total="total1" @current-change="handlePageChange2"
  64. :current-page.sync="pageNum2" :page-size.sync="pageSize2">
  65. </el-pagination>
  66. </div>
  67. </el-tab-pane>
  68. <el-tab-pane label="查询预付订单信息" name="查询预付订单信息">
  69. <el-form class="form-wrapper" :inline="true" :model="formInline4" style="margin-bottom: 20px;">
  70. <el-row>
  71. <el-col :span="8">
  72. <el-form-item label="订单号:">
  73. <el-input v-model="formInline4.orderNo" placeholder="请输入"></el-input>
  74. </el-form-item>
  75. </el-col>
  76. <el-col :span="8">
  77. <el-form-item label="车牌号:">
  78. <el-input v-model="formInline4.plateNo" placeholder="请输入"></el-input>
  79. </el-form-item>
  80. </el-col>
  81. <el-col :span="8">
  82. <el-form-item>
  83. <el-button type="primary" class="query-btn" @click="onSubmit4">查询</el-button>
  84. </el-form-item>
  85. </el-col>
  86. </el-row>
  87. </el-form>
  88. <el-table :data="tableData4">
  89. <el-table-column v-for="(item, index) in columns4" :key="index" :label="item.label" :prop="item.key">
  90. </el-table-column>
  91. </el-table>
  92. <div class="table-pagination">
  93. <el-pagination layout="prev, pager, next" :total="total4" @current-change="handlePageChange4"
  94. :current-page.sync="pageNum4" :page-size.sync="pageSize4">
  95. </el-pagination>
  96. </div>
  97. </el-tab-pane>
  98. </el-tabs>
  99. </div>
  100. </template>
  101. <script>
  102. import api from "@/api/audit.js";
  103. import dictionary from "@/util/dictionary";
  104. import api_z from "@/api/article_z.js";
  105. export default {
  106. components: {},
  107. data() {
  108. return {
  109. activeName: '支付订单查询',
  110. columns1: [
  111. {
  112. label: '订单号',
  113. key: 'orderNo'
  114. },
  115. {
  116. label: '支付日期',
  117. key: 'payTime'
  118. },
  119. {
  120. label: '支付金额',
  121. key: 'payAmount'
  122. },
  123. {
  124. label: '泊位号',
  125. key: 'parkingNo'
  126. },
  127. {
  128. label: '车牌号',
  129. key: 'plateNo'
  130. },
  131. {
  132. label: '入场日期',
  133. key: 'inTime'
  134. },
  135. {
  136. label: '出场日期',
  137. key: 'outTime'
  138. }
  139. ],
  140. tableData1: [],
  141. total1: 0,
  142. pageSize1: 10,
  143. pageNum1: 1,
  144. formInline1: {
  145. orderNo: '',
  146. payTime:''
  147. },
  148. columns2: [
  149. {
  150. label: '欠费订单号',
  151. key: 'orderNo'
  152. },
  153. {
  154. label: '车牌号',
  155. key: 'plateNo'
  156. },
  157. {
  158. label: '修改日期',
  159. key: 'updateTime'
  160. },
  161. {
  162. label: '欠费金额',
  163. key: ''
  164. }
  165. ],
  166. tableData2: [],
  167. total2: 0,
  168. pageSize2: 10,
  169. pageNum2: 1,
  170. formInline2: {
  171. orderNo: '',
  172. plateNo:''
  173. },
  174. columns4: [
  175. {
  176. label: '订单号',
  177. key: 'orderNo'
  178. },
  179. {
  180. label: '车牌号',
  181. key: 'plateNo'
  182. },
  183. {
  184. label: '所属停车场',
  185. key: 'carParkName'
  186. },
  187. {
  188. label: '预约时间',
  189. key: 'appointmentTime'
  190. },
  191. {
  192. label: '金额',
  193. key: 'payAmount'
  194. },
  195. {
  196. label: '支付方式',
  197. key: 'payWay'
  198. },
  199. {
  200. label: '支付状态',
  201. key: 'payStatus'
  202. },
  203. {
  204. label: '支付时间',
  205. key: 'payTime'
  206. },
  207. ],
  208. tableData4: [],
  209. total4: 0,
  210. pageSize4: 10,
  211. pageNum4: 1,
  212. formInline4: {
  213. orderNo:'',
  214. plateNo: ''
  215. }
  216. }
  217. },
  218. mounted() {
  219. this.getTableData1()
  220. this.getTableData2()
  221. this.getTableData4()
  222. },
  223. watch: {
  224. },
  225. methods: {
  226. onSubmit1() {
  227. this.pageNum1 = 1
  228. this.getTableData1()
  229. },
  230. onSubmit2() {
  231. this.pageNum2 = 1
  232. this.getTableData2()
  233. },
  234. onSubmit4() {
  235. this.pageNum4 = 1
  236. this.getTableData4()
  237. },
  238. handlePageChange1() {
  239. this.getTableData1()
  240. },
  241. getTableData1() {
  242. const {pageNum1, pageSize1} = this
  243. api_z.queryParkingOrderByPage({current: pageNum1, size: pageSize1, ...this.formInline1}).then(res => {
  244. this.tableData1 = (res.data.records || []).map(item => ({...item, carType: dictionary.typeMap[item.carType]}))
  245. this.total1 = res.data.total
  246. })
  247. },
  248. handlePageChange2() {
  249. this.getTableData2()
  250. },
  251. getTableData2() {
  252. const {pageNum2, pageSize2} = this
  253. api_z.queryParkingOrderArrearsByPage({current: pageNum2, size: pageSize2, ...this.formInline2}).then(res => {
  254. this.tableData2 = res.data.records || []
  255. this.total2 = res.data.total
  256. })
  257. },
  258. handlePageChange4() {
  259. this.getTableData3()
  260. },
  261. getTableData4() {
  262. const {pageNum4, pageSize4} = this
  263. api.orderListByPage({current: pageNum4, size: pageSize4, ...this.formInline4}).then(res => {
  264. this.tableData4 = res.data.records || []
  265. this.total4 = res.data.total
  266. })
  267. }
  268. }
  269. }
  270. </script>
  271. <style lang="scss" scoped>
  272. .body-wrapper {
  273. padding: 20px;
  274. .button-block{
  275. text-align: right;
  276. margin-bottom: 20px;
  277. }
  278. .table-pagination{
  279. text-align: right;
  280. }
  281. .search-card{
  282. margin-bottom: 20px;
  283. text-align: center;
  284. .input-wrapper{
  285. width: 36%;
  286. }
  287. }
  288. }
  289. </style>