performance_assess.vue 8.2 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287
  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.tollCollector" placeholder="请输入"></el-input>
  10. </el-form-item>
  11. </el-col>
  12. <el-col :span="8">
  13. <el-form-item>
  14. <el-button type="primary" class="query-btn" @click="onSubmit1">查询</el-button>
  15. </el-form-item>
  16. </el-col>
  17. </el-row>
  18. </el-form>
  19. <el-table :data="tableData1">
  20. <el-table-column v-for="(item, index) in columns1" :key="index" :label="item.label" :prop="item.key">
  21. </el-table-column>
  22. </el-table>
  23. <div class="table-pagination">
  24. <el-pagination layout="prev, pager, next" :total="total1" @current-change="handlePageChange1"
  25. :current-page.sync="pageNum1" :page-size.sync="pageSize1">
  26. </el-pagination>
  27. </div>
  28. </el-tab-pane>
  29. <el-tab-pane label="稽查员稽查工作统计" name="稽查员稽查工作统计">
  30. <el-form class="form-wrapper" :inline="true" :model="formInline2" style="margin-bottom: 20px;">
  31. <el-row>
  32. <el-col :span="8">
  33. <el-form-item label="稽查员姓名: ">
  34. <el-select clearable v-model="formInline2.id" placeholder="请选择">
  35. <el-option
  36. v-for="(item,index) in peopleOptions"
  37. :key="index"
  38. :label="item.tollmanName"
  39. :value="item.id" />
  40. </el-select>
  41. </el-form-item>
  42. </el-col>
  43. <el-col :span="8">
  44. <el-form-item>
  45. <el-button type="primary" class="query-btn" @click="onSubmit2">查询</el-button>
  46. </el-form-item>
  47. </el-col>
  48. </el-row>
  49. </el-form>
  50. <el-table :data="tableData2">
  51. <el-table-column v-for="(item, index) in columns2" :key="index" :label="item.label" :prop="item.key">
  52. </el-table-column>
  53. </el-table>
  54. <div class="table-pagination">
  55. <el-pagination layout="prev, pager, next" :total="total1" @current-change="handlePageChange2"
  56. :current-page.sync="pageNum2" :page-size.sync="pageSize2">
  57. </el-pagination>
  58. </div>
  59. </el-tab-pane>
  60. <el-tab-pane label="收费员被稽查统计" name="收费员被稽查统计">
  61. <el-form class="form-wrapper" :inline="true" :model="formInline3" style="margin-bottom: 20px;">
  62. <el-row>
  63. <el-col :span="8">
  64. <el-form-item label="收费员:">
  65. <el-input v-model="formInline3.tollCollector" placeholder="请输入"></el-input>
  66. </el-form-item>
  67. </el-col>
  68. <el-col :span="8">
  69. <el-form-item label="稽查员:">
  70. <el-input v-model="formInline3.inspector" placeholder="请输入"></el-input>
  71. </el-form-item>
  72. </el-col>
  73. <el-col :span="8">
  74. <el-form-item>
  75. <el-button type="primary" class="query-btn" @click="onSubmit3">查询</el-button>
  76. </el-form-item>
  77. </el-col>
  78. </el-row>
  79. </el-form>
  80. <el-table :data="tableData3">
  81. <el-table-column v-for="(item, index) in columns3" :key="index" :label="item.label" :prop="item.key">
  82. </el-table-column>
  83. </el-table>
  84. <div class="table-pagination">
  85. <el-pagination layout="prev, pager, next" :total="total3" @current-change="handlePageChange3"
  86. :current-page.sync="pageNum3" :page-size.sync="pageSize3">
  87. </el-pagination>
  88. </div>
  89. </el-tab-pane>
  90. </el-tabs>
  91. </div>
  92. </template>
  93. <script>
  94. import api from "@/api/audit.js";
  95. import api_l from "@/api/article_liao.js";
  96. import dictionary from "@/util/dictionary";
  97. export default {
  98. components: {},
  99. data() {
  100. return {
  101. activeName: '收费员工作统计',
  102. columns1: [
  103. {
  104. label: '收费员',
  105. key: 'inspectionManName'
  106. },
  107. {
  108. label: '收费员收入',
  109. key: 'tollRevenue'
  110. },
  111. {
  112. label: '预收款',
  113. key: 'advancePayment'
  114. },
  115. {
  116. label: '欠费追缴金额',
  117. key: 'recoveryAmount'
  118. },
  119. {
  120. label: '录入次数',
  121. key: 'recordIn'
  122. },
  123. {
  124. label: '录出次数',
  125. key: 'recordOut'
  126. },
  127. ],
  128. tableData1: [],
  129. peopleOptions:[],
  130. total1: 0,
  131. pageSize1: 10,
  132. pageNum1: 1,
  133. formInline1: {
  134. tollCollector: ''
  135. },
  136. columns2: [
  137. {
  138. label: '稽查员',
  139. key: 'inspectionManName'
  140. },
  141. {
  142. label: '稽查次数',
  143. key: 'inspectionCount'
  144. },
  145. {
  146. label: '平均处理时间(/分钟)',
  147. key: 'perMinutes'
  148. },
  149. ],
  150. tableData2: [],
  151. total2: 0,
  152. pageSize2: 10,
  153. pageNum2: 1,
  154. formInline2: {
  155. inspector: '',
  156. inspectionmanId:'',
  157. rollmanId:'',
  158. inspectionManName:'',
  159. inspectionCount:'',
  160. perMinutes:''
  161. },
  162. columns3: [
  163. {
  164. label: '收费员',
  165. key: 'inspectionManName'
  166. },
  167. {
  168. label: '稽查员',
  169. key: 'tollManName'
  170. },
  171. {
  172. label: '被稽查次数',
  173. key: 'inspectionCount'
  174. },
  175. ],
  176. tableData3: [],
  177. total3: 0,
  178. pageSize3: 10,
  179. pageNum3: 1,
  180. formInline3: {
  181. tollCollector: '',
  182. inspector:''
  183. },
  184. }
  185. },
  186. mounted() {
  187. this.getTableData1()
  188. this.getTableData2()
  189. this.getTableData3()
  190. this.getPeopleName()
  191. },
  192. watch: {
  193. },
  194. methods: {
  195. onSubmit1() {
  196. this.pageNum1 = 1
  197. api_l.optPerformanceassesspage({rollmanId: this.formInline1.tollCollector}).then(res => {
  198. this.tableData1 = res.data.records
  199. })
  200. },
  201. onSubmit2() {
  202. const {pageNum2, pageSize2} = this
  203. api_l.optPerformanceAssessStat1page({inspectionmanId:this.formInline2.inspectionmanId}).then(res => {
  204. this.tableData2 = res.data.records
  205. this.total2 = res.data.total
  206. })
  207. },
  208. onSubmit3() {
  209. const {pageNum3, pageSize3} = this
  210. api_l.optPerformanceAssessStat2page({inspectionmanId:this.formInline2.inspectionmanId,rollmanId:this.formInline2.rollmanId}).then(res => {
  211. this.tableData2 = res.data.records
  212. this.total2 = res.data.total
  213. })
  214. },
  215. handlePageChange1() {
  216. this.getTableData1()
  217. },
  218. getPeopleName(){
  219. },
  220. getTableData1() {
  221. const {pageNum1, pageSize1} = this
  222. api_l.optPerformanceassesspage({}).then(res => {
  223. this.tableData1 = res.data.records
  224. this.total1 = res.data.total
  225. })
  226. },
  227. handlePageChange2() {
  228. this.getTableData2()
  229. },
  230. getTableData2() {
  231. const {pageNum2, pageSize2} = this
  232. api_l.optPerformanceAssessStat1page({}).then(res => {
  233. this.tableData2 = res.data.records
  234. this.total2 = res.data.total
  235. })
  236. },
  237. handlePageChange3() {
  238. this.getTableData3()
  239. },
  240. getTableData3() {
  241. const {pageNum3, pageSize3} = this
  242. api_l.optPerformanceAssessStat2page({}).then(res => {
  243. this.tableData3 = res.data.records
  244. this.total3 = res.data.total
  245. })
  246. },
  247. }
  248. }
  249. </script>
  250. <style lang="scss" scoped>
  251. .body-wrapper {
  252. padding: 20px;
  253. .button-block{
  254. text-align: right;
  255. margin-bottom: 20px;
  256. }
  257. .table-pagination{
  258. text-align: right;
  259. }
  260. .search-card{
  261. margin-bottom: 20px;
  262. text-align: center;
  263. .input-wrapper{
  264. width: 36%;
  265. }
  266. }
  267. .audit-dialog{
  268. .mg-bt{
  269. margin-bottom: 24px;
  270. }
  271. .label{
  272. text-align: right;
  273. }
  274. .form-div{
  275. /deep/ .el-input__inner{
  276. height: 35px;
  277. width: 90%;
  278. border: 1px solid #a6a5a5;
  279. }
  280. }
  281. }
  282. }
  283. </style>